Merge branch 'CMAKE_3.17_fix' into 'master'

Cmake 3.17 fix

See merge request OpenMesh/OpenMesh!258
This commit is contained in:
Jan Möbius
2020-04-22 17:07:59 +02:00
23 changed files with 77 additions and 107 deletions

View File

@@ -13,6 +13,8 @@ echo "BuildPath: $BUILDPATH"
echo "Path: $PATH" echo "Path: $PATH"
echo "Language: $LANGUAGE" echo "Language: $LANGUAGE"
cmake --version
echo -e "${OUTPUT}" echo -e "${OUTPUT}"
echo "" echo ""
echo "======================================================================" echo "======================================================================"

View File

@@ -101,5 +101,10 @@ macro (acg_qt5)
# Enable automoc # Enable automoc
set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOMOC ON)
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17")
cmake_policy(SET CMP0100 NEW)
endif()
endif (QT5_FOUND) endif (QT5_FOUND)
endmacro () endmacro ()

View File

@@ -5,19 +5,17 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# source code directories set (headers
set (directories ../DecimaterViewerWidget.hh
../../QtViewer ../../QtViewer/QGLViewerWidget.hh
../ ../../QtViewer/MeshViewerWidgetT.hh
../../QtViewer/MeshViewerWidget.hh
../../QtViewer/MeshViewerWidgetT_impl.hh
) )
# collect all header and source files
acg_append_files (headers "*.hh" ${directories})
list (APPEND headers "../../QtViewer/MeshViewerWidgetT_impl.hh")
set (sources set (sources
../../QtViewer/QGLViewerWidget.cc ../../QtViewer/QGLViewerWidget.cc
../../QtViewer/MeshViewerWidget.cc
../DecimaterViewerWidget.cc ../DecimaterViewerWidget.cc
../decimaterviewer.cc ../decimaterviewer.cc
) )

View File

