45 private static String SPACE_DISPLAY_TEXT = " "; //$NON-NLS-1$ |
46 private static String SPACE_DISPLAY_TEXT = " "; //$NON-NLS-1$ |
46 private static String SDK_NOT_INSTALLED = "SDK not installed"; //$NON-NLS-1$ |
47 private static String SDK_NOT_INSTALLED = "SDK not installed"; //$NON-NLS-1$ |
47 |
48 |
48 // a copy of bad SDK default to fall back |
49 // a copy of bad SDK default to fall back |
49 private static ISymbianSDK fallbackForBadSdk = SymbianMissingSDKFactory.createInstance("dummy_ID"); //$NON-NLS-1$ |
50 private static ISymbianSDK fallbackForBadSdk = SymbianMissingSDKFactory.createInstance("dummy_ID"); //$NON-NLS-1$ |
|
51 |
|
52 // Preference data |
|
53 protected BuildArgumentsInfo buildArgumentsInfo; |
|
54 protected final static String ARGUMENTS_DATA_ID = "ARGUMENTS_DATA_ID"; //$NON-NLS-1$ |
50 |
55 |
51 public BuildContextSBSv1(ISymbianSDK theSDK, String thePlatform, String theTarget) { |
56 public BuildContextSBSv1(ISymbianSDK theSDK, String thePlatform, String theTarget) { |
52 sdkId = theSDK.getUniqueId(); |
57 sdkId = theSDK.getUniqueId(); |
53 platform = thePlatform.toUpperCase(); |
58 platform = thePlatform.toUpperCase(); |
54 target = theTarget.toUpperCase(); |
59 target = theTarget.toUpperCase(); |
410 */ |
415 */ |
411 public List<File> getCachedSystemIncludePaths() { |
416 public List<File> getCachedSystemIncludePaths() { |
412 return getCachedData().getSystemIncludePaths(); |
417 return getCachedData().getSystemIncludePaths(); |
413 } |
418 } |
414 |
419 |
|
420 @Override |
|
421 public void loadConfigurationSettings(ICStorageElement se) { |
|
422 if (se.getName().equals(ARGUMENTS_DATA_ID)) { |
|
423 loadBuildArgsFromStorage(se); |
|
424 } |
|
425 } |
|
426 |
|
427 @Override |
|
428 public IBuildArgumentsInfo getBuildArgumentsInfo() { |
|
429 return (IBuildArgumentsInfo)buildArgumentsInfo; |
|
430 } |
|
431 |
|
432 @Override |
|
433 public BuildArgumentsInfo getBuildArgumentsInfoCopy() { |
|
434 return new BuildArgumentsInfo(buildArgumentsInfo); |
|
435 } |
|
436 |
|
437 @Override |
|
438 public void setBuildArgumentsInfo(BuildArgumentsInfo buildArgumentsInfo) { |
|
439 this.buildArgumentsInfo = buildArgumentsInfo; |
|
440 } |
|
441 |
|
442 @SuppressWarnings("deprecation") |
|
443 private void loadBuildArgsFromStorage(ICStorageElement rootStorage) { |
|
444 buildArgumentsInfo = new BuildArgumentsInfo(getSDK()); |
|
445 String value = rootStorage.getAttribute(BuildArgumentsInfo.BLDMAKEBLDFILESARGSSTORAGE); |
|
446 if (value != null) { |
|
447 buildArgumentsInfo.bldmakeBldFilesArgs = value; |
|
448 } |
|
449 |
|
450 value = rootStorage.getAttribute(BuildArgumentsInfo.BLDMAKECLEANARGSSTORAGE); |
|
451 if (value != null) { |
|
452 buildArgumentsInfo.bldmakeCleanArgs = value; |
|
453 } |
|
454 |
|
455 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDBUILDARGSSTORAGE); |
|
456 if (value != null) { |
|
457 buildArgumentsInfo.abldBuildArgs = value; |
|
458 } |
|
459 |
|
460 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDEXPORTARGSSTORAGE); |
|
461 if (value != null) { |
|
462 buildArgumentsInfo.abldExportArgs = value; |
|
463 } |
|
464 |
|
465 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDMAKEFILEARGSSTORAGE); |
|
466 if (value != null) { |
|
467 buildArgumentsInfo.abldMakefileArgs = value; |
|
468 } |
|
469 |
|
470 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDLIBRARYARGSSTORAGE); |
|
471 if (value != null) { |
|
472 buildArgumentsInfo.abldLibraryArgs = value; |
|
473 } |
|
474 |
|
475 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDRESOURCEARGSSTORAGE); |
|
476 if (value != null) { |
|
477 buildArgumentsInfo.abldResourceArgs = value; |
|
478 } |
|
479 |
|
480 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDTARGETARGSSTORAGE); |
|
481 if (value != null) { |
|
482 buildArgumentsInfo.abldTargetArgs = value; |
|
483 } |
|
484 |
|
485 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDFINALARGSSTORAGE); |
|
486 if (value != null) { |
|
487 buildArgumentsInfo.abldFinalArgs = value; |
|
488 } |
|
489 |
|
490 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDCLEANARGSSTORAGE); |
|
491 if (value != null) { |
|
492 buildArgumentsInfo.abldCleanArgs = value; |
|
493 } |
|
494 |
|
495 value = rootStorage.getAttribute(BuildArgumentsInfo.ABLDFREEZEARGSSTORAGE); |
|
496 if (value != null) { |
|
497 buildArgumentsInfo.abldFreezeArgs = value; |
|
498 } |
|
499 } |
|
500 |
|
501 public void saveBuildArgsToStorage(ICStorageElement rootStorage) { |
|
502 if (buildArgumentsInfo == null){ |
|
503 buildArgumentsInfo = new BuildArgumentsInfo(getSDK()); |
|
504 } |
|
505 |
|
506 if (buildArgumentsInfo.bldmakeBldFilesArgs.trim().length() > 0) { |
|
507 rootStorage.setAttribute(BuildArgumentsInfo.BLDMAKEBLDFILESARGSSTORAGE, buildArgumentsInfo.bldmakeBldFilesArgs); |
|
508 } |
|
509 |
|
510 if (buildArgumentsInfo.bldmakeCleanArgs.trim().length() > 0) { |
|
511 rootStorage.setAttribute(BuildArgumentsInfo.BLDMAKECLEANARGSSTORAGE, buildArgumentsInfo.bldmakeCleanArgs); |
|
512 } |
|
513 |
|
514 if (buildArgumentsInfo.abldBuildArgs.trim().length() > 0) { |
|
515 rootStorage.setAttribute(BuildArgumentsInfo.ABLDBUILDARGSSTORAGE, buildArgumentsInfo.abldBuildArgs); |
|
516 } |
|
517 |
|
518 if (buildArgumentsInfo.abldExportArgs.trim().length() > 0) { |
|
519 rootStorage.setAttribute(BuildArgumentsInfo.ABLDEXPORTARGSSTORAGE, buildArgumentsInfo.abldExportArgs); |
|
520 } |
|
521 |
|
522 if (buildArgumentsInfo.abldMakefileArgs.trim().length() > 0) { |
|
523 rootStorage.setAttribute(BuildArgumentsInfo.ABLDMAKEFILEARGSSTORAGE, buildArgumentsInfo.abldMakefileArgs); |
|
524 } |
|
525 |
|
526 if (buildArgumentsInfo.abldLibraryArgs.trim().length() > 0) { |
|
527 rootStorage.setAttribute(BuildArgumentsInfo.ABLDLIBRARYARGSSTORAGE, buildArgumentsInfo.abldLibraryArgs); |
|
528 } |
|
529 |
|
530 if (buildArgumentsInfo.abldResourceArgs.trim().length() > 0) { |
|
531 rootStorage.setAttribute(BuildArgumentsInfo.ABLDRESOURCEARGSSTORAGE, buildArgumentsInfo.abldResourceArgs); |
|
532 } |
|
533 |
|
534 if (buildArgumentsInfo.abldTargetArgs.trim().length() > 0) { |
|
535 rootStorage.setAttribute(BuildArgumentsInfo.ABLDTARGETARGSSTORAGE, buildArgumentsInfo.abldTargetArgs); |
|
536 } |
|
537 |
|
538 if (buildArgumentsInfo.abldFinalArgs.trim().length() > 0) { |
|
539 rootStorage.setAttribute(BuildArgumentsInfo.ABLDFINALARGSSTORAGE, buildArgumentsInfo.abldFinalArgs); |
|
540 } |
|
541 |
|
542 if (buildArgumentsInfo.abldCleanArgs.trim().length() > 0) { |
|
543 rootStorage.setAttribute(BuildArgumentsInfo.ABLDCLEANARGSSTORAGE, buildArgumentsInfo.abldCleanArgs); |
|
544 } |
|
545 |
|
546 if (buildArgumentsInfo.abldFreezeArgs.trim().length() > 0) { |
|
547 rootStorage.setAttribute(BuildArgumentsInfo.ABLDFREEZEARGSSTORAGE, buildArgumentsInfo.abldFreezeArgs); |
|
548 } |
|
549 } |
|
550 |
|
551 @Override |
|
552 public void saveConfigurationSettings(ICStorageElement se) { |
|
553 saveBuildArgsToStorage(se.createChild(ARGUMENTS_DATA_ID)); |
|
554 } |
|
555 |
|
556 |
|
557 |
415 } |
558 } |