123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- find_package(PkgConfig)
- if(PKG_CONFIG_FOUND)
- message(STATUS "PkgConfig found")
- else()
- message(STATUS "PkgConfig not found, if you have only static glfw library, you build can fail")
- endif()
- if(PKG_CONFIG_FOUND)
-
- set(_saved_PKG_CONFIG_PATH "$ENV{PKG_CONFIG_PATH}")
- set(_saved_CMAKE_FIND_LIBRARY_SUFFIXES "${CMAKE_FIND_LIBRARY_SUFFIXES}")
-
- file(TO_CMAKE_PATH "$ENV{PKG_CONFIG_PATH}" PKG_CONFIG_PATH)
- list(APPEND PKG_CONFIG_PATH "/usr/local/lib/pkgconfig")
- file(TO_NATIVE_PATH "${PKG_CONFIG_PATH}" new_pkg_config_path)
- set(ENV{PKG_CONFIG_PATH} "${new_pkg_config_path}")
-
- pkg_check_modules(PC_GLFW3 glfw3)
- if(PC_GLFW3_FOUND)
-
- set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_STATIC_LIBRARY_SUFFIX})
- find_library(GLFW3_STATIC_LIBRARY NAMES glfw3 libglfw3 PATHS ${PC_GLFW3_LIBRARY_DIRS} NO_DEFAULT_PATH)
- find_library(GLFW3_STATIC_LIBRARY NAMES glfw3 libglfw3 PATHS ${PC_GLFW3_LIBRARY_DIRS})
-
- find_path(GLFW3_INCLUDE_DIRS glfw3.h PATH_SUFFIXES GLFW PATHS ${PC_GLFW3_INCLUDE_DIRS} NO_DEFAULT_PATH)
- find_path(GLFW3_INCLUDE_DIRS glfw3.h PATH_SUFFIXES GLFW PATHS ${PC_GLFW3_INCLUDE_DIRS})
- if(GLFW3_STATIC_LIBRARY)
-
- set(GLFW3_LIBRARIES ${PC_GLFW3_STATIC_LIBRARIES})
- set(GLFW3_LIBRARY_DIRS ${PC_GLFW3_STATIC_LIBRARY_DIRS})
-
- if(APPLE)
- unset(_is_framework)
- foreach(_arg ${PC_GLFW3_STATIC_LDFLAGS_OTHER})
- if(_is_framework)
- set(var FRAMEWORK_${_arg}_LIBRARY)
- find_library(${var} ${_arg})
- if(${var})
- list(APPEND GLFW3_LIBRARIES ${${var}})
- endif()
- unset(var)
- unset(_is_framework)
- else()
- if(_arg STREQUAL "-framework")
- set(_is_framework 1)
- else()
- list(APPEND GLFW3_LIBRARIES ${_arg})
- endif()
- endif()
- endforeach()
- else(APPLE)
- list(APPEND GLFW3_LIBRARIES ${PC_GLFW3_STATIC_LDFLAGS_OTHER})
- endif(APPLE)
- else()
-
- set(GLFW3_DEFINITIONS -DGLFW_DLL)
- set(GLFW3_LIBRARIES ${PC_GLFW3_LIBRARIES})
- set(GLFW3_LIBRARY_DIRS ${PC_GLFW3_LIBRARY_DIRS})
- endif()
- set(GLFW3_FOUND 1)
-
- endif()
-
- set(CMAKE_FIND_LIBRARY_SUFFIXES "${_saved_CMAKE_FIND_LIBRARY_SUFFIXES}")
- set(ENV{PKG_CONFIG_PATH} "${_saved_PKG_CONFIG_PATH}")
- endif(PKG_CONFIG_FOUND)
- if(NOT GLFW3_FOUND)
- find_path(GLFW3_INCLUDE_DIR glfw3.h
- HINTS
- ENV GLFW3_DIR
- PATH_SUFFIXES include/GLFW include
- PATHS
- ~/Library/Frameworks
- /Library/Frameworks
- /usr/local
- /usr
- /sw
- /opt/local
- /opt/csw
- /opt
- )
- find_library(GLFW3_LIBRARY
- NAMES glfw3 libglfw3 glfw
- HINTS
- ENV GLFW3_DIR
- PATH_SUFFIXES lib
- PATHS
- ~/Library/Frameworks
- /Library/Frameworks
- /usr/local
- /usr
- /sw
- /opt/local
- /opt/csw
- /opt
- )
- set(GLFW3_INCLUDE_DIRS "${GLFW3_INCLUDE_DIR}")
- set(GLFW3_LIBRARIES "${GLFW3_LIBRARY}")
- include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
- find_package_handle_standard_args(GLFW3 DEFAULT_MSG GLFW3_LIBRARIES GLFW3_INCLUDE_DIR)
- endif()
- mark_as_advanced(GLFW3_INCLUDE_DIR GLFW3_LIBRARIES GLFW3_LIBRARY)
|