mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-02-03 04:27:43 +01:00
Mac: Fix ninja build (issue #922)
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1192 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
parent
d19bb1d2b5
commit
f0cdfd8dd2
114
cef.gyp
114
cef.gyp
@ -110,27 +110,23 @@
|
||||
'cefclient_helper_app',
|
||||
'interpose_dependency_shim',
|
||||
],
|
||||
'variables': {
|
||||
'PRODUCT_NAME': 'cefclient',
|
||||
},
|
||||
'copies': [
|
||||
{
|
||||
# Add library dependencies to the bundle.
|
||||
'destination': '<(PRODUCT_DIR)/cefclient.app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/',
|
||||
'destination': '<(PRODUCT_DIR)/<(PRODUCT_NAME).app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/',
|
||||
'files': [
|
||||
'<(PRODUCT_DIR)/libcef.dylib',
|
||||
'<(PRODUCT_DIR)/ffmpegsumo.so',
|
||||
],
|
||||
},
|
||||
{
|
||||
# Add localized resources to the bundle.
|
||||
'destination': '<(PRODUCT_DIR)/cefclient.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/',
|
||||
'files': [
|
||||
'<!@pymod_do_main(repack_locales -o -g <(grit_out_dir) -s <(SHARED_INTERMEDIATE_DIR) -x <(INTERMEDIATE_DIR) <(locales))',
|
||||
],
|
||||
},
|
||||
{
|
||||
# Add the helper app.
|
||||
'destination': '<(PRODUCT_DIR)/cefclient.app/Contents/Frameworks',
|
||||
'destination': '<(PRODUCT_DIR)/<(PRODUCT_NAME).app/Contents/Frameworks',
|
||||
'files': [
|
||||
'<(PRODUCT_DIR)/cefclient Helper.app',
|
||||
'<(PRODUCT_DIR)/<(PRODUCT_NAME) Helper.app',
|
||||
'<(PRODUCT_DIR)/libplugin_carbon_interpose.dylib',
|
||||
],
|
||||
},
|
||||
@ -146,13 +142,31 @@
|
||||
'${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy WebCore Resources',
|
||||
'action': [
|
||||
'cp',
|
||||
'-Rf',
|
||||
'${BUILT_PRODUCTS_DIR}/../../third_party/WebKit/Source/WebCore/Resources/',
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy locale Resources',
|
||||
'action': [
|
||||
'cp',
|
||||
'-Rf',
|
||||
'${BUILT_PRODUCTS_DIR}/locales/',
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy cef.pak File',
|
||||
'action': [
|
||||
'cp',
|
||||
'-f',
|
||||
'${BUILT_PRODUCTS_DIR}/cef.pak',
|
||||
'${BUILT_PRODUCTS_DIR}/cefclient.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/cef.pak'
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/cef.pak'
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -161,16 +175,7 @@
|
||||
'cp',
|
||||
'-f',
|
||||
'${BUILT_PRODUCTS_DIR}/devtools_resources.pak',
|
||||
'${BUILT_PRODUCTS_DIR}/cefclient.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/devtools_resources.pak'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy WebCore Resources',
|
||||
'action': [
|
||||
'cp',
|
||||
'-Rf',
|
||||
'${BUILT_PRODUCTS_DIR}/../../third_party/WebKit/Source/WebCore/Resources/',
|
||||
'${BUILT_PRODUCTS_DIR}/cefclient.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/'
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/devtools_resources.pak'
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -308,30 +313,26 @@
|
||||
'dependencies': [
|
||||
'cef_unittests_helper_app',
|
||||
],
|
||||
'variables': {
|
||||
'PRODUCT_NAME': 'cef_unittests',
|
||||
},
|
||||
'run_as': {
|
||||
'action': ['${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/MacOS/${PRODUCT_NAME}'],
|
||||
},
|
||||
'copies': [
|
||||
{
|
||||
# Add library dependencies to the bundle.
|
||||
'destination': '<(PRODUCT_DIR)/cef_unittests.app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/',
|
||||
'destination': '<(PRODUCT_DIR)/<(PRODUCT_NAME).app/Contents/Frameworks/Chromium Embedded Framework.framework/Libraries/',
|
||||
'files': [
|
||||
'<(PRODUCT_DIR)/libcef.dylib',
|
||||
'<(PRODUCT_DIR)/ffmpegsumo.so',
|
||||
],
|
||||
},
|
||||
{
|
||||
# Add localized resources to the bundle.
|
||||
'destination': '<(PRODUCT_DIR)/cef_unittests.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/',
|
||||
'files': [
|
||||
'<!@pymod_do_main(repack_locales -o -g <(grit_out_dir) -s <(SHARED_INTERMEDIATE_DIR) -x <(INTERMEDIATE_DIR) <(locales))',
|
||||
],
|
||||
},
|
||||
{
|
||||
# Add the helper app.
|
||||
'destination': '<(PRODUCT_DIR)/cef_unittests.app/Contents/Frameworks',
|
||||
'destination': '<(PRODUCT_DIR)/<(PRODUCT_NAME).app/Contents/Frameworks',
|
||||
'files': [
|
||||
'<(PRODUCT_DIR)/cef_unittests Helper.app',
|
||||
'<(PRODUCT_DIR)/<(PRODUCT_NAME) Helper.app',
|
||||
],
|
||||
},
|
||||
],
|
||||
@ -346,13 +347,31 @@
|
||||
'${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy WebCore Resources',
|
||||
'action': [
|
||||
'cp',
|
||||
'-Rf',
|
||||
'${BUILT_PRODUCTS_DIR}/../../third_party/WebKit/Source/WebCore/Resources/',
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy locale Resources',
|
||||
'action': [
|
||||
'cp',
|
||||
'-Rf',
|
||||
'${BUILT_PRODUCTS_DIR}/locales/',
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy cef.pak File',
|
||||
'action': [
|
||||
'cp',
|
||||
'-f',
|
||||
'${BUILT_PRODUCTS_DIR}/cef.pak',
|
||||
'${BUILT_PRODUCTS_DIR}/cef_unittests.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/cef.pak'
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/cef.pak'
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -361,16 +380,7 @@
|
||||
'cp',
|
||||
'-f',
|
||||
'${BUILT_PRODUCTS_DIR}/devtools_resources.pak',
|
||||
'${BUILT_PRODUCTS_DIR}/cef_unittests.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/devtools_resources.pak'
|
||||
],
|
||||
},
|
||||
{
|
||||
'postbuild_name': 'Copy WebCore Resources',
|
||||
'action': [
|
||||
'cp',
|
||||
'-Rf',
|
||||
'${BUILT_PRODUCTS_DIR}/../../third_party/WebKit/Source/WebCore/Resources/',
|
||||
'${BUILT_PRODUCTS_DIR}/cef_unittests.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/'
|
||||
'${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/Contents/Frameworks/Chromium Embedded Framework.framework/Resources/devtools_resources.pak'
|
||||
],
|
||||
},
|
||||
{
|
||||
@ -460,7 +470,9 @@
|
||||
'<@(libcef_sources_common)',
|
||||
],
|
||||
'xcode_settings': {
|
||||
# Default path that will be changed by install_name_tool in dependent targets.
|
||||
'INSTALL_PATH': '@executable_path',
|
||||
'DYLIB_INSTALL_NAME_BASE': '@executable_path',
|
||||
# The libcef_static target contains ObjC categories. Passing the -ObjC flag
|
||||
# is necessary to properly load them and avoid a "selector not recognized"
|
||||
# runtime error. See http://developer.apple.com/library/mac/#qa/qa1490/_index.html
|
||||
@ -572,6 +584,14 @@
|
||||
'variables': {
|
||||
'repack_locales_cmd': ['python', 'tools/repack_locales.py'],
|
||||
},
|
||||
'copies': [
|
||||
{
|
||||
'destination': '<(PRODUCT_DIR)/locales',
|
||||
'files': [
|
||||
'<!@pymod_do_main(repack_locales -o -g <(grit_out_dir) -s <(SHARED_INTERMEDIATE_DIR) -x <(INTERMEDIATE_DIR) <(locales))'
|
||||
],
|
||||
},
|
||||
],
|
||||
'conditions': [
|
||||
['OS=="win"', {
|
||||
'actions': [
|
||||
@ -624,16 +644,6 @@
|
||||
},
|
||||
],
|
||||
}],
|
||||
['OS != "mac"', {
|
||||
'copies': [
|
||||
{
|
||||
'destination': '<(PRODUCT_DIR)/locales',
|
||||
'files': [
|
||||
'<!@pymod_do_main(repack_locales -o -g <(grit_out_dir) -s <(SHARED_INTERMEDIATE_DIR) -x <(INTERMEDIATE_DIR) <(locales))'
|
||||
],
|
||||
},
|
||||
],
|
||||
}],
|
||||
],
|
||||
},
|
||||
{
|
||||
|
@ -22,7 +22,7 @@ patches = [
|
||||
'path': '../third_party/zlib/',
|
||||
},
|
||||
{
|
||||
# http://code.google.com/p/gyp/issues/detail?id=443
|
||||
# http://code.google.com/p/chromiumembedded/issues/detail?id=443
|
||||
'name': 'message_loop_443',
|
||||
'path': '../base/',
|
||||
},
|
||||
@ -32,8 +32,7 @@ patches = [
|
||||
'path': '../third_party/WebKit/Source/',
|
||||
},
|
||||
{
|
||||
# https://code.google.com/p/chromiumembedded/issues/detail?id=505
|
||||
# https://code.google.com/p/chromiumembedded/issues/detail?id=899
|
||||
# http://code.google.com/p/chromiumembedded/issues/detail?id=899
|
||||
'name': 'webkit_features',
|
||||
'path': '../third_party/WebKit/Source/WebKit/chromium/',
|
||||
},
|
||||
@ -42,6 +41,11 @@ patches = [
|
||||
'name': 'webkit_933',
|
||||
'path': '../third_party/WebKit/Source/WebKit/chromium/src/',
|
||||
},
|
||||
{
|
||||
# http://code.google.com/p/gyp/issues/detail?id=331
|
||||
'name': 'gyp_331',
|
||||
'path': '../tools/gyp/pylib/',
|
||||
},
|
||||
{
|
||||
# http://code.google.com/p/chromiumembedded/issues/detail?id=364
|
||||
'name': 'spi_webcore_364',
|
||||
|
22
patch/patches/gyp_331.patch
Normal file
22
patch/patches/gyp_331.patch
Normal file
@ -0,0 +1,22 @@
|
||||
Index: gyp/generator/ninja.py
|
||||
===================================================================
|
||||
--- gyp/generator/ninja.py (revision 1602)
|
||||
+++ gyp/generator/ninja.py (working copy)
|
||||
@@ -662,7 +662,16 @@
|
||||
for path in copy['files']:
|
||||
# Normalize the path so trailing slashes don't confuse us.
|
||||
path = os.path.normpath(path)
|
||||
- basename = os.path.split(path)[1]
|
||||
+ (parent_path, basename) = os.path.split(path)
|
||||
+
|
||||
+ # Xcode uses .lproj directories for localized resources. Add a special
|
||||
+ # case to maintain the localization directory component if present.
|
||||
+ if parent_path != '':
|
||||
+ parent_basename = os.path.basename(parent_path)
|
||||
+ (parent_root, parent_ext) = os.path.splitext(parent_basename)
|
||||
+ if parent_ext == '.lproj':
|
||||
+ basename = os.path.join(parent_basename, basename)
|
||||
+
|
||||
src = self.GypPathToNinja(path, env)
|
||||
dst = self.GypPathToNinja(os.path.join(copy['destination'], basename),
|
||||
env)
|
Loading…
x
Reference in New Issue
Block a user