* gnu/packages/bioinformatics.scm (metabat): Update to 2.11.1. [source]: Add patch to fix compilation. [arguments]: Adjust regular expressions modifying 'SConstruct'. * gnu/packages/patches/metabat-fix-compilation.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it.
		
			
				
	
	
		
			39 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			39 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
 | |
|  
 |