Makefile.am 4.12 KB
Newer Older
1
## Makefile.am for gtk+/gdk
Elliot Lee's avatar
Elliot Lee committed
2

3 4
SUBDIRS=$(gdktarget)
DIST_SUBDIRS=linux-fb nanox win32 x11
Tor Lillqvist's avatar
Tor Lillqvist committed
5 6

EXTRA_DIST =	\
7 8 9 10
	gdkconfig.h.win32 \
	gdk.def \
	makefile.cygwin \
	makefile.msc
11

12
common_includes = @STRIP_BEGIN@ \
13 14
	-DG_LOG_DOMAIN=\"Gdk\"	\
	-I$(top_srcdir)		\
Owen Taylor's avatar
Owen Taylor committed
15
	-I$(top_builddir)/gdk	\
16 17 18
	@GTK_DEBUG_FLAGS@ 	\
	@GTK_XIM_FLAGS@		\
	@GTK_LOCALE_FLAGS@	\
19
	@PANGO_CFLAGS@		\
20
	@GLIB_CFLAGS@		\
21
	@more_cflags@ 		\
22 23
@STRIP_END@

24 25
INCLUDES = $(common_includes)
gtarget=@gdktarget@
Elliot Lee's avatar
Elliot Lee committed
26

27
# libtool stuff: set version and export symbols for resolving
28 29
# since automake doesn't support conditionalized libsomething_la_LDFLAGS
# we use the general approach here
30 31 32 33 34 35 36 37 38 39
LDFLAGS = @STRIP_BEGIN@ 					\
	-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) 	\
	-release $(LT_RELEASE) 					\
	-export-dynamic 					\
	-rpath @prefix@/lib 					\
	@PANGO_LIBS@						\
	@GLIB_DEPLIBS@						\
	@more_ldflags@						\
	@more_libs@						\
	-lm							\
40 41 42 43 44
@STRIP_END@

#
# setup source file variables
#
Owen Taylor's avatar
Started  
Owen Taylor committed
45
#
46
# GDK header files for public installation (non-generated)
Owen Taylor's avatar
Started  
Owen Taylor committed
47 48 49
#
# Note: files added here may need to be be propagated to gdk_headers in gtk/Makefile.am
#
50 51
gdk_public_h_sources = @STRIP_BEGIN@ \
	gdk.h		\
Owen Taylor's avatar
Started  
Owen Taylor committed
52 53
	gdkcc.h		\
	gdkcolor.h	\
54
	gdkcompat.h	\
Owen Taylor's avatar
Started  
Owen Taylor committed
55
	gdkcursor.h     \
56
	gdkcursors.h	\
Owen Taylor's avatar
Started  
Owen Taylor committed
57 58 59 60 61
	gdkdnd.h	\
	gdkdrawable.h	\
	gdkevents.h	\
	gdkfont.h	\
	gdkgc.h		\
62
	gdkkeysyms.h	\
Owen Taylor's avatar
Started  
Owen Taylor committed
63 64 65 66
	gdki18n.h	\
	gdkim.h		\
	gdkimage.h	\
	gdkinput.h	\
67
	gdkpango.h	\
Owen Taylor's avatar
Started  
Owen Taylor committed
68
	gdkpixmap.h	\
69
	gdkprivate.h	\
Owen Taylor's avatar
Started  
Owen Taylor committed
70 71 72 73
	gdkproperty.h	\
	gdkregion.h	\
	gdkrgb.h	\
	gdkselection.h	\
74
	gdktypes.h	\
Owen Taylor's avatar
Started  
Owen Taylor committed
75 76
	gdkvisual.h	\
	gdkwindow.h	\
77
@STRIP_END@
78

79 80 81 82 83 84 85 86 87 88 89 90 91
gdk_c_sources = @STRIP_BEGIN@ 	\
	gdk.c			\
	gdkcolor.c		\
	gdkcursor.c		\
	gdkdraw.c		\
	gdkevents.c     	\
	gdkfont.c		\
	gdkgc.c			\
	gdkglobals.c		\
	gdkkeyuni.c		\
	gdkimage.c		\
	gdkinternals.h  	\
	gdkpango.c		\
