man9dir = $(mandir)/man9
infodir = $(prefix)/info
includedir = $(prefix)/include
+# Directory in which the compiler finds executables, libraries, etc.
+libsubdir = $(libdir)/gcc-lib/$(target_alias)/$(gcc_version)
GDB_NLM_DEPS =
SHELL = /bin/sh
# This is set by the configure script to the list of directories which
# should be built using the target tools.
-TARGET_CONFIGDIRS = libiberty libgloss newlib libio librx libstdc++ libg++ libf2c winsup
+TARGET_CONFIGDIRS = libiberty libgloss newlib libio librx libstdc++ libg++ libf2c libchill libobjc winsup
# Target libraries are put under this directory:
# Changed by configure to $(target_alias) if cross.
"EXPECT=$(EXPECT)" \
"RUNTEST=$(RUNTEST)" \
"RUNTESTFLAGS=$(RUNTESTFLAGS)" \
+ "TARGET_SUBDIR=$(TARGET_SUBDIR)" \
"WINDRES_FOR_TARGET=$(WINDRES_FOR_TARGET)" \
"YACC=$(YACC)" \
"exec_prefix=$(exec_prefix)" \
"prefix=$(prefix)" \
"tooldir=$(tooldir)" \
- "gxx_include_dir=$(gxx_include_dir)"
+ "gxx_include_dir=$(gxx_include_dir)" \
+ "gcc_version=$(gcc_version)" \
+ "gcc_version_trigger=$(gcc_version_trigger)" \
+ "target_alias=$(target_alias)" \
+ "libsubdir=$(libsubdir)"
# Flags to pass down to most sub-makes, in which we're building with
# the host environment.
all-target-libg++ \
all-target-newlib \
all-target-libf2c \
+ all-target-libchill \
+ all-target-libobjc \
all-target-winsup \
all-target-libgloss \
all-target-libiberty \
configure-target-libg++ \
configure-target-newlib \
configure-target-libf2c \
+ configure-target-libchill \
+ configure-target-libobjc \
configure-target-winsup \
configure-target-libgloss \
configure-target-libiberty \
check-target-libg++ \
check-target-newlib \
check-target-libf2c \
+ check-target-libchill \
+ check-target-libobjc \
check-target-winsup \
check-target-libiberty \
check-target-gperf
install-target-libg++ \
install-target-newlib \
install-target-libf2c \
+ install-target-libchill \
+ install-target-libobjc \
install-target-winsup \
install-target-libgloss \
install-target-libiberty \
clean-target-libg++ \
clean-target-newlib \
clean-target-libf2c \
+ clean-target-libchill \
+ clean-target-libobjc \
clean-target-winsup \
clean-target-libgloss \
clean-target-libiberty \
else true ; fi
local-clean:
- -rm -f *.a TEMP errs core *.o *~ \#* TAGS *.E
+ -rm -f *.a TEMP errs core *.o *~ \#* TAGS *.E *.log
local-distclean:
-rm -f Makefile config.status config.cache mh-frag mt-frag
$(CHECK_X11_MODULES) \
check-gcc
+# Automated reporting of test results.
+
+warning.log: build.log
+ $(srcdir)/contrib/warn_summary build.log > $@
+
+mail-report.log:
+ if test x'$(BOOT_CFLAGS)' != x''; then \
+ BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
+ fi; \
+ $(srcdir)/contrib/test_summary -t >$@
+ chmod +x $@
+ echo If you really want to send e-mail, run ./$@ now
+
+mail-report-with-warnings.log: warning.log
+ if test x'$(BOOT_CFLAGS)' != x''; then \
+ BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
+ fi; \
+ $(srcdir)/contrib/test_summary -t -i warning.log >$@
+ chmod +x $@
+ echo If you really want to send e-mail, run ./$@ now
+
# Installation targets.
.PHONY: install install-cross uninstall source-vault binary-vault vault-install
# In theory, on an SMP all those dependencies can be resolved
# in parallel.
#
-.PHONY: bootstrap bootstrap-lean bootstrap2 bootstrap3 bootstrap4
-bootstrap bootstrap-lean bootstrap2 bootstrap3 bootstrap4: all-texinfo all-bison all-byacc all-binutils all-gas all-ld
+.PHONY: bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstrap3 bootstrap3-lean bootstrap4 bootstrap4-lean
+bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstrap3 bootstrap3-lean bootstrap4 bootstrap4-lean: all-texinfo all-bison all-byacc all-binutils all-gas all-ld
@r=`pwd`; export r; \
s=`cd $(srcdir); pwd`; export s; \
$(SET_LIB_PATH) \
@r=`pwd`; export r; \
s=`cd $(srcdir); pwd`; export s; \
case "$@" in \
+ *bootstrap4-lean ) \
+ msg="Comparing stage3 and stage4 of the compiler"; \
+ compare=compare3-lean ;; \
*bootstrap4 ) msg="Comparing stage3 and stage4 of the compiler"; \
compare=compare3 ;; \
*-lean ) msg="Comparing stage2 and stage3 of the compiler"; \
$(SET_LIB_PATH) \
echo "$$msg"; \
cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
- @echo "Building runtime libraries"; \
- $(MAKE) all
+ @r=`pwd`; export r; \
+ s=`cd $(srcdir); pwd` ; export s; \
+ $(SET_LIB_PATH) \
+ echo "Building runtime libraries"; \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) all
.PHONY: cross
cross: all-texinfo all-bison all-byacc all-binutils all-gas all-ld
$(SET_LIB_PATH) \
echo "Building the C and C++ compiler"; \
cd gcc; $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++"
- @echo "Building runtime libraries"; \
- $(MAKE) all LANGUAGES="c c++"
+ @r=`pwd`; export r; \
+ s=`cd $(srcdir); pwd` ; export s; \
+ $(SET_LIB_PATH) \
+ echo "Building runtime libraries"; \
+ $(MAKE) $(BASE_FLAGS_TO_PASS) all LANGUAGES="c c++"
.PHONY: check-gcc
check-gcc:
configure-target-libstdc++: $(ALL_GCC)
all-target-libstdc++: configure-target-libstdc++ all-gas all-ld all-gcc all-target-libiberty all-target-newlib all-target-libio
all-target-libf2c: configure-target-libf2c all-gas all-ld all-gcc all-target-libiberty all-target-newlib
+all-target-libchill: configure-target-libchill all-gas all-ld all-gcc all-target-libiberty all-target-newlib
+all-target-libobjc: configure-target-libobjc all-gas all-ld all-gcc all-target-libiberty all-target-newlib
all-m4: all-libiberty
all-make: all-libiberty
all-mmalloc:
# with the gnu make, this is done automatically.
-Makefile: Makefile.in configure.in $(host_makefile_frag) $(target_makefile_frag)
+Makefile: Makefile.in configure.in $(host_makefile_frag) $(target_makefile_frag) $(gcc_version_trigger)
$(SHELL) ./config.status
#