]>
Commit | Line | Data |
---|---|---|
adad1007 JR |
1 | # Run tests covering all config.gcc cases. |
2 | host_options='--with-mpc=/opt/cfarm/mpc' # gcc10 | |
3 | TEST=all-gcc | |
4 | # Make sure you have a recent enough gcc (with ada support) in your path so | |
5 | # that --enable-werror-always will work. | |
54951c63 DM |
6 | # To use, create a build directory with plenty of free disk space - a build of |
7 | # all configurations can take 450GB. | |
8 | # By default, this file assumes the build directory is in a sibling directory | |
9 | # to the gcc sources, but you can override GCC_SRC_DIR to specify where to | |
10 | # find them. GCC_SRC_DIR is used in the directory below the build directory, | |
11 | # hence the two ".." in the default value; if overriding it, it's easiest to | |
12 | # supply an absolute path. | |
13 | GCC_SRC_DIR=../../gcc | |
14 | ||
adad1007 JR |
15 | # Use -j / -l make arguments and nice to assure a smooth resource-efficient |
16 | # load on the build machine, e.g. for 24 cores: | |
17 | # svn co svn://gcc.gnu.org/svn/gcc/branches/foo-branch gcc | |
18 | # mkdir multi-mk; cd multi-mk | |
19 | # nohup nice make -j25 -l36 -f ../gcc/contrib/config-list.mk > make.out 2>&1 & | |
20 | # | |
54951c63 DM |
21 | # Alternatively, if building against an existing gcc source tree: |
22 | # | |
23 | # cd /somewhere/with/plenty/of/disk/space | |
24 | # mkdir multi-mk; cd multi-mk | |
25 | # nohup nice make \ | |
26 | # -j25 -l36 \ | |
27 | # -f /path/to/contrib/config-list.mk \ | |
28 | # GCC_SRC_DIR=/path/to/gcc/source/tree \ | |
29 | # > make.out 2>&1 & | |
30 | # | |
31 | ||
adad1007 | 32 | # v850e1-elf is rejected by config.sub |
7d081272 | 33 | LIST = aarch64-elf aarch64-linux-gnu aarch64-rtems \ |
6044eae7 | 34 | alpha-linux-gnu alpha-netbsd alpha-openbsd \ |
f47337ae | 35 | alpha64-dec-vms alpha-dec-vms \ |
53426f6c JR |
36 | arc-elf32OPT-with-cpu=arc600 arc-elf32OPT-with-cpu=arc700 \ |
37 | arc-linux-uclibcOPT-with-cpu=arc700 arceb-linux-uclibcOPT-with-cpu=arc700 \ | |
f3633f55 | 38 | arm-wrs-vxworks arm-netbsdelf \ |
b060c217 | 39 | arm-linux-androideabi arm-uclinux_eabi arm-eabi arm-rtems \ |
3e326935 | 40 | arm-symbianelf avr-elf \ |
adad1007 | 41 | bfin-elf bfin-uclinux bfin-linux-uclibc bfin-rtems bfin-openbsd \ |
b25364a0 | 42 | c6x-elf c6x-uclinux cr16-elf cris-elf cris-linux crisv32-elf crisv32-linux \ |
56856b58 | 43 | csky-elf csky-linux-gnu \ |
feeeff5c | 44 | epiphany-elf epiphany-elfOPT-with-stack-offset=16 fido-elf \ |
5ebf89bd | 45 | fr30-elf frv-elf frv-linux ft32-elf h8300-elf hppa-linux-gnu \ |
adad1007 JR |
46 | hppa-linux-gnuOPT-enable-sjlj-exceptions=yes hppa64-linux-gnu \ |
47 | hppa2.0-hpux10.1 hppa64-hpux11.3 \ | |
48 | hppa64-hpux11.0OPT-enable-sjlj-exceptions=yes hppa2.0-hpux11.9 \ | |
49 | i686-pc-linux-gnu i686-apple-darwin i686-apple-darwin9 i686-apple-darwin10 \ | |
50 | i486-freebsd4 i686-freebsd6 i686-kfreebsd-gnu \ | |
8466af06 | 51 | i686-netbsdelf9 \ |
d980e738 TS |
52 | i686-openbsd i686-elf i686-kopensolaris-gnu i686-symbolics-gnu \ |
53 | i686-pc-msdosdjgpp i686-lynxos i686-nto-qnx \ | |
ca3a27b6 | 54 | i686-rtems i686-solaris2.11 i686-wrs-vxworks \ |
adad1007 JR |
55 | i686-wrs-vxworksae \ |
56 | i686-cygwinOPT-enable-threads=yes i686-mingw32crt ia64-elf \ | |
57 | ia64-freebsd6 ia64-linux ia64-hpux ia64-hp-vms iq2000-elf lm32-elf \ | |
f8fdb10e | 58 | lm32-rtems lm32-uclinux m32c-rtems m32c-elf m32r-elf m32rle-elf \ |
adad1007 JR |
59 | m32r-linux m32rle-linux m68k-elf m68k-netbsdelf \ |
60 | m68k-openbsd m68k-uclinux m68k-linux m68k-rtems \ | |
0609abda | 61 | mcore-elf microblaze-linux microblaze-elf \ |
e35fceb5 | 62 | mips-netbsd \ |
adad1007 | 63 | mips64el-st-linux-gnu mips64octeon-linux mipsisa64r2-linux \ |
c4bc5c25 | 64 | mipsisa32r2-linux-gnu mipsisa64r2-sde-elf mipsisa32-elfoabi \ |
adad1007 JR |
65 | mipsisa64-elfoabi mipsisa64r2el-elf mipsisa64sr71k-elf mipsisa64sb1-elf \ |
66 | mipsel-elf mips64-elf mips64vr-elf mips64orion-elf mips-rtems \ | |
67 | mips-wrs-vxworks mipstx39-elf mmix-knuth-mmixware mn10300-elf moxie-elf \ | |
e430824f | 68 | moxie-uclinux moxie-rtems \ |
f6a83b4a | 69 | msp430-elf \ |
9304f876 | 70 | nds32le-elf nds32be-elf \ |
b060c217 | 71 | nios2-elf nios2-linux-gnu nios2-rtems \ |
27776f55 | 72 | nvptx-none \ |
157e859f | 73 | pdp11-aout \ |
f3633f55 | 74 | powerpc-darwin8 \ |
adad1007 JR |
75 | powerpc-darwin7 powerpc64-darwin powerpc-freebsd6 powerpc-netbsd \ |
76 | powerpc-eabispe powerpc-eabisimaltivec powerpc-eabisim ppc-elf \ | |
77 | powerpc-eabialtivec powerpc-xilinx-eabi powerpc-eabi \ | |
b060c217 | 78 | powerpc-rtems powerpc-linux_spe \ |
d3435784 | 79 | powerpc64-linux_altivec \ |
3a8fe7c6 OH |
80 | powerpc-wrs-vxworks powerpc-wrs-vxworksae powerpc-wrs-vxworksmils \ |
81 | powerpc-lynxos powerpcle-elf \ | |
316ded53 | 82 | powerpcle-eabisim powerpcle-eabi \ |
154cc77e | 83 | riscv32-unknown-linux-gnu riscv64-unknown-linux-gnu \ |
316ded53 | 84 | rs6000-ibm-aix5.3.0 rs6000-ibm-aix6.1 rs6000-ibm-aix7.1 \ |
85b8555e | 85 | rl78-elf rx-elf s390-linux-gnu s390x-linux-gnu s390x-ibm-tpf sh-elf \ |
bc6d9014 OE |
86 | shle-linux sh-netbsdelf sh-superh-elf \ |
87 | sh-rtems sh-wrs-vxworks sparc-elf \ | |
adad1007 JR |
88 | sparc-leon-elf sparc-rtems sparc-linux-gnu \ |
89 | sparc-leon3-linux-gnuOPT-enable-target=all sparc-netbsdelf \ | |
ca3a27b6 | 90 | sparc64-sun-solaris2.11OPT-with-gnu-ldOPT-with-gnu-asOPT-enable-threads=posix \ |
adad1007 | 91 | sparc-wrs-vxworks sparc64-elf sparc64-rtems sparc64-linux sparc64-freebsd6 \ |
341c653c WL |
92 | sparc64-netbsd sparc64-openbsd spu-elf \ |
93 | tilegx-linux-gnu tilegxbe-linux-gnu tilepro-linux-gnu \ | |
f4d5fe47 | 94 | v850e-elf v850-elf v850-rtems vax-linux-gnu \ |
d3d514a9 | 95 | vax-netbsdelf vax-openbsd visium-elf x86_64-apple-darwin \ |
adad1007 JR |
96 | x86_64-pc-linux-gnuOPT-with-fpmath=avx \ |
97 | x86_64-elfOPT-with-fpmath=sse x86_64-freebsd6 x86_64-netbsd \ | |
8466af06 | 98 | x86_64-w64-mingw32 \ |
7d081272 JS |
99 | x86_64-mingw32OPT-enable-sjlj-exceptions=yes x86_64-rtems \ |
100 | xstormy16-elf xtensa-elf \ | |
ee2499b4 | 101 | xtensa-linux |
adad1007 JR |
102 | |
103 | LOGFILES = $(patsubst %,log/%-make.out,$(LIST)) | |
104 | all: $(LOGFILES) | |
105 | config: $(LIST) | |
3ce2cd36 JBG |
106 | show: |
107 | @echo $(LIST) | |
adad1007 | 108 | |
3ce2cd36 | 109 | .PHONY: make-log-dir all config show |
adad1007 JR |
110 | |
111 | empty= | |
112 | ||
54951c63 DM |
113 | #Check for the presence of the MAINTAINERS file to make sure we've located |
114 | #the gcc sources. | |
115 | make-log-dir: $(GCC_SRC_DIR)/MAINTAINERS | |
116 | -mkdir log | |
adad1007 | 117 | |
e44dbbe1 | 118 | $(LIST): make-log-dir |
adad1007 | 119 | -mkdir $@ |
1335a8ca JBG |
120 | ( \ |
121 | cd $@ && \ | |
04a11c01 | 122 | TGT=`echo $@ | awk 'BEGIN { FS = "OPT" }; { print $$1 }'` && \ |
54951c63 | 123 | TGT=`$(GCC_SRC_DIR)/config.sub $$TGT` && \ |
1335a8ca JBG |
124 | case $$TGT in \ |
125 | *-*-darwin* | *-*-cygwin* | *-*-mingw* | *-*-aix*) \ | |
126 | ADDITIONAL_LANGUAGES=""; \ | |
127 | ;; \ | |
128 | *) \ | |
129 | ADDITIONAL_LANGUAGES=",go"; \ | |
130 | ;; \ | |
131 | esac && \ | |
54951c63 | 132 | $(GCC_SRC_DIR)/configure \ |
1335a8ca JBG |
133 | --target=$(subst SCRIPTS,`pwd`/../scripts/,$(subst OPT,$(empty) -,$@)) \ |
134 | --enable-werror-always ${host_options} \ | |
135 | --enable-languages=all,ada$$ADDITIONAL_LANGUAGES; \ | |
136 | ) > log/$@-config.out 2>&1 | |
adad1007 JR |
137 | |
138 | $(LOGFILES) : log/%-make.out : % | |
139 | -$(MAKE) -C $< $(TEST) > $@ 2>&1 && rm -rf $< |