summaryrefslogtreecommitdiffhomepage
path: root/examples/CMakeLists.txt
diff options
context:
space:
mode:
authorASDF <[email protected]>2017-07-22 19:45:36 -0400
committerBenjamin N. summerton <[email protected]>2017-08-27 13:28:02 -0400
commite173db19f7f8e7e79c3f0cd6b88c207561bfa28b (patch)
tree07105964919c99674aab2b9e6459ab2639b365c8 /examples/CMakeLists.txt
parent0fc1323c80c2501c36741c05fd771ac1d001d049 (diff)
downloadraylib-e173db19f7f8e7e79c3f0cd6b88c207561bfa28b.tar.gz
raylib-e173db19f7f8e7e79c3f0cd6b88c207561bfa28b.zip
CMake based build system.
Some people might find this handly
Diffstat (limited to 'examples/CMakeLists.txt')
-rw-r--r--examples/CMakeLists.txt39
1 files changed, 39 insertions, 0 deletions
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
new file mode 100644
index 00000000..354a1373
--- /dev/null
+++ b/examples/CMakeLists.txt
@@ -0,0 +1,39 @@
+# Setup the project and settings
+project(examples)
+
+include("../utils.cmake")
+
+# Make sure raylib has been built
+# TODO `build` directory should maybe be something else...
+# TODO place somewhere else?
+include_directories("../build/release")
+
+# Get the sources together
+set(example_dirs audio core models others physac shaders text texutures)
+set(example_sources)
+set(example_resources)
+foreach(example_dir ${example_dirs})
+ # Get the .c files
+ file(GLOB sources ${example_dir}/*.c)
+ list(APPEND example_sources ${sources})
+
+ # Any any resources
+ file(GLOB resources ${example_dir}/resources/*)
+ list(APPEND example_resources ${resources})
+endforeach()
+
+# Do each example
+foreach(example_source ${example_sources})
+ # Create the basename for the example
+ get_filename_component(example_name ${example_source} NAME)
+ string(REPLACE ".c" "" example_name ${example_name})
+
+ # Setup the example
+ add_executable(${example_name} ${example_source})
+
+ # Link the libraries
+ link_libraries_to_executable(${example_name})
+endforeach()
+
+# Copy all of the resource files to the destination
+file(COPY ${example_resources} DESTINATION "resources/")