John Abd-El-Malek | 6fe4aed | 2014-05-23 17:13:20 -0700 | [diff] [blame] | 1 | #!/usr/bin/env python |
| 2 | # |
| 3 | # Copyright 2014 PDFium Authors. All rights reserved. |
| 4 | # Use of this source code is governed by a BSD-style license that can be |
| 5 | # found in the LICENSE file. |
| 6 | |
| 7 | # This script is wrapper for PDFium that adds some support for how GYP |
| 8 | # is invoked by PDFium beyond what can be done in the gclient hooks. |
| 9 | |
| 10 | import os |
| 11 | import platform |
| 12 | import sys |
| 13 | |
| 14 | script_dir = os.path.dirname(os.path.realpath(__file__)) |
| 15 | pdfium_root = os.path.abspath(os.path.join(script_dir, os.pardir)) |
| 16 | |
| 17 | sys.path.insert(0, os.path.join(pdfium_root, 'build', 'gyp', 'pylib')) |
| 18 | import gyp |
| 19 | |
| 20 | |
| 21 | def run_gyp(args): |
| 22 | rc = gyp.main(args) |
| 23 | if rc != 0: |
| 24 | print 'Error running GYP' |
| 25 | sys.exit(rc) |
| 26 | |
| 27 | |
| 28 | def main(): |
| 29 | args = sys.argv[1:] |
| 30 | args.append(os.path.join(script_dir, 'all.gyp')) |
Lei Zhang | b693fc5 | 2015-09-15 16:37:28 -0700 | [diff] [blame] | 31 | |
John Abd-El-Malek | 6fe4aed | 2014-05-23 17:13:20 -0700 | [diff] [blame] | 32 | args.append('-I') |
| 33 | args.append(os.path.join(pdfium_root, 'build', 'standalone.gypi')) |
Lei Zhang | b693fc5 | 2015-09-15 16:37:28 -0700 | [diff] [blame] | 34 | |
John Abd-El-Malek | 6fe4aed | 2014-05-23 17:13:20 -0700 | [diff] [blame] | 35 | args.extend(['-D', 'gyp_output_dir=out']) |
| 36 | |
| 37 | # Set the GYP DEPTH variable to the root of the PDFium project. |
| 38 | args.append('--depth=' + os.path.relpath(pdfium_root)) |
| 39 | |
Lei Zhang | b693fc5 | 2015-09-15 16:37:28 -0700 | [diff] [blame] | 40 | # GYP does not default to ninja, but PDFium should. |
| 41 | if not os.environ.get('GYP_GENERATORS', ''): |
| 42 | print 'GYP_GENERATORS is not set, defaulting to ninja' |
| 43 | os.environ['GYP_GENERATORS'] = 'ninja' |
| 44 | |
John Abd-El-Malek | 6fe4aed | 2014-05-23 17:13:20 -0700 | [diff] [blame] | 45 | print 'Updating projects from gyp files...' |
| 46 | sys.stdout.flush() |
| 47 | |
| 48 | run_gyp(args) |
| 49 | |
John Abd-El-Malek | 961a34a | 2014-05-28 13:35:54 -0700 | [diff] [blame] | 50 | |
John Abd-El-Malek | 6fe4aed | 2014-05-23 17:13:20 -0700 | [diff] [blame] | 51 | if __name__ == '__main__': |
Lei Zhang | b693fc5 | 2015-09-15 16:37:28 -0700 | [diff] [blame] | 52 | sys.exit(main()) |