CMakeLists.txt 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. cmake_minimum_required(VERSION 2.8)
  2. project(lua51)
  3. option(LUA_BUILD_SHARED "Build shared library" ON)
  4. option(LUA_BUILD_STATIC "Build static library" OFF)
  5. set(LUA_SRC
  6. src/lapi.c
  7. src/lauxlib.c
  8. src/lbaselib.c
  9. src/lcode.c
  10. src/ldblib.c
  11. src/ldebug.c
  12. src/ldo.c
  13. src/ldump.c
  14. src/lfunc.c
  15. src/lgc.c
  16. src/linit.c
  17. src/liolib.c
  18. src/llex.c
  19. src/lmathlib.c
  20. src/lmem.c
  21. src/loadlib.c
  22. src/lobject.c
  23. src/lopcodes.c
  24. src/loslib.c
  25. src/lparser.c
  26. src/lstate.c
  27. src/lstring.c
  28. src/lstrlib.c
  29. src/ltable.c
  30. src/ltablib.c
  31. src/ltm.c
  32. src/lundump.c
  33. src/lvm.c
  34. src/lzio.c
  35. src/print.c
  36. )
  37. if (LUA_BUILD_STATIC)
  38. add_library(lua51-static STATIC ${LUA_SRC})
  39. target_include_directories(lua51-static PUBLIC src)
  40. endif()
  41. if (LUA_BUILD_SHARED)
  42. add_library(lua51 SHARED ${LUA_SRC})
  43. target_include_directories(lua51 PUBLIC src)
  44. if(MSVC)
  45. set_property(TARGET lua51 PROPERTY COMPILE_DEFINITIONS LUA_BUILD_AS_DLL=1)
  46. endif()
  47. install(TARGETS lua51 RUNTIME DESTINATION . LIBRARY DESTINATION .)
  48. endif()