2009-06-04 09:38:36 +00:00
|
|
|
include (ACGCommon)
|
|
|
|
|
|
|
|
|
|
include_directories (
|
|
|
|
|
../..
|
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
# source code directories
|
|
|
|
|
set (directories
|
|
|
|
|
.
|
|
|
|
|
Decimater
|
2010-04-28 13:13:53 +00:00
|
|
|
Dualizer
|
2009-06-04 09:38:36 +00:00
|
|
|
Smoother
|
|
|
|
|
Subdivider/Adaptive/Composite
|
|
|
|
|
Subdivider/Uniform/Composite
|
|
|
|
|
Subdivider/Uniform
|
|
|
|
|
Utils
|
2010-03-01 17:33:34 +00:00
|
|
|
VDPM
|
2009-06-04 09:38:36 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
# collect all header and source files
|
|
|
|
|
acg_append_files (headers "*.hh" ${directories})
|
|
|
|
|
acg_append_files (sources "*.cc" ${directories})
|
|
|
|
|
|
|
|
|
|
IF(WIN32)
|
|
|
|
|
acg_append_files (sources "*.c" ${directories})
|
|
|
|
|
ENDIF(WIN32)
|
|
|
|
|
|
2011-01-28 10:28:43 +00:00
|
|
|
# Disable Library installation when not building OpenMesh on its own but as part of another project!
|
|
|
|
|
if ( NOT ${PROJECT_NAME} MATCHES "OpenMesh")
|
|
|
|
|
set(ACG_NO_LIBRARY_INSTALL true)
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
2009-06-04 09:38:36 +00:00
|
|
|
if (WIN32)
|
|
|
|
|
# OpenMesh has no dll exports so we have to build a static library on windows
|
|
|
|
|
acg_add_library (OpenMeshTools STATIC ${sources} ${headers})
|
|
|
|
|
else ()
|
2009-06-22 07:07:19 +00:00
|
|
|
acg_add_library (OpenMeshTools SHAREDANDSTATIC ${sources} ${headers})
|
2009-06-23 18:52:32 +00:00
|
|
|
set_target_properties (OpenMeshTools PROPERTIES VERSION ${OPENMESH_VERSION_MAJOR}.${OPENMESH_VERSION_MINOR}
|
|
|
|
|
SOVERSION ${OPENMESH_VERSION_MAJOR}.${OPENMESH_VERSION_MINOR} )
|
2009-06-04 09:38:36 +00:00
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
target_link_libraries (OpenMeshTools OpenMeshCore)
|
|
|
|
|
|
2009-06-22 08:32:22 +00:00
|
|
|
IF( NOT WIN32 )
|
|
|
|
|
target_link_libraries (OpenMeshToolsStatic OpenMeshCoreStatic)
|
|
|
|
|
ENDIF(NOT WIN32)
|
|
|
|
|
|
2011-03-09 12:46:49 +00:00
|
|
|
if ( ${PROJECT_NAME} MATCHES "OpenMesh")
|
2011-10-11 06:50:57 +00:00
|
|
|
|
2011-11-28 13:31:31 +00:00
|
|
|
if ( WIN32 AND BUILD_APPS)
|
|
|
|
|
if ( NOT "${CMAKE_GENERATOR}" MATCHES "MinGW Makefiles" )
|
|
|
|
|
# let bundle generation depend on target
|
|
|
|
|
add_dependencies (fixbundle OpenMeshTools)
|
|
|
|
|
endif()
|
2011-10-11 06:50:57 +00:00
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
2011-03-09 12:46:49 +00:00
|
|
|
# Add tools as dependency before fixbundle
|
2011-10-11 06:50:57 +00:00
|
|
|
if (APPLE)
|
2011-03-09 12:46:49 +00:00
|
|
|
# let bundle generation depend on target
|
|
|
|
|
add_dependencies (fixbundle OpenMeshTools)
|
|
|
|
|
add_dependencies (fixbundle OpenMeshToolsStatic)
|
|
|
|
|
endif()
|
2011-11-28 13:31:31 +00:00
|
|
|
|
2011-03-09 09:52:57 +00:00
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
2011-01-28 10:12:31 +00:00
|
|
|
# Install Header Files (Apple)
|
|
|
|
|
if ( NOT ACG_PROJECT_MACOS_BUNDLE AND APPLE )
|
2010-03-08 10:04:25 +00:00
|
|
|
FILE(GLOB files_install_Decimater "${CMAKE_CURRENT_SOURCE_DIR}/Decimater/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Decimater/*T.cc" )
|
2010-04-28 13:13:53 +00:00
|
|
|
FILE(GLOB files_install_Dualizer "${CMAKE_CURRENT_SOURCE_DIR}/Dualizer/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Dualizer/*T.cc" )
|
2010-03-08 10:04:25 +00:00
|
|
|
FILE(GLOB files_install_KERNEL_OSG "${CMAKE_CURRENT_SOURCE_DIR}/Kernel_OSG/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Kernel_OSG/*T.cc" )
|
|
|
|
|
FILE(GLOB files_install_Smoother "${CMAKE_CURRENT_SOURCE_DIR}/Smoother/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Decimater/*T.cc" )
|
|
|
|
|
FILE(GLOB files_install_Subdivider_Adaptive "${CMAKE_CURRENT_SOURCE_DIR}/Subdivider/Adaptive/Composite/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Subdivider/Adaptive/Composite/*T.cc" )
|
|
|
|
|
FILE(GLOB files_install_Subdivider_Uniform "${CMAKE_CURRENT_SOURCE_DIR}/Subdivider/Uniform/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Subdivider/Uniform/*T.cc" )
|
|
|
|
|
FILE(GLOB files_install_Subdivider_Uniform_Composite "${CMAKE_CURRENT_SOURCE_DIR}/Subdivider/Uniform/Composite/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Subdivider/Uniform/Composite/*T.cc" )
|
|
|
|
|
FILE(GLOB files_install_Utils "${CMAKE_CURRENT_SOURCE_DIR}/Utils/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/Utils/*T.cc" "${CMAKE_CURRENT_SOURCE_DIR}/Utils/getopt.h" )
|
|
|
|
|
FILE(GLOB files_install_VDPM "${CMAKE_CURRENT_SOURCE_DIR}/VDPM/*.hh" "${CMAKE_CURRENT_SOURCE_DIR}/VDPM/*T.cc" )
|
|
|
|
|
INSTALL(FILES ${files_install_Decimater} DESTINATION include/OpenMesh/Tools/Decimater )
|
2010-04-28 13:13:53 +00:00
|
|
|
INSTALL(FILES ${files_install_Dualizer} DESTINATION include/OpenMesh/Tools/Dualizer )
|
2010-03-08 10:04:25 +00:00
|
|
|
INSTALL(FILES ${files_install_KERNEL_OSG} DESTINATION include/OpenMesh/Tools/Kernel_OSG )
|
|
|
|
|
INSTALL(FILES ${files_install_Smoother} DESTINATION include/OpenMesh/Tools/Smoother )
|
|
|
|
|
INSTALL(FILES ${files_install_Subdivider_Adaptive} DESTINATION include/OpenMesh/Tools/Subdivider/Adaptive/Composite )
|
|
|
|
|
INSTALL(FILES ${files_install_Subdivider_Uniform} DESTINATION include/OpenMesh/Tools/Subdivider/Uniform )
|
|
|
|
|
INSTALL(FILES ${files_install_Subdivider_Uniform_Composite} DESTINATION include/OpenMesh/Tools/Subdivider/Uniform/Composite )
|
|
|
|
|
INSTALL(FILES ${files_install_Utils} DESTINATION include/OpenMesh/Tools/Utils )
|
|
|
|
|
INSTALL(FILES ${files_install_VDPM} DESTINATION include/OpenMesh/Tools/VDPM )
|
2011-01-28 10:12:31 +00:00
|
|
|
endif()
|
|
|
|
|
|
2010-03-08 10:04:25 +00:00
|
|
|
|
2011-01-28 10:12:31 +00:00
|
|
|
# Only install if the project name matches OpenMesh.
|
|
|
|
|
if (NOT APPLE AND ${PROJECT_NAME} MATCHES "OpenMesh")
|
2010-03-08 10:04:25 +00:00
|
|
|
|
2009-06-16 05:49:33 +00:00
|
|
|
# Install Header Files
|
|
|
|
|
install(DIRECTORY .
|
|
|
|
|
DESTINATION include/OpenMesh/Tools
|
|
|
|
|
FILES_MATCHING
|
|
|
|
|
PATTERN "*.hh"
|
|
|
|
|
PATTERN "CVS" EXCLUDE
|
|
|
|
|
PATTERN ".svn" EXCLUDE
|
|
|
|
|
PATTERN "tmp" EXCLUDE
|
|
|
|
|
PATTERN "Templates" EXCLUDE
|
|
|
|
|
PATTERN "Debian*" EXCLUDE)
|
|
|
|
|
|
|
|
|
|
#install Template cc files (required by headers)
|
|
|
|
|
install(DIRECTORY .
|
|
|
|
|
DESTINATION include/OpenMesh/Tools
|
|
|
|
|
FILES_MATCHING
|
|
|
|
|
PATTERN "*T.cc"
|
|
|
|
|
PATTERN "CVS" EXCLUDE
|
|
|
|
|
PATTERN ".svn" EXCLUDE
|
|
|
|
|
PATTERN "tmp" EXCLUDE
|
|
|
|
|
PATTERN "Templates" EXCLUDE
|
|
|
|
|
PATTERN "Debian*" EXCLUDE)
|
2009-06-23 06:18:07 +00:00
|
|
|
|
|
|
|
|
#install the config file
|
|
|
|
|
install(FILES Utils/getopt.h DESTINATION include/OpenMesh/Tools/Utils)
|
|
|
|
|
|
2009-09-02 13:53:23 +00:00
|
|
|
endif ()
|
|
|
|
|
|
2009-06-23 06:18:07 +00:00
|
|
|
|