forked from hasufell/hasufell-repository
		
	
		
			
				
	
	
		
			77 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
Source: Julian Ospald <hasufell@posteo.de>
 | 
						|
Upstream: no
 | 
						|
Reason: fix build by respecting pkg-config, CC etc
 | 
						|
 | 
						|
diff --git a/SConstruct b/SConstruct
 | 
						|
index 2458096..eda1c41 100644
 | 
						|
--- a/SConstruct
 | 
						|
+++ b/SConstruct
 | 
						|
@@ -4,6 +4,7 @@ from glob import glob
 | 
						|
 import os
 | 
						|
 
 | 
						|
 import SCons
 | 
						|
+import SCons.Util
 | 
						|
 
 | 
						|
 def version():
 | 
						|
     #return "0.29"
 | 
						|
@@ -41,6 +42,27 @@ opts.AddVariables(
 | 
						|
 env = Environment(options = opts)
 | 
						|
 Help(opts.GenerateHelpText(env))
 | 
						|
 
 | 
						|
+if os.environ.has_key('AR'):
 | 
						|
+    env['AR'] = os.environ['AR']
 | 
						|
+if os.environ.has_key('RANLIB'):
 | 
						|
+    env['RANLIB'] = os.environ['RANLIB']
 | 
						|
+if os.environ.has_key('CC'):
 | 
						|
+    env['CC'] = os.environ['CC']
 | 
						|
+if os.environ.has_key('CFLAGS'):
 | 
						|
+    env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
 | 
						|
+if os.environ.has_key('CXX'):
 | 
						|
+    env['CXX'] = os.environ['CXX']
 | 
						|
+if os.environ.has_key('CXXFLAGS'):
 | 
						|
+    env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
 | 
						|
+if os.environ.has_key('CPPFLAGS'):
 | 
						|
+    env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CPPFLAGS'])
 | 
						|
+if os.environ.has_key('LDFLAGS'):
 | 
						|
+    env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
 | 
						|
+if os.environ.has_key('PKG_CONFIG'):
 | 
						|
+    env['PKG_CONFIG'] = os.environ['PKG_CONFIG']
 | 
						|
+else:
 | 
						|
+    env['PKG_CONFIG'] = 'pkg-config'
 | 
						|
+
 | 
						|
 pkg_flags="--cflags --libs"
 | 
						|
 if env['static']:
 | 
						|
   pkg_flags+=" --static"
 | 
						|
@@ -75,9 +97,9 @@ if GetOption("help"):
 | 
						|
 
 | 
						|
 def ParsePKGConfig(env, name): 
 | 
						|
   if os.environ.get('PKG_CONFIG_PATH', ''):
 | 
						|
-    action = 'PKG_CONFIG_PATH=%s pkg-config %s "%s"' % (os.environ['PKG_CONFIG_PATH'], pkg_flags, name)
 | 
						|
+    action = 'PKG_CONFIG_PATH=%s %s %s "%s"' % (os.environ['PKG_CONFIG_PATH'], env['PKG_CONFIG'], pkg_flags, name)
 | 
						|
   else:
 | 
						|
-    action = 'pkg-config %s "%s"' % (pkg_flags, name)
 | 
						|
+    action = '%s %s "%s"' % (env['PKG_CONFIG'], pkg_flags, name)
 | 
						|
   return env.ParseConfig(action)
 | 
						|
 
 | 
						|
 def TryAction(action):
 | 
						|
@@ -89,16 +111,16 @@ def TryAction(action):
 | 
						|
 
 | 
						|
 def CheckPKGConfig(context, version): 
 | 
						|
   context.Message( 'Checking for pkg-config... ' ) 
 | 
						|
-  ret = TryAction('pkg-config --atleast-pkgconfig-version=%s' % version)[0] 
 | 
						|
+  ret = TryAction('%s --atleast-pkgconfig-version=%s' % (env['PKG_CONFIG'], version))[0] 
 | 
						|
   context.Result( ret ) 
 | 
						|
   return ret 
 | 
						|
 
 | 
						|
 def CheckPKG(context, name): 
 | 
						|
   context.Message( 'Checking for %s... ' % name )
 | 
						|
   if os.environ.get('PKG_CONFIG_PATH', ''):
 | 
						|
-    action = 'PKG_CONFIG_PATH=%s pkg-config --exists "%s"' % (os.environ['PKG_CONFIG_PATH'], name)
 | 
						|
+    action = 'PKG_CONFIG_PATH=%s %s --exists "%s"' % (os.environ['PKG_CONFIG_PATH'], env['PKG_CONFIG'], name)
 | 
						|
   else:
 | 
						|
-    action = 'pkg-config --exists "%s"' % name
 | 
						|
+    action = '%s --exists "%s"' % (env['PKG_CONFIG'], name)
 | 
						|
   ret = TryAction(action)[0]
 | 
						|
   context.Result( ret ) 
 | 
						|
   return ret
 |