Created
June 28, 2015 06:41
-
-
Save leeonix/56d1691d6c70d86a6e1d to your computer and use it in GitHub Desktop.
Premake5.lua for Stormlib
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
solution 'StormLib' | |
location 'build' | |
language 'C++' | |
configurations { 'Debug', 'Release', } | |
platforms { 'x32', 'x64' } | |
targetdir 'bin' | |
objdir 'bin' | |
files { | |
'src/**.h', | |
'src/**.c', | |
'src/**.cpp', | |
'doc/*.txt', | |
} | |
removefiles { | |
'src/adpcm/*_old.*', | |
'src/huffman/*_old.*', | |
'src/huffman/huff_patch.*', | |
'src/pklib/crc32.c', | |
'src/zlib/compress.c', | |
} | |
filter 'configurations:Debug*' | |
flags { 'Symbols' } | |
defines { '_DEBUG' } | |
optimize 'Debug' | |
filter 'configurations:Release*' | |
defines { 'NDEBUG' } | |
optimize 'Full' | |
filter 'system:windows' | |
links { 'wininet', } | |
defines { 'WINDOWS', '_WINDOWS' } | |
filter { 'system:windows', 'platforms:x32' } | |
defines { 'WIN32', '_WIN32' } | |
filter { 'system:windows', 'platforms:x64' } | |
defines { 'WIN64', '_WIN64' } | |
filter 'system:linux' | |
defines { '_7ZIP_ST', 'BZ_STRICT_ANSI' } | |
removefiles { | |
'src/lzma/C/LzFindMt.*', | |
'src/lzma/C/Threads.*', | |
} | |
-------------------------------------------------------------------------------- | |
project 'StormLib' | |
kind 'StaticLib' | |
removefiles 'src/SBaseDumpData.cpp' | |
configurations { | |
'DebugAD', -- Debug Ansi Dynamic | |
'DebugAS', -- Debug Ansi Static | |
'DebugUD', -- Debug Unicode Dynamic | |
'DebugUS', -- Debug Unicode Static | |
'ReleaseAD', -- Release Ansi Dynamic | |
'ReleaseAS', -- Release Ansi Static | |
'ReleaseUD', -- Release Unicode Dynamic' | |
'ReleaseUS', -- Release Unicode Static | |
} | |
configmap { | |
['Debug'] = 'DebugUS', | |
['Release'] = 'ReleaseUS', | |
} | |
filter 'configurations:*S' | |
flags { 'StaticRuntime' } | |
filter { 'configurations:*U*', 'action:vs*' } | |
flags { 'Unicode' } | |
filter { 'configurations:*U*', 'not action:vs*' } | |
defines { 'UNICODE', '_UNICODE' } | |
filter 'DebugAD' | |
targetsuffix 'DAD' | |
filter 'ReleaseAD' | |
targetsuffix 'RAD' | |
filter 'DebugAS' | |
targetsuffix 'DAS' | |
filter 'ReleaseAS' | |
targetsuffix 'RAS' | |
filter 'DebugUD' | |
targetsuffix 'DUD' | |
filter 'ReleaseUD' | |
targetsuffix 'RUD' | |
filter 'DebugUS' | |
targetsuffix 'DUS' | |
filter 'ReleaseUS' | |
targetsuffix 'RUS' | |
-------------------------------------------------------------------------------- | |
project 'StormLib_dll' | |
kind 'SharedLib' | |
targetname 'Stormlib' | |
files { | |
'stormlib_dll/DllMain.c', | |
'stormlib_dll/StormLib.def', | |
} | |
removefiles 'src/SBaseDumpData.cpp' | |
filter { 'system:windows', 'action:gmake' } | |
linkoptions { | |
'-Xlinker --enable-stdcall-fixup', | |
'../stormlib_dll/StormLib.def', | |
} | |
filter 'Debug' | |
targetsuffix '_d' | |
-------------------------------------------------------------------------------- | |
project 'StormLib_test' | |
kind 'ConsoleApp' | |
files { | |
'test/StormTest.cpp', | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment