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