chromium-src-build/linux/unbundle
Paweł Hajdan, Jr 34b0e85c26 Fix build with system libvpx
BUG=none
R=thestig@chromium.org

Review URL: https://codereview.chromium.org/1083273004

Cr-Original-Commit-Position: refs/heads/master@{#326177}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: eb840561c3a6484462dec1046ae49fe9613a6f78
2015-04-21 23:51:45 +00:00
..
README Linux: add script to remove bundled libraries. 2013-08-21 20:17:42 +00:00
expat.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
ffmpeg.gyp Remove use_system_ffmpeg-related logic from media and other mainline gyp files. 2013-05-07 16:59:00 +00:00
flac.gyp Add build/linux/unbundle files for projects in separate repos. 2013-05-02 16:30:00 +00:00
harfbuzz.gyp Fix build with system harfbuzz 2014-06-05 14:25:15 +00:00
icu.gyp Linux: switch to using pkg-config for unbundled ICU 2013-10-16 21:32:10 +00:00
jsoncpp.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libXNVCtrl.gyp add system libXNVCtrl library support in linux unbundle 2014-02-11 20:53:42 +00:00
libevent.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libjpeg.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libpng.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libusb.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libvpx.gyp Fix build with system libvpx 2015-04-21 23:51:45 +00:00
libwebp.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libxml.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
libxslt.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
opus.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
protobuf.gyp Create build/linux/unbundle file for protobuf 2014-08-30 05:24:06 +00:00
re2.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
remove_bundled_libraries.py Require more precise exclusions in remove_bundled_libraries.py 2014-08-12 23:01:11 +00:00
replace_gyp_files.py Remove use_system_openssl. 2015-01-21 20:53:45 +00:00
snappy.gyp Add support for system snappy. 2013-05-03 21:43:02 +00:00
speex.gyp Add build/linux/unbundle files for projects in separate repos. 2013-05-02 16:30:00 +00:00
sqlite.gyp Extract use_system_foo logic out of gyp files, patch 2 2013-04-26 00:20:29 +00:00
v8.gyp Fix build with system V8. 2013-07-26 00:38:14 +00:00
zlib.gyp Miscellaneous fixes for system libraries files: 2013-05-08 23:31:45 +00:00

README

This directory contains files that make it possible to use system libraries.

For more info please read the following:

 - https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries
 - https://wiki.gentoo.org/wiki/Why_not_bundle_dependencies
 - http://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles

For more Chromium-specific context please read
http://spot.livejournal.com/312320.html .

This directory is provided in the source tree to follow above guidelines.
It is a compromise solution which takes into account Chromium developers
who want to avoid the perceived burden of more conditional code in gyp,
and expectations of Open Source community, where using system-provided
libraries is the norm.

Usage:

1. remove_bundled_libraries.py <preserved-directories>

   For example: remove_bundled_libraries.py third_party/mesa

   The script scans sources looking for third_party directories.
   Everything that is not explicitly preserved is removed (except for
   gyp files), and the script fails if any directory passed on command
   line does not exist (to ensure list is kept up to date).

   This is intended to be used on sources extracted from a tarball,
   not a repository.

   NOTE: by default this will not remove anything (for safety). Pass
   --do-remove flag to actually remove files.

2. replace_gyp_files.py <gyp-flags>

   For example: replace_gyp_files.py -Duse_system_harfbuzz=1

   The script ignores flags other than -D for convenience. This makes it
   possible to have a variable e.g. ${myconf} with all the options, and
   execute:

   build/linux/unbundle/replace_gyp_files.py ${myconf}
   build/gyp_chromium ${myconf}