FreeCAD / src /Mod /Surface /App /CMakeLists.txt
AbdulElahGwaith's picture
Upload folder using huggingface_hub
985c397 verified
# SPDX-License-Identifier: LGPL-2.1-or-later
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/Blending)
generate_from_py(Blending/BlendPoint)
generate_from_py(Blending/BlendCurve)
set(Surface_LIBS
FreeCADApp
Part
)
# BlendPoint Wrapper
SET(BlendingPy_SRCS
Blending/BlendPoint.pyi
Blending/BlendPointPyImp.cpp
Blending/BlendCurve.pyi
Blending/BlendCurvePyImp.cpp
)
SOURCE_GROUP("Blending" FILES ${BlendingPy_SRCS})
SET(Blending_SRCS
Blending/FeatureBlendCurve.cpp
Blending/FeatureBlendCurve.h
Blending/BlendPoint.cpp
Blending/BlendPoint.h
Blending/BlendCurve.cpp
Blending/BlendCurve.h
)
SET(Surface_SRCS
${Blending_SRCS}
${BlendingPy_SRCS}
AppSurface.cpp
PreCompiled.h
FeatureExtend.cpp
FeatureExtend.h
FeatureGeomFillSurface.cpp
FeatureGeomFillSurface.h
FeatureFilling.cpp
FeatureFilling.h
FeatureSections.cpp
FeatureSections.h
FeatureSewing.cpp
FeatureSewing.h
FeatureCut.cpp
FeatureCut.h
Measure.cpp
Measure.h
)
add_library(Surface SHARED ${Surface_SRCS})
if(FREECAD_USE_PCH)
target_precompile_headers(Surface PRIVATE
$<$<COMPILE_LANGUAGE:CXX>:"${CMAKE_CURRENT_LIST_DIR}/PreCompiled.h">
)
endif(FREECAD_USE_PCH)
target_include_directories(
Surface
PRIVATE
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
)
target_include_directories(
Surface
SYSTEM
PUBLIC
${FREETYPE_INCLUDE_DIRS}
)
target_link_directories(Surface PUBLIC ${OCC_LIBRARY_DIR})
target_link_libraries(Surface ${Surface_LIBS})
if (FREECAD_WARN_ERROR)
target_compile_warn_error(Surface)
endif()
SET_BIN_DIR(Surface Surface /Mod/Surface)
SET_PYTHON_PREFIX_SUFFIX(Surface)
install(TARGETS Surface DESTINATION ${CMAKE_INSTALL_LIBDIR})