From: David D. Zuhn Date: Tue, 10 Nov 1992 20:18:06 +0000 (+0000) Subject: new file, build many toolchains at once X-Git-Tag: gdb-4_18~20677 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=543cf4ac149b1166ea0a9f1d03d73eb1eac508ab;p=platform%2Fupstream%2Fbinutils.git new file, build many toolchains at once --- diff --git a/build-all.mk b/build-all.mk new file mode 100644 index 0000000..e642c20 --- /dev/null +++ b/build-all.mk @@ -0,0 +1,161 @@ +# Build all of the targets for any given host..... +# +# This file is going to be ugly. It will be VERY specific to the +# Cygnus environment and build-process. +# +# + +ifndef host +error:; @echo You must set the variable \"host\" to use this Makefile ; exit 1 +else + +# the rest of the makefile + +TREE = devo + +NATIVE = native + +DATE = 921110 + +TAG = latest-$(DATE) + +INSTALLDIR = /cirdan/justice/devo-test/$(TAG) + +GCC = gcc -O -g +CFLAGS = -O + +log = 1>$(canonhost)-build-log 2>&1 +tlog = 1> $(canonhost)-x-$$i-build-log 2>&1 + +canonhost := $(shell $(TREE)/config.sub $(host)) + +ifeq ($(canonhost),sparc-sun-sunos4.1.1) +TARGETS = $(NATIVE) m68k-aout i386-aout a29k-amd-udi \ + i960-vxworks m68k-coff m68k-vxworks \ + i960-intel-nindy sparc-aout sparc-vxworks +all: all-cygnus +endif + +ifeq ($(canonhost),m68k-sun-sunos4.1.1) +TARGETS = $(NATIVE) m68k-vxworks m68k-aout i386-aout +GCC = gcc -O -g -msoft-float +all: all-cygnus +endif + +ifeq ($(canonhost),sparc-sun-solaris2) +TARGETS = $(NATIVE) m68k-aout sparc-aout a29k-amd-udi +all: all-cygnus +endif + +ifeq ($(canonhost),mips-dec-ultrix) +TARGETS = $(NATIVE) m68k-vxworks m68k-aout i960-vxworks \ + sparc-vxworks m68k-coff i386-aout sparc-aout i960-intel-nindy +CFLAGS = +all: all-cygnus +endif + +ifeq ($(canonhost),mips-sgi-irix4) +TARGETS = $(NATIVE) m68k-vxworks m68k-aout +all: all-cygnus +endif + +ifeq ($(canonhost),rs6000-ibm-aix) +TARGETS = $(NATIVE) m68k-vxworks i960-vxworks m68k-aout +CFLAGS=-g +all: all-cygnus +endif + +ifeq ($(canonhost),m68k-hp-hpux) +TARGETS = m68k-vxworks +CC = cc +O1000 -Wp,-P +CFLAGS = +all: all-native +endif + +ifeq ($(canonhost),hppa1.1-hp-hpux) +TARGETS = $(NATIVE) m68k-aout m68k-vxworks i960-vxworks +CC = cc +Obb2000 +CFLAGS = +all: all-cygnus +endif + +FLAGS_TO_PASS := \ + "GCC=$(GCC)" \ + "CFLAGS=$(CFLAGS)" \ + "host=$(canonhost)" + +all-cygnus: + @echo build started at `date` + [ -d $(INSTALLDIR) ] || mkdir $(INSTALLDIR) + rm -f /usr/cygnus/$(TAG) + ln -s $(INSTALLDIR) /usr/cygnus/$(TAG) + @for i in $(TARGETS) ; do \ + if [ "$$i" = "native" ] ; then \ + if [ ! -f $(canonhost)-3stage-done ] ; then \ + echo "3staging $(canonhost) native" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) $(host)-stamp-3stage-done $(log) && \ + echo " completed successfully" ; \ + fi \ + else \ + echo "building $(canonhost) cross to $$i" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) target=$$i do-cygnus $(tlog) && \ + echo " completed successfully" ; \ + fi ; \ + done + @echo done at `date` + +all-native: + [ -d $(INSTALLDIR) ] || mkdir $(INSTALLDIR) + rm -f /usr/cygnus/$(TAG) + ln -s $(INSTALLDIR) /usr/cygnus/$(TAG) + @for i in $(TARGETS) ; do \ + echo "building $(canonhost) cross to $$i" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) target=$$i do-native $(tlog) && \ + echo " completed successfully" ; \ + done + +config: + @for i in $(TARGETS) ; do \ + if [ "$$i" = "native" ] ; then \ + echo "config stage1 for $(canonhost)" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) do1-config $(log) && \ + echo " completed successfully" ; \ + else \ + echo "config $(canonhost) cross to $$i" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) target=$$i do-native-config $(tlog) && \ + echo " completed successfully" ; \ + fi ; \ + done + + +build: + @for i in $(TARGETS) ; do \ + if [ "$$i" = "native" ] ; then \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) do1-build $(log) && \ + echo " completed successfully" ; \ + else \ + echo "building $(canonhost) cross to $$i" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) target=$$i build-native $(tlog) && \ + echo " completed successfully" ; \ + fi ; \ + done + + +3build: + @for i in $(TARGETS) ; do \ + if [ "$$i" = "native" ] ; then \ + echo "building 3stage for $(canonhost)" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) all $(log) && \ + echo " completed successfully" ; \ + else \ + echo "building $(canonhost) cross to $$i" ; \ + $(MAKE) -f test-build.mk $(FLAGS_TO_PASS) target=$$i build-cygnus $(tlog) && \ + echo " completed successfully" ; \ + fi ; \ + done + +endif # host + +### Local Variables: +### fill-column: 131 +### End: