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 # Extra files to remove when doing "make distclean"
56 DISTCLEANFILES = \
57 helper/sp-marshal.cpp \
58 helper/sp-marshal.h \
59 inkscape-version.cpp
61 inkscape_private_libs = \
62 libinkpre.a \
63 application/libinkapp.a \
64 ui/dialog/libuidialog.a \
65 dialogs/libspdialogs.a \
66 ui/cache/libuicache.a \
67 jabber_whiteboard/libjabber_whiteboard.a \
68 pedro/libpedro.a \
69 trace/libtrace.a \
70 svg/libspsvg.a \
71 filters/libfilters.a \
72 widgets/libspwidgets.a \
73 display/libspdisplay.a \
74 helper/libspchelp.a \
75 libcroco/libcroco.a \
76 libnrtype/libnrtype.a \
77 libavoid/libavoid.a \
78 livarot/libvarot.a \
79 live_effects/liblive_effects.a \
80 live_effects/parameter/liblpeparam.a \
81 ui/view/libuiview.a \
82 ui/libui.a \
83 ui/widget/libuiwidget.a \
84 libgdl/libgdl.a \
85 graphlayout/libgraphlayout.a \
86 removeoverlap/libremoveoverlap.a \
87 libcola/libcola.a \
88 libvpsc/libvpsc.a \
89 extension/libextension.a \
90 extension/implementation/libimplementation.a \
91 extension/internal/libinternal.a \
92 libnr/libnr.a \
93 extension/script/libscript.a \
94 bind/libbind.a \
95 dom/libdom.a \
96 xml/libspxml.a \
97 2geom/lib2geom.a \
98 util/libinkutil.a \
99 io/libio.a \
100 $(inkjar_libs) \
101 libinkpost.a \
102 debug/libinkdebug.a \
103 libinkversion.a
105 all_libs = \
106 $(inkscape_private_libs) \
107 $(INKSCAPE_LIBS) \
108 $(GNOME_VFS_LIBS) \
109 $(XFT_LIBS) \
110 $(FREETYPE_LIBS) \
111 $(kdeldadd) \
112 $(win32ldflags) \
113 $(CARBON_LDFLAGS) \
114 $(PERL_LIBS) \
115 $(PYTHON_LIBS) \
116 $(INKBOARD_LIBS) \
117 $(LIBWPG_LIBS) \
118 $(IMAGEMAGICK_LIBS)
120 # Include all partial makefiles from subdirectories
121 include Makefile_insert
122 include application/Makefile_insert
123 include bind/Makefile_insert
124 include dialogs/Makefile_insert
125 include display/Makefile_insert
126 include dom/Makefile_insert
127 include extension/Makefile_insert
128 include extension/implementation/Makefile_insert
129 include extension/internal/Makefile_insert
130 include extension/script/Makefile_insert
131 include filters/Makefile_insert
132 include helper/Makefile_insert
133 include inkjar/Makefile_insert
134 include io/Makefile_insert
135 include pedro/Makefile_insert
136 include jabber_whiteboard/Makefile_insert
137 include libcroco/Makefile_insert
138 include libgdl/Makefile_insert
139 include libnr/Makefile_insert
140 include libnrtype/Makefile_insert
141 include libavoid/Makefile_insert
142 include livarot/Makefile_insert
143 include live_effects/Makefile_insert
144 include live_effects/parameter/Makefile_insert
145 include libvpsc/Makefile_insert
146 include libcola/Makefile_insert
147 include removeoverlap/Makefile_insert
148 include graphlayout/Makefile_insert
149 include svg/Makefile_insert
150 include widgets/Makefile_insert
151 include debug/Makefile_insert
152 include xml/Makefile_insert
153 include traits/Makefile_insert
154 include algorithms/Makefile_insert
155 include ui/Makefile_insert
156 include ui/cache/Makefile_insert
157 include ui/dialog/Makefile_insert
158 include ui/view/Makefile_insert
159 include ui/widget/Makefile_insert
160 include util/Makefile_insert
161 include trace/Makefile_insert
162 include 2geom/Makefile_insert
164 # Executables compiled by "make" and installed by "make install"
165 bin_PROGRAMS = inkscape inkview
167 # Libraries which should be compiled by "make" but not installed
168 # Currently we use one library per source directory.
169 noinst_LIBRARIES = $(inkscape_private_libs)
171 # Extra files not mentioned as sources to include in the source tarball
172 EXTRA_DIST = \
173 $(top_srcdir)/Doxyfile \
174 sp-skeleton.cpp sp-skeleton.h \
175 algorithms/makefile.in \
176 application/makefile.in \
177 bind/makefile.in \
178 debug/makefile.in \
179 dialogs/makefile.in \
180 display/makefile.in \
181 dom/makefile.in \
182 extension/implementation/makefile.in \
183 extension/internal/makefile.in \
184 extension/makefile.in \
185 extension/script/makefile.in \
186 filters/makefile.in \
187 helper/makefile.in \
188 inkjar/makefile.in \
189 io/makefile.in \
190 io/crystalegg.xml \
191 io/doc2html.xsl \
192 pedro/makefile.in \
193 jabber_whiteboard/makefile.in \
194 libgdl/makefile.in \
195 libcroco/makefile.in \
196 libnr/makefile.in \
197 libnrtype/makefile.in \
198 libavoid/makefile.in \
199 livarot/makefile.in \
200 live_effects/makefile.in \
201 live_effects/parameter/makefile.in \
202 removeoverlap/makefile.in \
203 svg/makefile.in \
204 trace/makefile.in \
205 traits/makefile.in \
206 ui/makefile.in \
207 ui/cache/makefile.in \
208 ui/dialog/makefile.in \
209 ui/view/makefile.in \
210 ui/widget/makefile.in \
211 util/makefile.in \
212 widgets/makefile.in \
213 xml/makefile.in \
214 2geom/makefile.in \
215 extension/internal/win32.cpp \
216 extension/internal/win32.h \
217 extension/internal/emf-win32-inout.cpp \
218 extension/internal/emf-win32-inout.h \
219 extension/internal/emf-win32-print.cpp \
220 extension/internal/emf-win32-print.h \
221 helper/sp-marshal.list \
222 traits/copy.h \
223 traits/function.h \
224 traits/list-copy.h \
225 traits/reference.h \
226 $(jabber_whiteboard_SOURCES)
228 EXTRA_PROGRAMS = \
229 inkview \
230 libnr/testnr
233 # #################################
234 # ## TESTING STUFF (make check) ###
235 # #################################
237 # List of all programs that should be built before testing. Note that this is
238 # different from TESTS, because some tests can be scripts that don't
239 # need to be built. There should be one test program per directory.
240 # automake adds $(EXEEXT) to check_PROGRAMS items but not to TESTS items:
241 # TESTS items can be scripts etc.
242 check_PROGRAMS = cxxtests
244 # streamtest is unfinished and can't handle the relocations done during
245 # "make distcheck".
247 # List of all tests to be run.
248 TESTS = $(check_PROGRAMS)
250 # including the the testsuites here ensures that they get distributed
251 cxxtests_SOURCES = cxxtests.cpp $(CXXTEST_TESTSUITES)
252 cxxtests_LDADD = libnr/nr-compose-reference.o $(all_libs)
254 cxxtests.cpp: $(CXXTEST_TESTSUITES) $(CXXTEST_TEMPLATE)
255 $(CXXTESTGEN) -o cxxtests.cpp $(CXXTEST_TESTSUITES)
257 # ################################################
258 # D I S T
259 # ################################################
261 dist-hook:
262 mkdir $(distdir)/pixmaps
263 cp $(srcdir)/pixmaps/*xpm $(distdir)/pixmaps
265 distclean-local:
266 rm -f cxxtests.xml cxxtests.log