[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: scons /rules



On Sun, 2009-03-08 at 12:56 +0100, Grammostola Rosea wrote:
> Ok, I wil ask the upstream author of the source.
> 
> If I need to patch SConstruct to support DESTDIR myself, how should I
> do it?
> 
Attached is a patch I made while packaging sigx, then submitted
upstream. It adds DESTDIR support to the SConstruct. You should patch
SConstruct similarly if upstream doesn't want to add DESTDIR support.
-- 
Chow Loong Jin
Index: sigx-2.0/SConstruct
===================================================================
--- sigx-2.0.orig/SConstruct	2008-12-12 15:29:57.000000000 +0800
+++ sigx-2.0/SConstruct	2008-12-12 15:46:48.000000000 +0800
@@ -50,6 +50,7 @@
 opts = Options('options.cache')
 
 opts.AddOptions(
+	('DESTDIR', 'Destination root directory', ''),
 	PathOption('PREFIX', 'Installation prefix directory', '/usr/local'),
 	BoolOption('DEBUG', 'Debug version (useful for developers only)', 0), 
 	BoolOption('SHAREDLIB', 'build a shared library, otherwise a static library', 1), 
@@ -95,6 +96,8 @@
 #env.Append(TARFLAGS = ['-c'])
 #env.Append(TARFLAGS = ['--bzip2'])
 
+if env.has_key('CXXFLAGS') and type(env['CXXFLAGS']) == str:
+	env['CXXFLAGS'] = env['CXXFLAGS'].split(' ');
 if env['DEBUG'] == 1:
 	env.Append(CXXFLAGS = ['-g'])
 	env.Append(CXXFLAGS = ['-O0'])
@@ -245,9 +248,10 @@
 #  Installation rules  #
 ########################
 
-env.Append(LIBDIR = "%s/lib" % env['PREFIX'])
-env.Append(LIBINCLUDEDIR = "%s/lib/%s/" % (env['PREFIX'], env['VERSIONED_NAME']))
-env.Append(INCLUDEDIR = "%s/include/%s/sigx" % (env['PREFIX'], env['VERSIONED_NAME']))
+env.Append(INSTALL_PREFIX = env['DESTDIR'] + env['PREFIX'])
+env.Append(LIBDIR = "%s/lib" % env['INSTALL_PREFIX'])
+env.Append(LIBINCLUDEDIR = "%s/lib/%s/" % (env['INSTALL_PREFIX'], env['VERSIONED_NAME']))
+env.Append(INCLUDEDIR = "%s/include/%s/sigx" % (env['INSTALL_PREFIX'], env['VERSIONED_NAME']))
 
 installpaths = [ env['LIBDIR'], env['LIBINCLUDEDIR'], env['INCLUDEDIR'] ]
 

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: