Commit Graph

13 Commits

Author SHA1 Message Date
Anders Hasselqvist 9883fa0262 Allow overriding settings from Chromium's common.gypi
Build settings are coming from the Chromium build settings in packager/build/common.gypi.
We need to override those settings and set CLANG_CXX_LIBRARY = libc++ for MacOSX builds.
packager/common.gypi does some override but only for packages that explicitly include it.
We want a global override.
Introduce packager/common_overrides.gypi which is injected as an argument to gyp in gyp_packager.py
2016-02-17 17:02:22 +09:00
KongQun Yang 810f5b3ab5 Disable clang on 32bit systems by default
Fixes #51

Change-Id: I7ae81055b30ce11cd12080f7d8ee9e6f899d07cd
2016-01-25 13:39:49 -08:00
Anders Hasselqvist 30bd227162 MacOSX: Skip --no-circular-check when generating Xcode projects
When gyp is generating the ninja files a circular dependency error is reported:
packager/media/file/file.gyp -> packager/media/base/media_base.gyp -> packager/media/file/file.gyp

This isn't a problem with ninja, but presumably is a problem with Xcode.
Change gyp_packager.py to use "--no-circular-check" for all generators except xcode
2016-01-22 18:50:05 -08:00
Rintaro Kuroiwa 175606c88d gyp_packager should repsect output_dir
- Check if 'output_dir=' is already defined in GYP_GENERATOR_FLAGS
  before appending the one generated in the script.
- Reusing out/ with different GYP_DEFINES causes everything to rebuild.
- This change allows the user to use different directories for different
  GYP_DEFINES; it can make sanity checking faster for different
  GYP_DEFINES.

Change-Id: Iffa6880381dabdd80a3aa7777a1d20cc3900f3e3
2016-01-14 22:41:00 -08:00
KongQun Yang e0040a4910 Add version information in generated outputs
For mp4 outputs, a metadata box with version information is added to
moov box.

For mpd outputs, a text comment with version information is added in
the beginning of mpd file.

Issue #60

Change-Id: I783ba370781c0a8f77c910ff1172bad2e7edff75
2016-01-08 19:08:56 +00:00
KongQun Yang 35e033b838 Disable gold linker by default
The bundled gold (third_party/gold) does not work on Ubuntu 64bit server.

Did some benchmarking on some systems: the build is around 1% faster,
which is not significant.

"gold" tool will still be pulled in using gclient. It can be enabled via
GYP_DEFINES flag:
GYP_DEFINES="linux_use_gold_binary=1 linux_use_gold_flags=1" gclient runhooks

Issue: 7

Change-Id: Ic5a83368e0e475280f6722ddbd3f5cead2276712
2015-02-12 12:48:34 -08:00
KongQun Yang b8126bc9da Move source code into packager directory
Make it easier to be included and integrated into other code.

Change-Id: I609881688cc20f8fac676cbd91fde4753af32ee5
2014-10-02 12:32:14 -07:00
KongQun Yang 5d5750b405 Update gyp_packager to support earlier version of python
"{} {}" formatting in python is introduced in version 2.7. Replaced
with "{0} {1}" to support python 2.6 and below.

Change-Id: Ic20fdc5fce554a5a5cb57383d5587581f70de598
2014-06-23 15:25:51 -07:00
Kongqun Yang c8307c102e Update packager to work with gclient
Detail changes:
1. Add gclient DEPS (depenencies)
2. Update gyp_packager.py
3. Update .gitignore
4. Update third_party/happyhttp patch path
5. Add a new script in happyhttp to reset the patch before re-sync

Change-Id: I30f0beb94a56ae8aff3b25bb16fe76a7b07e3d54
2014-03-20 00:56:36 +00:00
Kongqun Yang 374324b042 Disable test_isolation_mode, glib, and x11 in GYP_DEFINES
This removes unnecessary library dependencies.

Change-Id: Id451766d1bedd7fbcd9cf9cf882de86ccb662486
2014-03-03 21:28:33 +00:00
Edwin Wong c5ca55c388 Workaround pylint warning F0401.
gyp and gyp_helper path are obtained dynamically. Pylint generates
format checker warning. The Workaround is recommended by:
http://google-styleguide.googlecode.com/svn/trunk/pyguide.html.
Although the style guide prefers using symbolic names, which is
supported since pylint 0.25.3, the depot_tools/pylint is 0.25.1.

Change-Id: I6c9bc21a46102f38cab68c07c98339003cbd6991
2014-02-26 19:21:43 -08:00
Rintaro Kuroiwa b51f20d40c Use gyp_helper in gyp_packager.py
build/gyp_chromium uses gyp_helper to get variables for GYP from
chromium.gyp_env file.
More on chromium.gyp_env can be found here
http://www.chromium.org/developers/how-tos/component-build

This is useful if you want to override some GYP varibles to test
different flags, e.g. using clang to build.

Change-Id: I14fc76abdd6503bf66ef3e27fb9216b3fb8aaa02
2014-02-20 10:47:18 -08:00
Kongqun Yang 859da912fc Replace bash build script with python script.
This is for cross platform support. gyp_packager.py is modified
from build/gyp_chromium and adapted to packager code.

New build instructions:

1. Setup gyp: ./gyp_packager.py

clang is not enabled by default, which can be enabled by overriding
GYP_DEFINE environment variable, i.e. "GYP_DEFINES='clang=1
use_openssl=1' ./gyp_packager.py".

Ninja is the default build system. User can also change to make by
overriding GYP_GENERATORS to make, i.e. "GYP_GENERATORS='make'
./gyp_packager.py".

2. The first step generates the make files but does not start the
build process. Ninja is the default build system. Refer to Ninja
manual on how to do the build.

Common syntaxes: ninja -C out/{Debug/Release} [Module]
Module is optional. If not specified, build everything.

Step 1 is only required if there is any gyp file change. Otherwise, you
may just run ninja.

Change-Id: I89cade7278bfdd3992644457e896e5a10085568b
2014-02-19 22:42:07 +00:00