summaryrefslogtreecommitdiffhomepage
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorJoshua Reisenauer <[email protected]>2016-05-23 02:12:22 -0700
committerJoshua Reisenauer <[email protected]>2016-05-23 02:12:22 -0700
commitf74791ed7bcb3585c576f40766bf4e22b0923a7e (patch)
tree564542f7a1c771be655ca892f8a8b930311a9f3e /CMakeLists.txt
parentf232f34981c9ccc757e486c116db6d22d3042694 (diff)
downloadraylib-f74791ed7bcb3585c576f40766bf4e22b0923a7e.tar.gz
raylib-f74791ed7bcb3585c576f40766bf4e22b0923a7e.zip
better build system
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 00000000..8689e9ad
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,32 @@
+cmake_minimum_required (VERSION 3.0)
+project (raylib)
+SET(PLATFORM_TO_USE "PLATFORM_DESKTOP" CACHE STRING "Platform to compile for")
+SET_PROPERTY(CACHE PLATFORM_TO_USE PROPERTY STRINGS PLATFORM_DESKTOP PLATFORM_RPI PLATFORM_WEB)
+
+set(CMAKE_C_FLAGS "-O1 -Wall -std=gnu99 -fgnu89-inline")
+
+IF(${PLATFORM_TO_USE} MATCHES "PLATFORM_DESKTOP")
+
+ add_definitions(-DPLATFORM_DESKTOP, -DGRAPHICS_API_OPENGL_33)
+ include_directories("." "src/" "external/openal_soft/include" "external/glew/include" "external/glfw3/include")
+
+ENDIF()
+
+IF(${PLATFORM_TO_USE} MATCHES "PLATFORM_RPI")
+
+ add_definitions(-DPLATFORM_RPI, -GRAPHICS_API_OPENGL_ES2)
+ include_directories("." "/opt/vc/include" "/opt/vc/include/interface/vmcs_host/linux" "/opt/vc/include/interface/vcos/pthreads")
+
+ENDIF()
+
+IF(${PLATFORM_TO_USE} MATCHES "PLATFORM_WEB")
+
+ add_definitions(-DPLATFORM_WEB, -GRAPHICS_API_OPENGL_ES2)
+ include_directories("." "src/" "external/openal_soft/include" "external/glew/include" "external/glfw3/include")
+
+ENDIF()
+
+
+file(GLOB SOURCES "src/*.c")
+add_library(raylib STATIC ${SOURCES})
+install(TARGETS raylib DESTINATION lib/) \ No newline at end of file