1 ## Process this file with automake to produce Makefile.in
4 # ################################################
5 #
6 # G L O B A L
7 #
8 # ################################################
10 # Should work in either automake1.7 or 1.8, but 1.6 doesn't
11 # handle foo/libfoo_a_CPPFLAGS properly (if at all).
12 # Update: We now avoid setting foo/libfoo_a_CPPFLAGS,
13 # so perhaps 1.6 will work.
14 AUTOMAKE_OPTIONS = 1.7 subdir-objects
16 INCLUDES = \
17 $(PERL_CFLAGS) $(PYTHON_CFLAGS) \
18 $(FREETYPE_CFLAGS) \
19 $(GNOME_PRINT_CFLAGS) \
20 $(GNOME_VFS_CFLAGS) \
21 $(IMAGEMAGICK_CFLAGS) \
22 $(INKBOARD_CFLAGS) \
23 $(LIBWPG_CFLAGS) \
24 $(XFT_CFLAGS) \
25 $(LCMS_CFLAGS) \
26 $(POPPLER_CFLAGS) \
27 $(POPPLER_GLIB_CFLAGS) \
28 -DPOTRACE=\"potrace\" \
29 $(INKSCAPE_CFLAGS) \
30 -I$(top_srcdir)/cxxtest \
31 $(WIN32_CFLAGS)
33 CXXTEST_TEMPLATE = $(srcdir)/cxxtest-template.tpl
34 CXXTESTGENFLAGS = --root --have-eh --template=$(CXXTEST_TEMPLATE)
35 CXXTESTGEN = $(top_srcdir)/cxxtest/cxxtestgen.pl $(CXXTESTGENFLAGS)
36 # Add test cases to this variable
37 CXXTEST_TESTSUITES =
39 # ################################################
40 #
41 # E X T R A
42 #
43 # ################################################
45 if PLATFORM_WIN32
46 win32_sources = winmain.cpp registrytool.cpp registrytool.h
47 win32ldflags = -lcomdlg32
48 endif
50 if INKJAR
51 inkjar_dir = inkjar
52 inkjar_libs = inkjar/libinkjar.a
53 endif
55 inkscape_private_libs = \
56 libinkpre.a \
57 application/libinkapp.a \
58 ui/dialog/libuidialog.a \
59 dialogs/libspdialogs.a \
60 ui/cache/libuicache.a \
61 jabber_whiteboard/libjabber_whiteboard.a \
62 pedro/libpedro.a \
63 trace/libtrace.a \
64 svg/libspsvg.a \
65 filters/libfilters.a \
66 widgets/libspwidgets.a \
67 display/libspdisplay.a \
68 helper/libspchelp.a \
69 libcroco/libcroco.a \
70 libnrtype/libnrtype.a \
71 libavoid/libavoid.a \
72 livarot/libvarot.a \
73 live_effects/liblive_effects.a \
74 live_effects/parameter/liblpeparam.a \
75 ui/view/libuiview.a \
76 ui/libui.a \
77 ui/widget/libuiwidget.a \
78 libgdl/libgdl.a \
79 graphlayout/libgraphlayout.a \
80 removeoverlap/libremoveoverlap.a \
81 libcola/libcola.a \
82 libvpsc/libvpsc.a \
83 extension/libextension.a \
84 extension/implementation/libimplementation.a \
85 extension/internal/libinternal.a \
86 libnr/libnr.a \
87 extension/script/libscript.a \
88 bind/libbind.a \
89 dom/libdom.a \
90 xml/libspxml.a \
91 2geom/lib2geom.a \
92 util/libinkutil.a \
93 io/libio.a \
94 $(inkjar_libs) \
95 libinkpost.a \
96 debug/libinkdebug.a
98 all_libs = \
99 $(inkscape_private_libs) \
100 $(INKSCAPE_LIBS) \
101 $(GNOME_VFS_LIBS) \
102 $(XFT_LIBS) \
103 $(FREETYPE_LIBS) \
104 $(kdeldadd) \
105 $(win32ldflags) \
106 $(CARBON_LDFLAGS) \
107 $(PERL_LIBS) \
108 $(PYTHON_LIBS) \
109 $(INKBOARD_LIBS) \
110 $(LIBWPG_LIBS) \
111 $(IMAGEMAGICK_LIBS)
113 # Include all partial makefiles from subdirectories
114 include Makefile_insert
115 include application/Makefile_insert
116 include bind/Makefile_insert
117 include dialogs/Makefile_insert
118 include display/Makefile_insert
119 include dom/Makefile_insert
120 include extension/Makefile_insert
121 include extension/implementation/Makefile_insert
122 include extension/internal/Makefile_insert
123 include extension/script/Makefile_insert
124 include filters/Makefile_insert
125 include helper/Makefile_insert
126 include inkjar/Makefile_insert
127 include io/Makefile_insert
128 include pedro/Makefile_insert
129 include jabber_whiteboard/Makefile_insert
130 include libcroco/Makefile_insert
131 include libgdl/Makefile_insert
132 include libnr/Makefile_insert
133 include libnrtype/Makefile_insert
134 include libavoid/Makefile_insert
135 include livarot/Makefile_insert
136 include live_effects/Makefile_insert
137 include live_effects/parameter/Makefile_insert
138 include libvpsc/Makefile_insert
139 include libcola/Makefile_insert
140 include removeoverlap/Makefile_insert
141 include graphlayout/Makefile_insert
142 include svg/Makefile_insert
143 include widgets/Makefile_insert
144 include debug/Makefile_insert
145 include xml/Makefile_insert
146 include traits/Makefile_insert
147 include algorithms/Makefile_insert
148 include ui/Makefile_insert
149 include ui/cache/Makefile_insert
150 include ui/dialog/Makefile_insert
151 include ui/view/Makefile_insert
152 include ui/widget/Makefile_insert
153 include util/Makefile_insert
154 include trace/Makefile_insert
155 include 2geom/Makefile_insert
157 # Executables compiled by "make" and installed by "make install"
158 bin_PROGRAMS = inkscape inkview
160 # Libraries which should be compiled by "make" but not installed
161 # Currently we use one library per source directory.
162 noinst_LIBRARIES = $(inkscape_private_libs)
164 # Extra files to remove when doing "make distclean"
165 DISTCLEANFILES = \
166 helper/sp-marshal.cpp \
167 helper/sp-marshal.h \
168 inkscape_version.h
170 # Extra files not mentioned as sources to include in the source tarball
171 EXTRA_DIST = \
172 $(top_srcdir)/Doxyfile \
173 sp-skeleton.cpp sp-skeleton.h \
174 algorithms/makefile.in \
175 application/makefile.in \
176 bind/makefile.in \
177 debug/makefile.in \
178 dialogs/makefile.in \
179 display/makefile.in \
180 dom/makefile.in \
181 extension/implementation/makefile.in \
182 extension/internal/makefile.in \
183 extension/makefile.in \
184 extension/script/makefile.in \
185 filters/makefile.in \
186 helper/makefile.in \
187 inkjar/makefile.in \
188 io/makefile.in \
189 io/crystalegg.xml \
190 io/doc2html.xsl \
191 pedro/makefile.in \
192 jabber_whiteboard/makefile.in \
193 libgdl/makefile.in \
194 libcroco/makefile.in \
195 libnr/makefile.in \
196 libnrtype/makefile.in \
197 libavoid/makefile.in \
198 livarot/makefile.in \
199 live_effects/makefile.in \
200 live_effects/parameter/makefile.in \
201 removeoverlap/makefile.in \
202 svg/makefile.in \
203 trace/makefile.in \
204 traits/makefile.in \
205 ui/makefile.in \
206 ui/cache/makefile.in \
207 ui/dialog/makefile.in \
208 ui/view/makefile.in \
209 ui/widget/makefile.in \
210 util/makefile.in \
211 widgets/makefile.in \
212 xml/makefile.in \
213 2geom/makefile.in \
214 extension/internal/win32.cpp \
215 extension/internal/win32.h \
216 extension/internal/emf-win32-inout.cpp \
217 extension/internal/emf-win32-inout.h \
218 extension/internal/emf-win32-print.cpp \
219 extension/internal/emf-win32-print.h \
220 helper/sp-marshal.list \
221 traits/copy.h \
222 traits/function.h \
223 traits/list-copy.h \
224 traits/reference.h \
225 $(jabber_whiteboard_SOURCES)
227 EXTRA_PROGRAMS = \
228 inkview \
229 libnr/testnr
232 # #################################
233 # ## TESTING STUFF (make check) ###
234 # #################################
236 # List of all programs that should be built before testing. Note that this is
237 # different from TESTS, because some tests can be scripts that don't
238 # need to be built. There should be one test program per directory.
239 # automake adds $(EXEEXT) to check_PROGRAMS items but not to TESTS items:
240 # TESTS items can be scripts etc.
241 check_PROGRAMS = cxxtests
243 # streamtest is unfinished and can't handle the relocations done during
244 # "make distcheck".
246 # List of all tests to be run.
247 TESTS = $(check_PROGRAMS)
249 # including the the testsuites here ensures that they get distributed
250 cxxtests_SOURCES = cxxtests.cpp $(CXXTEST_TESTSUITES)
251 cxxtests_LDADD = libnr/nr-compose-reference.o $(all_libs)
253 cxxtests.cpp: $(CXXTEST_TESTSUITES) $(CXXTEST_TEMPLATE)
254 $(CXXTESTGEN) -o cxxtests.cpp $(CXXTEST_TESTSUITES)
256 # ################################################
257 # D I S T
258 # ################################################
260 dist-hook:
261 mkdir $(distdir)/pixmaps
262 cp $(srcdir)/pixmaps/*xpm $(distdir)/pixmaps
264 distclean-local:
265 rm -f cxxtests.xml cxxtests.log