Skip to content
Snippets Groups Projects
Commit b8ca0b56 authored by Martin Christoph Hierholzer's avatar Martin Christoph Hierholzer
Browse files

Merge remote-tracking branch 'project-template/master'

parents fe36e9e6 2a109312
No related branches found
No related tags found
No related merge requests found
......@@ -7,6 +7,8 @@
# @PROJECT_NAME@_INCLUDE_DIRS : path to the include directory
# @PROJECT_NAME@_LIBRARY_DIRS : path to the library directory
# @PROJECT_NAME@_LIBRARIES : the provided libraries
# @PROJECT_NAME@_CXX_FLAGS : additional C++ compiler flags
# @PROJECT_NAME@_LINKER_FLAGS : additional linker flags
#
# @author Martin Killenberg, DESY
#
......@@ -17,6 +19,8 @@ set(@PROJECT_NAME@_VERSION @@PROJECT_NAME@_SOVERSION@)
set(@PROJECT_NAME@_INCLUDE_DIRS @@PROJECT_NAME@_INCLUDE_DIRS@)
set(@PROJECT_NAME@_LIBRARY_DIRS @@PROJECT_NAME@_LIBRARY_DIRS@)
set(@PROJECT_NAME@_LIBRARIES @@PROJECT_NAME@_LIBRARIES@)
set(@PROJECT_NAME@_CXX_FLAGS @@PROJECT_NAME@_CXX_FLAGS@)
set(@PROJECT_NAME@_LINKER_FLAGS @@PROJECT_NAME@_LINKER_FLAGS@)
# Use a macro provided by CMake to check if all the listed arguments are valid and set @PROJECT_NAME@_FOUND accordingly.
# This is mainly important to check the version.
......
......@@ -8,31 +8,36 @@
# ${PROJECT_NAME}_INCLUDE_DIRS - list include directories needed when compiling against this project
# ${PROJECT_NAME}_LIBRARY_DIRS - list of library directories needed when linking against this project
# ${PROJECT_NAME}_LIBRARIES - list of libraries needed when linking against this project
# ${PROJECT_NAME}_CPPFLAGS - list of C++ compiler flags when compiling against this project
# ${PROJECT_NAME}_LDFLAGS - list of linker flags when linking against this project
# ${PROJECT_NAME}_CXX_FLAGS - list of additional C++ compiler flags needed when compiling against this project
# ${PROJECT_NAME}_LINKER_FLAGS - list of additional linker flags needed when linking against this project
#
#######################################################################################################################
# create variables for standard makefiles
set(${PROJECT_NAME}_CPPFLAGS_MAKEFILE "${${PROJECT_NAME}_CPPFLAGS}")
set(${PROJECT_NAME}_CXX_FLAGS_MAKEFILE "${${PROJECT_NAME}_CXX_FLAGS}")
string(REPLACE " " ";" LIST ${${PROJECT_NAME}_INCLUDE_DIRS})
foreach(INCLUDE_DIR ${LIST})
set(${PROJECT_NAME}_CPPFLAGS_MAKEFILE "${${PROJECT_NAME}_CPPFLAGS_MAKEFILE} -I${INCLUDE_DIR}")
set(${PROJECT_NAME}_CXX_FLAGS_MAKEFILE "${${PROJECT_NAME}_CXX_FLAGS_MAKEFILE} -I${INCLUDE_DIR}")
endforeach()
set(${PROJECT_NAME}_LDFLAGS_MAKEFILE "${${PROJECT_NAME}_LDFLAGS}")
set(${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE "${${PROJECT_NAME}_LINKER_FLAGS}")
string(REPLACE " " ";" LIST ${${PROJECT_NAME}_LIBRARY_DIRS})
foreach(LIBRARY_DIR ${LIST})
set(${PROJECT_NAME}_LDFLAGS_MAKEFILE "${${PROJECT_NAME}_LDFLAGS_MAKEFILE} -L${LIBRARY_DIR}")
set(${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE "${${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE} -L${LIBRARY_DIR}")
endforeach()
string(REPLACE " " ";" LIST ${${PROJECT_NAME}_LIBRARIES})
foreach(LIBRARY ${LIST})
set(${PROJECT_NAME}_LDFLAGS_MAKEFILE "${${PROJECT_NAME}_LDFLAGS_MAKEFILE} -l${LIBRARY}")
set(${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE "${${PROJECT_NAME}_LINKER_FLAGS_MAKEFILE} -l${LIBRARY}")
endforeach()
# force the lists to be space separated (may be sometimes semicolon separated)
string(REPLACE ";" " " ${PROJECT_NAME}_INCLUDE_DIRS ${${PROJECT_NAME}_INCLUDE_DIRS})
string(REPLACE ";" " " ${PROJECT_NAME}_LIBRARY_DIRS ${${PROJECT_NAME}_LIBRARY_DIRS})
string(REPLACE ";" " " ${PROJECT_NAME}_LIBRARIES ${${PROJECT_NAME}_LIBRARIES})
# we have nested @-statements, so we have to parse twice:
# create the cmake Find package script
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment