Mercurial > hg > orthanc
annotate Resources/CMake/LuaConfiguration.cmake @ 3057:87f52703ebbc db-changes
reorganization
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 21 Dec 2018 14:12:14 +0100 |
parents | 11f8d72f366f |
children | 0c2a8d5e0097 |
rev | line source |
---|---|
735 | 1 if (STATIC_BUILD OR NOT USE_SYSTEM_LUA) |
2947 | 2 SET(LUA_SOURCES_DIR ${CMAKE_BINARY_DIR}/lua-5.3.5) |
3 SET(LUA_MD5 "4f4b4f323fd3514a68e0ab3da8ce3455") | |
4 SET(LUA_URL "http://www.orthanc-server.com/downloads/third-party/lua-5.3.5.tar.gz") | |
1537
fbf763bb1fa3
error detection in patches
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1487
diff
changeset
|
5 |
fbf763bb1fa3
error detection in patches
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
1487
diff
changeset
|
6 DownloadPackage(${LUA_MD5} ${LUA_URL} "${LUA_SOURCES_DIR}") |
735 | 7 |
2478
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
8 if (ENABLE_LUA_MODULES) |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
9 if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux" OR |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
10 ${CMAKE_SYSTEM_NAME} STREQUAL "kFreeBSD" OR |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
11 ${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD" OR |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
12 ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD") |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
13 # Enable loading of shared libraries (for UNIX-like) |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
14 add_definitions(-DLUA_USE_DLOPEN=1) |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
15 |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
16 # Publish the functions of the Lua engine (that are built within |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
17 # the Orthanc binary) as global symbols, so that the external |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
18 # shared libraries can call them |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
19 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--export-dynamic") |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
20 |
2947 | 21 if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux" OR |
22 ${CMAKE_SYSTEM_NAME} STREQUAL "kFreeBSD") | |
23 add_definitions(-DLUA_USE_LINUX=1) | |
24 elseif (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") | |
25 add_definitions( | |
26 -DLUA_USE_LINUX=1 | |
27 -DLUA_USE_READLINE=1 | |
28 ) | |
29 elseif (${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD") | |
30 add_definitions(-DLUA_USE_POSIX=1) | |
31 endif() | |
32 | |
2478
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
33 elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Windows") |
2947 | 34 add_definitions( |
35 -DLUA_DL_DLL=1 # Enable loading of shared libraries (for Microsoft Windows) | |
36 ) | |
2478
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
37 |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
38 elseif (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") |
2947 | 39 add_definitions( |
40 -DLUA_USE_MACOSX=1 | |
41 -DLUA_DL_DYLD=1 # Enable loading of shared libraries (for Apple OS X) | |
42 ) | |
2478
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
43 |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
44 else() |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
45 message(FATAL_ERROR "Support your platform here") |
1e2d5e14b3d3
New CMake option: ENABLE_LUA_MODULES to enable Lua modules
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
2477
diff
changeset
|
46 endif() |
2477 | 47 endif() |
735 | 48 |
2947 | 49 add_definitions( |
50 -DLUA_COMPAT_5_2=1 | |
51 ) | |
52 | |
735 | 53 include_directories( |
54 ${LUA_SOURCES_DIR}/src | |
55 ) | |
56 | |
57 set(LUA_SOURCES | |
2947 | 58 # Don't compile the Lua command-line |
59 #${LUA_SOURCES_DIR}/src/lua.c | |
60 #${LUA_SOURCES_DIR}/src/luac.c | |
61 | |
735 | 62 # Core Lua |
63 ${LUA_SOURCES_DIR}/src/lapi.c | |
2947 | 64 ${LUA_SOURCES_DIR}/src/lcode.c |
65 ${LUA_SOURCES_DIR}/src/lctype.c | |
66 ${LUA_SOURCES_DIR}/src/ldebug.c | |
67 ${LUA_SOURCES_DIR}/src/ldo.c | |
68 ${LUA_SOURCES_DIR}/src/ldump.c | |
69 ${LUA_SOURCES_DIR}/src/lfunc.c | |
735 | 70 ${LUA_SOURCES_DIR}/src/lgc.c |
71 ${LUA_SOURCES_DIR}/src/llex.c | |
2947 | 72 ${LUA_SOURCES_DIR}/src/lmem.c |
73 ${LUA_SOURCES_DIR}/src/lobject.c | |
74 ${LUA_SOURCES_DIR}/src/lopcodes.c | |
735 | 75 ${LUA_SOURCES_DIR}/src/lparser.c |
2947 | 76 ${LUA_SOURCES_DIR}/src/lstate.c |
735 | 77 ${LUA_SOURCES_DIR}/src/lstring.c |
78 ${LUA_SOURCES_DIR}/src/ltable.c | |
79 ${LUA_SOURCES_DIR}/src/ltm.c | |
2947 | 80 ${LUA_SOURCES_DIR}/src/lundump.c |
81 ${LUA_SOURCES_DIR}/src/lvm.c | |
735 | 82 ${LUA_SOURCES_DIR}/src/lzio.c |
83 | |
84 # Base Lua modules | |
85 ${LUA_SOURCES_DIR}/src/lauxlib.c | |
86 ${LUA_SOURCES_DIR}/src/lbaselib.c | |
2947 | 87 ${LUA_SOURCES_DIR}/src/lbitlib.c |
88 ${LUA_SOURCES_DIR}/src/lcorolib.c | |
735 | 89 ${LUA_SOURCES_DIR}/src/ldblib.c |
90 ${LUA_SOURCES_DIR}/src/liolib.c | |
91 ${LUA_SOURCES_DIR}/src/lmathlib.c | |
2947 | 92 ${LUA_SOURCES_DIR}/src/loadlib.c |
735 | 93 ${LUA_SOURCES_DIR}/src/loslib.c |
2947 | 94 ${LUA_SOURCES_DIR}/src/lstrlib.c |
735 | 95 ${LUA_SOURCES_DIR}/src/ltablib.c |
2947 | 96 ${LUA_SOURCES_DIR}/src/lutf8lib.c |
97 | |
735 | 98 ${LUA_SOURCES_DIR}/src/linit.c |
99 ) | |
100 | |
101 source_group(ThirdParty\\Lua REGULAR_EXPRESSION ${LUA_SOURCES_DIR}/.*) | |
102 | |
103 else() | |
104 include(FindLua51) | |
105 | |
106 if (NOT LUA51_FOUND) | |
107 message(FATAL_ERROR "Please install the liblua-dev package") | |
108 endif() | |
109 | |
110 include_directories(${LUA_INCLUDE_DIR}) | |
111 link_libraries(${LUA_LIBRARIES}) | |
112 endif() |