Code

Patch so Inkscape will compile on Solaris 10 from LP https://bugs.launchpad.net/inksc...
[inkscape.git] / src / CMakeLists.txt
index 4a31b58df91cb178adc035ba8a0a78ca309d20a0..a84909382ae313332760f9611f03d29cc8b35702 100644 (file)
-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
+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
+box3d-context.cpp
+box3d.cpp
+box3d-side.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
+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
+document-undo.cpp
+doxygen-main.cpp
+draw-anchor.cpp
+draw-context.cpp
+dropper-context.cpp
+dyna-draw-context.cpp
+ege-adjustment-action.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
+filter-enums.cpp
+fixes.cpp
+flood-context.cpp
+fontsize-expansion.cpp
+gc-anchored.cpp
+gc.cpp
+gc-finalized.cpp
+gradient-chemistry.cpp
+gradient-context.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
+interface.cpp
+knot.cpp
+knotholder.cpp
+knot-holder-entity.cpp
+layer-fns.cpp
+layer-manager.cpp
+line-geometry.cpp
+line-snapper.cpp
+main-cmdlineact.cpp
+main.cpp
+marker.cpp
+media.cpp
+message-context.cpp
+message-stack.cpp
+mod360.cpp
+node-context.cpp
+nodepath.cpp
+object-edit.cpp
+object-hierarchy.cpp
+object-snapper.cpp
+path-chemistry.cpp
+pencil-context.cpp
+pen-context.cpp
+persp3d.cpp
+persp3d-reference.cpp
+perspective-line.cpp
+plugin.def
+preferences.cpp
+prefix.cpp
+prefs-utils.cpp
+print.cpp
+profile-manager.cpp
+proj_pt.cpp
+rect-context.cpp
+rubberband.cpp
+satisfied-guide-cns.cpp
+selcue.cpp
+select-context.cpp
+selection-chemistry.cpp
+selection.cpp
+selection-describer.cpp
+#selfname.tpl
+seltrans.cpp
+seltrans-handles.cpp
+shape-editor.cpp
+shortcuts.cpp
+snap.cpp
+snapped-line.cpp
+snapped-point.cpp
+snapper.cpp
+star-context.cpp
+streams-gzip.cpp
+streams-handles.cpp
+streams-jar.cpp
+streams-zlib.cpp
+style.cpp
+#style-test.cpp
+svg-view.cpp
+svg-view-widget.cpp
+text-chemistry.cpp
+text-context.cpp
+text-editing.cpp
+tools-switch.cpp
+transf_mat_3x4.cpp
+tweak-context.cpp
+uri.cpp
+uri-references.cpp
+vanishing-point.cpp
+verbs.cpp
+version.cpp
+zoom-context.cpp\r
+${ONLY_WIN}\r
+)\r
 # All folder with CMakeLists.txt files (excluding internal libraries)\r
 SET(srcfolders\r
 algorithms\r
-api\r
+api
+application\r
 bind\r
-debug\r
+debug
+dialogs\r
 display\r
 dom\r
 dom/io\r
 dom/odf\r
 dom/util\r
-dom/work\r
+#dom/work\r
 extension\r
-extension/dxf2svg\r
+#extension/dxf2svg\r
 extension/implementation\r
-extension/internal\r
-extension/param\r
+extension/internal
+extension/internal/bitmap
+extension/internal/filter
+extension/internal/pdfinput\r
+extension/param
+extension/script\r
 graphlayout\r
 helper\r
 inkjar\r
@@ -50,7 +268,7 @@ ui
 ui/dialog\r
 ui/view\r
 ui/widget\r
-utest\r
+#utest\r
 util\r
 widgets\r
 xml\r
@@ -69,252 +287,38 @@ FOREACH(dirlist ${srcfolders})
   SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${${dirlist}_SRC})\r
 ENDFOREACH(dirlist)\r
 \r
-\r
+SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${GlibOutput})\r
 # All directories containing lists files that describe building internal libraries\r
