+
+
+
+# pkg-config support, to install at $(libdir)/pkgconfig
+# Define static build dependencies
+IF(WIN32)
+ SET(PC_LIBS_PRIVATE "-lopengl32 -lwinmm -lgdi32 -lm")
+ELSEIF(FREEGLUT_GLES)
+ IF(ANDROID)
+ SET(PC_LIBS_PRIVATE "-llog -landroid -lGLESv2 -lGLESv1_CM -lEGL -lm")
+ ELSEIF(BLACKBERRY)
+ IF(PLAYBOOK)
+ SET(PC_LIBS_PRIVATE "-lbps -lscreen -lGLESv2 -lGLESv1_CM -lEGL -lm")
+ ELSE()
+ SET(PC_LIBS_PRIVATE "-lbps -lslog2 -lscreen -lGLESv2 -lGLESv1_CM -lEGL -lm")
+ ENDIF()
+ ELSEIF(FREEGLUT_WAYLAND)
+ SET(PC_LIBS_PRIVATE "-lwayland-client -lwayland-cursor -lwayland-egl -lGLESv2 -lGLESv1_CM -lEGL -lxkbcommon -lm")
+ ELSE()
+ SET(PC_LIBS_PRIVATE "-lX11 -lXxf86vm -lXrandr -lGLESv2 -lGLESv1_CM -lEGL -lm")
+ ENDIF()
+ELSE()
+ IF(FREEGLUT_WAYLAND)
+ SET(PC_LIBS_PRIVATE "-lwayland-client -lwayland-cursor -lwayland-egl -lGL -lxkbcommon -lm")
+ ELSE()
+ SET(PC_LIBS_PRIVATE "-lX11 -lXxf86vm -lXrandr -lGL -lm")
+ ENDIF()
+ENDIF()
+# Client applications need to define FreeGLUT GLES version to
+# bootstrap headers inclusion in freeglut_std.h:
+SET(PC_LIBNAME ${LIBNAME})
+SET(PC_FILENAME "freeglut.pc")
+IF(FREEGLUT_GLES)
+ SET(PC_CFLAGS "-DFREEGLUT_GLES")
+ SET(PC_LIBNAME "freeglut-gles")
+ SET(PC_FILENAME "freeglut-gles.pc")
+ENDIF()
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/freeglut.pc.in ${CMAKE_BINARY_DIR}/freeglut.pc @ONLY)
+INSTALL(FILES ${CMAKE_BINARY_DIR}/freeglut.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig/ RENAME ${PC_FILENAME} COMPONENT Devel)
+# TODO: change the library and .pc name when building for GLES,
+# e.g. -lglut-GLES
+
+INCLUDE(CMakePackageConfigHelpers)
+WRITE_BASIC_PACKAGE_VERSION_FILE(
+ "${CMAKE_CURRENT_BINARY_DIR}/FreeGLUT/FreeGLUTConfigVersion.cmake"
+ VERSION ${VERSION}
+ COMPATIBILITY AnyNewerVersion
+)
+
+# needs cmake 3.0 (as does the "INCLUDES DIRECTORY" argument to install(TARGETS)):
+EXPORT(EXPORT FreeGLUTTargets
+ FILE "${CMAKE_CURRENT_BINARY_DIR}/FreeGLUT/FreeGLUTTargets.cmake"
+ NAMESPACE FreeGLUT::
+)
+CONFIGURE_FILE(FreeGLUTConfig.cmake.in
+ "${CMAKE_CURRENT_BINARY_DIR}/FreeGLUT/FreeGLUTConfig.cmake"
+ @ONLY
+)
+SET(ConfigPackageLocation lib/cmake/FreeGLUT)
+INSTALL(EXPORT FreeGLUTTargets
+ FILE FreeGLUTTargets.cmake
+ NAMESPACE FreeGLUT::
+ DESTINATION ${ConfigPackageLocation}
+)
+INSTALL(
+ FILES
+ "${CMAKE_CURRENT_BINARY_DIR}/FreeGLUT/FreeGLUTConfig.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/FreeGLUT/FreeGLUTConfigVersion.cmake"
+ DESTINATION ${ConfigPackageLocation}
+ COMPONENT Devel
+)