Merge lp:~alexhenrie24/inkscape/inkscape into lp:inkscape/0.92.x

Proposed by Alex Valavanis
Status: Needs review
Proposed branch: lp:~alexhenrie24/inkscape/inkscape
Merge into: lp:inkscape/0.92.x
Diff against target: 64984 lines (+2958/-41687) (has conflicts)
652 files modified
.bzrignore (+0/-64)
CMakeLists.txt (+0/-2)
CMakeScripts/DefineDependsandFlags.cmake (+6/-31)
CMakeScripts/Install.cmake (+9/-1)
README (+0/-8)
acinclude.m4 (+0/-3)
autogen.sh (+0/-51)
build-lx.xml (+0/-590)
build-x64-gtk3.xml (+0/-952)
build-x64.xml (+0/-929)
build.xml (+0/-922)
buildtool.cpp (+0/-10333)
configure.ac (+0/-1202)
delautogen.sh (+0/-14)
doc/Makefile.am (+0/-20)
m4/Makefile.am (+0/-11)
m4/ac_define_dir.m4 (+0/-49)
m4/ink_bzr_snapshot_build.m4 (+0/-14)
m4/relaytool.m4 (+0/-30)
mingwenv.bat (+1/-1)
mingwenv.cmake (+28/-0)
msysenv.sh (+34/-0)
packaging/win32/languages/Portuguese.nsh (+117/-0)
po/zh_TW.po (+1010/-1275)
share/Makefile.am (+0/-25)
share/attributes/Makefile.am (+0/-10)
share/branding/Makefile.am (+0/-18)
share/examples/Makefile.am (+0/-37)
share/extensions/Barcode/Makefile.am (+0/-23)
share/extensions/Makefile.am (+0/-42)
share/extensions/Poly3DObjects/Makefile.am (+0/-33)
share/extensions/alphabet_soup/Makefile.am (+0/-78)
share/extensions/ink2canvas/Makefile.am (+0/-9)
share/extensions/test/Makefile.am (+0/-60)
share/extensions/xaml2svg/Makefile.am (+0/-19)
share/filters/Makefile.am (+0/-13)
share/fonts/Makefile.am (+0/-7)
share/gradients/Makefile.am (+0/-7)
share/icons/Makefile.am (+0/-58)
share/icons/application/16x16/Makefile.am (+0/-5)
share/icons/application/22x22/Makefile.am (+0/-5)
share/icons/application/24x24/Makefile.am (+0/-5)
share/icons/application/256x256/Makefile.am (+0/-5)
share/icons/application/32x32/Makefile.am (+0/-5)
share/icons/application/48x48/Makefile.am (+0/-5)
share/icons/application/Makefile.am (+0/-15)
share/keys/Makefile.am (+0/-17)
share/markers/Makefile.am (+0/-9)
share/palettes/Makefile.am (+0/-38)
share/patterns/Makefile.am (+0/-12)
share/screens/Makefile.am (+0/-8)
share/symbols/Makefile.am (+0/-17)
share/templates/Makefile.am (+0/-67)
share/tutorials/Makefile.am (+0/-214)
share/ui/Makefile.am (+0/-11)
src/2geom/Makefile_insert (+0/-131)
src/CMakeLists.txt (+13/-18)
src/Makefile.am (+0/-289)
src/Makefile_insert (+0/-251)
src/attribute-rel-css.cpp (+0/-1)
src/attribute-rel-svg.cpp (+0/-1)
src/attribute-rel-util.cpp (+0/-1)
src/attribute-sort-util.cpp (+0/-2)
src/attributes.cpp (+0/-1)
src/box3d-side.cpp (+0/-2)
src/box3d.cpp (+0/-6)
src/color-profile.cpp (+12/-48)
src/conn-avoid-ref.cpp (+0/-6)
src/context-fns.cpp (+0/-1)
src/debug/Makefile_insert (+0/-15)
src/desktop-events.cpp (+14/-38)
src/desktop-style.cpp (+0/-7)
src/desktop.cpp (+1/-17)
src/device-manager.cpp (+25/-39)
src/display/Makefile_insert (+0/-125)
src/display/canvas-axonomgrid.cpp (+2/-38)
src/display/canvas-grid.cpp (+2/-38)
src/display/sp-canvas.cpp (+13/-75)
src/display/sp-canvas.h (+3/-4)
src/document-subset.cpp (+0/-11)
src/document-undo.cpp (+0/-1)
src/document.cpp (+1/-8)
src/ege-color-prof-tracker.cpp (+0/-1)
src/event-log.cpp (+0/-4)
src/extension/Makefile_insert (+0/-54)
src/extension/db.cpp (+1/-1)
src/extension/dbus/Makefile_insert (+0/-111)
src/extension/dependency.cpp (+1/-3)
src/extension/effect.cpp (+0/-1)
src/extension/error-file.cpp (+2/-6)
src/extension/execution-env.cpp (+1/-4)
src/extension/extension.cpp (+3/-21)
src/extension/extension.h (+0/-9)
src/extension/implementation/Makefile_insert (+0/-9)
src/extension/implementation/implementation.cpp (+1/-2)
src/extension/implementation/script.cpp (+1/-5)
src/extension/implementation/xslt.cpp (+1/-3)
src/extension/input.cpp (+0/-2)
src/extension/internal/Makefile_insert (+0/-173)
src/extension/internal/cdr-input.cpp (+1/-10)
src/extension/internal/pdfinput/pdf-input.cpp (+1/-35)
src/extension/internal/pdfinput/pdf-input.h (+1/-14)
src/extension/internal/vsd-input.cpp (+1/-11)
src/extension/loader.cpp (+3/-1)
src/extension/loader.h (+0/-2)
src/extension/param/bool.cpp (+1/-5)
src/extension/param/float.cpp (+2/-10)
src/extension/param/int.cpp (+2/-11)
src/extension/param/notebook.cpp (+0/-8)
src/extension/param/radiobutton.cpp (+2/-7)
src/extension/patheffect.cpp (+0/-1)
src/extension/prefdialog.cpp (+1/-26)
src/extension/system.cpp (+2/-3)
src/file.cpp (+1/-12)
src/filter-chemistry.cpp (+0/-5)
src/filters/Makefile_insert (+0/-46)
src/filters/blend.cpp (+0/-4)
src/filters/colormatrix.cpp (+0/-1)
src/filters/componenttransfer-funcnode.cpp (+0/-2)
src/filters/componenttransfer.cpp (+0/-4)
src/filters/convolvematrix.cpp (+0/-2)
src/filters/distantlight.cpp (+0/-1)
src/filters/flood.cpp (+0/-1)
src/filters/gaussian-blur.cpp (+1/-3)
src/filters/image.cpp (+0/-3)
src/filters/morphology.cpp (+0/-1)
src/filters/pointlight.cpp (+3/-2)
src/filters/pointlight.h (+3/-3)
src/filters/spotlight.cpp (+0/-1)
src/filters/turbulence.cpp (+0/-2)
src/gc-anchored.cpp (+0/-1)
src/gc-finalized.cpp (+0/-1)
src/gradient-chemistry.cpp (+0/-4)
src/gradient-drag.cpp (+1/-6)
src/graphlayout.cpp (+0/-10)
src/helper/Makefile_insert (+0/-45)
src/helper/action-context.cpp (+0/-1)
src/helper/action.cpp (+0/-2)
src/helper/geom-nodetype.cpp (+0/-2)
src/helper/geom-pathstroke.cpp (+0/-4)
src/helper/geom.cpp (+0/-7)
src/helper/pixbuf-ops.cpp (+1/-5)
src/helper/png-write.cpp (+1/-3)
src/id-clash.cpp (+0/-2)
src/inkgc/Makefile_insert (+0/-13)
src/inkscape.cpp (+1/-10)
src/inkview.cpp (+1/-18)
src/io/Makefile_insert (+0/-26)
src/knot-holder-entity.cpp (+0/-2)
src/knot.cpp (+3/-40)
src/knotholder.cpp (+0/-4)
src/layer-manager.cpp (+0/-6)
src/layer-model.cpp (+1/-5)
src/libavoid/Makefile_insert (+0/-37)
src/libcola/Makefile_insert (+0/-18)
src/libcroco/Makefile_insert (+0/-64)
src/libdepixelize/Makefile_insert (+0/-22)
src/libgdl/CMakeLists.txt (+0/-50)
src/libgdl/Makefile_insert (+0/-92)
src/libgdl/README.gdl-dock (+0/-184)
src/libgdl/gdl-dock-bar.c (+0/-1049)
src/libgdl/gdl-dock-bar.h (+0/-74)
src/libgdl/gdl-dock-item-button-image.c (+0/-166)
src/libgdl/gdl-dock-item-button-image.h (+0/-70)
src/libgdl/gdl-dock-item-grip.c (+0/-809)
src/libgdl/gdl-dock-item-grip.h (+0/-77)
src/libgdl/gdl-dock-item.c (+0/-2401)
src/libgdl/gdl-dock-item.h (+0/-223)
src/libgdl/gdl-dock-master.c (+0/-1011)
src/libgdl/gdl-dock-master.h (+0/-106)
src/libgdl/gdl-dock-notebook.c (+0/-530)
src/libgdl/gdl-dock-notebook.h (+0/-59)
src/libgdl/gdl-dock-object.c (+0/-1027)
src/libgdl/gdl-dock-object.h (+0/-225)
src/libgdl/gdl-dock-paned.c (+0/-678)
src/libgdl/gdl-dock-paned.h (+0/-64)
src/libgdl/gdl-dock-placeholder.c (+0/-827)
src/libgdl/gdl-dock-placeholder.h (+0/-69)
src/libgdl/gdl-dock-tablabel.c (+0/-632)
src/libgdl/gdl-dock-tablabel.h (+0/-74)
src/libgdl/gdl-dock.c (+0/-1365)
src/libgdl/gdl-dock.h (+0/-99)
src/libgdl/gdl-i18n.c (+0/-43)
src/libgdl/gdl-i18n.h (+0/-72)
src/libgdl/gdl-switcher.c (+0/-1031)
src/libgdl/gdl-switcher.h (+0/-67)
src/libgdl/gdl-win32.c (+0/-42)
src/libgdl/gdl-win32.h (+0/-21)
src/libgdl/gdl.h (+0/-32)
src/libgdl/libgdlmarshal.c (+0/-173)
src/libgdl/libgdlmarshal.h (+0/-48)
src/libgdl/libgdlmarshal.list (+0/-7)
src/libgdl/libgdltypebuiltins.c (+0/-162)
src/libgdl/libgdltypebuiltins.h (+0/-38)
src/libgdl/makefile.in (+0/-17)
src/libnrtype/Makefile_insert (+0/-28)
src/libuemf/Makefile_insert (+0/-30)
src/libvpsc/Makefile_insert (+0/-23)
src/line-geometry.cpp (+0/-1)
src/line-snapper.cpp (+0/-2)
src/livarot/Makefile_insert (+0/-41)
src/live_effects/Makefile_insert (+0/-115)
src/live_effects/effect.cpp (+1/-18)
src/live_effects/lpe-angle_bisector.cpp (+0/-1)
src/live_effects/lpe-attach-path.cpp (+0/-7)
src/live_effects/lpe-bendpath.cpp (+0/-16)
src/live_effects/lpe-bounding-box.cpp (+0/-4)
src/live_effects/lpe-circle_3pts.cpp (+0/-1)
src/live_effects/lpe-circle_with_radius.cpp (+0/-1)
src/live_effects/lpe-constructgrid.cpp (+0/-3)
src/live_effects/lpe-copy_rotate.cpp (+0/-4)
src/live_effects/lpe-curvestitch.cpp (+0/-8)
src/live_effects/lpe-dynastroke.cpp (+0/-6)
src/live_effects/lpe-ellipse_5pts.cpp (+0/-1)
src/live_effects/lpe-envelope.cpp (+1/-15)
src/live_effects/lpe-extrude.cpp (+0/-5)
src/live_effects/lpe-fill-between-many.cpp (+0/-3)
src/live_effects/lpe-fill-between-strokes.cpp (+0/-3)
src/live_effects/lpe-fillet-chamfer.cpp (+0/-5)
src/live_effects/lpe-gears.cpp (+0/-5)
src/live_effects/lpe-interpolate.cpp (+0/-3)
src/live_effects/lpe-interpolate_points.cpp (+0/-2)
src/live_effects/lpe-jointype.cpp (+0/-4)
src/live_effects/lpe-knot.cpp (+0/-7)
src/live_effects/lpe-lattice.cpp (+1/-13)
src/live_effects/lpe-lattice2.cpp (+1/-14)
src/live_effects/lpe-line_segment.cpp (+0/-4)
src/live_effects/lpe-mirror_symmetry.cpp (+0/-7)
src/live_effects/lpe-offset.cpp (+0/-4)
src/live_effects/lpe-parallel.cpp (+0/-4)
src/live_effects/lpe-path_length.cpp (+0/-2)
src/live_effects/lpe-patternalongpath.cpp (+0/-10)
src/live_effects/lpe-perp_bisector.cpp (+0/-3)
src/live_effects/lpe-perspective-envelope.cpp (+0/-1)
src/live_effects/lpe-perspective_path.cpp (+0/-5)
src/live_effects/lpe-powerstroke.cpp (+0/-15)
src/live_effects/lpe-recursiveskeleton.cpp (+0/-6)
src/live_effects/lpe-rough-hatches.cpp (+0/-8)
src/live_effects/lpe-roughen.cpp (+0/-5)
src/live_effects/lpe-ruler.cpp (+0/-4)
src/live_effects/lpe-show_handles.cpp (+0/-1)
src/live_effects/lpe-simplify.cpp (+0/-9)
src/live_effects/lpe-skeleton.cpp (+0/-4)
src/live_effects/lpe-sketch.cpp (+0/-8)
src/live_effects/lpe-spiro.cpp (+0/-3)
src/live_effects/lpe-tangent_to_curve.cpp (+0/-4)
src/live_effects/lpe-taperstroke.cpp (+0/-8)
src/live_effects/lpe-test-doEffect-stack.cpp (+0/-3)
src/live_effects/lpe-transform_2pts.cpp (+0/-3)
src/live_effects/lpe-vonkoch.cpp (+0/-2)
src/live_effects/lpegroupbbox.cpp (+0/-2)
src/live_effects/lpeobject-reference.cpp (+0/-1)
src/live_effects/lpeobject.cpp (+0/-3)
src/live_effects/parameter/Makefile_insert (+0/-36)
src/live_effects/parameter/togglebutton.cpp (+1/-5)
src/live_effects/spiro.cpp (+0/-1)
src/main-cmdlineact.cpp (+0/-1)
src/main.cpp (+1/-20)
src/message-stack.cpp (+0/-1)
src/object-hierarchy.cpp (+0/-3)
src/object-snapper.cpp (+0/-6)
src/path-chemistry.cpp (+1/-4)
src/persp3d-reference.cpp (+0/-1)
src/persp3d.cpp (+0/-2)
src/perspective-line.cpp (+0/-1)
src/preferences.cpp (+0/-1)
src/prefix.cpp (+1/-2)
src/resource-manager.cpp (+2/-4)
src/rubberband.cpp (+0/-1)
src/satisfied-guide-cns.cpp (+0/-1)
src/selcue.cpp (+0/-3)
src/selection-chemistry.cpp (+1/-24)
src/selection-describer.cpp (+1/-10)
src/selection.cpp (+2/-8)
src/selection.h (+0/-2)
src/seltrans.cpp (+1/-7)
src/shortcuts.cpp (+1/-3)
src/snap-preferences.cpp (+0/-2)
src/snap.cpp (+0/-6)
src/snap.h (+0/-1)
src/snapped-curve.cpp (+0/-1)
src/snapped-line.cpp (+1/-2)
src/snapper.cpp (+0/-1)
src/sp-clippath.cpp (+0/-1)
src/sp-conn-end-pair.cpp (+0/-2)
src/sp-conn-end.cpp (+0/-2)
src/sp-ellipse.cpp (+0/-3)
src/sp-factory.cpp (+0/-5)
src/sp-filter-primitive.cpp (+1/-5)
src/sp-filter.cpp (+1/-5)
src/sp-flowregion.cpp (+1/-3)
src/sp-flowtext.cpp (+1/-6)
src/sp-font-face.cpp (+1/-1)
src/sp-font.cpp (+1/-3)
src/sp-glyph-kerning.cpp (+0/-1)
src/sp-glyph.cpp (+0/-2)
src/sp-gradient.cpp (+0/-7)
src/sp-guide.cpp (+1/-5)
src/sp-hatch-path.cpp (+0/-5)
src/sp-hatch.cpp (+0/-3)
src/sp-image.cpp (+0/-3)
src/sp-item-group.cpp (+1/-6)
src/sp-item-rm-unsatisfied-cns.cpp (+0/-2)
src/sp-item-update-cns.cpp (+1/-3)
src/sp-item.cpp (+1/-11)
src/sp-line.cpp (+0/-1)
src/sp-line.h (+1/-1)
src/sp-lpe-item.cpp (+0/-9)
src/sp-marker.cpp (+0/-1)
src/sp-mask.cpp (+0/-1)
src/sp-mesh-patch.cpp (+0/-1)
src/sp-mesh-row.cpp (+0/-2)
src/sp-mesh.cpp (+0/-1)
src/sp-metadata.cpp (+1/-1)
src/sp-missing-glyph.cpp (+1/-1)
src/sp-namedview.cpp (+0/-2)
src/sp-object.cpp (+0/-2)
src/sp-offset.cpp (+1/-6)
src/sp-paint-server.cpp (+0/-1)
src/sp-path.cpp (+1/-3)
src/sp-pattern.cpp (+1/-5)
src/sp-polygon.cpp (+0/-1)
src/sp-polyline.cpp (+0/-2)
src/sp-rect.cpp (+1/-4)
src/sp-script.cpp (+0/-2)
src/sp-shape.cpp (+1/-8)
src/sp-solid-color.cpp (+0/-4)
src/sp-spiral.cpp (+0/-2)
src/sp-star.cpp (+1/-3)
src/sp-stop.cpp (+0/-1)
src/sp-string.cpp (+0/-4)
src/sp-switch.cpp (+0/-1)
src/sp-symbol.cpp (+1/-2)
src/sp-tag-use-reference.cpp (+0/-3)
src/sp-text.cpp (+0/-5)
src/sp-tref-reference.cpp (+0/-2)
src/sp-tref.cpp (+0/-5)
src/sp-tspan.cpp (+1/-3)
src/sp-use-reference.cpp (+0/-3)
src/sp-use.cpp (+0/-1)
src/splivarot.cpp (+395/-256)
src/splivarot.h (+2/-1)
src/style-internal.cpp (+1/-6)
src/style.cpp (+1/-15)
src/svg-view-widget.cpp (+2/-33)
src/svg-view.cpp (+0/-4)
src/svg/Makefile_insert (+0/-32)
src/svg/css-ostringstream.cpp (+0/-1)
src/svg/path-string.cpp (+0/-1)
src/svg/svg-affine.cpp (+1/-2)
src/svg/svg-angle.cpp (+1/-4)
src/svg/svg-color.cpp (+0/-1)
src/svg/svg-path.cpp (+0/-4)
src/text-chemistry.cpp (+1/-2)
src/text-editing.cpp (+0/-2)
src/trace/Makefile_insert (+0/-23)
src/ui/CMakeLists.txt (+0/-4)
src/ui/Makefile_insert (+0/-31)
src/ui/cache/Makefile_insert (+0/-6)
src/ui/clipboard.cpp (+1/-22)
src/ui/control-manager.cpp (+0/-1)
src/ui/dialog-events.cpp (+1/-4)
src/ui/dialog-events.h (+1/-0)
src/ui/dialog/Makefile_insert (+0/-133)
src/ui/dialog/aboutbox.cpp (+5/-16)
src/ui/dialog/align-and-distribute.cpp (+2/-41)
src/ui/dialog/align-and-distribute.h (+4/-34)
src/ui/dialog/calligraphic-profile-rename.cpp (+2/-23)
src/ui/dialog/calligraphic-profile-rename.h (+0/-9)
src/ui/dialog/clonetiler.cpp (+29/-202)
src/ui/dialog/clonetiler.h (+0/-5)
src/ui/dialog/color-item.cpp (+1/-9)
src/ui/dialog/debug.cpp (+2/-8)
src/ui/dialog/desktop-tracker.cpp (+0/-1)
src/ui/dialog/dialog-manager.cpp (+1/-4)
src/ui/dialog/dialog.cpp (+1/-4)
src/ui/dialog/dock-behavior.cpp (+1/-5)
src/ui/dialog/document-metadata.cpp (+1/-33)
src/ui/dialog/document-metadata.h (+1/-11)
src/ui/dialog/document-properties.cpp (+2/-141)
src/ui/dialog/document-properties.h (+1/-5)
src/ui/dialog/export.cpp (+6/-103)
src/ui/dialog/export.h (+0/-40)
src/ui/dialog/extension-editor.cpp (+1/-3)
src/ui/dialog/filedialog.cpp (+5/-4)
src/ui/dialog/filedialogimpl-gtkmm.cpp (+12/-74)
src/ui/dialog/filedialogimpl-win32.cpp (+0/-4)
src/ui/dialog/fill-and-stroke.cpp (+0/-23)
src/ui/dialog/fill-and-stroke.h (+0/-4)
src/ui/dialog/filter-effects-dialog.cpp (+23/-172)
src/ui/dialog/filter-effects-dialog.h (+0/-12)
src/ui/dialog/find.cpp (+1/-8)
src/ui/dialog/find.h (+0/-6)
src/ui/dialog/floating-behavior.cpp (+1/-11)
src/ui/dialog/font-substitution.cpp (+3/-12)
src/ui/dialog/glyphs.cpp (+6/-77)
src/ui/dialog/grid-arrange-tab.cpp (+2/-22)
src/ui/dialog/grid-arrange-tab.h (+0/-5)
src/ui/dialog/guides.cpp (+3/-61)
src/ui/dialog/guides.h (+1/-11)
src/ui/dialog/icon-preview.cpp (+2/-5)
src/ui/dialog/icon-preview.h (+0/-6)
src/ui/dialog/inkscape-preferences.cpp (+6/-46)
src/ui/dialog/inkscape-preferences.h (+0/-8)
src/ui/dialog/input.cpp (+2/-138)
src/ui/dialog/knot-properties.cpp (+1/-10)
src/ui/dialog/layer-properties.cpp (+3/-34)
src/ui/dialog/layer-properties.h (+0/-10)
src/ui/dialog/layers.cpp (+1/-13)
src/ui/dialog/layers.h (+0/-6)
src/ui/dialog/livepatheffect-add.cpp (+2/-7)
src/ui/dialog/livepatheffect-editor.cpp (+1/-17)
src/ui/dialog/livepatheffect-editor.h (+0/-4)
src/ui/dialog/lpe-fillet-chamfer-properties.cpp (+1/-11)
src/ui/dialog/lpe-powerstroke-properties.cpp (+1/-12)
src/ui/dialog/memory.cpp (+3/-2)
src/ui/dialog/messages.cpp (+1/-1)
src/ui/dialog/new-from-template.cpp (+1/-10)
src/ui/dialog/object-attributes.cpp (+0/-3)
src/ui/dialog/object-properties.cpp (+3/-94)
src/ui/dialog/object-properties.h (+0/-4)
src/ui/dialog/objects.cpp (+2/-33)
src/ui/dialog/objects.h (+0/-10)
src/ui/dialog/ocaldialogs.cpp (+13/-166)
src/ui/dialog/ocaldialogs.h (+2/-39)
src/ui/dialog/pixelartdialog.cpp (+0/-6)
src/ui/dialog/polar-arrange-tab.cpp (+0/-33)
src/ui/dialog/polar-arrange-tab.h (+1/-10)
src/ui/dialog/print.cpp (+1/-2)
src/ui/dialog/spellcheck.cpp (+1/-8)
src/ui/dialog/spellcheck.h (+0/-15)
src/ui/dialog/svg-fonts-dialog.cpp (+2/-9)
src/ui/dialog/svg-fonts-dialog.h (+0/-9)
src/ui/dialog/swatches.cpp (+0/-13)
src/ui/dialog/symbols.cpp (+5/-49)
src/ui/dialog/tags.cpp (+1/-18)
src/ui/dialog/tags.h (+0/-6)
src/ui/dialog/template-load-tab.cpp (+3/-11)
src/ui/dialog/template-widget.cpp (+1/-6)
src/ui/dialog/text-edit.cpp (+1/-31)
src/ui/dialog/text-edit.h (+0/-11)
src/ui/dialog/tile.h (+0/-5)
src/ui/dialog/tracedialog.cpp (+2/-3)
src/ui/dialog/transformation.cpp (+1/-107)
src/ui/dialog/transformation.h (+0/-4)
src/ui/dialog/undo-history.cpp (+1/-38)
src/ui/dialog/undo-history.h (+0/-18)
src/ui/dialog/xml-tree.cpp (+0/-23)
src/ui/dialog/xml-tree.h (+0/-11)
src/ui/interface.cpp (+3/-43)
src/ui/object-edit.cpp (+1/-6)
src/ui/previewholder.cpp (+22/-120)
src/ui/previewholder.h (+0/-9)
src/ui/selected-color.cpp (+1/-1)
src/ui/shape-editor.cpp (+1/-4)
src/ui/tool-factory.cpp (+0/-2)
src/ui/tool/Makefile_insert (+0/-30)
src/ui/tool/control-point-selection.cpp (+0/-1)
src/ui/tool/control-point.cpp (+0/-2)
src/ui/tool/curve-drag-point.cpp (+0/-3)
src/ui/tool/manipulator.cpp (+2/-2)
src/ui/tool/modifier-tracker.cpp (+0/-1)
src/ui/tool/multi-path-manipulator.cpp (+0/-2)
src/ui/tool/node.cpp (+0/-5)
src/ui/tool/path-manipulator.cpp (+0/-13)
src/ui/tool/selector.cpp (+0/-1)
src/ui/tool/transform-handle-set.cpp (+0/-4)
src/ui/tools-switch.cpp (+0/-6)
src/ui/tools/Makefile_insert (+0/-34)
src/ui/tools/arc-tool.cpp (+1/-2)
src/ui/tools/box3d-tool.cpp (+0/-9)
src/ui/tools/calligraphic-tool.cpp (+0/-9)
src/ui/tools/connector-tool.cpp (+0/-7)
src/ui/tools/dropper-tool.cpp (+1/-12)
src/ui/tools/dynamic-base.cpp (+0/-6)
src/ui/tools/eraser-tool.cpp (+0/-11)
src/ui/tools/flood-tool.cpp (+1/-11)
src/ui/tools/freehand-base.cpp (+1/-15)
src/ui/tools/gradient-tool.cpp (+1/-8)
src/ui/tools/lpe-tool.cpp (+1/-4)
src/ui/tools/measure-tool.cpp (+1/-17)
src/ui/tools/mesh-tool.cpp (+1/-2)
src/ui/tools/node-tool.cpp (+0/-6)
src/ui/tools/pen-tool.cpp (+0/-12)
src/ui/tools/pencil-tool.cpp (+0/-5)
src/ui/tools/rect-tool.cpp (+0/-5)
src/ui/tools/select-tool.cpp (+1/-11)
src/ui/tools/spiral-tool.cpp (+0/-5)
src/ui/tools/spray-tool.cpp (+0/-14)
src/ui/tools/star-tool.cpp (+1/-4)
src/ui/tools/text-tool.cpp (+1/-5)
src/ui/tools/tool-base.cpp (+1/-31)
src/ui/tools/tweak-tool.cpp (+0/-12)
src/ui/tools/zoom-tool.cpp (+0/-1)
src/ui/uxmanager.cpp (+1/-4)
src/ui/view/Makefile_insert (+0/-9)
src/ui/widget/Makefile_insert (+0/-110)
src/ui/widget/addtoicon.cpp (+2/-37)
src/ui/widget/addtoicon.h (+0/-14)
src/ui/widget/anchor-selector.cpp (+0/-11)
src/ui/widget/anchor-selector.h (+1/-11)
src/ui/widget/clipmaskicon.cpp (+2/-35)
src/ui/widget/clipmaskicon.h (+0/-13)
src/ui/widget/color-icc-selector.cpp (+0/-27)
src/ui/widget/color-icc-selector.h (+0/-8)
src/ui/widget/color-notebook.cpp (+0/-34)
src/ui/widget/color-notebook.h (+0/-9)
src/ui/widget/color-picker.cpp (+0/-5)
src/ui/widget/color-preview.cpp (+0/-26)
src/ui/widget/color-preview.h (+0/-6)
src/ui/widget/color-scales.cpp (+1/-31)
src/ui/widget/color-scales.h (+0/-8)
src/ui/widget/color-slider.cpp (+6/-119)
src/ui/widget/color-slider.h (+0/-18)
src/ui/widget/color-wheel-selector.cpp (+6/-48)
src/ui/widget/color-wheel-selector.h (+0/-12)
src/ui/widget/dock-item.cpp (+0/-10)
src/ui/widget/dock-item.h (+0/-4)
src/ui/widget/dock.cpp (+0/-12)
src/ui/widget/entity-entry.cpp (+1/-2)
src/ui/widget/entry.cpp (+1/-1)
src/ui/widget/filter-effect-chooser.cpp (+0/-4)
src/ui/widget/font-variants.cpp (+1/-9)
src/ui/widget/frame.cpp (+1/-1)
src/ui/widget/highlight-picker.cpp (+1/-37)
src/ui/widget/highlight-picker.h (+0/-14)
src/ui/widget/imageicon.cpp (+1/-6)
src/ui/widget/imagetoggler.cpp (+1/-34)
src/ui/widget/imagetoggler.h (+0/-14)
src/ui/widget/insertordericon.cpp (+1/-33)
src/ui/widget/insertordericon.h (+0/-13)
src/ui/widget/layer-selector.cpp (+1/-3)
src/ui/widget/layertypeicon.cpp (+2/-36)
src/ui/widget/layertypeicon.h (+0/-14)
src/ui/widget/licensor.cpp (+2/-10)
src/ui/widget/notebook-page.cpp (+0/-12)
src/ui/widget/notebook-page.h (+0/-13)
src/ui/widget/object-composite-settings.cpp (+0/-7)
src/ui/widget/page-sizer.cpp (+2/-62)
src/ui/widget/page-sizer.h (+1/-25)
src/ui/widget/panel.cpp (+2/-10)
src/ui/widget/panel.h (+1/-17)
src/ui/widget/point.cpp (+1/-8)
src/ui/widget/point.h (+0/-4)
src/ui/widget/preferences-widget.cpp (+4/-84)
src/ui/widget/preferences-widget.h (+0/-25)
src/ui/widget/random.cpp (+1/-5)
src/ui/widget/random.h (+0/-4)
src/ui/widget/registered-widget.cpp (+3/-15)
src/ui/widget/rendering-options.cpp (+1/-1)
src/ui/widget/rotateable.cpp (+1/-2)
src/ui/widget/scalar.cpp (+1/-9)
src/ui/widget/scalar.h (+0/-4)
src/ui/widget/selected-style.cpp (+3/-53)
src/ui/widget/selected-style.h (+1/-14)
src/ui/widget/spin-scale.cpp (+8/-23)
src/ui/widget/spin-scale.h (+6/-19)
src/ui/widget/spin-slider.cpp (+13/-66)
src/ui/widget/spin-slider.h (+4/-14)
src/ui/widget/spinbutton.cpp (+1/-1)
src/ui/widget/spinbutton.h (+0/-4)
src/ui/widget/style-subject.cpp (+0/-1)
src/ui/widget/style-swatch.cpp (+1/-28)
src/ui/widget/style-swatch.h (+0/-8)
src/ui/widget/tolerance-slider.cpp (+2/-10)
src/ui/widget/tolerance-slider.h (+0/-10)
src/uri-references.cpp (+0/-2)
src/uri.cpp (+0/-1)
src/util/Makefile_insert (+0/-49)
src/util/unordered-containers.h (+14/-50)
src/vanishing-point.cpp (+0/-2)
src/verbs.cpp (+6/-7)
src/verbs.h (+1/-0)
src/viewbox.cpp (+0/-1)
src/widgets/CMakeLists.txt (+45/-43)
src/widgets/Makefile_insert (+0/-123)
src/widgets/arc-toolbar.cpp (+3/-4)
src/widgets/box3d-toolbar.cpp (+2/-3)
src/widgets/button.cpp (+0/-31)
src/widgets/calligraphy-toolbar.cpp (+2/-2)
src/widgets/connector-toolbar.cpp (+3/-6)
src/widgets/dash-selector.cpp (+2/-16)
src/widgets/dash-selector.h (+0/-5)
src/widgets/desktop-widget.cpp (+17/-172)
src/widgets/dropper-toolbar.cpp (+2/-2)
src/widgets/eek-preview.cpp (+1/-147)
src/widgets/ege-adjustment-action.cpp (+2/-12)
src/widgets/ege-output-action.cpp (+1/-5)
src/widgets/ege-select-one-action.cpp (+2/-30)
src/widgets/eraser-toolbar.cpp (+4/-3)
src/widgets/fill-style.cpp (+1/-5)
src/widgets/font-selector.cpp (+5/-35)
src/widgets/gimp/CMakeLists.txt (+13/-0)
src/widgets/gimp/gimpcolorwheel.c (+0/-137)
src/widgets/gimp/gimpspinscale.c (+2/-258)
src/widgets/gimp/ruler.cpp (+20/-168)
src/widgets/gradient-image.cpp (+0/-45)
src/widgets/gradient-selector.cpp (+2/-16)
src/widgets/gradient-selector.h (+0/-8)
src/widgets/gradient-toolbar.cpp (+4/-3)
src/widgets/gradient-vector.cpp (+3/-68)
src/widgets/gradient-vector.h (+0/-8)
src/widgets/icon.cpp (+2/-56)
src/widgets/ink-action.cpp (+13/-474)
src/widgets/ink-action.h (+10/-114)
src/widgets/ink-comboboxentry-action.cpp (+0/-14)
src/widgets/ink-radio-action.cpp (+185/-0)
src/widgets/ink-radio-action.h (+52/-0)
src/widgets/ink-toggle-action.cpp (+221/-0)
src/widgets/ink-toggle-action.h (+53/-0)
src/widgets/ink-tool-menu-action.cpp (+49/-0)
src/widgets/ink-tool-menu-action.h (+52/-0)
src/widgets/lpe-toolbar.cpp (+3/-10)
src/widgets/measure-toolbar.cpp (+3/-3)
src/widgets/mesh-toolbar.cpp (+4/-13)
src/widgets/node-toolbar.cpp (+3/-5)
src/widgets/paint-selector.cpp (+8/-49)
src/widgets/paint-selector.h (+0/-8)
src/widgets/paintbucket-toolbar.cpp (+1/-3)
src/widgets/pencil-toolbar.cpp (+4/-7)
src/widgets/rect-toolbar.cpp (+1/-5)
src/widgets/select-toolbar.cpp (+4/-11)
src/widgets/sp-attribute-widget.cpp (+1/-30)
src/widgets/sp-attribute-widget.h (+0/-9)
src/widgets/sp-color-selector.cpp (+1/-9)
src/widgets/sp-color-selector.h (+0/-9)
src/widgets/sp-widget.cpp (+0/-31)
src/widgets/sp-xmlview-attr-list.cpp (+2/-19)
src/widgets/sp-xmlview-content.cpp (+1/-18)
src/widgets/sp-xmlview-tree.cpp (+1/-20)
src/widgets/spinbutton-events.cpp (+1/-2)
src/widgets/spiral-toolbar.cpp (+1/-4)
src/widgets/spray-toolbar.cpp (+3/-3)
src/widgets/spw-utilities.cpp (+3/-70)
src/widgets/spw-utilities.h (+0/-12)
src/widgets/star-toolbar.cpp (+3/-5)
src/widgets/stroke-marker-selector.cpp (+0/-6)
src/widgets/stroke-style.cpp (+0/-63)
src/widgets/stroke-style.h (+0/-11)
src/widgets/text-toolbar.cpp (+5/-24)
src/widgets/toolbox.cpp (+11/-54)
src/widgets/tweak-toolbar.cpp (+3/-3)
src/widgets/zoom-toolbar.cpp (+1/-1)
src/xml/Makefile_insert (+0/-51)
src/xml/node-fns.cpp (+0/-1)
src/xml/rebase-hrefs.cpp (+0/-3)
src/xml/repr-css.cpp (+0/-2)
src/xml/repr-io.cpp (+1/-2)
src/xml/repr-util.cpp (+0/-2)
src/xml/repr.cpp (+1/-1)
src/xml/simple-node.cpp (+0/-3)
testfiles/CMakeLists.txt (+0/-4)
Contents conflict in Makefile.am
Conflict adding file packaging/win32/languages/Portuguese.nsh.  Moved existing file to packaging/win32/languages/Portuguese.nsh.moved.
Text conflict in src/display/sp-canvas.cpp
Text conflict in src/display/sp-canvas.h
To merge this branch: bzr merge lp:~alexhenrie24/inkscape/inkscape
Reviewer Review Type Date Requested Status
Inkscape Developers Pending
Review via email: mp+302536@code.launchpad.net

