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 \
39 # setup source file variables
42 # GDK header files for public installation (non-generated)
44 # Note: files added here may need to be be propagated to gdk_headers in gtk/Makefile.am
46 gdk_public_h_sources = @STRIP_BEGIN@ \
73 gdk_headers = @STRIP_BEGIN@ \
74 $(gdk_public_h_sources) \
79 gdk_c_sources = @STRIP_BEGIN@ \
93 gdkpixbuf-drawable.c \
97 gdkpolyreg-generic.c \
100 gdkregion-generic.c \
101 gdkregion-generic.h \
106 # setup GDK sources and their dependancies
108 extra = @gdktargetlib@
111 libgdk_x11_includedir = $(includedir)/gtk-2.0/gdk
113 libgdk_x11_1_3_la_LIBADD = \
114 $(gtarget)/libgdk-$(gtarget).la
116 libgdk_x11_include_HEADERS = $(gdk_headers)
117 libgdk_x11_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
121 libgdk_nanox_includedir = $(includedir)/gtk-2.0/gdk
123 libgdk_nanox_1_3_la_LIBADD = \
124 $(gtarget)/libgdk-$(gtarget).la
126 libgdk_nanox_include_HEADERS = $(gdk_headers)
127 libgdk_nanox_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
131 libgdk_linux_fb_includedir = $(includedir)/gtk-2.0/gdk
133 libgdk_linux_fb_1_3_la_LIBADD = \
134 $(gtarget)/libgdk-$(gtarget).la
136 libgdk_linux_fb_include_HEADERS = $(gdk_headers)
137 libgdk_linux_fb_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
140 # now define the real one to workaround automake's mishandling
141 lib_LTLIBRARIES = $(extra)
143 EXTRA_LTLIBRARIES = libgdk-x11-1.3.la libgdk-nanox-1.3.la libgdk-linux-fb-1.3.la
145 MAINTAINERCLEANFILES +=
151 # rules to generate built sources
153 # we only need to remake these headers once a new X version is released
155 sed -e 's/^#define[ ]*XC\([^ ]*\)[ ]*\([^ ]*\)[ ]*.*$$/GDK\1 = \2,/' \
156 -e 'tb' -e 'd' -e ':b' \
157 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
158 < @x_includes@/X11/cursorfont.h > gdkcursors.h ; \
159 sed -e 's/^#define[ ]*XK\([^ ]*\)[ ]*\([^ ]*\)[ ]*.*$$/#define GDK\1 \2/' \
160 -e 'tb' -e 'd' -e ':b' -e 's/ 0X/ 0x/' \
161 < @x_includes@/X11/keysymdef.h > gdkkeysyms.h
164 # Rule to install gdkconfig.h header file
166 configexecincludedir = $(libdir)/gtk-2.0/include
167 #configexecinclude_DATA = gdkconfig.h
168 install-exec-local: gdkconfig.h
169 $(mkinstalldirs) $(DESTDIR)$(configexecincludedir)
170 file=$(DESTDIR)$(configexecincludedir)/gdkconfig.h; \
171 if test -r $$file && cmp -s gdkconfig.h $$file; then :; \
172 else $(INSTALL_DATA) gdkconfig.h $$file; fi
174 #note: not gdkconfig.h
175 BUILT_SOURCES = stamp-gc-h @REBUILD@ gdkenumtypes.c gdkenumtypes.h
177 gdkenumtypes.h: @REBUILD@ $(gdk_public_h_sources) $(srcdir)/makeenums.pl
179 && $(PERL) ./makeenums.pl include $(gdk_public_h_sources) > gdkenumtypes.h
181 gdkenumtypes.c: @REBUILD@ $(gdk_public_h_sources) $(srcdir)/makeenums.pl
183 && $(PERL) ./makeenums.pl cfile $(gdk_public_h_sources) > gdkenumtypes.c
185 gdkconfig.h: stamp-gc-h
186 @if test -f gdkconfig.h; then :; \
187 else rm -f stamp-gc-h; $(MAKE) stamp-gc-h; fi
188 stamp-gc-h: ../config.status
189 cd .. && CONFIG_FILES= CONFIG_HEADERS= CONFIG_OTHER=gdk/gdkconfig.h ./config.status
190 echo timestamp > stamp-gc-h
195 @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \