mirror of
https://github.com/raysan5/raylib.git
synced 2025-10-06 09:56:28 +00:00
CMake: Search dependencies and build pkg-config's Libs.private with it
This commit is contained in:
@@ -90,25 +90,28 @@ set(sources ${raylib_sources} ${mini_al})
|
||||
# Which platform?
|
||||
if(${PLATFORM} MATCHES "PLATFORM_DESKTOP")
|
||||
|
||||
if(LINUX)
|
||||
foreach(L ${LIBS_PRIVATE})
|
||||
set(PKG_CONFIG_LIBS_PRIVATE "${PKG_CONFIG_LIBS_PRIVATE} -l${L}")
|
||||
endforeach(L)
|
||||
endif()
|
||||
foreach(L ${LIBS_PRIVATE})
|
||||
get_filename_component(DIR ${L} PATH)
|
||||
get_filename_component(LIBFILE ${L} NAME_WE)
|
||||
STRING(REGEX REPLACE "^lib" "" FILE ${LIBFILE})
|
||||
|
||||
if(APPLE)
|
||||
# TODO extract framework location and name from ${LIBS_PRIVATE}
|
||||
# and specify them as -F and -framework instead of hardcoding
|
||||
foreach(F OpenGL Cocoa)
|
||||
set(PKG_CONFIG_LIBS_PRIVATE "${PKG_CONFIG_LIBS_PRIVATE} -framework ${F}")
|
||||
endforeach(F)
|
||||
endif()
|
||||
if (${L} MATCHES "[.]framework$")
|
||||
set(FILE_OPT "-framework ${FILE}")
|
||||
set(DIR_OPT "-F${DIR} ")
|
||||
else()
|
||||
set(FILE_OPT "-l${FILE}")
|
||||
set(DIR_OPT "-L${DIR} ")
|
||||
endif()
|
||||
|
||||
if ("${DIR}" STREQUAL "" OR "${DIR}" STREQUAL "${LASTDIR}")
|
||||
set (DIR_OPT "")
|
||||
endif()
|
||||
|
||||
set(LASTDIR ${DIR})
|
||||
|
||||
set(PKG_CONFIG_LIBS_PRIVATE "${PKG_CONFIG_LIBS_PRIVATE} ${DIR_OPT}${FILE_OPT}")
|
||||
endforeach(L)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL FreeBSD)
|
||||
foreach(L ${LIBS_PRIVATE})
|
||||
set(PKG_CONFIG_LIBS_PRIVATE "${PKG_CONFIG_LIBS_PRIVATE} -l${L}")
|
||||
endforeach(L)
|
||||
endif()
|
||||
|
||||
if(${SHARED_RAYLIB})
|
||||
add_library(${RAYLIB}_shared SHARED ${sources})
|
||||
|
Reference in New Issue
Block a user