build #Source files into LibraryLocal's build dir instead of into #Source
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5108 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
72c2e4c211
commit
ec2d800d42
2 changed files with 26 additions and 7 deletions
|
@ -2,6 +2,9 @@ target = 'LibraryLocal'
|
||||||
|
|
||||||
files = Split("""
|
files = Split("""
|
||||||
LibraryLocal.cpp
|
LibraryLocal.cpp
|
||||||
|
""")
|
||||||
|
|
||||||
|
required_files = Split("""
|
||||||
#Source/ResourceEditor.cpp
|
#Source/ResourceEditor.cpp
|
||||||
#Source/util.cpp
|
#Source/util.cpp
|
||||||
#Source/winchar.cpp
|
#Source/winchar.cpp
|
||||||
|
@ -11,7 +14,17 @@ libs = Split("""
|
||||||
oleaut32
|
oleaut32
|
||||||
""")
|
""")
|
||||||
|
|
||||||
Import('BuildUtil env')
|
Import('BuildUtil BuildUtilEnv')
|
||||||
|
|
||||||
|
env = BuildUtilEnv(flags = ['$EXCEPTION_FLAG'], cross_platform = True)
|
||||||
|
|
||||||
|
import os.path
|
||||||
|
|
||||||
|
for s in required_files:
|
||||||
|
fn = os.path.split(s)[-1]
|
||||||
|
bn = os.path.splitext(fn)[0]
|
||||||
|
o = env.Object(bn, s)
|
||||||
|
files.append(o)
|
||||||
|
|
||||||
if env['PLATFORM'] != 'win32':
|
if env['PLATFORM'] != 'win32':
|
||||||
libs = []
|
libs = []
|
||||||
|
|
18
SConstruct
18
SConstruct
|
@ -514,11 +514,8 @@ for plugin in plugins:
|
||||||
####### Utilities ###
|
####### Utilities ###
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
def BuildUtil(target, source, libs, entry = None, res = None,
|
def BuildUtilEnv(defines = None, flags = None, entry = None,
|
||||||
resources = None, defines = None, flags = None,
|
nodeflib = None, cross_platform = False):
|
||||||
nodeflib = False, file_name = '', path='', contrib = False,
|
|
||||||
examples = None, docs = None, cross_platform = False,
|
|
||||||
root_util = False):
|
|
||||||
if not cross_platform:
|
if not cross_platform:
|
||||||
env = util_env.Clone()
|
env = util_env.Clone()
|
||||||
else:
|
else:
|
||||||
|
@ -526,6 +523,15 @@ def BuildUtil(target, source, libs, entry = None, res = None,
|
||||||
|
|
||||||
AddEnvStandardFlags(env, defines, flags, entry, nodeflib)
|
AddEnvStandardFlags(env, defines, flags, entry, nodeflib)
|
||||||
|
|
||||||
|
return env
|
||||||
|
|
||||||
|
def BuildUtil(target, source, libs, entry = None, res = None,
|
||||||
|
resources = None, defines = None, flags = None,
|
||||||
|
nodeflib = False, file_name = '', path='', contrib = False,
|
||||||
|
examples = None, docs = None, cross_platform = False,
|
||||||
|
root_util = False):
|
||||||
|
env = BuildUtilEnv(defines, flags, entry, nodeflib, cross_platform)
|
||||||
|
|
||||||
AppendRES(env, source, res, resources)
|
AppendRES(env, source, res, resources)
|
||||||
|
|
||||||
if file_name != '':
|
if file_name != '':
|
||||||
|
@ -561,7 +567,7 @@ for util in utils:
|
||||||
|
|
||||||
path = 'Contrib/' + util
|
path = 'Contrib/' + util
|
||||||
build_dir = '$BUILD_PREFIX/' + util
|
build_dir = '$BUILD_PREFIX/' + util
|
||||||
exports = {'BuildUtil' : BuildUtil, 'env' : util_env.Clone()}
|
exports = {'BuildUtil' : BuildUtil, 'BuildUtilEnv' : BuildUtilEnv, 'env' : util_env}
|
||||||
|
|
||||||
defenv.SConscript(dirs = path, build_dir = build_dir, duplicate = False, exports = exports)
|
defenv.SConscript(dirs = path, build_dir = build_dir, duplicate = False, exports = exports)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue