summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreb2008-06-23 17:47:47 +0000
committereb2008-06-23 17:47:47 +0000
commitdda596bda18276bdd6881ce3d174128ed8dfca0d (patch)
tree9395673dc25b50423e49a496a5eeba24eb4edd87
parent8c689672c2ad1c0991973115cb53f702492ad767 (diff)
downloadgnuradio-dda596bda18276bdd6881ce3d174128ed8dfca0d.tar.gz
gnuradio-dda596bda18276bdd6881ce3d174128ed8dfca0d.tar.bz2
gnuradio-dda596bda18276bdd6881ce3d174128ed8dfca0d.zip
script to install threading building blocks in prefix
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@8662 221aa14e-8319-0410-a670-987f0aec2ac5
-rwxr-xr-xdtools/bin/install-tbb88
1 files changed, 88 insertions, 0 deletions
diff --git a/dtools/bin/install-tbb b/dtools/bin/install-tbb
new file mode 100755
index 000000000..95ffbedd7
--- /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()