Add building of m4 for host and fix autoconf dependency. Submitted by Julien Letessie...
author"Steven J. Hill" <sjhill@realitydiluted.com>
Thu, 5 Jul 2007 17:54:38 +0000 (17:54 -0000)
committer"Steven J. Hill" <sjhill@realitydiluted.com>
Thu, 5 Jul 2007 17:54:38 +0000 (17:54 -0000)
package/autoconf/autoconf.mk
package/m4/m4.mk

index 5b1af67888f0097da3f7dec5e0fc02f0567645d2..b7ef6fc8fc6e87e4495624ed257dcd084211e8b2 100644 (file)
@@ -111,7 +111,7 @@ $(AUTOCONF_HOST_DIR)/bin/$(AUTOCONF_BINARY): $(AUTOCONF_HOST_DIR)/.configured
 $(AUTOCONF): $(AUTOCONF_HOST_DIR)/bin/$(AUTOCONF_BINARY)
        $(MAKE) -C $(AUTOCONF_HOST_DIR) install;
 
-host-autoconf: m4-host host-libtool $(AUTOCONF)
+host-autoconf: host-m4 host-libtool $(AUTOCONF)
 
 host-autoconf-clean:
        $(MAKE) CC=$(HOST_CC) -C $(AUTOCONF_HOST_DIR) uninstall
index 6742f80bbd8d395771ff997813f066757b3520a4..587144e3d645ba7a147edc6b8231f513f665cca6 100644 (file)
@@ -8,6 +8,7 @@ M4_SOURCE:=m4-$(M4_VER).tar.bz2
 M4_CAT:=$(BZCAT)
 M4_SITE:=http://ftp.gnu.org/pub/gnu/m4
 M4_DIR:=$(BUILD_DIR)/m4-$(M4_VER)
+M4_HOST_DIR:=$(TOOL_BUILD_DIR)/m4-$(M4_VER)
 M4_BINARY:=m4
 M4_TARGET_BINARY:=usr/bin/m4
 
@@ -24,7 +25,7 @@ $(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)/.unpacked
+       touch $@
 
 $(M4_DIR)/.configured: $(M4_DIR)/.unpacked
        (cd $(M4_DIR); rm -rf config.cache; \
@@ -40,7 +41,7 @@ $(M4_DIR)/.configured: $(M4_DIR)/.unpacked
                --exec-prefix=/usr \
                $(DISABLE_LARGEFILE) \
        );
-       touch $(M4_DIR)/.configured
+       touch $@
 
 $(M4_DIR)/src/$(M4_BINARY): $(M4_DIR)/.configured
        $(MAKE) CC=$(TARGET_CC) -C $(M4_DIR)
@@ -63,6 +64,7 @@ $(TARGET_DIR)/$(M4_TARGET_BINARY): $(M4_DIR)/src/$(M4_BINARY)
        $(STRIP) $(TARGET_DIR)/$(M4_TARGET_BINARY) > /dev/null 2>&1
        rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
                $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
+       touch -c $@
 
 m4: uclibc $(TARGET_DIR)/$(M4_TARGET_BINARY)
 
@@ -73,6 +75,46 @@ m4-clean:
 m4-dirclean:
        rm -rf $(M4_DIR)
 
+#############################################################
+#
+# m4 for the 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)
+       touch $@
+
+$(M4_HOST_DIR)/.configured: $(M4_HOST_DIR)/.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) \
+       );
+       touch $@
+
+$(M4_HOST_DIR)/src/$(M4_BINARY): $(M4_HOST_DIR)/.configured
+       $(MAKE) -C $(M4_HOST_DIR)
+
+$(STAGING_DIR)/$(M4_TARGET_BINARY): $(M4_HOST_DIR)/src/$(M4_BINARY)
+       $(MAKE) -C $(M4_HOST_DIR) install;
+
+host-m4: uclibc $(STAGING_DIR)/$(M4_TARGET_BINARY)
+
+host-m4-clean:
+       $(MAKE) -C $(M4_HOST_DIR) uninstall
+       -$(MAKE) -C $(M4_HOST_DIR) clean
+
+host-m4-dirclean:
+       rm -rf $(M4_HOST_DIR)
+
 #############################################################
 #
 # Toplevel Makefile options