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@ \
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@ \
74 gdk_headers = @STRIP_BEGIN@ \
75 $(gdk_public_h_sources) \
80 gdk_c_sources = @STRIP_BEGIN@ \
94 gdkpixbuf-drawable.c \
98 gdkpolyreg-generic.c \
101 gdkregion-generic.c \
102 gdkregion-generic.h \
107 # setup GDK sources and their dependancies
109 extra = @gdktargetlib@
112 libgdk_x11_includedir = $(includedir)/gtk-2.0/gdk
114 libgdk_x11_1_3_la_LIBADD = \
115 $(gtarget)/libgdk-$(gtarget).la
117 libgdk_x11_include_HEADERS = $(gdk_headers)
118 libgdk_x11_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
122 libgdk_nanox_includedir = $(includedir)/gtk-2.0/gdk
124 libgdk_nanox_1_3_la_LIBADD = \
125 $(gtarget)/libgdk-$(gtarget).la
127 libgdk_nanox_include_HEADERS = $(gdk_headers)
128 libgdk_nanox_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
132 libgdk_linux_fb_includedir = $(includedir)/gtk-2.0/gdk
134 libgdk_linux_fb_1_3_la_LIBADD = \
135 $(gtarget)/libgdk-$(gtarget).la
137 libgdk_linux_fb_include_HEADERS = $(gdk_headers)
138 libgdk_linux_fb_1_3_la_SOURCES = $(gdk_c_sources) gdkenumtypes.c
141 # now define the real one to workaround automake's mishandling
142 lib_LTLIBRARIES = $(extra)
144 EXTRA_LTLIBRARIES = libgdk-x11-1.3.la libgdk-nanox-1.3.la libgdk-linux-fb-1.3.la
146 MAINTAINERCLEANFILES +=
152 # rules to generate built sources
154 # we only need to remake these headers once a new X version is released
156 sed -e 's/^#define[ ]*XC\([^ ]*\)[ ]*\([^ ]*\)[ ]*.*$$/GDK\1 = \2,/' \
157 -e 'tb' -e 'd' -e ':b' \
158 -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
159 < @x_includes@/X11/cursorfont.h > gdkcursors.h ; \
160 sed -e 's/^#define[ ]*XK\([^ ]*\)[ ]*\([^ ]*\)[ ]*.*$$/#define GDK\1 \2/' \
161 -e 'tb' -e 'd' -e ':b' -e 's/ 0X/ 0x/' \
162 < @x_includes@/X11/keysymdef.h > gdkkeysyms.h
165 # Rule to install gdkconfig.h header file
167 configexecincludedir = $(libdir)/gtk-2.0/include
168 #configexecinclude_DATA = gdkconfig.h
169 install-exec-local: gdkconfig.h
170 $(mkinstalldirs) $(DESTDIR)$(configexecincludedir)
171 file=$(DESTDIR)$(configexecincludedir)/gdkconfig.h; \
172 if test -r $$file && cmp -s gdkconfig.h $$file; then :; \
173 else $(INSTALL_DATA) gdkconfig.h $$file; fi
175 #note: not gdkconfig.h
176 BUILT_SOURCES = stamp-gc-h @REBUILD@ gdkenumtypes.c gdkenumtypes.h
178 gdkenumtypes.h: @REBUILD@ $(gdk_public_h_sources) $(srcdir)/makeenums.pl
180 && $(PERL) ./makeenums.pl include $(gdk_public_h_sources) > gdkenumtypes.h
182 gdkenumtypes.c: @REBUILD@ $(gdk_public_h_sources) $(srcdir)/makeenums.pl
184 && $(PERL) ./makeenums.pl cfile $(gdk_public_h_sources) > gdkenumtypes.c
186 gdkconfig.h: stamp-gc-h
187 @if test -f gdkconfig.h; then :; \
188 else rm -f stamp-gc-h; $(MAKE) stamp-gc-h; fi
189 stamp-gc-h: ../config.status
190 cd .. && CONFIG_FILES= CONFIG_HEADERS= CONFIG_OTHER=gdk/gdkconfig.h ./config.status
191 echo timestamp > stamp-gc-h
196 @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \