Reworked the mandatory ICU package.

* repackaged archive to not include directory path information
 * updated the jam rules so that the correct archive gets extracted to the
   correct directory
Notes:
 * the .OptionalPackageDescription & specified license was not checked
 * this allows the newer Web+ to run on gcc2hybrids (r37519)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37523 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Matt Madia 2010-07-15 02:24:17 +00:00
parent 266681e27c
commit 0009e148b8
2 changed files with 44 additions and 27 deletions

View File

@ -50,28 +50,26 @@ if $(HAIKU_BUILD_FEATURE_SSL) {
# ICU
# Note ICU isn't actually optional, but is still an external package
local isHybridBuild ;
if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1
&& $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) {
isHybridBuild = 1 ;
}
if $(HAIKU_GCC_VERSION[1]) < 4 && !isHybridBuild) {
HAIKU_ICU_PACKAGE = icu-4.4.1-r1a2-x86-gcc2-2010-07-14-a.zip ;
} else {
HAIKU_ICU_PACKAGE = icu-4.4.1-r1a2-x86-gcc4-2010-07-13-b.zip ;
}
HAIKU_ICU_URL = $(baseURL)/$(HAIKU_ICU_PACKAGE) ;
HAIKU_ICU_GCC_2_PACKAGE = icu-4.4.1-x86-gcc2-2010-07-14.zip ;
HAIKU_ICU_GCC_4_PACKAGE = icu-4.4.1-x86-gcc4-2010-07-14.zip ;
if $(TARGET_ARCH) != x86 {
Echo "ICU not available for $(TARGET_ARCH)" ;
} else {
local zipFile = [ DownloadFile $(HAIKU_ICU_PACKAGE) : $(HAIKU_ICU_URL) ] ;
local icu_package ;
if $(HAIKU_GCC_VERSION[1]) = 2 {
icu_package = $(HAIKU_ICU_GCC_2_PACKAGE) ;
} else {
icu_package = $(HAIKU_ICU_GCC_4_PACKAGE) ;
}
local zipFile = [ DownloadFile $(icu_package)
: $(baseURL)/$(icu_package) ] ;
# zip file and output directory
HAIKU_ICU_ZIP_FILE = $(zipFile) ;
HAIKU_ICU_DIR = [ FDirName $(HAIKU_OPTIONAL_BUILD_PACKAGES_DIR)
$(HAIKU_ICU_PACKAGE:B) ] ;
$(icu_package:B) ] ;
# extract headers and libraries
# HAIKU_ICU_HEADERS_DEPENDENCY = [ ExtractArchive $(HAIKU_ICU_DIR)
@ -79,13 +77,13 @@ if $(TARGET_ARCH) != x86 {
HAIKU_ICU_LIBS = [ ExtractArchive $(HAIKU_ICU_DIR)
:
system/lib/libicudata.so.44
system/lib/libicui18n.so.44
system/lib/libicuio.so.44
system/lib/libicule.so.44
system/lib/libiculx.so.44
system/lib/libicutu.so.44
system/lib/libicuuc.so.44
libicudata.so.44
libicui18n.so.44
libicuio.so.44
libicule.so.44
libiculx.so.44
libicutu.so.44
libicuuc.so.44
: $(zipFile)
] ;

View File

@ -754,12 +754,31 @@ if [ IsOptionalHaikuImagePackageAdded ICU ] {
if $(TARGET_ARCH) != x86 {
Echo "No optional package ICU available for $(TARGET_ARCH)" ;
} else {
InstallOptionalHaikuImagePackage $(HAIKU_ICU_PACKAGE)
: $(HAIKU_ICU_URL)
:
:
: true
;
if $(HAIKU_GCC_VERSION[1]) = 2 {
# unzip gcc2
InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE)
: $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE)
: system lib ;
if $(isHybridBuild) {
# unzip gcc4 to gcc4 subdir
InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)
: $(baseURL)/$(HAIKU_ICU_GCC_4_PACKAGE)
: system lib gcc4
;
}
} else {
# unzip gcc4
InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)
: $(baseURL)/$(HAIKU_ICU_GCC_4_PACKAGE)
: system lib ;
if $(isHybridBuild) {
# unzip gcc2 to gcc2 subdir
InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE)
: $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE)
: system lib gcc2
;
}
}
}
}