mirror of
https://github.com/ZDoom/zdoom-macos-deps.git
synced 2024-11-29 07:02:27 +00:00
build script: add function to create .pc file
This commit is contained in:
parent
07d0d4bd04
commit
3282fc4322
1 changed files with 32 additions and 17 deletions
49
build.py
49
build.py
|
@ -197,6 +197,37 @@ class Target(BaseTarget):
|
||||||
assert pcfile
|
assert pcfile
|
||||||
return line
|
return line
|
||||||
|
|
||||||
|
def write_pc_file(self, filename=None, name=None, description=None, version='',
|
||||||
|
requires='', requires_private='', libs='', libs_private='', cflags=''):
|
||||||
|
pkgconfig_path = self.prefix + '/lib/pkgconfig/'
|
||||||
|
os.makedirs(pkgconfig_path, exist_ok=True)
|
||||||
|
|
||||||
|
if not filename:
|
||||||
|
filename = self.name + '.pc'
|
||||||
|
if not name:
|
||||||
|
name = self.name
|
||||||
|
if not description:
|
||||||
|
description = self.name
|
||||||
|
if not libs:
|
||||||
|
libs = '-l' + self.name
|
||||||
|
|
||||||
|
pc_content = f'''prefix=
|
||||||
|
exec_prefix=${{prefix}}
|
||||||
|
libdir=${{exec_prefix}}/lib
|
||||||
|
includedir=${{prefix}}/include
|
||||||
|
|
||||||
|
Name: {name}
|
||||||
|
Description: {description}
|
||||||
|
Version: {version}
|
||||||
|
Requires: {requires}
|
||||||
|
Requires.private: {requires_private}
|
||||||
|
Libs: -L${{libdir}} {libs}
|
||||||
|
Libs.private: {libs_private}
|
||||||
|
Cflags: -I${{includedir}} {cflags}
|
||||||
|
'''
|
||||||
|
with open(pkgconfig_path + filename, 'w') as f:
|
||||||
|
f.write(pc_content)
|
||||||
|
|
||||||
|
|
||||||
class MakeTarget(Target):
|
class MakeTarget(Target):
|
||||||
def __init__(self, name=None):
|
def __init__(self, name=None):
|
||||||
|
@ -686,23 +717,7 @@ class Bzip2Target(MakeTarget):
|
||||||
self.options['PREFIX'] = self.prefix
|
self.options['PREFIX'] = self.prefix
|
||||||
self.install(builder, self.options)
|
self.install(builder, self.options)
|
||||||
|
|
||||||
# Write .pc file
|
self.write_pc_file(description='bzip2 compression library', version='1.0.8', libs='-lbz2')
|
||||||
pkgconfig_path = self.prefix + '/lib/pkgconfig/'
|
|
||||||
os.makedirs(pkgconfig_path, exist_ok=True)
|
|
||||||
|
|
||||||
pc_content = '''prefix=
|
|
||||||
exec_prefix=${prefix}
|
|
||||||
libdir=${exec_prefix}/lib
|
|
||||||
includedir=${prefix}/include
|
|
||||||
|
|
||||||
Name: bzip2
|
|
||||||
Description: bzip2 compression library
|
|
||||||
Version: 1.0.8
|
|
||||||
Libs: -L${libdir} -lbz2
|
|
||||||
Cflags: -I${includedir}
|
|
||||||
'''
|
|
||||||
with open(pkgconfig_path + 'bzip2.pc', 'w') as f:
|
|
||||||
f.write(pc_content)
|
|
||||||
|
|
||||||
|
|
||||||
class DumbTarget(CMakeStaticDependencyTarget):
|
class DumbTarget(CMakeStaticDependencyTarget):
|
||||||
|
|
Loading…
Reference in a new issue