diff --git a/build/jam/ImageRules b/build/jam/ImageRules index 5b4975bc98..813517e899 100644 --- a/build/jam/ImageRules +++ b/build/jam/ImageRules @@ -900,7 +900,10 @@ rule InstallOptionalHaikuImagePackage package : url : dirTokens : isCDPackage # download archive file local archiveFile = [ DownloadFile $(package) : $(url) ] ; - if ( $(isCDPackage) = true || $(isCDPackage) = 1 ) && $(HAIKU_CD_NAME) { + if $(package:S) = .hpkg { + AddFilesToHaikuImage $(dirTokens) : $(archiveFile) ; + } else if ( $(isCDPackage) = true || $(isCDPackage) = 1 ) + && $(HAIKU_CD_NAME) { # TODO: If HAIKU_CD_NAME is set, that doesn't mean we're building a CD # image! # copy onto image diff --git a/build/jam/OptionalBuildFeatures b/build/jam/OptionalBuildFeatures index 122163e9f8..c0af75f3fa 100644 --- a/build/jam/OptionalBuildFeatures +++ b/build/jam/OptionalBuildFeatures @@ -56,8 +56,9 @@ if $(HAIKU_BUILD_FEATURE_SSL) { # ICU # Note ICU isn't actually optional, but is still an external package -HAIKU_ICU_GCC_2_PACKAGE = icu-4.4.1-r1a3-x86-gcc2-2011-05-29.zip ; +HAIKU_ICU_GCC_2_PACKAGE = icu-4.4.1-r1a3-x86-gcc2-2011-05-29.hpkg ; HAIKU_ICU_GCC_4_PACKAGE = icu-4.4.1-r1a3-x86-gcc4-2011-05-29.zip ; + # TODO: Make hpkg! HAIKU_ICU_PPC_PACKAGE = icu-4.4.1-ppc-2010-08-17.zip ; HAIKU_ICU_DEVEL_PACKAGE = icu-devel-4.4.1-2010-07-26.zip ; @@ -94,25 +95,25 @@ if $(TARGET_ARCH) = ppc { icu_package = $(HAIKU_ICU_GCC_4_PACKAGE) ; } - local zipFile = [ DownloadFile $(icu_package) - : $(baseURL)/$(icu_package) ] ; + local packageFile = [ DownloadFile $(icu_package) + : $(hpkgBaseURL)/$(icu_package) ] ; # zip file and output directory - HAIKU_ICU_ZIP_FILE = $(zipFile) ; + HAIKU_ICU_PACKAGE_FILE = $(packageFile) ; HAIKU_ICU_DIR = [ FDirName $(HAIKU_OPTIONAL_BUILD_PACKAGES_DIR) $(icu_package:B) ] ; # extract libraries HAIKU_ICU_LIBS = [ ExtractArchive $(HAIKU_ICU_DIR) : - libicudata.so.44 - libicui18n.so.44 - libicuio.so.44 - libicule.so.44 - libiculx.so.44 - libicutu.so.44 - libicuuc.so.44 - : $(zipFile) + lib/libicudata.so.44 + lib/libicui18n.so.44 + lib/libicuio.so.44 + lib/libicule.so.44 + lib/libiculx.so.44 + lib/libicutu.so.44 + lib/libicuuc.so.44 + : $(packageFile) : extracted-icu ] ; } @@ -142,6 +143,7 @@ if [ IsOptionalHaikuImagePackageAdded CLucene ] { } local baseURL = http://haiku-files.org/files/optional-packages ; +local hpkgBaseURL = http://haiku-files.org/files/hpkg ; HAIKU_CLUCENE_PACKAGE = clucene-0.9.21-x86-gcc4-haiku-2009-08-11.zip ; HAIKU_CLUCENE_URL = $(baseURL)/$(HAIKU_CLUCENE_PACKAGE) ; diff --git a/build/jam/OptionalPackages b/build/jam/OptionalPackages index 2a33a3dd6f..a1ccbb7648 100644 --- a/build/jam/OptionalPackages +++ b/build/jam/OptionalPackages @@ -86,6 +86,7 @@ # Yasm - the assembler utility local baseURL = http://haiku-files.org/files/optional-packages ; +local hpkgBaseURL = http://haiku-files.org/files/hpkg ; local baseSourceURL = http://haiku-files.org/files/sources ; # ABI-compliance-checker @@ -515,7 +516,7 @@ if [ IsOptionalHaikuImagePackageAdded DevelopmentBase ] # gcc and binutils if $(HAIKU_GCC_VERSION[1]) = 2 { InstallCommonPackage gcc-2.95.3_110304-1.hpkg - : $(baseURL)/gcc-2.95.3_110304.hpkg ; + : $(hpkgBaseURL)/gcc-2.95.3_110304-1.hpkg ; # TODO: remove this when we have a mechanism to switch gcc via PATH AddSymlinkToHaikuImage common settings develop tools @@ -856,8 +857,8 @@ if [ IsOptionalHaikuImagePackageAdded ICU ] { if $(HAIKU_GCC_VERSION[1]) = 2 { # unzip gcc2 InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE) - : $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE) - : system lib ; + : $(hpkgBaseURL)/$(HAIKU_ICU_GCC_2_PACKAGE) + : system packages ; } else { # unzip gcc4 InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)