|
workspace "wren-cli"
|
|
configurations { "Release", "Debug" }
|
|
platforms { "64bit", "32bit", "64bit-no-nan-tagging" }
|
|
defaultplatform "64bit"
|
|
location ("../" .. _ACTION)
|
|
|
|
filter "configurations:Debug"
|
|
targetsuffix "_d"
|
|
defines { "DEBUG" }
|
|
symbols "On"
|
|
|
|
filter "configurations:Release"
|
|
defines { "NDEBUG" }
|
|
optimize "Full"
|
|
|
|
filter "platforms:64bit-no-nan-tagging"
|
|
defines { "WREN_NAN_TAGGING=0" }
|
|
|
|
filter "platforms:32bit"
|
|
architecture "x86"
|
|
|
|
filter "platforms:64bit"
|
|
architecture "x86_64"
|
|
|
|
filter "system:windows"
|
|
staticruntime "On"
|
|
systemversion "latest"
|
|
defines { "_CRT_SECURE_NO_WARNINGS" }
|
|
flags { "MultiProcessorCompile" }
|
|
|
|
--the 'xcode4' and 'gmake2' folder names
|
|
--are simply confusing, so, simplify then
|
|
filter { "action:xcode4" }
|
|
location ("../xcode")
|
|
|
|
filter "action:gmake2"
|
|
location ("../make")
|
|
|
|
filter { "action:gmake2", "system:bsd" }
|
|
location ("../make.bsd")
|
|
|
|
filter { "action:gmake2", "system:macosx" }
|
|
location ("../make.mac")
|
|
|
|
project "wren_cli"
|
|
kind "ConsoleApp"
|
|
language "C"
|
|
cdialect "C99"
|
|
targetdir "../../bin"
|
|
|
|
files {
|
|
"../../src/**.h",
|
|
"../../src/**.c",
|
|
"../../src/**.inc",
|
|
}
|
|
|
|
|
|
includedirs {
|
|
"../../src/cli",
|
|
"../../src/module",
|
|
}
|
|
|
|
-- wren dependency
|
|
|
|
files {
|
|
"../../deps/wren/include/**.h",
|
|
"../../deps/wren/src/**.c",
|
|
"../../deps/wren/src/**.h"
|
|
}
|
|
|
|
includedirs {
|
|
"../../deps/wren/include",
|
|
"../../deps/wren/src/vm",
|
|
"../../deps/wren/src/optional"
|
|
}
|
|
|
|
-- libuv dependency
|
|
|
|
includedirs {
|
|
"../../deps/libuv/include",
|
|
"../../deps/libuv/src"
|
|
}
|
|
|
|
files {
|
|
"../../deps/libuv/include/**.h",
|
|
"../../deps/libuv/src/*.c",
|
|
"../../deps/libuv/src/*.h"
|
|
}
|
|
|
|
-- unix common files
|
|
filter "system:not windows"
|
|
files {
|
|
"../../deps/libuv/src/unix/async.c",
|
|
"../../deps/libuv/src/unix/atomic-ops.h",
|
|
"../../deps/libuv/src/unix/core.c",
|
|
"../../deps/libuv/src/unix/dl.c",
|
|
"../../deps/libuv/src/unix/fs.c",
|
|
"../../deps/libuv/src/unix/getaddrinfo.c",
|
|
"../../deps/libuv/src/unix/getnameinfo.c",
|
|
"../../deps/libuv/src/unix/internal.h",
|
|
"../../deps/libuv/src/unix/loop-watcher.c",
|
|
"../../deps/libuv/src/unix/loop.c",
|
|
"../../deps/libuv/src/unix/pipe.c",
|
|
"../../deps/libuv/src/unix/poll.c",
|
|
"../../deps/libuv/src/unix/process.c",
|
|
"../../deps/libuv/src/unix/random-devurandom.c",
|
|
"../../deps/libuv/src/unix/signal.c",
|
|
"../../deps/libuv/src/unix/spinlock.h",
|
|
"../../deps/libuv/src/unix/stream.c",
|
|
"../../deps/libuv/src/unix/tcp.c",
|
|
"../../deps/libuv/src/unix/thread.c",
|
|
"../../deps/libuv/src/unix/tty.c",
|
|
"../../deps/libuv/src/unix/udp.c",
|
|
}
|
|
|
|
-- todo: this has to be tested
|
|
filter "system:macosx"
|
|
systemversion "10.12"
|
|
defines { "_DARWIN_USE_64_BIT_INODE=1", "_DARWIN_UNLIMITED_SELECT=1" }
|
|
files {
|
|
"../../deps/libuv/src/unix/bsd-ifaddrs.c",
|
|
"../../deps/libuv/src/unix/darwin.c",
|
|
"../../deps/libuv/src/unix/darwin-proctitle.c",
|
|
"../../deps/libuv/src/unix/fsevents.c",
|
|
"../../deps/libuv/src/unix/kqueue.c",
|
|
"../../deps/libuv/src/unix/proctitle.c",
|
|
"../../deps/libuv/src/unix/random-getentropy.c",
|
|
}
|
|
|
|
filter "system:linux"
|
|
links { "pthread", "dl", "m" }
|
|
defines { "_GNU_SOURCE" }
|
|
files {
|
|
"../../deps/libuv/src/unix/linux-core.c",
|
|
"../../deps/libuv/src/unix/linux-inotify.c",
|
|
"../../deps/libuv/src/unix/linux-syscalls.c",
|
|
"../../deps/libuv/src/unix/linux-syscalls.h",
|
|
"../../deps/libuv/src/unix/procfs-exepath.c",
|
|
"../../deps/libuv/src/unix/proctitle.c",
|
|
"../../deps/libuv/src/unix/random-getrandom.c",
|
|
"../../deps/libuv/src/unix/random-sysctl-linux.c",
|
|
"../../deps/libuv/src/unix/sysinfo-loadavg.c"
|
|
}
|
|
|
|
filter "system:windows"
|
|
-- for some reason, OPT:REF makes a GetModuleHandleA fail
|
|
-- in libuv, `advapi32_module = GetModuleHandleA("advapi32.dll");
|
|
linkoptions { '/OPT:NOREF' }
|
|
links { "imm32", "winmm", "version", "wldap32", "ws2_32", "psapi", "iphlpapi", "userenv" }
|
|
files {
|
|
"../../deps/libuv/src/win/*.h",
|
|
"../../deps/libuv/src/win/*.c"
|
|
}
|
|
|
|
filter "system:bsd"
|
|
links { "pthread", "dl", "m" }
|
|
files {
|
|
"../../deps/libuv/src/unix/bsd-ifaddrs.c",
|
|
"../../deps/libuv/src/unix/bsd-proctitle.c",
|
|
"../../deps/libuv/src/unix/freebsd.c",
|
|
"../../deps/libuv/src/unix/kqueue.c",
|
|
"../../deps/libuv/src/unix/posix-hrtime.c",
|
|
"../../deps/libuv/src/unix/random-getrandom.c",
|
|
}
|