CMakeLists.txt revision 14d987a7eb2831892a63e804779b279f0fde3fc8
# -----------------------------------------------------------------------------
#
# -----------------------------------------------------------------------------
set(CMAKE_CTEST_COMMAND ctest -V)
add_subdirectory(${GMOCK_DIR} ${CMAKE_BINARY_DIR}/gmock)
include_directories(SYSTEM ${GMOCK_DIR}/gtest/include
${GMOCK_DIR}/include)
# copied from ../src/CMakeLists.txt
# TODO resolve to shared definition
set(sp_SRC
../src/attribute-rel-css.cpp
../src/attribute-rel-svg.cpp
../src/attribute-rel-util.cpp
../src/sp-anchor.cpp
../src/sp-clippath.cpp
../src/sp-conn-end-pair.cpp
../src/sp-conn-end.cpp
../src/sp-cursor.cpp
../src/sp-defs.cpp
../src/sp-desc.cpp
../src/sp-ellipse.cpp
../src/sp-factory.cpp
../src/sp-filter-primitive.cpp
../src/sp-filter-reference.cpp
../src/sp-filter.cpp
../src/sp-flowdiv.cpp
../src/sp-flowregion.cpp
../src/sp-flowtext.cpp
../src/sp-font-face.cpp
../src/sp-font.cpp
../src/sp-glyph-kerning.cpp
../src/sp-glyph.cpp
../src/sp-gradient-reference.cpp
../src/sp-gradient.cpp
../src/sp-guide.cpp
../src/sp-hatch-path.cpp
../src/sp-hatch.cpp
../src/sp-image.cpp
../src/sp-item-group.cpp
../src/sp-item-notify-moveto.cpp
../src/sp-item-rm-unsatisfied-cns.cpp
../src/sp-item-transform.cpp
../src/sp-item-update-cns.cpp
../src/sp-item.cpp
../src/sp-line.cpp
../src/sp-linear-gradient.cpp
../src/sp-lpe-item.cpp
../src/sp-marker.cpp
../src/sp-mask.cpp
../src/sp-mesh-array.cpp
../src/sp-mesh-patch.cpp
../src/sp-mesh-row.cpp
../src/sp-mesh.cpp
../src/sp-metadata.cpp
../src/sp-missing-glyph.cpp
../src/sp-namedview.cpp
../src/sp-object-group.cpp
../src/sp-object.cpp
../src/sp-offset.cpp
../src/sp-paint-server.cpp
../src/sp-path.cpp
../src/sp-pattern.cpp
../src/sp-polygon.cpp
../src/sp-polyline.cpp
../src/sp-radial-gradient.cpp
../src/sp-rect.cpp
../src/sp-root.cpp
../src/sp-script.cpp
../src/sp-shape.cpp
../src/sp-solid-color.cpp
../src/sp-spiral.cpp
../src/sp-star.cpp
../src/sp-stop.cpp
../src/sp-string.cpp
../src/sp-style-elem.cpp
../src/sp-switch.cpp
../src/sp-symbol.cpp
../src/sp-tag-use-reference.cpp
../src/sp-tag-use.cpp
../src/sp-tag.cpp
../src/sp-text.cpp
../src/sp-title.cpp
../src/sp-tref-reference.cpp
../src/sp-tref.cpp
../src/sp-tspan.cpp
../src/sp-use-reference.cpp
../src/sp-use.cpp
../src/splivarot.cpp
../src/viewbox.cpp
# -------
# Headers
../src/attribute-rel-css.h
../src/attribute-rel-svg.h
../src/attribute-rel-util.h
../src/sp-anchor.h
../src/sp-clippath.h
../src/sp-conn-end-pair.h
../src/sp-conn-end.h
../src/sp-cursor.h
../src/sp-defs.h
../src/sp-desc.h
../src/sp-ellipse.h
../src/sp-factory.h
../src/sp-filter-primitive.h
../src/sp-filter-reference.h
../src/sp-filter-units.h
../src/sp-filter.h
../src/sp-flowdiv.h
../src/sp-flowregion.h
../src/sp-flowtext.h
../src/sp-font-face.h
../src/sp-font.h
../src/sp-glyph-kerning.h
../src/sp-glyph.h
../src/sp-gradient-reference.h
../src/sp-gradient-spread.h
../src/sp-gradient-test.h
../src/sp-gradient-units.h
../src/sp-gradient-vector.h
../src/sp-gradient.h
../src/sp-guide-attachment.h
../src/sp-guide-constraint.h
../src/sp-guide.h
../src/sp-hatch-path.h
../src/sp-hatch.h
../src/sp-image.h
../src/sp-item-group.h
../src/sp-item-notify-moveto.h
../src/sp-item-rm-unsatisfied-cns.h
../src/sp-item-transform.h
../src/sp-item-update-cns.h
../src/sp-item.h
../src/sp-line.h
../src/sp-linear-gradient.h
../src/sp-lpe-item.h
../src/sp-marker-loc.h
../src/sp-marker.h
../src/sp-mask.h
../src/sp-mesh-array.h
../src/sp-mesh-patch.h
../src/sp-mesh-row.h
../src/sp-mesh.h
../src/sp-metadata.h
../src/sp-missing-glyph.h
../src/sp-namedview.h
../src/sp-object-group.h
../src/sp-object.h
../src/sp-offset.h
../src/sp-paint-server-reference.h
../src/sp-paint-server.h
../src/sp-path.h
../src/sp-pattern.h
../src/sp-polygon.h
../src/sp-polyline.h
../src/sp-radial-gradient.h
../src/sp-rect.h
../src/sp-root.h
../src/sp-script.h
../src/sp-shape.h
../src/sp-solid-color.h
../src/sp-spiral.h
../src/sp-star.h
../src/sp-stop.h
../src/sp-string.h
../src/sp-style-elem-test.h
../src/sp-style-elem.h
../src/sp-switch.h
../src/sp-symbol.h
../src/sp-text.h
../src/sp-textpath.h
../src/sp-title.h
../src/sp-tref-reference.h
../src/sp-tref.h
../src/sp-tspan.h
../src/sp-use-reference.h
../src/sp-use.h
../src/viewbox.h
)
# copied from ../src/CMakeLists.txt
# TODO resolve to shared definition
set(inkscape_SRC
../src/attributes.cpp
../src/axis-manip.cpp
../src/box3d-side.cpp
../src/box3d.cpp
../src/color-profile.cpp
../src/color.cpp
../src/composite-undo-stack-observer.cpp
../src/conditions.cpp
../src/conn-avoid-ref.cpp
../src/console-output-undo-observer.cpp
../src/context-fns.cpp
../src/desktop-events.cpp
../src/desktop-style.cpp
../src/desktop.cpp
../src/device-manager.cpp
../src/dir-util.cpp
../src/document-subset.cpp
../src/document-undo.cpp
../src/document.cpp
../src/ege-color-prof-tracker.cpp
../src/event-log.cpp
../src/extract-uri.cpp
../src/file.cpp
../src/filter-chemistry.cpp
../src/filter-enums.cpp
../src/gc-anchored.cpp
../src/gc-finalized.cpp
../src/gradient-chemistry.cpp
../src/gradient-drag.cpp
../src/graphlayout.cpp
../src/guide-snapper.cpp
../src/help.cpp
../src/id-clash.cpp
../src/inkscape.cpp
../src/knot-holder-entity.cpp
../src/knot-ptr.cpp
../src/knot.cpp
../src/knotholder.cpp
../src/layer-fns.cpp
../src/layer-manager.cpp
../src/layer-model.cpp
../src/line-geometry.cpp
../src/line-snapper.cpp
../src/main-cmdlineact.cpp
../src/media.cpp
../src/message-context.cpp
../src/message-stack.cpp
../src/mod360.cpp
../src/object-hierarchy.cpp
../src/object-snapper.cpp
../src/path-chemistry.cpp
../src/persp3d-reference.cpp
../src/persp3d.cpp
../src/perspective-line.cpp
../src/preferences.cpp
../src/prefix.cpp
../src/print.cpp
../src/profile-manager.cpp
../src/proj_pt.cpp
../src/rdf.cpp
../src/removeoverlap.cpp
../src/resource-manager.cpp
../src/rubberband.cpp
../src/satisfied-guide-cns.cpp
../src/selcue.cpp
../src/selection-chemistry.cpp
../src/selection-describer.cpp
../src/selection.cpp
../src/seltrans-handles.cpp
../src/seltrans.cpp
../src/shortcuts.cpp
../src/snap-preferences.cpp
../src/snap.cpp
../src/snapped-curve.cpp
../src/snapped-line.cpp
../src/snapped-point.cpp
../src/snapper.cpp
../src/style-internal.cpp
../src/style.cpp
../src/svg-view-widget.cpp
../src/svg-view.cpp
../src/text-chemistry.cpp
../src/text-editing.cpp
../src/transf_mat_3x4.cpp
../src/unclump.cpp
../src/unicoderange.cpp
../src/uri-references.cpp
../src/uri.cpp
../src/vanishing-point.cpp
../src/verbs.cpp
../src/version.cpp
# -------
# Headers
../src/MultiPrinter.h
../src/PylogFormatter.h
../src/TRPIFormatter.h
../src/attributes-test.h
../src/attributes.h
../src/axis-manip.h
../src/bad-uri-exception.h
../src/box3d-side.h
../src/box3d.h
../src/cms-color-types.h
../src/cms-system.h
../src/color-profile-cms-fns.h
../src/color-profile-test.h
../src/color-profile.h
../src/color-rgba.h
../src/color.h
../src/colorspace.h
../src/composite-undo-stack-observer.h
../src/conditions.h
../src/conn-avoid-ref.h
../src/console-output-undo-observer.h
../src/context-fns.h
../src/decimal-round.h
../src/desktop-events.h
../src/desktop-style.h
../src/desktop.h
../src/device-manager.h
../src/dir-util-test.h
../src/dir-util.h
../src/document-private.h
../src/document-subset.h
../src/document-undo.h
../src/document.h
../src/ege-color-prof-tracker.h
../src/enums.h
../src/event-log.h
../src/event.h
../src/extract-uri-test.h
../src/extract-uri.h
../src/file.h
../src/fill-or-stroke.h
../src/filter-chemistry.h
../src/filter-enums.h
../src/gc-anchored.h
../src/gc-finalized.h
../src/gradient-chemistry.h
../src/gradient-drag.h
../src/graphlayout.h
../src/guide-snapper.h
../src/help.h
../src/helper-fns.h
../src/icon-size.h
../src/id-clash.h
../src/inkscape-version.h
../src/inkscape.h
../src/isinf.h
../src/knot-enums.h
../src/knot-holder-entity.h
../src/knot-ptr.h
../src/knot.h
../src/knotholder.h
../src/layer-fns.h
../src/layer-manager.h
../src/layer-model.h
../src/line-geometry.h
../src/line-snapper.h
../src/macros.h
../src/main-cmdlineact.h
../src/marker-test.h
../src/media.h
../src/menus-skeleton.h
../src/message-context.h
../src/message-stack.h
../src/message.h
../src/mod360-test.h
../src/mod360.h
../src/number-opt-number.h
../src/object-hierarchy.h
../src/object-snapper.h
../src/object-test.h
../src/path-chemistry.h
../src/path-prefix.h
../src/persp3d-reference.h
../src/persp3d.h
../src/perspective-line.h
../src/preferences-skeleton.h
../src/preferences-test.h
../src/preferences.h
../src/prefix.h
../src/print.h
../src/profile-manager.h
../src/proj_pt.h
../src/rdf.h
../src/remove-last.h
../src/removeoverlap.h
../src/require-config.h
../src/resource-manager.h
../src/round-test.h
../src/round.h
../src/rubberband.h
../src/satisfied-guide-cns.h
../src/selcue.h
../src/selection-chemistry.h
../src/selection-describer.h
../src/selection.h
../src/seltrans-handles.h
../src/seltrans.h
../src/shortcuts.h
../src/snap-candidate.h
../src/snap-enums.h
../src/snap-preferences.h
../src/snap.h
../src/snapped-curve.h
../src/snapped-line.h
../src/snapped-point.h
../src/snapper.h
../src/splivarot.h
../src/streq.h
../src/strneq.h
../src/style-enums.h
../src/style-internal.h
../src/style-test.h
../src/style.h
../src/svg-profile.h
../src/svg-view-widget.h
../src/svg-view.h
../src/syseq.h
../src/test-helpers.h
../src/text-chemistry.h
../src/text-editing.h
../src/text-tag-attributes.h
../src/transf_mat_3x4.h
../src/unclump.h
../src/undo-stack-observer.h
../src/unicoderange.h
../src/uri-references.h
../src/uri-test.h
../src/uri.h
../src/vanishing-point.h
../src/verbs-test.h
../src/verbs.h
../src/version.h
)
get_property(inkscape_global_SRC GLOBAL PROPERTY inkscape_global_SRC)
set_source_files_properties(
${CMAKE_BINARY_DIR}/src/inkscape-version.cpp
PROPERTIES GENERATED TRUE)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/__/src)
add_executable(unittest
unittest.cpp
${inkscape_SRC}
${sp_SRC}
${inkscape_global_SRC}
${CMAKE_BINARY_DIR}/src/inkscape-version.cpp
)
add_dependencies(unittest inkscape_version)
target_link_libraries(unittest
gmock_main
# order from automake
#sp_LIB
nrtype_LIB
#inkscape_LIB
#sp_LIB # annoying, we need both!
nrtype_LIB # annoying, we need both!
croco_LIB
avoid_LIB
gdl_LIB
cola_LIB
vpsc_LIB
livarot_LIB
uemf_LIB
2geom_LIB
depixelize_LIB
util_LIB
gc_LIB
${INKSCAPE_LIBS}
)
add_test(BaseTest ${EXECUTABLE_OUTPUT_PATH}/unittest)
add_dependencies(check unittest)
#