From 3467cf73051d2b8d28d48dfdd694f66315f3b8ca Mon Sep 17 00:00:00 2001 From: Peter Korsgaard Date: Mon, 23 Mar 2009 21:46:47 +0000 Subject: m4: cleanup - Convert into Makefile.autotools.in format for target build - Build host version in BUILD_DIR and install into HOST_DIR --- package/m4/m4.mk | 129 ++++++++++++------------------------------------------- 1 file changed, 27 insertions(+), 102 deletions(-) (limited to 'package/m4') diff --git a/package/m4/m4.mk b/package/m4/m4.mk index bef968e46..9259ed718 100644 --- a/package/m4/m4.mk +++ b/package/m4/m4.mk @@ -3,135 +3,60 @@ # m4 # ############################################################# -M4_VERSION:=1.4.9 -M4_SOURCE:=m4-$(M4_VERSION).tar.bz2 -M4_CAT:=$(BZCAT) -M4_SITE:=$(BR2_GNU_MIRROR)/m4 -M4_DIR:=$(BUILD_DIR)/m4-$(M4_VERSION) -M4_HOST_DIR:=$(TOOL_BUILD_DIR)/m4-$(M4_VERSION) -M4_BINARY:=m4 -M4_TARGET_BINARY:=usr/bin/m4 +M4_VERSION = 1.4.9 +M4_SOURCE = m4-$(M4_VERSION).tar.bz2 +M4_SITE = $(BR2_GNU_MIRROR)/m4 -ifeq ($(UCLIBC_HAS_REGEX),y) -gl_cv_func_re_compile_pattern_working=gl_cv_func_re_compile_pattern_working=yes -endif -ifneq ($(BR2_USE_WCHAR),y) -gt_cv_c_wchar_t=gt_cv_c_wchar_t=no -gl_cv_absolute_wchar_h=gl_cv_absolute_wchar_h=__fpending.h +ifeq ($(BR2_ENABLE_DEBUG),y) # no install-exec +M4_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install endif -$(DL_DIR)/$(M4_SOURCE): - $(call DOWNLOAD,$(M4_SITE),$(M4_SOURCE)) +M4_CONF_ENV = gl_cv_func_gettimeofday_clobber=no -m4-source: $(DL_DIR)/$(M4_SOURCE) - -$(M4_DIR)/.unpacked: $(DL_DIR)/$(M4_SOURCE) - $(M4_CAT) $(DL_DIR)/$(M4_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - toolchain/patch-kernel.sh $(M4_DIR) package/m4 m4\*.patch - $(CONFIG_UPDATE) $(@D) - touch $@ - -$(M4_DIR)/.configured: $(M4_DIR)/.unpacked - (cd $(M4_DIR); rm -rf config.cache; \ - $(TARGET_CONFIGURE_OPTS) \ - $(TARGET_CONFIGURE_ARGS) \ - gl_cv_func_gettimeofday_clobber=no \ - $(gl_cv_func_re_compile_pattern_working) \ - $(gt_cv_c_wchar_t) \ - $(gl_cv_absolute_wchar_h) \ - ./configure \ - --target=$(GNU_TARGET_NAME) \ - --host=$(GNU_TARGET_NAME) \ - --build=$(GNU_HOST_NAME) \ - --prefix=/usr \ - --exec-prefix=/usr \ - $(DISABLE_LARGEFILE) \ - ) - touch $@ - -$(M4_DIR)/src/$(M4_BINARY): $(M4_DIR)/.configured - $(MAKE) CC=$(TARGET_CC) RANLIB=$(TARGET_RANLIB) AR=$(TARGET_AR) -C $(M4_DIR) - -$(TARGET_DIR)/$(M4_TARGET_BINARY): $(M4_DIR)/src/$(M4_BINARY) - $(MAKE) \ - prefix=$(TARGET_DIR)/usr \ - exec_prefix=$(TARGET_DIR)/usr \ - bindir=$(TARGET_DIR)/usr/bin \ - sbindir=$(TARGET_DIR)/usr/sbin \ - libexecdir=$(TARGET_DIR)/usr/lib \ - datadir=$(TARGET_DIR)/usr/share \ - sysconfdir=$(TARGET_DIR)/etc \ - localstatedir=$(TARGET_DIR)/var \ - libdir=$(TARGET_DIR)/usr/lib \ - infodir=$(TARGET_DIR)/usr/share/info \ - mandir=$(TARGET_DIR)/usr/share/man \ - includedir=$(TARGET_DIR)/usr/include \ - -C $(M4_DIR) install - $(STRIPCMD) $(TARGET_DIR)/$(M4_TARGET_BINARY) > /dev/null 2>&1 -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 +ifneq ($(BR2_USE_WCHAR),y) +M4_CONF_ENV += gt_cv_c_wchar_t=no gl_cv_absolute_wchar_h=__fpending.h endif - rm -rf $(TARGET_DIR)/share/locale - rm -rf $(TARGET_DIR)/usr/share/doc - touch -c $@ - -m4: uclibc $(TARGET_DIR)/$(M4_TARGET_BINARY) -m4-clean: - $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(M4_DIR) uninstall - -$(MAKE) -C $(M4_DIR) clean +M4_DEPENDENCIES = uclibc -m4-dirclean: - rm -rf $(M4_DIR) +$(eval $(call AUTOTARGETS,package,m4)) -############################################################# -# # m4 for the host -# -############################################################# +M4_HOST_DIR:=$(BUILD_DIR)/m4-$(M4_VERSION)-host -$(M4_HOST_DIR)/.unpacked: $(DL_DIR)/$(M4_SOURCE) - $(M4_CAT) $(DL_DIR)/$(M4_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - - toolchain/patch-kernel.sh $(M4_HOST_DIR) package/m4 m4\*.patch - $(CONFIG_UPDATE) $(@D) +$(STAMP_DIR)/host_m4_unpacked: $(DL_DIR)/$(M4_SOURCE) + mkdir -p $(M4_HOST_DIR) + $(INFLATE$(suffix $(M4_SOURCE))) $< | \ + $(TAR) $(TAR_STRIP_COMPONENTS)=1 -C $(M4_HOST_DIR) $(TAR_OPTIONS) - + toolchain/patch-kernel.sh $(M4_HOST_DIR) package/m4/ \*.patch touch $@ -$(M4_HOST_DIR)/.configured: $(M4_HOST_DIR)/.unpacked +$(STAMP_DIR)/host_m4_configured: $(STAMP_DIR)/host_m4_unpacked (cd $(M4_HOST_DIR); rm -rf config.cache; \ $(HOST_CONFIGURE_OPTS) \ CFLAGS="$(HOST_CFLAGS)" \ LDFLAGS="$(HOST_LDFLAGS)" \ - gl_cv_func_gettimeofday_clobber=no \ - $(gl_cv_func_re_compile_pattern_working) \ ./configure \ - --prefix=$(STAGING_DIR)/usr \ - $(DISABLE_LARGEFILE) \ + --prefix="$(HOST_DIR)/usr" \ + --sysconfdir="$(HOST_DIR)/etc" \ + --disable-static \ ) touch $@ -$(M4_HOST_DIR)/src/$(M4_BINARY): $(M4_HOST_DIR)/.configured +$(STAMP_DIR)/host_m4_compiled: $(STAMP_DIR)/host_m4_configured $(MAKE) -C $(M4_HOST_DIR) + touch $@ -$(STAGING_DIR)/$(M4_TARGET_BINARY): $(M4_HOST_DIR)/src/$(M4_BINARY) +$(STAMP_DIR)/host_m4_installed: $(STAMP_DIR)/host_m4_compiled $(MAKE) -C $(M4_HOST_DIR) install + touch $@ -host-m4: uclibc $(STAGING_DIR)/$(M4_TARGET_BINARY) +host-m4: $(STAMP_DIR)/host_m4_installed host-m4-clean: - $(MAKE) -C $(M4_HOST_DIR) uninstall + rm -f $(addprefix $(STAMP_DIR)/host_m4_,unpacked configured compiled installed) + -$(MAKE) -C $(M4_HOST_DIR) uninstall -$(MAKE) -C $(M4_HOST_DIR) clean host-m4-dirclean: rm -rf $(M4_HOST_DIR) - -############################################################# -# -# Toplevel Makefile options -# -############################################################# -ifeq ($(BR2_PACKAGE_M4),y) -TARGETS+=m4 -endif -- cgit v1.2.3-55-g7522