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
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
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