Build - Fix build quirks for fresh
[tpg/acess2.git] / Externals / cross-compiler / Makefile
index 0326b44..935d646 100644 (file)
@@ -1,64 +1,41 @@
+#
+#
+#
+include Makefile.common.mk
 
--include ../../Makefile.cfg
+GCC_TARGETS := gcc
 
-GCC_ARCHIVE:=$(lastword $(sort $(wildcard gcc-*.tar.bz2)))
-GCC_DIR:=$(GCC_ARCHIVE:%.tar.bz2=%)
-BINUTILS_ARCHIVE:=$(lastword $(sort $(wildcard binutils-*.tar.bz2)))
-BINUTILS_DIR:=$(BINUTILS_ARCHIVE:%.tar.bz2=%)
+PREFIX := $(OUTDIR)
+BDIR := build-n-$(ARCH)/
+BDIR_GCC := $(BDIR)gcc
+BDIR_BINUTILS := $(BDIR)binutils
 
-BINUTILS_CHANGES := config.sub bfd/config.bfd gas/configure.tgt ld/configure.tgt ld/emulparams/acess2_i386.sh ld/Makefile.in
-GCC_CHANGES := config.sub gcc/config.gcc gcc/config/acess2.h libgcc/config.host 
+ENVVARS := PATH=$(OUTDIR)-BUILD/bin:$$PATH
 
-ARCH?=i586
-PARLEVEL ?= 3
-
-TARGET=$(ARCH)-pc-acess2
-PREFIX=$(shell pwd)/cross
-
-.PHONY: all clean binutils gcc include
-
-all: include binutils gcc
+include Makefile.rules.mk
 
 include:
        mkdir -p $(PREFIX)
-       rm -r $(PREFIX)/include
-       ln -s $(ACESSDIR)/Usermode/include $(PREFIX)/include
-
-gcc: $(GCC_DIR) $(PREFIX)/bin/$(TARGET)-gcc
-
-binutils: $(BINUTILS_DIR) $(PREFIX)/bin/$(TARGET)-ld
-
-clean:
-       $(RM) -rf $(BINUTILS_DIR) build-*-$(ARCH)
 
-$(BINUTILS_DIR) $(GCC_DIR): %: %.tar.bz2
-       tar -xf $<
-$(warning $(BINUTILS_DIR) $(GCC_DIR))
+$(GCC_DIR)/libstdc++-v3/configure: $(GCC_DIR)/libstdc++-v3/crossconfig.m4
+       cd $(GCC_DIR)/libstdc++-v3/ && autoconf
 
-$(GCC_DIR)/%: patches/gcc/%.patch
-       @echo [PATCH] $@
-       @tar -xf $(GCC_ARCHIVE) $@
-       @patch $@ $<
-$(GCC_DIR)/%: patches/gcc/%
-       @echo [CP] $@
-       @cp $< $@
+$(BDIR_BINUTILS)/Makefile: $(addprefix $(BINUTILS_DIR)/,$(BINUTILS_CHANGES))
+       @mkdir -p $(BDIR_BINUTILS)
+       @cd $(BDIR_BINUTILS) && ../../$(BINUTILS_DIR)/configure --target=$(TARGET) --prefix=$(PREFIX) --disable-nls --enable-shared --without-docdir
 
-$(BINUTILS_DIR)/%: patches/binutils/%.patch
-       @echo [PATCH] $@
-       @tar -xf $(BINUTILS_ARCHIVE) $@
-       @patch $@ $<
-$(BINUTILS_DIR)/%: patches/binutils/%
-       @echo [CP] $@
-       @cp $< $@
+$(PREFIX)/bin/$(TARGET)-ld: $(BDIR_BINUTILS)/Makefile
+       @make -C $(BDIR_BINUTILS) all -j $(PARLEVEL)
+       @make -C $(BDIR_BINUTILS) install
 
-$(PREFIX)/bin/$(TARGET)-ld: $(addprefix $(BINUTILS_DIR)/,$(BINUTILS_CHANGES))
-       @mkdir -p build-binutils-$(ARCH)
-       @cd build-binutils-$(ARCH) && ../$(BINUTILS_DIR)/configure --target=$(TARGET) --prefix=$(PREFIX) --disable-nls
-       @cd build-binutils-$(ARCH) && make all install -j $(PARLEVEL)
+$(BDIR_GCC)/Makefile: Makefile $(addprefix $(GCC_DIR)/,$(GCC_CHANGES)) $(GCC_DIR)/libstdc++-v3/configure
+       @mkdir -p $(BDIR_GCC)
+       @cd $(BDIR_GCC) && $(ENVVARS) ../../$(GCC_DIR)/configure --target=$(TARGET) --prefix=$(PREFIX) --disable-nls --enable-langs=c,c++ --includedir=$(ACESSDIR)/Usermode/include --without-docdir --enable-threads=posix
+       @echo "MAKEINFO = :" >> $(BDIR_GCC)/Makefile
 
-$(PREFIX)/bin/$(TARGET)-gcc:  $(addprefix $(GCC_DIR)/,$(GCC_CHANGES))
-       @mkdir -p build-gcc-$(ARCH)
-       cd build-gcc-$(ARCH) && PATH=$(PREFIX)/bin:$$PATH ../$(GCC_DIR)/configure --target=$(TARGET) --prefix=$(PREFIX) --disable-nls --enable-langs=c,c++ --includedir=$(ACESSDIR)/Usermode/include --libdir=$(ACESSDIR)/Usermode/Output/$(ARCH)/Lib
-       @cd build-gcc-$(ARCH) && PATH=$(PREFIX)/bin:$$PATH make all-gcc all-target-libgcc install-gcc install-target-libgcc -j $(PARLEVEL)
+$(PREFIX)/bin/$(TARGET)-gcc: $(BDIR_GCC)/Makefile
+       @$(ENVVARS) make -C $(BDIR_GCC) $(GCC_TARGETS:%=all-%) -j $(PARLEVEL)
+       #@$(ENVVARS) make -C $(BDIR_GCC)/libstdc++-v3/ all-target-libsupc++ -j $(PARLEVEL)
+       @$(ENVVARS) make -C $(BDIR_GCC) $(GCC_TARGETS:%=install-%)
 
 

UCC git Repository :: git.ucc.asn.au