summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile3
-rw-r--r--make/autoconf.mk60
-rw-r--r--make/automake.mk60
-rw-r--r--make/libtool.mk61
-rw-r--r--make/m4.mk60
5 files changed, 244 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 0be4e8a6b..a89c65f15 100644
--- a/Makefile
+++ b/Makefile
@@ -81,6 +81,9 @@ TARGETS+=busybox tinylogin
# may want some header files so you can compile stuff....
#TARGETS+=ncurses-headers zlib-headers openssl-headers
+# More development system stuff for those that want it
+#TARGETS+=m4 autoconf automake libtool
+
# Some nice debugging tools
#TARGETS+=gdb strace
diff --git a/make/autoconf.mk b/make/autoconf.mk
new file mode 100644
index 000000000..0ba80381a
--- /dev/null
+++ b/make/autoconf.mk
@@ -0,0 +1,60 @@
+#############################################################
+#
+# autoconf
+#
+#############################################################
+AUTOCONF_SOURCE:=autoconf-2.57.tar.bz2
+AUTOCONF_SITE:=ftp://ftp.gnu.org/gnu/autoconf
+AUTOCONF_CAT:=bzcat
+AUTOCONF_DIR:=$(BUILD_DIR)/autoconf-2.57
+AUTOCONF_BINARY:=autoconf
+AUTOCONF_TARGET_BINARY:=usr/bin/autoconf
+
+$(DL_DIR)/$(AUTOCONF_SOURCE):
+ $(WGET) -P $(DL_DIR) $(AUTOCONF_SITE)/$(AUTOCONF_SOURCE)
+
+autoconf-source: $(DL_DIR)/$(AUTOCONF_SOURCE)
+
+$(AUTOCONF_DIR)/.unpacked: $(DL_DIR)/$(AUTOCONF_SOURCE)
+ $(AUTOCONF_CAT) $(DL_DIR)/$(AUTOCONF_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ touch $(AUTOCONF_DIR)/.unpacked
+
+$(AUTOCONF_DIR)/.configured: $(AUTOCONF_DIR)/.unpacked
+ (cd $(AUTOCONF_DIR); rm -f config.cache; CC=$(TARGET_CC1) \
+ CFLAGS=-D_POSIX_SOURCE EMACS="no" ./configure \
+ --target=i386-uclibc \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ );
+ touch $(AUTOCONF_DIR)/.configured
+
+$(AUTOCONF_DIR)/bin/$(AUTOCONF_BINARY): $(AUTOCONF_DIR)/.configured
+ $(MAKE) CC=$(TARGET_CC1) -C $(AUTOCONF_DIR)
+
+$(TARGET_DIR)/$(AUTOCONF_TARGET_BINARY): $(AUTOCONF_DIR)/bin/$(AUTOCONF_BINARY)
+ PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC1) \
+ $(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/info \
+ mandir=$(TARGET_DIR)/usr/man \
+ includedir=$(TARGET_DIR)/usr/include \
+ -C $(AUTOCONF_DIR) install;
+ rm -rf $(TARGET_DIR)/share/locale
+
+autoconf: uclibc $(TARGET_DIR)/$(AUTOCONF_TARGET_BINARY)
+
+autoconf-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC1) -C $(AUTOCONF_DIR) uninstall
+ -make -C $(AUTOCONF_DIR) clean
+
+autoconf-dirclean:
+ rm -rf $(AUTOCONF_DIR)
+
diff --git a/make/automake.mk b/make/automake.mk
new file mode 100644
index 000000000..698b79767
--- /dev/null
+++ b/make/automake.mk
@@ -0,0 +1,60 @@
+#############################################################
+#
+# automake
+#
+#############################################################
+AUTOMAKE_SOURCE:=automake-1.7.2.tar.bz2
+AUTOMAKE_SITE:=ftp://ftp.gnu.org/gnu/automake
+AUTOMAKE_CAT:=bzcat
+AUTOMAKE_DIR:=$(BUILD_DIR)/automake-1.7.2
+AUTOMAKE_BINARY:=automake
+AUTOMAKE_TARGET_BINARY:=usr/bin/automake
+
+$(DL_DIR)/$(AUTOMAKE_SOURCE):
+ $(WGET) -P $(DL_DIR) $(AUTOMAKE_SITE)/$(AUTOMAKE_SOURCE)
+
+automake-source: $(DL_DIR)/$(AUTOMAKE_SOURCE)
+
+$(AUTOMAKE_DIR)/.unpacked: $(DL_DIR)/$(AUTOMAKE_SOURCE)
+ $(AUTOMAKE_CAT) $(DL_DIR)/$(AUTOMAKE_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ touch $(AUTOMAKE_DIR)/.unpacked
+
+$(AUTOMAKE_DIR)/.configured: $(AUTOMAKE_DIR)/.unpacked
+ (cd $(AUTOMAKE_DIR); rm -f config.cache; CC=$(TARGET_CC1) \
+ CFLAGS=-D_POSIX_SOURCE ./configure \
+ --target=i386-uclibc \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ );
+ touch $(AUTOMAKE_DIR)/.configured
+
+$(AUTOMAKE_DIR)/$(AUTOMAKE_BINARY): $(AUTOMAKE_DIR)/.configured
+ $(MAKE) CC=$(TARGET_CC1) -C $(AUTOMAKE_DIR)
+
+$(TARGET_DIR)/$(AUTOMAKE_TARGET_BINARY): $(AUTOMAKE_DIR)/$(AUTOMAKE_BINARY)
+ PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC1) \
+ $(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/info \
+ mandir=$(TARGET_DIR)/usr/man \
+ includedir=$(TARGET_DIR)/usr/include \
+ -C $(AUTOMAKE_DIR) install;
+ rm -rf $(TARGET_DIR)/share/locale
+
+automake: uclibc $(TARGET_DIR)/$(AUTOMAKE_TARGET_BINARY)
+
+automake-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC1) -C $(AUTOMAKE_DIR) uninstall
+ -make -C $(AUTOMAKE_DIR) clean
+
+automake-dirclean:
+ rm -rf $(AUTOMAKE_DIR)
+
diff --git a/make/libtool.mk b/make/libtool.mk
new file mode 100644
index 000000000..ca2702d86
--- /dev/null
+++ b/make/libtool.mk
@@ -0,0 +1,61 @@
+#############################################################
+#
+# libtool
+#
+#############################################################
+LIBTOOL_SOURCE:=libtool-1.4.3.tar.gz
+LIBTOOL_SITE:=ftp://ftp.gnu.org/gnu/libtool
+LIBTOOL_CAT:=zcat
+LIBTOOL_DIR:=$(BUILD_DIR)/libtool-1.4.3
+LIBTOOL_BINARY:=libtool
+LIBTOOL_TARGET_BINARY:=usr/bin/libtool
+
+$(DL_DIR)/$(LIBTOOL_SOURCE):
+ $(WGET) -P $(DL_DIR) $(LIBTOOL_SITE)/$(LIBTOOL_SOURCE)
+
+libtool-source: $(DL_DIR)/$(LIBTOOL_SOURCE)
+
+$(LIBTOOL_DIR)/.unpacked: $(DL_DIR)/$(LIBTOOL_SOURCE)
+ $(LIBTOOL_CAT) $(DL_DIR)/$(LIBTOOL_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ touch $(LIBTOOL_DIR)/.unpacked
+
+$(LIBTOOL_DIR)/.configured: $(LIBTOOL_DIR)/.unpacked
+ (cd $(LIBTOOL_DIR); rm -f config.cache; CC=$(TARGET_CC1) \
+ CFLAGS=-D_POSIX_SOURCE ./configure \
+ --target=i386-uclibc \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ );
+ touch $(LIBTOOL_DIR)/.configured
+
+$(LIBTOOL_DIR)/$(LIBTOOL_BINARY): $(LIBTOOL_DIR)/.configured
+ $(MAKE) CC=$(TARGET_CC1) -C $(LIBTOOL_DIR)
+ touch -c $(LIBTOOL_DIR)/$(LIBTOOL_BINARY)
+
+$(TARGET_DIR)/$(LIBTOOL_TARGET_BINARY): $(LIBTOOL_DIR)/$(LIBTOOL_BINARY)
+ PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC1) \
+ $(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/info \
+ mandir=$(TARGET_DIR)/usr/man \
+ includedir=$(TARGET_DIR)/usr/include \
+ -C $(LIBTOOL_DIR) install;
+ rm -rf $(TARGET_DIR)/share/locale
+
+libtool: uclibc $(TARGET_DIR)/$(LIBTOOL_TARGET_BINARY)
+
+libtool-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC1) -C $(LIBTOOL_DIR) uninstall
+ -make -C $(LIBTOOL_DIR) clean
+
+libtool-dirclean:
+ rm -rf $(LIBTOOL_DIR)
+
diff --git a/make/m4.mk b/make/m4.mk
new file mode 100644
index 000000000..cc10e4a60
--- /dev/null
+++ b/make/m4.mk
@@ -0,0 +1,60 @@
+#############################################################
+#
+# m4
+#
+#############################################################
+M4_SOURCE:=m4-1.4.tar.gz
+M4_SITE:=ftp://ftp.gnu.org/gnu/m4
+M4_CAT:=zcat
+M4_DIR:=$(BUILD_DIR)/m4-1.4
+M4_BINARY:=m4
+M4_TARGET_BINARY:=usr/bin/m4
+
+$(DL_DIR)/$(M4_SOURCE):
+ $(WGET) -P $(DL_DIR) $(M4_SITE)/$(M4_SOURCE)
+
+m4-source: $(DL_DIR)/$(M4_SOURCE)
+
+$(M4_DIR)/.unpacked: $(DL_DIR)/$(M4_SOURCE)
+ $(M4_CAT) $(DL_DIR)/$(M4_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ touch $(M4_DIR)/.unpacked
+
+$(M4_DIR)/.configured: $(M4_DIR)/.unpacked
+ (cd $(M4_DIR); rm -f config.cache; CC=$(TARGET_CC1) \
+ CFLAGS=-D_POSIX_SOURCE ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ );
+ touch $(M4_DIR)/.configured
+
+$(M4_DIR)/src/$(M4_BINARY): $(M4_DIR)/.configured
+ $(MAKE) CC=$(TARGET_CC1) -C $(M4_DIR)
+
+$(TARGET_DIR)/$(M4_TARGET_BINARY): $(M4_DIR)/src/$(M4_BINARY)
+ PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC1) \
+ $(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/info \
+ mandir=$(TARGET_DIR)/usr/man \
+ includedir=$(TARGET_DIR)/usr/include \
+ -C $(M4_DIR) install;
+ rm -rf $(TARGET_DIR)/share/locale
+
+m4: uclibc $(TARGET_DIR)/$(M4_TARGET_BINARY)
+
+m4-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC1) -C $(M4_DIR) uninstall
+ -make -C $(M4_DIR) clean
+
+m4-dirclean:
+ rm -rf $(M4_DIR)
+