diff --git a/build/jam/BeOSRules b/build/jam/BeOSRules index 9b16c083c9..4559bfb01b 100644 --- a/build/jam/BeOSRules +++ b/build/jam/BeOSRules @@ -224,16 +224,21 @@ actions ResComp1 cat "$(2[2-])" | $(CC) -E $(CCDEFS) $(HDRS) - | egrep -v '^#' | $(2[1]) $(RCHDRS) --auto-names -o "$(1)" - } -rule ResAttr attributeFile : _resourceFiles +rule ResAttr attributeFile : _resourceFiles : deleteAttributeFile { - # ResAttr : ; + # ResAttr : [ : ] ; # # and must be gristed. # can also be .rdef files -- they will be compiled first in # this case. + # is a boolean that specifies wether or not the target file + # should be removed before writing. Defaults to true. local resourceFiles ; local resourceFile ; + deleteAttributeFile ?= true ; + deleteAttributeFile1 on $(1) = $(deleteAttributeFile) ; + for resourceFile in $(_resourceFiles) { # if the specified resource file is an .rdef file, we compile it first if $(resourceFile:S) = ".rdef" { @@ -256,6 +261,8 @@ rule ResAttr attributeFile : _resourceFiles actions ResAttr1 { $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) - rm -f $(1) - $(2[1]) -o "$(1)" "$(2[2-])" + if [ \\"$(deleteAttributeFile1)\\" = "true" ]; then + rm -f $(1) + fi + $(2[1]) -O -o "$(1)" "$(2[2-])" } diff --git a/build/jam/HaikuImage b/build/jam/HaikuImage index f2c7021e48..27b4a058ea 100644 --- a/build/jam/HaikuImage +++ b/build/jam/HaikuImage @@ -270,7 +270,6 @@ local spellFiles = words geekspeak ; spellFiles = $(spellFiles:G=spell) ; SEARCH on $(spellFiles) = [ FDirName $(HAIKU_TOP) src apps mail ] ; -#AddDirectoryToHaikuImage beos etc word_dictionary ; AddFilesToHaikuImage beos etc word_dictionary : $(spellFiles) ; local svgFiles = "lion.svg" ; diff --git a/build/jam/MainBuildRules b/build/jam/MainBuildRules index f4b16764b3..c64c04f1ba 100644 --- a/build/jam/MainBuildRules +++ b/build/jam/MainBuildRules @@ -198,6 +198,13 @@ rule Ld Depends $(target) : $(objects) ; MakeLocateDebug $(target) ; + + on $(1) XRes $(1) : $(RESFILES) ; + if ! [ on $(1) return $(DONT_USE_BEOS_RULES) ] { + SetType $(1) ; + MimeSet $(1) ; + SetVersion $(1) ; + } } actions Ld diff --git a/src/system/boot/Jamfile b/src/system/boot/Jamfile index 0ef52afacf..92a47aec90 100644 --- a/src/system/boot/Jamfile +++ b/src/system/boot/Jamfile @@ -30,6 +30,8 @@ if $(TARGET_ARCH) = x86 { platformObjects += cpuid.o ; } +AddResources zbeos : boot_loader.rdef ; + KernelLd boot_loader_$(TARGET_BOOT_PLATFORM) : boot_platform_$(TARGET_BOOT_PLATFORM).o boot_arch_$(TARGET_ARCH).o @@ -61,6 +63,12 @@ rule BuildZbeos { Depends $(zbeos) : $(bootLoader) ; MakeLocateDebug $(zbeos) ; + + on $(1) ResAttr $(1) : $(RESFILES) : false ; + if ! [ on $(1) return $(DONT_USE_BEOS_RULES) ] { + SetType $(1) ; + MimeSet $(1) ; + } } actions BuildZbeos { diff --git a/src/system/boot/boot_loader.rdef b/src/system/boot/boot_loader.rdef new file mode 100644 index 0000000000..8849339be1 --- /dev/null +++ b/src/system/boot/boot_loader.rdef @@ -0,0 +1,13 @@ +resource app_signature "application/x-vnd.Haiku-BootLoader"; + +resource app_version { + major = 1, + middle = 0, + minor = 0, + + variety = B_APPV_DEVELOPMENT, + internal = 0, + + short_info = "Boot Loader", + long_info = "Boot Loader ©2002-2007 Haiku Inc." +}; diff --git a/src/system/runtime_loader/Jamfile b/src/system/runtime_loader/Jamfile index 83c2845a2c..deee55e771 100644 --- a/src/system/runtime_loader/Jamfile +++ b/src/system/runtime_loader/Jamfile @@ -14,6 +14,8 @@ DEFINES += BEOS_STYLE_SYMBOLS_RESOLUTION _LOADER_MODE ; +AddResources runtime_loader : runtime_loader.rdef ; + # needed for "runtime_loader" only StaticLibrary libruntime_loader.a : kernel_vsprintf.c diff --git a/src/system/runtime_loader/runtime_loader.rdef b/src/system/runtime_loader/runtime_loader.rdef new file mode 100644 index 0000000000..8eb3c6e6d5 --- /dev/null +++ b/src/system/runtime_loader/runtime_loader.rdef @@ -0,0 +1,13 @@ +resource app_signature "application/x-vnd.Haiku-RuntimeLoader"; + +resource app_version { + major = 1, + middle = 0, + minor = 0, + + variety = B_APPV_DEVELOPMENT, + internal = 0, + + short_info = "Runtime Loader", + long_info = "Runtime Loader ©2002-2007 Haiku Inc." +};