Description of the change

Backport proposed

To post a comment you must log in.
Revision history for this message
Jabiertxof (jabiertxof) wrote :

Hi Alex, Is still pending this branch?

Unmerged revisions

15047. By Alex Henrie

Use Gdk::Seat instead of Gdk::DeviceManager

15046. By Alex Valavanis

Remove deprecated Autotools and btool files. Please use CMake instead

15045. By Alex Valavanis

Fix autotools build

15044. By Alex Valavanis

Minor Gtkmm improvements and mv GIMP widgets to own folder

15043. By Alex Valavanis

Split InkAction classes into separate files

15042. By Alex Valavanis

build-x64.xml now uses GTK+ 3

15041. By Alex Valavanis

btool: Fix for C++11

15040. By Alex Valavanis

Use C++11 unordered containers

15039. By Alex Valavanis

Require C++11

15038. By Alex Valavanis

End GTK+ 2 support and remove GDL fork

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file '.bzrignore'
2--- .bzrignore 2016-04-11 14:49:49 +0000
3+++ .bzrignore 2016-08-10 11:56:29 +0000
4@@ -1,12 +1,8 @@
5 ./Info.plist
6 ./Makefile
7 ./ABOUT-NLS
8-./aclocal.m4
9-./autom4te.cache
10-./btool.exe
11 ./build
12 ./build.dep
13-./build-aux
14 ./compile
15 ./compile.lst
16 ./config.guess
17@@ -63,44 +59,7 @@
18 ./CMakeLists.txt.user
19 .deps
20 .dirstamp
21-Makefile.in
22 doc/Makefile
23-doc/Makefile.in
24-m4/codeset.m4
25-m4/gettext.m4
26-m4/glibc2.m4
27-m4/glibc21.m4
28-m4/iconv.m4
29-m4/intdiv0.m4
30-m4/intl.m4
31-m4/intldir.m4
32-m4/intlmacosx.m4
33-m4/intltool.m4
34-m4/intmax.m4
35-m4/inttypes-pri.m4
36-m4/inttypes_h.m4
37-m4/lcmessage.m4
38-m4/lib-ld.m4
39-m4/lib-link.m4
40-m4/lib-prefix.m4
41-m4/libtool.m4
42-m4/lock.m4
43-m4/longlong.m4
44-m4/ltoptions.m4
45-m4/ltsugar.m4
46-m4/ltversion.m4
47-m4/lt~obsolete.m4
48-m4/nls.m4
49-m4/po.m4
50-m4/printf-posix.m4
51-m4/progtest.m4
52-m4/size_max.m4
53-m4/stdint_h.m4
54-m4/uintmax_t.m4
55-m4/visibility.m4
56-m4/wchar_t.m4
57-m4/wint_t.m4
58-m4/xsize.m4
59 packaging/autopackage/default.apspec
60 po/.intltool-merge-cache
61 po/*.gmo
62@@ -118,35 +77,22 @@
63 po/Rules-quot
64 po/stamp-it
65 share/Makefile
66-share/Makefile.in
67 share/attributes/Makefile
68-share/attributes/Makefile.in
69 share/branding/Makefile
70 share/clipart/Makefile
71-share/clipart/Makefile.in
72 share/examples/Makefile
73-share/examples/Makefile.in
74 share/extensions/Barcode/Makefile
75-share/extensions/Barcode/Makefile.in
76 share/extensions/Makefile
77-share/extensions/Makefile.in
78 share/extensions/Poly3DObjects/Makefile
79-share/extensions/Poly3DObjects/Makefile.in
80 share/extensions/alphabet_soup/Makefile
81-share/extensions/alphabet_soup/Makefile.in
82 share/extensions/ink2canvas/Makefile
83-share/extensions/ink2canvas/Makefile.in
84 share/extensions/test/Makefile
85 share/extensions/xaml2svg/Makefile
86-share/extensions/xaml2svg/Makefile.in
87 share/filters/Makefile
88 share/filters/filters.svg.h
89 share/fonts/Makefile
90-share/fonts/Makefile.in
91 share/gradients/Makefile
92-share/gradients/Makefile.in
93 share/icons/Makefile
94-share/icons/Makefile.in
95 share/icons/application/16x16/Makefile
96 share/icons/application/22x22/Makefile
97 share/icons/application/24x24/Makefile
98@@ -155,31 +101,21 @@
99 share/icons/application/48x48/Makefile
100 share/icons/application/Makefile
101 share/keys/Makefile
102-share/keys/Makefile.in
103 share/markers/Makefile
104-share/markers/Makefile.in
105 share/palettes/Makefile
106-share/palettes/Makefile.in
107 share/palettes/palettes.h
108 share/patterns/Makefile
109-share/patterns/Makefile.in
110 share/patterns/patterns.svg.h
111 share/screens/Makefile
112-share/screens/Makefile.in
113 share/symbols/Makefile
114-share/symbols/Makefile.in
115 share/symbols/symbols.h
116 share/templates/Makefile
117-share/templates/Makefile.in
118 share/templates/templates.h
119 share/tutorials/Makefile
120-share/tutorials/Makefile.in
121 share/ui/Makefile
122-share/ui/Makefile.in
123 src/.libs/
124 src/2geom/makefile
125 src/Makefile
126-src/Makefile.in
127 src/algorithms/makefile
128 src/application/makefile
129 src/bind/makefile
130
131=== modified file 'CMakeLists.txt'
132--- CMakeLists.txt 2016-07-06 20:46:22 +0000
133+++ CMakeLists.txt 2016-08-10 11:56:29 +0000
134@@ -68,7 +68,6 @@
135 option(WITH_LIBVISIO "Compile with support of libvisio for Microsoft Visio Diagrams" ON)
136 option(WITH_LIBWPG "Compile with support of libwpg for WordPerfect Graphics" ON)
137 option(WITH_NLS "Compile with Native Language Support (using gettext)" ON)
138-option(WITH_GTK3_EXPERIMENTAL "Enable compilation with GTK+3 (EXPERIMENTAL!)" OFF)
139
140 # -----------------------------------------------------------------------------
141 # Test Harness
142@@ -238,7 +237,6 @@
143 message("GMOCK_PRESENT: ${GMOCK_PRESENT}")
144 message("WITH_DBUS: ${WITH_DBUS}")
145 message("WITH_GNOME_VFS: ${WITH_GNOME_VFS}")
146-message("WITH_GTK3_EXPERIMENTAL: ${WITH_GTK3_EXPERIMENTAL}")
147 message("WITH_GTKSPELL: ${WITH_GTKSPELL}")
148 message("WITH_IMAGE_MAGICK: ${WITH_IMAGE_MAGICK}")
149 message("WITH_LIBCDR: ${WITH_LIBCDR}")
150
151=== modified file 'CMakeScripts/DefineDependsandFlags.cmake'
152--- CMakeScripts/DefineDependsandFlags.cmake 2016-07-02 17:15:39 +0000
153+++ CMakeScripts/DefineDependsandFlags.cmake 2016-08-10 11:56:29 +0000
154@@ -12,6 +12,12 @@
155 )
156
157 # ----------------------------------------------------------------------------
158+# Add C++11 standard compliance
159+# TODO: Add a proper check for compiler compliance here
160+# ----------------------------------------------------------------------------
161+list(APPEND INKSCAPE_CXX_FLAGS "-std=c++11")
162+
163+# ----------------------------------------------------------------------------
164 # Files we include
165 # ----------------------------------------------------------------------------
166 if(WIN32)
167@@ -237,7 +243,6 @@
168 set(TRY_GTKSPELL 1)
169 # Include dependencies:
170 # use patched version until GTK2_CAIROMMCONFIG_INCLUDE_DIR is added
171-if("${WITH_GTK3_EXPERIMENTAL}")
172 pkg_check_modules(
173 GTK3
174 REQUIRED
175@@ -247,11 +252,7 @@
176 gdk-3.0>=3.8
177 gdl-3.0>=3.4
178 )
179- message("Using EXPERIMENTAL Gtkmm 3 build")
180 list(APPEND INKSCAPE_CXX_FLAGS ${GTK3_CFLAGS_OTHER})
181- set(WITH_GTKMM_3_0 1)
182- message("Using external GDL")
183- set(WITH_EXT_GDL 1)
184
185 # Check whether we can use new features in Gtkmm 3.10
186 # TODO: Drop this test and bump the version number in the GTK test above
187@@ -291,32 +292,6 @@
188 ${GTK3_LIBRARIES}
189 ${GTKSPELL3_LIBRARIES}
190 )
191-else()
192- pkg_check_modules(GTK REQUIRED
193- gtkmm-2.4>=2.24
194- gdkmm-2.4
195- gtk+-2.0
196- gdk-2.0
197- )
198- list(APPEND INKSCAPE_CXX_FLAGS ${GTK_CFLAGS_OTHER})
199- pkg_check_modules(GTKSPELL2 gtkspell-2.0)
200- if("${GTKSPELL2_FOUND}")
201- message("Using GtkSpell 2")
202- add_definitions(${GTKSPELL2_CFLAGS_OTHER})
203- set (WITH_GTKSPELL 1)
204- else()
205- unset(WITH_GTKSPELL)
206- endif()
207- list(APPEND INKSCAPE_INCS_SYS
208- ${GTK_INCLUDE_DIRS}
209- ${GTKSPELL2_INCLUDE_DIRS}
210- )
211-
212- list(APPEND INKSCAPE_LIBS
213- ${GTK_LIBRARIES}
214- ${GTKSPELL2_LIBRARIES}
215- )
216-endif()
217
218 find_package(Freetype REQUIRED)
219 list(APPEND INKSCAPE_INCS_SYS ${FREETYPE_INCLUDE_DIRS})
220
221=== modified file 'CMakeScripts/Install.cmake'
222--- CMakeScripts/Install.cmake 2016-07-06 15:45:34 +0000
223+++ CMakeScripts/Install.cmake 2016-08-10 11:56:29 +0000
224@@ -11,10 +11,15 @@
225 ${EXECUTABLE_OUTPUT_PATH}/inkview.exe
226 DESTINATION ${CMAKE_INSTALL_PREFIX}
227 )
228+
229+ install(PROGRAMS
230+ ${EXECUTABLE_OUTPUT_PATH}/inkscape_com.exe
231+ DESTINATION ${CMAKE_INSTALL_PREFIX}
232+ RENAME inkscape.com
233+ )
234
235 install(FILES
236 ${LIBRARY_OUTPUT_PATH}/libinkscape_base.dll
237- ${LIBRARY_OUTPUT_PATH}/libgrid2.dll
238 DESTINATION ${CMAKE_INSTALL_PREFIX}
239 )
240
241@@ -25,6 +30,9 @@
242 NEWS
243 README
244 TRANSLATORS
245+ GPL2.txt
246+ GPL3.txt
247+ LGPL2.1.txt
248 DESTINATION ${CMAKE_INSTALL_PREFIX})
249
250 # There are differences in the devlibs for 64-Bit and 32-Bit build environments.
251
252=== renamed file 'Makefile.am' => 'Makefile.am.THIS'
253=== modified file 'README'
254--- README 2016-01-17 21:53:40 +0000
255+++ README 2016-08-10 11:56:29 +0000
256@@ -32,14 +32,6 @@
257 make
258 make install
259
260-We also still include autoconf in 0.92 as an alternate build system, in
261-case anything goes haywire with the new cmake scripts:
262-
263- ./autogen.sh # Optional, use if configure doesn't exist
264- ./configure
265- make
266- make install
267-
268 For platform specific instructions please read the README file that
269 is associated with that platform (e.g. for Mac OS X read README.osx)
270
271
272=== removed file 'acinclude.m4'
273--- acinclude.m4 2014-03-27 01:33:44 +0000
274+++ acinclude.m4 1970-01-01 00:00:00 +0000
275@@ -1,3 +0,0 @@
276-m4_include([m4/ac_define_dir.m4])
277-m4_include([m4/relaytool.m4])
278-m4_include([m4/ink_bzr_snapshot_build.m4])
279
280=== removed file 'autogen.sh'
281--- autogen.sh 2014-07-14 00:40:57 +0000
282+++ autogen.sh 1970-01-01 00:00:00 +0000
283@@ -1,51 +0,0 @@
284-#!/bin/sh
285-
286-# This script does all the magic calls to automake/autoconf and
287-# friends that are needed to configure a cvs checkout. As described in
288-# the file HACKING you need a couple of extra tools to run this script
289-# successfully.
290-#
291-# If you are compiling from a released tarball you don't need these
292-# tools and you shouldn't use this script. Just call ./configure
293-# directly.
294-
295-test -n "$srcdir" || srcdir=`dirname "$0"`
296-test -n "$srcdir" || srcdir=.
297-
298-olddir=`pwd`
299-cd $srcdir
300-
301-WHICH_AUTORECONF=`which autoreconf`
302-if test -z $WHICH_AUTORECONF; then
303- echo "*** No autoreconf found, please install it ***"
304- exit 1
305-fi
306-
307-WHICH_INTLTOOLIZE=`which intltoolize`
308-if test -z $WHICH_INTLTOOLIZE; then
309- echo "*** No intltoolize found, please install the intltool package ***"
310- exit 1
311-fi
312-
313-WHICH_AUTOPOINT=`which autopoint`
314-if test -z $WHICH_AUTOPOINT; then
315- echo "*** No autopoint found, please install the autopoint package ***"
316- exit 1
317-fi
318-
319-autopoint --force
320-AUTOPOINT='intltoolize --automake --copy' autoreconf --force --install --verbose
321-
322-# Patch the generated po/Makefile.in.in file so that locale files are installed
323-# in the correct location on OS X and Free-BSD systems. This is a workaround
324-# for a bug in intltool. See https://launchpad.net/bugs/398571
325-#
326-# The issue should be fixed in intltool 0.51.0.
327-#
328-# TODO: Drop this hack, and bump our intltool version requirement once the issue
329-# is fixed in intltool
330-sed 's/itlocaledir = $(prefix)\/$(DATADIRNAME)\/locale/itlocaledir = $(datarootdir)\/locale/' < po/Makefile.in.in > po/Makefile.in.in.tmp
331-mv po/Makefile.in.in.tmp po/Makefile.in.in
332-
333-echo ""
334-echo "Done! Please run './configure' now."
335
336=== removed file 'build-lx.xml'
337--- build-lx.xml 2016-05-25 08:53:01 +0000
338+++ build-lx.xml 1970-01-01 00:00:00 +0000
339@@ -1,590 +0,0 @@
340-<!--
341- * Inkscape build file.
342- *
343- * See buildtool.cpp for use.
344- *
345- * Authors:
346- * Bob Jamison
347- * Others
348- *
349- * Copyright (C) 2006-2008 Inkscape.org
350- *
351- * This library is free software; you can redistribute it and/or
352- * modify it under the terms of the GNU Lesser General Public
353- * License as published by the Free Software Foundation; either
354- * version 2.1 of the License, or (at your option) any later version.
355- *
356- * This library is distributed in the hope that it will be useful,
357- * but WITHOUT ANY WARRANTY; without even the implied warranty of
358- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
359- * Lesser General Public License for more details.
360- *
361- * You should have received a copy of the GNU Lesser General Public
362- * License along with this library; if not, write to the Free Software
363- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
364--->
365-
366-
367-
368-<!--
369-########################################################################
370-## P R O J E C T : I N K S C A P E
371-########################################################################
372--->
373-<project name="Inkscape" default="dist" basedir=".">
374- <description>
375- Build file for the Inkscape SVG editor. This version
376- is configured for Unix/Linux, but hopefully we can merge
377- in the future.
378- </description>
379-
380- <!-- set global properties for this build -->
381- <property name="version" value="0.92pre1"/>
382- <property name="src" location="src"/>
383- <property name="lib" location="lib"/>
384- <property name="build" location="build"/>
385- <property name="dist" location="inkscape"/>
386-
387- <!-- Use these settings for Unix -->
388- <!-- -->
389- <property name="arch" value=""/>
390- <property name="archutil" value=""/>
391- <property name="devlibs" location="/usr"/>
392- <property name="datadir" location="${dist}/share"/>
393-
394- <!-- -->
395-
396- <!-- Use these settings for the MinGW native compiler -->
397- <!--
398- <property name="arch" value="mingw32-"/>
399- <property name="archutil" value=""/>
400- <property name="devlibs" location="c:/devlibs"/>
401- -->
402-
403- <!-- Use these settings for the MinGW cross compiler -->
404- <!--
405- <property name="arch" value="i686-pc-mingw32-"/>
406- <property name="archutil" value="${arch}"/>
407- <property name="gtk" location="/target"/>
408- -->
409-
410- <!-- Extra properties -->
411- <property name="refresh" value="false"/>
412-
413- <!--
414- This is for package-config. With these two settings, pkg-config
415- queries can be as simple as ${pcc.packageName} for cflags, and
416- ${pcl.packageName} for libs. Dependencies are calculated automatically.
417- -->
418- <property name="pkg-config-path" location="${devlibs}/lib/pkgconfig"/>
419- <property name="pkg-config-prefix" location="${devlibs}"/>
420-
421-
422- <!--
423- ########################################################################
424- ## T A R G E T : I N I T
425- ########################################################################
426- -->
427- <target name="init"
428- description=
429- "Do all preparatory tasks, like make directories and copy files">
430-
431-
432- <mkdir dir="${build}"/>
433- <mkdir dir="${build}/java"/>
434- <mkdir dir="${build}/java/classes"/>
435- <mkdir dir="${build}/java/lib"/>
436-
437- <mkdir dir="${build}"/>
438- <mkdir dir="${dist}"/>
439- <copy file="${src}/helper/sp-marshal.h.mingw"
440- tofile="${src}/helper/sp-marshal.h"/>
441- <copy file="${src}/helper/sp-marshal.cpp.mingw"
442- tofile="${src}/helper/sp-marshal.cpp"/>
443- <makefile file="inkscape_version.h">
444- #define INKSCAPE_VERSION "${version}, revision ${svn.revision}"
445- </makefile>
446- <makefile file="config.h">
447- #ifndef _CONFIG_H_
448- #define _CONFIG_H_
449-
450- /*######################################
451- ## This is for require-config.h, whose
452- ## purpose I cannot fathom.
453- ######################################*/
454-
455- #define PACKAGE_TARNAME
456-
457- /*######################################
458- #### RESOURCE DIRECTORIES
459- ######################################*/
460-
461- #define INKSCAPE_DATADIR "."
462- #define PACKAGE_LOCALE_DIR "locale"
463-
464-
465- /*######################################
466- #### OTHER DEFINITIONS
467- ######################################*/
468-
469- #define GETTEXT_PACKAGE "inkscape"
470-
471- #define PACKAGE_STRING VERSION
472-
473- #define HAVE_GETOPT_H 1
474- #define HAVE_STRING_H 1
475- #define HAVE_LIBINTL_H 1
476- #define HAVE_MALLOC_H 1
477- #define HAVE_STDLIB_H 1
478- #define HAVE_SYS_STAT_H 1
479- #define HAVE_INTTYPES_H 1
480- #define HAVE_ZLIB_H 1
481-
482- #define ENABLE_LCMS 1
483-
484- #define WITH_GTKMM_2_24 1
485-
486- #define ENABLE_NLS 1
487- #define HAVE_BIND_TEXTDOMAIN_CODESET 1
488-
489- /* make us relocatable */
490- #define BR_PTHREADS 1
491- #define ENABLE_BINRELOC 1
492-
493- /* CairoPDF options */
494- #define HAVE_CAIRO_PDF 1
495- #define PANGO_ENABLE_ENGINE 1
496- #define RENDER_WITH_PANGO_CAIRO 1
497-
498- #define HAVE_GTK_WINDOW_FULLSCREEN 1
499-
500- /* internal interpreter */
501- #define WITH_PYTHON 1
502-
503- /* use poppler for pdf import? */
504- #define HAVE_POPPLER 1
505- #define HAVE_POPPLER_CAIRO 1
506-
507- /* do we want bitmap manipulation? */
508- #define WITH_IMAGE_MAGICK 1
509-
510- /* Allow reading WordPerfect? */
511- #define WITH_LIBWPG 1
512-
513- /* Default to libwpg 0.1.x */
514- #define WITH_LIBWPG01 1
515-
516- #endif /* _CONFIG_H_ */
517- </makefile>
518- </target>
519-
520-
521-
522- <!--
523- ########################################################################
524- ## T A R G E T : T O U C H A B O U T
525- ########################################################################
526- -->
527- <target name="touchabout"
528- description="update the modification time of aboutbox.cpp">
529- <!-- not good <touch file="${src}/ui/dialog/aboutbox.cpp"/> -->
530- <!-- better -->
531- <delete file="${build}/obj/ui/dialog/aboutbox.o"/>
532- <delete file="inkscape_version.h"/>
533- </target>
534-
535-
536- <!--
537- ########################################################################
538- ## T A R G E T : C O M P I L E
539- ########################################################################
540- -->
541- <target name="compile" depends="init"
542- description="compile the source to .o" >
543-
544- <!-- Compile from source to build -->
545- <cc cc="${arch}gcc" cxx="${arch}g++"
546- destdir="${build}/obj"
547- continueOnError="false"
548- refreshCache="${refresh}">
549- <fileset dir="${src}">
550- <!-- THINGS TO EXCLUDE -->
551- <exclude name="2geom/chebyshev.cpp"/>
552- <exclude name="ast/.*"/>
553- <exclude name="bonobo/.*"/>
554- <exclude name="deptool.cpp"/>
555- <exclude name="test-all.cpp"/>
556- <exclude name="display/testnr.cpp"/>
557- <exclude name="display/bezier-utils-test.cpp"/>
558- <exclude name="extension/api.cpp"/>
559- <exclude name="extension/dxf2svg/.*"/>
560- <exclude name="extension/implementation/plugin.cpp"/>
561- <exclude name="extension/script/bindtest.cpp"/>
562- <exclude name="extension/script/cpptest.cpp"/>
563- <exclude name="extension/plugin/.*"/>
564- <exclude name="extract-uri-test.cpp"/>
565- <exclude name="helper/units-test.cpp"/>
566- <!-- exclude name="inkview.cpp"/-->
567- <exclude name="libnr/test-nr.cpp"/>
568- <exclude name="libnr/test-nr-main.cpp"/>
569- <exclude name="libnr/testnr.cpp"/>
570- <exclude name="libnr/in-svg-plane-test.cpp"/>
571- <exclude name="libnr/nr-compose-reference.cpp"/>
572- <exclude name="libnr/nr-compose-test.cpp"/>
573- <exclude name="libnr/nr-matrix-test.cpp"/>
574- <exclude name="libnr/nr-point-fns-test.cpp"/>
575- <exclude name="libnr/nr-rotate-fns-test.cpp"/>
576- <exclude name="libnr/nr-rotate-test.cpp"/>
577- <exclude name="libnr/nr-scale-test.cpp"/>
578- <exclude name="libnr/nr-translate-test.cpp"/>
579- <exclude name="libnr/nr-types-test.cpp"/>
580- <exclude name="livarot/Path-test.cpp"/>
581- <exclude name="mod360-test.cpp"/>
582- <exclude name="trace/potrace/potest.cpp"/>
583- <exclude name="round-test.cpp"/>
584- <exclude name="sp-gradient-test.cpp"/>
585- <exclude name="svg/ftos.cpp"/>
586- <exclude name="svg/test-svg.cpp"/>
587- <exclude name="svg/test-svg-main.cpp"/>
588- <exclude name="widgets/test-widgets.cpp"/>
589- <exclude name="xml/quote-test.cpp"/>
590- <exclude name="xml/repr-action-test.cpp"/>
591- <exclude name="xml/test-xml.cpp"/>
592- <exclude name="xml/test-xml-main.cpp"/>
593- <exclude name="io/streamtest.cpp"/>
594- <!--OVERLAP-->
595- <exclude name="removeoverlap/placement_SolveVPSC.cpp"/>
596- <exclude name="removeoverlap/placement_SolveVPSC.h"/>
597- <exclude name="removeoverlap/test.cpp"/>
598- <exclude name="removeoverlap/remove_rectangle_overlap-test.cpp"/>
599- <exclude name="removeoverlap/remove_rectangle_overlap-test.h"/>
600- <!--WIN32 -->
601- <exclude name="registrytool.cpp"/>
602- <exclude name="extension/internal/win32.cpp"/>
603- <exclude name="libgdl/gdl-win32.c"/>
604- </fileset>
605- <excludeinc dir="${src}">
606- <file name="extension/param"/>
607- </excludeinc>
608- <flags>
609- -Wall -Wformat -Werror=format-security -W -Wpointer-arith -Wcast-align -Wsign-compare -Woverloaded-virtual -Wswitch
610- -O2
611- </flags>
612- <defines>
613- -DVERSION=\"${version}\"
614- -DHAVE_CONFIG_H
615- -D_INTL_REDIRECT_INLINE
616- -DHAVE_SSL
617- -DRELAYTOOL_SSL="static const int libssl_is_present=1; static int __attribute__((unused)) libssl_symbol_is_present(char *s){ return 1; }" <!-- inkboard -->
618- </defines>
619- <includes>
620- -I${devlibs}/include
621- <!-- GTK / GTKMM -->
622- ${pcc.gtkmm-2.4}
623- <!-- OTHER -->
624- ${pcc.libxslt}
625- ${pcc.freetype2}
626- ${pcc.cairo}
627- ${pcc.poppler}
628- -I${devlibs}/include/gc
629- ${pcc.libwpg-0.1} ${pcc.libwpg-stream-0.1}
630- <!-- PYTHON -->
631- -I${devlibs}/python/include
632- <!-- JAVA -->
633- -I${src}/bind/javainc -I${src}/bind/javainc/linux
634- </includes>
635- </cc>
636- </target>
637-
638-
639- <!--
640- ########################################################################
641- ## T A R G E T : L I B
642- ########################################################################
643- -->
644- <target name="lib" depends="compile"
645- description="create a static library">
646- <staticlib command="${archutil}ar crsv"
647- file="${build}/libinkscape.a">
648- <fileset dir="${build}/obj">
649- <exclude name="main.o"/>
650- <exclude name="winmain.o"/>
651- <exclude name="inkview.o"/>
652- </fileset>
653- </staticlib>
654- </target>
655-
656-
657-
658- <!--
659- ########################################################################
660- ## T A R G E T : I 1 8 N
661- ########################################################################
662- -->
663- <target name="i18n" depends="compile"
664- description="compile gettext .po files to .mo">
665-
666- <msgfmt todir="${build}/locale" owndir="true"
667- out="LC_MESSAGES/inkscape.mo">
668- <fileset dir="po">
669- </fileset>
670- </msgfmt>
671- </target>
672-
673-
674-
675-
676-
677- <!--
678- ########################################################################
679- ## T A R G E T : L I N K
680- ########################################################################
681- -->
682- <target name="link" depends="lib"
683- description="link objects and library to create executable">
684-
685- <link command="${arch}g++" out="${build}/inkscape"
686- strip="true" symfile="${build}/inkscape.dbg"
687- stripcommand="${archutil}strip"
688- objcopycommand="${archutil}objcopy">
689- <flags>
690- </flags>
691- <fileset dir="${build}">
692- <include name="obj/main.o"/>
693- <include name="libinkscape.a"/>
694- </fileset>
695- <libs>
696- -L${devlibs}/lib
697- ${pcl.poppler} ${pcl.poppler-cairo} ${pcl.poppler-glib}
698- ${pcl.gtkmm-2.4}
699- ${pcl.cairo} ${pcl.cairomm-1.0}
700- ${pcl.gthread-2.0}
701- ${pcl.libxslt}
702- ${pcl.libwpg-0.1} ${pcl.libwpg-stream-0.1}
703- ${pcl.ImageMagick++}
704- ${pcl.fontconfig} ${pcl.freetype2}
705- ${pcl.lcms}
706- ${pcl.gsl}
707- -lssl -lcrypto
708- -lpng -ljpeg -ltiff -lpopt -lz
709- -lgc -lm
710- </libs>
711- </link>
712- </target>
713-
714-
715-
716-
717-
718- <!--
719- ########################################################################
720- ## T A R G E T : L I N K I N K V I E W
721- ########################################################################
722- -->
723- <target name="linkinkview" depends="lib"
724- description="link objects and library to create Inkview executable">
725-
726- <link command="${arch}g++" out="${build}/inkview"
727- strip="true" symfile="${build}/inkview.dbg"
728- stripcommand="${archutil}strip"
729- objcopycommand="${archutil}objcopy">
730- <flags>
731- </flags>
732- <fileset dir="${build}">
733- <include name="obj/inkview.o"/>
734- <include name="libinkscape.a"/>
735- </fileset>
736- <libs>
737- -L${devlibs}/lib
738- ${pcl.poppler}
739- ${pcl.gtkmm-2.4}
740- ${pcl.cairo} ${pcl.cairomm-1.0}
741- <!-- PERL -->
742- -L${devlibs}/perl/lib/CORE -lperl58
743- <!-- PYTHON -->
744- -L${devlibs}/python/libs -lpython25
745- -lxml2 -lxslt
746- -lwpg-0.1 -lwpg-stream-0.1
747- ${pcl.ImageMagick++}
748- ${pcl.fontconfig} ${pcl.freetype2}
749- ${pcl.lcms}
750- -lssl -lcrypto
751- -lpng -ljpeg -ltiff -lpopt -lz
752- -lgc
753- -lintl -liconv -lm
754- </libs>
755- </link>
756- </target>
757-
758-
759-
760- <!--
761- ########################################################################
762- ## T A R G E T : D I S T
763- ########################################################################
764- -->
765- <target name="dist" depends="link,i18n"
766- description="generate the distribution directory with all needed files">
767-
768- <!-- Create the distribution directory -->
769- <mkdir dir="${dist}/bin"/>
770- <mkdir dir="${dist}/lib"/>
771-
772- <!-- Copy Inkscape files -->
773- <copy file="${build}/inkscape" todir="${dist}/bin"/>
774- <copy file="${build}/inkscape.dbg" todir="${dist}/bin"/>
775- <copy file="AUTHORS" todir="${dist}"/>
776- <copy file="COPYING" todir="${dist}"/>
777- <copy file="GPL2.txt" todir="${dist}"/>
778- <copy file="GPL3.txt" todir="${dist}"/>
779- <copy file="LGPL2.1.txt" todir="${dist}"/>
780- <copy file="NEWS" todir="${dist}"/>
781- <copy file="README" todir="${dist}"/>
782- <copy file="TRANSLATORS" todir="${dist}"/>
783- <copy todir="${datadir}/inkscape">
784- <fileset dir="share/attributes"> <exclude name=".*\.am"/> </fileset>
785- </copy>
786- <copy todir="${datadir}/inkscape">
787- <fileset dir="share/clipart"> <exclude name=".*\.am"/> </fileset>
788- </copy>
789- <copy todir="${datadir}/inkscape">
790- <fileset dir="share/examples"> <exclude name=".*\.am"/> </fileset>
791- </copy>
792- <copy todir="${datadir}/inkscape">
793- <fileset dir="share/extensions"> <exclude name=".*\.am"/> </fileset>
794- </copy>
795- <copy todir="${datadir}/inkscape">
796- <fileset dir="share/fonts"> <exclude name=".*\.am"/> </fileset>
797- </copy>
798- <copy todir="${datadir}/inkscape">
799- <fileset dir="share/gradients"> <exclude name=".*\.am"/> </fileset>
800- </copy>
801- <copy todir="${datadir}/inkscape">
802- <fileset dir="share/icons"> <exclude name=".*\.am"/> </fileset>
803- </copy>
804- <copy todir="${datadir}/inkscape">
805- <fileset dir="share/keys"> <exclude name=".*\.am"/> </fileset>
806- </copy>
807- <copy todir="${datadir}/inkscape">
808- <fileset dir="share/markers"> <exclude name=".*\.am"/> </fileset>
809- </copy>
810- <copy todir="${datadir}/inkscape">
811- <fileset dir="share/palettes"> <exclude name=".*\.am"/> </fileset>
812- </copy>
813- <copy todir="${datadir}/inkscape">
814- <fileset dir="share/patterns"> <exclude name=".*\.am"/> </fileset>
815- </copy>
816- <copy todir="${datadir}/inkscape">
817- <fileset dir="share/screens"> <exclude name=".*\.am"/> </fileset>
818- </copy>
819- <copy todir="${datadir}/inkscape">
820- <fileset dir="share/symbols"> <exclude name=".*\.am"/> </fileset>
821- </copy>
822- <copy todir="${datadir}/inkscape">
823- <fileset dir="share/templates"> <exclude name=".*\.am"/> </fileset>
824- </copy>
825- <copy todir="${datadir}/inkscape">
826- <fileset dir="share/tutorials"> <exclude name=".*\.am"/> </fileset>
827- </copy>
828- <copy todir="${datadir}/inkscape">
829- <fileset dir="share/ui"> <exclude name=".*\.am"/> </fileset>
830- </copy>
831- <copy todir="${datadir}">
832- <fileset dir="${build}/locale"> <exclude name=".*\.am"/> </fileset>
833- </copy>
834-
835- <!-- Copy devlibs files -->
836-
837-
838- </target>
839-
840-
841- <!--
842- ########################################################################
843- ## T A R G E T : JAVAC
844- ########################################################################
845- -->
846- <target name="javac" depends="init"
847- description="compile java binding classes">
848- <javac srcdir="${src}/bind/java" destdir="${build}/java/classes"/>
849- </target>
850-
851-
852- <!--
853- ########################################################################
854- ## T A R G E T : JAR
855- ########################################################################
856- -->
857- <target name="jar" depends="javac"
858- description="pack java classes and resources into a jar file">
859- <copy todir="${build}/java/classes"> <fileset dir="bind/data"/></copy>
860- <jar basedir="${build}/java/classes" destfile="${build}/java/lib/inkscape.jar"/>
861- </target>
862-
863- <!--
864- ########################################################################
865- ## T A R G E T : BINDDIST
866- ########################################################################
867- -->
868- <target name="binddist" depends="jar"
869- description="pack java classes and resources into a jar file">
870- <copy todir="${datadir}/inkscape/bind"> <fileset dir="bind/java"/> </copy>
871- <copy todir="${datadir}/inkscape/bind/java"> <fileset dir="${build}/java/lib"/> </copy>
872-
873- </target>
874-
875- <!--
876- ########################################################################
877- ## T A R G E T : BINDCLEAN
878- ########################################################################
879- -->
880- <target name="bindclean" depends=""
881- description="clean up java binding classes">
882- <delete dir="${build}/java"/>
883- </target>
884-
885-
886-
887-
888- <!--
889- ########################################################################
890- ## T A R G E T : D I S T - A L L
891- ########################################################################
892- -->
893- <target name="dist-all" depends="dist"
894- description="generate the distribution, along with inkview" >
895-
896- <copy file="${build}/inkview" todir="${dist}/bin"/>
897- <copy file="${build}/inkview.dbg" todir="${dist}/bin"/>
898-
899- </target>
900-
901-
902-
903-
904-
905- <!--
906- ########################################################################
907- ## T A R G E T : C L E A N
908- ########################################################################
909- -->
910- <target name="clean" depends="bindclean"
911- description="clean up. deleting build and distro dirs" >
912-
913- <delete dir="${build}"/>
914- <delete dir="${dist}"/>
915- <delete file="build.dep"/>
916- <delete file="config.h"/>
917- <delete file="inkscape_version.h"/>
918-
919- </target>
920-
921-
922-
923-</project>
924-<!--
925-########################################################################
926-## E N D
927-########################################################################
928--->
929-
930
931=== removed file 'build-x64-gtk3.xml'
932--- build-x64-gtk3.xml 2016-05-16 11:02:58 +0000
933+++ build-x64-gtk3.xml 1970-01-01 00:00:00 +0000
934@@ -1,952 +0,0 @@
935-<!--
936- * Inkscape build file.
937- *
938- * See buildtool.cpp for use.
939- *
940- * Authors:
941- * Bob Jamison
942- * Others
943- *
944- * Copyright (C) 2006-2008 Inkscape.org
945- *
946- * This library is free software; you can redistribute it and/or
947- * modify it under the terms of the GNU Lesser General Public
948- * License as published by the Free Software Foundation; either
949- * version 2.1 of the License, or (at your option) any later version.
950- *
951- * This library is distributed in the hope that it will be useful,
952- * but WITHOUT ANY WARRANTY; without even the implied warranty of
953- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
954- * Lesser General Public License for more details.
955- *
956- * You should have received a copy of the GNU Lesser General Public
957- * License along with this library; if not, write to the Free Software
958- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
959--->
960-
961-
962-
963-<!--
964-########################################################################
965-## P R O J E C T : I N K S C A P E
966-########################################################################
967--->
968-<project name="Inkscape" default="dist-all" basedir=".">
969- <description>
970- Build file for the Inkscape SVG editor. This file
971- was written for GTK-3 on Win64.
972-
973- Note that the default target is 'dist-all'. You can execute other
974- targets instead, by "btool {target}", like "btool compile", if
975- you want to save time, or "dist-inkscape" if you don't want inkview.
976- </description>
977-
978- <!-- set global properties for this build -->
979- <property name="version" value="0.91+devel_64bit_gtk3"/>
980- <property name="src" location="src"/>
981- <property name="lib" location="lib"/>
982- <property name="build" location="build"/>
983- <property name="dist" location="inkscape"/>
984-
985- <!-- Use these settings for the native compiler -->
986- <!-- -->
987- <property name="arch" value="x86_64-w64-mingw32-"/>
988- <property name="arch_cc" value="${arch}gcc"/>
989- <property name="arch_cxx" value="${arch}g++"/>
990- <property name="arch_link" value="${arch}g++"/>
991- <property name="archutil" value=""/>
992- <property name="devlibs" location="${env.DEVLIBS_PATH}"/>
993- <property name="mingw" location="${env.MINGW_PATH}"/>
994- <property name="mingw_bin" location="${env.MINGW_PATH}/bin"/>
995- <property name="cxxtest" location="cxxtest"/>
996- <property name="python" location="${devlibs}/python/python.exe"/>
997- <!-- -->
998-
999- <!-- Use these settings for the cross compiler -->
1000- <!--
1001- <property name="arch" value="i686-pc-mingw32-"/>
1002- <property name="arch_cc" value="${arch}gcc"/>
1003- <property name="arch_cxx" value="${arch}g++"/>
1004- <property name="arch_link" value="${arch}g++"/>
1005- <property name="archutil" value="${arch}"/>
1006- <property name="devlibs" location="/target"/>
1007- <property name="mingw_bin" location="${env.MINGW_BIN}"/>
1008- <property name="cxxtest" location="cxxtest"/>
1009- <property name="python" location="python"/>
1010- -->
1011-
1012- <!-- Extra properties -->
1013- <property name="refresh" value="false"/>
1014-
1015- <!--
1016- This is for package-config. With these two settings, pkg-config
1017- queries can be as simple as ${pcc.packageName} for cflags, and
1018- ${pcl.packageName} for libs. Dependencies are calculated automatically.
1019- -->
1020- <property name="pkg-config-path" location="${devlibs}/lib/pkgconfig"/>
1021- <property name="pkg-config-prefix" location="${devlibs}"/>
1022-
1023-
1024- <!--
1025- ########################################################################
1026- ## T A R G E T : I N I T
1027- ########################################################################
1028- -->
1029- <target name="init"
1030- description=
1031- "Do all preparatory tasks, like make directories and copy files">
1032-
1033-
1034- <mkdir dir="${build}"/>
1035- <mkdir dir="${dist}"/>
1036-
1037- <copy file="${src}/helper/sp-marshal.h.mingw"
1038- tofile="${src}/helper/sp-marshal.h"/>
1039- <copy file="${src}/helper/sp-marshal.cpp.mingw"
1040- tofile="${src}/helper/sp-marshal.cpp"/>
1041-
1042- <!--makefile file="${src}/inkscape-version.cpp">
1043- namespace Inkscape {
1044- char const *version_string = "${version}";
1045- }
1046- </makefile-->
1047- <makefile file="${src}/inkscape-version.cpp" force="true">
1048- namespace Inkscape {
1049- char const *version_string = "${version} ${bzr.revision}";
1050- }
1051- </makefile>
1052- <makefile file="config.h">
1053- #ifndef _CONFIG_H_
1054- #define _CONFIG_H_
1055-
1056- #ifndef WIN32
1057- #define WIN32
1058- #endif
1059-
1060- /*######################################
1061- ## This is for require-config.h, whose
1062- ## purpose I cannot fathom.
1063- ######################################*/
1064-
1065- #define PACKAGE_TARNAME
1066-
1067- /*######################################
1068- #### RESOURCE DIRECTORIES
1069- ######################################*/
1070-
1071- #define INKSCAPE_DATADIR "."
1072- #define PACKAGE_LOCALE_DIR "locale"
1073-
1074-
1075- /*######################################
1076- #### OTHER DEFINITIONS
1077- ######################################*/
1078-
1079- #define GETTEXT_PACKAGE "inkscape"
1080-
1081- #define PACKAGE_STRING VERSION
1082-
1083- #define HAVE_GETOPT_H 1
1084- #define HAVE_STRING_H 1
1085- #define HAVE_LIBINTL_H 1
1086- #define HAVE_MALLOC_H 1
1087- #define HAVE_STDLIB_H 1
1088- #define HAVE_SYS_STAT_H 1
1089- #define HAVE_INTTYPES_H 1
1090- #define HAVE_OPENMP 1
1091- #define HAVE_TR1_UNORDERED_SET 1
1092- #define HAVE_STDINT_H 1
1093-
1094- #define HAVE_LIBLCMS2 1
1095-
1096- #define WITH_GTKMM_3_0 1
1097- #define WITH_GTKMM_3_10 1
1098- //#define WITH_GLIBMM_2_32 1
1099- #define HAVE_GLIBMM_THREADS_H 1
1100- #define WITH_EXT_GDL 1
1101- #define WITH_GDL_3_6 1
1102-
1103- #define ENABLE_NLS 1
1104- #define HAVE_BIND_TEXTDOMAIN_CODESET 1
1105-
1106- /* keep binreloc off */
1107- #define BR_PTHREADS 0
1108- #undef ENABLE_BINRELOC
1109-
1110- /* CairoPDF options */
1111- #define HAVE_CAIRO_PDF 1
1112- #define PANGO_ENABLE_ENGINE 1
1113- #define RENDER_WITH_PANGO_CAIRO 1
1114-
1115- #define HAVE_GTK_WINDOW_FULLSCREEN 1
1116-
1117- /* internal interpreter */
1118- #define WITH_PYTHON 1
1119-
1120- /* use poppler for pdf import? */
1121- #define HAVE_POPPLER 1
1122- #define HAVE_POPPLER_GLIB 1
1123- #define HAVE_POPPLER_CAIRO 1
1124-
1125- /* do we want bitmap manipulation? */
1126- #define WITH_IMAGE_MAGICK 1
1127-
1128- /* Exif and JPEG support for image resolution import */
1129- #define HAVE_EXIF 1
1130- #define HAVE_JPEG 1
1131-
1132- /* WordPerfect import filter */
1133- #define WITH_LIBWPG 1
1134- #define WITH_LIBWPG03 1
1135-
1136- /* Visio import filter */
1137- #define WITH_LIBVISIO 1
1138- #define WITH_LIBVISIO01 1
1139-
1140- /* Corel Draw import filter */
1141- #define WITH_LIBCDR 1
1142- #define WITH_LIBCDR01 1
1143-
1144- /* Do we support SVG Fonts? */
1145- #define ENABLE_SVG_FONTS 1
1146-
1147- /* Do we want experimental, unsupported, unguaranteed, etc., LivePathEffects enabled? */
1148- //#define LPE_ENABLE_TEST_EFFECTS 1
1149-
1150- /* Do we want experimental, unsupported, unguaranteed, etc., SVG2 features enabled? */
1151- //#define WITH_SVG2 1
1152- //#define WITH_CSSCOMPOSITE 1
1153- //#define WITH_CSSBLEND 1
1154- //#define WITH_MESH 1
1155-
1156- #define HAVE_ASPELL 1
1157-
1158- #define HAVE_POTRACE 1
1159-
1160- #endif /* _CONFIG_H_ */
1161- </makefile>
1162- </target>
1163-
1164- <!--
1165- ########################################################################
1166- ## T A R G E T : C X X T E S T
1167- ########################################################################
1168- -->
1169- <target name="cxxtest" depends="init"
1170- description="generate test files" >
1171-
1172- <!-- Generate CxxTest files -->
1173- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
1174- out="${src}/test-src.cpp">
1175- <fileset dir="${src}">
1176- <include name="attributes-test.h"/>
1177- <include name="color-profile-test.h"/>
1178- <include name="dir-util-test.h"/>
1179- <include name="extract-uri-test.h"/>
1180- <include name="marker-test.h"/>
1181- <include name="mod360-test.h"/>
1182- <include name="object-test.h"/>
1183- <include name="preferences-test.h"/>
1184- <include name="round-test.h"/>
1185- <include name="sp-gradient-test.h"/>
1186- <include name="sp-style-elem-test.h"/>
1187- <include name="syle-test.h"/>
1188- <include name="test-helpers.h"/>
1189- <include name="verbs-test.h"/>
1190- </fileset>
1191- </cxxtestpart>
1192- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
1193- out="${src}/display/test-display.cpp">
1194- <fileset dir="${src}/display">
1195- <include name="curve-test.h"/>
1196- </fileset>
1197- </cxxtestpart>
1198- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
1199- out="${src}/helper/test-helper.cpp">
1200- <fileset dir="${src}/helper">
1201- <include name="units-test.h"/>
1202- </fileset>
1203- </cxxtestpart>
1204- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
1205- out="${src}/svg/test-svg.cpp">
1206- <fileset dir="${src}/svg">
1207- <!--<include name="css-ostringstream-test.h"/>-->
1208- <include name="stringstream-test.h"/>
1209- <include name="svg-affine-test.h"/>
1210- <include name="svg-color-test.h"/>
1211- <include name="svg-length-test.h"/>
1212- <include name="svg-path-geom-test.h"/>
1213- </fileset>
1214- </cxxtestpart>
1215- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
1216- out="${src}/util/test-util.cpp">
1217- <fileset dir="${src}/util">
1218- <include name="list-container-test.h"/>
1219- </fileset>
1220- </cxxtestpart>
1221- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
1222- out="${src}/xml/test-xml.cpp">
1223- <fileset dir="${src}/xml">
1224- <include name="repr-action-test.h"/>
1225- <include name="quote-test.h"/>
1226- </fileset>
1227- </cxxtestpart>
1228- <cxxtestroot command="${python} ${cxxtest}/cxxtestgen.py"
1229- out="${src}/test-main.cpp"
1230- template="${src}/cxxtest-template.tpl">
1231- <fileset dir="${src}">
1232- <include name="MultiPrinter.h"/>
1233- <include name="PylogFormatter.h"/>
1234- <include name="TRPIFormatter.h"/>
1235- </fileset>
1236- </cxxtestroot>
1237- </target>
1238-
1239-
1240- <!--
1241- ########################################################################
1242- ## T A R G E T : C O M P I L E
1243- ########################################################################
1244- -->
1245- <target name="compile" depends="cxxtest"
1246- description="compile the source to .o" >
1247-
1248- <!-- Compile from source to build -->
1249- <cc cc="${arch_cc}" cxx="${arch_cxx}"
1250- destdir="${build}/obj"
1251- continueOnError="true"
1252- refreshCache="${refresh}">
1253- <fileset dir="${src}">
1254- <!-- THINGS TO EXCLUDE -->
1255- <exclude name="ast/.*"/>
1256- <exclude name="bonobo/.*"/>
1257- <exclude name="libgdl/.*"/>
1258- <exclude name="deptool.cpp"/>
1259- <exclude name="cxxtests.cpp"/>
1260- <!--<exclude name="test-main.cpp"/>-->
1261- <!--<exclude name="test-src.cpp"/>-->
1262- <exclude name="display/test-display.cpp"/>
1263- <exclude name="display/testnr.cpp"/>
1264- <exclude name="extension/api.cpp"/>
1265- <exclude name="extension/dbus/.*"/>
1266- <exclude name="extension/dxf2svg/.*"/>
1267- <exclude name="extension/implementation/plugin.cpp"/>
1268- <exclude name="extension/plugin/.*"/>
1269- <exclude name="extract-uri-test.cpp"/>
1270- <exclude name="helper/units-test.cpp"/>
1271- <!-- exclude name="inkview.cpp"/-->
1272- <exclude name="livarot/Path-test.cpp"/>
1273- <exclude name="mod360-test.cpp"/>
1274- <exclude name="trace/potrace/potest.cpp"/>
1275- <exclude name="round-test.cpp"/>
1276- <exclude name="sp-gradient-test.cpp"/>
1277- <exclude name="style-test.cpp"/>
1278- <exclude name="svg/ftos.cpp"/>
1279- <!--<exclude name="svg/test-svg.cpp"/>-->
1280- <exclude name="svg/test-svg-main.cpp"/>
1281- <exclude name="util/list-container-test.cpp"/>
1282- <exclude name="widgets/test-widgets.cpp"/>
1283- <exclude name="xml/quote-test.cpp"/>
1284- <exclude name="xml/repr-action-test.cpp"/>
1285- <exclude name="xml/test-xml.cpp"/>
1286- <!--<exclude name="xml/test-xml-main.cpp"/>-->
1287- <exclude name="io/streamtest.cpp"/>
1288- <!--OVERLAP-->
1289- <exclude name="removeoverlap/placement_SolveVPSC.cpp"/>
1290- <exclude name="removeoverlap/placement_SolveVPSC.h"/>
1291- <exclude name="removeoverlap/test.cpp"/>
1292- <exclude name="removeoverlap/remove_rectangle_overlap-test.cpp"/>
1293- <exclude name="removeoverlap/remove_rectangle_overlap-test.h"/>
1294- </fileset>
1295- <excludeinc dir="${src}">
1296- <file name="extension/param"/>
1297- </excludeinc>
1298- <flags>
1299- -Wall -Wformat -Werror=format-security -Wextra -Wpointer-arith -Wcast-align -Wsign-compare -Wswitch
1300- -Werror=return-type
1301- <!-- -Werror -->
1302- <!-- A list of warnings that should not error *yet*, any help is welcome in fixing the code generating these warnings! -->
1303- <!-- libcroco is using guchar where it should use gchar, so we need: --> -Wno-error=pointer-sign
1304- -Wno-error=unused-parameter -Wno-error=unused-but-set-variable -Wno-error=strict-overflow -Wno-error=write-strings
1305- <!-- Format warnings are obviously bad errors, but with the current old compiler on Windows (gcc 4.6.) we run into a problem with long long ints...
1306- The errors can be restored by removing these flags after updating to a newer compiler (soon after 0.91 release hopefully) -->
1307- -Wno-error=format -Wno-error=format-extra-args
1308- -Wno-unused-local-typedefs <!-- triggers ton of warnings in (too old?) Boost with newer gcc -->
1309- -O2
1310- -mms-bitfields
1311- -fopenmp
1312- </flags>
1313- <cxxflags>
1314- -std=gnu++11 -DCPP11
1315- -Woverloaded-virtual
1316- <!-- -Wno-unused-local-typedefs -->
1317- -Wno-deprecated-declarations <!-- silcence warnings about usage of auto_ptr -->
1318- </cxxflags>
1319- <defines>
1320- -DVERSION=\"${version}\"
1321- -DHAVE_CONFIG_H
1322- -D_INTL_REDIRECT_INLINE
1323- -DHAVE_SSL
1324- -DRELAYTOOL_SSL="static const int libssl_is_present=1; static int __attribute__((unused)) libssl_symbol_is_present(char *s){ return 1; }" <!-- inkboard -->
1325- -DPOPPLER_NEW_GFXFONT <!-- poppler changed the api for 0.8.3 -->
1326- -DPOPPLER_NEW_GFXPATCH <!-- GfxPatch no longer uses GfxColor in >= 0.15.1 -->
1327- -DPOPPLER_NEW_ERRORAPI <!-- poppler changed the error api for 0.20.0 -->
1328- -DPOPPLER_EVEN_NEWER_COLOR_SPACE_API <!-- poppler changed the colorspace api for 0.26.0 -->
1329- -DPOPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API <!-- poppler changed the colorspace api for 0.29.0 -->
1330- <!-- GTK+3 migration -->
1331- -DGLIBMM_DISABLE_DEPRECATED
1332- -DG_DISABLE_DEPRECATED
1333- -DGTK_DISABLE_SINGLE_INCLUDES
1334- <!-- -DGTKMM_DISABLE_DEPRECATED -->
1335- <!-- -DGTK_DISABLE_DEPRECATED -->
1336- -DGDKMM_DISABLE_DEPRECATED
1337- -DGSEAL_ENABLE
1338- </defines>
1339- <includes>
1340- -I${devlibs}/include
1341- <!-- GTK / GTKMM -->
1342- ${pcc.gtkmm-3.0}
1343- ${pcc.gdkmm-3.0}
1344- ${pcc.gtk+-3.0}
1345- ${pcc.gdk-3.0}
1346- ${pcc.gdl-3.0}
1347- ${pcc.glibmm-2.4}
1348-
1349-
1350- ${pcc.pangomm-1.4}
1351- ${pcc.cairomm-1.0}
1352- <!-- OTHER -->
1353- ${pcc.Magick++}
1354- ${pcc.libxml-2.0}
1355- ${pcc.freetype2}
1356- ${pcc.cairo}
1357- ${pcc.poppler}
1358- -I${devlibs}/include/gc
1359- -I${devlibs}/include/potracelib
1360- ${pcc.libwpg-0.3} ${pcc.libvisio-0.1} ${pcc.libcdr-0.1}
1361- -I${cxxtest}
1362- <!-- PERL -->
1363- <!-- -Wno-comment -I${devlibs}/perl/lib/CORE -->
1364- <!-- PYTHON -->
1365- -I${devlibs}/python/include
1366- </includes>
1367- </cc>
1368- </target>
1369-
1370-
1371-
1372- <!--
1373- ########################################################################
1374- ## T A R G E T : I 1 8 N
1375- ########################################################################
1376- -->
1377- <target name="i18n" depends="compile"
1378- description="compile gettext .po files to .mo">
1379-
1380- <msgfmt todir="${build}/locale" owndir="true"
1381- out="LC_MESSAGES/inkscape.mo">
1382- <fileset dir="po">
1383- </fileset>
1384- </msgfmt>
1385- </target>
1386-
1387-
1388-
1389-
1390-
1391- <!--
1392- ########################################################################
1393- ## T A R G E T : L I N K
1394- ########################################################################
1395- -->
1396- <target name="link" depends="compile"
1397- description="link objects and library to create executable">
1398-
1399- <rc command="${archutil}windres"
1400- file="${src}/inkscape-x64.rc"
1401- out="${build}/obj/inkres.o">
1402- <flags>
1403- --include-dir=${src}
1404- </flags>
1405- </rc>
1406- <link command="${arch_link}" out="${build}/inkscape.exe"
1407- strip="true" symfile="${build}/inkscape.dbg"
1408- stripcommand="${archutil}strip"
1409- objcopycommand="${archutil}objcopy">
1410- <flags>
1411- -mwindows -m64
1412- -mthreads
1413- </flags>
1414- <fileset dir="${build}/obj">
1415- <exclude name="winconsole.o"/>
1416- <exclude name="inkview.o"/>
1417- <exclude name="inkviewres.o"/>
1418- <!-- CxxTest -->
1419- <exclude name="test-main.o"/>
1420- <exclude name="test-src.o"/>
1421- <exclude name="display/test-display.o"/>
1422- <exclude name="helper/test-helper.o"/>
1423- <exclude name="svg/test-svg.o"/>
1424- <exclude name="util/test-util.o"/>
1425- <exclude name="xml/test-xml.o"/>
1426- </fileset>
1427- <!-- WARNING: If you change these libraries, don't forget to change them for inkview and cxxtests below as well! -->
1428- <libs>
1429- -L${devlibs}/lib
1430- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
1431- ${pcl.pangoft2} ${pcl.gthread-2.0}
1432- ${pcl.gtkmm-3.0} ${pcl.gdkmm-3.0}
1433- ${pcl.gtk+-3.0} ${pcl.gdk-3.0}
1434- ${pcl.gdl-3.0}
1435- ${devlibs}/bin/libxml2-2.dll
1436- ${devlibs}/bin/libxslt-1.dll
1437- ${devlibs}/bin/libexslt-0.dll
1438- ${pcl.cairo} ${pcl.cairomm-1.0}
1439- ${pcl.librevenge-stream-0.0} ${pcl.libwpg-0.3} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
1440- ${pcl.glibmm-2.4}
1441-
1442-
1443- ${pcl.pangomm-1.4}
1444- ${pcl.cairomm-1.0}
1445- -liconv
1446- ${pcl.Magick++}
1447- ${pcl.fontconfig} ${pcl.freetype2}
1448- ${pcl.lcms2}
1449- ${pcl.gsl}
1450- -lpng -ljpeg -ltiff -lexif -lpopt -lz
1451- -lgc -lpotrace
1452- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
1453- -lgomp -lwinpthread
1454- -laspell
1455- -lmscms <!-- required for color profiles -->
1456- </libs>
1457- </link>
1458- </target>
1459-
1460-<!--
1461- ########################################################################
1462- ## T A R G E T : L I N K C O N S O L E
1463- ########################################################################
1464- -->
1465- <target name="linkconsole" depends="compile"
1466- description="link console helper">
1467-
1468- <link command="${arch_link}" out="${build}/inkscape-console.exe"
1469- strip="true" stripcommand="${archutil}strip">
1470- <flags>
1471- -mconsole
1472- -mthreads
1473- </flags>
1474- <fileset dir="${build}">
1475- <include name="obj/winconsole.o"/>
1476- </fileset>
1477- <libs></libs>
1478- </link>
1479- </target>
1480-
1481- <!--
1482- ########################################################################
1483- ## T A R G E T : L I N K I N K V I E W
1484- ########################################################################
1485- -->
1486- <target name="linkinkview" depends="compile"
1487- description="link objects and library to create Inkview executable">
1488-
1489- <rc command="${archutil}windres"
1490- file="${src}/inkview-x64.rc"
1491- out="${build}/obj/inkviewres.o">
1492- <flags>
1493- --include-dir=${src}
1494- </flags>
1495- </rc>
1496- <link command="${arch_link}" out="${build}/inkview.exe"
1497- strip="true" symfile="${build}/inkview.dbg"
1498- stripcommand="${archutil}strip"
1499- objcopycommand="${archutil}objcopy">
1500- <flags>
1501- -mwindows -m64
1502- -mthreads
1503- </flags>
1504- <fileset dir="${build}/obj">
1505- <!-- exclude the other programs -->
1506- <exclude name="main.o"/>
1507- <exclude name="winmain.o"/>
1508- <exclude name="winconsole.o"/>
1509- <exclude name="inkres.o"/>
1510- <!-- CxxTest -->
1511- <exclude name="test-main.o"/>
1512- <exclude name="test-src.o"/>
1513- <exclude name="display/test-display.o"/>
1514- <exclude name="helper/test-helper.o"/>
1515- <exclude name="svg/test-svg.o"/>
1516- <exclude name="util/test-util.o"/>
1517- <exclude name="xml/test-xml.o"/>
1518- </fileset>
1519- <libs>
1520- -L${devlibs}/lib
1521- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
1522- ${pcl.pangoft2} ${pcl.gthread-2.0}
1523- ${pcl.gtkmm-3.0} ${pcl.gdkmm-3.0}
1524- ${pcl.gtk+-3.0} ${pcl.gdk-3.0}
1525- ${pcl.gdl-3.0}
1526- ${devlibs}/bin/libxml2-2.dll
1527- ${devlibs}/bin/libxslt-1.dll
1528- ${devlibs}/bin/libexslt-0.dll
1529- ${pcl.cairo} ${pcl.cairomm-1.0}
1530- ${pcl.librevenge-stream-0.0} ${pcl.libwpg-0.3} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
1531- ${pcl.glibmm-2.4}
1532-
1533-
1534- ${pcl.pangomm-1.4}
1535- ${pcl.cairomm-1.0}
1536- -liconv
1537- ${pcl.Magick++}
1538- ${pcl.fontconfig} ${pcl.freetype2}
1539- ${pcl.lcms2}
1540- ${pcl.gsl}
1541- -lpng -ljpeg -ltiff -lexif -lpopt -lz
1542- -lgc -lpotrace
1543- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
1544- -lgomp -lwinpthread
1545- -laspell
1546- -lmscms <!-- required for color profiles -->
1547- </libs>
1548- </link>
1549- </target>
1550-
1551-
1552-
1553- <!--
1554- ########################################################################
1555- ## T A R G E T : L I N K C X X T E S T S
1556- ########################################################################
1557- -->
1558- <target name="linkcxxtests" depends="compile"
1559- description="link objects and library to create executable">
1560-
1561- <link command="${arch_link}" out="${build}/cxxtests.exe"
1562- strip="true" symfile="${build}/cxxtests.dbg"
1563- stripcommand="${archutil}strip"
1564- objcopycommand="${archutil}objcopy">
1565- <flags>
1566- -mconsole
1567- -mthreads
1568- </flags>
1569- <fileset dir="${build}/obj">
1570- <!-- exclude the other programs -->
1571- <exclude name="main.o"/>
1572- <exclude name="winmain.o"/>
1573- <exclude name="winconsole.o"/>
1574- <exclude name="inkres.o"/>
1575- <exclude name="inkviewres.o"/>
1576- <exclude name="inkview.o"/>
1577- </fileset>
1578- <libs>
1579- -L${devlibs}/lib
1580- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
1581- ${pcl.pangoft2} ${pcl.gthread-2.0}
1582- ${pcl.gtkmm-3.0} ${pcl.gdkmm-3.0}
1583- ${pcl.gtk+-3.0} ${pcl.gdk-3.0}
1584- ${pcl.gdl-3.0}
1585- ${devlibs}/bin/libxml2-2.dll
1586- ${devlibs}/bin/libxslt-1.dll
1587- ${devlibs}/bin/libexslt-0.dll
1588- ${pcl.cairo} ${pcl.cairomm-1.0}
1589- ${pcl.librevenge-stream-0.0} ${pcl.libwpg-0.3} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
1590- ${pcl.glibmm-2.4}
1591-
1592-
1593- ${pcl.pangomm-1.4}
1594- ${pcl.cairomm-1.0}
1595- -liconv
1596- ${pcl.Magick++}
1597- ${pcl.fontconfig} ${pcl.freetype2}
1598- ${pcl.lcms2}
1599- ${pcl.gsl}
1600- -lpng -ljpeg -ltiff -lexif -lpopt -lz
1601- -lgc -lpotrace
1602- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
1603- -lgomp -lwinpthread
1604- -laspell
1605- -lmscms <!-- required for color profiles -->
1606- </libs>
1607- </link>
1608- </target>
1609-
1610-
1611- <!--
1612- ########################################################################
1613- ## T A R G E T : D I S T B A S E
1614- ########################################################################
1615- -->
1616- <target name="distbase" depends="i18n"
1617- description="generate the distribution directory with all needed files">
1618-
1619- <!-- Create the distribution directory -->
1620- <copy todir="${dist}" file="AUTHORS"/>
1621- <copy todir="${dist}" file="COPYING"/>
1622- <copy todir="${dist}" file="GPL2.txt"/>
1623- <copy todir="${dist}" file="GPL3.txt"/>
1624- <copy todir="${dist}" file="LGPL2.1.txt"/>
1625- <copy todir="${dist}" file="NEWS"/>
1626- <copy todir="${dist}" file="README"/>
1627- <copy todir="${dist}" file="TRANSLATORS"/>
1628- <copy todir="${dist}" file="${devlibs}/bin/libatkmm-1.6-1.dll"/>
1629- <copy todir="${dist}" file="${devlibs}/bin/libglibmm-2.4-1.dll"/>
1630- <copy todir="${dist}" file="${devlibs}/bin/libgiomm-2.4-1.dll"/>
1631- <copy todir="${dist}" file="${devlibs}/bin/libgtkmm-3.0-1.dll"/>
1632- <copy todir="${dist}" file="${devlibs}/bin/libgdkmm-3.0-1.dll"/>
1633- <copy todir="${dist}" file="${devlibs}/bin/libgdl-3-5.dll"/>
1634- <copy todir="${dist}" file="${devlibs}/bin/libpangomm-1.4-1.dll"/>
1635- <copy todir="${dist}" file="${devlibs}/bin/libcairomm-1.0-1.dll"/>
1636- <copy todir="${dist}" file="${devlibs}/bin/libcairo-gobject-2.dll"/>
1637- <copy todir="${dist}" file="${devlibs}/bin/libsigc-2.0-0.dll"/>
1638- <copy todir="${dist}" file="${devlibs}/bin/libfreetype-6.dll"/>
1639-
1640- <copy todir="${dist}" file="${devlibs}/bin/libffi-6.dll"/>
1641- <copy todir="${dist}" file="${devlibs}/bin/libgc-1.dll"/>
1642- <copy todir="${dist}" file="${devlibs}/bin/libgsl-19.dll"/>
1643- <copy todir="${dist}" file="${devlibs}/bin/libgslcblas-0.dll"/>
1644- <copy todir="${dist}" file="${devlibs}/bin/libharfbuzz-0.dll"/>
1645- <copy todir="${dist}" file="${devlibs}/bin/liblzma-5.dll"/>
1646-
1647- <copy todir="${dist}" file="${devlibs}/bin/libaspell-15.dll"/>
1648- <copy todir="${dist}" file="${devlibs}/bin/libatk-1.0-0.dll"/>
1649- <copy todir="${dist}" file="${devlibs}/bin/libgdk-3-0.dll"/>
1650- <copy todir="${dist}" file="${devlibs}/bin/libgdk_pixbuf-2.0-0.dll"/>
1651- <copy todir="${dist}" file="${devlibs}/bin/libglib-2.0-0.dll"/>
1652- <copy todir="${dist}" file="${devlibs}/bin/libgmodule-2.0-0.dll"/>
1653- <copy todir="${dist}" file="${devlibs}/bin/libgobject-2.0-0.dll"/>
1654- <copy todir="${dist}" file="${devlibs}/bin/libgtk-3-0.dll"/>
1655- <copy todir="${dist}" file="${devlibs}/bin/libgthread-2.0-0.dll"/>
1656- <copy todir="${dist}" file="${devlibs}/bin/libgio-2.0-0.dll"/>
1657- <copy todir="${dist}" file="${devlibs}/bin/libcairo-2.dll"/>
1658- <copy todir="${dist}" file="${devlibs}/bin/libpixman-1-0.dll"/>
1659- <copy todir="${dist}" file="${devlibs}/bin/libpoppler-58.dll"/>
1660- <copy todir="${dist}" file="${devlibs}/bin/libpoppler-glib-8.dll"/>
1661- <copy todir="${dist}" file="${devlibs}/bin/libpangocairo-1.0-0.dll"/>
1662- <copy todir="${dist}" file="${devlibs}/bin/libpango-1.0-0.dll"/>
1663- <copy todir="${dist}" file="${devlibs}/bin/libpangoft2-1.0-0.dll"/>
1664- <copy todir="${dist}" file="${devlibs}/bin/libpangowin32-1.0-0.dll"/>
1665- <copy todir="${dist}" file="${devlibs}/bin/libfontconfig-1.dll"/>
1666- <copy todir="${dist}" file="${devlibs}/bin/libxml2-2.dll"/>
1667- <copy todir="${dist}" file="${devlibs}/bin/libxslt-1.dll"/>
1668- <copy todir="${dist}" file="${devlibs}/bin/libexslt-0.dll"/>
1669- <copy todir="${dist}" file="${devlibs}/bin/libexpat-1.dll"/>
1670- <copy todir="${dist}" file="${devlibs}/bin/libepoxy-0.dll"/>
1671-
1672- <copy todir="${dist}" file="${devlibs}/bin/librevenge-0.0.dll"/>
1673- <copy todir="${dist}" file="${devlibs}/bin/librevenge-stream-0.0.dll"/>
1674- <copy todir="${dist}" file="${devlibs}/bin/libwpg-0.3.dll"/>
1675- <copy todir="${dist}" file="${devlibs}/bin/libwpd-0.10.dll"/>
1676- <copy todir="${dist}" file="${devlibs}/bin/libvisio-0.1.dll"/>
1677- <copy todir="${dist}" file="${devlibs}/bin/libcdr-0.1.dll"/>
1678- <copy todir="${dist}" file="${devlibs}/bin/icuin56.dll"/>
1679- <copy todir="${dist}" file="${devlibs}/bin/icudt56.dll"/>
1680- <copy todir="${dist}" file="${devlibs}/bin/icuuc56.dll"/>
1681-
1682- <copy todir="${dist}" file="${devlibs}/bin/libjpeg-9.dll"/>
1683- <copy todir="${dist}" file="${devlibs}/bin/libpng16-16.dll"/>
1684- <copy todir="${dist}" file="${devlibs}/bin/libtiff-5.dll"/>
1685- <copy todir="${dist}" file="${devlibs}/bin/libexif-12.dll"/>
1686-<!--
1687- <copy todir="${dist}" file="${devlibs}/bin/libopenjpeg-2.dll"/>
1688- -->
1689- <!-- <copy todir="${dist}" file="${devlibs}/bin/msvcr70.dll"/> -->
1690- <!-- <copy todir="${dist}" file="${devlibs}/bin/msvcr71.dll"/> -->
1691- <copy todir="${dist}" file="${devlibs}/bin/libcurl-4.dll"/>
1692- <copy todir="${dist}" file="${devlibs}/bin/zlib1.dll"/>
1693- <copy todir="${dist}" file="${devlibs}/bin/bz2-1.dll"/>
1694- <copy todir="${dist}" file="${devlibs}/bin/libiconv-2.dll"/>
1695- <copy todir="${dist}" file="${devlibs}/bin/libpopt-0.dll"/>
1696- <copy todir="${dist}" file="${devlibs}/bin/liblcms2-2.dll"/>
1697- <copy todir="${dist}" file="${devlibs}/bin/libMagick++-6.Q16-6.dll"/>
1698- <copy todir="${dist}" file="${devlibs}/bin/libMagickCore-6.Q16-2.dll"/>
1699- <copy todir="${dist}" file="${devlibs}/bin/libMagickWand-6.Q16-2.dll"/>
1700- <copy todir="${dist}" file="${devlibs}/bin/libintl-8.dll"/>
1701- <copy todir="${dist}" file="${devlibs}/bin/libpotrace-0.dll"/>
1702- <!-- MINGW support DLLs -->
1703- <copy todir="${dist}" file="${mingw_bin}/libstdc++-6.dll"/>
1704- <copy todir="${dist}" file="${mingw_bin}/libwinpthread-1.dll"/>
1705- <copy todir="${dist}" file="${mingw_bin}/libgcc_s_seh-1.dll"/>
1706- <!-- MINGW support DLLs needed for openmp support -->
1707- <copy todir="${dist}" file="${mingw_bin}/libgomp-1.dll"/>
1708-
1709- <!-- MSGFMT files -->
1710- <copy todir="${dist}">
1711- <fileset dir="${build}/locale">
1712- <exclude name=".*\.am"/>
1713- </fileset>
1714- </copy>
1715-
1716- <mkdir dir="${dist}/data"/>
1717- <mkdir dir="${dist}/locale"/>
1718- <mkdir dir="${dist}/modules"/>
1719- <mkdir dir="${dist}/plugins"/>
1720- <mkdir dir="${dist}/share/glib-2.0"/>
1721-
1722- <!-- GTK -->
1723- <copy todir="${dist}">
1724- <fileset dir="${devlibs}/etc">
1725- <exclude name="gtk-2.0/.*"/>
1726- </fileset>
1727- </copy>
1728- <copy todir="${dist}/share/icons"> <fileset dir="${devlibs}/share/icons/Adwaita" /> </copy>
1729-
1730- <copy todir="${dist}">
1731- <fileset dir="share">
1732- <exclude name="\.am$"/>
1733- <exclude name="\.in$"/>
1734- <exclude name="\.sh$"/>
1735- <exclude name="CMakeLists.txt"/>
1736- <exclude name="i18n.py"/>
1737- <exclude name="icons/hicolor/index.theme"/>
1738- </fileset>
1739- </copy>
1740- <delete dir="${dist}/share/icons/hicolor"/> <!-- Quick fix for the following problem: having the hicolor folder there with empty index file bugs booting inkscape... -->
1741- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/themes"/> </copy>
1742- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/icons"/> </copy>
1743- <copy todir="${dist}/share/glib-2.0"> <fileset dir="${devlibs}/share/glib-2.0/schemas"/> </copy>
1744- <copy todir="${dist}/lib">
1745- <fileset dir="${devlibs}/lib/gdk-pixbuf-2.0">
1746- <exclude name="\.la$"/>
1747- <exclude name="\.a$"/>
1748- </fileset>
1749- </copy>
1750-
1751- <!-- Poppler data files -->
1752- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/poppler"/> </copy>
1753-
1754- <!-- Locales for libraries (few should be needed) -->
1755- <copy todir="${dist}/share">
1756- <fileset dir="${devlibs}/share/locale">
1757- <include name="gtk30.mo"/>
1758- </fileset>
1759- </copy>
1760-
1761- <!-- Aspell dictionaries -->
1762- <copy todir="${dist}/lib"> <fileset dir="${devlibs}/lib/aspell-0.60"/> </copy>
1763-
1764- <!-- Necessary to run extensions on windows if it is not in the path -->
1765- <copy todir="${dist}" file="${devlibs}/bin/gspawn-win64-helper.exe"/>
1766- <copy todir="${dist}" file="${devlibs}/bin/gspawn-win64-helper-console.exe"/>
1767-
1768- <!-- PERL -->
1769- <copy todir="${dist}" file="${devlibs}/perl/bin/perl58.dll"/>
1770-
1771- <!-- PYTHON -->
1772- <copy todir="${dist}/python" file="${devlibs}/python/python.exe" />
1773- <copy todir="${dist}/python" file="${devlibs}/python/pythonw.exe"/>
1774- <copy todir="${dist}/python" file="${devlibs}/python/python27.dll"/>
1775- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/Lib"/> </copy>
1776- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/DLLs"/> </copy>
1777- <!-- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/Scripts"/> </copy> -->
1778-
1779- <!--<copy file="${devlibs}/share/themes/MS-Windows/gtk-2.0/gtkrc" todir="${dist}/etc/gtk-2.0"/>-->
1780- <makefile file="${dist}/etc/gtk-3.0/settings.ini">
1781-[Settings]
1782-#gtk-font-name = Tahoma 8
1783-#gtk-theme-name = Adwaita
1784-gtk-menu-images = true
1785- </makefile>
1786-
1787- </target>
1788-
1789-
1790- <!--
1791- ########################################################################
1792- ## T A R G E T : D I S T - I N K S C A P E
1793- ########################################################################
1794- -->
1795- <target name="dist-inkscape" depends="link,linkconsole,distbase"
1796- description="copy inkscape to the distribution directory">
1797-
1798- <!-- Create the distribution directory -->
1799- <copy todir="${dist}" file="${build}/inkscape.exe"/>
1800- <copy todir="${dist}" file="${build}/inkscape.dbg"/>
1801- <copy file="${build}/inkscape-console.exe" tofile="${dist}/inkscape.com"/>
1802- </target>
1803-
1804-
1805- <!--
1806- ########################################################################
1807- ## T A R G E T : D I S T - I N K V I E W
1808- ########################################################################
1809- -->
1810- <target name="dist-inkview" depends="linkinkview,distbase"
1811- description="copy inkview to the distribution directory">
1812-
1813- <!-- Create the distribution directory -->
1814- <copy todir="${dist}" file="${build}/inkview.exe"/>
1815- <copy todir="${dist}" file="${build}/inkview.dbg"/>
1816- </target>
1817-
1818-
1819- <!--
1820- ########################################################################
1821- ## T A R G E T : C H E C K
1822- ########################################################################
1823- -->
1824- <target name="check" depends="linkcxxtests,distbase"
1825- description="perform unit tests">
1826-
1827- <cxxtestrun command="${build}/cxxtests" workingdir="${dist}" />
1828- </target>
1829-
1830- <!--
1831- ########################################################################
1832- ## T A R G E T : D I S T - A L L
1833- ########################################################################
1834- -->
1835- <target name="dist-all" depends="dist-inkscape,dist-inkview"
1836- description="generate the distribution, along with inkview" >
1837- </target>
1838-
1839-
1840-
1841-
1842- <!--
1843- ########################################################################
1844- ## T A R G E T : D I S T - A L L - C H E C K
1845- ########################################################################
1846- -->
1847- <target name="dist-all-check" depends="dist-all,check"
1848- description="generate the distribution, along with inkview and run cxxtests" >
1849- </target>
1850-
1851-
1852-
1853-
1854-
1855- <!--
1856- ########################################################################
1857- ## T A R G E T : C L E A N
1858- ########################################################################
1859- -->
1860- <target name="clean"
1861- description="clean up. deleting build and distro dirs" >
1862-
1863- <delete dir="${build}"/>
1864- <delete dir="${dist}"/>
1865- <delete file="build.dep"/>
1866- <delete file="config.h"/>
1867- <delete file="${src}/inkscape-version.cpp"/>
1868- <delete file="${src}/test-main.cpp"/>
1869- <delete file="${src}/test-src.cpp"/>
1870- <delete file="${src}/display/test-display.cpp"/>
1871- <delete file="${src}/helper/test-helper.cpp"/>
1872- <delete file="${src}/svg/test-svg.cpp"/>
1873- <delete file="${src}/util/test-util.cpp"/>
1874- <delete file="${src}/xml/test-xml.cpp"/>
1875-
1876- </target>
1877-
1878-
1879-
1880-</project>
1881-<!--
1882-########################################################################
1883-## E N D
1884-########################################################################
1885--->
1886-
1887
1888=== removed file 'build-x64.xml'
1889--- build-x64.xml 2016-05-25 08:53:01 +0000
1890+++ build-x64.xml 1970-01-01 00:00:00 +0000
1891@@ -1,929 +0,0 @@
1892-<!--
1893- * Inkscape build file.
1894- *
1895- * See buildtool.cpp for use.
1896- *
1897- * Authors:
1898- * Bob Jamison
1899- * Others
1900- *
1901- * Copyright (C) 2006-2008 Inkscape.org
1902- *
1903- * This library is free software; you can redistribute it and/or
1904- * modify it under the terms of the GNU Lesser General Public
1905- * License as published by the Free Software Foundation; either
1906- * version 2.1 of the License, or (at your option) any later version.
1907- *
1908- * This library is distributed in the hope that it will be useful,
1909- * but WITHOUT ANY WARRANTY; without even the implied warranty of
1910- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
1911- * Lesser General Public License for more details.
1912- *
1913- * You should have received a copy of the GNU Lesser General Public
1914- * License along with this library; if not, write to the Free Software
1915- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1916--->
1917-
1918-
1919-
1920-<!--
1921-########################################################################
1922-## P R O J E C T : I N K S C A P E
1923-########################################################################
1924--->
1925-<project name="Inkscape" default="dist-all" basedir=".">
1926- <description>
1927- Build file for the Inkscape SVG editor. This file
1928- was written for GTK-2.10 on Win32, but it should work
1929- well for other types of builds with only minor adjustments.
1930- Note that the default target is 'dist-all'. You can execute other
1931- targets instead, by "btool {target}", like "btool compile", if
1932- you want to save time, or "dist-inkscape" if you don't want inkview.
1933- </description>
1934-
1935- <!-- set global properties for this build -->
1936- <property name="version" value="0.92pre1_64bit"/>
1937- <property name="src" location="src"/>
1938- <property name="lib" location="lib"/>
1939- <property name="build" location="build"/>
1940- <property name="dist" location="inkscape"/>
1941-
1942- <!-- Use these settings for the native compiler -->
1943- <!-- -->
1944- <property name="arch" value="x86_64-w64-mingw32-"/>
1945- <property name="arch_cc" value="${arch}gcc"/>
1946- <property name="arch_cxx" value="${arch}g++"/>
1947- <property name="arch_link" value="${arch}g++"/>
1948- <property name="archutil" value=""/>
1949- <property name="devlibs" location="${env.DEVLIBS_PATH}"/>
1950- <property name="mingw" location="${env.MINGW_PATH}"/>
1951- <property name="mingw_bin" location="${env.MINGW_PATH}/bin"/>
1952- <property name="cxxtest" location="cxxtest"/>
1953- <property name="python" location="${devlibs}/python/python.exe"/>
1954- <!-- -->
1955-
1956- <!-- Use these settings for the cross compiler -->
1957- <!--
1958- <property name="arch" value="i686-pc-mingw32-"/>
1959- <property name="arch_cc" value="${arch}gcc"/>
1960- <property name="arch_cxx" value="${arch}g++"/>
1961- <property name="arch_link" value="${arch}g++"/>
1962- <property name="archutil" value="${arch}"/>
1963- <property name="devlibs" location="/target"/>
1964- <property name="mingw_bin" location="${env.MINGW_BIN}"/>
1965- <property name="cxxtest" location="cxxtest"/>
1966- <property name="python" location="python"/>
1967- -->
1968-
1969- <!-- Extra properties -->
1970- <property name="refresh" value="false"/>
1971-
1972- <!--
1973- This is for package-config. With these two settings, pkg-config
1974- queries can be as simple as ${pcc.packageName} for cflags, and
1975- ${pcl.packageName} for libs. Dependencies are calculated automatically.
1976- -->
1977- <property name="pkg-config-path" location="${devlibs}/lib/pkgconfig"/>
1978- <property name="pkg-config-prefix" location="${devlibs}"/>
1979-
1980-
1981- <!--
1982- ########################################################################
1983- ## T A R G E T : I N I T
1984- ########################################################################
1985- -->
1986- <target name="init"
1987- description=
1988- "Do all preparatory tasks, like make directories and copy files">
1989-
1990-
1991- <mkdir dir="${build}"/>
1992- <mkdir dir="${dist}"/>
1993-
1994- <copy file="${src}/helper/sp-marshal.h.mingw"
1995- tofile="${src}/helper/sp-marshal.h"/>
1996- <copy file="${src}/helper/sp-marshal.cpp.mingw"
1997- tofile="${src}/helper/sp-marshal.cpp"/>
1998-
1999- <!--makefile file="${src}/inkscape-version.cpp">
2000- namespace Inkscape {
2001- char const *version_string = "${version}";
2002- }
2003- </makefile-->
2004- <makefile file="${src}/inkscape-version.cpp" force="true">
2005- namespace Inkscape {
2006- char const *version_string = "${version} ${bzr.revision}";
2007- }
2008- </makefile>
2009- <makefile file="config.h">
2010- #ifndef _CONFIG_H_
2011- #define _CONFIG_H_
2012-
2013- #ifndef WIN32
2014- #define WIN32
2015- #endif
2016-
2017- /*######################################
2018- ## This is for require-config.h, whose
2019- ## purpose I cannot fathom.
2020- ######################################*/
2021-
2022- #define PACKAGE_TARNAME
2023-
2024- /*######################################
2025- #### RESOURCE DIRECTORIES
2026- ######################################*/
2027-
2028- #define INKSCAPE_DATADIR "."
2029- #define PACKAGE_LOCALE_DIR "locale"
2030-
2031-
2032- /*######################################
2033- #### OTHER DEFINITIONS
2034- ######################################*/
2035-
2036- #define GETTEXT_PACKAGE "inkscape"
2037-
2038- #define PACKAGE_STRING VERSION
2039-
2040- #define HAVE_GETOPT_H 1
2041- #define HAVE_STRING_H 1
2042- #define HAVE_LIBINTL_H 1
2043- #define HAVE_MALLOC_H 1
2044- #define HAVE_STDLIB_H 1
2045- #define HAVE_SYS_STAT_H 1
2046- #define HAVE_INTTYPES_H 1
2047- #define HAVE_OPENMP 1
2048- #define HAVE_TR1_UNORDERED_SET 1
2049- #define HAVE_STDINT_H 1
2050-
2051- #define HAVE_LIBLCMS2 1
2052-
2053- #define WITH_GTKMM_2_24 1
2054-
2055- #define ENABLE_NLS 1
2056- #define HAVE_BIND_TEXTDOMAIN_CODESET 1
2057-
2058- /* keep binreloc off */
2059- #define BR_PTHREADS 0
2060- #undef ENABLE_BINRELOC
2061-
2062- /* CairoPDF options */
2063- #define HAVE_CAIRO_PDF 1
2064- #define PANGO_ENABLE_ENGINE 1
2065- #define RENDER_WITH_PANGO_CAIRO 1
2066-
2067- #define HAVE_GTK_WINDOW_FULLSCREEN 1
2068-
2069- /* internal interpreter */
2070- #define WITH_PYTHON 1
2071-
2072- /* use poppler for pdf import? */
2073- #define HAVE_POPPLER 1
2074- #define HAVE_POPPLER_GLIB 1
2075- #define HAVE_POPPLER_CAIRO 1
2076-
2077- /* do we want bitmap manipulation? */
2078- #define WITH_IMAGE_MAGICK 1
2079-
2080- /* Exif and JPEG support for image resolution import */
2081- #define HAVE_EXIF 1
2082- #define HAVE_JPEG 1
2083-
2084- /* WordPerfect import filter */
2085- #define WITH_LIBWPG 1
2086- #define WITH_LIBWPG03 1
2087-
2088- /* Visio import filter */
2089- #define WITH_LIBVISIO 1
2090- #define WITH_LIBVISIO01 1
2091-
2092- /* Corel Draw import filter */
2093- #define WITH_LIBCDR 1
2094- #define WITH_LIBCDR01 1
2095-
2096- /* Do we support SVG Fonts? */
2097- #define ENABLE_SVG_FONTS 1
2098-
2099- /* Do we want experimental, unsupported, unguaranteed, etc., LivePathEffects enabled? */
2100- //#define LPE_ENABLE_TEST_EFFECTS 1
2101-
2102- /* Do we want experimental, unsupported, unguaranteed, etc., SVG2 features enabled? */
2103- //#define WITH_SVG2 1
2104- //#define WITH_CSSCOMPOSITE 1
2105- //#define WITH_CSSBLEND 1
2106- //#define WITH_MESH 1
2107-
2108- #define HAVE_ASPELL 1
2109-
2110- #define HAVE_POTRACE 1
2111-
2112- #endif /* _CONFIG_H_ */
2113- </makefile>
2114- </target>
2115-
2116- <!--
2117- ########################################################################
2118- ## T A R G E T : C X X T E S T
2119- ########################################################################
2120- -->
2121- <target name="cxxtest" depends="init"
2122- description="generate test files" >
2123-
2124- <!-- Generate CxxTest files -->
2125- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
2126- out="${src}/test-src.cpp">
2127- <fileset dir="${src}">
2128- <include name="attributes-test.h"/>
2129- <include name="color-profile-test.h"/>
2130- <include name="dir-util-test.h"/>
2131- <include name="extract-uri-test.h"/>
2132- <include name="marker-test.h"/>
2133- <include name="mod360-test.h"/>
2134- <include name="object-test.h"/>
2135- <include name="preferences-test.h"/>
2136- <include name="round-test.h"/>
2137- <include name="sp-gradient-test.h"/>
2138- <include name="sp-style-elem-test.h"/>
2139- <include name="syle-test.h"/>
2140- <include name="test-helpers.h"/>
2141- <include name="verbs-test.h"/>
2142- </fileset>
2143- </cxxtestpart>
2144- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
2145- out="${src}/display/test-display.cpp">
2146- <fileset dir="${src}/display">
2147- <include name="curve-test.h"/>
2148- </fileset>
2149- </cxxtestpart>
2150- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
2151- out="${src}/helper/test-helper.cpp">
2152- <fileset dir="${src}/helper">
2153- <include name="units-test.h"/>
2154- </fileset>
2155- </cxxtestpart>
2156- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
2157- out="${src}/svg/test-svg.cpp">
2158- <fileset dir="${src}/svg">
2159- <!--<include name="css-ostringstream-test.h"/>-->
2160- <include name="stringstream-test.h"/>
2161- <include name="svg-affine-test.h"/>
2162- <include name="svg-color-test.h"/>
2163- <include name="svg-length-test.h"/>
2164- <include name="svg-path-geom-test.h"/>
2165- </fileset>
2166- </cxxtestpart>
2167- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
2168- out="${src}/util/test-util.cpp">
2169- <fileset dir="${src}/util">
2170- <include name="list-container-test.h"/>
2171- </fileset>
2172- </cxxtestpart>
2173- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
2174- out="${src}/xml/test-xml.cpp">
2175- <fileset dir="${src}/xml">
2176- <include name="repr-action-test.h"/>
2177- <include name="quote-test.h"/>
2178- </fileset>
2179- </cxxtestpart>
2180- <cxxtestroot command="${python} ${cxxtest}/cxxtestgen.py"
2181- out="${src}/test-main.cpp"
2182- template="${src}/cxxtest-template.tpl">
2183- <fileset dir="${src}">
2184- <include name="MultiPrinter.h"/>
2185- <include name="PylogFormatter.h"/>
2186- <include name="TRPIFormatter.h"/>
2187- </fileset>
2188- </cxxtestroot>
2189- </target>
2190-
2191-
2192- <!--
2193- ########################################################################
2194- ## T A R G E T : C O M P I L E
2195- ########################################################################
2196- -->
2197- <target name="compile" depends="cxxtest"
2198- description="compile the source to .o" >
2199-
2200- <!-- Compile from source to build -->
2201- <cc cc="${arch_cc}" cxx="${arch_cxx}"
2202- destdir="${build}/obj"
2203- continueOnError="true"
2204- refreshCache="${refresh}">
2205- <fileset dir="${src}">
2206- <!-- THINGS TO EXCLUDE -->
2207- <exclude name="ast/.*"/>
2208- <exclude name="bonobo/.*"/>
2209- <exclude name="deptool.cpp"/>
2210- <exclude name="cxxtests.cpp"/>
2211- <!--<exclude name="test-main.cpp"/>-->
2212- <!--<exclude name="test-src.cpp"/>-->
2213- <exclude name="display/test-display.cpp"/>
2214- <exclude name="display/testnr.cpp"/>
2215- <exclude name="extension/api.cpp"/>
2216- <exclude name="extension/dbus/.*"/>
2217- <exclude name="extension/dxf2svg/.*"/>
2218- <exclude name="extension/implementation/plugin.cpp"/>
2219- <exclude name="extension/plugins/.*"/>
2220- <exclude name="extract-uri-test.cpp"/>
2221- <exclude name="helper/units-test.cpp"/>
2222- <!-- exclude name="inkview.cpp"/-->
2223- <exclude name="livarot/Path-test.cpp"/>
2224- <exclude name="mod360-test.cpp"/>
2225- <exclude name="trace/potrace/potest.cpp"/>
2226- <exclude name="round-test.cpp"/>
2227- <exclude name="sp-gradient-test.cpp"/>
2228- <exclude name="style-test.cpp"/>
2229- <exclude name="svg/ftos.cpp"/>
2230- <!--<exclude name="svg/test-svg.cpp"/>-->
2231- <exclude name="svg/test-svg-main.cpp"/>
2232- <exclude name="util/list-container-test.cpp"/>
2233- <exclude name="widgets/test-widgets.cpp"/>
2234- <exclude name="widgets/image-menu-item.c"/>
2235- <exclude name="xml/quote-test.cpp"/>
2236- <exclude name="xml/repr-action-test.cpp"/>
2237- <exclude name="xml/test-xml.cpp"/>
2238- <!--<exclude name="xml/test-xml-main.cpp"/>-->
2239- <exclude name="io/streamtest.cpp"/>
2240- <!--OVERLAP-->
2241- <exclude name="removeoverlap/placement_SolveVPSC.cpp"/>
2242- <exclude name="removeoverlap/placement_SolveVPSC.h"/>
2243- <exclude name="removeoverlap/test.cpp"/>
2244- <exclude name="removeoverlap/remove_rectangle_overlap-test.cpp"/>
2245- <exclude name="removeoverlap/remove_rectangle_overlap-test.h"/>
2246- </fileset>
2247- <excludeinc dir="${src}">
2248- <file name="extension/param"/>
2249- </excludeinc>
2250- <flags>
2251- -Wall -Wformat -Werror=format-security -Wextra -Wpointer-arith -Wcast-align -Wsign-compare -Wswitch
2252- -Werror=return-type
2253- <!-- -Werror -->
2254- <!-- A list of warnings that should not error *yet*, any help is welcome in fixing the code generating these warnings! -->
2255- <!-- libcroco is using guchar where it should use gchar, so we need: --> -Wno-error=pointer-sign
2256- -Wno-error=unused-parameter -Wno-error=unused-but-set-variable -Wno-error=strict-overflow -Wno-error=write-strings
2257- <!-- Format warnings are obviously bad errors, but with the current old compiler on Windows (gcc 4.6.) we run into a problem with long long ints...
2258- The errors can be restored by removing these flags after updating to a newer compiler (soon after 0.91 release hopefully) -->
2259- -Wno-error=format -Wno-error=format-extra-args
2260- -Wno-unused-local-typedefs <!-- triggers ton of warnings in (too old?) Boost with newer gcc -->
2261- -O2
2262- -mms-bitfields
2263- -fopenmp
2264- </flags>
2265- <cxxflags>
2266- -std=gnu++11 -DCPP11
2267- -Woverloaded-virtual
2268- <!-- -Wno-unused-local-typedefs -->
2269- -Wno-deprecated-declarations <!-- silcence warnings about usage of auto_ptr -->
2270- </cxxflags>
2271- <defines>
2272- -DVERSION=\"${version}\"
2273- -DHAVE_CONFIG_H
2274- -D_INTL_REDIRECT_INLINE
2275- -DHAVE_SSL
2276- -DRELAYTOOL_SSL="static const int libssl_is_present=1; static int __attribute__((unused)) libssl_symbol_is_present(char *s){ return 1; }" <!-- inkboard -->
2277- -DPOPPLER_NEW_GFXFONT <!-- poppler changed the api for 0.8.3 -->
2278- -DPOPPLER_NEW_GFXPATCH <!-- GfxPatch no longer uses GfxColor in >= 0.15.1 -->
2279- -DPOPPLER_NEW_ERRORAPI <!-- poppler changed the error api for 0.20.0 -->
2280- -DPOPPLER_EVEN_NEWER_COLOR_SPACE_API <!-- poppler changed the colorspace api for 0.26.0 -->
2281- -DPOPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API <!-- poppler changed the colorspace api for 0.29.0 -->
2282- <!-- GTK+3 migration -->
2283- -DGLIBMM_DISABLE_DEPRECATED
2284- -DG_DISABLE_DEPRECATED
2285- -DGTK_DISABLE_SINGLE_INCLUDES
2286- <!-- -DGTKMM_DISABLE_DEPRECATED -->
2287- <!-- -DGTK_DISABLE_DEPRECATED -->
2288- -DGDKMM_DISABLE_DEPRECATED
2289- -DGSEAL_ENABLE
2290- </defines>
2291- <includes>
2292- -I${devlibs}/include
2293- <!-- GTK / GTKMM -->
2294- ${pcc.gtkmm-2.4}
2295- ${pcc.glibmm-2.4}
2296- ${pcc.gtk+-2.0}
2297- ${pcc.gdkmm-2.4}
2298- ${pcc.pangomm-1.4}
2299- ${pcc.cairomm-1.0}
2300- ${pcc.gmodule-2.0}
2301- <!-- OTHER -->
2302- ${pcc.Magick++}
2303- ${pcc.libxml-2.0}
2304- ${pcc.freetype2}
2305- ${pcc.cairo}
2306- ${pcc.poppler}
2307- -I${devlibs}/include/gc
2308- -I${devlibs}/include/potracelib
2309- ${pcc.libwpg-0.3} ${pcc.libvisio-0.1} ${pcc.libcdr-0.1}
2310- -I${cxxtest}
2311- <!-- PERL -->
2312- <!-- -Wno-comment -I${devlibs}/perl/lib/CORE -->
2313- <!-- PYTHON -->
2314- -I${devlibs}/python/include
2315- </includes>
2316- </cc>
2317- </target>
2318-
2319-
2320-
2321- <!--
2322- ########################################################################
2323- ## T A R G E T : I 1 8 N
2324- ########################################################################
2325- -->
2326- <target name="i18n" depends="compile"
2327- description="compile gettext .po files to .mo">
2328-
2329- <msgfmt todir="${build}/locale" owndir="true"
2330- out="LC_MESSAGES/inkscape.mo">
2331- <fileset dir="po">
2332- </fileset>
2333- </msgfmt>
2334- </target>
2335-
2336-
2337-
2338-
2339-
2340- <!--
2341- ########################################################################
2342- ## T A R G E T : L I N K
2343- ########################################################################
2344- -->
2345- <target name="link" depends="compile"
2346- description="link objects and library to create executable">
2347-
2348- <rc command="${archutil}windres"
2349- file="${src}/inkscape-x64.rc"
2350- out="${build}/obj/inkres.o">
2351- <flags>
2352- --include-dir=${src}
2353- </flags>
2354- </rc>
2355- <link command="${arch_link}" out="${build}/inkscape.exe"
2356- strip="true" symfile="${build}/inkscape.dbg"
2357- stripcommand="${archutil}strip"
2358- objcopycommand="${archutil}objcopy">
2359- <flags>
2360- -mwindows -m64
2361- -mthreads
2362- </flags>
2363- <fileset dir="${build}/obj">
2364- <exclude name="winconsole.o"/>
2365- <exclude name="inkview.o"/>
2366- <exclude name="inkviewres.o"/>
2367- <!-- CxxTest -->
2368- <exclude name="test-main.o"/>
2369- <exclude name="test-src.o"/>
2370- <exclude name="display/test-display.o"/>
2371- <exclude name="helper/test-helper.o"/>
2372- <exclude name="svg/test-svg.o"/>
2373- <exclude name="util/test-util.o"/>
2374- <exclude name="xml/test-xml.o"/>
2375- </fileset>
2376- <!-- WARNING: If you change these libraries, don't forget to change them for inkview and cxxtests below as well! -->
2377- <libs>
2378- -L${devlibs}/lib
2379- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
2380- ${pcl.gtkmm-2.4} ${pcl.pangoft2} ${pcl.gthread-2.0}
2381- ${devlibs}/bin/libxml2-2.dll
2382- ${devlibs}/bin/libxslt-1.dll
2383- ${devlibs}/bin/libexslt-0.dll
2384- ${pcl.cairo} ${pcl.cairomm-1.0}
2385- ${pcl.librevenge-stream-0.0} ${pcl.libwpg-0.3} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
2386- ${pcl.gmodule-2.0}
2387- ${pcl.glibmm-2.4}
2388- ${pcl.gtk+-2.0}
2389- ${pcl.gdkmm-2.4}
2390- ${pcl.pangomm-1.4}
2391- ${pcl.cairomm-1.0}
2392- -liconv
2393- ${pcl.Magick++}
2394- ${pcl.fontconfig} ${pcl.freetype2}
2395- ${pcl.lcms2}
2396- ${pcl.gsl}
2397- -lpng -ljpeg -ltiff -lexif -lpopt -lz
2398- -lgc -lpotrace
2399- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
2400- -lgomp -lwinpthread
2401- -laspell
2402- -lmscms <!-- required for color profiles -->
2403- </libs>
2404- </link>
2405- </target>
2406-
2407-<!--
2408- ########################################################################
2409- ## T A R G E T : L I N K C O N S O L E
2410- ########################################################################
2411- -->
2412- <target name="linkconsole" depends="compile"
2413- description="link console helper">
2414-
2415- <link command="${arch_link}" out="${build}/inkscape-console.exe"
2416- strip="true" stripcommand="${archutil}strip">
2417- <flags>
2418- -mconsole
2419- -mthreads
2420- </flags>
2421- <fileset dir="${build}">
2422- <include name="obj/winconsole.o"/>
2423- </fileset>
2424- <libs></libs>
2425- </link>
2426- </target>
2427-
2428- <!--
2429- ########################################################################
2430- ## T A R G E T : L I N K I N K V I E W
2431- ########################################################################
2432- -->
2433- <target name="linkinkview" depends="compile"
2434- description="link objects and library to create Inkview executable">
2435-
2436- <rc command="${archutil}windres"
2437- file="${src}/inkview-x64.rc"
2438- out="${build}/obj/inkviewres.o">
2439- <flags>
2440- --include-dir=${src}
2441- </flags>
2442- </rc>
2443- <link command="${arch_link}" out="${build}/inkview.exe"
2444- strip="true" symfile="${build}/inkview.dbg"
2445- stripcommand="${archutil}strip"
2446- objcopycommand="${archutil}objcopy">
2447- <flags>
2448- -mwindows -m64
2449- -mthreads
2450- </flags>
2451- <fileset dir="${build}/obj">
2452- <!-- exclude the other programs -->
2453- <exclude name="main.o"/>
2454- <exclude name="winmain.o"/>
2455- <exclude name="winconsole.o"/>
2456- <exclude name="inkres.o"/>
2457- <!-- CxxTest -->
2458- <exclude name="test-main.o"/>
2459- <exclude name="test-src.o"/>
2460- <exclude name="display/test-display.o"/>
2461- <exclude name="helper/test-helper.o"/>
2462- <exclude name="svg/test-svg.o"/>
2463- <exclude name="util/test-util.o"/>
2464- <exclude name="xml/test-xml.o"/>
2465- </fileset>
2466- <libs>
2467- -L${devlibs}/lib
2468- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
2469- ${pcl.gtkmm-2.4} ${pcl.pangoft2} ${pcl.gthread-2.0}
2470- ${devlibs}/bin/libxml2-2.dll
2471- ${devlibs}/bin/libxslt-1.dll
2472- ${devlibs}/bin/libexslt-0.dll
2473- ${pcl.cairo} ${pcl.cairomm-1.0}
2474- ${pcl.librevenge-stream-0.0} ${pcl.libwpg-0.3} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
2475- ${pcl.gmodule-2.0}
2476- ${pcl.glibmm-2.4}
2477- ${pcl.gtk+-2.0}
2478- ${pcl.gdkmm-2.4}
2479- ${pcl.pangomm-1.4}
2480- ${pcl.cairomm-1.0}
2481- -liconv
2482- ${pcl.Magick++}
2483- ${pcl.fontconfig} ${pcl.freetype2}
2484- ${pcl.lcms2}
2485- ${pcl.gsl}
2486- -lpng -ljpeg -ltiff -lexif -lpopt -lz
2487- -lgc -lpotrace
2488- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
2489- -lgomp -lwinpthread
2490- -laspell
2491- -lmscms <!-- required for color profiles -->
2492- </libs>
2493- </link>
2494- </target>
2495-
2496-
2497-
2498- <!--
2499- ########################################################################
2500- ## T A R G E T : L I N K C X X T E S T S
2501- ########################################################################
2502- -->
2503- <target name="linkcxxtests" depends="compile"
2504- description="link objects and library to create executable">
2505-
2506- <link command="${arch_link}" out="${build}/cxxtests.exe"
2507- strip="true" symfile="${build}/cxxtests.dbg"
2508- stripcommand="${archutil}strip"
2509- objcopycommand="${archutil}objcopy">
2510- <flags>
2511- -mconsole
2512- -mthreads
2513- </flags>
2514- <fileset dir="${build}/obj">
2515- <!-- exclude the other programs -->
2516- <exclude name="main.o"/>
2517- <exclude name="winmain.o"/>
2518- <exclude name="winconsole.o"/>
2519- <exclude name="inkres.o"/>
2520- <exclude name="inkviewres.o"/>
2521- <exclude name="inkview.o"/>
2522- </fileset>
2523- <libs>
2524- -L${devlibs}/lib
2525- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
2526- ${pcl.gtkmm-2.4} ${pcl.pangoft2} ${pcl.gthread-2.0}
2527- ${pcl.gmodule-2.0}
2528- ${devlibs}/bin/libxml2-2.dll
2529- ${devlibs}/bin/libxslt-1.dll
2530- ${devlibs}/bin/libexslt-0.dll
2531- ${pcl.cairo} ${pcl.cairomm-1.0}
2532- ${pcl.librevenge-stream-0.0} ${pcl.libwpg-0.3} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
2533- ${pcl.glibmm-2.4}
2534- ${pcl.gtk+-2.0}
2535- ${pcl.gdkmm-2.4}
2536- ${pcl.pangomm-1.4}
2537- ${pcl.cairomm-1.0}
2538- -liconv
2539- ${pcl.Magick++}
2540- ${pcl.fontconfig} ${pcl.freetype2}
2541- ${pcl.lcms2}
2542- ${pcl.gsl}
2543- -lpng -ljpeg -ltiff -lexif -lpopt -lz
2544- -lgc -lpotrace
2545- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
2546- -lgomp -lwinpthread
2547- -laspell
2548- -lmscms <!-- required for color profiles -->
2549- </libs>
2550- </link>
2551- </target>
2552-
2553-
2554- <!--
2555- ########################################################################
2556- ## T A R G E T : D I S T B A S E
2557- ########################################################################
2558- -->
2559- <target name="distbase" depends="i18n"
2560- description="generate the distribution directory with all needed files">
2561-
2562- <!-- Create the distribution directory -->
2563- <copy todir="${dist}" file="AUTHORS"/>
2564- <copy todir="${dist}" file="COPYING"/>
2565- <copy todir="${dist}" file="GPL2.txt"/>
2566- <copy todir="${dist}" file="GPL3.txt"/>
2567- <copy todir="${dist}" file="LGPL2.1.txt"/>
2568- <copy todir="${dist}" file="NEWS"/>
2569- <copy todir="${dist}" file="README"/>
2570- <copy todir="${dist}" file="TRANSLATORS"/>
2571- <copy todir="${dist}" file="${devlibs}/bin/libatkmm-1.6-1.dll"/>
2572- <copy todir="${dist}" file="${devlibs}/bin/libglibmm-2.4-1.dll"/>
2573- <copy todir="${dist}" file="${devlibs}/bin/libgiomm-2.4-1.dll"/>
2574- <copy todir="${dist}" file="${devlibs}/bin/libgtkmm-2.4-1.dll"/>
2575- <copy todir="${dist}" file="${devlibs}/bin/libgdkmm-2.4-1.dll"/>
2576- <copy todir="${dist}" file="${devlibs}/bin/libpangomm-1.4-1.dll"/>
2577- <copy todir="${dist}" file="${devlibs}/bin/libcairomm-1.0-1.dll"/>
2578- <copy todir="${dist}" file="${devlibs}/bin/libsigc-2.0-0.dll"/>
2579- <copy todir="${dist}" file="${devlibs}/bin/libfreetype-6.dll"/>
2580-
2581- <copy todir="${dist}" file="${devlibs}/bin/libffi-6.dll"/>
2582- <copy todir="${dist}" file="${devlibs}/bin/libgc-1.dll"/>
2583- <copy todir="${dist}" file="${devlibs}/bin/libgsl-19.dll"/>
2584- <copy todir="${dist}" file="${devlibs}/bin/libgslcblas-0.dll"/>
2585- <copy todir="${dist}" file="${devlibs}/bin/libharfbuzz-0.dll"/>
2586- <copy todir="${dist}" file="${devlibs}/bin/liblzma-5.dll"/>
2587-
2588- <copy todir="${dist}" file="${devlibs}/bin/libaspell-15.dll"/>
2589- <copy todir="${dist}" file="${devlibs}/bin/libatk-1.0-0.dll"/>
2590- <copy todir="${dist}" file="${devlibs}/bin/libgdk-win32-2.0-0.dll"/>
2591- <copy todir="${dist}" file="${devlibs}/bin/libgdk_pixbuf-2.0-0.dll"/>
2592- <copy todir="${dist}" file="${devlibs}/bin/libglib-2.0-0.dll"/>
2593- <copy todir="${dist}" file="${devlibs}/bin/libgmodule-2.0-0.dll"/>
2594- <copy todir="${dist}" file="${devlibs}/bin/libgobject-2.0-0.dll"/>
2595- <copy todir="${dist}" file="${devlibs}/bin/libgtk-win32-2.0-0.dll"/>
2596- <copy todir="${dist}" file="${devlibs}/bin/libgthread-2.0-0.dll"/>
2597- <copy todir="${dist}" file="${devlibs}/bin/libgio-2.0-0.dll"/>
2598- <copy todir="${dist}" file="${devlibs}/bin/libcairo-2.dll"/>
2599- <copy todir="${dist}" file="${devlibs}/bin/libpixman-1-0.dll"/>
2600- <copy todir="${dist}" file="${devlibs}/bin/libpoppler-58.dll"/>
2601- <copy todir="${dist}" file="${devlibs}/bin/libpoppler-glib-8.dll"/>
2602- <copy todir="${dist}" file="${devlibs}/bin/libpangocairo-1.0-0.dll"/>
2603- <copy todir="${dist}" file="${devlibs}/bin/libpango-1.0-0.dll"/>
2604- <copy todir="${dist}" file="${devlibs}/bin/libpangoft2-1.0-0.dll"/>
2605- <copy todir="${dist}" file="${devlibs}/bin/libpangowin32-1.0-0.dll"/>
2606- <copy todir="${dist}" file="${devlibs}/bin/libfontconfig-1.dll"/>
2607- <copy todir="${dist}" file="${devlibs}/bin/libxml2-2.dll"/>
2608- <copy todir="${dist}" file="${devlibs}/bin/libxslt-1.dll"/>
2609- <copy todir="${dist}" file="${devlibs}/bin/libexslt-0.dll"/>
2610- <copy todir="${dist}" file="${devlibs}/bin/libexpat-1.dll"/>
2611-
2612- <copy todir="${dist}" file="${devlibs}/bin/librevenge-0.0.dll"/>
2613- <copy todir="${dist}" file="${devlibs}/bin/librevenge-stream-0.0.dll"/>
2614- <copy todir="${dist}" file="${devlibs}/bin/libwpg-0.3.dll"/>
2615- <copy todir="${dist}" file="${devlibs}/bin/libwpd-0.10.dll"/>
2616- <copy todir="${dist}" file="${devlibs}/bin/libvisio-0.1.dll"/>
2617- <copy todir="${dist}" file="${devlibs}/bin/libcdr-0.1.dll"/>
2618- <copy todir="${dist}" file="${devlibs}/bin/icuin56.dll"/>
2619- <copy todir="${dist}" file="${devlibs}/bin/icudt56.dll"/>
2620- <copy todir="${dist}" file="${devlibs}/bin/icuuc56.dll"/>
2621-
2622- <copy todir="${dist}" file="${devlibs}/bin/libjpeg-9.dll"/>
2623- <copy todir="${dist}" file="${devlibs}/bin/libpng16-16.dll"/>
2624- <copy todir="${dist}" file="${devlibs}/bin/libtiff-5.dll"/>
2625- <copy todir="${dist}" file="${devlibs}/bin/libexif-12.dll"/>
2626-<!--
2627- <copy todir="${dist}" file="${devlibs}/bin/libopenjpeg-2.dll"/>
2628- -->
2629- <!-- <copy todir="${dist}" file="${devlibs}/bin/msvcr70.dll"/> -->
2630- <!-- <copy todir="${dist}" file="${devlibs}/bin/msvcr71.dll"/> -->
2631- <copy todir="${dist}" file="${devlibs}/bin/libcurl-4.dll"/>
2632- <copy todir="${dist}" file="${devlibs}/bin/zlib1.dll"/>
2633- <copy todir="${dist}" file="${devlibs}/bin/bz2-1.dll"/>
2634- <copy todir="${dist}" file="${devlibs}/bin/libiconv-2.dll"/>
2635- <copy todir="${dist}" file="${devlibs}/bin/libpopt-0.dll"/>
2636- <copy todir="${dist}" file="${devlibs}/bin/liblcms2-2.dll"/>
2637- <copy todir="${dist}" file="${devlibs}/bin/libMagick++-6.Q16-6.dll"/>
2638- <copy todir="${dist}" file="${devlibs}/bin/libMagickCore-6.Q16-2.dll"/>
2639- <copy todir="${dist}" file="${devlibs}/bin/libMagickWand-6.Q16-2.dll"/>
2640- <copy todir="${dist}" file="${devlibs}/bin/libintl-8.dll"/>
2641- <copy todir="${dist}" file="${devlibs}/bin/libpotrace-0.dll"/>
2642- <!-- MINGW support DLLs -->
2643- <copy todir="${dist}" file="${mingw_bin}/libstdc++-6.dll"/>
2644- <copy todir="${dist}" file="${mingw_bin}/libwinpthread-1.dll"/>
2645- <copy todir="${dist}" file="${mingw_bin}/libgcc_s_seh-1.dll"/>
2646- <!-- MINGW support DLLs needed for openmp support -->
2647- <copy todir="${dist}" file="${mingw_bin}/libgomp-1.dll"/>
2648-
2649- <!-- MSGFMT files -->
2650- <copy todir="${dist}">
2651- <fileset dir="${build}/locale">
2652- <exclude name=".*\.am"/>
2653- </fileset>
2654- </copy>
2655-
2656- <mkdir dir="${dist}/data"/>
2657- <mkdir dir="${dist}/locale"/>
2658- <mkdir dir="${dist}/modules"/>
2659- <mkdir dir="${dist}/plugins"/>
2660-
2661- <!-- GTK -->
2662- <copy todir="${dist}">
2663- <fileset dir="${devlibs}/etc">
2664- <exclude name="gtk-3.0/.*"/>
2665- </fileset>
2666- </copy>
2667- <copy todir="${dist}/lib">
2668- <fileset dir="${devlibs}/lib/gtk-2.0">
2669- <exclude name="\.la$"/>
2670- <exclude name="\.a$"/>
2671- <exclude name="include/"/>
2672- </fileset>
2673- </copy>
2674- <!-- <copy todir="${dist}/lib"> <fileset dir="${devlibs}/lib/glib-2.0"/> </copy> -->
2675- <copy todir="${dist}">
2676- <fileset dir="share">
2677- <exclude name="\.am$"/>
2678- <exclude name="\.in$"/>
2679- <exclude name="\.sh$"/>
2680- <exclude name="CMakeLists.txt"/>
2681- <exclude name="i18n.py"/>
2682- </fileset>
2683- </copy>
2684- <delete dir="${dist}/share/icons/hicolor"/> <!-- Quick fix for the following problem: having the hicolor folder there with empty index file bugs booting inkscape... -->
2685- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/themes"/> </copy>
2686- <copy todir="${dist}/lib">
2687- <fileset dir="${devlibs}/lib/gdk-pixbuf-2.0">
2688- <exclude name="\.la$"/>
2689- <exclude name="\.a$"/>
2690- </fileset>
2691- </copy>
2692-
2693- <!-- Poppler data files -->
2694- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/poppler"/> </copy>
2695-
2696- <!-- Locales for libraries (few should be needed) -->
2697- <copy todir="${dist}/share">
2698- <fileset dir="${devlibs}/share/locale">
2699- <include name="gtk20.mo"/>
2700- </fileset>
2701- </copy>
2702-
2703- <!-- Aspell dictionaries -->
2704- <copy todir="${dist}/lib"> <fileset dir="${devlibs}/lib/aspell-0.60"/> </copy>
2705-
2706- <!-- Necessary to run extensions on windows if it is not in the path -->
2707- <copy todir="${dist}" file="${devlibs}/bin/gspawn-win64-helper.exe"/>
2708- <copy todir="${dist}" file="${devlibs}/bin/gspawn-win64-helper-console.exe"/>
2709-
2710- <!-- PERL -->
2711- <copy todir="${dist}" file="${devlibs}/perl/bin/perl58.dll"/>
2712-
2713- <!-- PYTHON -->
2714- <copy todir="${dist}/python" file="${devlibs}/python/python.exe" />
2715- <copy todir="${dist}/python" file="${devlibs}/python/pythonw.exe"/>
2716- <copy todir="${dist}/python" file="${devlibs}/python/python27.dll"/>
2717- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/Lib"/> </copy>
2718- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/DLLs"/> </copy>
2719- <!-- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/Scripts"/> </copy> -->
2720-
2721- </target>
2722-
2723-
2724- <!--
2725- ########################################################################
2726- ## T A R G E T : D I S T - I N K S C A P E
2727- ########################################################################
2728- -->
2729- <target name="dist-inkscape" depends="link,linkconsole,distbase"
2730- description="copy inkscape to the distribution directory">
2731-
2732- <!-- Create the distribution directory -->
2733- <copy todir="${dist}" file="${build}/inkscape.exe"/>
2734- <copy todir="${dist}" file="${build}/inkscape.dbg"/>
2735- <copy file="${build}/inkscape-console.exe" tofile="${dist}/inkscape.com"/>
2736- </target>
2737-
2738-
2739- <!--
2740- ########################################################################
2741- ## T A R G E T : D I S T - I N K V I E W
2742- ########################################################################
2743- -->
2744- <target name="dist-inkview" depends="linkinkview,distbase"
2745- description="copy inkview to the distribution directory">
2746-
2747- <!-- Create the distribution directory -->
2748- <copy todir="${dist}" file="${build}/inkview.exe"/>
2749- <copy todir="${dist}" file="${build}/inkview.dbg"/>
2750- </target>
2751-
2752-
2753- <!--
2754- ########################################################################
2755- ## T A R G E T : C H E C K
2756- ########################################################################
2757- -->
2758- <target name="check" depends="linkcxxtests,distbase"
2759- description="perform unit tests">
2760- <copy todir="${dist}" file="${build}/cxxtests.exe"/>
2761- <cxxtestrun command="${dist}/cxxtests" workingdir="${dist}" />
2762- </target>
2763-
2764- <!--
2765- ########################################################################
2766- ## T A R G E T : D I S T - A L L
2767- ########################################################################
2768- -->
2769- <target name="dist-all" depends="dist-inkscape,dist-inkview"
2770- description="generate the distribution, along with inkview" >
2771- </target>
2772-
2773-
2774-
2775-
2776- <!--
2777- ########################################################################
2778- ## T A R G E T : D I S T - A L L - C H E C K
2779- ########################################################################
2780- -->
2781- <target name="dist-all-check" depends="dist-all,check"
2782- description="generate the distribution, along with inkview and run cxxtests" >
2783- </target>
2784-
2785-
2786-
2787-
2788-
2789- <!--
2790- ########################################################################
2791- ## T A R G E T : C L E A N
2792- ########################################################################
2793- -->
2794- <target name="clean"
2795- description="clean up. deleting build and distro dirs" >
2796-
2797- <delete dir="${build}"/>
2798- <delete dir="${dist}"/>
2799- <delete file="build.dep"/>
2800- <delete file="config.h"/>
2801- <delete file="${src}/inkscape-version.cpp"/>
2802- <delete file="${src}/test-main.cpp"/>
2803- <delete file="${src}/test-src.cpp"/>
2804- <delete file="${src}/display/test-display.cpp"/>
2805- <delete file="${src}/helper/test-helper.cpp"/>
2806- <delete file="${src}/svg/test-svg.cpp"/>
2807- <delete file="${src}/util/test-util.cpp"/>
2808- <delete file="${src}/xml/test-xml.cpp"/>
2809-
2810- </target>
2811-
2812-
2813-
2814-</project>
2815-<!--
2816-########################################################################
2817-## E N D
2818-########################################################################
2819--->
2820-
2821
2822=== removed file 'build.xml'
2823--- build.xml 2016-05-25 08:53:01 +0000
2824+++ build.xml 1970-01-01 00:00:00 +0000
2825@@ -1,922 +0,0 @@
2826-<!--
2827- * Inkscape build file.
2828- *
2829- * See buildtool.cpp for use.
2830- *
2831- * Authors:
2832- * Bob Jamison
2833- * Others
2834- *
2835- * Copyright (C) 2006-2008 Inkscape.org
2836- *
2837- * This library is free software; you can redistribute it and/or
2838- * modify it under the terms of the GNU Lesser General Public
2839- * License as published by the Free Software Foundation; either
2840- * version 2.1 of the License, or (at your option) any later version.
2841- *
2842- * This library is distributed in the hope that it will be useful,
2843- * but WITHOUT ANY WARRANTY; without even the implied warranty of
2844- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
2845- * Lesser General Public License for more details.
2846- *
2847- * You should have received a copy of the GNU Lesser General Public
2848- * License along with this library; if not, write to the Free Software
2849- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
2850--->
2851-
2852-
2853-
2854-<!--
2855-########################################################################
2856-## P R O J E C T : I N K S C A P E
2857-########################################################################
2858--->
2859-<project name="Inkscape" default="dist-all" basedir=".">
2860- <description>
2861- Build file for the Inkscape SVG editor. This file
2862- was written for GTK-2.10 on Win32, but it should work
2863- well for other types of builds with only minor adjustments.
2864- Note that the default target is 'dist-all'. You can execute other
2865- targets instead, by "btool {target}", like "btool compile", if
2866- you want to save time, or "dist-inkscape" if you don't want inkview.
2867- </description>
2868-
2869- <!-- set global properties for this build -->
2870- <property name="version" value="0.92pre1"/>
2871- <property name="src" location="src"/>
2872- <property name="lib" location="lib"/>
2873- <property name="build" location="build"/>
2874- <property name="dist" location="inkscape"/>
2875-
2876- <!-- Use these settings for the native compiler -->
2877- <!-- -->
2878- <property name="arch" value="mingw32-"/>
2879- <property name="arch_cc" value="${arch}gcc"/>
2880- <property name="arch_cxx" value="${arch}g++"/>
2881- <property name="arch_link" value="${arch}g++"/>
2882- <property name="archutil" value=""/>
2883- <property name="devlibs" location="${env.DEVLIBS_PATH}"/>
2884- <property name="mingw" location="${env.MINGW_PATH}"/>
2885- <property name="mingw_bin" location="${env.MINGW_PATH}/bin"/>
2886- <property name="cxxtest" location="cxxtest"/>
2887- <property name="python" location="${devlibs}/python/python.exe"/>
2888- <!-- -->
2889-
2890- <!-- Use these settings for the cross compiler -->
2891- <!--
2892- <property name="arch" value="i686-pc-mingw32-"/>
2893- <property name="arch_cc" value="${arch}gcc"/>
2894- <property name="arch_cxx" value="${arch}g++"/>
2895- <property name="arch_link" value="${arch}g++"/>
2896- <property name="archutil" value="${arch}"/>
2897- <property name="devlibs" location="/target"/>
2898- <property name="mingw_bin" location="${env.MINGW_BIN}"/>
2899- <property name="cxxtest" location="cxxtest"/>
2900- <property name="python" location="python"/>
2901- -->
2902-
2903- <!-- Extra properties -->
2904- <property name="refresh" value="false"/>
2905-
2906- <!--
2907- This is for package-config. With these two settings, pkg-config
2908- queries can be as simple as ${pcc.packageName} for cflags, and
2909- ${pcl.packageName} for libs. Dependencies are calculated automatically.
2910- -->
2911- <property name="pkg-config-path" location="${devlibs}/lib/pkgconfig"/>
2912- <property name="pkg-config-prefix" location="${devlibs}"/>
2913-
2914-
2915- <!--
2916- ########################################################################
2917- ## T A R G E T : I N I T
2918- ########################################################################
2919- -->
2920- <target name="init"
2921- description=
2922- "Do all preparatory tasks, like make directories and copy files">
2923-
2924-
2925- <mkdir dir="${build}"/>
2926- <mkdir dir="${dist}"/>
2927-
2928- <copy file="${src}/helper/sp-marshal.h.mingw"
2929- tofile="${src}/helper/sp-marshal.h"/>
2930- <copy file="${src}/helper/sp-marshal.cpp.mingw"
2931- tofile="${src}/helper/sp-marshal.cpp"/>
2932-
2933- <!--makefile file="${src}/inkscape-version.cpp">
2934- namespace Inkscape {
2935- char const *version_string = "${version}";
2936- }
2937- </makefile-->
2938- <makefile file="${src}/inkscape-version.cpp">
2939- namespace Inkscape {
2940- char const *version_string = "${version} ${bzr.revision}";
2941- }
2942- </makefile>
2943- <makefile file="config.h">
2944- #ifndef _CONFIG_H_
2945- #define _CONFIG_H_
2946-
2947- #ifndef WIN32
2948- #define WIN32
2949- #endif
2950-
2951- /*######################################
2952- ## This is for require-config.h, whose
2953- ## purpose I cannot fathom.
2954- ######################################*/
2955-
2956- #define PACKAGE_TARNAME
2957-
2958- /*######################################
2959- #### RESOURCE DIRECTORIES
2960- ######################################*/
2961-
2962- #define INKSCAPE_DATADIR "."
2963- #define PACKAGE_LOCALE_DIR "locale"
2964-
2965-
2966- /*######################################
2967- #### OTHER DEFINITIONS
2968- ######################################*/
2969-
2970- #define GETTEXT_PACKAGE "inkscape"
2971-
2972- #define PACKAGE_STRING VERSION
2973-
2974- #define HAVE_GETOPT_H 1
2975- #define HAVE_STRING_H 1
2976- #define HAVE_LIBINTL_H 1
2977- #define HAVE_MALLOC_H 1
2978- #define HAVE_STDLIB_H 1
2979- #define HAVE_SYS_STAT_H 1
2980- #define HAVE_INTTYPES_H 1
2981- #define HAVE_OPENMP 1
2982- #define HAVE_TR1_UNORDERED_SET 1
2983-
2984- #define HAVE_LIBLCMS2 1
2985-
2986- #define WITH_GTKMM_2_24 1
2987-
2988- #define ENABLE_NLS 1
2989- #define HAVE_BIND_TEXTDOMAIN_CODESET 1
2990-
2991- /* keep binreloc off */
2992- #define BR_PTHREADS 0
2993- #undef ENABLE_BINRELOC
2994-
2995- /* CairoPDF options */
2996- #define HAVE_CAIRO_PDF 1
2997- #define PANGO_ENABLE_ENGINE 1
2998- #define RENDER_WITH_PANGO_CAIRO 1
2999-
3000- #define HAVE_GTK_WINDOW_FULLSCREEN 1
3001-
3002- /* internal interpreter */
3003- #define WITH_PYTHON 1
3004-
3005- /* use poppler for pdf import? */
3006- #define HAVE_POPPLER 1
3007- #define HAVE_POPPLER_GLIB 1
3008- #define HAVE_POPPLER_CAIRO 1
3009-
3010- /* do we want bitmap manipulation? */
3011- #define WITH_IMAGE_MAGICK 1
3012-
3013- /* Exif and JPEG support for image resolution import */
3014- #define HAVE_EXIF 1
3015- #define HAVE_JPEG 1
3016-
3017- /* Allow reading WordPerfect? */
3018- #define WITH_LIBWPG 1
3019-
3020- /* Default to libwpg 0.2.x */
3021- #define WITH_LIBWPG02 1
3022-
3023- /* Visio import filter */
3024- #define WITH_LIBVISIO 1
3025- /* Librevenge based filter */
3026- #define WITH_LIBVISIO01 1
3027-
3028- /* Corel Draw import filter */
3029- #define WITH_LIBCDR 1
3030- /* Librevenge based filter */
3031- #define WITH_LIBCDR01 1
3032-
3033- /* Do we support SVG Fonts? */
3034- #define ENABLE_SVG_FONTS 1
3035-
3036- /* Do we want experimental, unsupported, unguaranteed, etc., LivePathEffects enabled? */
3037- //#define LPE_ENABLE_TEST_EFFECTS 1
3038-
3039- /* Do we want experimental, unsupported, unguaranteed, etc., SVG2 features enabled? */
3040- //#define WITH_SVG2 1
3041- //#define WITH_CSSCOMPOSITE 1
3042- //#define WITH_CSSBLEND 1
3043- //#define WITH_MESH 1
3044-
3045- #define HAVE_ASPELL 1
3046-
3047- #define HAVE_POTRACE 1
3048-
3049- #endif /* _CONFIG_H_ */
3050- </makefile>
3051- </target>
3052-
3053- <!--
3054- ########################################################################
3055- ## T A R G E T : C X X T E S T
3056- ########################################################################
3057- -->
3058- <target name="cxxtest" depends="init"
3059- description="generate test files" >
3060-
3061- <!-- Generate CxxTest files -->
3062- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
3063- out="${src}/test-src.cpp">
3064- <fileset dir="${src}">
3065- <include name="attributes-test.h"/>
3066- <include name="color-profile-test.h"/>
3067- <include name="dir-util-test.h"/>
3068- <include name="extract-uri-test.h"/>
3069- <include name="marker-test.h"/>
3070- <include name="mod360-test.h"/>
3071- <include name="object-test.h"/>
3072- <include name="preferences-test.h"/>
3073- <include name="round-test.h"/>
3074- <include name="sp-gradient-test.h"/>
3075- <include name="sp-style-elem-test.h"/>
3076- <include name="syle-test.h"/>
3077- <include name="test-helpers.h"/>
3078- <include name="verbs-test.h"/>
3079- </fileset>
3080- </cxxtestpart>
3081- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
3082- out="${src}/display/test-display.cpp">
3083- <fileset dir="${src}/display">
3084- <include name="curve-test.h"/>
3085- </fileset>
3086- </cxxtestpart>
3087- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
3088- out="${src}/helper/test-helper.cpp">
3089- <fileset dir="${src}/helper">
3090- <include name="units-test.h"/>
3091- </fileset>
3092- </cxxtestpart>
3093- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
3094- out="${src}/svg/test-svg.cpp">
3095- <fileset dir="${src}/svg">
3096- <!--<include name="css-ostringstream-test.h"/>-->
3097- <include name="stringstream-test.h"/>
3098- <include name="svg-affine-test.h"/>
3099- <include name="svg-color-test.h"/>
3100- <include name="svg-length-test.h"/>
3101- <include name="svg-path-geom-test.h"/>
3102- </fileset>
3103- </cxxtestpart>
3104- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
3105- out="${src}/util/test-util.cpp">
3106- <fileset dir="${src}/util">
3107- <include name="list-container-test.h"/>
3108- </fileset>
3109- </cxxtestpart>
3110- <cxxtestpart command="${python} ${cxxtest}/cxxtestgen.py --have-eh"
3111- out="${src}/xml/test-xml.cpp">
3112- <fileset dir="${src}/xml">
3113- <include name="repr-action-test.h"/>
3114- <include name="quote-test.h"/>
3115- </fileset>
3116- </cxxtestpart>
3117- <cxxtestroot command="${python} ${cxxtest}/cxxtestgen.py"
3118- out="${src}/test-main.cpp"
3119- template="${src}/cxxtest-template.tpl">
3120- <fileset dir="${src}">
3121- <include name="MultiPrinter.h"/>
3122- <include name="PylogFormatter.h"/>
3123- <include name="TRPIFormatter.h"/>
3124- </fileset>
3125- </cxxtestroot>
3126- </target>
3127-
3128-
3129- <!--
3130- ########################################################################
3131- ## T A R G E T : C O M P I L E
3132- ########################################################################
3133- -->
3134- <target name="compile" depends="cxxtest"
3135- description="compile the source to .o" >
3136-
3137- <!-- Compile from source to build -->
3138- <cc cc="${arch_cc}" cxx="${arch_cxx}"
3139- destdir="${build}/obj"
3140- continueOnError="true"
3141- refreshCache="${refresh}">
3142- <fileset dir="${src}">
3143- <!-- THINGS TO EXCLUDE -->
3144- <exclude name="ast/.*"/>
3145- <exclude name="bonobo/.*"/>
3146- <exclude name="deptool.cpp"/>
3147- <exclude name="cxxtests.cpp"/>
3148- <!--<exclude name="test-main.cpp"/>-->
3149- <!--<exclude name="test-src.cpp"/>-->
3150- <exclude name="display/test-display.cpp"/>
3151- <exclude name="display/testnr.cpp"/>
3152- <exclude name="extension/api.cpp"/>
3153- <exclude name="extension/dbus/.*"/>
3154- <exclude name="extension/dxf2svg/.*"/>
3155- <exclude name="extension/implementation/plugin.cpp"/>
3156- <exclude name="extension/plugins/.*"/>
3157- <exclude name="extract-uri-test.cpp"/>
3158- <exclude name="helper/units-test.cpp"/>
3159- <!-- exclude name="inkview.cpp"/-->
3160- <exclude name="livarot/Path-test.cpp"/>
3161- <exclude name="mod360-test.cpp"/>
3162- <exclude name="trace/potrace/potest.cpp"/>
3163- <exclude name="round-test.cpp"/>
3164- <exclude name="sp-gradient-test.cpp"/>
3165- <exclude name="style-test.cpp"/>
3166- <exclude name="svg/ftos.cpp"/>
3167- <!--<exclude name="svg/test-svg.cpp"/>-->
3168- <exclude name="svg/test-svg-main.cpp"/>
3169- <exclude name="util/list-container-test.cpp"/>
3170- <exclude name="widgets/test-widgets.cpp"/>
3171- <exclude name="widgets/image-menu-item.c"/>
3172- <exclude name="xml/quote-test.cpp"/>
3173- <exclude name="xml/repr-action-test.cpp"/>
3174- <exclude name="xml/test-xml.cpp"/>
3175- <!--<exclude name="xml/test-xml-main.cpp"/>-->
3176- <exclude name="io/streamtest.cpp"/>
3177- <!--OVERLAP-->
3178- <exclude name="removeoverlap/placement_SolveVPSC.cpp"/>
3179- <exclude name="removeoverlap/placement_SolveVPSC.h"/>
3180- <exclude name="removeoverlap/test.cpp"/>
3181- <exclude name="removeoverlap/remove_rectangle_overlap-test.cpp"/>
3182- <exclude name="removeoverlap/remove_rectangle_overlap-test.h"/>
3183- </fileset>
3184- <excludeinc dir="${src}">
3185- <file name="extension/param"/>
3186- </excludeinc>
3187- <flags>
3188- -Wall -Wformat -Werror=format-security -Wextra -Wpointer-arith -Wcast-align -Wsign-compare -Wswitch
3189- -Werror=return-type
3190- <!-- -Werror -->
3191- <!-- A list of warnings that should not error *yet*, any help is welcome in fixing the code generating these warnings! -->
3192- <!-- libcroco is using guchar where it should use gchar, so we need: --> -Wno-error=pointer-sign
3193- -Wno-error=unused-parameter -Wno-error=unused-but-set-variable -Wno-error=strict-overflow -Wno-error=write-strings
3194- <!-- Format warnings are obviously bad errors, but with the current old compiler on Windows (gcc 4.6.) we run into a problem with long long ints...
3195- The errors can be restored by removing these flags after updating to a newer compiler (soon after 0.91 release hopefully) -->
3196- -Wno-error=format -Wno-error=format-extra-args
3197- -O2
3198- -mms-bitfields
3199- -fopenmp
3200- </flags>
3201- <cxxflags>
3202- <!-- -std=gnu++0x -DCPP11 -Wno-unused-local-typedefs -->
3203- -Woverloaded-virtual
3204- </cxxflags>
3205- <defines>
3206- -DVERSION=\"${version}\"
3207- -DHAVE_CONFIG_H
3208- -D_INTL_REDIRECT_INLINE
3209- -DHAVE_SSL
3210- -DRELAYTOOL_SSL="static const int libssl_is_present=1; static int __attribute__((unused)) libssl_symbol_is_present(char *s){ return 1; }" <!-- inkboard -->
3211- -DPOPPLER_NEW_GFXFONT <!-- poppler changed the api for 0.8.3 -->
3212- -DPOPPLER_NEW_GFXPATCH <!-- GfxPatch no longer uses GfxColor in >= 0.15.1 -->
3213- -DPOPPLER_NEW_ERRORAPI <!-- poppler changed the error api for 0.20.0 -->
3214- -DPOPPLER_EVEN_NEWER_COLOR_SPACE_API <!-- poppler changed the colorspace api for 0.26.0 -->
3215- -DPOPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API <!-- poppler changed the colorspace api for 0.29.0 -->
3216- <!-- GTK+3 migration -->
3217- -DGLIBMM_DISABLE_DEPRECATED
3218- -DG_DISABLE_DEPRECATED
3219- -DGTK_DISABLE_SINGLE_INCLUDES
3220- <!-- -DGTKMM_DISABLE_DEPRECATED -->
3221- <!-- -DGTK_DISABLE_DEPRECATED -->
3222- -DGDKMM_DISABLE_DEPRECATED
3223- -DGSEAL_ENABLE
3224- </defines>
3225- <includes>
3226- -I${devlibs}/include
3227- <!-- GTK / GTKMM -->
3228- ${pcc.gtkmm-2.4}
3229- ${pcc.gmodule-2.0}
3230- <!-- OTHER -->
3231- ${pcc.Magick++}
3232- ${pcc.libxml-2.0}
3233- ${pcc.freetype2}
3234- ${pcc.cairo}
3235- ${pcc.poppler}
3236- -I${devlibs}/include/gc
3237- -I${devlibs}/include/potracelib
3238- ${pcc.librevenge-0.0} ${pcc.librevenge-stream-0.0}
3239- ${pcc.libwpg-0.2} ${pcc.libvisio-0.1} ${pcc.libcdr-0.1}
3240- -I${cxxtest}
3241- <!-- PERL -->
3242- <!-- -Wno-comment -I${devlibs}/perl/lib/CORE -->
3243- <!-- PYTHON -->
3244- -I${devlibs}/python/include
3245- </includes>
3246- </cc>
3247- </target>
3248-
3249-
3250-
3251- <!--
3252- ########################################################################
3253- ## T A R G E T : I 1 8 N
3254- ########################################################################
3255- -->
3256- <target name="i18n" depends="compile"
3257- description="compile gettext .po files to .mo">
3258-
3259- <msgfmt todir="${build}/locale" owndir="true"
3260- out="LC_MESSAGES/inkscape.mo">
3261- <fileset dir="po">
3262- </fileset>
3263- </msgfmt>
3264- </target>
3265-
3266-
3267-
3268-
3269-
3270- <!--
3271- ########################################################################
3272- ## T A R G E T : L I N K
3273- ########################################################################
3274- -->
3275- <target name="link" depends="compile"
3276- description="link objects and library to create executable">
3277-
3278- <rc command="${archutil}windres"
3279- file="${src}/inkscape.rc"
3280- out="${build}/obj/inkres.o">
3281- <flags>
3282- --include-dir=${src}
3283- </flags>
3284- </rc>
3285- <link command="${arch_link}" out="${build}/inkscape.exe"
3286- strip="true" symfile="${build}/inkscape.dbg"
3287- stripcommand="${archutil}strip"
3288- objcopycommand="${archutil}objcopy">
3289- <flags>
3290- -mwindows
3291- -mthreads
3292- </flags>
3293- <fileset dir="${build}/obj">
3294- <exclude name="winconsole.o"/>
3295- <exclude name="inkview.o"/>
3296- <exclude name="inkviewres.o"/>
3297- <!-- CxxTest -->
3298- <exclude name="test-main.o"/>
3299- <exclude name="test-src.o"/>
3300- <exclude name="display/test-display.o"/>
3301- <exclude name="helper/test-helper.o"/>
3302- <exclude name="svg/test-svg.o"/>
3303- <exclude name="util/test-util.o"/>
3304- <exclude name="xml/test-xml.o"/>
3305- </fileset>
3306- <!-- WARNING: If you change these libraries, don't forget to change them for inkview and cxxtests below as well! -->
3307- <libs>
3308- -L${devlibs}/lib
3309- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
3310- ${pcl.gmodule-2.0}
3311- ${pcl.gtkmm-2.4} ${pcl.pangoft2} ${pcl.gthread-2.0}
3312- ${devlibs}/bin/libxml2.dll
3313- ${devlibs}/bin/libxslt.dll
3314- ${devlibs}/bin/libexslt.dll
3315- ${pcl.cairo} ${pcl.cairomm-1.0}
3316- ${pcl.librevenge-0.0} ${pcl.librevenge-stream-0.0}
3317- ${pcl.libwpg-0.2} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
3318- -liconv
3319- ${pcl.Magick++}
3320- ${pcl.fontconfig} ${pcl.freetype2}
3321- ${pcl.lcms2}
3322- ${pcl.gsl}
3323- -lpng -ljpeg -ltiff -lexif -lpopt -lz
3324- -lgc -lpotrace
3325- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
3326- -lgomp -lpthreadGC2 -laspell
3327- -lmscms <!-- required for color profiles -->
3328- </libs>
3329- </link>
3330- </target>
3331-
3332-<!--
3333- ########################################################################
3334- ## T A R G E T : L I N K C O N S O L E
3335- ########################################################################
3336- -->
3337- <target name="linkconsole" depends="compile"
3338- description="link console helper">
3339-
3340- <link command="${arch_link}" out="${build}/inkscape-console.exe"
3341- strip="true" stripcommand="${archutil}strip">
3342- <flags>
3343- -mconsole
3344- -mthreads
3345- </flags>
3346- <fileset dir="${build}">
3347- <include name="obj/winconsole.o"/>
3348- </fileset>
3349- <libs></libs>
3350- </link>
3351- </target>
3352-
3353- <!--
3354- ########################################################################
3355- ## T A R G E T : L I N K I N K V I E W
3356- ########################################################################
3357- -->
3358- <target name="linkinkview" depends="compile"
3359- description="link objects and library to create Inkview executable">
3360-
3361- <rc command="${archutil}windres"
3362- file="${src}/inkview.rc"
3363- out="${build}/obj/inkviewres.o">
3364- <flags>
3365- --include-dir=${src}
3366- </flags>
3367- </rc>
3368- <link command="${arch_link}" out="${build}/inkview.exe"
3369- strip="true" symfile="${build}/inkview.dbg"
3370- stripcommand="${archutil}strip"
3371- objcopycommand="${archutil}objcopy">
3372- <flags>
3373- -mwindows
3374- -mthreads
3375- </flags>
3376- <fileset dir="${build}/obj">
3377- <!-- exclude the other programs -->
3378- <exclude name="main.o"/>
3379- <exclude name="winmain.o"/>
3380- <exclude name="winconsole.o"/>
3381- <exclude name="inkres.o"/>
3382- <!-- CxxTest -->
3383- <exclude name="test-main.o"/>
3384- <exclude name="test-src.o"/>
3385- <exclude name="display/test-display.o"/>
3386- <exclude name="helper/test-helper.o"/>
3387- <exclude name="svg/test-svg.o"/>
3388- <exclude name="util/test-util.o"/>
3389- <exclude name="xml/test-xml.o"/>
3390- </fileset>
3391- <libs>
3392- -L${devlibs}/lib
3393- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
3394- ${pcl.gtkmm-2.4} ${pcl.pangoft2} ${pcl.gthread-2.0}
3395- ${pcl.gmodule-2.0}
3396- ${devlibs}/bin/libxml2.dll
3397- ${devlibs}/bin/libxslt.dll
3398- ${devlibs}/bin/libexslt.dll
3399- ${pcl.cairo} ${pcl.cairomm-1.0}
3400- ${pcl.librevenge-0.0} ${pcl.librevenge-stream-0.0}
3401- ${pcl.libwpg-0.2} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
3402- -liconv
3403- ${pcl.Magick++}
3404- ${pcl.fontconfig} ${pcl.freetype2}
3405- ${pcl.lcms2}
3406- ${pcl.gsl}
3407- -lpng -ljpeg -ltiff -lexif -lpopt -lz
3408- -lgc -lpotrace
3409- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
3410- -lgomp -lpthreadGC2 -laspell
3411- -lmscms <!-- required for color profiles -->
3412- </libs>
3413- </link>
3414- </target>
3415-
3416-
3417-
3418- <!--
3419- ########################################################################
3420- ## T A R G E T : L I N K C X X T E S T S
3421- ########################################################################
3422- -->
3423- <target name="linkcxxtests" depends="compile"
3424- description="link objects and library to create executable">
3425-
3426- <link command="${arch_link}" out="${build}/cxxtests.exe"
3427- strip="true" symfile="${build}/cxxtests.dbg"
3428- stripcommand="${archutil}strip"
3429- objcopycommand="${archutil}objcopy">
3430- <flags>
3431- -mconsole
3432- -mthreads
3433- </flags>
3434- <fileset dir="${build}/obj">
3435- <!-- exclude the other programs -->
3436- <exclude name="main.o"/>
3437- <exclude name="winmain.o"/>
3438- <exclude name="winconsole.o"/>
3439- <exclude name="inkres.o"/>
3440- <exclude name="inkviewres.o"/>
3441- <exclude name="inkview.o"/>
3442- </fileset>
3443- <libs>
3444- -L${devlibs}/lib
3445- ${pcl.poppler-cairo} ${pcl.poppler-glib} ${pcl.poppler}
3446- ${pcl.gtkmm-2.4} ${pcl.pangoft2} ${pcl.gthread-2.0}
3447- ${pcl.gmodule-2.0}
3448- ${devlibs}/bin/libxml2.dll
3449- ${devlibs}/bin/libxslt.dll
3450- ${devlibs}/bin/libexslt.dll
3451- ${pcl.cairo} ${pcl.cairomm-1.0}
3452- ${pcl.librevenge-0.0} ${pcl.librevenge-stream-0.0}
3453- ${pcl.libwpg-0.2} ${pcl.libvisio-0.1} ${pcl.libcdr-0.1}
3454- -liconv
3455- ${pcl.Magick++}
3456- ${pcl.fontconfig} ${pcl.freetype2}
3457- ${pcl.lcms2}
3458- ${pcl.gsl}
3459- -lpng -ljpeg -ltiff -lexif -lpopt -lz
3460- -lgc -lpotrace
3461- -lws2_32 -lintl -lgdi32 -lcomdlg32 -lm
3462- -lgomp -lpthreadGC2 -laspell
3463- -lmscms <!-- required for color profiles -->
3464- </libs>
3465- </link>
3466- </target>
3467-
3468-
3469- <!--
3470- ########################################################################
3471- ## T A R G E T : D I S T B A S E
3472- ########################################################################
3473- -->
3474- <target name="distbase" depends="i18n"
3475- description="generate the distribution directory with all needed files">
3476-
3477- <!-- Create the distribution directory -->
3478- <copy todir="${dist}" file="AUTHORS"/>
3479- <copy todir="${dist}" file="COPYING"/>
3480- <copy todir="${dist}" file="GPL2.txt"/>
3481- <copy todir="${dist}" file="GPL3.txt"/>
3482- <copy todir="${dist}" file="LGPL2.1.txt"/>
3483- <copy todir="${dist}" file="NEWS"/>
3484- <copy todir="${dist}" file="README"/>
3485- <copy todir="${dist}" file="TRANSLATORS"/>
3486- <copy todir="${dist}" file="${devlibs}/bin/libatkmm-1.6-1.dll"/>
3487- <copy todir="${dist}" file="${devlibs}/bin/libglibmm-2.4-1.dll"/>
3488- <copy todir="${dist}" file="${devlibs}/bin/libgiomm-2.4-1.dll"/>
3489- <copy todir="${dist}" file="${devlibs}/bin/libgtkmm-2.4-1.dll"/>
3490- <copy todir="${dist}" file="${devlibs}/bin/libgdkmm-2.4-1.dll"/>
3491- <copy todir="${dist}" file="${devlibs}/bin/libpangomm-1.4-1.dll"/>
3492- <copy todir="${dist}" file="${devlibs}/bin/libcairomm-1.0-1.dll"/>
3493- <copy todir="${dist}" file="${devlibs}/bin/libsigc-2.0-0.dll"/>
3494- <copy todir="${dist}" file="${devlibs}/bin/freetype6.dll"/>
3495- <copy todir="${dist}" file="${devlibs}/bin/libatk-1.0-0.dll"/>
3496- <copy todir="${dist}" file="${devlibs}/bin/libgcc_s_sjlj-1.dll"/>
3497- <copy todir="${dist}" file="${devlibs}/bin/libgdk-win32-2.0-0.dll"/>
3498- <copy todir="${dist}" file="${devlibs}/bin/libgdk_pixbuf-2.0-0.dll"/>
3499- <copy todir="${dist}" file="${devlibs}/bin/libglib-2.0-0.dll"/>
3500- <copy todir="${dist}" file="${devlibs}/bin/libgmodule-2.0-0.dll"/>
3501- <copy todir="${dist}" file="${devlibs}/bin/libgobject-2.0-0.dll"/>
3502- <copy todir="${dist}" file="${devlibs}/bin/libgtk-win32-2.0-0.dll"/>
3503- <copy todir="${dist}" file="${devlibs}/bin/libgthread-2.0-0.dll"/>
3504- <copy todir="${dist}" file="${devlibs}/bin/libgio-2.0-0.dll"/>
3505- <copy todir="${dist}" file="${devlibs}/bin/libcairo-2.dll"/>
3506- <copy todir="${dist}" file="${devlibs}/bin/libpixman-1-0.dll"/>
3507- <copy todir="${dist}" file="${devlibs}/bin/libpoppler-58.dll"/>
3508- <copy todir="${dist}" file="${devlibs}/bin/libpoppler-glib-8.dll"/>
3509- <copy todir="${dist}" file="${devlibs}/bin/libpangocairo-1.0-0.dll"/>
3510- <copy todir="${dist}" file="${devlibs}/bin/libpango-1.0-0.dll"/>
3511- <copy todir="${dist}" file="${devlibs}/bin/libpangoft2-1.0-0.dll"/>
3512- <copy todir="${dist}" file="${devlibs}/bin/libpangowin32-1.0-0.dll"/>
3513- <copy todir="${dist}" file="${devlibs}/bin/libfontconfig-1.dll"/>
3514- <copy todir="${dist}" file="${devlibs}/bin/libxml2.dll"/>
3515- <copy todir="${dist}" file="${devlibs}/bin/libxslt.dll"/>
3516- <copy todir="${dist}" file="${devlibs}/bin/libexslt.dll"/>
3517- <copy todir="${dist}" file="${devlibs}/bin/libexpat-1.dll"/>
3518- <copy todir="${dist}" file="${devlibs}/bin/librevenge-0.0.dll"/>
3519- <copy todir="${dist}" file="${devlibs}/bin/librevenge-stream-0.0.dll"/>
3520- <copy todir="${dist}" file="${devlibs}/bin/libwpg-0.2.dll"/>
3521- <copy todir="${dist}" file="${devlibs}/bin/libwpd-0.9.dll"/>
3522- <copy todir="${dist}" file="${devlibs}/bin/libwpd-stream-0.9.dll"/>
3523- <copy todir="${dist}" file="${devlibs}/bin/libvisio-0.1.dll"/>
3524- <copy todir="${dist}" file="${devlibs}/bin/libcdr-0.1.dll"/>
3525- <copy todir="${dist}" file="${devlibs}/bin/icui18n50.dll"/>
3526- <copy todir="${dist}" file="${devlibs}/bin/icudata50.dll"/>
3527- <copy todir="${dist}" file="${devlibs}/bin/icuuc50.dll"/>
3528- <copy todir="${dist}" file="${devlibs}/bin/libjpeg-7.dll"/>
3529- <copy todir="${dist}" file="${devlibs}/bin/libpng12-0.dll"/>
3530- <copy todir="${dist}" file="${devlibs}/bin/libpng14-14.dll"/>
3531- <copy todir="${dist}" file="${devlibs}/bin/libtiff-3.dll"/>
3532- <copy todir="${dist}" file="${devlibs}/bin/libexif-12.dll"/>
3533- <copy todir="${dist}" file="${devlibs}/bin/libopenjpeg-2.dll"/>
3534- <copy todir="${dist}" file="${devlibs}/bin/msvcr70.dll"/>
3535- <copy todir="${dist}" file="${devlibs}/bin/msvcr71.dll"/>
3536- <copy todir="${dist}" file="${devlibs}/bin/zlib1.dll"/>
3537- <copy todir="${dist}" file="${devlibs}/bin/bzip2.dll"/>
3538- <copy todir="${dist}" file="${devlibs}/bin/iconv.dll"/>
3539- <copy todir="${dist}" file="${devlibs}/bin/libpopt-0.dll"/>
3540- <copy todir="${dist}" file="${devlibs}/bin/liblcms-1.dll"/>
3541- <copy todir="${dist}" file="${devlibs}/bin/liblcms2-2.dll"/>
3542- <copy todir="${dist}" file="${devlibs}/bin/libMagick++-3.dll"/>
3543- <copy todir="${dist}" file="${devlibs}/bin/libMagickCore-3.dll"/>
3544- <copy todir="${dist}" file="${devlibs}/bin/libMagickWand-3.dll"/>
3545- <copy todir="${dist}" file="${devlibs}/bin/intl.dll"/>
3546- <copy todir="${dist}" file="${devlibs}/bin/libintl-8.dll"/>
3547- <copy todir="${dist}" file="${devlibs}/bin/pthreadGC2.dll"/>
3548- <!-- MINGW support DLLs needed for openmp support -->
3549- <copy todir="${dist}" file="${mingw_bin}/mingwm10.dll"/>
3550- <copy todir="${dist}" file="${mingw_bin}/libgomp-1.dll"/>
3551-
3552- <!-- MSGFMT files -->
3553- <copy todir="${dist}">
3554- <fileset dir="${build}/locale">
3555- <exclude name="\.am$"/>
3556- </fileset>
3557- </copy>
3558-
3559- <mkdir dir="${dist}/data"/>
3560- <mkdir dir="${dist}/locale"/>
3561- <mkdir dir="${dist}/modules"/>
3562- <mkdir dir="${dist}/plugins"/>
3563-
3564- <!-- GTK -->
3565- <copy todir="${dist}"> <fileset dir="${devlibs}/etc"/> </copy>
3566- <copy todir="${dist}/lib"> <fileset dir="${devlibs}/lib/gtk-2.0"/> </copy>
3567- <copy todir="${dist}/lib"> <fileset dir="${devlibs}/lib/glib-2.0"/> </copy>
3568- <copy todir="${dist}">
3569- <fileset dir="share">
3570- <exclude name="\.am$"/>
3571- <exclude name="\.in$"/>
3572- <exclude name="\.sh$"/>
3573- </fileset>
3574- </copy>
3575- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/locale"/> </copy>
3576- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/themes"/> </copy>
3577- <copy todir="${dist}/share"> <fileset dir="${devlibs}/share/poppler"/> </copy>
3578- <copy todir="${dist}" file="${devlibs}/bin/gdb.exe"/>
3579-
3580- <!-- Aspell dictionaries -->
3581- <copy todir="${dist}/lib"> <fileset dir="${devlibs}/lib/aspell-0.60"/> </copy>
3582-
3583- <!-- Necessary to run extensions on windows if it is not in the path -->
3584- <copy todir="${dist}" file="${devlibs}/bin/gspawn-win32-helper.exe"/>
3585- <copy todir="${dist}" file="${devlibs}/bin/gspawn-win32-helper-console.exe"/>
3586-
3587- <!-- PERL -->
3588- <copy todir="${dist}" file="${devlibs}/perl/bin/perl58.dll"/>
3589-
3590- <!-- PYTHON -->
3591- <copy todir="${dist}" file="${devlibs}/python/python27.dll"/>
3592- <copy todir="${dist}/python" file="${devlibs}/python/python.exe" />
3593- <copy todir="${dist}/python" file="${devlibs}/python/pythonw.exe"/>
3594- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/Lib"/> </copy>
3595- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/DLLs"/> </copy>
3596- <copy todir="${dist}/python"> <fileset dir="${devlibs}/python/Scripts"/> </copy>
3597-
3598- <!--<copy file="${devlibs}/share/themes/MS-Windows/gtk-2.0/gtkrc" todir="${dist}/etc/gtk-2.0"/>-->
3599- <makefile file="${dist}/etc/gtk-2.0/gtkrc">
3600- gtk-icon-sizes = "gtk-menu=16,16:gtk-small-toolbar=16,16:gtk-large-toolbar=24,24:gtk-dnd=32,32:inkscape-decoration=16,16"
3601- gtk-toolbar-icon-size = small-toolbar
3602-
3603- # disable images in buttons. i've only seen ugly delphi apps use this feature.
3604- gtk-button-images = 0
3605-
3606- # disable the annoying beep in editable controls
3607- gtk-error-bell = 0
3608-
3609- # enable/disable images in menus. most "stock" microsoft apps don't use these, except sparingly.
3610- # the office apps use them heavily, though.
3611- gtk-menu-images = 1
3612-
3613- # use the win32 button ordering instead of the GNOME HIG one, where applicable
3614- gtk-alternative-button-order = 1
3615-
3616- style "msw-default"
3617- {
3618- GtkWidget::interior-focus = 1
3619- GtkOptionMenu::indicator-size = { 9, 5 }
3620- GtkOptionMenu::indicator-spacing = { 7, 5, 2, 2 }
3621- GtkSpinButton::shadow-type = in
3622-
3623- # Owen and I disagree that these should be themable
3624- #GtkUIManager::add-tearoffs = 0
3625- #GtkComboBox::add-tearoffs = 0
3626-
3627- GtkComboBox::appears-as-list = 1
3628- GtkComboBox::focus-on-click = 0
3629-
3630- GOComboBox::add_tearoffs = 0
3631-
3632- GtkTreeView::allow-rules = 0
3633- GtkTreeView::expander-size = 12
3634-
3635- GtkExpander::expander-size = 12
3636-
3637- GtkScrolledWindow::scrollbar_spacing = 1
3638-
3639- GtkSeparatorMenuItem::horizontal-padding = 2
3640-
3641- engine "wimp"
3642- {
3643- }
3644- }
3645- class "*" style "msw-default"
3646- </makefile>
3647-
3648- </target>
3649-
3650-
3651- <!--
3652- ########################################################################
3653- ## T A R G E T : D I S T - I N K S C A P E
3654- ########################################################################
3655- -->
3656- <target name="dist-inkscape" depends="link,linkconsole,distbase"
3657- description="copy inkscape to the distribution directory">
3658-
3659- <!-- Create the distribution directory -->
3660- <copy todir="${dist}" file="${build}/inkscape.exe"/>
3661- <copy todir="${dist}" file="${build}/inkscape.dbg"/>
3662- <copy file="${build}/inkscape-console.exe" tofile="${dist}/inkscape.com"/>
3663- </target>
3664-
3665-
3666- <!--
3667- ########################################################################
3668- ## T A R G E T : D I S T - I N K V I E W
3669- ########################################################################
3670- -->
3671- <target name="dist-inkview" depends="linkinkview,distbase"
3672- description="copy inkview to the distribution directory">
3673-
3674- <!-- Create the distribution directory -->
3675- <copy todir="${dist}" file="${build}/inkview.exe"/>
3676- <copy todir="${dist}" file="${build}/inkview.dbg"/>
3677- </target>
3678-
3679-
3680- <!--
3681- ########################################################################
3682- ## T A R G E T : C H E C K
3683- ########################################################################
3684- -->
3685- <target name="check" depends="linkcxxtests,distbase"
3686- description="perform unit tests">
3687- <copy todir="${dist}" file="${build}/cxxtests.exe"/>
3688- <cxxtestrun command="${dist}/cxxtests" workingdir="${dist}" />
3689- </target>
3690-
3691- <!--
3692- ########################################################################
3693- ## T A R G E T : D I S T - A L L
3694- ########################################################################
3695- -->
3696- <target name="dist-all" depends="dist-inkscape,dist-inkview"
3697- description="generate the distribution, along with inkview" >
3698- </target>
3699-
3700-
3701-
3702-
3703- <!--
3704- ########################################################################
3705- ## T A R G E T : D I S T - A L L - C H E C K
3706- ########################################################################
3707- -->
3708- <target name="dist-all-check" depends="dist-all,check"
3709- description="generate the distribution, along with inkview and run cxxtests" >
3710- </target>
3711-
3712-
3713-
3714-
3715-
3716- <!--
3717- ########################################################################
3718- ## T A R G E T : C L E A N
3719- ########################################################################
3720- -->
3721- <target name="clean"
3722- description="clean up. deleting build and distro dirs" >
3723-
3724- <delete dir="${build}"/>
3725- <delete dir="${dist}"/>
3726- <delete file="build.dep"/>
3727- <delete file="config.h"/>
3728- <delete file="${src}/inkscape-version.cpp"/>
3729- <delete file="${src}/test-main.cpp"/>
3730- <delete file="${src}/test-src.cpp"/>
3731- <delete file="${src}/display/test-display.cpp"/>
3732- <delete file="${src}/helper/test-helper.cpp"/>
3733- <delete file="${src}/svg/test-svg.cpp"/>
3734- <delete file="${src}/util/test-util.cpp"/>
3735- <delete file="${src}/xml/test-xml.cpp"/>
3736-
3737- </target>
3738-
3739-
3740-
3741-</project>
3742-<!--
3743-########################################################################
3744-## E N D
3745-########################################################################
3746--->
3747-
3748
3749=== removed file 'buildtool.cpp'
3750--- buildtool.cpp 2016-03-30 00:04:39 +0000
3751+++ buildtool.cpp 1970-01-01 00:00:00 +0000
3752@@ -1,10333 +0,0 @@
3753-/**
3754- * Simple build automation tool.
3755- *
3756- * Authors:
3757- * Bob Jamison
3758- * Jasper van de Gronde
3759- * Johan Engelen
3760- *
3761- * Copyright (C) 2006-2008 Bob Jamison
3762- *
3763- * This library is free software; you can redistribute it and/or
3764- * modify it under the terms of the GNU Lesser General Public
3765- * License as published by the Free Software Foundation; either
3766- * version 2.1 of the License, or (at your option) any later version.
3767- *
3768- * This library is distributed in the hope that it will be useful,
3769- * but WITHOUT ANY WARRANTY; without even the implied warranty of
3770- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3771- * Lesser General Public License for more details.
3772- *
3773- * You should have received a copy of the GNU Lesser General Public
3774- * License along with this library; if not, write to the Free Software
3775- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
3776- */
3777-
3778-/**
3779- * To use this file, compile with:
3780- * <pre>
3781- * g++ -O3 buildtool.cpp -o btool.exe -fopenmp
3782- * (or whatever your compiler might be)
3783- * Then
3784- * btool
3785- * or
3786- * btool {target}
3787- *
3788- * Note: if you are using MinGW, and a not very recent version of it,
3789- * gettimeofday() might be missing. If so, just build this file with
3790- * this command:
3791- * g++ -O3 -DNEED_GETTIMEOFDAY buildtool.cpp -o btool.exe -fopenmp
3792- *
3793- */
3794-
3795-#define BUILDTOOL_VERSION "BuildTool v0.9.9multi"
3796-
3797-#include <stdio.h>
3798-#include <fcntl.h>
3799-#include <unistd.h>
3800-#include <stdarg.h>
3801-#include <sys/stat.h>
3802-#include <time.h>
3803-#include <sys/time.h>
3804-#include <utime.h>
3805-#include <dirent.h>
3806-
3807-#include <iostream>
3808-#include <list>
3809-#include <string>
3810-#include <map>
3811-#include <set>
3812-#include <vector>
3813-#include <algorithm>
3814-
3815-
3816-#ifdef __WIN32__
3817-#define WIN32_LEAN_AND_MEAN
3818-#define NOGDI
3819-#include <windows.h>
3820-#endif
3821-
3822-#include <errno.h>
3823-
3824-
3825-//########################################################################
3826-//# Definition of gettimeofday() for those who don't have it
3827-//########################################################################
3828-#ifdef NEED_GETTIMEOFDAY
3829-#include <sys/timeb.h>
3830-
3831-struct timezone {
3832- int tz_minuteswest; /* minutes west of Greenwich */
3833- int tz_dsttime; /* type of dst correction */
3834- };
3835-
3836-static int gettimeofday (struct timeval *tv, struct timezone *tz)
3837-{
3838- struct _timeb tb;
3839-
3840- if (!tv)
3841- return (-1);
3842-
3843- _ftime (&tb);
3844- tv->tv_sec = tb.time;
3845- tv->tv_usec = tb.millitm * 1000 + 500;
3846- if (tz)
3847- {
3848- tz->tz_minuteswest = -60 * _timezone;
3849- tz->tz_dsttime = _daylight;
3850- }
3851- return 0;
3852-}
3853-
3854-#endif
3855-
3856-
3857-
3858-
3859-
3860-
3861-
3862-namespace buildtool
3863-{
3864-
3865-
3866-
3867-
3868-//########################################################################
3869-//########################################################################
3870-//## R E G E X P
3871-//########################################################################
3872-//########################################################################
3873-
3874-/**
3875- * This is the SLRE (Super Light Regular Expression library)
3876- * SLRE is an ISO C library that implements a subset of Perl
3877- * regular expression syntax.
3878- *
3879- * See https://github.com/cesanta/slre for details
3880- *
3881- * It's clean code and small size allow us to
3882- * embed it in BuildTool without adding a dependency
3883- *
3884- */
3885-
3886-//begin slre.h
3887-
3888-/*
3889- * Copyright (c) 2004-2013 Sergey Lyubka <valenok@gmail.com>
3890- * Copyright (c) 2013 Cesanta Software Limited
3891- * All rights reserved
3892- *
3893- * This library is dual-licensed: you can redistribute it and/or modify
3894- * it under the terms of the GNU General Public License version 2 as
3895- * published by the Free Software Foundation. For the terms of this
3896- * license, see <http://www.gnu.org/licenses/>.
3897- *
3898- * You are free to use this library under the terms of the GNU General
3899- * Public License, but WITHOUT ANY WARRANTY; without even the implied
3900- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
3901- * See the GNU General Public License for more details.
3902- *
3903- * Alternatively, you can license this library under a commercial
3904- * license, as set out in <http://cesanta.com/products.html>.
3905- */
3906-
3907-/*
3908- * This is a regular expression library that implements a subset of Perl RE.
3909- * Please refer to README.md for a detailed reference.
3910- */
3911-
3912-#ifndef SLRE_HEADER_DEFINED
3913-#define SLRE_HEADER_DEFINED
3914-
3915-#ifdef __cplusplus
3916-extern "C" {
3917-#endif
3918-
3919-struct slre_cap {
3920- const char *ptr;
3921- int len;
3922-};
3923-
3924-
3925-int slre_match(const char *regexp, const char *buf, int buf_len,
3926- struct slre_cap *caps, int num_caps, int flags);
3927-
3928-/* Possible flags for slre_match() */
3929-enum { SLRE_IGNORE_CASE = 1 };
3930-
3931-
3932-/* slre_match() failure codes */
3933-#define SLRE_NO_MATCH -1
3934-#define SLRE_UNEXPECTED_QUANTIFIER -2
3935-#define SLRE_UNBALANCED_BRACKETS -3
3936-#define SLRE_INTERNAL_ERROR -4
3937-#define SLRE_INVALID_CHARACTER_SET -5
3938-#define SLRE_INVALID_METACHARACTER -6
3939-#define SLRE_CAPS_ARRAY_TOO_SMALL -7
3940-#define SLRE_TOO_MANY_BRANCHES -8
3941-#define SLRE_TOO_MANY_BRACKETS -9
3942-
3943-#ifdef __cplusplus
3944-}
3945-#endif
3946-
3947-#endif /* SLRE_HEADER_DEFINED */
3948-
3949-//end slre.h
3950-
3951-//start slre.c
3952-
3953-/*
3954- * Copyright (c) 2004-2013 Sergey Lyubka <valenok@gmail.com>
3955- * Copyright (c) 2013 Cesanta Software Limited
3956- * All rights reserved
3957- *
3958- * This library is dual-licensed: you can redistribute it and/or modify
3959- * it under the terms of the GNU General Public License version 2 as
3960- * published by the Free Software Foundation. For the terms of this
3961- * license, see <http://www.gnu.org/licenses/>.
3962- *
3963- * You are free to use this library under the terms of the GNU General
3964- * Public License, but WITHOUT ANY WARRANTY; without even the implied
3965- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
3966- * See the GNU General Public License for more details.
3967- *
3968- * Alternatively, you can license this library under a commercial
3969- * license, as set out in <http://cesanta.com/products.html>.
3970- */
3971-
3972-#include <stdio.h>
3973-#include <ctype.h>
3974-#include <string.h>
3975-
3976-//#include "slre.h"
3977-
3978-#define MAX_BRANCHES 100
3979-#define MAX_BRACKETS 100
3980-#define FAIL_IF(condition, error_code) if (condition) return (error_code)
3981-
3982-#ifndef ARRAY_SIZE
3983-#define ARRAY_SIZE(ar) (sizeof(ar) / sizeof((ar)[0]))
3984-#endif
3985-
3986-#ifdef SLRE_DEBUG
3987-#define DBG(x) printf x
3988-#else
3989-#define DBG(x)
3990-#endif
3991-
3992-struct bracket_pair {
3993- const char *ptr; /* Points to the first char after '(' in regex */
3994- int len; /* Length of the text between '(' and ')' */
3995- int branches; /* Index in the branches array for this pair */
3996- int num_branches; /* Number of '|' in this bracket pair */
3997-};
3998-
3999-struct branch {
4000- int bracket_index; /* index for 'struct bracket_pair brackets' */
4001- /* array defined below */
4002- const char *schlong; /* points to the '|' character in the regex */
4003-};
4004-
4005-struct regex_info {
4006- /*
4007- * Describes all bracket pairs in the regular expression.
4008- * First entry is always present, and grabs the whole regex.
4009- */
4010- struct bracket_pair brackets[MAX_BRACKETS];
4011- int num_brackets;
4012-
4013- /*
4014- * Describes alternations ('|' operators) in the regular expression.
4015- * Each branch falls into a specific branch pair.
4016- */
4017- struct branch branches[MAX_BRANCHES];
4018- int num_branches;
4019-
4020- /* Array of captures provided by the user */
4021- struct slre_cap *caps;
4022- int num_caps;
4023-
4024- /* E.g. SLRE_IGNORE_CASE. See enum below */
4025- int flags;
4026-};
4027-
4028-static int is_metacharacter(const unsigned char *s) {
4029- static const char *metacharacters = "^$().[]*+?|\\Ssdbfnrtv";
4030- return strchr(metacharacters, *s) != NULL;
4031-}
4032-
4033-static int op_len(const char *re) {
4034- return re[0] == '\\' && re[1] == 'x' ? 4 : re[0] == '\\' ? 2 : 1;
4035-}
4036-
4037-static int set_len(const char *re, int re_len) {
4038- int len = 0;
4039-
4040- while (len < re_len && re[len] != ']') {
4041- len += op_len(re + len);
4042- }
4043-
4044- return len <= re_len ? len + 1 : -1;
4045-}
4046-
4047-static int get_op_len(const char *re, int re_len) {
4048- return re[0] == '[' ? set_len(re + 1, re_len - 1) + 1 : op_len(re);
4049-}
4050-
4051-static int is_quantifier(const char *re) {
4052- return re[0] == '*' || re[0] == '+' || re[0] == '?';
4053-}
4054-
4055-static int toi(int x) {
4056- return isdigit(x) ? x - '0' : x - 'W';
4057-}
4058-
4059-static int hextoi(const unsigned char *s) {
4060- return (toi(tolower(s[0])) << 4) | toi(tolower(s[1]));
4061-}
4062-
4063-static int match_op(const unsigned char *re, const unsigned char *s,
4064- struct regex_info *info) {
4065- int result = 0;
4066- switch (*re) {
4067- case '\\':
4068- /* Metacharacters */
4069- switch (re[1]) {
4070- case 'S': FAIL_IF(isspace(*s), SLRE_NO_MATCH); result++; break;
4071- case 's': FAIL_IF(!isspace(*s), SLRE_NO_MATCH); result++; break;
4072- case 'd': FAIL_IF(!isdigit(*s), SLRE_NO_MATCH); result++; break;
4073- case 'b': FAIL_IF(*s != '\b', SLRE_NO_MATCH); result++; break;
4074- case 'f': FAIL_IF(*s != '\f', SLRE_NO_MATCH); result++; break;
4075- case 'n': FAIL_IF(*s != '\n', SLRE_NO_MATCH); result++; break;
4076- case 'r': FAIL_IF(*s != '\r', SLRE_NO_MATCH); result++; break;
4077- case 't': FAIL_IF(*s != '\t', SLRE_NO_MATCH); result++; break;
4078- case 'v': FAIL_IF(*s != '\v', SLRE_NO_MATCH); result++; break;
4079-
4080- case 'x':
4081- /* Match byte, \xHH where HH is hexadecimal byte representaion */
4082- FAIL_IF(hextoi(re + 2) != *s, SLRE_NO_MATCH);
4083- result++;
4084- break;
4085-
4086- default:
4087- /* Valid metacharacter check is done in bar() */
4088- FAIL_IF(re[1] != s[0], SLRE_NO_MATCH);
4089- result++;
4090- break;
4091- }
4092- break;
4093-
4094- case '|': FAIL_IF(1, SLRE_INTERNAL_ERROR); break;
4095- case '$': FAIL_IF(1, SLRE_NO_MATCH); break;
4096- case '.': result++; break;
4097-
4098- default:
4099- if (info->flags & SLRE_IGNORE_CASE) {
4100- FAIL_IF(tolower(*re) != tolower(*s), SLRE_NO_MATCH);
4101- } else {
4102- FAIL_IF(*re != *s, SLRE_NO_MATCH);
4103- }
4104- result++;
4105- break;
4106- }
4107-
4108- return result;
4109-}
4110-
4111-static int match_set(const char *re, int re_len, const char *s,
4112- struct regex_info *info) {
4113- int len = 0, result = -1, invert = re[0] == '^';
4114-
4115- if (invert) re++, re_len--;
4116-
4117- while (len <= re_len && re[len] != ']' && result <= 0) {
4118- /* Support character range */
4119- if (re[len] != '-' && re[len + 1] == '-' && re[len + 2] != ']' &&
4120- re[len + 2] != '\0') {
4121- result = info->flags & SLRE_IGNORE_CASE ?
4122- tolower(*s) >= tolower(re[len]) && tolower(*s) <= tolower(re[len + 2]) :
4123- *s >= re[len] && *s <= re[len + 2];
4124- len += 3;
4125- } else {
4126- result = match_op((unsigned char *) re + len, (unsigned char *) s, info);
4127- len += op_len(re + len);
4128- }
4129- }
4130- return (!invert && result > 0) || (invert && result <= 0) ? 1 : -1;
4131-}
4132-
4133-static int doh(const char *s, int s_len, struct regex_info *info, int bi);
4134-
4135-static int bar(const char *re, int re_len, const char *s, int s_len,
4136- struct regex_info *info, int bi) {
4137- /* i is offset in re, j is offset in s, bi is brackets index */
4138- int i, j, n, step;
4139-
4140- for (i = j = 0; i < re_len && j <= s_len; i += step) {
4141-
4142- /* Handle quantifiers. Get the length of the chunk. */
4143- step = re[i] == '(' ? info->brackets[bi + 1].len + 2 :
4144- get_op_len(re + i, re_len - i);
4145-
4146- DBG(("%s [%.*s] [%.*s] re_len=%d step=%d i=%d j=%d\n", __func__,
4147- re_len - i, re + i, s_len - j, s + j, re_len, step, i, j));
4148-
4149- FAIL_IF(is_quantifier(&re[i]), SLRE_UNEXPECTED_QUANTIFIER);
4150- FAIL_IF(step <= 0, SLRE_INVALID_CHARACTER_SET);
4151-
4152- if (i + step < re_len && is_quantifier(re + i + step)) {
4153- DBG(("QUANTIFIER: [%.*s]%c [%.*s]\n", step, re + i,
4154- re[i + step], s_len - j, s + j));
4155- if (re[i + step] == '?') {
4156- int result = bar(re + i, step, s + j, s_len - j, info, bi);
4157- j += result > 0 ? result : 0;
4158- i++;
4159- } else if (re[i + step] == '+' || re[i + step] == '*') {
4160- int j2 = j, nj = j, n1, n2 = -1, ni, non_greedy = 0;
4161-
4162- /* Points to the regexp code after the quantifier */
4163- ni = i + step + 1;
4164- if (ni < re_len && re[ni] == '?') {
4165- non_greedy = 1;
4166- ni++;
4167- }
4168-
4169- do {
4170- if ((n1 = bar(re + i, step, s + j2, s_len - j2, info, bi)) > 0) {
4171- j2 += n1;
4172- }
4173- if (re[i + step] == '+' && n1 < 0) break;
4174-
4175- if (ni >= re_len) {
4176- /* After quantifier, there is nothing */
4177- nj = j2;
4178- } else if ((n2 = bar(re + ni, re_len - ni, s + j2,
4179- s_len - j2, info, bi)) >= 0) {
4180- /* Regex after quantifier matched */
4181- nj = j2 + n2;
4182- }
4183- if (nj > j && non_greedy) break;
4184- } while (n1 > 0);
4185-
4186- /*
4187- * Even if we found one or more pattern, this branch will be executed,
4188- * changing the next captures.
4189- */
4190- if (n1 < 0 && n2 < 0 && re[i + step] == '*' &&
4191- (n2 = bar(re + ni, re_len - ni, s + j, s_len - j, info, bi)) > 0) {
4192- nj = j + n2;
4193- }
4194-
4195- DBG(("STAR/PLUS END: %d %d %d %d %d\n", j, nj, re_len - ni, n1, n2));
4196- FAIL_IF(re[i + step] == '+' && nj == j, SLRE_NO_MATCH);
4197-
4198- /* If while loop body above was not executed for the * quantifier, */
4199- /* make sure the rest of the regex matches */
4200- FAIL_IF(nj == j && ni < re_len && n2 < 0, SLRE_NO_MATCH);
4201-
4202- /* Returning here cause we've matched the rest of RE already */
4203- return nj;
4204- }
4205- continue;
4206- }
4207-
4208- if (re[i] == '[') {
4209- n = match_set(re + i + 1, re_len - (i + 2), s + j, info);
4210- DBG(("SET %.*s [%.*s] -> %d\n", step, re + i, s_len - j, s + j, n));
4211- FAIL_IF(n <= 0, SLRE_NO_MATCH);
4212- j += n;
4213- } else if (re[i] == '(') {
4214- n = SLRE_NO_MATCH;
4215- bi++;
4216- FAIL_IF(bi >= info->num_brackets, SLRE_INTERNAL_ERROR);
4217- DBG(("CAPTURING [%.*s] [%.*s] [%s]\n",
4218- step, re + i, s_len - j, s + j, re + i + step));
4219-
4220- if (re_len - (i + step) <= 0) {
4221- /* Nothing follows brackets */
4222- n = doh(s + j, s_len - j, info, bi);
4223- } else {
4224- int j2;
4225- for (j2 = 0; j2 <= s_len - j; j2++) {
4226- if ((n = doh(s + j, s_len - (j + j2), info, bi)) >= 0 &&
4227- bar(re + i + step, re_len - (i + step),
4228- s + j + n, s_len - (j + n), info, bi) >= 0) break;
4229- }
4230- }
4231-
4232- DBG(("CAPTURED [%.*s] [%.*s]:%d\n", step, re + i, s_len - j, s + j, n));
4233- FAIL_IF(n < 0, n);
4234- if (info->caps != NULL && n > 0) {
4235- info->caps[bi - 1].ptr = s + j;
4236- info->caps[bi - 1].len = n;
4237- }
4238- j += n;
4239- } else if (re[i] == '^') {
4240- FAIL_IF(j != 0, SLRE_NO_MATCH);
4241- } else if (re[i] == '$') {
4242- FAIL_IF(j != s_len, SLRE_NO_MATCH);
4243- } else {
4244- FAIL_IF(j >= s_len, SLRE_NO_MATCH);
4245- n = match_op((unsigned char *) (re + i), (unsigned char *) (s + j), info);
4246- FAIL_IF(n <= 0, n);
4247- j += n;
4248- }
4249- }
4250-
4251- return j;
4252-}
4253-
4254-/* Process branch points */
4255-static int doh(const char *s, int s_len, struct regex_info *info, int bi) {
4256- const struct bracket_pair *b = &info->brackets[bi];
4257- int i = 0, len, result;
4258- const char *p;
4259-
4260- do {
4261- p = i == 0 ? b->ptr : info->branches[b->branches + i - 1].schlong + 1;
4262- len = b->num_branches == 0 ? b->len :
4263- i == b->num_branches ? (int) (b->ptr + b->len - p) :
4264- (int) (info->branches[b->branches + i].schlong - p);
4265- DBG(("%s %d %d [%.*s] [%.*s]\n", __func__, bi, i, len, p, s_len, s));
4266- result = bar(p, len, s, s_len, info, bi);
4267- DBG(("%s <- %d\n", __func__, result));
4268- } while (result <= 0 && i++ < b->num_branches); /* At least 1 iteration */
4269-
4270- return result;
4271-}
4272-
4273-static int baz(const char *s, int s_len, struct regex_info *info) {
4274- int i, result = -1, is_anchored = info->brackets[0].ptr[0] == '^';
4275-
4276- for (i = 0; i <= s_len; i++) {
4277- result = doh(s + i, s_len - i, info, 0);
4278- if (result >= 0) {
4279- result += i;
4280- break;
4281- }
4282- if (is_anchored) break;
4283- }
4284-
4285- return result;
4286-}
4287-
4288-static void setup_branch_points(struct regex_info *info) {
4289- int i, j;
4290- struct branch tmp;
4291-
4292- /* First, sort branches. Must be stable, no qsort. Use bubble algo. */
4293- for (i = 0; i < info->num_branches; i++) {
4294- for (j = i + 1; j < info->num_branches; j++) {
4295- if (info->branches[i].bracket_index > info->branches[j].bracket_index) {
4296- tmp = info->branches[i];
4297- info->branches[i] = info->branches[j];
4298- info->branches[j] = tmp;
4299- }
4300- }
4301- }
4302-
4303- /*
4304- * For each bracket, set their branch points. This way, for every bracket
4305- * (i.e. every chunk of regex) we know all branch points before matching.
4306- */
4307- for (i = j = 0; i < info->num_brackets; i++) {
4308- info->brackets[i].num_branches = 0;
4309- info->brackets[i].branches = j;
4310- while (j < info->num_branches && info->branches[j].bracket_index == i) {
4311- info->brackets[i].num_branches++;
4312- j++;
4313- }
4314- }
4315-}
4316-
4317-static int foo(const char *re, int re_len, const char *s, int s_len,
4318- struct regex_info *info) {
4319- int i, step, depth = 0;
4320-
4321- /* First bracket captures everything */
4322- info->brackets[0].ptr = re;
4323- info->brackets[0].len = re_len;
4324- info->num_brackets = 1;
4325-
4326- /* Make a single pass over regex string, memorize brackets and branches */
4327- for (i = 0; i < re_len; i += step) {
4328- step = get_op_len(re + i, re_len - i);
4329-
4330- if (re[i] == '|') {
4331- FAIL_IF(info->num_branches >= (int) ARRAY_SIZE(info->branches),
4332- SLRE_TOO_MANY_BRANCHES);
4333- info->branches[info->num_branches].bracket_index =
4334- info->brackets[info->num_brackets - 1].len == -1 ?
4335- info->num_brackets - 1 : depth;
4336- info->branches[info->num_branches].schlong = &re[i];
4337- info->num_branches++;
4338- } else if (re[i] == '\\') {
4339- FAIL_IF(i >= re_len - 1, SLRE_INVALID_METACHARACTER);
4340- if (re[i + 1] == 'x') {
4341- /* Hex digit specification must follow */
4342- FAIL_IF(re[i + 1] == 'x' && i >= re_len - 3,
4343- SLRE_INVALID_METACHARACTER);
4344- FAIL_IF(re[i + 1] == 'x' && !(isxdigit(re[i + 2]) &&
4345- isxdigit(re[i + 3])), SLRE_INVALID_METACHARACTER);
4346- } else {
4347- FAIL_IF(!is_metacharacter((unsigned char *) re + i + 1),
4348- SLRE_INVALID_METACHARACTER);
4349- }
4350- } else if (re[i] == '(') {
4351- FAIL_IF(info->num_brackets >= (int) ARRAY_SIZE(info->brackets),
4352- SLRE_TOO_MANY_BRACKETS);
4353- depth++; /* Order is important here. Depth increments first. */
4354- info->brackets[info->num_brackets].ptr = re + i + 1;
4355- info->brackets[info->num_brackets].len = -1;
4356- info->num_brackets++;
4357- FAIL_IF(info->num_caps > 0 && info->num_brackets - 1 > info->num_caps,
4358- SLRE_CAPS_ARRAY_TOO_SMALL);
4359- } else if (re[i] == ')') {
4360- int ind = info->brackets[info->num_brackets - 1].len == -1 ?
4361- info->num_brackets - 1 : depth;
4362- info->brackets[ind].len = (int) (&re[i] - info->brackets[ind].ptr);
4363- DBG(("SETTING BRACKET %d [%.*s]\n",
4364- ind, info->brackets[ind].len, info->brackets[ind].ptr));
4365- depth--;
4366- FAIL_IF(depth < 0, SLRE_UNBALANCED_BRACKETS);
4367- FAIL_IF(i > 0 && re[i - 1] == '(', SLRE_NO_MATCH);
4368- }
4369- }
4370-
4371- FAIL_IF(depth != 0, SLRE_UNBALANCED_BRACKETS);
4372- setup_branch_points(info);
4373-
4374- return baz(s, s_len, info);
4375-}
4376-
4377-int slre_match(const char *regexp, const char *s, int s_len,
4378- struct slre_cap *caps, int num_caps, int flags) {
4379- struct regex_info info;
4380-
4381- /* Initialize info structure */
4382- info.flags = flags;
4383- info.num_brackets = info.num_branches = 0;
4384- info.num_caps = num_caps;
4385- info.caps = caps;
4386-
4387- DBG(("========================> [%s] [%.*s]\n", regexp, s_len, s));
4388- return foo(regexp, (int) strlen(regexp), s, s_len, &info);
4389-}
4390-
4391-//end slre.c
4392-
4393-//########################################################################
4394-//########################################################################
4395-//## E N D R E G E X P
4396-//########################################################################
4397-//########################################################################
4398-
4399-
4400-
4401-
4402-
4403-//########################################################################
4404-//########################################################################
4405-//## X M L
4406-//########################################################################
4407-//########################################################################
4408-
4409-// Note: This mini-dom library comes from Pedro, another little project
4410-// of mine.
4411-
4412-typedef std::string String;
4413-typedef unsigned int XMLCh;
4414-
4415-
4416-class Namespace
4417-{
4418-public:
4419- Namespace()
4420- {}
4421-
4422- Namespace(const String &prefixArg, const String &namespaceURIArg)
4423- {
4424- prefix = prefixArg;
4425- namespaceURI = namespaceURIArg;
4426- }
4427-
4428- Namespace(const Namespace &other)
4429- {
4430- assign(other);
4431- }
4432-
4433- Namespace &operator=(const Namespace &other)
4434- {
4435- assign(other);
4436- return *this;
4437- }
4438-
4439- virtual ~Namespace()
4440- {}
4441-
4442- virtual String getPrefix()
4443- { return prefix; }
4444-
4445- virtual String getNamespaceURI()
4446- { return namespaceURI; }
4447-
4448-protected:
4449-
4450- void assign(const Namespace &other)
4451- {
4452- prefix = other.prefix;
4453- namespaceURI = other.namespaceURI;
4454- }
4455-
4456- String prefix;
4457- String namespaceURI;
4458-
4459-};
4460-
4461-class Attribute
4462-{
4463-public:
4464- Attribute()
4465- {}
4466-
4467- Attribute(const String &nameArg, const String &valueArg)
4468- {
4469- name = nameArg;
4470- value = valueArg;
4471- }
4472-
4473- Attribute(const Attribute &other)
4474- {
4475- assign(other);
4476- }
4477-
4478- Attribute &operator=(const Attribute &other)
4479- {
4480- assign(other);
4481- return *this;
4482- }
4483-
4484- virtual ~Attribute()
4485- {}
4486-
4487- virtual String getName()
4488- { return name; }
4489-
4490- virtual String getValue()
4491- { return value; }
4492-
4493-protected:
4494-
4495- void assign(const Attribute &other)
4496- {
4497- name = other.name;
4498- value = other.value;
4499- }
4500-
4501- String name;
4502- String value;
4503-
4504-};
4505-
4506-
4507-class Element
4508-{
4509-friend class Parser;
4510-
4511-public:
4512- Element()
4513- {
4514- init();
4515- }
4516-
4517- Element(const String &nameArg)
4518- {
4519- init();
4520- name = nameArg;
4521- }
4522-
4523- Element(const String &nameArg, const String &valueArg)
4524- {
4525- init();
4526- name = nameArg;
4527- value = valueArg;
4528- }
4529-
4530- Element(const Element &other)
4531- {
4532- assign(other);
4533- }
4534-
4535- Element &operator=(const Element &other)
4536- {
4537- assign(other);
4538- return *this;
4539- }
4540-
4541- virtual Element *clone();
4542-
4543- virtual ~Element()
4544- {
4545- for (std::size_t i=0 ; i<children.size() ; i++)
4546- delete children[i];
4547- }
4548-
4549- virtual String getName()
4550- { return name; }
4551-
4552- virtual String getValue()
4553- { return value; }
4554-
4555- Element *getParent()
4556- { return parent; }
4557-
4558- std::vector<Element *> getChildren()
4559- { return children; }
4560-
4561- std::vector<Element *> findElements(const String &name);
4562-
4563- String getAttribute(const String &name);
4564-
4565- std::vector<Attribute> &getAttributes()
4566- { return attributes; }
4567-
4568- String getTagAttribute(const String &tagName, const String &attrName);
4569-
4570- String getTagValue(const String &tagName);
4571-
4572- void addChild(Element *child);
4573-
4574- void addAttribute(const String &name, const String &value);
4575-
4576- void addNamespace(const String &prefix, const String &namespaceURI);
4577-
4578-
4579- /**
4580- * Prettyprint an XML tree to an output stream. Elements are indented
4581- * according to element hierarchy.
4582- * @param f a stream to receive the output
4583- * @param elem the element to output
4584- */
4585- void writeIndented(FILE *f);
4586-
4587- /**
4588- * Prettyprint an XML tree to standard output. This is the equivalent of
4589- * writeIndented(stdout).
4590- * @param elem the element to output
4591- */
4592- void print();
4593-
4594- int getLine()
4595- { return line; }
4596-
4597-protected:
4598-
4599- void init()
4600- {
4601- parent = NULL;
4602- line = 0;
4603- }
4604-
4605- void assign(const Element &other)
4606- {
4607- parent = other.parent;
4608- children = other.children;
4609- attributes = other.attributes;
4610- namespaces = other.namespaces;
4611- name = other.name;
4612- value = other.value;
4613- line = other.line;
4614- }
4615-
4616- void findElementsRecursive(std::vector<Element *>&res, const String &name);
4617-
4618- void writeIndentedRecursive(FILE *f, int indent);
4619-
4620- Element *parent;
4621-
4622- std::vector<Element *>children;
4623-
4624- std::vector<Attribute> attributes;
4625- std::vector<Namespace> namespaces;
4626-
4627- String name;
4628- String value;
4629-
4630- int line;
4631-};
4632-
4633-
4634-
4635-
4636-
4637-class Parser
4638-{
4639-public:
4640- /**
4641- * Constructor
4642- */
4643- Parser()
4644- { init(); }
4645-
4646- virtual ~Parser()
4647- {}
4648-
4649- /**
4650- * Parse XML in a char buffer.
4651- * @param buf a character buffer to parse
4652- * @param pos position to start parsing
4653- * @param len number of chars, from pos, to parse.
4654- * @return a pointer to the root of the XML document;
4655- */
4656- Element *parse(const char *buf,int pos,int len);
4657-
4658- /**
4659- * Parse XML in a char buffer.
4660- * @param buf a character buffer to parse
4661- * @param pos position to start parsing
4662- * @param len number of chars, from pos, to parse.
4663- * @return a pointer to the root of the XML document;
4664- */
4665- Element *parse(const String &buf);
4666-
4667- /**
4668- * Parse a named XML file. The file is loaded like a data file;
4669- * the original format is not preserved.
4670- * @param fileName the name of the file to read
4671- * @return a pointer to the root of the XML document;
4672- */
4673- Element *parseFile(const String &fileName);
4674-
4675- /**
4676- * Utility method to preprocess a string for XML
4677- * output, escaping its entities.
4678- * @param str the string to encode
4679- */
4680- static String encode(const String &str);
4681-
4682- /**
4683- * Removes whitespace from beginning and end of a string
4684- */
4685- String trim(const String &s);
4686-
4687-private:
4688-
4689- void init()
4690- {
4691- keepGoing = true;
4692- currentNode = NULL;
4693- parselen = 0;
4694- parsebuf = NULL;
4695- currentPosition = 0;
4696- }
4697-
4698- int countLines(int begin, int end);
4699-
4700- void getLineAndColumn(int pos, int *lineNr, int *colNr);
4701-
4702- void error(const char *fmt, ...);
4703-
4704- int peek(int pos);
4705-
4706- int match(int pos, const char *text);
4707-
4708- int skipwhite(int p);
4709-
4710- int getWord(int p0, String &buf);
4711-
4712- int getQuoted(int p0, String &buf, int do_i_parse);
4713-
4714- int parseVersion(int p0);
4715-
4716- int parseDoctype(int p0);
4717-
4718- int parseElement(int p0, Element *par,int depth);
4719-
4720- Element *parse(XMLCh *buf,int pos,int len);
4721-
4722- bool keepGoing;
4723- Element *currentNode;
4724- int parselen;
4725- XMLCh *parsebuf;
4726- String cdatabuf;
4727- int currentPosition;
4728-};
4729-
4730-
4731-
4732-
4733-//########################################################################
4734-//# E L E M E N T
4735-//########################################################################
4736-
4737-Element *Element::clone()
4738-{
4739- Element *elem = new Element(name, value);
4740- elem->parent = parent;
4741- elem->attributes = attributes;
4742- elem->namespaces = namespaces;
4743- elem->line = line;
4744-
4745- std::vector<Element *>::iterator iter;
4746- for (iter = children.begin(); iter != children.end() ; iter++)
4747- {
4748- elem->addChild((*iter)->clone());
4749- }
4750- return elem;
4751-}
4752-
4753-
4754-void Element::findElementsRecursive(std::vector<Element *>&res, const String &name)
4755-{
4756- if (getName() == name)
4757- {
4758- res.push_back(this);
4759- }
4760- for (std::size_t i=0; i<children.size() ; i++)
4761- children[i]->findElementsRecursive(res, name);
4762-}
4763-
4764-std::vector<Element *> Element::findElements(const String &name)
4765-{
4766- std::vector<Element *> res;
4767- findElementsRecursive(res, name);
4768- return res;
4769-}
4770-
4771-String Element::getAttribute(const String &name)
4772-{
4773- for (std::size_t i=0 ; i<attributes.size() ; i++)
4774- if (attributes[i].getName() ==name)
4775- return attributes[i].getValue();
4776- return "";
4777-}
4778-
4779-String Element::getTagAttribute(const String &tagName, const String &attrName)
4780-{
4781- std::vector<Element *>elems = findElements(tagName);
4782- if (elems.size() <1)
4783- return "";
4784- String res = elems[0]->getAttribute(attrName);
4785- return res;
4786-}
4787-
4788-String Element::getTagValue(const String &tagName)
4789-{
4790- std::vector<Element *>elems = findElements(tagName);
4791- if (elems.size() <1)
4792- return "";
4793- String res = elems[0]->getValue();
4794- return res;
4795-}
4796-
4797-void Element::addChild(Element *child)
4798-{
4799- if (!child)
4800- return;
4801- child->parent = this;
4802- children.push_back(child);
4803-}
4804-
4805-
4806-void Element::addAttribute(const String &name, const String &value)
4807-{
4808- Attribute attr(name, value);
4809- attributes.push_back(attr);
4810-}
4811-
4812-void Element::addNamespace(const String &prefix, const String &namespaceURI)
4813-{
4814- Namespace ns(prefix, namespaceURI);
4815- namespaces.push_back(ns);
4816-}
4817-
4818-void Element::writeIndentedRecursive(FILE *f, int indent)
4819-{
4820- int i;
4821- if (!f)
4822- return;
4823- //Opening tag, and attributes
4824- for (i=0;i<indent;i++)
4825- fputc(' ',f);
4826- fprintf(f,"<%s",name.c_str());
4827- for (std::size_t i=0 ; i<attributes.size() ; i++)
4828- {
4829- fprintf(f," %s=\"%s\"",
4830- attributes[i].getName().c_str(),
4831- attributes[i].getValue().c_str());
4832- }
4833- for (std::size_t i=0 ; i<namespaces.size() ; i++)
4834- {
4835- fprintf(f," xmlns:%s=\"%s\"",
4836- namespaces[i].getPrefix().c_str(),
4837- namespaces[i].getNamespaceURI().c_str());
4838- }
4839- fprintf(f,">\n");
4840-
4841- //Between the tags
4842- if (value.size() > 0)
4843- {
4844- for (int i=0;i<indent;i++)
4845- fputc(' ', f);
4846- fprintf(f," %s\n", value.c_str());
4847- }
4848-
4849- for (std::size_t i=0 ; i<children.size() ; i++)
4850- children[i]->writeIndentedRecursive(f, indent+2);
4851-
4852- //Closing tag
4853- for (int i=0; i<indent; i++)
4854- fputc(' ',f);
4855- fprintf(f,"</%s>\n", name.c_str());
4856-}
4857-
4858-void Element::writeIndented(FILE *f)
4859-{
4860- writeIndentedRecursive(f, 0);
4861-}
4862-
4863-void Element::print()
4864-{
4865- writeIndented(stdout);
4866-}
4867-
4868-
4869-//########################################################################
4870-//# P A R S E R
4871-//########################################################################
4872-
4873-
4874-
4875-typedef struct
4876- {
4877- const char *escaped;
4878- char value;
4879- } EntityEntry;
4880-
4881-static EntityEntry entities[] =
4882-{
4883- { "&amp;" , '&' },
4884- { "&lt;" , '<' },
4885- { "&gt;" , '>' },
4886- { "&apos;", '\'' },
4887- { "&quot;", '"' },
4888- { NULL , '\0' }
4889-};
4890-
4891-
4892-
4893-/**
4894- * Removes whitespace from beginning and end of a string
4895- */
4896-String Parser::trim(const String &s)
4897-{
4898- if (s.size() < 1)
4899- return s;
4900-
4901- //Find first non-ws char
4902- std::size_t begin = 0;
4903- for ( ; begin < s.size() ; begin++)
4904- {
4905- if (!isspace(s[begin]))
4906- break;
4907- }
4908-
4909- //Find first non-ws char, going in reverse
4910- std::size_t end = s.size() - 1;
4911- for ( ; end > begin ; end--)
4912- {
4913- if (!isspace(s[end]))
4914- break;
4915- }
4916- //trace("begin:%d end:%d", begin, end);
4917-
4918- String res = s.substr(begin, end-begin+1);
4919- return res;
4920-}
4921-
4922-
4923-int Parser::countLines(int begin, int end)
4924-{
4925- int count = 0;
4926- for (int i=begin ; i<end ; i++)
4927- {
4928- XMLCh ch = parsebuf[i];
4929- if (ch == '\n' || ch == '\r')
4930- count++;
4931- }
4932- return count;
4933-}
4934-
4935-
4936-void Parser::getLineAndColumn(int pos, int *lineNr, int *colNr)
4937-{
4938- int line = 1;
4939- int col = 1;
4940- for (long i=0 ; i<pos ; i++)
4941- {
4942- XMLCh ch = parsebuf[i];
4943- if (ch == '\n' || ch == '\r')
4944- {
4945- col = 0;
4946- line ++;
4947- }
4948- else
4949- col++;
4950- }
4951- *lineNr = line;
4952- *colNr = col;
4953-
4954-}
4955-
4956-
4957-void Parser::error(const char *fmt, ...)
4958-{
4959- int lineNr;
4960- int colNr;
4961- getLineAndColumn(currentPosition, &lineNr, &colNr);
4962- va_list args;
4963- fprintf(stderr, "xml error at line %d, column %d:", lineNr, colNr);
4964- va_start(args,fmt);
4965- vfprintf(stderr,fmt,args);
4966- va_end(args) ;
4967- fprintf(stderr, "\n");
4968-}
4969-
4970-
4971-
4972-int Parser::peek(int pos)
4973-{
4974- if (pos >= parselen)
4975- return -1;
4976- currentPosition = pos;
4977- int ch = parsebuf[pos];
4978- //printf("ch:%c\n", ch);
4979- return ch;
4980-}
4981-
4982-
4983-
4984-String Parser::encode(const String &str)
4985-{
4986- String ret;
4987- for (std::size_t i=0 ; i<str.size() ; i++)
4988- {
4989- XMLCh ch = (XMLCh)str[i];
4990- if (ch == '&')
4991- ret.append("&amp;");
4992- else if (ch == '<')
4993- ret.append("&lt;");
4994- else if (ch == '>')
4995- ret.append("&gt;");
4996- else if (ch == '\'')
4997- ret.append("&apos;");
4998- else if (ch == '"')
4999- ret.append("&quot;");
5000- else
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches