summaryrefslogtreecommitdiffstats
path: root/chrome/chrome_exe.gypi
diff options
context:
space:
mode:
authormark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-24 21:54:59 +0000
committermark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-24 21:54:59 +0000
commite9a193823eca97612947a3a69589267da5ab0b2e (patch)
tree3fef86d8a64855bf7799ef8d5bd56fb371e2ddee /chrome/chrome_exe.gypi
parentd35c7fc6935bb826efd6ebb98bdb8f8e77ff251b (diff)
downloadchromium_src-e9a193823eca97612947a3a69589267da5ab0b2e.zip
chromium_src-e9a193823eca97612947a3a69589267da5ab0b2e.tar.gz
chromium_src-e9a193823eca97612947a3a69589267da5ab0b2e.tar.bz2
Don't build the main executable binaries as Objective-C.
The operative portion of this change simply renames chrome/app/chrome_exe_main_mac.mm to chrome/app/chrome_exe_main_mac.cc. The main executables never used any Objective-C anyway. I named the files with .mm a long time ago because at the time it meant that I didn't need to add a separate GYP 'exclude' rule to keep other platforms from seeing the file. That was before we added the rules to automatically exclude files based on platform suffix like _mac. This change also adds a "verify" step to the targets that build our main executables. The verify step will cause a build failure if this ever regresses. This works around a bug in 10.5 CFBundlePreflightExecutable, which crashes when called in a process whose main executable has slid due to PIE when the main executable also contains an __OBJC,__image_info section. We enabled PIE at r91243. BUG=88697 TEST=No more crashes inside CFBundlePreflightExecutable (on our call from webkit::npapi::PluginLib::ReadWebPluginInfo) on 10.5 Review URL: http://codereview.chromium.org/7726007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98122 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/chrome_exe.gypi')
-rw-r--r--chrome/chrome_exe.gypi10
1 files changed, 9 insertions, 1 deletions
diff --git a/chrome/chrome_exe.gypi b/chrome/chrome_exe.gypi
index 493ea77..aa4c491 100644
--- a/chrome/chrome_exe.gypi
+++ b/chrome/chrome_exe.gypi
@@ -16,7 +16,7 @@
'app/breakpad_win.cc',
'app/breakpad_win.h',
'app/chrome_exe_main_gtk.cc',
- 'app/chrome_exe_main_mac.mm',
+ 'app/chrome_exe_main_mac.cc',
'app/chrome_exe_main_win.cc',
'app/chrome_exe_resource.h',
'app/client_util.cc',
@@ -399,6 +399,14 @@
'<(mac_product_name)',
],
},
+ {
+ # Make sure there isn't any Objective-C in the browser app's
+ # executable.
+ 'postbuild_name': 'Verify No Objective-C',
+ 'action': [
+ 'tools/build/mac/verify_no_objc.sh',
+ ],
+ },
], # postbuilds
}],
['OS=="linux"', {