diff options
author | mark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-24 21:54:59 +0000 |
---|---|---|
committer | mark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-24 21:54:59 +0000 |
commit | e9a193823eca97612947a3a69589267da5ab0b2e (patch) | |
tree | 3fef86d8a64855bf7799ef8d5bd56fb371e2ddee /chrome/chrome_exe.gypi | |
parent | d35c7fc6935bb826efd6ebb98bdb8f8e77ff251b (diff) | |
download | chromium_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.gypi | 10 |
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"', { |