Craig Tiller | 3dca23a | 2016-01-21 11:44:55 -0800 | [diff] [blame] | 1 | #!/usr/bin/env python2.7 |
Craig Tiller | de5d090 | 2016-01-21 14:16:19 -0800 | [diff] [blame] | 2 | |
Jan Tattermusch | 7897ae9 | 2017-06-07 22:57:36 +0200 | [diff] [blame] | 3 | # Copyright 2015 gRPC authors. |
Craig Tiller | de5d090 | 2016-01-21 14:16:19 -0800 | [diff] [blame] | 4 | # |
Jan Tattermusch | 7897ae9 | 2017-06-07 22:57:36 +0200 | [diff] [blame] | 5 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 6 | # you may not use this file except in compliance with the License. |
| 7 | # You may obtain a copy of the License at |
Craig Tiller | de5d090 | 2016-01-21 14:16:19 -0800 | [diff] [blame] | 8 | # |
Jan Tattermusch | 7897ae9 | 2017-06-07 22:57:36 +0200 | [diff] [blame] | 9 | # http://www.apache.org/licenses/LICENSE-2.0 |
Craig Tiller | de5d090 | 2016-01-21 14:16:19 -0800 | [diff] [blame] | 10 | # |
Jan Tattermusch | 7897ae9 | 2017-06-07 22:57:36 +0200 | [diff] [blame] | 11 | # Unless required by applicable law or agreed to in writing, software |
| 12 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 14 | # See the License for the specific language governing permissions and |
| 15 | # limitations under the License. |
Craig Tiller | de5d090 | 2016-01-21 14:16:19 -0800 | [diff] [blame] | 16 | |
Craig Tiller | 3dca23a | 2016-01-21 11:44:55 -0800 | [diff] [blame] | 17 | import re |
| 18 | import os |
| 19 | import sys |
| 20 | import yaml |
| 21 | |
| 22 | os.chdir(os.path.dirname(sys.argv[0])+'/../..') |
| 23 | |
| 24 | out = {} |
| 25 | |
| 26 | try: |
| 27 | with open('third_party/zlib/CMakeLists.txt') as f: |
| 28 | cmake = f.read() |
| 29 | |
| 30 | def cmpath(x): |
| 31 | return 'third_party/zlib/%s' % x.replace('${CMAKE_CURRENT_BINARY_DIR}/', '') |
| 32 | |
| 33 | def cmvar(name): |
| 34 | regex = r'set\(\s*' |
| 35 | regex += name |
| 36 | regex += r'([^)]*)\)' |
| 37 | return [cmpath(x) for x in re.search(regex, cmake).group(1).split()] |
| 38 | |
| 39 | out['libs'] = [{ |
| 40 | 'name': 'z', |
| 41 | 'zlib': True, |
Nicolas "Pixel" Noble | 51b1aee | 2016-01-28 01:14:58 +0100 | [diff] [blame] | 42 | 'defaults': 'zlib', |
Craig Tiller | 3dca23a | 2016-01-21 11:44:55 -0800 | [diff] [blame] | 43 | 'build': 'private', |
| 44 | 'language': 'c', |
| 45 | 'secure': 'no', |
| 46 | 'src': sorted(cmvar('ZLIB_SRCS')), |
| 47 | 'headers': sorted(cmvar('ZLIB_PUBLIC_HDRS') + cmvar('ZLIB_PRIVATE_HDRS')), |
| 48 | }] |
| 49 | except: |
| 50 | pass |
| 51 | |
| 52 | print yaml.dump(out) |
| 53 | |