xref: /OK3568_Linux_fs/buildroot/package/libtalloc/libtalloc.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# libtalloc
4#
5################################################################################
6
7LIBTALLOC_VERSION = 2.3.3
8LIBTALLOC_SOURCE = talloc-$(LIBTALLOC_VERSION).tar.gz
9LIBTALLOC_SITE = https://www.samba.org/ftp/talloc
10LIBTALLOC_LICENSE = LGPL-3.0+
11LIBTALLOC_LICENSE_FILES = talloc.h
12LIBTALLOC_INSTALL_STAGING = YES
13
14# --with-libiconv= is unconditionally passed, even if libiconv is not
15# present. Indeed, waf will search for libiconv by default in
16# /usr/local. Because of a bug in some waf python script, /usr/local
17# is then used in many subsequent and unrelated checks, which
18# ultimately causes a failure when BR2_COMPILER_PARANOID_UNSAFE_PATH
19# is set.  However no need to set libiconv as a dependency of
20# libtalloc since it's optional.
21LIBTALLOC_CONF_OPTS += --cross-compile \
22		--cross-answers=$(@D)/cache.txt \
23		--hostcc=gcc \
24		--with-libiconv=$(STAGING_DIR)/usr
25
26ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
27LIBTALLOC_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc`
28LIBTALLOC_LDFLAGS += `$(PKG_CONFIG_HOST_BINARY) --libs libtirpc`
29LIBTALLOC_DEPENDENCIES += libtirpc host-pkgconf
30endif
31
32ifeq ($(BR2_PACKAGE_PYTHON3),y)
33LIBTALLOC_DEPENDENCIES += host-python3 python3
34LIBTALLOC_CONF_ENV += \
35	PYTHON="$(HOST_DIR)/bin/python3" \
36	PYTHON_CONFIG="$(STAGING_DIR)/usr/bin/python3-config"
37# There isn't any --enable-python configuration option
38else
39LIBTALLOC_CONF_OPTS += --disable-python
40endif
41
42LIBTALLOC_WAF = ./buildtools/bin/waf
43
44# like samba4, libtalloc uses the waf build system which requires a
45# proper answers file to configure package before build
46define LIBTALLOC_POPULATE_WAF_CACHE
47	$(INSTALL) -m 0644 package/libtalloc/libtalloc-cache.txt $(@D)/cache.txt
48	echo 'Checking uname machine type: $(BR2_ARCH)' >> $(@D)/cache.txt
49endef
50
51LIBTALLOC_PRE_CONFIGURE_HOOKS += LIBTALLOC_POPULATE_WAF_CACHE
52
53$(eval $(waf-package))
54