diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 42d99f9cb86742f6ba3799d6c32a15a845db058f..a84909382ae313332760f9611f03d29cc8b35702 100644 (file)
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
-SET(INKSCAPE_SRC
+IF(WIN32)\r
+ SET(ONLY_WIN\r
+ registrytool.cpp\r
+ #deptool.cpp
+ winmain.cpp)\r
+ELSEIF(WIN32)\r
+ SET(ONLY_WIN)\r
+ENDIF(WIN32)\r
+SET(SP_SRC
+sp-anchor.cpp
+sp-animation.cpp
+sp-clippath.cpp
+sp-conn-end.cpp
+sp-conn-end-pair.cpp
+sp-cursor.cpp
+sp-defs.cpp
+sp-ellipse.cpp
+sp-feblend.cpp
+sp-fecolormatrix.cpp
+sp-fecomponenttransfer.cpp
+sp-fecomponenttransfer-funcnode.cpp
+sp-fecomposite.cpp
+sp-feconvolvematrix.cpp
+sp-fediffuselighting.cpp
+sp-fedisplacementmap.cpp
+sp-fedistantlight.cpp
+sp-feflood.cpp
+sp-feimage.cpp
+sp-femerge.cpp
+sp-femergenode.cpp
+sp-femorphology.cpp
+sp-feoffset.cpp
+sp-fepointlight.cpp
+sp-fespecularlighting.cpp
+sp-fespotlight.cpp
+sp-fetile.cpp
+sp-feturbulence.cpp
+sp-filter.cpp
+sp-filter-primitive.cpp
+sp-filter-reference.cpp
+sp-flowdiv.cpp
+sp-flowregion.cpp
+sp-flowtext.cpp
+sp-font.cpp
+sp-font-face.cpp
+sp-gaussian-blur.cpp
+sp-glyph.cpp
+sp-gradient.cpp
+sp-gradient-reference.cpp
+sp-guide.cpp
+sp-glyph-kerning.cpp
+sp-image.cpp
+spiral-context.cpp
+sp-item.cpp
+sp-item-group.cpp
+sp-item-notify-moveto.cpp
+sp-item-rm-unsatisfied-cns.cpp
+sp-item-transform.cpp
+sp-item-update-cns.cpp
+sp-line.cpp
+splivarot.cpp
+sp-lpe-item.cpp
+sp-mask.cpp
+sp-metadata.cpp
+sp-metrics.cpp
+sp-missing-glyph.cpp
+sp-namedview.cpp
+sp-object.cpp
+sp-object-group.cpp
+sp-object-repr.cpp
+sp-offset.cpp
+sp-paint-server.cpp
+sp-path.cpp
+sp-pattern.cpp
+sp-polygon.cpp
+sp-polyline.cpp
+sp-rect.cpp
+sp-root.cpp
+sp-shape.cpp
+sp-skeleton.cpp
+sp-spiral.cpp
+sp-star.cpp
+sp-string.cpp
+sp-style-elem.cpp
+sp-switch.cpp
+sp-symbol.cpp
+sp-text.cpp
+sp-tref.cpp
+sp-tref-reference.cpp
+sp-tspan.cpp
+sp-use.cpp
+sp-use-reference.cpp
+)
+\r
+SET(INKSCAPE_SRC\r
arc-context.cpp
attributes.cpp
axis-manip.cpp
color.cpp
color-profile.cpp
composite-undo-stack-observer.cpp
+common-context.cpp
conditions.cpp
conn-avoid-ref.cpp
connector-context.cpp
console-output-undo-observer.cpp
context-fns.cpp
-deptool.cpp
+#deptool.cpp
desktop-affine.cpp
desktop.cpp
desktop-events.cpp
desktop-handles.cpp
desktop-style.cpp
+device-manager.cpp
dir-util.cpp
document.cpp
document-subset.cpp
ege-color-prof-tracker.cpp
ege-output-action.cpp
ege-select-one-action.cpp
+eraser-context.cpp
event-context.cpp
event-log.cpp
+extension
extract-uri.cpp
file.cpp
filter-chemistry.cpp
gradient-drag.cpp
guide-snapper.cpp
help.cpp
+id-clash.cpp
+ige-mac-menu.c
ink-action.cpp
inkscape.cpp
+inkscape.rc
inkscape-stock.cpp
-inkview.cpp
interface.cpp
knot.cpp
knotholder.cpp
+knot-holder-entity.cpp
layer-fns.cpp
layer-manager.cpp
line-geometry.cpp
persp3d.cpp
persp3d-reference.cpp
perspective-line.cpp
+plugin.def
preferences.cpp
prefix.cpp
prefs-utils.cpp
profile-manager.cpp
proj_pt.cpp
rect-context.cpp
-registrytool.cpp
rubberband.cpp
satisfied-guide-cns.cpp
selcue.cpp
selection-chemistry.cpp
selection.cpp
selection-describer.cpp
+#selfname.tpl
seltrans.cpp
seltrans-handles.cpp
shape-editor.cpp
snapped-line.cpp
snapped-point.cpp
snapper.cpp
-sp-anchor.cpp
-sp-animation.cpp
-sp-clippath.cpp
-sp-conn-end.cpp
-sp-conn-end-pair.cpp
-sp-cursor.cpp
-sp-defs.cpp
-sp-ellipse.cpp
-sp-feblend.cpp
-sp-fecolormatrix.cpp
-sp-fecomponenttransfer.cpp
-sp-fecomposite.cpp
-sp-feconvolvematrix.cpp
-sp-fediffuselighting.cpp
-sp-fedisplacementmap.cpp
-sp-fedistantlight.cpp
-sp-feflood.cpp
-sp-feimage.cpp
-sp-femerge.cpp
-sp-femergenode.cpp
-sp-femorphology.cpp
-sp-feoffset.cpp
-sp-fepointlight.cpp
-sp-fespecularlighting.cpp
-sp-fespotlight.cpp
-sp-fetile.cpp
-sp-feturbulence.cpp
-sp-filter.cpp
-sp-filter-primitive.cpp
-sp-filter-reference.cpp
-sp-flowdiv.cpp
-sp-flowregion.cpp
-sp-flowtext.cpp
-sp-gaussian-blur.cpp
-sp-gradient.cpp
-sp-gradient-reference.cpp
-sp-guide.cpp
-sp-image.cpp
-spiral-context.cpp
-sp-item.cpp
-sp-item-group.cpp
-sp-item-notify-moveto.cpp
-sp-item-rm-unsatisfied-cns.cpp
-sp-item-transform.cpp
-sp-item-update-cns.cpp
-sp-line.cpp
-splivarot.cpp
-sp-mask.cpp
-sp-metadata.cpp
-sp-metrics.cpp
-sp-namedview.cpp
-sp-object.cpp
-sp-object-group.cpp
-sp-object-repr.cpp
-sp-offset.cpp
-sp-paint-server.cpp
-sp-path.cpp
-sp-pattern.cpp
-sp-polygon.cpp
-sp-polyline.cpp
-sp-rect.cpp
-sp-root.cpp
-sp-shape.cpp
-sp-skeleton.cpp
-sp-spiral.cpp
-sp-star.cpp
-sp-string.cpp
-sp-style-elem.cpp
-sp-switch.cpp
-sp-symbol.cpp
-sp-text.cpp
-sp-tref.cpp
-sp-tref-reference.cpp
-sp-tspan.cpp
-sp-use.cpp
-sp-use-reference.cpp
star-context.cpp
streams-gzip.cpp
streams-handles.cpp
streams-jar.cpp
streams-zlib.cpp
style.cpp
-style-test.cpp
+#style-test.cpp
svg-view.cpp
svg-view-widget.cpp
text-chemistry.cpp
vanishing-point.cpp
verbs.cpp
version.cpp
-winmain.cpp
-zoom-context.cpp
-${algorithms}
-${api}
-${application}
-${BIND_SRC}
-${debug}
-${dialogs}
-${display}
-${dom_SRC}
-${extension_SRC}
-${graphlayout_SRC}
-${extension_SRC}
-${helper_SRC}
-${inkjar_SRC}
-${io_SRC}
-${jabber_whiteboard_SRC}
-#${
-#${
-#${
-#${
-)
-
-# make executable for INKSCAPE
-ADD_EXECUTABLE(inkscape ${INKSCAPE_SRC})
-
-#INSTALL(TARGETS INKSCAPE
-# RUNTIME DESTINATION bin
-# LIBRARY DESTINATION lib
-# ARCHIVE DESTINATION lib
-#)
-
-#FILE(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-#INSTALL(FILES ${files} DESTINATION include/INKSCAPE/INKSCAPE)
-
-#CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/INKSCAPE.pc.in
-# ${CMAKE_BINARY_DIR}/INKSCAPE.pc @ONLY IMMEDIATE )
-#INSTALL(FILES "${CMAKE_BINARY_DIR}/INKSCAPE.pc" DESTINATION lib/pkgconfig)
-
-
-# Add New folders in src folder here
-SET(srcfolders
-2geom
-algorithms
+zoom-context.cpp\r
+${ONLY_WIN}\r
+)\r
+# All folder with CMakeLists.txt files (excluding internal libraries)\r
+SET(srcfolders\r
+algorithms\r
api
-application
-bind
+application\r
+bind\r
debug
-dialogs
-display
-dom
-extension
-graphlayout
-helper
-inkjar
-io
-jabber_whiteboard
-libavoid
-libcola
-libcroco
-libgdl
-libnr
-libnrtype
+dialogs\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
+extension/internal/bitmap
+extension/internal/filter
+extension/internal/pdfinput\r
+extension/param
+extension/script\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
+SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${GlibOutput})\r
+# All directories containing lists files that describe building internal libraries\r
+SET(libfolders
+2geom\r
+libavoid\r
+libcola\r
+libcroco\r
+libgdl\r
+libnr\r
+libnrtype\r
libvpsc
-livarot
-live_effects
-pedro
-svg
-pixmaps
-trace
-traits
-ui
-removeoverlap
-utest
-util
-widgets
-xml
-)
+livarot\r
+)\r
\r
-FOREACH(dirlist ${srcfolders})
-ADD_SUBDIRECTORY(${dirlist})
-ENDFOREACH(dirlist)
+FOREACH(dirlistsrc ${libfolders})\r
+ ADD_SUBDIRECTORY(${dirlistsrc})\r
+ENDFOREACH(dirlistsrc)\r
+
+message(status "${INKSCAPE_LIBS}")
+ADD_LIBRARY(sp STATIC ${SP_SRC})\r
+TARGET_LINK_LIBRARIES(sp \r
+ 2geom avoid cola croco gdl nr nrtype vpsc livarot\r
+)\r
+# make executable for INKSCAPE\r
+ADD_EXECUTABLE(inkscape ${INKSCAPE_SRC})\r
+TARGET_LINK_LIBRARIES(inkscape\r
+ 2geom avoid cola croco gdl nr nrtype vpsc livarot sp\r
+)
+
+# make executable for INKVIEW
+#ADD_EXECUTABLE(inkview inkview.cpp)
+#TARGET_LINK_LIBRARIES(inkview\r
+# "${INKSCAPE_LINK_FLAGS}" 2geom avoid cola croco gdl nr nrtype vpsc livarot sp\r
+#)\r
+