CMakeLists.txt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. cmake_minimum_required(VERSION 2.6)
  2. INCLUDE_DIRECTORIES("${CMAKE_CURRENT_BINARY_DIR}")
  3. INCLUDE_DIRECTORIES("${LUA_INCDIR}")
  4. LINK_DIRECTORIES("${LUA_LIBDIR}")
  5. INCLUDE(CheckIncludeFiles)
  6. INCLUDE(CheckFunctionExists)
  7. INCLUDE(CheckLibraryExists)
  8. IF (UNIX OR NOT WIN32)
  9. CHECK_INCLUDE_FILES(fcntl.h HAVE_FCNTL_H)
  10. CHECK_INCLUDE_FILES(unistd.h HAVE_UNISTD_H)
  11. CHECK_INCLUDE_FILES(dirent.h HAVE_DIRENT_H)
  12. CHECK_INCLUDE_FILES(time.h HAVE_TIME_H)
  13. CHECK_INCLUDE_FILES(sys/time.h HAVE_SYS_TIME_H)
  14. CHECK_INCLUDE_FILES(sys/ndir.h HAVE_SYS_NDIR_H)
  15. CHECK_INCLUDE_FILES(sys/utsname.h HAVE_SYS_UTSNAME_H)
  16. CHECK_INCLUDE_FILES(sys/dir.h HAVE_SYS_DIR_H)
  17. CHECK_INCLUDE_FILES(ndir.h HAVE_NDIR_H)
  18. CHECK_FUNCTION_EXISTS(getcwd HAVE_GETCWD)
  19. CHECK_LIBRARY_EXISTS(dl dlopen "" HAVE_DLOPEN)
  20. ENDIF (UNIX OR NOT WIN32)
  21. CONFIGURE_FILE("paths.h.in" "${CMAKE_CURRENT_BINARY_DIR}/paths.h")
  22. SET(src
  23. "${CMAKE_CURRENT_SOURCE_DIR}/paths.c"
  24. "${CMAKE_CURRENT_BINARY_DIR}/paths.h" )
  25. SET(luasrc
  26. "${CMAKE_CURRENT_SOURCE_DIR}/init.lua")
  27. # When using MSVC
  28. IF(MSVC)
  29. # we want to respect the standard, and we are bored of those **** .
  30. ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE=1)
  31. ENDIF(MSVC)
  32. ADD_LIBRARY("paths" MODULE ${src})
  33. SET_TARGET_PROPERTIES("paths" PROPERTIES
  34. PREFIX "lib"
  35. IMPORT_PREFIX "lib")
  36. IF(APPLE)
  37. SET_TARGET_PROPERTIES("paths" PROPERTIES
  38. LINK_FLAGS "-undefined dynamic_lookup")
  39. ENDIF()
  40. INSTALL(FILES ${luasrc} DESTINATION ${LUADIR}/paths)
  41. INSTALL(TARGETS paths
  42. LIBRARY DESTINATION ${LIBDIR}
  43. RUNTIME DESTINATION ${LIBDIR})
  44. IF(LUALIB)
  45. TARGET_LINK_LIBRARIES(paths ${LUALIB})
  46. ENDIF()