hrev44328 adds 2 changesets to branch 'master' old head: 0e20120117d4fa86db87a969d1f1181dd70c674f new head: 29c5696ed7995bc6ed21e243b66d95402d0115c7 ---------------------------------------------------------------------------- dada4f4: OptionalBuildFeatures changes for building WebPositive. * Detect hybrid builds. * Only enable WebKit build feature when WebPositive is added * Provide a more accurate message for gcc2hybrids. 29c5696: Changes relating to building WebPositive from source. * Add WebKit optional package. * Make WebKit a dependency of WebPositive * Enable building of WebPositive from source. Note: WebKit currently expands to lib/. Alternative gcc-subdirectories are not taken into consideration. Though it is trivial to change. [ Matt Madia <mattmadia@xxxxxxxxx> ] ---------------------------------------------------------------------------- 3 files changed, 49 insertions(+), 14 deletions(-) build/jam/OptionalBuildFeatures | 29 +++++++++++++++++++++----- build/jam/OptionalPackageDependencies | 2 +- build/jam/OptionalPackages | 32 +++++++++++++++++++++-------- ############################################################################ Commit: dada4f4116b93ea595dc2badddf49945bbffa105 URL: http://cgit.haiku-os.org/haiku/commit/?id=dada4f4 Author: Matt Madia <mattmadia@xxxxxxxxx> Date: Thu Jul 12 19:33:11 2012 UTC OptionalBuildFeatures changes for building WebPositive. * Detect hybrid builds. * Only enable WebKit build feature when WebPositive is added * Provide a more accurate message for gcc2hybrids. ---------------------------------------------------------------------------- diff --git a/build/jam/OptionalBuildFeatures b/build/jam/OptionalBuildFeatures index af9d300..60d0b71 100644 --- a/build/jam/OptionalBuildFeatures +++ b/build/jam/OptionalBuildFeatures @@ -2,6 +2,14 @@ # build. For features that require downloading a zip file from somewhere it is # likely the same file use for an optional package. +# Detect a hybrid GCC2/GCC4 image and disable the checks for unavailable GCC4 +# packages. (It does not matter if a package was built with either compiler, +# the system should have the respective other system libs.) +local isHybridBuild ; +if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1 + && $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) { + isHybridBuild = 1 ; +} local baseURL = http://www.haiku-files.org/files/optional-packages ; @@ -421,10 +429,23 @@ if $(HAIKU_BUILD_FEATURE_TAGLIB) { # WebKit +# Automatically install the WebKit feature, when the optional WebPositive +# optional package is enabled. +if [ IsOptionalHaikuImagePackageAdded WebPositive ] { + HAIKU_BUILD_FEATURE_WEBKIT = 1 ; +} + HAIKU_WEBKIT_FILE = haikuwebkit-1.1.2-x86-gcc4-2012-07-11.zip ; -if $(TARGET_ARCH) = x86 { - if $(HAIKU_GCC_VERSION[1]) < 4 { - Echo "WebKit support not available on gcc $(HAIKU_GCC_VERSION[1])" ; + +if $(HAIKU_BUILD_FEATURE_WEBKIT) { + if $(TARGET_ARCH) != x86 { + Echo "WebKit support not available on $(TARGET_ARCH)" ; + } else if $(HAIKU_GCC_VERSION[1]) < 4 { + if ! $(isHybridBuild) { + Echo "WebKit support not available on gcc $(HAIKU_GCC_VERSION[1])" ; + } else { + Echo "WebKit to be utilized by gcc4 inside $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR)" ; + } } else { local zipFile = [ DownloadFile $(HAIKU_WEBKIT_FILE) : $(baseURL)/$(HAIKU_WEBKIT_FILE) ] ; @@ -447,6 +468,4 @@ if $(TARGET_ARCH) = x86 { HAIKU_WEBKIT_HEADERS = [ FDirName $(HAIKU_WEBKIT_DIR) include ] ; } -} else { - Echo "WebKit support not available on $(TARGET_ARCH)" ; } ############################################################################ Revision: hrev44328 Commit: 29c5696ed7995bc6ed21e243b66d95402d0115c7 URL: http://cgit.haiku-os.org/haiku/commit/?id=29c5696 Author: Matt Madia <mattmadia@xxxxxxxxx> Date: Tue Jul 10 19:18:50 2012 UTC Changes relating to building WebPositive from source. * Add WebKit optional package. * Make WebKit a dependency of WebPositive * Enable building of WebPositive from source. Note: WebKit currently expands to lib/. Alternative gcc-subdirectories are not taken into consideration. Though it is trivial to change. ---------------------------------------------------------------------------- diff --git a/build/jam/OptionalPackageDependencies b/build/jam/OptionalPackageDependencies index 92d475d..650783d 100644 --- a/build/jam/OptionalPackageDependencies +++ b/build/jam/OptionalPackageDependencies @@ -35,7 +35,7 @@ OptionalPackageDependencies SDLLibs : XiphLibs libmad libmikmod Libmng libmodplu OptionalPackageDependencies Subversion : APR-util Neon LibIconv LibXML2 OpenSSL SQLite ; OptionalPackageDependencies Transmission : LibEvent Curl OpenSSL LibIconv ; OptionalPackageDependencies Vim : GetText LibIconv ; -OptionalPackageDependencies WebPositive : Curl LibXML2 SQLite WebPositiveBookmarks ; +OptionalPackageDependencies WebPositive : Curl LibXML2 SQLite WebKit WebPositiveBookmarks ; OptionalPackageDependencies wpa_supplicant : OpenSSL ; OptionalPackageDependencies XZ-Utils : Tar ; diff --git a/build/jam/OptionalPackages b/build/jam/OptionalPackages index 926469f..ad77d54 100644 --- a/build/jam/OptionalPackages +++ b/build/jam/OptionalPackages @@ -1843,18 +1843,34 @@ if [ IsOptionalHaikuImagePackageAdded Vision ] { } +# WebKit +if [ IsOptionalHaikuImagePackageAdded WebKit ] { + if $(TARGET_ARCH) != x86 { + Echo "No optional package WebKit available for $(TARGET_ARCH)" ; + } else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) { + Echo "No optional package WebKit available for gcc2" ; + } else { + InstallOptionalHaikuImagePackage $(HAIKU_WEBKIT_FILE) + : $(baseURL)/$(HAIKU_WEBKIT_FILE) + : common ; + } +} + + # WebPositive if [ IsOptionalHaikuImagePackageAdded WebPositive ] { if $(TARGET_ARCH) != x86 { Echo "No optional package WebPositive available for $(TARGET_ARCH)" ; - } else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) { - Echo "No optional package WebPositive available for gcc2" ; - } else { - InstallOptionalHaikuImagePackage - WebPositive-gcc4-x86-r586-2012-03-31.zip - : $(baseURL)/WebPositive-gcc4-x86-r586-2012-03-31.zip ; - AddSymlinkToHaikuImage home config settings deskbar Applications - : /boot/apps/WebPositive/WebPositive ; + } else if $(HAIKU_GCC_VERSION[1]) < 4 { + if ! $(isHybridBuild) { + Echo "No optional package WebPositive available for gcc2" ; + } else { + Echo "WebPositive will be compiled by gcc4 inside $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR)" ; + } + } else if $(HAIKU_GCC_VERSION[1]) >= 4 { + AddFilesToHaikuHybridImage apps : WebPositive ; + AddSymlinkToHaikuHybridImage home config settings deskbar Applications + : /boot/apps/WebPositive ; } }