changeset 1006:5eaa2a6aa0dc

misc: many fixes for Linux
author David Demelier <markand@malikania.fr>
date Tue, 16 Feb 2021 20:33:18 +0100
parents ea9cf916330d
children 936cbd66b4b8
files CMakeLists.txt irccd/CMakeLists.txt irccd/dl-plugin.c lib/CMakeLists.txt tests/CMakeLists.txt
diffstat 5 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/CMakeLists.txt	Tue Feb 16 19:54:16 2021 +0100
+++ b/CMakeLists.txt	Tue Feb 16 20:33:18 2021 +0100
@@ -36,6 +36,8 @@
 	set(CMAKE_C_FLAGS "-Wall -Wextra ${CMAKE_C_FLAGS}")
 endif ()
 
+set(CMAKE_POSITION_INDEPENDENT_CODE On)
+
 include(GNUInstallDirs)
 
 include(cmake/IrccdDefinePlugin.cmake)
--- a/irccd/CMakeLists.txt	Tue Feb 16 19:54:16 2021 +0100
+++ b/irccd/CMakeLists.txt	Tue Feb 16 20:33:18 2021 +0100
@@ -90,6 +90,8 @@
 	${BISON_irccd-conf_OUTPUTS}
 	${FLEX_irccd-lex_OUTPUTS}
 )
+
+set_target_properties(irccd PROPERTIES ENABLE_EXPORTS On)
 target_link_libraries(irccd irccd-fe)
 install(TARGETS irccd DESTINATION ${CMAKE_INSTALL_BINDIR})
 
--- a/irccd/dl-plugin.c	Tue Feb 16 19:54:16 2021 +0100
+++ b/irccd/dl-plugin.c	Tue Feb 16 20:33:18 2021 +0100
@@ -203,7 +203,7 @@
 	if (stat(path, &st) < 0 && errno == ENOENT)
 		return NULL;
 
-	if (!(self.handle = dlopen(path, RTLD_NOW))) {
+	if (!(self.handle = dlopen(path, RTLD_NOW | RTLD_GLOBAL))) {
 		irc_log_warn("plugin: %s: %s", path, dlerror());
 		return NULL;
 	}
--- a/lib/CMakeLists.txt	Tue Feb 16 19:54:16 2021 +0100
+++ b/lib/CMakeLists.txt	Tue Feb 16 20:33:18 2021 +0100
@@ -65,6 +65,8 @@
 add_library(libirccd INTERFACE)
 add_library(irccd::libirccd ALIAS libirccd)
 
+get_target_property(COMPAT_INCS libirccd-compat INCLUDE_DIRECTORIES)
+
 target_include_directories(libirccd INTERFACE
 	$<BUILD_INTERFACE:${libirccd-compat_BINARY_DIR}>
 	$<BUILD_INTERFACE:${libirccd_SOURCE_DIR}>
@@ -73,6 +75,7 @@
 	$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
 	$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/irccd/extern>
 	${OPENSSL_INCLUDE_DIR}
+	${COMPAT_INCS}
 )
 
 target_include_directories(
--- a/tests/CMakeLists.txt	Tue Feb 16 19:54:16 2021 +0100
+++ b/tests/CMakeLists.txt	Tue Feb 16 20:33:18 2021 +0100
@@ -69,7 +69,7 @@
 	add_executable(${t} ${t}.c)
 	add_test(${t} ${t})
 	target_link_libraries(${t} irccd-fe libirccd-greatest)
-	set_target_properties(${t} PROPERTIES FOLDER "tests")
+	set_target_properties(${t} PROPERTIES FOLDER "tests" ENABLE_EXPORTS On)
 	target_compile_definitions(
 		${t}
 		PRIVATE