GeneratePkgConfig: fix variable expansion usages.
GitOrigin-RevId: e7545e211540207bcac81c2600413c1357132680
This commit is contained in:
parent
39fec60968
commit
f08e0fb116
@ -1,33 +1,37 @@
|
||||
function(get_relative_link OUTPUT PATH)
|
||||
get_filename_component(NAME ${PATH} NAME_WE)
|
||||
if (PATH MATCHES "^[$]<[$]<CONFIG:DEBUG>:")
|
||||
set(LINK "")
|
||||
elseif (NOT WIN32 AND NAME MATCHES "^lib")
|
||||
string(REGEX REPLACE "^lib" "-l" LINK ${NAME})
|
||||
elseif (NAME MATCHES "^-")
|
||||
set(LINK ${NAME})
|
||||
else()
|
||||
string(CONCAT LINK "-l" ${NAME})
|
||||
set(${OUTPUT} "" PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
set(${OUTPUT} ${LINK} PARENT_SCOPE)
|
||||
string(REGEX REPLACE "^[$]<[$]<NOT:[$]<CONFIG:DEBUG>>:(.*)>$" "\\1" PATH "${PATH}")
|
||||
|
||||
get_filename_component(NAME "${PATH}" NAME_WE)
|
||||
if (NOT WIN32 AND NAME MATCHES "^lib")
|
||||
string(REGEX REPLACE "^lib" "-l" LINK "${NAME}")
|
||||
elseif (NAME MATCHES "^-")
|
||||
set(LINK "${NAME}")
|
||||
else()
|
||||
string(CONCAT LINK "-l" "${NAME}")
|
||||
endif()
|
||||
set(${OUTPUT} "${LINK}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(generate_pkgconfig TARGET DESCRIPTION)
|
||||
# message("Generating pkg-config for ${TARGET}")
|
||||
get_filename_component(PREFIX ${CMAKE_INSTALL_PREFIX} REALPATH)
|
||||
get_filename_component(PREFIX "${CMAKE_INSTALL_PREFIX}" REALPATH)
|
||||
|
||||
get_target_property(LIST ${TARGET} LINK_LIBRARIES)
|
||||
get_target_property(LIST "${TARGET}" LINK_LIBRARIES)
|
||||
set(REQS "")
|
||||
set(LIBS "")
|
||||
foreach (LIB ${LIST})
|
||||
if (TARGET ${LIB})
|
||||
if (TARGET "${LIB}")
|
||||
set(HAS_REQS 1)
|
||||
list(APPEND REQS ${LIB})
|
||||
list(APPEND REQS "${LIB}")
|
||||
else()
|
||||
set(HAS_LIBS 1)
|
||||
get_relative_link(LINK ${LIB})
|
||||
get_relative_link(LINK "${LIB}")
|
||||
if (NOT LINK EQUAL "")
|
||||
list(APPEND LIBS ${LINK})
|
||||
list(APPEND LIBS "${LINK}")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
|
Loading…
x
Reference in New Issue
Block a user