Skip to content

Commit 6f96d29

Browse files
authored
Merge pull request #37 from j-o/find_precompiled_glfw
Adapt FindGLFW script to find from precompiled windows package
2 parents 568a92d + 9d4be63 commit 6f96d29

File tree

1 file changed

+33
-3
lines changed

1 file changed

+33
-3
lines changed

cmake/FindGLFW.cmake

+33-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,35 @@ find_path(GLFW_INCLUDE_DIR GLFW/glfw3.h
2626

2727
DOC "The directory where GLFW/glfw.h resides")
2828

29-
find_library(GLFW_LIBRARY_RELEASE NAMES glfw3 glfw glfw3dll glfwdll
29+
30+
set(GLFW_LIB_SUFFIX "")
31+
if(MSVC14)
32+
set(GLFW_LIB_SUFFIX "vc2015")
33+
elseif(MSVS12)
34+
set(GLFW_LIB_SUFFIX "vc2013")
35+
elseif(MSVC11)
36+
set(GLFW_LIB_SUFFIX "vc2012")
37+
elseif(MSVC10)
38+
set(GLFW_LIB_SUFFIX "vc2010")
39+
elseif(MINGW)
40+
if(X64)
41+
set(GLFW_LIB_SUFFIX "mingw-w64")
42+
else()
43+
set(GLFW_LIB_SUFFIX "mingw")
44+
endif()
45+
endif()
46+
47+
set(GLFW_NAMES glfw3 glfw)
48+
set(GLFW_DEBUG_NAMES glfw3d glfwd)
49+
if(WIN32)
50+
option(GLFW_SHARED "Use shared GLFW library (DLL)" ON)
51+
if(GLFW_SHARED)
52+
set(GLFW_NAMES glfw3dll glfwdll)
53+
set(GLFW_DEBUG_NAMES glfw3ddll glfwddll)
54+
endif()
55+
endif()
56+
57+
find_library(GLFW_LIBRARY_RELEASE NAMES ${GLFW_NAMES}
3058

3159
HINTS
3260
${GLFW_INCLUDE_DIR}/..
@@ -49,11 +77,12 @@ find_library(GLFW_LIBRARY_RELEASE NAMES glfw3 glfw glfw3dll glfwdll
4977
PATH_SUFFIXES
5078
/lib
5179
/lib64
80+
/lib-${GLFW_LIB_SUFFIX}
5281
/src # for from-source builds
5382

5483
DOC "The GLFW library")
5584

56-
find_library(GLFW_LIBRARY_DEBUG NAMES glfw3d glfwd glfw3ddll glfwddll
85+
find_library(GLFW_LIBRARY_DEBUG NAMES ${GLFW_DEBUG_NAMES}
5786

5887
HINTS
5988
${GLFW_INCLUDE_DIR}/..
@@ -91,7 +120,7 @@ elseif(GLFW_LIBRARY_DEBUG)
91120
set(GLFW_LIBRARIES ${GLFW_LIBRARY_DEBUG})
92121
endif()
93122

94-
if(WIN32)
123+
if(WIN32 AND GLFW_SHARED)
95124

96125
find_file(GLFW_BINARY glfw3.dll
97126

@@ -106,6 +135,7 @@ if(WIN32)
106135
PATH_SUFFIXES
107136
/lib
108137
/bin
138+
/lib-${GLFW_LIB_SUFFIX}
109139

110140
DOC "The GLFW binary")
111141

0 commit comments

Comments
 (0)