mirror of
https://github.com/ZDoom/zdoom-macos-deps.git
synced 2024-11-25 21:31:25 +00:00
build script: add meson target
This commit is contained in:
parent
eadc423867
commit
9c865eec1e
1 changed files with 38 additions and 0 deletions
38
build.py
38
build.py
|
@ -688,6 +688,43 @@ class JpegTurboTarget(CMakeStaticDependencyTarget):
|
||||||
return os.path.exists(builder.source_path + 'turbojpeg.h')
|
return os.path.exists(builder.source_path + 'turbojpeg.h')
|
||||||
|
|
||||||
|
|
||||||
|
class MesonTarget(Target):
|
||||||
|
def __init__(self, name='meson'):
|
||||||
|
super().__init__(name)
|
||||||
|
|
||||||
|
def prepare_source(self, builder: 'Builder'):
|
||||||
|
builder.download_source(
|
||||||
|
'https://github.com/mesonbuild/meson/releases/download/0.56.0/meson-0.56.0.tar.gz',
|
||||||
|
'291dd38ff1cd55fcfca8fc985181dd39be0d3e5826e5f0013bf867be40117213')
|
||||||
|
|
||||||
|
def detect(self, builder: 'Builder') -> bool:
|
||||||
|
return os.path.exists(builder.source_path + 'meson.py')
|
||||||
|
|
||||||
|
def post_build(self, builder: 'Builder'):
|
||||||
|
dest_path = builder.deps_path + self.name + os.sep
|
||||||
|
lib_path = 'lib' + os.sep + self.name + os.sep
|
||||||
|
|
||||||
|
dest_lib_path = dest_path + lib_path
|
||||||
|
os.makedirs(dest_lib_path, exist_ok=True)
|
||||||
|
|
||||||
|
script = 'meson.py'
|
||||||
|
shutil.copy(builder.source_path + script, dest_lib_path)
|
||||||
|
|
||||||
|
module = 'mesonbuild'
|
||||||
|
module_path = dest_lib_path + module
|
||||||
|
if os.path.exists(module_path):
|
||||||
|
shutil.rmtree(module_path)
|
||||||
|
shutil.copytree(builder.source_path + module, module_path)
|
||||||
|
|
||||||
|
dest_bin_path = dest_path + 'bin' + os.sep
|
||||||
|
os.makedirs(dest_bin_path, exist_ok=True)
|
||||||
|
|
||||||
|
exe_path = dest_bin_path + self.name
|
||||||
|
if os.path.exists(exe_path):
|
||||||
|
os.unlink(exe_path)
|
||||||
|
os.symlink(os.pardir + os.sep + lib_path + script, exe_path)
|
||||||
|
|
||||||
|
|
||||||
class Mpg123Target(ConfigureMakeStaticDependencyTarget):
|
class Mpg123Target(ConfigureMakeStaticDependencyTarget):
|
||||||
def __init__(self, name='mpg123'):
|
def __init__(self, name='mpg123'):
|
||||||
super().__init__(name)
|
super().__init__(name)
|
||||||
|
@ -1053,6 +1090,7 @@ class Builder(object):
|
||||||
FlacTarget(),
|
FlacTarget(),
|
||||||
IconvTarget(),
|
IconvTarget(),
|
||||||
JpegTurboTarget(),
|
JpegTurboTarget(),
|
||||||
|
MesonTarget(),
|
||||||
Mpg123Target(),
|
Mpg123Target(),
|
||||||
NasmTarget(),
|
NasmTarget(),
|
||||||
NinjaTarget(),
|
NinjaTarget(),
|
||||||
|
|
Loading…
Reference in a new issue