From e43f402341f4acd6faff9b8d5f8d18e89d1db4d0 Mon Sep 17 00:00:00 2001 From: Ben Boeckel <ben.boeckel@kitware.com> Date: Thu, 28 Dec 2017 09:59:41 -0500 Subject: [PATCH] libharu: update to the new module system --- ThirdParty/libharu/CMakeLists.txt | 34 ++++++++++++++++++++--------- ThirdParty/libharu/module.cmake | 6 ----- ThirdParty/libharu/update.sh | 2 +- ThirdParty/libharu/vtk.module | 8 +++++++ ThirdParty/libharu/vtk_libharu.h.in | 4 ++-- 5 files changed, 35 insertions(+), 19 deletions(-) delete mode 100644 ThirdParty/libharu/module.cmake create mode 100644 ThirdParty/libharu/vtk.module diff --git a/ThirdParty/libharu/CMakeLists.txt b/ThirdParty/libharu/CMakeLists.txt index d6b0d647414..bac8dce188f 100644 --- a/ThirdParty/libharu/CMakeLists.txt +++ b/ThirdParty/libharu/CMakeLists.txt @@ -1,14 +1,28 @@ -include(CMakeDependentOption) +vtk_module_third_party( + INTERNAL + LICENSE_FILES "vtklibharu/LICENCE" + VERSION "2.4.0" + STANDARD_INCLUDE_DIRS + EXTERNAL + PACKAGE LibHaru + # Unreleased. Requires these PRs: + # https://github.com/libharu/libharu/pull/157 + # https://github.com/libharu/libharu/pull/187 + VERSION 2.4.0 + TARGETS LibHaru::LibHaru + STANDARD_INCLUDE_DIRS) -cmake_dependent_option(VTK_MODULE_vtklibharu_IS_SHARED "Whether the system libharu in use is a shared library or not" ON - VTK_USE_SYSTEM_LIBHARU "${BUILD_SHARED_LIBS}") +include(vtkDetectLibraryType) +vtk_detect_library_shared(vtklibharu LibHaru::LibHaru) -if (WIN32 AND VTK_MODULE_vtklibharu_IS_SHARED) +set(HPDF_DLL 0) +if (WIN32 AND vtklibharu_is_shared) set(HPDF_DLL 1) -endif() +endif () -vtk_module_third_party(LibHaru - INCLUDE_DIRS - "${CMAKE_CURRENT_SOURCE_DIR}/vtklibharu/include" - "${CMAKE_CURRENT_BINARY_DIR}/vtklibharu/include" -) +configure_file( + "${CMAKE_CURRENT_SOURCE_DIR}/vtk_libharu.h.in" + "${CMAKE_CURRENT_BINARY_DIR}/vtk_libharu.h") + +vtk_module_install_headers( + FILES "${CMAKE_CURRENT_BINARY_DIR}/vtk_libharu.h") diff --git a/ThirdParty/libharu/module.cmake b/ThirdParty/libharu/module.cmake deleted file mode 100644 index 22e2517ac98..00000000000 --- a/ThirdParty/libharu/module.cmake +++ /dev/null @@ -1,6 +0,0 @@ -vtk_module(vtklibharu - EXCLUDE_FROM_WRAPPING - DEPENDS - vtkpng - vtkzlib -) diff --git a/ThirdParty/libharu/update.sh b/ThirdParty/libharu/update.sh index 52d6ce44878..0f2e0987e81 100755 --- a/ThirdParty/libharu/update.sh +++ b/ThirdParty/libharu/update.sh @@ -8,7 +8,7 @@ readonly name="libharu" readonly ownership="Libharu Upstream <kwrobot@kitware.com>" readonly subtree="ThirdParty/$name/vtk$name" readonly repo="https://gitlab.kitware.com/third-party/libharu.git" -readonly tag="for/vtk-old" +readonly tag="for/vtk-20181101-2.4.0-gd84867e" readonly paths=" .gitattributes CMakeLists.txt diff --git a/ThirdParty/libharu/vtk.module b/ThirdParty/libharu/vtk.module new file mode 100644 index 00000000000..d765600f39e --- /dev/null +++ b/ThirdParty/libharu/vtk.module @@ -0,0 +1,8 @@ +NAME + VTK::libharu +LIBRARY_NAME + vtklibharu +PRIVATE_DEPENDS + VTK::png + VTK::zlib +THIRD_PARTY diff --git a/ThirdParty/libharu/vtk_libharu.h.in b/ThirdParty/libharu/vtk_libharu.h.in index 538877d36ff..9819d197741 100644 --- a/ThirdParty/libharu/vtk_libharu.h.in +++ b/ThirdParty/libharu/vtk_libharu.h.in @@ -16,11 +16,11 @@ #define vtk_libharu_h /* Use the libharu library configured for VTK. */ -#cmakedefine VTK_USE_SYSTEM_LIBHARU +#cmakedefine01 VTK_MODULE_USE_EXTERNAL_vtklibharu #cmakedefine HPDF_DLL -#ifdef VTK_USE_SYSTEM_LIBHARU +#if VTK_MODULE_USE_EXTERNAL_vtklibharu # include <hpdf.h> #else # include <vtklibharu/include/hpdf.h> -- GitLab