X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=CMakeLists.txt;h=ee7a4fb46f8b4965086511b55b09feaba97a5423;hb=3e5d1e857f4bf0e28d550c4ccf3aaa1617331a8f;hp=c7d9c14c68c465dc00be546dc6804966b9144fbc;hpb=7eafd00a73e1699f0286eb5dbbd80aa1cea5456a;p=freeglut diff --git a/CMakeLists.txt b/CMakeLists.txt index c7d9c14..ee7a4fb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,11 +24,20 @@ set(VERSION_PATCH 0) OPTION(BUILD_SHARED_LIBS "Build FreeGLUT shared library." ON) OPTION(BUILD_STATIC_LIBS "Build FreeGLUT static library." ON) +# option to also copy .pdb files to install directory when executing +# INSTALL target +IF(MSVC) + OPTION(INSTALL_PDB "Also install .pdb files" ON) +ELSE() + SET(INSTALL_PDB OFF) +ENDIF() + # OpenGL ES support OPTION(FREEGLUT_GLES1 "Use OpenGL ES 1.x (requires EGL)" OFF) OPTION(FREEGLUT_GLES2 "Use OpenGL ES 2.x (requires EGL) (overrides BUILD_GLES1)" OFF) + SET(FREEGLUT_HEADERS include/GL/freeglut.h include/GL/freeglut_ext.h @@ -228,6 +237,7 @@ IF(UNIX AND NOT ANDROID) LIST(APPEND LIBS ${X11_Xxf86vm_LIB}) ENDIF() IF(X11_Xinput_FOUND) + # Needed for multi-touch: CHECK_INCLUDE_FILES("${X11_Xinput_INCLUDE_PATH}/X11/extensions/XInput2.h" HAVE_X11_EXTENSIONS_XINPUT2_H) LIST(APPEND LIBS ${X11_Xinput_LIB}) ENDIF() @@ -355,11 +365,22 @@ IF(BUILD_STATIC_LIBS) TARGET_LINK_LIBRARIES(freeglut_static ${LIBS}) ENDIF() + IF(BUILD_SHARED_LIBS) INSTALL(TARGETS freeglut DESTINATION lib) + IF(INSTALL_PDB) + INSTALL(FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/freeglut${CMAKE_DEBUG_POSTFIX}.pdb + DESTINATION lib + CONFIGURATIONS Debug) + ENDIF() ENDIF() IF(BUILD_STATIC_LIBS) INSTALL(TARGETS freeglut_static DESTINATION lib) + IF(INSTALL_PDB) + INSTALL(FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/freeglut_static${CMAKE_DEBUG_POSTFIX}.pdb + DESTINATION lib + CONFIGURATIONS Debug) + ENDIF() ENDIF() INSTALL(FILES ${FREEGLUT_HEADERS} DESTINATION include/GL) @@ -379,11 +400,17 @@ MACRO(ADD_DEMO name) IF(BUILD_SHARED_LIBS) ADD_EXECUTABLE(${name} ${ARGN}) TARGET_LINK_LIBRARIES(${name} ${DEMO_LIBS} freeglut) + IF(WIN32 AND MSVC) + SET_TARGET_PROPERTIES(${name} PROPERTIES DEBUG_POSTFIX d) + ENDIF() ENDIF() IF(BUILD_STATIC_LIBS) ADD_EXECUTABLE(${name}_static ${ARGN}) TARGET_LINK_LIBRARIES(${name}_static ${DEMO_LIBS} freeglut_static) SET_TARGET_PROPERTIES(${name}_static PROPERTIES COMPILE_FLAGS -DFREEGLUT_STATIC) + IF(WIN32 AND MSVC) + SET_TARGET_PROPERTIES(${name}_static PROPERTIES DEBUG_POSTFIX d) + ENDIF() ENDIF() ENDIF() ENDMACRO() @@ -395,7 +422,9 @@ ADD_DEMO(Lorenz progs/demos/Lorenz/lorenz.c) ADD_DEMO(One progs/demos/One/one.c) ADD_DEMO(Resizer progs/demos/Resizer/Resizer.cpp) ADD_DEMO(multi-touch progs/demos/multi-touch/multi-touch.c) -ADD_DEMO(shapes progs/demos/shapes/shapes.c) +ADD_DEMO(shapes progs/demos/shapes/shapes.c + progs/demos/shapes/glmatrix.h + progs/demos/shapes/glmatrix.c) ADD_DEMO(smooth_opengl3 progs/demos/smooth_opengl3/smooth_opengl3.c) IF(UNIX) ADD_DEMO(spaceball progs/demos/spaceball/spaceball.c