Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ jobs:
run: |
git clone --depth 1 https://github.com/DGtal-team/DGtal.git
cd DGtal
conan install . --build=missing
conan install . --build=missing -s:a compiler.cppstd=20
mkdir buildDGtal
cd buildDGtal
echo cmake .. -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_BUILD_TYPE=$BUILD_TYPE $CONFIG_WINDOWS -DCMAKE_TOOLCHAIN_FILE="conan_toolchain.cmake" -DBUILD_EXAMPLES=false -DBUILD_TESTING=false
Expand All @@ -115,8 +115,8 @@ jobs:
shell: bash
working-directory: "${{runner.workspace}}/build"
run: |
conan install $GITHUB_WORKSPACE --build=missing
cmake $GITHUB_WORKSPACE -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_MODULE_PATH="D:/a/DGtalTools-contrib/build/DGtal/buildDGtal" -DDGtal_DIR="D:/a/DGtalTools-contrib/build/DGtal/buildDGtal" -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DDGTAL_RANDOMIZED_TESTING_WHITELIST="${{ steps.whitelist.outputs.WHITELIST }}"
conan install $GITHUB_WORKSPACE --build=missing -s:a compiler.cppstd=20
cmake $GITHUB_WORKSPACE -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_MODULE_PATH="D:/a/DGtalTools-contrib/build/DGtal/buildDGtal" -DDGtal_DIR="D:/a/DGtalTools-contrib/build/DGtal/buildDGtal" -DCMAKE_TOOLCHAIN_FILE="conan_toolchain.cmake" -DCMAKE_BUILD_TYPE=$BUILD_TYPE

- name: Build
working-directory: ${{runner.workspace}}/build
Expand Down
76 changes: 56 additions & 20 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,53 +2,66 @@
# -----------------------------------------------------------------------------
# Project definition
# -----------------------------------------------------------------------------
PROJECT(DGtalTools-contrib)

cmake_minimum_required (VERSION 3.11)
cmake_policy(SET CMP0057 NEW)
cmake_minimum_required (VERSION 3.20)
PROJECT(DGtalTools-contrib)

cmake_policy(SET CMP0057 NEW) # the new interpretation of IN_LIST is by default not set (at least until 3.21.1).
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)

SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
include(polyscope)
option(NO_ADD_STBIMAGE_IMPLEMENT "To avoid duplicated linking errors (like LNK2005 in MSVC)" OFF)
option(DISABLE_POLYSCOPE "Disable polyscope based tools" OFF)
list(APPEND CMAKE_PREFIX_PATH "${DGtal_DIR}")




# -----------------------------------------------------------------------------
# CPP17
# -----------------------------------------------------------------------------
set(DGTALTOOLS_CONTRIB_CMAKE_CXX_STANDARD_MIN_REQUIRED 17)
# -----------------------------------------------------------------------------
# CPP20
# -----------------------------------------------------------------------------
set(DGTALTOOLS_CMAKE_CXX_STANDARD_MIN_REQUIRED 20)
if(NOT CMAKE_CXX_STANDARD)
set(CMAKE_CXX_STANDARD ${DGTALTOOLS_CONTRIB_CMAKE_CXX_STANDARD_MIN_REQUIRED})
set(CMAKE_CXX_STANDARD ${DGTALTOOLS_CMAKE_CXX_STANDARD_MIN_REQUIRED})
else()
# Throw if CMAKE_CXX_STANDARD is 98
if(${CMAKE_CXX_STANDARD} EQUAL 98)
message(FATAL_ERROR "CMAKE_CXX_STANDARD is set to ${CMAKE_CXX_STANDARD}, "
"but DGtalTools requires at least ${DGTALTOOLS_CONTRIB_CMAKE_CXX_STANDARD_MIN_REQUIRED}.")
"but DGtalTools requires at least ${DGTALTOOLS_CMAKE_CXX_STANDARD_MIN_REQUIRED}.")
endif()
endif()
if(NOT CMAKE_CXX_STANDARD_REQUIRED)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
endif()
message(STATUS "C++ standard set to ${CMAKE_CXX_STANDARD}")


