xref: /OK3568_Linux_fs/buildroot/package/cracklib/cracklib.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# cracklib
4#
5################################################################################
6
7CRACKLIB_VERSION = 2.9.7
8CRACKLIB_SITE = https://github.com/cracklib/cracklib/releases/download/v$(CRACKLIB_VERSION)
9CRACKLIB_LICENSE = LGPL-2.1
10CRACKLIB_LICENSE_FILES = COPYING.LIB
11CRACKLIB_CPE_ID_VENDOR = cracklib_project
12CRACKLIB_INSTALL_STAGING = YES
13CRACKLIB_DEPENDENCIES = host-cracklib $(TARGET_NLS_DEPENDENCIES)
14CRACKLIB_CONF_ENV = LIBS=$(TARGET_NLS_LIBS)
15
16ifeq ($(BR2_PACKAGE_ZLIB),y)
17CRACKLIB_CONF_OPTS += --with-zlib
18CRACKLIB_DEPENDENCIES += zlib
19else
20CRACKLIB_CONF_OPTS += --without-zlib
21endif
22
23ifeq ($(BR2_PACKAGE_PYTHON),y)
24CRACKLIB_CONF_OPTS += --with-python
25CRACKLIB_DEPENDENCIES += python
26else
27CRACKLIB_CONF_OPTS += --without-python
28endif
29
30HOST_CRACKLIB_CONF_OPTS += --without-python --without-zlib
31
32ifeq ($(BR2_PACKAGE_CRACKLIB_FULL_DICT),y)
33CRACKLIB_EXTRA_DOWNLOADS = cracklib-words-$(CRACKLIB_VERSION).gz
34CRACKLIB_DICT_SOURCE = $(CRACKLIB_DL_DIR)/cracklib-words-$(CRACKLIB_VERSION).gz
35else
36CRACKLIB_DICT_SOURCE = $(@D)/dicts/cracklib-small
37endif
38
39ifeq ($(BR2_PACKAGE_CRACKLIB_TOOLS),)
40define CRACKLIB_REMOVE_TOOLS
41	rm -f $(TARGET_DIR)/usr/sbin/*cracklib*
42endef
43CRACKLIB_POST_INSTALL_TARGET_HOOKS += CRACKLIB_REMOVE_TOOLS
44endif
45
46define CRACKLIB_BUILD_DICT
47	$(HOST_MAKE_ENV) cracklib-format $(CRACKLIB_DICT_SOURCE) | \
48		$(HOST_MAKE_ENV) cracklib-packer $(TARGET_DIR)/usr/share/cracklib/pw_dict
49	rm $(TARGET_DIR)/usr/share/cracklib/cracklib-small
50endef
51CRACKLIB_POST_INSTALL_TARGET_HOOKS += CRACKLIB_BUILD_DICT
52
53$(eval $(autotools-package))
54$(eval $(host-autotools-package))
55