kumquat-buildroot/package/coreutils/coreutils.mk
Gustavo Zacarias 03f87430e5 coreutils: add optionals, use single binary
Add proper support for optional libraries: acl, attr, gmp & libcap.

Also build the single binary as pointed out by Pádraig Brady for some
neat space savings.
Use the shebang (default) method since it allows us to move binaries
into other directories to suit our needs whereas for symlink that
wouldn't be so easy.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-25 10:44:00 +02:00

107 lines
3.1 KiB
Makefile

################################################################################
#
# coreutils
#
################################################################################
COREUTILS_VERSION = 8.23
COREUTILS_SITE = $(BR2_GNU_MIRROR)/coreutils
COREUTILS_SOURCE = coreutils-$(COREUTILS_VERSION).tar.xz
COREUTILS_LICENSE = GPLv3+
COREUTILS_LICENSE_FILES = COPYING
# coreutils-01-fix-for-dummy-man-usage.patch triggers autoreconf on build
COREUTILS_AUTORECONF = YES
COREUTILS_GETTEXTIZE = YES
# If both coreutils and busybox are selected, make certain coreutils
# wins the fight over who gets to have their utils actually installed.
ifeq ($(BR2_PACKAGE_BUSYBOX),y)
COREUTILS_DEPENDENCIES = busybox
endif
ifeq ($(BR2_PACKAGE_ACL),y)
COREUTILS_DEPENDENCIES += acl
else
COREUTILS_CONF_OPTS += --disable-acl
endif
ifeq ($(BR2_PACKAGE_ATTR),y)
COREUTILS_DEPENDENCIES += attr
else
COREUTILS_CONF_OPTS += --disable-xattr
endif
ifeq ($(BR2_PACKAGE_GMP),y)
COREUTILS_DEPENDENCIES += gmp
else
COREUTILS_CONF_OPTS += --without-gmp
endif
ifeq ($(BR2_PACKAGE_LIBCAP),y)
COREUTILS_DEPENDENCIES += libcap
else
COREUTILS_CONF_OPTS += --disable-libcap
endif
COREUTILS_BIN_PROGS = cat chgrp chmod chown cp date dd df dir echo false \
ln ls mkdir mknod mv pwd rm rmdir vdir sleep stty sync touch true \
uname join
COREUTILS_CONF_ENV = ac_cv_c_restrict=no \
ac_cv_func_chown_works=yes \
ac_cv_func_euidaccess=no \
ac_cv_func_fstatat=yes \
ac_cv_func_getdelim=yes \
ac_cv_func_getgroups=yes \
ac_cv_func_getgroups_works=yes \
ac_cv_func_getloadavg=no \
ac_cv_func_lstat_dereferences_slashed_symlink=yes \
ac_cv_func_lstat_empty_string_bug=no \
ac_cv_func_strerror_r_char_p=no \
ac_cv_func_strnlen_working=yes \
ac_cv_func_strtod=yes \
ac_cv_func_working_mktime=yes \
ac_cv_have_decl_strerror_r=yes \
ac_cv_have_decl_strnlen=yes \
ac_cv_lib_getloadavg_getloadavg=no \
ac_cv_lib_util_getloadavg=no \
ac_fsusage_space=yes \
ac_use_included_regex=no \
am_cv_func_working_getline=yes \
fu_cv_sys_stat_statfs2_bsize=yes \
gl_cv_func_getcwd_null=yes \
gl_cv_func_getcwd_path_max=yes \
gl_cv_func_gettimeofday_clobber=no \
gl_cv_func_fstatat_zero_flag=no \
gl_cv_func_link_follows_symlink=no \
gl_cv_func_re_compile_pattern_working=yes \
gl_cv_func_svid_putenv=yes \
gl_cv_func_tzset_clobber=no \
gl_cv_func_working_mkstemp=yes \
gl_cv_func_working_utimes=yes \
gl_getline_needs_run_time_check=no \
gl_cv_have_proc_uptime=yes \
utils_cv_localtime_cache=no \
PERL=missing
COREUTILS_CONF_OPTS = --disable-rpath --enable-single-binary=shebangs
define COREUTILS_POST_INSTALL
# some things go in root rather than usr
for f in $(COREUTILS_BIN_PROGS); do \
mv $(TARGET_DIR)/usr/bin/$$f $(TARGET_DIR)/bin/$$f; \
done
# link for archaic shells
ln -fs test $(TARGET_DIR)/usr/bin/[
# gnu thinks chroot is in bin, debian thinks it's in sbin
mv $(TARGET_DIR)/usr/bin/chroot $(TARGET_DIR)/usr/sbin/chroot
endef
COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_POST_INSTALL
# If both coreutils and busybox are selected, the corresponding applets
# may need to be reinstated by the clean targets.
$(eval $(autotools-package))