]> Pileus Git - grits/blob - src/Makefile.am
ed3db864219340946ccdcd2cb895b007a7b59768
[grits] / src / Makefile.am
1 SUBDIRS = data objects . plugins
2
3 AM_CFLAGS   = -Wall --std=gnu99 -I$(top_srcdir)/src
4 AM_CPPFLAGS = $(GLIB_CFLAGS) $(GTK_CFLAGS) $(GL_CFLAGS) $(SOUP_CFLAGS)
5 AM_LDADD    = $(GLIB_LIBS) $(GTK_LIBS) $(GL_LIBS) $(SOUP_LIBS)
6 AM_LDFLAGS  = -Wl,--as-needed -Wl,--no-undefined
7
8 BUILT_SOURCES = grits-marshal.c grits-marshal.h
9
10
11 # Headers
12 grits_includedir = $(includedir)/grits
13 grits_include_HEADERS = \
14         grits.h         \
15         grits-viewer.h  \
16         grits-prefs.h   \
17         grits-opengl.h  \
18         grits-plugin.h  \
19         grits-util.h    \
20         gtkgl.h         \
21         gpqueue.h       \
22         roam.h
23
24 # Pkg-config
25 pkgconfigdir = $(libdir)/pkgconfig
26 pkgconfig_DATA = grits.pc
27
28 # Library
29 lib_LTLIBRARIES = libgrits.la
30
31 libgrits_la_SOURCES = grits.h \
32         grits-viewer.c  grits-viewer.h  \
33         grits-prefs.c   grits-prefs.h   \
34         grits-opengl.c  grits-opengl.h  \
35         grits-plugin.c  grits-plugin.h  \
36         grits-marshal.c grits-marshal.h \
37         grits-util.c    grits-util.h    \
38         roam.c          roam.h          \
39         gtkgl.c         gtkgl.h         \
40         gpqueue.c       gpqueue.h
41 libgrits_la_CPPFLAGS = $(AM_CPPFLAGS) \
42         -DPKGDATADIR="\"$(dots)$(datadir)/$(GRITS_SUBDIR)\"" \
43         -DPLUGINSDIR="\"$(dots)$(libdir)/$(GRITS_SUBDIR)\""
44 libgrits_la_LIBADD  = $(AM_LDADD) -lm \
45         objects/libgrits-objects.la \
46         data/libgrits-data.la
47 libgrits_la_LDFLAGS = $(AM_LDFLAGS) \
48         -version-info $(LIB_VERSION)
49
50 # Demo program
51 if WIN32
52 AM_CPPFLAGS += -DUSE_WGL
53 AM_LDFLAGS  += -mwindows -no-undefined
54 dots         = ..
55 else
56 AM_CPPFLAGS += -DUSE_GLX
57 endif
58
59 bin_PROGRAMS = grits-demo
60
61 grits_demo_SOURCES = grits-demo.c
62 grits_demo_LDADD   = $(AM_LDADD) libgrits.la
63
64 # Test programs
65 noinst_PROGRAMS = grits-test tile-test
66
67 grits_test_SOURCES = grits-test.c
68 grits_test_LDADD   = $(AM_LDADD) libgrits.la
69
70 tile_test_SOURCES = tile-test.c
71 tile_test_LDADD   = $(AM_LDADD) libgrits.la
72
73
74 MAINTAINERCLEANFILES = Makefile.in
75
76 .list.c:
77         glib-genmarshal --prefix=grits_cclosure_marshal --body   $< > $@
78 .list.h:
79         glib-genmarshal --prefix=grits_cclosure_marshal --header $< > $@
80
81 test: all .libs/$(GRITS_SUBDIR)
82         ./grits-test
83
84 gdb: all .libs/$(GRITS_SUBDIR)
85         gdb ./grits-test
86
87 ddd: all .libs/$(GRITS_SUBDIR)
88         ddd ./grits-test
89
90 .libs/$(GRITS_SUBDIR): plugins/.libs
91         ln -sf ../plugins/.libs .libs/$(GRITS_SUBDIR)
92
93 memcheck: all
94         G_SLICE=always-malloc                   \
95         G_DEBUG=gc-friendly,resident-modules    \
96         valgrind --track-origins=yes            \
97                  --leak-check=full              \
98                  --leak-resolution=high         \
99                  --num-callers=50               \
100                  --suppressions=gtk.suppression \
101                  --suppressions=/usr/lib/valgrind/default.supp \
102                  .libs/grits-test               \
103         2> valgrind.out