Jelajahi Sumber

Move linux stuff to a separate library

Daniele Bartolini 13 tahun lalu
induk
melakukan
049dc81b51
3 mengubah file dengan 33 tambahan dan 28 penghapusan
  1. 2 0
      CMakeLists.txt
  2. 6 28
      src/CMakeLists.txt
  3. 25 0
      src/os/linux/CMakeLists.txt

+ 2 - 0
CMakeLists.txt

@@ -57,10 +57,12 @@ endif (CROWN_BUILD_TESTS)
 # detect operating system
 if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
 	set(LINUX 1)
+	add_subdirectory(src/os/linux)
 endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
 
 if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
 	set (WINDOWS 1)
+	add_subdirectory(src/os/win)
 endif (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
 
 # set config options

+ 6 - 28
src/CMakeLists.txt

@@ -230,26 +230,6 @@ set (OS_SRC
 	os/OS.cpp
 )
 
-set (LINUX_SRC
-#	EGLRenderWindow.cpp
-	os/linux/GLXRenderWindow.cpp
-	os/linux/LinuxOS.cpp
-	os/linux/Input.cpp
-	os/linux/LinuxTCPSocket.cpp
-	os/linux/LinuxUDPSocket.cpp	
-	os/linux/File.cpp
-)
-
-set (LINUX_HEADERS
-	os/linux/File.h
-#	os/linux/EGLRenderWindow.h
-)
-
-set (WIN_SRC
-#	os/win/WinTCPSocket.cpp
-#	os/win/WinUDPSocket.cpp
-)
-
 set (NETWORK_SRC
 	network/BitMessage.cpp
 	network/AsyncConnection.cpp
@@ -287,17 +267,15 @@ set (SOURCES
 	${INPUT_SRC}
 	${INPUT_HEADERS}
 
-	${OS_SRC}
-	${OS_HEADERS}
-	${LINUX_SRC}
-	${LINUX_HEADERS}
-	${WIN_SRC}
+	${RENDERERS_SRC}
+	${RENDERERS_HEADERS}
+
 	${NETWORK_SRC}
 	${NETWORK_HEADERS}
 
-	${RENDERERS_SRC}
-	${RENDERERS_HEADERS}
+	${OS_SRC}
+	${OS_HEADERS}
 )
 
-link_libraries(X11 Xrandr rt z pthread)
+link_libraries(rt z)
 add_library(crown STATIC ${SOURCES})

+ 25 - 0
src/os/linux/CMakeLists.txt

@@ -0,0 +1,25 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(crown-linux)
+
+set (LINUX_SRC
+#	EGLRenderWindow.cpp
+	GLXRenderWindow.cpp
+	LinuxOS.cpp
+	Input.cpp
+	LinuxTCPSocket.cpp
+	LinuxUDPSocket.cpp	
+	File.cpp
+)
+
+set (LINUX_HEADERS
+	File.h
+#	EGLRenderWindow.h
+)
+
+link_libraries(X11 Xrandr pthread)
+
+add_library(crown-linux STATIC ${LINUX_SRC} ${LINUX_HEADERS})
+
+target_link_libraries(crown-linux crown)
+