summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt11
-rw-r--r--lib/lua/CMakeLists.txt2
-rw-r--r--lib/sqlite/CMakeLists.txt2
3 files changed, 13 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 451854074..135826abc 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -97,6 +97,17 @@ if (WIN32)
add_definitions(-DLUA_BUILD_AS_DLL)
endif()
+#On Unix we use two dynamic loading libraries dl and ltdl.
+#Preference is for dl on unknown systems as it is specified in POSIX
+#the dynamic loader is used by lua and sqllite.
+if (UNIX)
+ if(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
+ set(DYNAMIC_LOADER ltdl)
+ else()
+ set(DYNAMIC_LOADER dl)
+ endif()
+endif()
+
# The Expat library is linked in statically, make the source files aware of that:
add_definitions(-DXML_STATIC)
diff --git a/lib/lua/CMakeLists.txt b/lib/lua/CMakeLists.txt
index 63ac18e90..b4b5b5f1d 100644
--- a/lib/lua/CMakeLists.txt
+++ b/lib/lua/CMakeLists.txt
@@ -26,5 +26,5 @@ else()
endif()
if (UNIX)
- target_link_libraries(lua m dl)
+ target_link_libraries(lua m ${DYNAMIC_LOADER})
endif()
diff --git a/lib/sqlite/CMakeLists.txt b/lib/sqlite/CMakeLists.txt
index 07e5a22cb..0815127ef 100644
--- a/lib/sqlite/CMakeLists.txt
+++ b/lib/sqlite/CMakeLists.txt
@@ -21,5 +21,5 @@ endif()
add_library(sqlite ${SOURCE})
if (UNIX)
- target_link_libraries(sqlite dl)
+ target_link_libraries(sqlite ${DYNAMIC_LOADER})
endif()