diff libmlk-core/CMakeLists.txt @ 584:f2737a931658

cmake: start installing
author David Demelier <markand@malikania.fr>
date Sat, 18 Mar 2023 10:57:29 +0100
parents cedfdbc0e9a7
children 4349b591c3ac
line wrap: on
line diff
--- a/libmlk-core/CMakeLists.txt	Mon Mar 13 13:07:48 2023 +0100
+++ b/libmlk-core/CMakeLists.txt	Sat Mar 18 10:57:29 2023 +0100
@@ -20,62 +20,68 @@
 
 set(
 	SOURCES
+	${libmlk-core_SOURCE_DIR}/mlk/core/game.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/sprite.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/trace.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/maths.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/sys.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/util.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/drawable-stack.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/action-script.c
-	${libmlk-core_SOURCE_DIR}/mlk/core/action-script.h
+	${libmlk-core_SOURCE_DIR}/mlk/core/state.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/texture.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/font.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/painter.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/panic.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/gamepad.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/image.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/alloc.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/clock.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/action-stack.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/core.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/animation.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/err.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/music.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/sound.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/event.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/drawable.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/action.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/window.c
+)
+
+set(
+	HEADERS
+	${libmlk-core_SOURCE_DIR}/mlk/core/action-script.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/action-stack.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/action.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/action.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/alloc.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/alloc.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/animation.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/animation.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/clock.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/clock.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/color.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/core.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/core.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/drawable-stack.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/drawable-stack.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/drawable.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/drawable.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/err.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/err.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/event.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/event.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/font.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/font.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/game.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/game.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/image.c
+	${libmlk-core_SOURCE_DIR}/mlk/core/gamepad.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/image.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/key.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/maths.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/maths.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/mouse.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/music.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/music.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/painter.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/painter.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/panic.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/panic.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/sound.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/sound.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/sprite.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/sprite.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/state.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/state.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/sys.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/sys.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/sys_p.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/texture.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/texture.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/texture_p.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/trace.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/trace.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/util.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/util.h
-	${libmlk-core_SOURCE_DIR}/mlk/core/window.c
 	${libmlk-core_SOURCE_DIR}/mlk/core/window.h
 	${libmlk-core_SOURCE_DIR}/mlk/core/window_p.h
 )
@@ -89,14 +95,6 @@
 	list(APPEND LIBRARIES ${Intl_LIBRARIES})
 endif ()
 
-if (MLK_WITH_ZSTD)
-	list(APPEND LIBRARIES ZSTD::ZSTD)
-endif ()
-
-if (MLK_WITH_ZIP)
-	list(APPEND LIBRARIES Libzip::Libzip)
-endif ()
-
 if (CMAKE_SYSTEM_NAME MATCHES "Windows")
 	list(APPEND LIBRARIES shlwapi)
 endif ()
@@ -107,8 +105,11 @@
 
 mlk_library(
 	NAME libmlk-core
-	SOURCES ${SOURCES} ${NLS}
+	SOURCES ${HEADERS} ${NLS} ${SOURCES}
+	HEADERS ${HEADERS}
+	HEADERS_DIRECTORY mlk/core
 	LANGS ${NLS}
+	INSTALL
 	LIBRARIES
 		PUBLIC
 			${LIBRARIES}
@@ -120,8 +121,8 @@
 			libmlk-util
 	INCLUDES
 		PUBLIC
+			$<BUILD_INTERFACE:${libmlk-core_SOURCE_DIR}>
 			${OPENAL_INCLUDE_DIR}
-			$<BUILD_INTERFACE:${libmlk-core_SOURCE_DIR}>
 )
 
 source_group(TREE ${libmlk-core_SOURCE_DIR} FILES ${SOURCES} ${NLS})