diff options
author | Sadie Powell <sadie@witchery.services> | 2021-12-28 11:45:32 +0000 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2021-12-28 18:53:24 +0000 |
commit | 69dbcba069db62393f2aa2868662a7fd2073d31b (patch) | |
tree | 228293828a20a46bd78ebce66b3f9590ca75e8ec /cmake | |
parent | 66bf55fb7fe5cc9d9f2b1e359dcb115ea527fc29 (diff) |
Allow specifying multiple dependency libraries like foo|bar.
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/Anope.cmake | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cmake/Anope.cmake b/cmake/Anope.cmake index 44b4ea3ba..488d0f4f1 100644 --- a/cmake/Anope.cmake +++ b/cmake/Anope.cmake @@ -445,12 +445,18 @@ macro(calculate_libraries SRC SRC_LDFLAGS EXTRA_DEPENDS) string(REGEX REPLACE "," ";" REQUIRED_LIBRARY ${REQUIRED_LIBRARY}) # Iterate through the libraries given foreach(LIBRARY ${REQUIRED_LIBRARY}) + # If the library has multiple names extract the alternate. + unset(LIBRARY_ALT) + if (${LIBRARY} MATCHES "^.+\\|.+$") + string(REGEX REPLACE ".+\\|(.*)" "\\1" LIBRARY_ALT ${LIBRARY}) + string(REGEX REPLACE "(.+)\\|.*" "\\1" LIBRARY ${LIBRARY}) + endif(${LIBRARY} MATCHES "^.+\\|.+$") # Locate the library to see if it exists if(DEFAULT_LIBRARY_DIRS OR WSDK_PATH OR DEFINED $ENV{VCINSTALLDIR}) - find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} PATHS ${DEFAULT_LIBRARY_DIRS} ${WSDK_PATH}/lib $ENV{VCINSTALLDIR}/lib ${EXTRA_INCLUDE} ${EXTRA_LIBS}) + find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} ${LIBRARY_ALT} PATHS ${DEFAULT_LIBRARY_DIRS} ${WSDK_PATH}/lib $ENV{VCINSTALLDIR}/lib ${EXTRA_INCLUDE} ${EXTRA_LIBS}) else(DEFAULT_LIBRARY_DIRS OR WSDK_PATH OR DEFINED $ENV{VCINSTALLDIR}) - find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} PATHS ${EXTRA_INCLUDE} ${EXTRA_LIBS} NO_DEFAULT_PATH) - find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} PATHS ${EXTRA_INCLUDE} ${EXTRA_LIBS}) + find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} ${LIBRARY_ALT} PATHS ${EXTRA_INCLUDE} ${EXTRA_LIBS} NO_DEFAULT_PATH) + find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} ${LIBRARY_ALT} PATHS ${EXTRA_INCLUDE} ${EXTRA_LIBS}) endif(DEFAULT_LIBRARY_DIRS OR WSDK_PATH OR DEFINED $ENV{VCINSTALLDIR}) # If the library was found, we will add it to the linker flags if(FOUND_${LIBRARY}_LIBRARY) |