# Some platforms don't like blank entries, so we remove duplicate,
# leading and trailing colons.
REALLY_SET_LIB_PATH = \
+ @SET_GCC_LIB_PATH@ \
$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
# This is the list of directories to be built for the build system.
OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
- GMPINC="$(HOST_GMPINC)"; export GMPINC;
+ GMPINC="$(HOST_GMPINC)"; export GMPINC; \
+ SET_GCC_LIB_PATH_CMD="@SET_GCC_LIB_PATH@"; export SET_GCC_LIB_PATH_CMD; \
+ @SET_GCC_LIB_PATH@
# Similar, for later GCC stages.
STAGE_HOST_EXPORTS = \
LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
NM="$(NM_FOR_TARGET)"; export NM; \
RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
- WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES;
+ WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
+ SET_GCC_LIB_PATH_CMD="@SET_GCC_LIB_PATH@"; export SET_GCC_LIB_PATH_CMD; \
+ @SET_GCC_LIB_PATH@
RAW_CXX_TARGET_EXPORTS = \
$(BASE_TARGET_EXPORTS) \
'DLLTOOL=$(DLLTOOL)' \
'LD=$(LD)' \
'NM=$(NM)' \
+ 'PICFLAG=$(PICFLAG)' \
'RANLIB=$(RANLIB)' \
'WINDRES=$(WINDRES)'
'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
'NM=$$(NM_FOR_TARGET)' \
+ 'PICFLAG=$$(PICFLAG_FOR_TARGET)' \
'RANLIB=$$(RANLIB_FOR_TARGET)' \
'WINDRES=$$(WINDRES_FOR_TARGET)'
# Here are the targets which correspond to the do-X targets.
-.PHONY: info installcheck dvi install-info
+.PHONY: info installcheck dvi html install-info
.PHONY: clean distclean mostlyclean maintainer-clean realclean
.PHONY: local-clean local-distclean local-maintainer-clean
info: do-info
installcheck: do-installcheck
dvi: do-dvi
+html: do-html
# Make sure makeinfo is built before we do a `make info', if we're
# in fact building texinfo.
(cd gcc/libgcc && find . -type d -print) | \
while read d; do rm -f gcc/$$d/libgcc.a || : ; done
-rm -rf gcc/libgcc
+ -rm -f gcc/stmp-dirs
# Check target.
.PHONY: all-[+module+] maybe-all-[+module+]
maybe-all-[+module+]:
@if [+module+]
+TARGET-[+module+]=[+ IF target +][+target+][+ ELSE +]all[+ ENDIF target +]
maybe-all-[+module+]: all-[+module+]
all-[+module+]: configure-[+module+]
@[+ IF bootstrap +]test -f stage_last && exit 0; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(SET_LIB_PATH) \
$(HOST_EXPORTS) \
- (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+
- IF with_x
- +] $(X11_FLAGS_TO_PASS)[+
- ENDIF with_x +] [+extra_make_flags+] [+
- IF (== (get "module") "gcc") +] \
- `if [ -f gcc/stage_last ]; then echo quickstrap ; else echo all; fi` [+
- ELSE +]all[+ ENDIF +])
+ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS) [+extra_make_flags+] \
+ $(TARGET-[+module+]))
@endif [+module+]
.PHONY: check-[+module+] maybe-check-[+module+]
(define dep-maybe (lambda ()
(if (exist? "hard") "" "maybe-")))
- ;; dep-kind returns "normal" is the dependency is on an "install" target,
- ;; or if the LHS module is not bootstrapped. It returns "bootstrap" for
+ ;; dep-kind returns "normal" if the dependency is on an "install" target,
+ ;; or if either module is not bootstrapped. It returns "bootstrap" for
;; configure or build dependencies between bootstrapped modules; it returns
;; "prebootstrap" for configure or build dependencies of bootstrapped
;; modules on a build module (e.g. all-gcc on all-build-bison). All this
(if (or (= (dep-subtarget "on") "install-")
(=* (dep-module "on") "target-")
- (not (hash-ref boot-modules (dep-module "module"))))
+ (not (hash-ref boot-modules (dep-module "module")))
+ (not (hash-ref boot-modules (dep-module "on"))))
"normal"
"bootstrap"))))