
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6030 212acab6-be3b-0410-9dea-997c60f758d6
90 lines
1.5 KiB
Python
90 lines
1.5 KiB
Python
target = 'makensis'
|
|
|
|
pch = 'Platform.h'
|
|
|
|
makensis_files = Split("""
|
|
build.cpp
|
|
clzma.cpp
|
|
crc32.c
|
|
DialogTemplate.cpp
|
|
dirreader.cpp
|
|
fileform.cpp
|
|
growbuf.cpp
|
|
icon.cpp
|
|
lang.cpp
|
|
lineparse.cpp
|
|
makenssi.cpp
|
|
manifest.cpp
|
|
mmap.cpp
|
|
Plugins.cpp
|
|
ResourceEditor.cpp
|
|
ResourceVersionInfo.cpp
|
|
script.cpp
|
|
ShConstants.cpp
|
|
strlist.cpp
|
|
tokens.cpp
|
|
util.cpp
|
|
winchar.cpp
|
|
writer.cpp
|
|
""")
|
|
|
|
bzip2_files = Split("""
|
|
bzip2/blocksort.c
|
|
bzip2/bzlib.c
|
|
bzip2/compress.c
|
|
bzip2/huffman.c
|
|
""")
|
|
|
|
lzma_files = Split("""
|
|
7zip/7zGuids.cpp
|
|
7zip/7zip/Common/OutBuffer.cpp
|
|
7zip/7zip/Common/StreamUtils.cpp
|
|
7zip/7zip/Compress/LZ/LZInWindow.cpp
|
|
7zip/7zip/Compress/LZMA/LZMAEncoder.cpp
|
|
7zip/7zip/Compress/RangeCoder/RangeCoderBit.cpp
|
|
7zip/Common/Alloc.cpp
|
|
7zip/Common/CRC.cpp
|
|
""")
|
|
|
|
libs = Split("""
|
|
gdi32
|
|
user32
|
|
pthread
|
|
iconv
|
|
""")
|
|
|
|
Import('env AddAvailableLibs AddZLib')
|
|
|
|
##### Use available libraries
|
|
|
|
if env['PLATFORM'] == 'win32':
|
|
# XXX will cause problems if makensis is cross compiled
|
|
# on freebsd, libversion.a exists and gives trouble if linked
|
|
libs += ['version']
|
|
|
|
AddAvailableLibs(env, libs)
|
|
AddZLib(env, env['PLATFORM'], 'install-compiler')
|
|
|
|
##### Defines
|
|
|
|
env.Append(CPPDEFINES = ['_WIN32_IE=0x0500'])
|
|
|
|
##### Set PCH
|
|
|
|
# XXX doesn't work
|
|
#env['PCH'] = env.PCH(pch)[0]
|
|
#env['PCHSTOP'] = pch
|
|
|
|
##### LZMA specific defines
|
|
|
|
lzma_env = env.Clone()
|
|
lzma_env.Append(CPPDEFINES = ['COMPRESS_MF_BT'])
|
|
lzma_files = lzma_env.Object(lzma_files)
|
|
|
|
##### Compile makensis
|
|
|
|
files = makensis_files + bzip2_files + lzma_files
|
|
|
|
makensis = env.Program(target, files)
|
|
|
|
Return('makensis')
|