92
	gdkpixmap.c		\
93 94
	gdkpoly-generic.h	\
	gdkpolyreg-generic.c	\
95 96
	gdkrgb.c		\
	gdkrectangle.c		\
97 98
	gdkregion-generic.c	\
	gdkregion-generic.h	\
99
	gdkwindow.c		\
100 101 102 103 104
@STRIP_END@

#
# setup GDK sources and their dependancies
#
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
extra = @gdktargetlib@

if USE_X11
libgdk_x11_includedir = $(includedir)/gdk

libgdk_x11_la_LIBADD = \
	$(gtarget)/libgdk-$(gtarget).la	

libgdk_x11_include_HEADERS = $(gdk_public_h_sources)
libgdk_x11_la_SOURCES = $(gdk_c_sources)
endif

if USE_NANOX
libgdk_nanox_includedir = $(includedir)/gdk

libgdk_nanox_la_LIBADD = \
	$(gtarget)/libgdk-$(gtarget).la	

libgdk_nanox_include_HEADERS = $(gdk_public_h_sources)
libgdk_nanox_la_SOURCES = $(gdk_c_sources)
endif

if USE_LINUX_FB
libgdk_linux_fb_includedir = $(includedir)/gdk

libgdk_linux_fb_la_LIBADD = \
	$(gtarget)/libgdk-$(gtarget).la	

libgdk_linux_fb_include_HEADERS = $(gdk_public_h_sources)
libgdk_linux_fb_la_SOURCES = $(gdk_c_sources)
endif

# now define the real one to workaround automake's mishandling
lib_LTLIBRARIES = $(extra)

EXTRA_LTLIBRARIES = libgdk-x11.la libgdk-nanox.la libgdk-linux-fb.la

142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
MAINTAINERCLEANFILES +=
EXTRA_HEADERS +=
EXTRA_DIST +=
EXTRA_DIST +=

#
# rules to generate built sources
#
# we only need to remake these headers once a new X version is released
X-derived-headers:
	sed -e 's/^#define[ 	]*XC\([^ 	]*\)[ 	]*\([^ 	]*\)[ 	]*.*$$/GDK\1 = \2,/' \
	    -e 'tb' -e 'd' -e ':b' \
	    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
	    < @x_includes@/X11/cursorfont.h > gdkcursors.h ; \
	sed -e 's/^#define[ 	]*XK\([^ 	]*\)[ 	]*\([^ 	]*\)[ 	]*.*$$/#define GDK\1 \2/' \
	    -e 'tb' -e 'd' -e ':b' -e 's/ 0X/ 0x/' \
	    < @x_includes@/X11/keysymdef.h > gdkkeysyms.h
Elliot Lee's avatar
Elliot Lee committed
159

160 161 162
#
# Rule to install gdkconfig.h header file
#
163 164 165 166 167 168 169
configexecincludedir = $(pkglibdir)/include
#configexecinclude_DATA = gdkconfig.h
install-exec-local: gdkconfig.h
	$(mkinstalldirs) $(DESTDIR)$(configexecincludedir)
	file=$(DESTDIR)$(configexecincludedir)/gdkconfig.h; \
	if test -r $$file && cmp -s gdkconfig.h $$file; then :; \
	else $(INSTALL_DATA) gdkconfig.h $$file; fi
170 171 172

BUILT_SOURCES = stamp-gc-h #note: not gdkconfig.h
gdkconfig.h: stamp-gc-h
173 174
	@if test -f gdkconfig.h; then :; \
	else rm -f stamp-gc-h; $(MAKE) stamp-gc-h; fi
175 176 177 178
stamp-gc-h: ../config.status
	cd .. && CONFIG_FILES= CONFIG_HEADERS= CONFIG_OTHER=gdk/gdkconfig.h ./config.status
	echo timestamp > stamp-gc-h

Elliot Lee's avatar
Elliot Lee committed
179 180 181 182 183 184
.PHONY: files

files:
	@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
	  echo $$p; \
	done