FIND_PACKAGE(DGtal 1.4 REQUIRED)
# -----------------------------------------------------------------------------
# DGtal dependencies
# -----------------------------------------------------------------------------
message(STATUS "-------------------------------------------------------------------------------")
message(STATUS "Checking if DGtal is installed:")
FIND_PACKAGE(DGtal 2.0.0 REQUIRED)
INCLUDE_DIRECTORIES(${DGTAL_INCLUDE_DIRS})
LINK_DIRECTORIES(${DGTAL_LIBRARY_DIRS})
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
message(STATUS "DGtal found.")




# -------------------------------------------------------------------------
# This test is for instance used for ITK v3.x. ITK forces a limited
# template depth. We remove this option.
# --------------------------------------------------------------------------
if (CMAKE_CXX_FLAGS MATCHES "-ftemplate-depth-[0-9]*")
# -------------------------------------------------------------------------
# This test is for instance used for ITK v3.x. ITK forces a limited
# template depth. We remove this option.
# --------------------------------------------------------------------------
if (CMAKE_CXX_FLAGS MATCHES "-ftemplate-depth-[0-9]*")
message( "Warning: some package has enabled a limited template depth for the C++ compiler." )
message( " Disabling option -ftemplate-depth-xx in CMAKE_CXX_FLAGS." )
set( CMAKE_CXX_FLAGS_TMP ${CMAKE_CXX_FLAGS} )
STRING( REGEX REPLACE "-ftemplate-depth-[0-9]*" ""
CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_TMP}" )
message (" CMAKE_CXX_FLAGS=" ${CMAKE_CXX_FLAGS} )
endif (CMAKE_CXX_FLAGS MATCHES "-ftemplate-depth-[0-9]*")
endif (CMAKE_CXX_FLAGS MATCHES "-ftemplate-depth-[0-9]*")



## or USE_OPENCV
if(WITH_OPENCV)
Expand All @@ -59,9 +72,10 @@ endif()



# -----------------------------------------------------------------------------
# CLI11
# -----------------------------------------------------------------------------
include_directories( "${PROJECT_SOURCE_DIR}/ext/" )
include_directories(${PROJECT_SOURCE_DIR})



Expand All @@ -80,6 +94,28 @@ SET(VERSION ${DGtalToolsContrib_VERSION_MAJOR}.${DGtalToolsContrib_VERSION_MINOR



#-----------------------------------------------------------------------------
# ITK setting
#-----------------------------------------------------------------------------
if ( DGTAL_WITH_ITK )
include(${ITK_USE_FILE})
ENDIF( DGTAL_WITH_ITK )



#-----------------------------------------------------------------------------
# polyscope
#-----------------------------------------------------------------------------
if (NOT(DISABLE_POLYSCOPE))
message(STATUS "Enabling polyscope tools")
include(CPM)
include(polyscope)
else()
message(STATUS "Disabling polyscope tools")
endif()






Expand Down
10 changes: 9 additions & 1 deletion ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,18 @@
# DGtalTools-contrib 1.5 (beta)




# DGtalTools-contrib 2.0


- *Geometry3d*
- splitMeshFromCol: new simple tool to split mesh from its color face attributes.
(Bertrand Kerautret [#89](https://github.com/DGtal-team/DGtalTools-contrib/pull/89))

- *global*
- DGtal 2.0 update and CLI11 2.5.0 and integrate polyscope tool update.
(Bertrand Kerautret [#94](https://github.com/DGtal-team/DGtalTools-contrib/pull/94))

- Continuous integration fix using new version on conan following DGtal changes.
(Bertrand Kerautret [#90](https://github.com/DGtal-team/DGtalTools-contrib/pull/90))

Expand Down
Loading
Loading