1 ## Makefile.am for gtk+/gdk
4 DIST_SUBDIRS=linux-fb nanox win32 x11
14 common_includes = @STRIP_BEGIN@ \
15 -DG_LOG_DOMAIN=\"Gdk\" \
17 -I$(top_builddir)/gdk \
18 -I$(top_srcdir)/gdk-pixbuf \
23 INCLUDES = $(common_includes)
26 # libtool stuff: set version and export symbols for resolving
27 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
28 # we use the general approach here
29 LDFLAGS = @STRIP_BEGIN@ \
30 -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
33 @LIBTOOL_EXPORT_OPTIONS@ \
34 $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-1.3.la \
40 # setup source file variables
43 # GDK header files for public installation (non-generated)
45 # Note: files added here may need to be be propagated to gdk_headers in gtk/Makefile.am
47 gdk_public_h_sources = @STRIP_BEGIN@ \
75 gdk_headers = @STRIP_BEGIN@ \
76 $(gdk_public_h_sources) \
81 gdk_c_sources = @STRIP_BEGIN@ \
95 gdkpixbuf-drawable.c \
99 gdkpolyreg-generic.c \
102 gdkregion-generic.c \
103 gdkregion-generic.h \
108 # setup GDK sources and their dependancies
110 extra = @gdktargetlib@
113 libgdk_x11_includedir = $(includedir)/gtk-2.0/gdk
115 libgdk_x11_1_3_la_LIBADD = \
116 $(gtarget)/libgdk-$(gtarget).la
118 libgdk_x11_include_HEADERS = $(gdk_headers)
119 libgdk_x11_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
123 libgdk_nanox_includedir = $(includedir)/gtk-2.0/gdk
125 libgdk_nanox_1_3_la_LIBADD = \
126 $(gtarget)/libgdk-$(gtarget).la
128 libgdk_nanox_include_HEADERS = $(gdk_headers)
129 libgdk_nanox_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
133 libgdk_linux_fb_includedir = $(includedir)/gtk-2.0/gdk
135 libgdk_linux_fb_1_3_la_LIBADD = \
136 $(gtarget)/libgdk-$(gtarget).la
138 libgdk_linux_fb_include_HEADERS = $(gdk_headers)
139 libgdk_linux_fb_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
142 # now define the real one to workaround automake's mishandling
143 lib_LTLIBRARIES = $(extra)
145 EXTRA_LTLIBRARIES = libgdk-x11-1.3.la libgdk-nanox-1.3.la libgdk-linux-fb-1.3.la
147 MAINTAINERCLEANFILES +=
153 # rules to generate built sources
155 # we only need to remake these headers once a new X version is released
157 sed -e 's/^#define[ ]*XC\([^ ]*\)[ ]*\([^ ]*\)[ ]*.*$$/GDK\1 = \2,/' \
158 -e 'tb' -e 'd' -e ':b' \
159 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
160 < @x_includes@/X11/cursorfont.h > gdkcursors.h ; \
161 sed -e 's/^#define[ ]*XK\([^ ]*\)[ ]*\([^ ]*\)[ ]*.*$$/#define GDK\1 \2/' \
162 -e 'tb' -e 'd' -e ':b' -e 's/ 0X/ 0x/' \
163 < @x_includes@/X11/keysymdef.h > gdkkeysyms.h
166 # Rule to install gdkconfig.h header file
168 configexecincludedir = $(libdir)/gtk-2.0/include
169 #configexecinclude_DATA = gdkconfig.h
170 install-exec-local: gdkconfig.h
171 $(mkinstalldirs) $(DESTDIR)$(configexecincludedir)
172 file=$(DESTDIR)$(configexecincludedir)/gdkconfig.h; \
173 if test -r $$file && cmp -s gdkconfig.h $$file; then :; \
174 else $(INSTALL_DATA) gdkconfig.h $$file; fi
176 #note: not gdkconfig.h
177 BUILT_SOURCES = stamp-gc-h @REBUILD@ gdkenumtypes.c gdkenumtypes.h
179 gdkenumtypes.h: @REBUILD@ $(gdk_public_h_sources) $(srcdir)/makeenums.pl
181 && $(PERL) ./makeenums.pl include $(gdk_public_h_sources) > gdkenumtypes.h
183 gdkenumtypes.c: @REBUILD@ $(gdk_public_h_sources) $(srcdir)/makeenums.pl
185 && $(PERL) ./makeenums.pl cfile $(gdk_public_h_sources) > gdkenumtypes.c
187 gdkconfig.h: stamp-gc-h
188 @if test -f gdkconfig.h; then :; \
189 else rm -f stamp-gc-h; $(MAKE) stamp-gc-h; fi
190 stamp-gc-h: ../config.status
191 cd .. && CONFIG_FILES= CONFIG_HEADERS= CONFIG_OTHER=gdk/gdkconfig.h ./config.status
192 echo timestamp > stamp-gc-h
197 @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \