1 ## Makefile.am fragment, included by src/Makefile.am.
4 # ################################################
5 #
6 # E X T R A
7 #
8 # ################################################
10 if OS_WIN32
11 win32_sources = winmain.cpp
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 bad-uri-exception.h \
44 brokenimage.xpm \
45 color-rgba.h \
46 conn-avoid-ref.cpp conn-avoid-ref.h \
47 connector-context.cpp connector-context.h \
48 context-fns.cpp context-fns.h \
49 desktop-affine.cpp desktop-affine.h \
50 desktop-events.cpp desktop-events.h \
51 desktop-handles.cpp desktop-handles.h \
52 desktop-style.cpp desktop-style.h \
53 desktop.cpp desktop.h \
54 document-undo.cpp \
55 document.cpp document.h document-private.h \
56 document-subset.cpp document-subset.h \
57 doxygen-main.cpp \
58 draw-anchor.cpp \
59 draw-anchor.h \
60 draw-context.cpp draw-context.h \
61 dropper-context.cpp dropper-context.h \
62 dyna-draw-context.cpp dyna-draw-context.h \
63 enums.h \
64 event-context.cpp event-context.h \
65 extract-uri.cpp extract-uri.h \
66 file.cpp file.h \
67 fontsize-expansion.cpp fontsize-expansion.h \
68 forward.h \
69 geom.cpp geom.h \
70 gnuc-attribute.h \
71 gradient-context.cpp gradient-context.h \
72 gradient-drag.cpp gradient-drag.h \
73 help.cpp help.h \
74 inkscape-stock.cpp inkscape-stock.h\
75 inkscape.cpp inkscape.h inkscape-private.h \
76 interface.cpp interface.h \
77 isnan.h \
78 knot-enums.h \
79 knot-holder-entity.h \
80 knot.cpp knot.h \
81 knotholder.cpp knotholder.h \
82 layer-fns.cpp layer-fns.h \
83 macros.h \
84 marker-status.cpp marker-status.h \
85 media.cpp media.h \
86 message-context.cpp message-context.h \
87 message-stack.cpp message-stack.h \
88 message.h \
89 mod360.cpp mod360.h \
90 modifier-fns.h \
91 node-context.cpp node-context.h \
92 nodepath.cpp nodepath.h \
93 object-edit.cpp object-edit.h \
94 object-hierarchy.cpp object-hierarchy.h \
95 object-ui.cpp object-ui.h \
96 path-chemistry.cpp path-chemistry.h \
97 path-prefix.h \
98 pen-context.cpp \
99 pen-context.h \
100 pencil-context.cpp \
101 pencil-context.h \
102 preferences.cpp preferences.h \
103 preferences-skeleton.h \
104 menus-skeleton.h \
105 prefix.cpp \
106 prefix.h \
107 prefs-utils.cpp \
108 prefs-utils.h \
109 print.cpp print.h \
110 rect-context.cpp rect-context.h \
111 require-config.h \
112 rubberband.cpp rubberband.h \
113 satisfied-guide-cns.cpp satisfied-guide-cns.h \
114 selcue.cpp selcue.h \
115 select-context.cpp select-context.h \
116 selection-chemistry.cpp selection-chemistry.h \
117 selection-describer.cpp selection-describer.h \
118 selection.cpp selection.h \
119 seltrans-handles.cpp seltrans-handles.h \
120 seltrans.cpp seltrans.h \
121 shortcuts-default-xml.cpp \
122 shortcuts.cpp shortcuts.h \
123 slideshow.cpp slideshow.h \
124 snap.cpp snap.h \
125 snapped-point.cpp snapped-point.h \
126 snapper.cpp snapper.h \
127 line-snapper.cpp line-snapper.h \
128 grid-snapper.cpp grid-snapper.h \
129 guide-snapper.cpp guide-snapper.h \
130 object-snapper.cpp object-snapper.h \
131 sp-anchor.cpp sp-anchor.h \
132 sp-clippath.cpp sp-clippath.h \
133 sp-conn-end-pair.cpp sp-conn-end-pair.h \
134 sp-conn-end.cpp sp-conn-end.h \
135 sp-cursor.cpp sp-cursor.h \
136 sp-defs.cpp sp-defs.h \
137 sp-ellipse.cpp sp-ellipse.h \
138 sp-flowdiv.h sp-flowdiv.cpp \
139 sp-flowregion.h sp-flowregion.cpp \
140 sp-flowtext.h sp-flowtext.cpp \
141 sp-gradient-fns.h \
142 sp-gradient-reference.cpp \
143 sp-gradient-reference.h \
144 sp-gradient-spread.h \
145 sp-gradient-units.h \
146 sp-gradient-vector.h \
147 sp-gradient.cpp sp-gradient.h \
148 sp-guide-attachment.h \
149 sp-guide-constraint.h \
150 sp-guide.cpp sp-guide.h \
151 sp-image.cpp sp-image.h \
152 sp-item-group.cpp sp-item-group.h \
153 sp-item-notify-moveto.cpp sp-item-notify-moveto.h \
154 sp-item-rm-unsatisfied-cns.cpp sp-item-rm-unsatisfied-cns.h \
155 sp-item-transform.cpp sp-item-transform.h \
156 sp-item-update-cns.cpp sp-item-update-cns.h \
157 sp-item.cpp sp-item.h \
158 sp-line.cpp sp-line.h \
159 sp-linear-gradient-fns.h \
160 sp-linear-gradient.h \
161 sp-marker-loc.h \
162 sp-marker.cpp sp-marker.h \
163 sp-mask.cpp sp-mask.h \
164 sp-metadata.cpp sp-metadata.h \
165 sp-metric.h \
166 sp-metrics.cpp sp-metrics.h \
167 sp-namedview.cpp sp-namedview.h \
168 sp-object-group.cpp sp-object-group.h \
169 sp-object-repr.cpp sp-object-repr.h \
170 sp-object.cpp sp-object.h \
171 sp-offset.cpp sp-offset.h \
172 sp-paint-server.cpp sp-paint-server.h \
173 sp-path.cpp sp-path.h \
174 sp-pattern.cpp sp-pattern.h \
175 sp-polygon.cpp sp-polygon.h \
176 sp-polyline.cpp sp-polyline.h \
177 sp-radial-gradient-fns.h \
178 sp-radial-gradient.h \
179 sp-rect.cpp sp-rect.h \
180 sp-root.cpp sp-root.h \
181 sp-shape.cpp sp-shape.h \
182 sp-spiral.cpp sp-spiral.h \
183 sp-star.cpp sp-star.h \
184 sp-stop-fns.h \
185 sp-stop.h \
186 sp-string.cpp sp-string.h \
187 sp-symbol.cpp sp-symbol.h \
188 sp-text.cpp sp-text.h \
189 sp-textpath.h \
190 sp-tspan.cpp sp-tspan.h \
191 sp-use-reference.cpp sp-use-reference.h \
192 sp-use.cpp sp-use.h \
193 spiral-context.cpp spiral-context.h \
194 splivarot.cpp splivarot.h \
195 star-context.cpp star-context.h \
196 streams-gzip.h streams-gzip.cpp \
197 streams-handles.h streams-handles.cpp \
198 streams-jar.h streams-jar.cpp \
199 streams-zlib.h streams-zlib.cpp \
200 style.cpp style.h \
201 sp-style-elem.cpp sp-style-elem.h \
202 svg-profile.h \
203 svg-view.cpp svg-view.h \
204 svg-view-widget.cpp svg-view-widget.h \
205 text-chemistry.cpp text-chemistry.h \
206 text-context.cpp text-context.h \
207 text-editing.cpp text-editing.h \
208 text-tag-attributes.h \
209 tools-switch.cpp tools-switch.h\
210 uri-references.cpp uri-references.h \
211 verbs.cpp verbs.h \
212 version.cpp version.h \
213 zoom-context.cpp zoom-context.h
215 # Force libinkpost.a to be rebuilt if we add files to libinkpost_a_SOURCES.
216 libinkpost_a_DEPENDENCIES = Makefile_insert
218 # libinkpost.a: Any object file that needs to be near the end of the link line.
219 # gradient-chemistry.o is called by some things in display/.
220 libinkpost_a_SOURCES = \
221 color.cpp color.h \
222 decimal-round.h \
223 dir-util.cpp dir-util.h \
224 fill-or-stroke.h \
225 fixes.cpp \
226 gc-alloc.h \
227 gc-anchored.h gc-anchored.cpp \
228 gc-core.h \
229 gc-finalized.h \
230 gc-managed.h \
231 gc-soft-ptr.h \
232 gc.cpp \
233 gradient-chemistry.cpp gradient-chemistry.h \
234 memeq.h \
235 round.h \
236 streq.h \
237 strneq.h \
238 composite-undo-stack-observer.h \
239 composite-undo-stack-observer.cpp \
240 undo-stack-observer.h \
241 unit-constants.h \
242 uri.cpp uri.h
244 inkscape_private_libs = \
245 libinkpre.a \
246 application/libinkapp.a \
247 ui/dialog/libuidialog.a \
248 dialogs/libspdialogs.a \
249 dom/libdom.a \
250 jabber_whiteboard/libjabber_whiteboard.a \
251 trace/libtrace.a \
252 svg/libspsvg.a \
253 widgets/libspwidgets.a \
254 display/libspdisplay.a \
255 helper/libspchelp.a \
256 libcroco/libcroco.a \
257 libnrtype/libnrtype.a \
258 libnr/libnr.a \
259 libavoid/libavoid.a \
260 livarot/libvarot.a \
261 ui/view/libuiview.a \
262 ui/libui.a \
263 ui/widget/libuiwidget.a \
264 graphlayout/libgraphlayout.a \
265 removeoverlap/libremoveoverlap.a \
266 extension/libextension.a \
267 extension/implementation/libimplementation.a \
268 extension/internal/libinternal.a \
269 extension/script/libscript.a \
270 xml/libspxml.a \
271 util/libinkutil.a \
272 io/libio.a \
273 $(inkjar_libs) \
274 libinkpost.a \
275 debug/libinkdebug.a
277 all_libs = \
278 $(inkscape_private_libs) \
279 $(INKSCAPE_LIBS) \
280 $(GNOME_PRINT_LIBS) \
281 $(GNOME_VFS_LIBS) \
282 $(XFT_LIBS) \
283 $(FREETYPE_LIBS) \
284 $(kdeldadd) \
285 $(win32ldflags) \
286 $(PERL_LIBS) \
287 $(PYTHON_LIBS) \
288 $(LIBLOUDMOUTH_LIBS)
290 desktop.$(OBJEXT): helper/sp-marshal.h
291 document.$(OBJEXT): helper/sp-marshal.h inkscape_version.h
292 extension/internal/latex-pstricks.$(OBJEXT): inkscape_version.h
293 extension/internal/ps.$(OBJEXT): inkscape_version.h
294 inkscape.$(OBJEXT): helper/sp-marshal.h inkscape_version.h
295 knot.$(OBJEXT): helper/sp-marshal.h
296 main.$(OBJEXT): inkscape_version.h
297 selection.$(OBJEXT): helper/sp-marshal.h
298 sp-object.$(OBJEXT): helper/sp-marshal.h
299 sp-root.$(OBJEXT): inkscape_version.h
300 view.$(OBJEXT): helper/sp-marshal.h
301 help.$(OBJEXT): inkscape_version.h
304 # ################################################
305 #
306 # B I N A R I E S
307 #
308 # ################################################
311 inkscape_SOURCES = main.cpp $(win32_sources)
312 inkscape_LDADD = $(all_libs)
313 inkscape_LDFLAGS = --export-dynamic $(kdeldflags)
315 inkview_SOURCES = inkview.cpp $(win32_sources)
316 inkview_LDADD = $(all_libs)
318 attributes_test_SOURCES = attributes-test.cpp
319 attributes_test_LDADD = attributes.$(OBJEXT) -lglib-2.0
321 dir_util_test_SOURCES = dir-util-test.cpp utest/test-2ary-cases.h
322 dir_util_test_LDADD = dir-util.$(OBJEXT) -lglib-2.0
324 mod360_test_SOURCES = mod360-test.cpp
325 mod360_test_LDADD = libinkpre.a -lglib-2.0
327 extract_uri_test_SOURCES = extract-uri-test.cpp
328 extract_uri_test_LDADD = libinkpre.a -lglib-2.0
330 round_test_SOURCES = round-test.cpp
331 round_test_LDADD = libinkpost.a
333 sp_gradient_test_SOURCES = sp-gradient-test.cpp
334 sp_gradient_test_LDADD = $(all_libs)
336 sp_style_elem_test_SOURCES = sp-style-elem-test.cpp
337 sp_style_elem_test_LDADD = $(all_libs)
339 style_test_SOURCES = style-test.cpp
340 style_test_LDADD = $(all_libs)
342 inkscape_version.h: ../configure.ac
343 echo '#define INKSCAPE_VERSION "$(VERSION)"' > inkscape_version.h