Adding header files to the "freeglut" projects per e-mail from Paul Martz dated 1...
[freeglut] / CMakeLists.txt
index 85795a0..60f5d5d 100644 (file)
@@ -1,7 +1,14 @@
 PROJECT(freeglut)\r
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)\r
 \r
+SET(FREEGLUT_HEADERS\r
+       include/GL/freeglut.h\r
+       include/GL/freeglut_ext.h\r
+       include/GL/freeglut_std.h\r
+       include/GL/glut.h\r
+)\r
 SET(FREEGLUT_SRCS\r
+       ${FREEGLUT_HEADERS}\r
        src/freeglut_callbacks.c\r
        src/freeglut_cursor.c\r
        src/freeglut_display.c\r
@@ -29,11 +36,11 @@ SET(FREEGLUT_SRCS
        src/freeglut_xinput.c\r
 )\r
 \r
-IF(WIN32)\r
-       LIST(APPEND FREEGLUT_SRCS src/freeglut_windows.c)\r
-ELSE()\r
-       LIST(APPEND FREEGLUT_SRCS src/freeglut_x11.c)\r
-ENDIF()\r
+#IF(WIN32)\r
+#      LIST(APPEND FREEGLUT_SRCS src/freeglut_windows.c)\r
+#ELSE()\r
+#      LIST(APPEND FREEGLUT_SRCS src/freeglut_x11.c)\r
+#ENDIF()\r
 \r
 # Neatly organize all of the output files in the build directory\r
 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)\r
@@ -90,24 +97,30 @@ IF(NOT BUILD_SHARED_LIBS)
 ENDIF()\r
 \r
 INSTALL(TARGETS freeglut DESTINATION lib)\r
-INSTALL(DIRECTORY "${CMAKE_SOURCE_DIR}/include/GL" DESTINATION include\r
-               FILES_MATCHING PATTERN "*.h")\r
+INSTALL(FILES ${FREEGLUT_HEADERS} DESTINATION include/GL)\r
+\r
+# Optionally build demos, on by default.\r
+option( FREEGLUT_BUILD_DEMOS "Build FreeGLUT demos." ON )\r
 \r
 MACRO(ADD_DEMO name)\r
-       ADD_EXECUTABLE(${name} ${ARGN})\r
-       TARGET_LINK_LIBRARIES(${name} freeglut)\r
-       INSTALL(TARGETS ${name} DESTINATION bin)\r
+       if( FREEGLUT_BUILD_DEMOS )\r
+               ADD_EXECUTABLE(${name} ${ARGN})\r
+               TARGET_LINK_LIBRARIES(${name} freeglut)\r
+               INSTALL(TARGETS ${name} DESTINATION bin)\r
+       endif()\r
 ENDMACRO()\r
 \r
 ADD_DEMO(CallbackMaker   progs/demos/CallbackMaker/CallbackMaker.c)\r
-ADD_DEMO(Fractals        progs/demos/Fractals/Fractals.c)\r
-ADD_DEMO(Fractals_random progs/demos/Fractals_random/Fractals_random.c)\r
-ADD_DEMO(Lorenz          progs/demos/Lorenz/Lorenz.c)\r
-ADD_DEMO(One             progs/demos/One/One.c)\r
-ADD_DEMO(Resizer         progs/demos/Resizer/Resizer.c)\r
+ADD_DEMO(Fractals        progs/demos/Fractals/fractals.c)\r
+ADD_DEMO(Fractals_random progs/demos/Fractals_random/fractals_random.c)\r
+ADD_DEMO(Lorenz          progs/demos/Lorenz/lorenz.c)\r
+ADD_DEMO(One             progs/demos/One/one.c)\r
+ADD_DEMO(Resizer         progs/demos/Resizer/Resizer.cpp)\r
 ADD_DEMO(shapes          progs/demos/shapes/shapes.c)\r
 ADD_DEMO(smooth_opengl3  progs/demos/smooth_opengl3/smooth_opengl3.c)\r
-ADD_DEMO(spaceball       progs/demos/spaceball/spaceball.c)\r
+ADD_DEMO(spaceball       progs/demos/spaceball/spaceball.c\r
+                         progs/demos/spaceball/vmath.c\r
+                         progs/demos/spaceball/vmath.h)\r
 ADD_DEMO(subwin          progs/demos/subwin/subwin.c)\r
 \r
 \r