From dda596bda18276bdd6881ce3d174128ed8dfca0d Mon Sep 17 00:00:00 2001 From: eb Date: Mon, 23 Jun 2008 17:47:47 +0000 Subject: [PATCH] script to install threading building blocks in prefix git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@8662 221aa14e-8319-0410-a670-987f0aec2ac5 --- dtools/bin/install-tbb | 88 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100755 dtools/bin/install-tbb diff --git a/dtools/bin/install-tbb b/dtools/bin/install-tbb new file mode 100755 index 00000000..95ffbedd --- /dev/null +++ b/dtools/bin/install-tbb @@ -0,0 +1,88 @@ +#!/usr/bin/env python + +""" +Install the release and debug libs and includes under --prefix +""" + +from optparse import OptionParser +import os +import os.path +import glob + +default_prefix="/usr/local" + +pkgconfig_filename = "tbb.pc" +pkgconfig_file_contents = """\ +prefix=%s +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: tbb +Description: Intel Threading Building Blocks +Requires: +Version: 2.0 +Libs: -L${libdir} -ltbb -ltbbmalloc +Cflags: -I${includedir} +""" + +debug_pkgconfig_filename = "tbb_debug.pc" +debug_pkgconfig_file_contents = """\ +prefix=%s +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: tbb +Description: Intel Threading Building Blocks +Requires: +Version: 2.0 +Libs: -L${libdir} -ltbb_debug -ltbbmalloc_debug +Cflags: -I${includedir} +""" + +def main(): + parser = OptionParser() + parser.add_option('','--prefix', default=default_prefix, + help="install architecture-independent files in PREFIX [default=%default]") + (options, args) = parser.parse_args() + if len(args) != 0: + parser.print_help() + raise SystemExit, 1 + + prefix = options.prefix + + # are we installing 64-bit libs? + + is_64bit = False + files = glob.glob('build/*_em64t_*_release') + # print "files: ", files + if len(files) != 0: + is_64bit = True + + # FIXME add 32 and 64-bit PPC support + + if is_64bit: + lib = 'lib64' + else: + lib = 'lib' + + os.system('install -d ' + os.path.join(prefix, 'include/tbb')) + os.system('install -d ' + os.path.join(prefix, 'include/tbb/machine')) + os.system('install -d ' + os.path.join(prefix, lib)) + os.system('install -d ' + os.path.join(prefix, lib, 'pkgconfig')) + os.system('install -t ' + os.path.join(prefix, lib) + ' build/linux*release/*.so*') + os.system('install -t ' + os.path.join(prefix, lib) + ' build/linux*debug/*.so*') + os.system('install -t ' + os.path.join(prefix, 'include/tbb') + ' include/tbb/*.h') + os.system('install -t ' + os.path.join(prefix, 'include/tbb/machine') + ' include/tbb/machine/*.h') + + f = open(os.path.join(prefix, lib, 'pkgconfig', pkgconfig_filename), 'w') + f.write(pkgconfig_file_contents % (prefix,)) + f.close() + + f = open(os.path.join(prefix, lib, 'pkgconfig', debug_pkgconfig_filename), 'w') + f.write(debug_pkgconfig_file_contents % (prefix,)) + f.close() + +if __name__ == "__main__": + main() -- 2.30.2