mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-30 08:02:38 -05:00
40 lines
1.8 KiB
Diff
40 lines
1.8 KiB
Diff
|
This patch changes metabat so that (1) it is not build statically, (2) it uses
|
||
|
shared libraries rather than static libraries where possible.
|
||
|
|
||
|
diff --git a/SConstruct b/SConstruct
|
||
|
index 69cdc0a..ac99bcb 100644
|
||
|
--- a/SConstruct
|
||
|
+++ b/SConstruct
|
||
|
@@ -26,8 +26,6 @@ debug = ARGUMENTS.get('DEBUG', None)
|
||
|
build_flags = ['-Wall', '-g', '-std=c++11', '-fopenmp']
|
||
|
link_flags = ['-lstdc++', '-lm', '-fopenmp']
|
||
|
|
||
|
-if platform.platform(True, True).find('Darwin') == -1:
|
||
|
- link_flags.extend(['-static', '-static-libgcc', '-static-libstdc++'])
|
||
|
|
||
|
if debug is None:
|
||
|
build_flags.extend(['-O3', '-DNDEBUG', '-Wno-unknown-pragmas', '-Wno-deprecated-declarations', '-Wno-overflow', '-Wno-unused-variable'])
|
||
|
@@ -110,17 +108,17 @@ def findStaticOrShared( lib, testPaths, static_source_list, link_flag_list, stat
|
||
|
for path in testPaths:
|
||
|
if not os.path.isdir(path):
|
||
|
continue
|
||
|
+ for testfile in ('%s/lib%s.so' % (path, lib), '%s/lib%s.dylib' % (path, lib)):
|
||
|
+ if os.path.isfile(testfile):
|
||
|
+ print "Found shared library %s as %s" % (lib, testfile)
|
||
|
+ link_flag_list.extend( ["-L%s" % (path), "-l%s" % (lib) ] )
|
||
|
+ return
|
||
|
for suffix in staticSuffixes:
|
||
|
testfile = '%s/lib%s%s' % (path, lib, suffix)
|
||
|
if os.path.isfile(testfile):
|
||
|
static_source_list.append(testfile)
|
||
|
print "Found static library %s as %s" % (lib, testfile)
|
||
|
return
|
||
|
- for testfile in ('%s/lib%s.so' % (path, lib), '%s/lib%s.dylib' % (path, lib)):
|
||
|
- if os.path.isfile(testfile):
|
||
|
- print "Found shared library %s as %s" % (lib, testfile)
|
||
|
- link_flag_list.extend( ["-L%s" % (path), "-l%s" % (lib) ] )
|
||
|
- return
|
||
|
print "Could not find library for %s!!! Looked in %s" % (lib, testPaths)
|
||
|
return
|
||
|
|