Making the building of demo programs optional, but enabled by default per e-mail...
[freeglut] / CMakeLists.txt
index 85795a0..c25947c 100644 (file)
@@ -29,11 +29,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
@@ -93,21 +93,28 @@ INSTALL(TARGETS freeglut DESTINATION lib)
 INSTALL(DIRECTORY "${CMAKE_SOURCE_DIR}/include/GL" DESTINATION include\r
                FILES_MATCHING PATTERN "*.h")\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