From 6768362e095287aa86c2740ca977bb84762380d9 Mon Sep 17 00:00:00 2001 From: Winfried Dobbe Date: Wed, 8 Apr 2020 17:19:20 +0200 Subject: [PATCH] General cmake simplifications and some MacOS fixes --- .gitignore | 3 +++ Modules/DocbookToManUtils.cmake | 2 +- Modules/FindDocbookToMan.cmake | 8 ++++---- Modules/FindZstd.cmake | 22 +++++++++++++++------- daemon/CMakeLists.txt | 6 +----- doc/CMakeLists.txt | 2 +- services/CMakeLists.txt | 2 +- 7 files changed, 26 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index 8128f6edc..fdf33a4ae 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,6 @@ tests/testargs.log tests/testargs.trs tests/test-setup.sh tests/listing.txt + +#QtCreator project settings +CMakeLists.txt.user diff --git a/Modules/DocbookToManUtils.cmake b/Modules/DocbookToManUtils.cmake index 78092814f..6090372af 100644 --- a/Modules/DocbookToManUtils.cmake +++ b/Modules/DocbookToManUtils.cmake @@ -35,7 +35,7 @@ function(add_docs) string(CONCAT targetfilename "${docfilename}" "." "${man_number}") list(APPEND doc_targets ${targetfilename}) add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${targetfilename} - COMMAND ${DOCBOOK2MAN_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/${xmlfile} + COMMAND ${DocbookToMan_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/${xmlfile} MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/${xmlfile} ) diff --git a/Modules/FindDocbookToMan.cmake b/Modules/FindDocbookToMan.cmake index 71079fac5..1861222b9 100644 --- a/Modules/FindDocbookToMan.cmake +++ b/Modules/FindDocbookToMan.cmake @@ -25,14 +25,14 @@ #(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS #SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -find_program(DOCBOOK2MAN_EXE - NAMES docbook-to-man docbook2x-man) +find_program(DocbookToMan_EXE + NAMES docbook-to-man docbook2x-man docbook2man) INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(DOCBOOK2MAN REQUIRED_VARS DOCBOOK2MAN_EXE) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(DocbookToMan REQUIRED_VARS DocbookToMan_EXE) MARK_AS_ADVANCED( - DOCBOOK2MAN_EXE + DocbookToMan_EXE ) #function(DOCBOOK_TO_MAN docbookFile) diff --git a/Modules/FindZstd.cmake b/Modules/FindZstd.cmake index 9aeb2107c..d157b5168 100644 --- a/Modules/FindZstd.cmake +++ b/Modules/FindZstd.cmake @@ -33,18 +33,26 @@ # ZSTD_LIBRARY # -find_path(ZSTD_INCLUDE_DIR NAMES zstd.h) +find_path(Zstd_INCLUDE_DIR NAMES zstd.h) -find_library(ZSTD_LIBRARY_DEBUG NAMES zstdd zstd_staticd) -find_library(ZSTD_LIBRARY_RELEASE NAMES zstd zstd_static) +find_library(Zstd_LIBRARY_DEBUG NAMES zstdd zstd_staticd) +find_library(Zstd_LIBRARY_RELEASE NAMES zstd zstd_static) include(SelectLibraryConfigurations) -SELECT_LIBRARY_CONFIGURATIONS(ZSTD) +SELECT_LIBRARY_CONFIGURATIONS(Zstd) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS( - ZSTD DEFAULT_MSG - ZSTD_LIBRARY ZSTD_INCLUDE_DIR + Zstd DEFAULT_MSG + Zstd_LIBRARY Zstd_INCLUDE_DIR ) +if (Zstd_FOUND) + if (NOT TARGET Zstd::Zstd) + add_library(Zstd::Zstd UNKNOWN IMPORTED) + set_target_properties(Zstd::Zstd PROPERTIES + IMPORTED_LOCATION "${Zstd_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${Zstd_INCLUDE_DIR}") + endif () +endif() -mark_as_advanced(ZSTD_INCLUDE_DIR ZSTD_LIBRARY_DEBUG ZSTD_LIBRARY_RELEASE) \ No newline at end of file +mark_as_advanced(Zstd_INCLUDE_DIR Zstd_LIBRARY_DEBUG Zstd_LIBRARY_RELEASE) diff --git a/daemon/CMakeLists.txt b/daemon/CMakeLists.txt index 485af4f4b..362b6049f 100644 --- a/daemon/CMakeLists.txt +++ b/daemon/CMakeLists.txt @@ -35,13 +35,9 @@ add_executable(iceccd target_link_libraries(iceccd icecc LibArchive::LibArchive + $<$:Libcap-ng::Libcap-ng> ) -if(Libcap-ng_FOUND) - target_link_libraries(iceccd - Libcap-ng::Libcap-ng) -endif() - install(TARGETS iceccd RUNTIME DESTINATION sbin ) diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index 37a6dd514..17f92e465 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -14,7 +14,7 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -if (DOCBOOK2MAN_FOUND) +if (DocbookToMan_FOUND) include(${CMAKE_SOURCE_DIR}/Modules/DocbookToManUtils.cmake) set(man_xmls diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt index 61707e5d5..33a244abf 100644 --- a/services/CMakeLists.txt +++ b/services/CMakeLists.txt @@ -44,7 +44,7 @@ add_library(icecc STATIC target_link_libraries(icecc PRIVATE LZO::lzo - ${ZSTD_LIBRARY} + Zstd::Zstd dl) if(Libcap-ng_FOUND)