]> Pileus Git - ~andy/gtk/blob - gdk/Makefile.am
better error message if you try to add a widget to a bin that already has
[~andy/gtk] / gdk / Makefile.am
1 ## Makefile.am for gtk+/gdk
2
3 SUBDIRS=$(gdktarget)
4 DIST_SUBDIRS=linux-fb nanox win32 x11
5
6 EXTRA_DIST =                    \
7         gdkconfig.h.win32       \
8         gdk.def                 \
9         makefile.mingw          \
10         makefile.mingw.in       \
11         makefile.msc
12
13 common_includes = @STRIP_BEGIN@         \
14         -DG_LOG_DOMAIN=\"Gdk\"          \
15         -I$(top_srcdir)                 \
16         -I$(top_builddir)/gdk           \
17         -I$(top_srcdir)/gdk-pixbuf      \
18         @GTK_DEBUG_FLAGS@               \
19         @GTK_XIM_FLAGS@                 \
20         @GTK_LOCALE_FLAGS@              \
21         @PANGO_CFLAGS@                  \
22         @GLIB_CFLAGS@                   \
23         @more_cflags@                   \
24 @STRIP_END@
25
26 INCLUDES = $(common_includes)
27 gtarget=@gdktarget@
28
29 # libtool stuff: set version and export symbols for resolving
30 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
31 # we use the general approach here
32 LDFLAGS = @STRIP_BEGIN@                                         \
33         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)    \
34         -export-dynamic                                         \
35         -rpath @prefix@/lib                                     \
36         @LIBTOOL_EXPORT_OPTIONS@                                \
37         @PANGO_LIBS@                                            \
38         @GLIB_DEPLIBS@                                          \
39         @more_ldflags@                                          \
40         @more_libs@                                             \
41         -lm                                                     \
42 @STRIP_END@
43
44 #
45 # setup source file variables
46 #
47 #
48 # GDK header files for public installation (non-generated)
49 #
50 # Note: files added here may need to be be propagated to gdk_headers in gtk/Makefile.am
51 #
52 gdk_public_h_sources = @STRIP_BEGIN@ \
53         gdk.h           \
54         gdkcolor.h      \
55         gdkcompat.h     \
56         gdkcursor.h     \
57         gdkcursors.h    \
58         gdkdnd.h        \
59         gdkdrawable.h   \
60         gdkevents.h     \
61         gdkfont.h       \
62         gdkgc.h         \
63         gdkkeysyms.h    \
64         gdki18n.h       \
65         gdkim.h         \
66         gdkimage.h      \
67         gdkinput.h      \
68         gdkkeys.h       \
69         gdkpango.h      \
70         gdkpixbuf.h     \
71         gdkpixmap.h     \
72         gdkprivate.h    \
73         gdkproperty.h   \
74         gdkregion.h     \
75         gdkrgb.h        \
76         gdkselection.h  \
77         gdktypes.h      \
78         gdkvisual.h     \
79         gdkwindow.h     \
80 @STRIP_END@
81
82 gdk_c_sources = @STRIP_BEGIN@   \
83         gdk.c                   \
84         gdkcolor.c              \
85         gdkcursor.c             \
86         gdkdraw.c               \
87         gdkevents.c             \
88         gdkfont.c               \
89         gdkgc.c                 \
90         gdkglobals.c            \
91         gdkkeys.c               \
92         gdkkeyuni.c             \
93         gdkimage.c              \
94         gdkinternals.h          \
95         gdkpango.c              \
96         gdkpixbuf-drawable.c    \
97         gdkpixbuf-render.c      \
98         gdkpixmap.c             \
99         gdkpoly-generic.h       \
100         gdkpolyreg-generic.c    \
101         gdkrgb.c                \
102         gdkrectangle.c          \
103         gdkregion-generic.c     \
104         gdkregion-generic.h     \
105         gdkwindow.c             \
106 @STRIP_END@
107
108 #
109 # setup GDK sources and their dependancies
110 #
111 extra = @gdktargetlib@
112
113 if USE_X11
114 libgdk_x11_includedir = $(includedir)/gtk-2.0/gdk
115
116 libgdk_x11_1_3_la_LIBADD = \
117         $(gtarget)/libgdk-$(gtarget).la 
118
119 libgdk_x11_include_HEADERS = $(gdk_public_h_sources)
120 libgdk_x11_1_3_la_SOURCES = $(gdk_c_sources)
121 endif
122
123 if USE_NANOX
124 libgdk_nanox_includedir = $(includedir)/gtk-2.0/gdk
125
126 libgdk_nanox_1_3_la_LIBADD = \
127         $(gtarget)/libgdk-$(gtarget).la 
128
129 libgdk_nanox_include_HEADERS = $(gdk_public_h_sources)
130 libgdk_nanox_1_3_la_SOURCES = $(gdk_c_sources)
131 endif
132
133 if USE_LINUX_FB
134 libgdk_linux_fb_includedir = $(includedir)/gtk-2.0/gdk
135
136 libgdk_linux_fb_1_3_la_LIBADD = \
137         $(gtarget)/libgdk-$(gtarget).la 
138
139 libgdk_linux_fb_include_HEADERS = $(gdk_public_h_sources)
140 libgdk_linux_fb_1_3_la_SOURCES = $(gdk_c_sources)
141 endif
142
143 # now define the real one to workaround automake's mishandling
144 lib_LTLIBRARIES = $(extra)
145
146 EXTRA_LTLIBRARIES = libgdk-x11-1.3.la libgdk-nanox-1.3.la libgdk-linux-fb-1.3.la
147
148 MAINTAINERCLEANFILES +=
149 EXTRA_HEADERS +=
150 EXTRA_DIST +=
151 EXTRA_DIST +=
152
153 #
154 # rules to generate built sources
155 #
156 # we only need to remake these headers once a new X version is released
157 X-derived-headers:
158         sed -e 's/^#define[     ]*XC\([^        ]*\)[   ]*\([^  ]*\)[   ]*.*$$/GDK\1 = \2,/' \
159             -e 'tb' -e 'd' -e ':b' \
160             -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
161             < @x_includes@/X11/cursorfont.h > gdkcursors.h ; \
162         sed -e 's/^#define[     ]*XK\([^        ]*\)[   ]*\([^  ]*\)[   ]*.*$$/#define GDK\1 \2/' \
163             -e 'tb' -e 'd' -e ':b' -e 's/ 0X/ 0x/' \
164             < @x_includes@/X11/keysymdef.h > gdkkeysyms.h
165
166 #
167 # Rule to install gdkconfig.h header file
168 #
169 configexecincludedir = $(libdir)/gtk-2.0/include
170 #configexecinclude_DATA = gdkconfig.h
171 install-exec-local: gdkconfig.h
172         $(mkinstalldirs) $(DESTDIR)$(configexecincludedir)
173         file=$(DESTDIR)$(configexecincludedir)/gdkconfig.h; \
174         if test -r $$file && cmp -s gdkconfig.h $$file; then :; \
175         else $(INSTALL_DATA) gdkconfig.h $$file; fi
176
177 BUILT_SOURCES = stamp-gc-h #note: not gdkconfig.h
178 gdkconfig.h: stamp-gc-h
179         @if test -f gdkconfig.h; then :; \
180         else rm -f stamp-gc-h; $(MAKE) stamp-gc-h; fi
181 stamp-gc-h: ../config.status
182         cd .. && CONFIG_FILES= CONFIG_HEADERS= CONFIG_OTHER=gdk/gdkconfig.h ./config.status
183         echo timestamp > stamp-gc-h
184
185 .PHONY: files
186
187 files:
188         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
189           echo $$p; \
190         done