From f97ad2b2ee566eb2212a1dc19128ad2213cc4f95 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sat, 21 Nov 2015 00:17:00 +0100 Subject: [PATCH] {android,win32}/build.py: move class BoostProject to build/boost.py --- android/build.py | 31 ++----------------------------- python/build/boost.py | 31 +++++++++++++++++++++++++++++++ win32/build.py | 31 ++----------------------------- 3 files changed, 35 insertions(+), 58 deletions(-) create mode 100644 python/build/boost.py diff --git a/android/build.py b/android/build.py index 6e90f845a..a549774fa 100755 --- a/android/build.py +++ b/android/build.py @@ -1,8 +1,7 @@ #!/usr/bin/env python3 import os, os.path -import sys, shutil, subprocess -import re +import sys, subprocess if len(sys.argv) < 3: print("Usage: build.py SDK_PATH NDK_PATH [configure_args...]", file=sys.stderr) @@ -112,6 +111,7 @@ class AndroidNdkToolchain: from build.project import Project from build.autotools import AutotoolsProject +from build.boost import BoostProject class FfmpegProject(Project): def __init__(self, url, md5, installed, configure_args=[], @@ -146,33 +146,6 @@ class FfmpegProject(Project): subprocess.check_call(['/usr/bin/make', '--quiet', '-j12'], cwd=build, env=toolchain.env) subprocess.check_call(['/usr/bin/make', '--quiet', 'install'], cwd=build, env=toolchain.env) -class BoostProject(Project): - def __init__(self, url, md5, installed, - **kwargs): - m = re.match(r'.*/boost_(\d+)_(\d+)_(\d+)\.tar\.bz2$', url) - version = "%s.%s.%s" % (m.group(1), m.group(2), m.group(3)) - Project.__init__(self, url, md5, installed, - name='boost', version=version, - **kwargs) - - def build(self, toolchain): - src = self.unpack(toolchain) - - # install the headers manually; don't build any library - # (because right now, we only use header-only libraries) - includedir = os.path.join(toolchain.install_prefix, 'include') - for dirpath, dirnames, filenames in os.walk(os.path.join(src, 'boost')): - relpath = dirpath[len(src)+1:] - destdir = os.path.join(includedir, relpath) - try: - os.mkdir(destdir) - except: - pass - for name in filenames: - if name[-4:] == '.hpp': - shutil.copyfile(os.path.join(dirpath, name), - os.path.join(destdir, name)) - # a list of third-party libraries to be used by MPD on Android thirdparty_libs = [ AutotoolsProject( diff --git a/python/build/boost.py b/python/build/boost.py new file mode 100644 index 000000000..0a68d7c2a --- /dev/null +++ b/python/build/boost.py @@ -0,0 +1,31 @@ +import os, shutil +import re + +from build.project import Project + +class BoostProject(Project): + def __init__(self, url, md5, installed, + **kwargs): + m = re.match(r'.*/boost_(\d+)_(\d+)_(\d+)\.tar\.bz2$', url) + version = "%s.%s.%s" % (m.group(1), m.group(2), m.group(3)) + Project.__init__(self, url, md5, installed, + name='boost', version=version, + **kwargs) + + def build(self, toolchain): + src = self.unpack(toolchain) + + # install the headers manually; don't build any library + # (because right now, we only use header-only libraries) + includedir = os.path.join(toolchain.install_prefix, 'include') + for dirpath, dirnames, filenames in os.walk(os.path.join(src, 'boost')): + relpath = dirpath[len(src)+1:] + destdir = os.path.join(includedir, relpath) + try: + os.mkdir(destdir) + except: + pass + for name in filenames: + if name[-4:] == '.hpp': + shutil.copyfile(os.path.join(dirpath, name), + os.path.join(destdir, name)) diff --git a/win32/build.py b/win32/build.py index b15f3d7e4..7c77109b7 100755 --- a/win32/build.py +++ b/win32/build.py @@ -1,8 +1,7 @@ #!/usr/bin/env python3 import os, os.path -import sys, shutil, subprocess -import re +import sys, subprocess configure_args = sys.argv[1:] @@ -60,6 +59,7 @@ class CrossGccToolchain: from build.project import Project from build.autotools import AutotoolsProject +from build.boost import BoostProject class ZlibProject(Project): def __init__(self, url, md5, installed, @@ -115,33 +115,6 @@ class FfmpegProject(Project): subprocess.check_call(['/usr/bin/make', '--quiet', 'install'], cwd=build, env=toolchain.env) -class BoostProject(Project): - def __init__(self, url, md5, installed, - **kwargs): - m = re.match(r'.*/boost_(\d+)_(\d+)_(\d+)\.tar\.bz2$', url) - version = "%s.%s.%s" % (m.group(1), m.group(2), m.group(3)) - Project.__init__(self, url, md5, installed, - name='boost', version=version, - **kwargs) - - def build(self, toolchain): - src = self.unpack(toolchain) - - # install the headers manually; don't build any library - # (because right now, we only use header-only libraries) - includedir = os.path.join(toolchain.install_prefix, 'include') - for dirpath, dirnames, filenames in os.walk(os.path.join(src, 'boost')): - relpath = dirpath[len(src)+1:] - destdir = os.path.join(includedir, relpath) - try: - os.mkdir(destdir) - except: - pass - for name in filenames: - if name[-4:] == '.hpp': - shutil.copyfile(os.path.join(dirpath, name), - os.path.join(destdir, name)) - # a list of third-party libraries to be used by MPD on Android thirdparty_libs = [ AutotoolsProject(