fixed bug #1670741 - NSIS Menu can't be built on linux due to .rc & .cpp -> .o
added automatic code that changes the target name of resource files to something slightly unique git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4960 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
695fddbc32
commit
9cbba1c7ba
2 changed files with 8 additions and 7 deletions
|
@ -25,4 +25,4 @@ docs = Split("""
|
||||||
|
|
||||||
Import('BuildPlugin')
|
Import('BuildPlugin')
|
||||||
|
|
||||||
BuildPlugin(target, files, libs, examples, docs, res = resources, res_target = 'StartMenuRC')
|
BuildPlugin(target, files, libs, examples, docs, res = resources)
|
||||||
|
|
13
SConstruct
13
SConstruct
|
@ -435,9 +435,10 @@ def AddEnvStandardFlags(env, defines, flags, entry, nodeflib):
|
||||||
if nodeflib:
|
if nodeflib:
|
||||||
env.Append(LINKFLAGS = '$NODEFLIBS_FLAG') # no default libraries
|
env.Append(LINKFLAGS = '$NODEFLIBS_FLAG') # no default libraries
|
||||||
|
|
||||||
def AppendRES(env, source, res, resources, target_name = None):
|
def AppendRES(env, source, res, resources):
|
||||||
if res:
|
if res:
|
||||||
target_res = env.RES(target_name, res)
|
target = MakeFileList(res)[0].name.replace('.rc', '-rc')
|
||||||
|
target_res = env.RES(target, res)
|
||||||
if resources:
|
if resources:
|
||||||
env.Depends(target_res, resources)
|
env.Depends(target_res, resources)
|
||||||
source.append(target_res)
|
source.append(target_res)
|
||||||
|
@ -456,9 +457,9 @@ def DistributeExtras(env, target, examples, docs):
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
def BuildPlugin(target, source, libs, examples = None, docs = None,
|
def BuildPlugin(target, source, libs, examples = None, docs = None,
|
||||||
entry = 'DllMain', res = None, res_target = None,
|
entry = 'DllMain', res = None, resources = None,
|
||||||
resources = None, defines = None, flags = None,
|
defines = None, flags = None, nodeflib = True,
|
||||||
nodeflib = True, cppused = False):
|
cppused = False):
|
||||||
env = plugin_env.Clone()
|
env = plugin_env.Clone()
|
||||||
|
|
||||||
if cppused and env['CPP_REQUIRES_STDLIB']:
|
if cppused and env['CPP_REQUIRES_STDLIB']:
|
||||||
|
@ -466,7 +467,7 @@ def BuildPlugin(target, source, libs, examples = None, docs = None,
|
||||||
|
|
||||||
AddEnvStandardFlags(env, defines, flags, entry, nodeflib)
|
AddEnvStandardFlags(env, defines, flags, entry, nodeflib)
|
||||||
|
|
||||||
AppendRES(env, source, res, resources, res_target)
|
AppendRES(env, source, res, resources)
|
||||||
|
|
||||||
plugin = env.SharedLibrary(target, source, LIBS = libs)
|
plugin = env.SharedLibrary(target, source, LIBS = libs)
|
||||||
defenv.Alias(target, plugin)
|
defenv.Alias(target, plugin)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue