diff lib/CMakeLists.txt @ 160:c1acfacc46bd

Irccd: dll export and style
author David Demelier <markand@malikania.fr>
date Tue, 24 May 2016 13:00:35 +0200
parents ff26bd33a45d
children 6635b9187d71
line wrap: on
line diff
--- a/lib/CMakeLists.txt	Mon May 23 14:05:41 2016 +0200
+++ b/lib/CMakeLists.txt	Tue May 24 13:00:35 2016 +0200
@@ -34,8 +34,14 @@
 		${OPENSSL_INCLUDE_DIR}
 )
 
+source_group(irccd FILES ${HEADERS} ${SOURCES})
+
 if (IRCCD_SYSTEM_WINDOWS)
 	list(APPEND LIBRARIES ws2_32 shlwapi)
+
+	if (BUILD_SHARED_LIBS)
+		list(APPEND FLAGS IRCCD_BUILDING_DLL)
+	endif ()
 elseif (IRCCD_SYSTEM_MAC)
 	list(APPEND LIBRARIES resolv)
 elseif (IRCCD_SYSTEM_LINUX)
@@ -43,12 +49,18 @@
 endif ()
 
 target_link_libraries(libirccd extern-duktape extern-ircclient extern-jansson extern-cppformat ${LIBRARIES})
+target_compile_definitions(libirccd PRIVATE ${FLAGS})
 
 set_target_properties(
 	libirccd
 	PROPERTIES
 		PREFIX ""
 		OUTPUT_NAME_DEBUG libirccd2d
+		RUNTIME_OUTPUT_DIRECTORY ${IRCCD_FAKEROOTDIR}/${WITH_BINDIR}
+		RUNTIME_OUTPUT_DIRECTORY_DEBUG ${IRCCD_FAKEROOTDIR}/${WITH_BINDIR}
+		RUNTIME_OUTPUT_DIRECTORY_RELEASE ${IRCCD_FAKEROOTDIR}/${WITH_BINDIR}
+		RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO ${IRCCD_FAKEROOTDIR}/${WITH_BINDIR}
+		RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL ${IRCCD_FAKEROOTDIR}/${WITH_BINDIR}
 		VERSION ${IRCCD_VERSION}
 		SOVERSION ${IRCCD_VERSION_SHLIB}
 )