Code

Refactoring out common code
[inkscape.git] / src / Makefile_insert
1 ## Makefile.am fragment, included by src/Makefile.am.
4 # ################################################
5 #
6 #  E X T R A 
7 #
8 # ################################################
10 if PLATFORM_WIN32
11 win32_sources = winmain.cpp registrytool.cpp registrytool.h
12 win32ldflags = -lcomdlg32
13 endif 
15 if INKJAR
16 inkjar_dir = inkjar
17 inkjar_libs = inkjar/libinkjar.a
18 endif
21 # ################################################
22 #
23 #  I N K S C A P E
24 #
25 # ################################################
27 # libinkpre.a: any object that's sharable between inkscape & inkview,
28 # and isn't needed by object files in subdirectories (i.e. libinkpre.a
29 # comes before subdirectory libraries on the link line).
30 #
31 # Excludes winmain.cpp (a gui wrapper around main): I'm guessing that
32 # it needs to be explicitly listed as a source of each graphical
33 # binary: it isn't (to my knowledge) called by main (whether directly
34 # or indirectly), so I don't think that putting it in a library will
35 # suffice to get it linked in.  Windows devel please confirm.  -- pjrm.
37 libinkpre_a_SOURCES =   \
38         algorithms/find-last-if.h       \
39         algorithms/longest-common-suffix.h      \
40         approx-equal.h remove-last.h    \
41         arc-context.cpp arc-context.h   \
42         attributes.cpp attributes.h     \
43         axis-manip.cpp axis-manip.h     \
44         bad-uri-exception.h     \
45         box3d.cpp box3d.h \
46         box3d-context.cpp box3d-context.h \
47         box3d-side.cpp box3d-side.h \
48         brokenimage.xpm \
49         color-rgba.h    \
50         color-profile.cpp color-profile.h       \
51         color-profile-fns.h     \
52         common-context.cpp common-context.h\
53         conditions.cpp conditions.h\
54         conn-avoid-ref.cpp conn-avoid-ref.h     \
55         connector-context.cpp connector-context.h       \
56         connection-pool.h \
57         console-output-undo-observer.h console-output-undo-observer.cpp \
58         context-fns.cpp context-fns.h \
59         desktop-affine.cpp desktop-affine.h     \
60         desktop-events.cpp desktop-events.h     \
61         desktop-handles.cpp desktop-handles.h   \
62         desktop-style.cpp desktop-style.h       \
63         desktop.cpp desktop.h   \
64         device-manager.cpp      \
65         device-manager.h        \
66         document-undo.cpp       \
67         document.cpp document.h document-private.h      \
68         document-subset.cpp document-subset.h   \
69         doxygen-main.cpp \
70         draw-anchor.cpp \
71         draw-anchor.h   \
72         draw-context.cpp draw-context.h \
73         dropper-context.cpp dropper-context.h   \
74         dyna-draw-context.cpp dyna-draw-context.h       \
75         enums.h \
76         eraser-context.cpp eraser-context.h     \
77         event-context.cpp event-context.h       \
78         event-log.cpp event-log.h event.h      \
79         extract-uri.cpp extract-uri.h   \
80         file.cpp file.h \
81         filter-chemistry.cpp filter-chemistry.h \
82         filter-enums.cpp filter-enums.h \
83         flood-context.cpp flood-context.h       \
84         fontsize-expansion.cpp fontsize-expansion.h     \
85         forward.h       \
86         gradient-context.cpp gradient-context.h \
87         gradient-drag.cpp gradient-drag.h \
88         help.cpp help.h \
89         helper-fns.h \
90         icon-size.h \
91         ige-mac-menu.h ige-mac-menu.c \
92         inkscape-stock.cpp inkscape-stock.h\
93         inkscape.cpp inkscape.h inkscape-private.h      \
94         interface.cpp interface.h       \
95         isnan.h isinf.h \
96         isnormal.h \
97         knot-enums.h    \
98         knot-holder-entity.h    \
99         knot.cpp knot.h \
100         knotholder.cpp knotholder.h     \
101         layer-fns.cpp layer-fns.h       \
102         layer-manager.cpp layer-manager.h       \
103         line-geometry.cpp line-geometry.h       \
104         macros.h        \
105         main-cmdlineact.cpp main-cmdlineact.h \
106         media.cpp media.h       \
107         message-context.cpp message-context.h \
108         message-stack.cpp message-stack.h \
109         message.h \
110         mod360.cpp mod360.h     \
111         modifier-fns.h  \
112         node-context.cpp node-context.h \
113         nodepath.cpp nodepath.h \
114         object-edit.cpp object-edit.h   \
115         object-hierarchy.cpp object-hierarchy.h \
116         ui/context-menu.cpp \
117         ui/context-menu.h       \
118         path-chemistry.cpp path-chemistry.h     \
119         path-prefix.h   \
120         pen-context.cpp \
121         pen-context.h   \
122         pencil-context.cpp      \
123         pencil-context.h        \
124         persp3d.cpp persp3d.h   \
125         persp3d-reference.cpp persp3d-reference.h       \
126         perspective-line.cpp perspective-line.h \
127         preferences.cpp preferences.h \
128         preferences-skeleton.h  \
129         menus-skeleton.h        \
130         prefix.cpp      \
131         prefix.h        \
132         prefs-utils.cpp \
133         prefs-utils.h   \
134         print.cpp print.h       \
135         profile-manager.cpp     \
136         profile-manager.h       \
137         proj_pt.cpp proj_pt.h   \
138         rect-context.cpp rect-context.h \
139         require-config.h \
140         rubberband.cpp rubberband.h     \
141         satisfied-guide-cns.cpp satisfied-guide-cns.h   \
142         selcue.cpp selcue.h \
143         select-context.cpp select-context.h     \
144         selection-chemistry.cpp selection-chemistry.h   \
145         selection-describer.cpp selection-describer.h   \
146         selection.cpp selection.h       \
147         seltrans-handles.cpp seltrans-handles.h \
148         seltrans.cpp seltrans.h \
149         shape-editor.cpp shape-editor.h \
150         shortcuts.cpp shortcuts.h       \
151         snap.cpp snap.h \
152         snapped-line.cpp snapped-line.h \
153         snapped-point.cpp snapped-point.h \
154         snapper.cpp snapper.h \
155         syseq.h \
156         transf_mat_3x4.cpp transf_mat_3x4.h     \
157         line-snapper.cpp line-snapper.h \
158         guide-snapper.cpp guide-snapper.h \
159         object-snapper.cpp object-snapper.h \
160         sp-anchor.cpp sp-anchor.h       \
161         sp-clippath.cpp sp-clippath.h   \
162         sp-conn-end-pair.cpp sp-conn-end-pair.h \
163         sp-conn-end.cpp sp-conn-end.h   \
164         sp-cursor.cpp sp-cursor.h       \
165         sp-defs.cpp sp-defs.h   \
166         sp-ellipse.cpp sp-ellipse.h     \
167         sp-feblend.cpp sp-feblend.h     \
168         sp-feblend-fns.h        \
169         sp-fecolormatrix.cpp sp-fecolormatrix.h \
170         sp-fecolormatrix-fns.h  \
171         sp-fecomponenttransfer.cpp sp-fecomponenttransfer.h     \
172         sp-fecomponenttransfer-funcnode.cpp sp-fecomponenttransfer-funcnode.h   \
173         sp-fecomponenttransfer-fns.h    \
174         sp-fecomposite.cpp sp-fecomposite.h     \
175         sp-fecomposite-fns.h    \
176         sp-feconvolvematrix.cpp sp-feconvolvematrix.h   \
177         sp-feconvolvematrix-fns.h       \
178         sp-fediffuselighting.cpp sp-fediffuselighting.h \
179         sp-fediffuselighting-fns.h      \
180         sp-fedisplacementmap.cpp sp-fedisplacementmap.h \
181         sp-fedisplacementmap-fns.h      \
182         sp-fedistantlight.cpp sp-fedistantlight.h \
183         sp-feflood.cpp sp-feflood.h     \
184         sp-feflood-fns.h        \
185         sp-feimage.cpp sp-feimage.h     \
186         sp-feimage-fns.h        \
187         sp-femerge.cpp sp-femerge.h     \
188         sp-femerge-fns.h        \
189         sp-femergenode.cpp sp-femergenode.h \
190         sp-femorphology.cpp sp-femorphology.h   \
191         sp-femorphology-fns.h   \
192         sp-feoffset.cpp sp-feoffset.h   \
193         sp-feoffset-fns.h       \
194         sp-fepointlight.cpp sp-fepointlight.h \
195         sp-fespecularlighting.cpp sp-fespecularlighting.h       \
196         sp-fespecularlighting-fns.h     \
197         sp-fespotlight.cpp sp-fespotlight.h \
198         sp-fetile.cpp sp-fetile.h       \
199         sp-fetile-fns.h \
200         sp-feturbulence.cpp sp-feturbulence.h   \
201         sp-feturbulence-fns.h   \
202         sp-filter-fns.h \
203         sp-filter-primitive.cpp \
204         sp-filter-primitive.h   \
205         sp-filter-reference.cpp \
206         sp-filter-reference.h   \
207         sp-filter-units.h       \
208         sp-filter.cpp sp-filter.h number-opt-number.h   \
209         sp-flowdiv.h sp-flowdiv.cpp \
210         sp-flowregion.h sp-flowregion.cpp \
211         sp-flowtext.h sp-flowtext.cpp \
212         sp-font.cpp sp-font.h \
213         sp-font-face.cpp sp-font-face.h \
214         sp-glyph.cpp sp-glyph.h \
215         sp-missing-glyph.cpp sp-missing-glyph.h \
216         sp-glyph-kerning.cpp sp-glyph-kerning.h \
217         sp-gaussian-blur.cpp sp-gaussian-blur.h \
218         sp-gaussian-blur-fns.h  \
219         sp-gradient-fns.h       \
220         sp-gradient-reference.cpp       \
221         sp-gradient-reference.h \
222         sp-gradient-spread.h    \
223         sp-gradient-units.h     \
224         sp-gradient-vector.h    \
225         sp-gradient.cpp sp-gradient.h   \
226         sp-guide-attachment.h   \
227         sp-guide-constraint.h   \
228         sp-guide.cpp sp-guide.h \
229         sp-image.cpp sp-image.h \
230         sp-item-group.cpp sp-item-group.h       \
231         sp-item-notify-moveto.cpp sp-item-notify-moveto.h       \
232         sp-item-rm-unsatisfied-cns.cpp sp-item-rm-unsatisfied-cns.h     \
233         sp-item-transform.cpp sp-item-transform.h       \
234         sp-item-update-cns.cpp sp-item-update-cns.h     \
235         sp-item.cpp sp-item.h   \
236         sp-line.cpp sp-line.h   \
237         sp-linear-gradient-fns.h        \
238         sp-linear-gradient.h    \
239         sp-lpe-item.cpp sp-lpe-item.h   \
240         sp-marker-loc.h \
241         marker.cpp marker.h     \
242         sp-mask.cpp sp-mask.h   \
243         sp-metadata.cpp sp-metadata.h   \
244         sp-metric.h     \
245         sp-metrics.cpp sp-metrics.h     \
246         sp-namedview.cpp sp-namedview.h \
247         sp-object-group.cpp sp-object-group.h   \
248         sp-object-repr.cpp sp-object-repr.h     \
249         sp-object.cpp sp-object.h       \
250         sp-offset.cpp sp-offset.h       \
251         sp-paint-server.cpp sp-paint-server.h   \
252         sp-path.cpp sp-path.h   \
253         sp-pattern.cpp sp-pattern.h     \
254         sp-polygon.cpp sp-polygon.h     \
255         sp-polyline.cpp sp-polyline.h   \
256         sp-radial-gradient-fns.h        \
257         sp-radial-gradient.h    \
258         sp-rect.cpp sp-rect.h   \
259         sp-root.cpp sp-root.h   \
260         sp-shape.cpp sp-shape.h \
261         sp-spiral.cpp sp-spiral.h       \
262         sp-star.cpp sp-star.h   \
263         sp-stop-fns.h   \
264         sp-stop.h       \
265         sp-string.cpp sp-string.h       \
266         sp-symbol.cpp sp-symbol.h       \
267         sp-switch.cpp sp-switch.h\
268         sp-text.cpp sp-text.h   \
269         sp-textpath.h   \
270         sp-tref-reference.cpp sp-tref-reference.h \
271         sp-tref.cpp sp-tref.h \
272         sp-tspan.cpp sp-tspan.h \
273         sp-use-reference.cpp sp-use-reference.h \
274         sp-use.cpp sp-use.h     \
275         spiral-context.cpp spiral-context.h     \
276         splivarot.cpp splivarot.h       \
277         star-context.cpp star-context.h \
278         streams-gzip.h streams-gzip.cpp \
279         streams-handles.h streams-handles.cpp   \
280         streams-jar.h streams-jar.cpp   \
281         streams-zlib.h streams-zlib.cpp \
282         style.cpp style.h       \
283         sp-style-elem.cpp sp-style-elem.h       \
284         svg-profile.h \
285         svg-view.cpp svg-view.h \
286         svg-view-widget.cpp svg-view-widget.h   \
287         text-chemistry.cpp text-chemistry.h     \
288         text-context.cpp text-context.h \
289         text-editing.cpp text-editing.h \
290         text-tag-attributes.h   \
291         tools-switch.cpp tools-switch.h\
292         tweak-context.h tweak-context.cpp \
293         uri-references.cpp uri-references.h     \
294         vanishing-point.cpp vanishing-point.h   \
295         verbs.cpp verbs.h       \
296         version.cpp version.h   \
297         zoom-context.cpp zoom-context.h
300 # Force libinkpost.a to be rebuilt if we add files to libinkpost_a_SOURCES.
301 libinkpost_a_DEPENDENCIES = Makefile_insert
303 # libinkpost.a: Any object file that needs to be near the end of the link line.
304 # gradient-chemistry.o is called by some things in display/.
305 libinkpost_a_SOURCES =  \
306         color.cpp color.h       \
307         decimal-round.h \
308         dir-util.cpp dir-util.h \
309         ege-adjustment-action.cpp       \
310         ege-adjustment-action.h \
311         ege-color-prof-tracker.cpp      \
312         ege-color-prof-tracker.h        \
313         ege-output-action.cpp   \
314         ege-output-action.h     \
315         ege-select-one-action.cpp       \
316         ege-select-one-action.h \
317         fill-or-stroke.h        \
318         filter-chemistry.cpp filter-chemistry.h \
319         filter-enums.cpp filter-enums.h \
320         fixes.cpp \
321         gc-alloc.h      \
322         gc-anchored.h gc-anchored.cpp   \
323         gc-core.h       \
324         gc-finalized.h gc-finalized.cpp \
325         gc-managed.h    \
326         gc-soft-ptr.h   \
327         gc.cpp  \
328         gradient-chemistry.cpp gradient-chemistry.h     \
329         ink-action.cpp  \
330         ink-action.h    \
331         memeq.h \
332         round.h \
333         streq.h \
334         strneq.h        \
335         composite-undo-stack-observer.h \
336         composite-undo-stack-observer.cpp \
337         undo-stack-observer.h \
338         unit-constants.h        \
339         uri.cpp uri.h   \
340         helper/pixbuf-ops.cpp   \
341         helper/pixbuf-ops.h
343 inkscape_private_libs = \
344         libinkpre.a             \
345         application/libinkapp.a \
346         ui/dialog/libuidialog.a \
347         dialogs/libspdialogs.a  \
348         ui/cache/libuicache.a   \
349         jabber_whiteboard/libjabber_whiteboard.a \
350         pedro/libpedro.a        \
351         trace/libtrace.a        \
352         svg/libspsvg.a          \
353         widgets/libspwidgets.a  \
354         display/libspdisplay.a  \
355         helper/libspchelp.a     \
356         libcroco/libcroco.a     \
357         libnrtype/libnrtype.a   \
358         libnr/libnr.a           \
359         libavoid/libavoid.a     \
360         livarot/libvarot.a      \
361         live_effects/liblive_effects.a  \
362         live_effects/parameter/liblpeparam.a    \
363         ui/view/libuiview.a     \
364         ui/libui.a              \
365         ui/widget/libuiwidget.a \
366         libgdl/libgdl.a         \
367         graphlayout/libgraphlayout.a    \
368         removeoverlap/libremoveoverlap.a                \
369         libcola/libcola.a       \
370         libvpsc/libvpsc.a       \
371         extension/libextension.a        \
372         extension/implementation/libimplementation.a    \
373         extension/internal/libinternal.a        \
374         extension/script/libscript.a    \
375         bind/libbind.a  \
376         dom/libdom.a            \
377         xml/libspxml.a          \
378         2geom/lib2geom.a        \
379         util/libinkutil.a       \
380         io/libio.a              \
381         $(inkjar_libs)          \
382         libinkpost.a            \
383         debug/libinkdebug.a
385 all_libs =                      \
386         $(inkscape_private_libs)        \
387         $(INKSCAPE_LIBS)        \
388         $(GNOME_VFS_LIBS)       \
389         $(XFT_LIBS)             \
390         $(FREETYPE_LIBS)        \
391         $(kdeldadd)             \
392         $(win32ldflags)         \
393         $(CARBON_LDFLAGS)       \
394         $(PERL_LIBS)            \
395         $(PYTHON_LIBS)  \
396         $(INKBOARD_LIBS) \
397         $(LIBWPG_LIBS) \
398         $(IMAGEMAGICK_LIBS)
400 desktop.$(OBJEXT): helper/sp-marshal.h
401 document.$(OBJEXT): helper/sp-marshal.h inkscape_version.h
402 extension/internal/latex-pstricks.$(OBJEXT): inkscape_version.h
403 extension/internal/ps.$(OBJEXT): inkscape_version.h
404 inkscape.$(OBJEXT): helper/sp-marshal.h inkscape_version.h
405 knot.$(OBJEXT): helper/sp-marshal.h
406 main.$(OBJEXT): inkscape_version.h
407 selection.$(OBJEXT): helper/sp-marshal.h
408 sp-object.$(OBJEXT): helper/sp-marshal.h
409 sp-root.$(OBJEXT): inkscape_version.h
410 view.$(OBJEXT): helper/sp-marshal.h
411 help.$(OBJEXT): inkscape_version.h
414 # ################################################
416 #  B I N A R I E S
418 # ################################################
421 inkscape_SOURCES = main.cpp $(win32_sources)
422 inkscape_LDADD = $(all_libs)
423 inkscape_LDFLAGS = --export-dynamic $(kdeldflags)
425 inkview_SOURCES = inkview.cpp $(win32_sources)
426 inkview_LDADD = $(all_libs)
428 style_test_SOURCES = style-test.cpp
429 style_test_LDADD = $(all_libs)
431 inkscape_version.h: ../configure.ac
432         echo '#define INKSCAPE_VERSION "$(VERSION)"' > inkscape_version.h
434 test_all_includes = \
435                 $(srcdir)/attributes-test.h     \
436                 $(srcdir)/color-profile-test.h  \
437                 $(srcdir)/MultiPrinter.h  \
438                 $(srcdir)/TRPIFormatter.h \
439                 $(srcdir)/PylogFormatter.h \
440                 $(srcdir)/dir-util-test.h       \
441                 $(srcdir)/extract-uri-test.h    \
442                 $(srcdir)/mod360-test.h \
443                 $(srcdir)/round-test.h  \
444                 $(srcdir)/sp-gradient-test.h    \
445                 $(srcdir)/sp-style-elem-test.h  \
446                 $(srcdir)/style-test.h  \
447                 $(srcdir)/test-helpers.h  \
448                 $(srcdir)/verbs-test.h