Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
authormrowe@apple.com <mrowe@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 26 Jan 2012 00:34:15 +0000 (00:34 +0000)
committermrowe@apple.com <mrowe@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 26 Jan 2012 00:34:15 +0000 (00:34 +0000)
<rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH

Reviewed by David Kilzer.

Source/JavaScriptCore:

* Configurations/Base.xcconfig: Define NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR, which contains
the path where JavaScriptCore is normally installed. Update JAVASCRIPTCORE_FRAMEWORKS_DIR
to point to the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
* Configurations/JavaScriptCore.xcconfig: Always set the framework's install name based on
the normal framework location. This prevents an incorrect install name from being used when
installing in to the staged frameworks directory.

Source/ThirdParty:

* gtest/xcode/Config/ProductionProject.xcconfig: Ensure that the staged frameworks path
is in the framework search path when USE_STAGING_INSTALL_PATH is set. Look for the WebCore
framework in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.

Source/WebCore:

* Configurations/WebCore.xcconfig: Define NORMAL_WEBCORE_FRAMEWORKS_DIR, which contains
the path where WebCore is normally installed. Update WEBCORE_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.

Source/WebKit/mac:

* Configurations/WebKit.xcconfig: Define NORMAL_WEBKIT_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
WEBCORE_PRIVATE_HEADERS_DIR to find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.

Source/WebKit2:

* Configurations/BaseTarget.xcconfig: Define NORMAL_WEBKIT2_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT2_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
UMBRELLA_FRAMEWORKS_DIR so we can find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.
* Configurations/PluginProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
* Configurations/WebKit2.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
Always set the framework's install name based on the normal framework location. This prevents
an incorrect install name from being used when installing in to the staged frameworks directory.
* Configurations/WebProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@105942 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/Base.xcconfig
Source/JavaScriptCore/Configurations/JavaScriptCore.xcconfig
Source/ThirdParty/ChangeLog
Source/ThirdParty/gtest/xcode/Config/ProductionProject.xcconfig
Source/WebCore/ChangeLog
Source/WebCore/Configurations/WebCore.xcconfig
Source/WebKit/mac/ChangeLog
Source/WebKit/mac/Configurations/WebKit.xcconfig
Source/WebKit2/ChangeLog
Source/WebKit2/Configurations/BaseTarget.xcconfig
Source/WebKit2/Configurations/PluginProcess.xcconfig
Source/WebKit2/Configurations/WebKit2.xcconfig
Source/WebKit2/Configurations/WebProcess.xcconfig

index f30cc17c4382823537c989bc117e2591f54324a5..5df7550b1dace4e33d99dc5fd3f1ba6f9d5f7ecd 100644 (file)
@@ -1,3 +1,18 @@
+2012-01-25  Mark Rowe  <mrowe@apple.com>
+
+        Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
+
+        <rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
+
+        Reviewed by David Kilzer.
+
+        * Configurations/Base.xcconfig: Define NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR, which contains
+        the path where JavaScriptCore is normally installed. Update JAVASCRIPTCORE_FRAMEWORKS_DIR
+        to point to the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
+        * Configurations/JavaScriptCore.xcconfig: Always set the framework's install name based on
+        the normal framework location. This prevents an incorrect install name from being used when
+        installing in to the staged frameworks directory.
+
 2012-01-25  Eli Fidler  <efidler@rim.com>
 
         Implement Date.toLocaleString() using ICU
index ba5c75e2905a00ee625e41df996364eef569fe7a..e304bd1fb80ea7e6a0446323580ceb624d26e7f5 100644 (file)
@@ -82,12 +82,19 @@ REAL_PLATFORM_NAME_macosx = macosx;
 
 TARGET_MAC_OS_X_VERSION_MAJOR = $(MAC_OS_X_VERSION_MAJOR);
 
+NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR = $(NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR_iphoneos = $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR_iphonesimulator = $(NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR_iphoneos);
+NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks;
 
 JAVASCRIPTCORE_FRAMEWORKS_DIR = $(JAVASCRIPTCORE_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
-JAVASCRIPTCORE_FRAMEWORKS_DIR_iphoneos = $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+JAVASCRIPTCORE_FRAMEWORKS_DIR_iphoneos = $(NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR_iphoneos);
 JAVASCRIPTCORE_FRAMEWORKS_DIR_iphonesimulator = $(JAVASCRIPTCORE_FRAMEWORKS_DIR_iphoneos);
-JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks;
 
+JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx = $(JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_ = $(JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO);
+JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO = $(NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR);
+JAVASCRIPTCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 // DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL, STRIP_INSTALLED_PRODUCT and DEAD_CODE_STRIPPING vary between the debug and normal variants.
 // We set up the values for each variant here, and have the Debug configuration in the Xcode project use the _debug variant.
index e6b5b4d2a9bce192780b577da926e9705f1c2b84..c4b5833a9e6938215e82aa009ae7d69013757278 100644 (file)
@@ -46,6 +46,7 @@ GCC_PREFIX_HEADER = JavaScriptCorePrefix.h;
 HEADER_SEARCH_PATHS = "${BUILT_PRODUCTS_DIR}/DerivedSources/JavaScriptCore" $(HEADER_SEARCH_PATHS);
 INFOPLIST_FILE = Info.plist;
 INSTALL_PATH = $(JAVASCRIPTCORE_FRAMEWORKS_DIR);
+DYLIB_INSTALL_NAME_BASE = $(NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR);
 PRODUCT_NAME = JavaScriptCore;
 
 OTHER_CFLAGS = $(OTHER_CFLAGS_$(CONFIGURATION)_$(CURRENT_VARIANT));
index c958581e1e78d75151925d1c48d934817008bab8..02381969cef0d41d5b3d61b374a37fb4c040ab71 100644 (file)
@@ -1,3 +1,15 @@
+2012-01-25  Mark Rowe  <mrowe@apple.com>
+
+        Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
+
+        <rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
+
+        Reviewed by David Kilzer.
+
+        * gtest/xcode/Config/ProductionProject.xcconfig: Ensure that the staged frameworks path
+        is in the framework search path when USE_STAGING_INSTALL_PATH is set. Look for the WebCore
+        framework in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
+
 2012-01-06  Anders Carlsson  <andersca@apple.com>
 
         Make JavaScriptCore.framework a reference and put it in a Frameworks group
index 4ba5cbb92964459338d863b2845eb596d97d3a2a..f8ae09bb1596ae30b42ea0497075526546f1fe3f 100644 (file)
 #include "ReleaseProject.xcconfig"
 
 // Used by HEADER_SEARCH_PATHS in General.xcconfig
-WEBCORE_PRIVATE_HEADERS_DIR = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/PrivateHeaders;
+WEBCORE_PRIVATE_HEADERS_DIR = $(WEBCORE_PRIVATE_HEADERS_DIR_$(USE_STAGING_INSTALL_PATH));
+WEBCORE_PRIVATE_HEADERS_DIR_ = $(WEBCORE_PRIVATE_HEADERS_DIR_NO);
+WEBCORE_PRIVATE_HEADERS_DIR_NO = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/PrivateHeaders;
+WEBCORE_PRIVATE_HEADERS_DIR_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari/WebCore.framework/PrivateHeaders;
+
+FRAMEWORK_SEARCH_PATHS = $(STAGED_FRAMEWORKS_SEARCH_PATH) $(FRAMEWORK_SEARCH_PATHS);
+
+STAGED_FRAMEWORKS_SEARCH_PATH = $(STAGED_FRAMEWORKS_SEARCH_PATH_$(USE_STAGING_INSTALL_PATH));
+STAGED_FRAMEWORKS_SEARCH_PATH_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 ONLY_ACTIVE_ARCH = NO
index 7384350f029b54e427d31f5f19a7e9beea14da36..cabc7f30d86faa1a73bc75408c29b93d09988a86 100644 (file)
@@ -1,3 +1,21 @@
+2012-01-25  Mark Rowe  <mrowe@apple.com>
+
+        Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
+
+        <rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
+
+        Reviewed by David Kilzer.
+
+        * Configurations/WebCore.xcconfig: Define NORMAL_WEBCORE_FRAMEWORKS_DIR, which contains
+        the path where WebCore is normally installed. Update WEBCORE_FRAMEWORKS_DIR to point to
+        the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
+        NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
+        are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
+        directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
+        based on the normal framework location. This prevents an incorrect install name from being
+        used when installing in to the staged frameworks directory. Look for our other frameworks
+        in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
+
 2012-01-25  Eric Seidel  <eric@webkit.org>
 
         "text" and "URL" legacy clipboard types should not be case sensitive
index 1d2f11dba4fddbdf7ded205801260d172ad50c46..fb2739790318d66432b526efef1e3c66772f61e3 100644 (file)
@@ -41,12 +41,16 @@ FRAMEWORK_SEARCH_PATHS_iphoneos_Debug = $(BUILT_PRODUCTS_DIR) $(PRODUCTION_FRAME
 FRAMEWORK_SEARCH_PATHS_iphoneos_Release = $(FRAMEWORK_SEARCH_PATHS_iphoneos_Debug);
 FRAMEWORK_SEARCH_PATHS_iphoneos_Production = $(PRODUCTION_FRAMEWORKS_DIR);
 FRAMEWORK_SEARCH_PATHS_iphonesimulator = $(FRAMEWORK_SEARCH_PATHS_iphoneos_$(CONFIGURATION));
-FRAMEWORK_SEARCH_PATHS_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks/Carbon.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/ApplicationServices.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks $(FRAMEWORK_SEARCH_PATHS);
+FRAMEWORK_SEARCH_PATHS_macosx = $(STAGED_FRAMEWORKS_SEARCH_PATH) $(SYSTEM_LIBRARY_DIR)/Frameworks/Carbon.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/ApplicationServices.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks $(FRAMEWORK_SEARCH_PATHS);
+
+STAGED_FRAMEWORKS_SEARCH_PATH = $(STAGED_FRAMEWORKS_SEARCH_PATH_$(USE_STAGING_INSTALL_PATH));
+STAGED_FRAMEWORKS_SEARCH_PATH_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 HEADER_SEARCH_PATHS = ForwardingHeaders icu /usr/include/libxslt /usr/include/libxml2 $(SQLITE3_HEADER_SEARCH_PATHS) "${BUILT_PRODUCTS_DIR}/DerivedSources/WebCore" "${BUILT_PRODUCTS_DIR}/usr/local/include" $(HEADER_SEARCH_PATHS);
 INFOPLIST_FILE = Info.plist;
 INSTALL_PATH = $(INSTALL_PATH_$(REAL_PLATFORM_NAME));
-INSTALL_PATH_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks;
+INSTALL_PATH_macosx = $(WEBCORE_FRAMEWORKS_DIR);
+DYLIB_INSTALL_NAME_BASE = $(NORMAL_WEBCORE_FRAMEWORKS_DIR);
 INSTALLHDRS_COPY_PHASE = YES;
 INSTALLHDRS_SCRIPT_PHASE = YES;
 PRODUCT_NAME = WebCore;
@@ -59,10 +63,32 @@ OTHER_LDFLAGS_macosx_1070 = -Xlinker -objc_gc_compaction -framework IOSurface;
 OTHER_LDFLAGS_macosx_1080 = $(OTHER_LDFLAGS_macosx_1070);
 OTHER_LDFLAGS_macosx_1090 = $(OTHER_LDFLAGS_macosx_1070);
 
+NORMAL_WEBCORE_FRAMEWORKS_DIR = $(NORMAL_WEBCORE_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+NORMAL_WEBCORE_FRAMEWORKS_DIR_iphoneos = $(PRODUCTION_FRAMEWORKS_DIR);
+NORMAL_WEBCORE_FRAMEWORKS_DIR_iphonesimulator = $(PRODUCTION_FRAMEWORKS_DIR);
+NORMAL_WEBCORE_FRAMEWORKS_DIR_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks;
+
+WEBCORE_FRAMEWORKS_DIR = $(WEBCORE_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+WEBCORE_FRAMEWORKS_DIR_iphoneos = $(NORMAL_WEBCORE_FRAMEWORKS_DIR_iphoneos);
+WEBCORE_FRAMEWORKS_DIR_iphonesimulator = $(WEBCORE_FRAMEWORKS_DIR_iphoneos);
+WEBCORE_FRAMEWORKS_DIR_macosx = $(WEBCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WEBCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_ = $(WEBCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO);
+WEBCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO = $(NORMAL_WEBCORE_FRAMEWORKS_DIR);
+WEBCORE_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
+NORMAL_PRODUCTION_FRAMEWORKS_DIR = $(NORMAL_PRODUCTION_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+NORMAL_PRODUCTION_FRAMEWORKS_DIR_iphoneos = $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+NORMAL_PRODUCTION_FRAMEWORKS_DIR_iphonesimulator = $(PRODUCTION_FRAMEWORKS_DIR_iphoneos);
+NORMAL_PRODUCTION_FRAMEWORKS_DIR_macosx = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks;
+
 PRODUCTION_FRAMEWORKS_DIR = $(PRODUCTION_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
-PRODUCTION_FRAMEWORKS_DIR_iphoneos = $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+PRODUCTION_FRAMEWORKS_DIR_iphoneos = $(NORMAL_PRODUCTION_FRAMEWORKS_DIR_iphoneos);
 PRODUCTION_FRAMEWORKS_DIR_iphonesimulator = $(PRODUCTION_FRAMEWORKS_DIR_iphoneos);
-PRODUCTION_FRAMEWORKS_DIR_macosx = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks;
+PRODUCTION_FRAMEWORKS_DIR_macosx = $(PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_ = $(PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO);
+PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO = $(NORMAL_PRODUCTION_FRAMEWORKS_DIR_macosx);
+PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
 
 WEBKIT2_LDFLAGS = $(WEBKIT2_LDFLAGS_$(TARGET_MAC_OS_X_VERSION_MAJOR));
 WEBKIT2_LDFLAGS_1060 = -allowable_client WebKit2
index f09d319d1632bfe3d3fb3bfd3f74f79c5bdc0ee9..acf50f4ef61f32c7b9cb3a15362936c2fbf8e15b 100644 (file)
@@ -1,3 +1,24 @@
+2012-01-25  Mark Rowe  <mrowe@apple.com>
+
+        Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
+
+        <rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
+
+        Reviewed by David Kilzer.
+
+        * Configurations/WebKit.xcconfig: Define NORMAL_WEBKIT_FRAMEWORKS_DIR, which contains
+        the path where WebKit is normally installed. Update WEBKIT_FRAMEWORKS_DIR to point to
+        the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
+        NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
+        are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
+        directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
+        based on the normal framework location. This prevents an incorrect install name from being
+        used when installing in to the staged frameworks directory. Look for our other frameworks
+        in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
+        WEBCORE_PRIVATE_HEADERS_DIR to find WebCore at the top level of the staged frameworks
+        directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
+        WebKit.framework.
+
 2012-01-25  Eric Seidel  <eric@webkit.org>
 
         HTMLIsIndexElement should not expose HTMLInputElement properties
index 364aed9a916814a1db369bf9b5c4883fea8057b0..7e0ac29798c8376590fcc3d65279affea7213515 100644 (file)
@@ -44,14 +44,18 @@ FRAMEWORK_SEARCH_PATHS_iphoneos_Debug = $(BUILT_PRODUCTS_DIR) $(PRODUCTION_FRAME
 FRAMEWORK_SEARCH_PATHS_iphoneos_Release = $(FRAMEWORK_SEARCH_PATHS_iphoneos_Debug);
 FRAMEWORK_SEARCH_PATHS_iphoneos_Production = $(PRODUCTION_FRAMEWORKS_DIR);
 FRAMEWORK_SEARCH_PATHS_iphonesimulator = $(FRAMEWORK_SEARCH_PATHS_iphoneos_$(CONFIGURATION));
-FRAMEWORK_SEARCH_PATHS_macosx = $(UMBRELLA_FRAMEWORKS_DIR) $(SYSTEM_LIBRARY_DIR)/Frameworks/ApplicationServices.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/Carbon.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/Quartz.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks $(FRAMEWORK_SEARCH_PATHS);
+FRAMEWORK_SEARCH_PATHS_macosx = $(STAGED_FRAMEWORKS_SEARCH_PATH) $(UMBRELLA_FRAMEWORKS_DIR) $(SYSTEM_LIBRARY_DIR)/Frameworks/ApplicationServices.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/Carbon.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/Quartz.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/Frameworks/CoreServices.framework/Frameworks $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks $(FRAMEWORK_SEARCH_PATHS);
+
+STAGED_FRAMEWORKS_SEARCH_PATH = $(STAGED_FRAMEWORKS_SEARCH_PATH_$(USE_STAGING_INSTALL_PATH));
+STAGED_FRAMEWORKS_SEARCH_PATH_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 
 GCC_PREFIX_HEADER = mac/WebKitPrefix.h;
 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(FEATURE_DEFINES) FRAMEWORK_NAME=WebKit WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST $(GCC_PREPROCESSOR_DEFINITIONS);
 HEADER_SEARCH_PATHS = $(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders $(WEBCORE_PRIVATE_HEADERS_DIR)/icu $(WEBKITSYSTEMINTERFACE_STATIC_LIBRARY_HEADERS_FOLDER_PATH) "${BUILT_PRODUCTS_DIR}/DerivedSources/WebKit" $(HEADER_SEARCH_PATHS);
 INFOPLIST_FILE = mac/Info.plist;
 INSTALL_PATH = $(INSTALL_PATH_$(REAL_PLATFORM_NAME));
-INSTALL_PATH_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks;
+INSTALL_PATH_macosx = $(WEBKIT_FRAMEWORKS_DIR);
+DYLIB_INSTALL_NAME_BASE = $(NORMAL_WEBKIT_FRAMEWORKS_DIR);
 INSTALLHDRS_COPY_PHASE = YES;
 INSTALLHDRS_SCRIPT_PHASE = YES;
 PRODUCT_NAME = WebKit;
@@ -65,10 +69,32 @@ OTHER_LDFLAGS_macosx_1070 = -Xlinker -objc_gc_compaction;
 OTHER_LDFLAGS_macosx_1080 = $(OTHER_LDFLAGS_macosx_1070);
 OTHER_LDFLAGS_macosx_1090 = $(OTHER_LDFLAGS_macosx_1070);
 
+NORMAL_WEBKIT_FRAMEWORKS_DIR = $(NORMAL_WEBKIT_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+NORMAL_WEBKIT_FRAMEWORKS_DIR_iphoneos = $(PRODUCTION_FRAMEWORKS_DIR);
+NORMAL_WEBKIT_FRAMEWORKS_DIR_iphonesimulator = $(PRODUCTION_FRAMEWORKS_DIR);
+NORMAL_WEBKIT_FRAMEWORKS_DIR_macosx = $(SYSTEM_LIBRARY_DIR)/Frameworks;
+
+WEBKIT_FRAMEWORKS_DIR = $(WEBKIT_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+WEBKIT_FRAMEWORKS_DIR_iphoneos = $(NORMAL_WEBKIT_FRAMEWORKS_DIR_iphoneos);
+WEBKIT_FRAMEWORKS_DIR_iphonesimulator = $(WEBKIT_FRAMEWORKS_DIR_iphoneos);
+WEBKIT_FRAMEWORKS_DIR_macosx = $(WEBKIT_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WEBKIT_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_ = $(WEBKIT_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO);
+WEBKIT_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO = $(NORMAL_WEBKIT_FRAMEWORKS_DIR);
+WEBKIT_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
+NORMAL_PRODUCTION_FRAMEWORKS_DIR = $(NORMAL_PRODUCTION_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+NORMAL_PRODUCTION_FRAMEWORKS_DIR_iphoneos = $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+NORMAL_PRODUCTION_FRAMEWORKS_DIR_iphonesimulator = $(PRODUCTION_FRAMEWORKS_DIR_iphoneos);
+NORMAL_PRODUCTION_FRAMEWORKS_DIR_macosx = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks;
+
 PRODUCTION_FRAMEWORKS_DIR = $(PRODUCTION_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
-PRODUCTION_FRAMEWORKS_DIR_iphoneos = $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+PRODUCTION_FRAMEWORKS_DIR_iphoneos = $(NORMAL_PRODUCTION_FRAMEWORKS_DIR_iphoneos);
 PRODUCTION_FRAMEWORKS_DIR_iphonesimulator = $(PRODUCTION_FRAMEWORKS_DIR_iphoneos);
-PRODUCTION_FRAMEWORKS_DIR_macosx = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks;
+PRODUCTION_FRAMEWORKS_DIR_macosx = $(PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_ = $(PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO);
+PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO = $(NORMAL_PRODUCTION_FRAMEWORKS_DIR_macosx);
+PRODUCTION_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
 
 PRODUCTION_ROOT = $(PRODUCTION_ROOT_$(REAL_PLATORM_NAME));
 PRODUCTION_ROOT_iphoneos = $(SDKROOT);
@@ -81,7 +107,10 @@ WEBCORE_PRIVATE_HEADERS_DIR_Debug = $(WEBCORE_PRIVATE_HEADERS_engineering);
 WEBCORE_PRIVATE_HEADERS_DIR_Production = $(WEBCORE_PRIVATE_HEADERS_DIR_Production_$(REAL_PLATFORM_NAME));
 WEBCORE_PRIVATE_HEADERS_DIR_Production_iphoneos = $(PRODUCTION_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders;
 WEBCORE_PRIVATE_HEADERS_DIR_Production_iphonesimulator = $(WEBCORE_PRIVATE_HEADERS_DIR_Production_iphoneos);
-WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx = $(UMBRELLA_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders;
+WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx = $(WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx_USE_STAGING_INSTALL_PATH_ = $(WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx_USE_STAGING_INSTALL_PATH_NO);
+WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx_USE_STAGING_INSTALL_PATH_NO = $(UMBRELLA_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders;
+WEBCORE_PRIVATE_HEADERS_DIR_Production_macosx_USE_STAGING_INSTALL_PATH_YES = $(PRODUCTION_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders;
 WEBCORE_PRIVATE_HEADERS_engineering = $(BUILT_PRODUCTS_DIR)/WebCore.framework/PrivateHeaders;
 
 WEBKITSYSTEMINTERFACE_STATIC_LIBRARY_HEADERS_FOLDER_PATH = $(WEBKITSYSTEMINTERFACE_STATIC_LIBRARY_HEADERS_FOLDER_PATH_$(CONFIGURATION));
index 17f5433496f8908bcbdb669bd64dcff507851387..2d6fe9fcaf1dc1e6e52e91263d67fcffff01ed12 100644 (file)
@@ -1,3 +1,23 @@
+2012-01-25  Mark Rowe  <mrowe@apple.com>
+
+        Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
+
+        <rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
+
+        Reviewed by David Kilzer.
+
+        * Configurations/BaseTarget.xcconfig: Define NORMAL_WEBKIT2_FRAMEWORKS_DIR, which contains
+        the path where WebKit is normally installed. Update WEBKIT2_FRAMEWORKS_DIR to point to
+        the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
+        UMBRELLA_FRAMEWORKS_DIR so we can find WebCore at the top level of the staged frameworks
+        directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
+        WebKit.framework.
+        * Configurations/PluginProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
+        * Configurations/WebKit2.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
+        Always set the framework's install name based on the normal framework location. This prevents
+        an incorrect install name from being used when installing in to the staged frameworks directory.
+        * Configurations/WebProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
+
 2012-01-25  No'am Rosenthal  <noam.rosenthal@nokia.com>
 
         [WK2][Qt] REGRESSION: Pages with transform animations sometimes omit some of the layers since r105413
index b7d0798fa61fab88aa53e098a97ac3d7e16e1772..a7a4705d83cf1266ba1d5a583541dd7afb62254b 100644 (file)
@@ -29,10 +29,22 @@ GCC_PREFIX_HEADER = WebKit2Prefix.h;
 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(FEATURE_DEFINES) FRAMEWORK_NAME=WebKit2
 HEADER_SEARCH_PATHS = $(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders $(WEBCORE_PRIVATE_HEADERS_DIR)/icu $(BUILT_PRODUCTS_DIR)/usr/local/include $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2 $(HEADER_SEARCH_PATHS);
 
+NORMAL_WEBKIT2_FRAMEWORKS_DIR = $(NORMAL_WEBKIT2_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+NORMAL_WEBKIT2_FRAMEWORKS_DIR_macosx = $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+
+WEBKIT2_FRAMEWORKS_DIR = $(WEBKIT2_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME));
+WEBKIT2_FRAMEWORKS_DIR_macosx = $(WEBKIT2_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+WEBKIT2_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_ = $(WEBKIT2_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO);
+WEBKIT2_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_NO = $(NORMAL_WEBKIT2_FRAMEWORKS_DIR);
+WEBKIT2_FRAMEWORKS_DIR_macosx_USE_STAGING_INSTALL_PATH_YES = $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
+
 UMBRELLA_FRAMEWORKS_DIR = $(UMBRELLA_FRAMEWORKS_DIR_$(REAL_PLATFORM_NAME)_$(CONFIGURATION));
 UMBRELLA_FRAMEWORKS_DIR_macosx_Release = $(UMBRELLA_FRAMEWORKS_DIR_engineering);
 UMBRELLA_FRAMEWORKS_DIR_macosx_Debug = $(UMBRELLA_FRAMEWORKS_DIR_engineering);
-UMBRELLA_FRAMEWORKS_DIR_macosx_Production = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks;
+UMBRELLA_FRAMEWORKS_DIR_macosx_Production = $(UMBRELLA_FRAMEWORKS_DIR_macosx_Production_USE_STAGING_INSTALL_PATH_$(USE_STAGING_INSTALL_PATH));
+UMBRELLA_FRAMEWORKS_DIR_macosx_Production_USE_STAGING_INSTALL_PATH_ = $(UMBRELLA_FRAMEWORKS_DIR_macosx_Production_USE_STAGING_INSTALL_PATH_NO);
+UMBRELLA_FRAMEWORKS_DIR_macosx_Production_USE_STAGING_INSTALL_PATH_NO = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks;
+UMBRELLA_FRAMEWORKS_DIR_macosx_Production_USE_STAGING_INSTALL_PATH_YES = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari;
 UMBRELLA_FRAMEWORKS_DIR_engineering = $(BUILT_PRODUCTS_DIR);
 
 WEBCORE_PRIVATE_HEADERS_DIR = $(UMBRELLA_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders;
index 14d29fd97df4078d2cfb0a0048678cb4b151eea2..0c89a420f4664b1f5d2178fda725def66bcdd150 100644 (file)
@@ -26,4 +26,4 @@
 GCC_ENABLE_OBJC_GC = NO;
 PRODUCT_NAME = PluginProcess;
 INFOPLIST_FILE = PluginProcess/Info.plist;
-INSTALL_PATH = $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks/WebKit2.framework;
+INSTALL_PATH = $(WEBKIT2_FRAMEWORKS_DIR)/WebKit2.framework;
index 57794e1ef40456242fc6ffa6724d37954daca6fb..14b5d251609f9baeb8bb14971edf611b83e58c52 100644 (file)
@@ -26,8 +26,8 @@
 PRODUCT_NAME = WebKit2;
 INFOPLIST_FILE = Info.plist;
 
-// The framework location specified in mac/MainMac.cpp needs to be kept in sync with the install path.
-INSTALL_PATH = $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
+INSTALL_PATH = $(WEBKIT2_FRAMEWORKS_DIR);
+DYLIB_INSTALL_NAME_BASE = $(NORMAL_WEBKIT2_FRAMEWORKS_DIR);
 
 OTHER_LDFLAGS = $(OTHER_LDFLAGS_$(REAL_PLATFORM_NAME)) $(OTHER_LDFLAGS);
 OTHER_LDFLAGS_macosx = $(OTHER_LDFLAGS_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
index ceae1212d8414a2b9b8182d4811dc94cd6ab2d2a..df6dd8ef6bf433d807a16156c692d7614231a548 100644 (file)
@@ -26,7 +26,7 @@
 GCC_ENABLE_OBJC_GC = NO;
 PRODUCT_NAME = WebProcess;
 INFOPLIST_FILE = WebProcess/Info.plist;
-INSTALL_PATH = $(SYSTEM_LIBRARY_DIR)/PrivateFrameworks/WebKit2.framework;
+INSTALL_PATH = $(WEBKIT2_FRAMEWORKS_DIR)/WebKit2.framework;
 
 APP_ICON = $(APP_ICON_$(CONFIGURATION));
 APP_ICON_Debug = WebKit.icns;