CMake:
authorsmxx
Fri, 26 Mar 2010 00:37:36 +0000
changeset 3067 330e60f5dde8
parent 3066 5c0efa437728
child 3068 04ea12322a08
CMake: * Finally auto detect Lua system libraries on ALL unix/linux systems (hope so) * Fixed first time configure for hwengine (tried to set LUA_LIBRARY before triggering detection)
cmake_modules/FindLua.cmake
hedgewars/CMakeLists.txt
--- a/cmake_modules/FindLua.cmake	Fri Mar 26 00:26:32 2010 +0000
+++ b/cmake_modules/FindLua.cmake	Fri Mar 26 00:37:36 2010 +0000
@@ -3,13 +3,17 @@
 
 IF(NOT LUA_LIBRARY)
 	IF(WIN32)
-		set(LUA_DEFAULT lua.dll)
+		SET(LUA_DEFAULT lua.dll)
 	ELSE(WIN32)
 		IF(APPLE)
-			set(LUA_DEFAULT lua)
+			SET(LUA_DEFAULT lua)
 		ELSE(APPLE)
-			set(LUA_DEFAULT lua5.1.so)
+			#locate the system's lua library
+			FIND_LIBRARY(LUA_DEFAULT NAMES lua51 lua5.1 lua-5.1 lua PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib)
+			#remove the path (fpc doesn't like it - why?)
+			GET_FILENAME_COMPONENT(LUA_DEFAULT ${LUA_DEFAULT} NAME)
 		ENDIF(APPLE)
 	ENDIF(WIN32)
 	SET(LUA_LIBRARY ${LUA_DEFAULT} CACHE STRING "Lua library to link to; file name without path only!")
+	UNSET(LUA_DEFAULT)
 ENDIF(NOT LUA_LIBRARY)
\ No newline at end of file
--- a/hedgewars/CMakeLists.txt	Fri Mar 26 00:26:32 2010 +0000
+++ b/hedgewars/CMakeLists.txt	Fri Mar 26 00:37:36 2010 +0000
@@ -1,5 +1,3 @@
-configure_file(${hedgewars_SOURCE_DIR}/hedgewars/config.inc.in ${CMAKE_CURRENT_BINARY_DIR}/config.inc)
-
 find_package(SDL)
 find_package(SDL_image)
 find_package(SDL_net)
@@ -7,6 +5,8 @@
 find_package(SDL_mixer)
 find_package(Lua)
 
+configure_file(${hedgewars_SOURCE_DIR}/hedgewars/config.inc.in ${CMAKE_CURRENT_BINARY_DIR}/config.inc)
+
 #find which version of SDL_image and SDL_mixer we have (for IMG_Init and Mix_Init)
 #if the headers are not installed, the newer apis won't be activated
 find_file(sdlmixer_h SDL_mixer.h ${SDLMIXER_INCLUDE_DIR})