diff options
| author | Ahmad Fatoum <[email protected]> | 2019-07-24 00:08:29 +0200 |
|---|---|---|
| committer | Ahmad Fatoum <[email protected]> | 2019-07-24 00:12:38 +0200 |
| commit | 47137b148997b4d957f86e8780c7e56a210b44b2 (patch) | |
| tree | 29c54ad1342771ac3333e02ea62ef2d255285cdf /cmake | |
| parent | 7b448f59e2edb8df53ea2a586d8c276cf686db71 (diff) | |
| download | raylib-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.cmake | 25 |
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}) |
