summaryrefslogtreecommitdiff
path: root/build_gyp/mac_find_sdk.py
diff options
context:
space:
mode:
authorweili <weili@chromium.org>2016-04-29 20:14:55 -0700
committerCommit bot <commit-bot@chromium.org>2016-04-29 20:14:55 -0700
commit5593bb8573c1deb1c649083d51963348adf972da (patch)
tree05f003cba1946a5b96a38de362eac4eec678b883 /build_gyp/mac_find_sdk.py
parent8c32dfa88b9deedb5add135301a0f6b1128882ed (diff)
downloadpdfium-5593bb8573c1deb1c649083d51963348adf972da.tar.xz
Use utilities from build directory instead of own copies
GYP and GN builds share some common utilities. GYP has three utilities in its own directory which are also synced in build directory now. We will use utilities from build directory instead of keeping our own copies. Compared to our own copies, utilities in build directory are either same or newer. find_depot_tools.py is identical; vs_toolchain.py and find_sdk.py have some minor updates. Review-Url: https://codereview.chromium.org/1933843002
Diffstat (limited to 'build_gyp/mac_find_sdk.py')
-rw-r--r--build_gyp/mac_find_sdk.py93
1 files changed, 0 insertions, 93 deletions
diff --git a/build_gyp/mac_find_sdk.py b/build_gyp/mac_find_sdk.py
deleted file mode 100644
index 230c2fd52e..0000000000
--- a/build_gyp/mac_find_sdk.py
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/usr/bin/env python
-# Copyright 2016 PDFium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Prints the lowest locally available SDK version greater than or equal to a
-given minimum sdk version to standard output.
-
-Usage:
- python mac_find_sdk.py 10.6 # Ignores SDKs < 10.6
-"""
-
-import os
-import re
-import subprocess
-import sys
-
-
-from optparse import OptionParser
-
-
-def parse_version(version_str):
- """'10.6' => [10, 6]"""
- return map(int, re.findall(r'(\d+)', version_str))
-
-
-def main():
- parser = OptionParser()
- parser.add_option("--verify",
- action="store_true", dest="verify", default=False,
- help="return the sdk argument and warn if it doesn't exist")
- parser.add_option("--sdk_path",
- action="store", type="string", dest="sdk_path", default="",
- help="user-specified SDK path; bypasses verification")
- parser.add_option("--print_sdk_path",
- action="store_true", dest="print_sdk_path", default=False,
- help="Additionaly print the path the SDK (appears first).")
- options, args = parser.parse_args()
- if len(args) != 1:
- parser.error('Please specify a minimum SDK version')
- min_sdk_version = args[0]
-
- job = subprocess.Popen(['xcode-select', '-print-path'],
- stdout=subprocess.PIPE,
- stderr=subprocess.STDOUT)
- out, err = job.communicate()
- if job.returncode != 0:
- print >> sys.stderr, out
- print >> sys.stderr, err
- raise Exception(('Error %d running xcode-select, you might have to run '
- '|sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer| '
- 'if you are using Xcode 4.') % job.returncode)
- # The Developer folder moved in Xcode 4.3.
- xcode43_sdk_path = os.path.join(
- out.rstrip(), 'Platforms/MacOSX.platform/Developer/SDKs')
- if os.path.isdir(xcode43_sdk_path):
- sdk_dir = xcode43_sdk_path
- else:
- sdk_dir = os.path.join(out.rstrip(), 'SDKs')
- sdks = [re.findall('^MacOSX(10\.\d+)\.sdk$', s) for s in os.listdir(sdk_dir)]
- sdks = [s[0] for s in sdks if s] # [['10.5'], ['10.6']] => ['10.5', '10.6']
- sdks = [s for s in sdks # ['10.5', '10.6'] => ['10.6']
- if parse_version(s) >= parse_version(min_sdk_version)]
- if not sdks:
- raise Exception('No %s+ SDK found' % min_sdk_version)
- best_sdk = sorted(sdks, key=parse_version)[0]
-
- if options.verify and best_sdk != min_sdk_version and not options.sdk_path:
- print >> sys.stderr, ''
- print >> sys.stderr, ' vvvvvvv'
- print >> sys.stderr, ''
- print >> sys.stderr, \
- 'This build requires the %s SDK, but it was not found on your system.' \
- % min_sdk_version
- print >> sys.stderr, \
- 'Either install it, or explicitly set mac_sdk in your GYP_DEFINES.'
- print >> sys.stderr, ''
- print >> sys.stderr, ' ^^^^^^^'
- print >> sys.stderr, ''
- return min_sdk_version
-
- if options.print_sdk_path:
- print subprocess.check_output(['xcodebuild', '-version', '-sdk',
- 'macosx' + best_sdk, 'Path']).strip()
-
- return best_sdk
-
-
-if __name__ == '__main__':
- if sys.platform != 'darwin':
- raise Exception("This script only runs on Mac")
- print main()
- sys.exit(0)