59 lines
1.3 KiB
CMake
59 lines
1.3 KiB
CMake
set(MMESH_SOURCES
|
|
cc.c
|
|
meshdecimation.c
|
|
meshoptimizer.c
|
|
mm.c
|
|
mmbinsort.c
|
|
mmcore.c
|
|
mmhash.c
|
|
mmthread.c
|
|
)
|
|
|
|
add_library(mmesh SHARED ${MMESH_SOURCES})
|
|
target_include_directories(
|
|
mmesh PUBLIC
|
|
$<INSTALL_INTERFACE:${INCLUDE_DIR}>
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
|
|
)
|
|
target_link_libraries(mmesh PRIVATE ${MM_LIBS})
|
|
set_property(TARGET mmesh APPEND PROPERTY COMPILE_DEFINITIONS "MMESH_DLL_EXPORTS")
|
|
set_property(TARGET mmesh APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS "MMESH_DLL_IMPORTS")
|
|
install(TARGETS mmesh
|
|
EXPORT mmeshTargets
|
|
RUNTIME DESTINATION ${BIN_DIR}
|
|
LIBRARY DESTINATION ${LIB_DIR}
|
|
ARCHIVE DESTINATION ${LIB_DIR}
|
|
INCLUDES DESTINATION ${INCLUDE_DIR}
|
|
)
|
|
|
|
# Export the targets to a file
|
|
install(EXPORT mmeshTargets
|
|
FILE mmeshTargets.cmake
|
|
NAMESPACE mmesh::
|
|
DESTINATION lib/cmake/mmesh
|
|
)
|
|
|
|
# Generate the version file
|
|
include(CMakePackageConfigHelpers)
|
|
write_basic_package_version_file(
|
|
"${CMAKE_CURRENT_BINARY_DIR}/mmeshConfigVersion.cmake"
|
|
VERSION ${PROJECT_VERSION}
|
|
COMPATIBILITY AnyNewerVersion
|
|
)
|
|
|
|
# Install the config and version files
|
|
install(FILES
|
|
"${PROJECT_SOURCE_DIR}/cmake/mmeshConfig.cmake"
|
|
"${CMAKE_CURRENT_BINARY_DIR}/mmeshConfigVersion.cmake"
|
|
DESTINATION lib/cmake/mmesh
|
|
)
|
|
|
|
|
|
# Local Variables:
|
|
# tab-width: 8
|
|
# mode: cmake
|
|
# indent-tabs-mode: t
|
|
# End:
|
|
# ex: shiftwidth=2 tabstop=8
|
|
|