[Orxonox-commit 3656] r8341 - in code/branches/kicklib2: cmake/tools src/external/enet src/external/ois src/libraries/core

rgrieder at orxonox.net rgrieder at orxonox.net
Wed Apr 27 02:34:12 CEST 2011


Author: rgrieder
Date: 2011-04-27 02:34:12 +0200 (Wed, 27 Apr 2011)
New Revision: 8341

Modified:
   code/branches/kicklib2/cmake/tools/TargetUtilities.cmake
   code/branches/kicklib2/src/external/enet/CMakeLists.txt
   code/branches/kicklib2/src/external/ois/CMakeLists.txt
   code/branches/kicklib2/src/libraries/core/CMakeLists.txt
Log:
Added new library linking keywords for the Add Target Command.
That makes OS specific library linking less tedious to read.

Modified: code/branches/kicklib2/cmake/tools/TargetUtilities.cmake
===================================================================
--- code/branches/kicklib2/cmake/tools/TargetUtilities.cmake	2011-04-26 20:50:18 UTC (rev 8340)
+++ code/branches/kicklib2/cmake/tools/TargetUtilities.cmake	2011-04-27 00:34:12 UTC (rev 8341)
@@ -42,6 +42,10 @@
  #
  #    Lists:
  #      LINK_LIBRARIES:    Redirects to TARGET_LINK_LIBRARIES
+ #      LINK_LIBS_LINUX:   Redirects to TARGET_LINK_LIBRARIES only on Linux
+ #      LINK_LIBS_WIN32:   Redirects to TARGET_LINK_LIBRARIES only on Windows
+ #      LINK_LIBS_APPLE:   Redirects to TARGET_LINK_LIBRARIES only on Apple
+ #      LINK_LIBS_UNIX:    Redirects to TARGET_LINK_LIBRARIES only on UNIX
  #      VERSION:           Set version to the binary
  #      SOURCE_FILES:      Source files for the target
  #      DEFINE_SYMBOL:     Sets the DEFINE_SYMBOL target property
@@ -85,7 +89,8 @@
                   NO_INSTALL         NO_VERSION        ${_additional_switches})
   SET(_list_names LINK_LIBRARIES     VERSION           SOURCE_FILES
                   DEFINE_SYMBOL      TOLUA_FILES       PCH_FILE
-                  PCH_EXCLUDE        OUTPUT_NAME)
+                  PCH_EXCLUDE        OUTPUT_NAME       LINK_LIBS_LINUX
+                  LINK_LIBS_WIN32    LINK_LIBS_APPLE   LINK_LIBS_UNIX)
 
   PARSE_MACRO_ARGUMENTS("${_switches}" "${_list_names}" ${ARGN})
 
@@ -285,6 +290,18 @@
   IF(_arg_LINK_LIBRARIES)
     TARGET_LINK_LIBRARIES(${_target_name} ${_arg_LINK_LIBRARIES})
   ENDIF()
+  IF(_arg_LINK_LIBS_LINUX AND LINUX)
+    TARGET_LINK_LIBRARIES(${_target_name} ${_arg_LINK_LIBS_LINUX})
+  ENDIF()
+  IF(_arg_LINK_LIBS_WIN32 AND WIN32)
+    TARGET_LINK_LIBRARIES(${_target_name} ${_arg_LINK_LIBS_WIN32})
+  ENDIF()
+  IF(_arg_LINK_LIBS_APPLE AND APPLE)
+    TARGET_LINK_LIBRARIES(${_target_name} ${_arg_LINK_LIBS_APPLE})
+  ENDIF()
+  IF(_arg_LINK_LIBS_UNIX AND UNIX)
+    TARGET_LINK_LIBRARIES(${_target_name} ${_arg_LINK_LIBS_UNIX})
+  ENDIF()
 
   # RPATH settings for the installation
   IF("${_target_type}" STREQUAL "LIBRARY")

Modified: code/branches/kicklib2/src/external/enet/CMakeLists.txt
===================================================================
--- code/branches/kicklib2/src/external/enet/CMakeLists.txt	2011-04-26 20:50:18 UTC (rev 8340)
+++ code/branches/kicklib2/src/external/enet/CMakeLists.txt	2011-04-27 00:34:12 UTC (rev 8341)
@@ -43,14 +43,10 @@
 
 ADD_COMPILER_FLAGS("-DHAS_POLL -DHAS_FCNTL -DHAS_MSGHDR_FLAGS -DHAS_SOCKLEN_T")
 
-IF(WIN32)
-    SET(ENET_WIN_LIBS odbc32 odbccp32 winmm ws2_32)
-ENDIF()
-
 ORXONOX_ADD_LIBRARY(enet_orxonox
     ORXONOX_EXTERNAL
-    VERSION        1.3.0
-    DEFINE_SYMBOL  "ENET_BUILDING_LIB"
-    LINK_LIBRARIES ${ENET_WIN_LIBS}
-    SOURCE_FILES   ${ENET_FILES}
+    VERSION         1.3.0
+    DEFINE_SYMBOL   "ENET_BUILDING_LIB"
+    LINK_LIBS_WIN32 odbc32 odbccp32 winmm ws2_32
+    SOURCE_FILES    ${ENET_FILES}
 )

Modified: code/branches/kicklib2/src/external/ois/CMakeLists.txt
===================================================================
--- code/branches/kicklib2/src/external/ois/CMakeLists.txt	2011-04-26 20:50:18 UTC (rev 8340)
+++ code/branches/kicklib2/src/external/ois/CMakeLists.txt	2011-04-27 00:34:12 UTC (rev 8341)
@@ -63,12 +63,14 @@
     "OIS_NONCLIENT_BUILD"
   VERSION
     1.3
+  LINK_LIBS_WIN32
+    ${DIRECTX_LIBRARIES}
+    ${WMI_LIBRARY}
+  LINK_LIBS_APPLE
+    /System/Library/Frameworks/IOKit.framework
+    /System/Library/Frameworks/Carbon.framework
+  LINK_LIBS_LINUX
+    X11
   SOURCE_FILES
     ${OIS_FILES}
 )
-
-IF(WIN32)
-  TARGET_LINK_LIBRARIES(ois_orxonox ${DIRECTX_LIBRARIES} ${WMI_LIBRARY})
-ELSEIF(APPLE)
-  TARGET_LINK_LIBRARIES(ois_orxonox "/System/Library/Frameworks/IOKit.framework" "/System/Library/Frameworks/Carbon.framework")
-ENDIF()

Modified: code/branches/kicklib2/src/libraries/core/CMakeLists.txt
===================================================================
--- code/branches/kicklib2/src/libraries/core/CMakeLists.txt	2011-04-26 20:50:18 UTC (rev 8340)
+++ code/branches/kicklib2/src/libraries/core/CMakeLists.txt	2011-04-27 00:34:12 UTC (rev 8341)
@@ -103,6 +103,9 @@
     ois_orxonox
     tinyxml_orxonox
     util
+  LINK_LIBS_UNIX
+    dl
+    pthread
   SOURCE_FILES
     ${CORE_SRC_FILES}
 )




More information about the Orxonox-commit mailing list