|
caryoscelus |
b57217 |
##
|
|
caryoscelus |
b57217 |
## Build targets
|
|
caryoscelus |
b57217 |
##
|
|
caryoscelus |
b57217 |
|
|
caryoscelus |
b57217 |
## Main target: libsynfig
|
|
caryoscelus |
5dc91c |
## TODO: optional static linking?
|
|
caryoscelus |
5dc91c |
add_library(synfig SHARED "")
|
|
caryoscelus |
b57217 |
|
|
|
e83f04 |
message(STATUS "MLT DIR: ${MLT_INCLUDE_DIRS}")
|
|
|
e83f04 |
|
|
caryoscelus |
b1f581 |
target_include_directories(synfig
|
|
|
e83f04 |
# SYSTEM BEFORE PUBLIC
|
|
|
996ba4 |
SYSTEM PUBLIC
|
|
|
996ba4 |
${LIBXML_INCLUDE_DIRS}
|
|
|
e83f04 |
PUBLIC
|
|
caryoscelus |
b1f581 |
${SIGCPP_INCLUDE_DIRS}
|
|
caryoscelus |
b1f581 |
${GLIBMM_INCLUDE_DIRS}
|
|
caryoscelus |
b1f581 |
${GIOMM_INCLUDE_DIRS}
|
|
caryoscelus |
b1f581 |
${CAIRO_INCLUDE_DIRS}
|
|
caryoscelus |
b1f581 |
${PANGO_INCLUDE_DIRS}
|
|
|
6c97aa |
${MLT_INCLUDE_DIRS}
|
|
caryoscelus |
b1f581 |
${FFTW_INCLUDE_DIRS}
|
|
caryoscelus |
b1f581 |
)
|
|
caryoscelus |
b1f581 |
|
|
caryoscelus |
b57217 |
target_sources(synfig
|
|
caryoscelus |
5b1e71 |
PRIVATE
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/activepoint.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/bone.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/blur.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/cairo_operators.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/cairo_renddesc.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/canvas.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/context.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/curve_helper.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/curveset.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/distance.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/exception.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/guid.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/importer.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/cairoimporter.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/keyframe.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/layer.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/loadcanvas.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/main.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/module.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/node.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/palette.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/paramdesc.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/polynomial_root.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/rect.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/renddesc.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/render.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/savecanvas.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/surface.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/time.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/timepointcollect.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/transform.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/uniqueid.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/valuenode.cpp"
|
|
caryoscelus |
6523b8 |
"${CMAKE_CURRENT_LIST_DIR}/valuenode_registry.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/waypoint.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/matrix.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/filesystem.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/filesystemnative.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/filesystemgroup.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/filesystemtemporary.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/filecontainer.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/filecontainerzip.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/zstreambuf.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/valueoperations.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/soundprocessor.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/canvasfilenaming.cpp"
|
|
|
29b312 |
"${CMAKE_CURRENT_LIST_DIR}/token.cpp"
|
|
|
cfab44 |
"${CMAKE_CURRENT_LIST_DIR}/threadpool.cpp"
|
|
|
96d6ce |
"${CMAKE_CURRENT_LIST_DIR}/curve.cpp"
|
|
caryoscelus |
b57217 |
)
|
|
caryoscelus |
b57217 |
|
|
caryoscelus |
b57217 |
## these were added seprately in autotools build, preserving this for now
|
|
caryoscelus |
b57217 |
## TODO: either merge with main list or create new target
|
|
caryoscelus |
b57217 |
target_sources(synfig
|
|
caryoscelus |
5b1e71 |
PRIVATE
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_multi.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_null.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_null_tile.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_scanline.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_cairo.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_tile.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/target_cairo_tile.cpp"
|
|
caryoscelus |
b57217 |
)
|
|
caryoscelus |
b57217 |
target_sources(synfig
|
|
caryoscelus |
5b1e71 |
PRIVATE
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/listimporter.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/cairolistimporter.cpp"
|
|
caryoscelus |
b57217 |
)
|
|
caryoscelus |
b57217 |
target_sources(synfig
|
|
caryoscelus |
5b1e71 |
PRIVATE
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/blinepoint.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/widthpoint.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/dashitem.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/gradient.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/type.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/base_types.cpp"
|
|
caryoscelus |
b57217 |
"${CMAKE_CURRENT_LIST_DIR}/value.cpp"
|
|
caryoscelus |
b57217 |
)
|
|
caryoscelus |
b57217 |
|
|
caryoscelus |
f4661e |
##
|
|
caryoscelus |
f4661e |
## Sub-dirs
|
|
caryoscelus |
f4661e |
##
|
|
caryoscelus |
b1f581 |
|
|
caryoscelus |
b57217 |
## include sub-dirs
|
|
caryoscelus |
b57217 |
include(color/CMakeLists.txt)
|
|
caryoscelus |
b57217 |
include(layers/CMakeLists.txt)
|
|
caryoscelus |
b57217 |
include(rendering/CMakeLists.txt)
|
|
caryoscelus |
b57217 |
include(valuenodes/CMakeLists.txt)
|
|
caryoscelus |
b57217 |
|
|
caryoscelus |
f4661e |
## TODO: check if we need this for release build
|
|
caryoscelus |
174476 |
include(debug/CMakeLists.txt)
|
|
caryoscelus |
174476 |
|
|
caryoscelus |
b57217 |
target_link_libraries(synfig
|
|
|
e83f04 |
PUBLIC
|
|
caryoscelus |
f4661e |
${SIGCPP_LIBRARIES}
|
|
caryoscelus |
f4661e |
${GLIBMM_LIBARIES}
|
|
caryoscelus |
f4661e |
${GIOMM_LIBRARIES}
|
|
caryoscelus |
f4661e |
${CAIRO_LIBRARIES}
|
|
caryoscelus |
f4661e |
${LIBXML_LIBRARIES}
|
|
caryoscelus |
f4661e |
${MLT_LIBRARIES}
|
|
caryoscelus |
f4661e |
${ZLIB_LIBRARIES}
|
|
caryoscelus |
f4661e |
${FFTW_LIBRARIES}
|
|
caryoscelus |
f4661e |
${CMAKE_THREAD_LIBS_INIT}
|
|
caryoscelus |
39d3fe |
|
|
caryoscelus |
39d3fe |
# TODO: properly detect ltdl
|
|
caryoscelus |
39d3fe |
ltdl
|
|
|
b4dc1f |
PRIVATE
|
|
|
b4dc1f |
dl # TODO: Remove dlerror from module.cpp and this library too
|
|
caryoscelus |
b57217 |
)
|
|
caryoscelus |
5dc91c |
|
|
caryoscelus |
b1f581 |
## Install headers
|
|
caryoscelus |
b1f581 |
## TODO: find a better way to do that, maybe?
|
|
caryoscelus |
f4661e |
file(GLOB SYNFIG_HEADERS "${CMAKE_CURRENT_LIST_DIR}/*.h")
|
|
caryoscelus |
f4661e |
|
|
caryoscelus |
b1f581 |
install(
|
|
caryoscelus |
f4661e |
FILES ${SYNFIG_HEADERS}
|
|
caryoscelus |
b1f581 |
DESTINATION include/synfig
|
|
caryoscelus |
b1f581 |
)
|
|
caryoscelus |
b1f581 |
|
|
caryoscelus |
5b1e71 |
install(
|
|
caryoscelus |
5dc91c |
TARGETS synfig
|
|
caryoscelus |
b23e18 |
EXPORT synfig
|
|
caryoscelus |
5b1e71 |
LIBRARY DESTINATION lib
|
|
caryoscelus |
5b1e71 |
)
|
|
caryoscelus |
5b1e71 |
|
|
caryoscelus |
5b1e71 |
export(
|
|
caryoscelus |
b23e18 |
EXPORT synfig
|
|
caryoscelus |
5b1e71 |
FILE "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}/${PROJECT_NAME}-config.cmake"
|
|
caryoscelus |
5b1e71 |
)
|
|
caryoscelus |
5b1e71 |
|
|
caryoscelus |
5b1e71 |
install(
|
|
caryoscelus |
b23e18 |
EXPORT synfig
|
|
caryoscelus |
5b1e71 |
FILE "${PROJECT_NAME}-config.cmake"
|
|
caryoscelus |
5b1e71 |
DESTINATION "lib/cmake/${PROJECT_NAME}"
|
|
caryoscelus |
5dc91c |
)
|