diff options
author | steveblock@chromium.org <steveblock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-18 17:11:28 +0000 |
---|---|---|
committer | steveblock@chromium.org <steveblock@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-18 17:11:28 +0000 |
commit | d911354e05fb4353c722511da27d09e133efd70e (patch) | |
tree | 9943b28731df1ad3e7ce5ee62b4b3c85f6680062 | |
parent | 22650d2a7b606c0a97709949870324d026d9ebc1 (diff) | |
download | chromium_src-d911354e05fb4353c722511da27d09e133efd70e.zip chromium_src-d911354e05fb4353c722511da27d09e133efd70e.tar.gz chromium_src-d911354e05fb4353c722511da27d09e133efd70e.tar.bz2 |
Clean up gyp settings for libjpeg
The gyp settings for libjpeg currently have a number of problems ...
- Settings for using the system libjpeg are replicated in the gyp files for both libjpeg and libjpeg_turbo.
- The default setting for use_system_libjpeg is different depending on whether libjpeg or libjpeg_turbo is in use. This is unintuitive, as libjpeg_turbo is a drop-in replacement for libjpeg.
This patch improves the situation ...
- Improve documentation about the interaction between use_system_libjpeg and use_libjpeg_turbo.
- Use the libjpeg gyp file whenever use_system_libjpeg==1. This means that the settings for using the system libjpeg are only needed here. (A later patch will remove them from libjpeg_turbo's gyp file). It also means that the libjpeg_turbo repository can be excluded when use_system_libjpeg==1.
- Move all settings concerned with use_system_libjpeg to the libjpeg gyp file.
Note that with this change, we lose the OS-specific defaults for use_system_libjpeg when use_libjpeg_turbo==0. These defaults are currently not used, as use_libjpeg_turbo==1 always.
Review URL: https://chromiumcodereview.appspot.com/10696082
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147254 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | build/common.gypi | 13 | ||||
-rw-r--r-- | third_party/iccjpeg/iccjpeg.gyp | 7 | ||||
-rw-r--r-- | third_party/libjpeg/libjpeg.gyp | 19 | ||||
-rw-r--r-- | ui/ui.gyp | 5 |
4 files changed, 18 insertions, 26 deletions
diff --git a/build/common.gypi b/build/common.gypi index 219f1da..cd2e4bf1a 100644 --- a/build/common.gypi +++ b/build/common.gypi @@ -183,6 +183,10 @@ # Use libjpeg-turbo as the JPEG codec used by Chromium. 'use_libjpeg_turbo%': 1, + # Use system libjpeg. Note that the system's libjepg will be used even if + # use_libjpeg_turbo is set. + 'use_system_libjpeg%': 0, + # Variable 'component' is for cases where we would like to build some # components as dynamic shared libraries but still need variable # 'library' for static libraries. @@ -1069,11 +1073,12 @@ # Set the relative path from this file to the GYP file of the JPEG # library used by Chromium. - ['use_libjpeg_turbo==1', { - 'libjpeg_gyp_path': '../third_party/libjpeg_turbo/libjpeg.gyp', - }, { + ['use_system_libjpeg==1 or use_libjpeg_turbo==0', { + # Configuration for using the system libjeg is here. 'libjpeg_gyp_path': '../third_party/libjpeg/libjpeg.gyp', - }], # use_libjpeg_turbo==1 + }, { + 'libjpeg_gyp_path': '../third_party/libjpeg_turbo/libjpeg.gyp', + }], # Options controlling the use of GConf (the classic GNOME configuration # system) and GIO, which contains GSettings (the new GNOME config system). diff --git a/third_party/iccjpeg/iccjpeg.gyp b/third_party/iccjpeg/iccjpeg.gyp index 25d25ed..7801148 100644 --- a/third_party/iccjpeg/iccjpeg.gyp +++ b/third_party/iccjpeg/iccjpeg.gyp @@ -14,13 +14,6 @@ 'iccjpeg.c', 'iccjpeg.h', ], - 'conditions': [ - ['os_bsd==1 and use_system_libjpeg==1', { - 'include_dirs': [ - '/usr/local/include', - ], - }], - ], 'direct_dependent_settings': { 'include_dirs': [ '.', diff --git a/third_party/libjpeg/libjpeg.gyp b/third_party/libjpeg/libjpeg.gyp index 12cc882..8f0dac8 100644 --- a/third_party/libjpeg/libjpeg.gyp +++ b/third_party/libjpeg/libjpeg.gyp @@ -3,16 +3,8 @@ # found in the LICENSE file. { - 'variables': { - 'conditions': [ - [ 'os_posix == 1 and OS != "mac"', { - # Link to system .so since we already use it due to GTK. - 'use_system_libjpeg%': 1, - }, { # os_posix != 1 or OS == "mac" - 'use_system_libjpeg%': 0, - }], - ], - }, + # This file handles building both with our local libjpeg and with the system + # libjpeg. 'conditions': [ ['use_system_libjpeg==0', { 'targets': [ @@ -94,6 +86,13 @@ 'defines': [ 'USE_SYSTEM_LIBJPEG', ], + 'conditions': [ + ['os_bsd==1', { + 'include_dirs': [ + '/usr/local/include', + ], + }], + ], }, 'link_settings': { 'libraries': [ @@ -704,11 +704,6 @@ '-ldl', ], }], - ['os_bsd==1 and use_system_libjpeg==1', { - 'include_dirs': [ - '/usr/local/include', - ], - }], ['inside_chromium_build==0', { 'dependencies': [ '<(DEPTH)/webkit/support/setup_third_party.gyp:third_party_headers', |