3fdf0bffb8
We have been passing -q to ./configure when using 'make -s' for packages using Makefile.autotools.in for some time. Do the same for packages using autotools, but not using the Makefile.autotools.in infrastructure, taking care to not do it for packages with hand written configure scripts. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
118 lines
3.5 KiB
Makefile
118 lines
3.5 KiB
Makefile
#############################################################
|
|
#
|
|
# bash
|
|
#
|
|
#############################################################
|
|
BASH_VERSION:=3.2
|
|
BASH_SOURCE:=bash-$(BASH_VERSION).tar.gz
|
|
BASH_SITE:=$(BR2_GNU_MIRROR)/bash
|
|
BASH_CAT:=$(ZCAT)
|
|
BASH_DIR:=$(BUILD_DIR)/bash-$(BASH_VERSION)
|
|
BASH_BINARY:=bash
|
|
BASH_TARGET_BINARY:=bin/bash
|
|
|
|
$(DL_DIR)/$(BASH_SOURCE):
|
|
$(call DOWNLOAD,$(BASH_SITE),$(BASH_SOURCE))
|
|
|
|
bash-source: $(DL_DIR)/$(BASH_SOURCE)
|
|
|
|
bash-unpacked: $(BASH_DIR)/.unpacked
|
|
|
|
$(BASH_DIR)/.unpacked: $(DL_DIR)/$(BASH_SOURCE)
|
|
$(BASH_CAT) $(DL_DIR)/$(BASH_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
|
|
toolchain/patch-kernel.sh $(BASH_DIR) package/bash/ bash??-\*
|
|
# This is broken when -lintl is added to LIBS
|
|
$(SED) 's,LIBS_FOR_BUILD =.*,LIBS_FOR_BUILD =,g' \
|
|
$(BASH_DIR)/builtins/Makefile.in
|
|
# using target's LDFLAGS as LDFLAGS_FOR_BUILD is b0rked
|
|
-$(SED) '/^LDFLAGS_FOR_BUILD/d' $(BASH_DIR)/{,*/{,*/}}Makefile.in
|
|
$(CONFIG_UPDATE) $(BASH_DIR)/support
|
|
touch $@
|
|
|
|
$(BASH_DIR)/.configured: $(BASH_DIR)/.unpacked
|
|
# bash_cv_have_mbstate_t=yes
|
|
(cd $(BASH_DIR); rm -rf config.cache; \
|
|
$(TARGET_CONFIGURE_OPTS) \
|
|
$(TARGET_CONFIGURE_ARGS) \
|
|
CCFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
|
|
ac_cv_func_setvbuf_reversed=no \
|
|
ac_cv_have_decl_sys_siglist=yes \
|
|
bash_cv_job_control_missing=present \
|
|
bash_cv_sys_named_pipes=present \
|
|
bash_cv_unusable_rtsigs=no \
|
|
bash_cv_func_ctype_nonascii=yes \
|
|
bash_cv_decl_under_sys_siglist=yes \
|
|
bash_cv_ulimit_maxfds=yes \
|
|
bash_cv_getcwd_malloc=yes \
|
|
bash_cv_func_sigsetjmp=present \
|
|
bash_cv_printf_a_format=yes \
|
|
./configure $(QUIET) \
|
|
--target=$(GNU_TARGET_NAME) \
|
|
--host=$(GNU_TARGET_NAME) \
|
|
--build=$(GNU_HOST_NAME) \
|
|
--prefix=/usr \
|
|
--exec-prefix=/usr \
|
|
--bindir=/usr/bin \
|
|
--sbindir=/usr/sbin \
|
|
--libdir=/lib \
|
|
--libexecdir=/usr/lib \
|
|
--sysconfdir=/etc \
|
|
--datadir=/usr/share \
|
|
--localstatedir=/var \
|
|
--mandir=/usr/share/man \
|
|
--infodir=/usr/share/info \
|
|
--includedir=/usr/include \
|
|
$(DISABLE_NLS) \
|
|
$(DISABLE_LARGEFILE) \
|
|
--with-curses \
|
|
--enable-alias \
|
|
--without-bash-malloc \
|
|
$(ENABLE_DEBUG) \
|
|
)
|
|
touch $@
|
|
|
|
$(BASH_DIR)/$(BASH_BINARY): $(BASH_DIR)/.configured
|
|
$(MAKE1) CC=$(TARGET_CC) CC_FOR_BUILD="$(HOSTCC)" -C $(BASH_DIR)
|
|
|
|
$(TARGET_DIR)/$(BASH_TARGET_BINARY): $(BASH_DIR)/$(BASH_BINARY)
|
|
mkdir -p $(TARGET_DIR)/bin
|
|
$(MAKE1) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(BASH_DIR) install
|
|
rm -f $(TARGET_DIR)/bin/bash*
|
|
mv $(TARGET_DIR)/usr/bin/bash* $(TARGET_DIR)/bin/
|
|
(cd $(TARGET_DIR)/bin; /bin/ln -fs bash sh)
|
|
ifneq ($(BR2_HAVE_INFOPAGES),y)
|
|
rm -rf $(TARGET_DIR)/usr/share/info
|
|
endif
|
|
ifneq ($(BR2_HAVE_MANPAGES),y)
|
|
rm -rf $(TARGET_DIR)/usr/share/man
|
|
endif
|
|
rm -rf $(TARGET_DIR)/share/locale
|
|
rm -rf $(TARGET_DIR)/usr/share/doc
|
|
|
|
# If both bash and busybox are selected, make certain bash wins
|
|
# the fight over who gets to own the /bin/sh symlink.
|
|
ifeq ($(BR2_PACKAGE_BUSYBOX),y)
|
|
bash: ncurses busybox $(TARGET_DIR)/$(BASH_TARGET_BINARY)
|
|
else
|
|
bash: ncurses $(TARGET_DIR)/$(BASH_TARGET_BINARY)
|
|
endif
|
|
|
|
# If both bash and busybox are selected, the /bin/sh symlink
|
|
# may need to be reinstated by the clean targets.
|
|
bash-clean:
|
|
-$(MAKE1) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(BASH_DIR) uninstall
|
|
rm -f $(TARGET_DIR)/$(BASH_TARGET_BINARY)
|
|
-$(MAKE1) -C $(BASH_DIR) clean
|
|
|
|
bash-dirclean:
|
|
rm -rf $(BASH_DIR)
|
|
|
|
#############################################################
|
|
#
|
|
# Toplevel Makefile options
|
|
#
|
|
#############################################################
|
|
ifeq ($(BR2_PACKAGE_BASH),y)
|
|
TARGETS+=bash
|
|
endif
|