-SET(libfolders\r
-application\r
-dialogs\r
+SET(libfolders
+2geom\r
 libavoid\r
 libcola\r
 libcroco\r
 libgdl\r
 libnr\r
 libnrtype\r
-libvpsc\r
+libvpsc
+livarot\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
-ELSEIF(WIN32)\r
-SET(ONLY_WIN)\r
-ENDIF(WIN32)\r
-\r
-SET(INKSCAPE_SRC\r
-${INKSCAPE_SRC}\r
-arc-context.cpp\r
-attributes.cpp\r
-axis-manip.cpp\r
-box3d-context.cpp\r
-box3d.cpp\r
-box3d-side.cpp\r
-color.cpp\r
-color-profile.cpp\r
-composite-undo-stack-observer.cpp\r
-conditions.cpp\r
-conn-avoid-ref.cpp\r
-connector-context.cpp\r
-console-output-undo-observer.cpp\r
-context-fns.cpp\r
-desktop-affine.cpp\r
-desktop.cpp\r
-desktop-events.cpp\r
-desktop-handles.cpp\r
-desktop-style.cpp\r
-dir-util.cpp\r
-document.cpp\r
-document-subset.cpp\r
-document-undo.cpp\r
-doxygen-main.cpp\r
-draw-anchor.cpp\r
-draw-context.cpp\r
-dropper-context.cpp\r
-dyna-draw-context.cpp\r
-ege-adjustment-action.cpp\r
-ege-color-prof-tracker.cpp\r
-ege-output-action.cpp\r
-ege-select-one-action.cpp\r
-event-context.cpp\r
-event-log.cpp\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-chemistry.cpp\r
-gradient-context.cpp\r
-gradient-drag.cpp\r
-guide-snapper.cpp\r
-help.cpp\r
-ink-action.cpp\r
-inkscape.cpp\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
-layer-fns.cpp\r
-layer-manager.cpp\r
-line-geometry.cpp\r
-line-snapper.cpp\r
-main-cmdlineact.cpp\r
-main.cpp\r
-marker.cpp\r
-media.cpp\r
-message-context.cpp\r
-message-stack.cpp\r
-mod360.cpp\r
-node-context.cpp\r
-nodepath.cpp\r
-object-edit.cpp\r
-object-hierarchy.cpp\r
-object-snapper.cpp\r
-path-chemistry.cpp\r
-pencil-context.cpp\r
-pen-context.cpp\r
-persp3d.cpp\r
-persp3d-reference.cpp\r
-perspective-line.cpp\r
-preferences.cpp\r
-prefix.cpp\r
-prefs-utils.cpp\r
-print.cpp\r
-profile-manager.cpp\r
-proj_pt.cpp\r
-rect-context.cpp\r
-rubberband.cpp\r
-satisfied-guide-cns.cpp\r
-selcue.cpp\r
-select-context.cpp\r
-selection-chemistry.cpp\r
-selection.cpp\r
-selection-describer.cpp\r
-seltrans.cpp\r
-seltrans-handles.cpp\r
-shape-editor.cpp\r
-shortcuts.cpp\r
-snap.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
-svg-view-widget.cpp\r
-text-chemistry.cpp\r
-text-context.cpp\r
-text-editing.cpp\r
-tools-switch.cpp\r
-transf_mat_3x4.cpp\r
-tweak-context.cpp\r
-uri.cpp\r
-uri-references.cpp\r
-vanishing-point.cpp\r
-verbs.cpp\r
-version.cpp\r
-winmain.cpp\r
-zoom-context.cpp\r
-${ONLY_WIN}\r
+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
-\r
 # make executable for INKSCAPE\r
 ADD_EXECUTABLE(inkscape ${INKSCAPE_SRC})\r
 TARGET_LINK_LIBRARIES(inkscape\r
-       "${INKSCAPE_LINK_FLAGS}" avoid cola croco gdl nr nrtype vpsc\r
-)\r
-#INSTALL(TARGETS INKSCAPE\r
-#  RUNTIME DESTINATION bin\r
-#  LIBRARY DESTINATION lib\r
-#  ARCHIVE DESTINATION lib\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
-\r
-#FILE(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/*.h")\r
-#INSTALL(FILES ${files} DESTINATION include/INKSCAPE/INKSCAPE)\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
+