@@ -91,18 +91,18 @@ struct MyTraits : public DEFAULT_TRAITS
}; };
typedef TRIMESH_KERNEL<MyTraits> mesh_t; typedef TRIMESH_KERNEL<MyTraits> mesh_t;
typedef MeshViewerWidgetT<mesh_t> MeshViewerWidget; typedef MeshViewerWidgetT<mesh_t> MeshViewerWidgetDecimaterBase;
//== CLASS DEFINITION ========================================================= //== CLASS DEFINITION =========================================================
class DecimaterViewerWidget : public MeshViewerWidget class DecimaterViewerWidget : public MeshViewerWidgetDecimaterBase
{ {
Q_OBJECT Q_OBJECT
public: public:
typedef MeshViewerWidget inherited_t; typedef MeshViewerWidgetDecimaterBase inherited_t;
typedef Decimater::DecimaterT<mesh_t> decimater_t; typedef Decimater::DecimaterT<mesh_t> decimater_t;
typedef Decimater::ModQuadricT< mesh_t >::Handle mod_quadric_t; typedef Decimater::ModQuadricT< mesh_t >::Handle mod_quadric_t;
@@ -119,7 +119,7 @@ public:
/// default constructor /// default constructor
explicit DecimaterViewerWidget(QWidget* _parent=0) explicit DecimaterViewerWidget(QWidget* _parent=0)
: MeshViewerWidget(_parent), : MeshViewerWidgetDecimaterBase(_parent),
animate_(false), animate_(false),
timer_(0), timer_(0),
steps_(1) steps_(1)

View File

@@ -5,12 +5,7 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (commandlineDecimater ../decimater.cc)
set (sources
../decimater.cc
)
acg_add_executable (commandlineDecimater ${sources})
target_link_libraries (commandlineDecimater target_link_libraries (commandlineDecimater
OpenMeshCore OpenMeshCore

View File

@@ -2,14 +2,9 @@ include (ACGCommon)
include_directories ( include_directories (
../../.. ../../..
${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (Dualizer dualizer.cc)
acg_append_files (headers "*.hh" .)
acg_append_files (sources "*.cc" .)
acg_add_executable (Dualizer ${headers} ${sources})
target_link_libraries (Dualizer target_link_libraries (Dualizer
OpenMeshCore OpenMeshCore

View File

@@ -6,15 +6,18 @@ include_directories (
) )
# collect all header and source files set( headers
acg_append_files (headers "*.hh" .) ProgViewerWidget.hh
acg_append_files (sources "*.cc" .) ../QtViewer/QGLViewerWidget.hh
../QtViewer/MeshViewerWidgetT.hh
../QtViewer/MeshViewerWidgetT_impl.hh
)
list (APPEND sources "../QtViewer/QGLViewerWidget.cc") set( sources
ProgViewerWidget.cc
list (APPEND headers "../QtViewer/QGLViewerWidget.hh") progviewer.cc
list (APPEND headers "../QtViewer/MeshViewerWidgetT.hh") ../QtViewer/QGLViewerWidget.cc
list (APPEND headers "../QtViewer/MeshViewerWidgetT_impl.hh") )
if (WIN32) if (WIN32)
acg_add_executable( ProgViewer WIN32 ${sources} ${headers}) acg_add_executable( ProgViewer WIN32 ${sources} ${headers})

View File

@@ -63,7 +63,7 @@ using namespace OpenMesh;
using namespace OpenMesh::Attributes; using namespace OpenMesh::Attributes;
struct MyTraits : public OpenMesh::DefaultTraits struct ProgTraits : public OpenMesh::DefaultTraits
{ {
VertexAttributes ( OpenMesh::Attributes::Normal | VertexAttributes ( OpenMesh::Attributes::Normal |
OpenMesh::Attributes::Status ); OpenMesh::Attributes::Status );
@@ -74,28 +74,28 @@ struct MyTraits : public OpenMesh::DefaultTraits
}; };
typedef OpenMesh::TriMesh_ArrayKernelT<MyTraits> MyMesh; typedef OpenMesh::TriMesh_ArrayKernelT<ProgTraits> MyMesh;
typedef MeshViewerWidgetT<MyMesh> MeshViewerWidget; typedef MeshViewerWidgetT<MyMesh> MeshViewerWidgetProgBase;
//== CLASS DEFINITION ========================================================= //== CLASS DEFINITION =========================================================
class ProgViewerWidget : public MeshViewerWidget class ProgViewerWidget : public MeshViewerWidgetProgBase
{ {
Q_OBJECT Q_OBJECT
public: public:
typedef MeshViewerWidget Base; typedef MeshViewerWidgetProgBase Base;
typedef ProgViewerWidget This; typedef ProgViewerWidget This;
public: public:
/// default constructor /// default constructor
explicit ProgViewerWidget(QWidget* _parent=0) explicit ProgViewerWidget(QWidget* _parent=0)
: MeshViewerWidget(_parent), : MeshViewerWidgetProgBase(_parent),
n_base_vertices_(0), n_base_vertices_(0),
n_base_faces_(0), n_base_faces_(0),
n_detail_vertices_(0), n_detail_vertices_(0),

View File

@@ -10,9 +10,16 @@ set (directories
. .
) )
# collect all header and source files set (sources
acg_append_files (headers "*.hh" ${directories}) MeshViewerWidget.cc
acg_append_files (sources "*.cc" ${directories}) QGLViewerWidget.cc
meshviewer.cc
)
set (headers
MeshViewerWidget.hh
QGLViewerWidget.hh
)
if (WIN32) if (WIN32)
acg_add_executable (QtViewer WIN32 ${sources} ${headers}) acg_add_executable (QtViewer WIN32 ${sources} ${headers})

View File

@@ -61,12 +61,12 @@
using namespace OpenMesh; using namespace OpenMesh;
using namespace OpenMesh::Attributes; using namespace OpenMesh::Attributes;
struct MyTraits : public OpenMesh::DefaultTraits struct MeshViewerWidgetTraits : public OpenMesh::DefaultTraits
{ {
HalfedgeAttributes(OpenMesh::Attributes::PrevHalfedge); HalfedgeAttributes(OpenMesh::Attributes::PrevHalfedge);
}; };
typedef OpenMesh::TriMesh_ArrayKernelT<MyTraits> MyMesh; typedef OpenMesh::TriMesh_ArrayKernelT<MeshViewerWidgetTraits> MyMesh;

View File

@@ -191,7 +191,7 @@ protected:
//============================================================================= //=============================================================================
#if defined(OM_INCLUDE_TEMPLATES) && !defined(OPENMESHAPPS_MESHVIEWERWIDGET_CC) #if defined(OM_INCLUDE_TEMPLATES)
# define OPENMESH_MESHVIEWERWIDGET_TEMPLATES # define OPENMESH_MESHVIEWERWIDGET_TEMPLATES
# include "MeshViewerWidgetT_impl.hh" # include "MeshViewerWidgetT_impl.hh"
#endif #endif

View File

@@ -39,9 +39,7 @@
* * * *
* ========================================================================= */ * ========================================================================= */
#pragma once
#define OPENMESHAPPS_MESHVIEWERWIDGET_CC
//== INCLUDES ================================================================= //== INCLUDES =================================================================
@@ -69,7 +67,6 @@ using namespace Qt;
# undef max # undef max
#endif #endif
using namespace Qt;
//== IMPLEMENTATION ========================================================== //== IMPLEMENTATION ==========================================================

View File

@@ -5,11 +5,7 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (Smoothing smooth.cc)
acg_append_files (headers "*.hh" .)
acg_append_files (sources "*.cc" .)
acg_add_executable (Smoothing ${headers} ${sources})
target_link_libraries (Smoothing target_link_libraries (Smoothing
OpenMeshCore OpenMeshCore

View File

@@ -66,18 +66,18 @@ typedef OpenMesh::TriMesh_ArrayKernelT<Traits> Mesh;
class MeshViewerWidget : public MeshViewerWidgetT<Mesh> class MeshViewerWidgetSubdivider : public MeshViewerWidgetT<Mesh>
{ {
public: public:
typedef MeshViewerWidgetT<Mesh> Base; typedef MeshViewerWidgetT<Mesh> Base;
/// default constructor /// default constructor
explicit MeshViewerWidget(QWidget* _parent=0) explicit MeshViewerWidgetSubdivider(QWidget* _parent=0)
: Base(_parent) : Base(_parent)
{} {}
/// destructor /// destructor
~MeshViewerWidget() {} ~MeshViewerWidgetSubdivider() {}
/// open mesh /// open mesh
inline bool open_mesh(const char* _filename, OpenMesh::IO::Options _opt) override inline bool open_mesh(const char* _filename, OpenMesh::IO::Options _opt) override

View File

@@ -98,7 +98,7 @@ SubdivideWidget(QWidget* _parent, const char* _name)
// sel_topo_type will be set when adding the radio button.; // sel_topo_type will be set when adding the radio button.;
// examiner widget // examiner widget
viewer_widget_ = new MeshViewerWidget(); viewer_widget_ = new MeshViewerWidgetSubdivider();
vbox->addWidget(viewer_widget_); vbox->addWidget(viewer_widget_);

View File

@@ -116,7 +116,7 @@ private slots:
private: private:
// widgets // widgets
MeshViewerWidget* viewer_widget_; MeshViewerWidgetSubdivider* viewer_widget_;
QTimer *timer_; QTimer *timer_;

View File

@@ -5,18 +5,14 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# source code directories set (headers
set (directories ../MeshViewerWidget.hh
../../QtViewer ../SubdivideWidget.hh
../ ../../QtViewer/QGLViewerWidget.hh
../../QtViewer/MeshViewerWidgetT.hh
../../QtViewer/MeshViewerWidgetT_impl.hh
) )
# collect all header and source files
acg_append_files (headers "*.hh" ${directories})
list (APPEND headers "../../QtViewer/MeshViewerWidgetT_impl.hh")
set (sources set (sources
../../QtViewer/QGLViewerWidget.cc ../../QtViewer/QGLViewerWidget.cc
../SubdivideWidget.cc ../SubdivideWidget.cc

View File

@@ -5,12 +5,7 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (commandlineAdaptiveSubdivider ../adaptive_subdivider.cc)
set (sources
../adaptive_subdivider.cc
)
acg_add_executable (commandlineAdaptiveSubdivider ${sources})
target_link_libraries (commandlineAdaptiveSubdivider target_link_libraries (commandlineAdaptiveSubdivider
OpenMeshCore OpenMeshCore

View File

@@ -5,12 +5,7 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (commandlineSubdivider ../subdivider.cc)
set (sources
../subdivider.cc
)
acg_add_executable (commandlineSubdivider ${sources})
target_link_libraries (commandlineSubdivider target_link_libraries (commandlineSubdivider
OpenMeshCore OpenMeshCore

View File

@@ -5,12 +5,7 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (Analyzer vdpmanalyzer.cc)
set (sources
./vdpmanalyzer.cc
)
acg_add_executable (Analyzer ${sources})
target_link_libraries (Analyzer target_link_libraries (Analyzer
OpenMeshCore OpenMeshCore

View File

@@ -5,15 +5,16 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files set (headers
acg_append_files (headers "*.hh" .) VDPMSynthesizerViewerWidget.hh
acg_append_files (sources "*.cc" .) )
list (APPEND sources "../../QtViewer/QGLViewerWidget.cc") set (sources
../../QtViewer/QGLViewerWidget.cc
vdpmsynthesizer.cc
VDPMSynthesizerViewerWidget.cc
)
list (APPEND headers "../../QtViewer/QGLViewerWidget.hh")
list (APPEND headers "../../QtViewer/MeshViewerWidgetT.hh")
list (APPEND headers "../../QtViewer/MeshViewerWidgetT_impl.hh")
if (WIN32) if (WIN32)
acg_add_executable (Synthesizer WIN32 ${sources} ${headers}) acg_add_executable (Synthesizer WIN32 ${sources} ${headers})

View File

@@ -5,12 +5,7 @@ include_directories (
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (mkbalancedpm mkbalancedpm.cc)
set (sources
./mkbalancedpm.cc
)
acg_add_executable (mkbalancedpm ${sources})
target_link_libraries (mkbalancedpm target_link_libraries (mkbalancedpm
OpenMeshCore OpenMeshCore

View File

@@ -2,14 +2,9 @@ include (ACGCommon)
include_directories ( include_directories (
../../.. ../../..
${CMAKE_CURRENT_SOURCE_DIR}
) )
# collect all header and source files acg_add_executable (mconvert mconvert.cc)
acg_append_files (headers "*.hh" .)
acg_append_files (sources "*.cc" .)
acg_add_executable (mconvert ${headers} ${sources})
target_link_libraries (mconvert target_link_libraries (mconvert
OpenMeshCore OpenMeshCore