diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index d135dc04fcc964bd635c95020f575424dcf70eff..f03f22c803e237af7efb463905adfdc684ad7874 100644 (file)
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
-SET(INKSCAPE_SRC)\r
-\r
-# A macro to replace slashes and spaces in a string with underscores\r
-MACRO(SANITIZE_PATH _string_var)\r
- STRING(REGEX REPLACE "[\\/ ]+" "_" ${_string_var} ${${_string_var}})\r
-ENDMACRO(SANITIZE_PATH _string_var)\r
-\r
-# A macro to prepend a given string onto the beginning of each string in a list\r
-MACRO(PREPEND _list _str)\r
- SET(_temp_list ${${_list}})\r
- SET(${_list})\r
- FOREACH(x ${_temp_list})\r
- SET(${_list} ${${_list}} ${_str}${x})\r
- ENDFOREACH(x)\r
-ENDMACRO(PREPEND _list _str)\r
-\r
-# All folder with CMakeLists.txt files (excluding internal libraries)\r
-SET(srcfolders\r
-algorithms\r
-api\r
-bind\r
-debug\r
-display\r
-dom\r
-dom/io\r
-dom/odf\r
-dom/util\r
-#dom/work\r
-extension\r
-#extension/dxf2svg\r
-extension/implementation\r
-extension/internal\r
-extension/param\r
-graphlayout\r
-helper\r
-inkjar\r
-io\r
-jabber_whiteboard\r
-jabber_whiteboard/dialog\r
-live_effects\r
-live_effects/parameter\r
-#pedro\r
-removeoverlap\r
-svg\r
-trace\r
-trace/potrace\r
-traits\r
-ui/cache\r
-ui\r
-ui/dialog\r
-ui/view\r
-ui/widget\r
-#utest\r
-util\r
-widgets\r
-xml\r
-)\r
-\r
-# 1) include each list file\r
-# 2) grab the variable inside \r
-# 3) prepend the full relative path to each file in list\r
-# 4) append the list to INKSCAPE_SRC\r
-FOREACH(dirlist ${srcfolders})\r
- SET(_temp_dirlist "${dirlist}")\r
- MESSAGE(STATUS "Processing ${CMAKE_CURRENT_SOURCE_DIR}/${dirlist}/CMakeLists.txt")\r
- INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/${dirlist}/CMakeLists.txt)\r
- SANITIZE_PATH(dirlist)\r
- PREPEND(${dirlist}_SRC "${_temp_dirlist}/")\r
- SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${${dirlist}_SRC})\r
-ENDFOREACH(dirlist)\r
-\r
-\r
-# All directories containing lists files that describe building internal libraries\r
-SET(libfolders
-2geom\r
-application\r
-dialogs\r
-libavoid\r
-libcola\r
-libcroco\r
-libgdl\r
-libnr\r
-libnrtype\r
-libvpsc\r
-)\r
-\r
-FOREACH(dirlist ${libfolders})\r
- ADD_SUBDIRECTORY(${dirlist})\r
-ENDFOREACH(dirlist)\r
-\r
IF(WIN32)\r
-SET(ONLY_WIN\r
-registrytool.cpp\r
-#deptool.cpp\r
-)\r
+ SET(ONLY_WIN\r
+ registrytool.cpp\r
+ #deptool.cpp\r
+ winmain.cpp)\r
ELSEIF(WIN32)\r
-SET(ONLY_WIN)\r
+ SET(ONLY_WIN)\r
ENDIF(WIN32)\r
\r
+SET(SP_SRC\r
+sp-anchor.cpp\r
+sp-animation.cpp\r
+sp-clippath.cpp\r
+sp-conn-end.cpp\r
+sp-conn-end-pair.cpp\r
+sp-cursor.cpp\r
+sp-defs.cpp\r
+sp-ellipse.cpp\r
+sp-filter.cpp\r
+sp-filter-primitive.cpp\r
+sp-filter-reference.cpp\r
+sp-flowdiv.cpp\r
+sp-flowregion.cpp\r
+sp-flowtext.cpp\r
+sp-font.cpp\r
+sp-font-face.cpp\r
+sp-gaussian-blur.cpp\r
+sp-glyph.cpp\r
+sp-gradient.cpp\r
+sp-gradient-reference.cpp\r
+sp-guide.cpp\r
+sp-glyph-kerning.cpp\r
+sp-image.cpp\r
+spiral-context.cpp\r
+sp-item.cpp\r
+sp-item-group.cpp\r
+sp-item-notify-moveto.cpp\r
+sp-item-rm-unsatisfied-cns.cpp\r
+sp-item-transform.cpp\r
+sp-item-update-cns.cpp\r
+sp-line.cpp\r
+splivarot.cpp\r
+sp-lpe-item.cpp\r
+sp-mask.cpp\r
+sp-metadata.cpp\r
+sp-metrics.cpp\r
+sp-missing-glyph.cpp\r
+sp-namedview.cpp\r
+sp-object.cpp\r
+sp-object-group.cpp\r
+sp-object-repr.cpp\r
+sp-offset.cpp\r
+sp-paint-server.cpp\r
+sp-path.cpp\r
+sp-pattern.cpp\r
+sp-polygon.cpp\r
+sp-polyline.cpp\r
+sp-rect.cpp\r
+sp-root.cpp\r
+sp-shape.cpp\r
+sp-skeleton.cpp\r
+sp-spiral.cpp\r
+sp-star.cpp\r
+sp-stop.cpp\r
+sp-string.cpp\r
+sp-style-elem.cpp\r
+sp-switch.cpp\r
+sp-symbol.cpp\r
+sp-text.cpp\r
+sp-tref.cpp\r
+sp-tref-reference.cpp\r
+sp-tspan.cpp\r
+sp-use.cpp\r
+sp-use-reference.cpp\r
+)\r
+\r
SET(INKSCAPE_SRC\r
-${INKSCAPE_SRC}\r
arc-context.cpp\r
attributes.cpp\r
axis-manip.cpp\r
color.cpp\r
color-profile.cpp\r
composite-undo-stack-observer.cpp\r
+common-context.cpp\r
conditions.cpp\r
conn-avoid-ref.cpp\r
+connection-points.cpp\r
connector-context.cpp\r
console-output-undo-observer.cpp\r
context-fns.cpp\r
-desktop-affine.cpp\r
+#deptool.cpp\r
desktop.cpp\r
desktop-events.cpp\r
desktop-handles.cpp\r
desktop-style.cpp\r
+device-manager.cpp\r
dir-util.cpp\r
document.cpp\r
document-subset.cpp\r
ege-color-prof-tracker.cpp\r
ege-output-action.cpp\r
ege-select-one-action.cpp\r
+eraser-context.cpp\r
event-context.cpp\r
event-log.cpp\r
+extension\r
extract-uri.cpp\r
file.cpp\r
filter-chemistry.cpp\r
filter-enums.cpp\r
fixes.cpp\r
flood-context.cpp\r
-fontsize-expansion.cpp\r
gc-anchored.cpp\r
gc.cpp\r
gc-finalized.cpp\r
gradient-drag.cpp\r
guide-snapper.cpp\r
help.cpp\r
+id-clash.cpp\r
+ige-mac-menu.c\r
ink-action.cpp\r
inkscape.cpp\r
+inkscape.rc\r
inkscape-stock.cpp\r
-##inkview is another executable file\r
-##needs to be separated as a second target\r
-#inkview.cpp\r
interface.cpp\r
knot.cpp\r
knotholder.cpp\r
+knot-holder-entity.cpp\r
layer-fns.cpp\r
layer-manager.cpp\r
line-geometry.cpp\r
persp3d.cpp\r
persp3d-reference.cpp\r
perspective-line.cpp\r
+plugin.def\r
preferences.cpp\r
prefix.cpp\r
-prefs-utils.cpp\r
print.cpp\r
profile-manager.cpp\r
proj_pt.cpp\r
selection-chemistry.cpp\r
selection.cpp\r
selection-describer.cpp\r
+#selfname.tpl\r
seltrans.cpp\r
seltrans-handles.cpp\r
shape-editor.cpp\r
snapped-line.cpp\r
snapped-point.cpp\r
snapper.cpp\r
-sp-anchor.cpp\r
-sp-animation.cpp\r
-sp-clippath.cpp\r
-sp-conn-end.cpp\r
-sp-conn-end-pair.cpp\r
-sp-cursor.cpp\r
-sp-defs.cpp\r
-sp-ellipse.cpp\r
-sp-feblend.cpp\r
-sp-fecolormatrix.cpp\r
-sp-fecomponenttransfer.cpp\r
-sp-fecomposite.cpp\r
-sp-feconvolvematrix.cpp\r
-sp-fediffuselighting.cpp\r
-sp-fedisplacementmap.cpp\r
-sp-fedistantlight.cpp\r
-sp-feflood.cpp\r
-sp-feimage.cpp\r
-sp-femerge.cpp\r
-sp-femergenode.cpp\r
-sp-femorphology.cpp\r
-sp-feoffset.cpp\r
-sp-fepointlight.cpp\r
-sp-fespecularlighting.cpp\r
-sp-fespotlight.cpp\r
-sp-fetile.cpp\r
-sp-feturbulence.cpp\r
-sp-filter.cpp\r
-sp-filter-primitive.cpp\r
-sp-filter-reference.cpp\r
-sp-flowdiv.cpp\r
-sp-flowregion.cpp\r
-sp-flowtext.cpp\r
-sp-gaussian-blur.cpp\r
-sp-gradient.cpp\r
-sp-gradient-reference.cpp\r
-sp-guide.cpp\r
-sp-image.cpp\r
-spiral-context.cpp\r
-sp-item.cpp\r
-sp-item-group.cpp\r
-sp-item-notify-moveto.cpp\r
-sp-item-rm-unsatisfied-cns.cpp\r
-sp-item-transform.cpp\r
-sp-item-update-cns.cpp\r
-sp-line.cpp\r
-splivarot.cpp\r
-sp-mask.cpp\r
-sp-metadata.cpp\r
-sp-metrics.cpp\r
-sp-namedview.cpp\r
-sp-object.cpp\r
-sp-object-group.cpp\r
-sp-object-repr.cpp\r
-sp-offset.cpp\r
-sp-paint-server.cpp\r
-sp-path.cpp\r
-sp-pattern.cpp\r
-sp-polygon.cpp\r
-sp-polyline.cpp\r
-sp-rect.cpp\r
-sp-root.cpp\r
-sp-shape.cpp\r
-sp-skeleton.cpp\r
-sp-spiral.cpp\r
-sp-star.cpp\r
-sp-string.cpp\r
-sp-style-elem.cpp\r
-sp-switch.cpp\r
-sp-symbol.cpp\r
-sp-text.cpp\r
-sp-tref.cpp\r
-sp-tref-reference.cpp\r
-sp-tspan.cpp\r
-sp-use.cpp\r
-sp-use-reference.cpp\r
star-context.cpp\r
-streams-gzip.cpp\r
-streams-handles.cpp\r
-streams-jar.cpp\r
-streams-zlib.cpp\r
style.cpp\r
#style-test.cpp\r
svg-view.cpp\r
vanishing-point.cpp\r
verbs.cpp\r
version.cpp\r
-winmain.cpp\r
zoom-context.cpp\r
${ONLY_WIN}\r
)\r
+# All folders for internal inkscape\r
+SET(internalfolders\r
+#algorithms\r
+#api\r
+bind\r
+debug\r
+dialogs\r
+display\r
+dom\r
+extension\r
+filters\r
+graphlayout\r
+helper\r
+inkjar\r
+io\r
+jabber_whiteboard\r
+live_effects\r
+pedro\r
+removeoverlap\r
+svg\r
+trace\r
+#traits\r
+ui\r
+util\r
+widgets\r
+xml\r
+2geom\r
+)\r
+SET(libfolders\r
+# Directories containing lists files that describe building internal libraries\r
+libavoid\r
+libcola\r
+libcroco\r
+libgdl\r
+libnr\r
+libnrtype\r
+libvpsc\r
+livarot\r
+)\r
+\r
+SET(dirs ${internalfolders} ${libfolders}\r
+)\r
+\r
+FOREACH(srclistsrc ${dirs})\r
+ ADD_SUBDIRECTORY(${srclistsrc})\r
+ENDFOREACH(srclistsrc)\r
+\r
+SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${GlibOutput})\r
\r
+ADD_LIBRARY(sp STATIC ${SP_SRC})\r
+TARGET_LINK_LIBRARIES(sp\r
+nr nrtype avoid cola croco gdl vpsc livarot ${internalfolders} ${INKSCAPE_LIBS}\r
+)\r
# make executable for INKSCAPE\r
ADD_EXECUTABLE(inkscape ${INKSCAPE_SRC})\r
TARGET_LINK_LIBRARIES(inkscape\r
- "${INKSCAPE_LINK_FLAGS}" 2geom avoid cola croco gdl nr nrtype vpsc\r
+nr nrtype sp avoid cola croco gdl vpsc livarot ${internalfolders} ${INKSCAPE_LIBS}\r
)\r
-#INSTALL(TARGETS INKSCAPE\r
-# RUNTIME DESTINATION bin\r
-# LIBRARY DESTINATION lib\r
-# ARCHIVE DESTINATION lib\r
-#)\r
\r
-#FILE(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/*.h")\r
-#INSTALL(FILES ${files} DESTINATION include/INKSCAPE/INKSCAPE)\r
+# make executable for INKVIEW\r
+#ADD_EXECUTABLE(inkview inkview.cpp)\r
+#TARGET_LINK_LIBRARIES(inkview\r
+# 2geom avoid cola croco gdl nr nrtype vpsc livarot sp ${internalfolders}\r
+#)\r
\r
-#CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/INKSCAPE.pc.in\r
-# ${CMAKE_BINARY_DIR}/INKSCAPE.pc @ONLY IMMEDIATE )\r
-#INSTALL(FILES "${CMAKE_BINARY_DIR}/INKSCAPE.pc" DESTINATION lib/pkgconfig)\r