summaryrefslogtreecommitdiff
path: root/package/x11r7/xlib_libX11/xlib_libX11.mk
blob: 4d12a8449da966866e9a07ded3d79d3ae2910e21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
################################################################################
#
# xlib_libX11 -- X.Org X11 library
#
################################################################################

XLIB_LIBX11_VERSION = 1.3.2
XLIB_LIBX11_SOURCE = libX11-$(XLIB_LIBX11_VERSION).tar.bz2
XLIB_LIBX11_SITE = http://xorg.freedesktop.org/releases/individual/lib
XLIB_LIBX11_AUTORECONF = YES
XLIB_LIBX11_INSTALL_STAGING = YES
XLIB_LIBX11_DEPENDENCIES = libxcb xutil_util-macros xlib_xtrans xlib_libXau xlib_libXdmcp xproto_kbproto xproto_xproto xproto_xextproto xproto_inputproto xproto_xf86bigfontproto xproto_xcmiscproto host-xproto_xproto
XLIB_LIBX11_CONF_OPT = \
	--disable-malloc0returnsnull \
	--with-xcb \
	--with-keysymdef=$(STAGING_DIR)/usr/include/X11/keysymdef.h \
	--disable-specs

HOST_XLIB_LIBX11_CONF_OPT = \
	--disable-specs

# src/util/makekeys is executed at build time to generate ks_tables.h, so
# it should get compiled for the host. The libX11 makefile unfortunately
# doesn't know about cross compilation so this doesn't work.
# Long term, we should probably teach it about HOSTCC / HOST_CFLAGS, but for
# now simply disable the src/util Makefile and build makekeys by hand in
# advance
define XLIB_LIBX11_DISABLE_MAKEKEYS_BUILD
	echo '' > $(@D)/src/util/Makefile.am
endef

XLIB_LIBX11_POST_EXTRACT_HOOKS += XLIB_LIBX11_DISABLE_MAKEKEYS_BUILD

define XLIB_LIBX11_BUILD_MAKEKEYS_FOR_HOST
	cd $(@D)/src/util && $(HOSTCC) $(HOST_CFLAGS) -o makekeys makekeys.c
endef

XLIB_LIBX11_POST_CONFIGURE_HOOKS += XLIB_LIBX11_BUILD_MAKEKEYS_FOR_HOST

$(eval $(call AUTOTARGETS))
$(eval $(call AUTOTARGETS,host))