CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. cmake_minimum_required(VERSION 3.10)
  2. project(lua)
  3. set(LUA_VERSION_MAJOR 5)
  4. set(LUA_VERSION_MINOR 4)
  5. set(LUA_VERSION_PATCH 4)
  6. set(PJN_LUAEXE "lua")
  7. set(PJN_LUALIB "lualib")
  8. set(LUA_SRC
  9. src/lapi.c
  10. src/lcode.c
  11. src/lctype.c
  12. src/ldebug.c
  13. src/ldo.c
  14. src/ldump.c
  15. src/lfunc.c
  16. src/lgc.c
  17. src/llex.c
  18. src/lmem.c
  19. src/lobject.c
  20. src/lopcodes.c
  21. src/lparser.c
  22. src/lstate.c
  23. src/lstring.c
  24. src/ltable.c
  25. src/ltm.c
  26. src/lundump.c
  27. src/lvm.c
  28. src/lzio.c
  29. src/lauxlib.c
  30. src/lbaselib.c
  31. src/lcorolib.c
  32. src/ldblib.c
  33. src/liolib.c
  34. src/lmathlib.c
  35. src/loslib.c
  36. src/lstrlib.c
  37. src/ltablib.c
  38. src/lutf8lib.c
  39. src/loadlib.c
  40. src/linit.c
  41. )
  42. include_directories(${PJN_LUALIB} include)
  43. include_directories(${PJN_LUAEXE} include)
  44. add_library(${PJN_LUALIB} STATIC ${LUA_SRC})
  45. add_executable(${PJN_LUAEXE} src/lua.c)
  46. target_link_libraries(${PJN_LUAEXE} ${PJN_LUALIB})
  47. set_target_properties(${PJN_LUAEXE} PROPERTIES OUTPUT_NAME lua)
  48. set_target_properties(${PJN_LUALIB} PROPERTIES OUTPUT_NAME lua)
  49. #set_target_properties(${PJN_LUAEXE} PROPERTIES OUTPUT_NAME_DEBUG "${PJN_LUAEXE}_d" OUTPUT_NAME_RELEASE ${PJN_LUAEXE})
  50. #set_target_properties(${PJN_LUALIB} PROPERTIES OUTPUT_NAME_DEBUG "${PJN_LUALIB}_d" OUTPUT_NAME_RELEASE ${PJN_LUALIB})
  51. set_property(TARGET ${PJN_LUALIB} PROPERTY FOLDER "3rdparty")
  52. set_property(TARGET ${PJN_LUAEXE} PROPERTY FOLDER "3rdparty")
  53. install(TARGETS ${PJN_LUAEXE} DESTINATION $<IF:$<CONFIG:Debug>,bin/debug/3rdparty,bin/release/3rdparty>)
  54. install(DIRECTORY include DESTINATION bin/debug/3rdparty)
  55. install(DIRECTORY include DESTINATION bin/release/3rdparty)
  56. install(TARGETS ${PJN_LUALIB} DESTINATION $<IF:$<CONFIG:Debug>,bin/debug/3rdparty/lib,bin/release/3rdparty/lib>)