summaryrefslogtreecommitdiffhomepage
path: root/cmake
diff options
context:
space:
mode:
authorAhmad Fatoum <[email protected]>2019-07-24 00:08:29 +0200
committerAhmad Fatoum <[email protected]>2019-07-24 00:12:38 +0200
commit47137b148997b4d957f86e8780c7e56a210b44b2 (patch)
tree29c54ad1342771ac3333e02ea62ef2d255285cdf /cmake
parent7b448f59e2edb8df53ea2a586d8c276cf686db71 (diff)
downloadraylib-47137b148997b4d957f86e8780c7e56a210b44b2.tar.gz
raylib-47137b148997b4d957f86e8780c7e56a210b44b2.zip
CMake: fix dependency build with -Draylib_USE_STATIC_LIBS=ON
Fixes #899, which made apparent three issues with how static libraries are handled in raylib-config.cmake: - XPREFIX is set before pkg_check_modules, which causes a duplicate STATIC in variables, e.g. PC_RAYLIB_STATIC_STATIC_.* - raylib_static is searched for, but no library exists with that name - raylib_LDFLAGS isn't populated properly This commit fixes these.
Diffstat (limited to 'cmake')
-rw-r--r--cmake/raylib-config.cmake25
1 files changed, 13 insertions, 12 deletions
diff --git a/cmake/raylib-config.cmake b/cmake/raylib-config.cmake
index 5ad55b16..b5358740 100644
--- a/cmake/raylib-config.cmake
+++ b/cmake/raylib-config.cmake
@@ -12,12 +12,14 @@
# raylib_DEFINITIONS - Compiler switches required for using raylib
set(XPREFIX PC_RAYLIB)
+
+find_package(PkgConfig QUIET)
+pkg_check_modules(${XPREFIX} QUIET raylib)
+
if (raylib_USE_STATIC_LIBS)
set(XPREFIX ${XPREFIX}_STATIC)
endif()
-find_package(PkgConfig QUIET)
-pkg_check_modules(${XPREFIX} QUIET raylib)
set(raylib_DEFINITIONS ${${XPREFIX}_CFLAGS})
find_path(raylib_INCLUDE_DIR
@@ -25,17 +27,16 @@ find_path(raylib_INCLUDE_DIR
HINTS ${${XPREFIX}_INCLUDE_DIRS}
)
+set(RAYLIB_NAMES raylib)
+
if (raylib_USE_STATIC_LIBS)
- find_library(raylib_LIBRARY
- NAMES raylib_static
- HINTS ${${XPREFIX}_LIBRARY_DIRS}
- )
-else ()
- find_library(raylib_LIBRARY
- NAMES raylib
- HINTS ${${XPREFIX}_LIBRARY_DIRS}
- )
-endif ()
+ set(RAYLIB_NAMES libraylib.a raylib.lib ${RAYLIB_NAMES})
+endif()
+
+find_library(raylib_LIBRARY
+ NAMES ${RAYLIB_NAMES}
+ HINTS ${${XPREFIX}_LIBRARY_DIRS}
+)
set(raylib_LIBRARIES ${raylib_LIBRARY})
set(raylib_LIBRARY_DIRS ${${XPREFIX}_LIBRARY_DIRS})