X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=Makefile.tpl;h=c07fed66392eea8636dbeb2ccbf7e76cd0a99d73;hb=756d1d01889f120348ff040ef9599b595524d4b9;hp=922b0e52f071db545618eae37eac45408d31f9bc;hpb=5b474aa89ab1bc0ebbd9572f556106f0014acfbb;p=deliverable%2Fbinutils-gdb.git diff --git a/Makefile.tpl b/Makefile.tpl index 922b0e52f0..c07fed6639 100644 --- a/Makefile.tpl +++ b/Makefile.tpl @@ -194,19 +194,20 @@ M4 = `if [ -f $$r/m4/m4 ] ; \ then echo $$r/m4/m4 ; \ else echo ${DEFAULT_M4} ; fi` -# For an installed makeinfo, we require it to be from texinfo 4 or +# For an installed makeinfo, we require it to be from texinfo 4.2 or # higher, else we use the "missing" dummy. MAKEINFO=@MAKEINFO@ USUAL_MAKEINFO = `if [ -f $$r/texinfo/makeinfo/makeinfo ] ; \ then echo $$r/texinfo/makeinfo/makeinfo ; \ else if (makeinfo --version \ - | egrep 'texinfo[^0-9]*([1-3][0-9]|[4-9])') >/dev/null 2>&1; \ + | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])') >/dev/null 2>&1; \ then echo makeinfo; else echo $$s/missing makeinfo; fi; fi` # This just becomes part of the MAKEINFO definition passed down to # sub-makes. It lets flags be given on the command line while still # using the makeinfo from the object tree. -MAKEINFOFLAGS = +# (Default to avoid splitting info files by setting the threshold high.) +MAKEINFOFLAGS = --split-size=5000000 EXPECT = `if [ -f $$r/expect/expect ] ; \ then echo $$r/expect/expect ; \ @@ -553,8 +554,16 @@ EXTRA_GCC_FLAGS = \ GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) -configure-host: @configure_host_modules@ -configure-target: @configure_target_modules@ +.PHONY: configure-host +configure-host: maybe-configure-gcc [+ + FOR host_modules +] \ + maybe-configure-[+module+][+ + ENDFOR host_modules +] +.PHONY: configure-target +configure-target: [+ + FOR target_modules +] \ + maybe-configure-target-[+module+][+ + ENDFOR target_modules +] # This is a list of the targets for which we can do a clean-{target}. CLEAN_MODULES =[+ @@ -577,14 +586,19 @@ CLEAN_X11_MODULES = [+ FOR host_modules +][+ IF with_x +]\ clean-[+module+] [+ ENDIF with_x +][+ ENDFOR host_modules +] # The target built for a native build. -# This list only includes modules actually being configured and built. .PHONY: all.normal -all.normal: @all_build_modules@ \ - @all_host_modules@ \ - @all_target_modules@ - -all-host: @all_host_modules@ -all-target: @all_target_modules@ +all.normal: @all_build_modules@ all-host all-target + +.PHONY: all-host +all-host: maybe-all-gcc [+ + FOR host_modules +] \ + maybe-all-[+module+][+ + ENDFOR host_modules +] +.PHONY: all-target +all-target: [+ + FOR target_modules +] \ + maybe-all-target-[+module+][+ + ENDFOR target_modules +] # Do a target for all the subdirectories. A ``make do-X'' will do a # ``make X'' in all subdirectories (because, in general, there is a @@ -671,6 +685,7 @@ local-distclean: -if [ "$(TARGET_SUBDIR)" != "." ]; then \ rm -rf $(TARGET_SUBDIR); \ else true; fi + -rm -rf $(BUILD_SUBDIR) -rm -f texinfo/po/Makefile texinfo/po/Makefile.in texinfo/info/Makefile -rm -f texinfo/doc/Makefile texinfo/po/POTFILES -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null @@ -728,8 +743,13 @@ check: $(MAKE) do-check NOTPARALLEL=parallel-ok # Only include modules actually being configured and built. -do-check: @check_host_modules@ \ - @check_target_modules@ +do-check: maybe-check-gcc [+ + FOR host_modules +] \ + maybe-check-[+module+][+ + ENDFOR host_modules +][+ + FOR target_modules +] \ + maybe-check-target-[+module+][+ + ENDFOR target_modules +] # Automated reporting of test results. @@ -755,9 +775,25 @@ mail-report-with-warnings.log: warning.log # Installation targets. .PHONY: install uninstall -install: installdirs @install_host_modules@ @install_target_modules@ - -install-target: @install_target_modules@ +install: installdirs install-host install-target + +.PHONY: install-host-nogcc +install-host-nogcc: [+ + FOR host_modules +] \ + maybe-install-[+module+][+ + ENDFOR host_modules +] + +.PHONY: install-host +install-host: maybe-install-gcc [+ + FOR host_modules +] \ + maybe-install-[+module+][+ + ENDFOR host_modules +] + +.PHONY: install-target +install-target: [+ + FOR target_modules +] \ + maybe-install-target-[+module+][+ + ENDFOR target_modules +] uninstall: @echo "the uninstall target is not supported in this tree" @@ -776,8 +812,8 @@ install.all: install-no-fixedincludes # install-no-fixedincludes is used because Cygnus can not distribute # the fixed header files. .PHONY: install-no-fixedincludes -install-no-fixedincludes: installdirs @install_host_modules_nogcc@ \ - @install_target_modules@ gcc-no-fixedincludes +install-no-fixedincludes: installdirs install-host-nogcc \ + install-target gcc-no-fixedincludes ### other supporting targets @@ -938,11 +974,11 @@ all-[+module+]: configure-[+module+] +] $(X11_FLAGS_TO_PASS)[+ ENDIF with_x +] all) +.PHONY: check-[+module+] maybe-check-[+module+] +maybe-check-[+module+]: [+ IF no_check +] -.PHONY: check-[+module+] check-[+module+]: [+ ELIF no_check_cross +] -.PHONY: check-[+module+] # This module is only tested in a native toolchain. check-[+module+]: @if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \ @@ -955,7 +991,6 @@ check-[+module+]: ENDIF with_x +] check); \ fi [+ ELSE check +] -.PHONY: check-[+module+] check-[+module+]: @r=`${PWD}`; export r; \ s=`cd $(srcdir); ${PWD}`; export s; \ @@ -966,13 +1001,11 @@ check-[+module+]: ENDIF with_x +] check) [+ ENDIF no_check +] -[+ IF no_install +] .PHONY: install-[+module+] maybe-install-[+module+] maybe-install-[+module+]: +[+ IF no_install +] install-[+module+]: [+ ELSE install +] -.PHONY: install-[+module+] maybe-install-[+module+] -maybe-install-[+module+]: install-[+module+]: installdirs @r=`${PWD}`; export r; \ s=`cd $(srcdir); ${PWD}`; export s; \ @@ -1077,12 +1110,13 @@ all-target-[+module+]: configure-target-[+module+] +] 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' [+ ENDIF raw_cxx +] all) + +.PHONY: check-target-[+module+] maybe-check-target-[+module+] +maybe-check-target-[+module+]: [+ IF no_check +] # Dummy target for uncheckable module. -.PHONY: check-target-[+module+] check-target-[+module+]: [+ ELSE check +] -.PHONY: check-target-[+module+] check-target-[+module+]: @r=`${PWD}`; export r; \ s=`cd $(srcdir); ${PWD}`; export s; \ @@ -1094,14 +1128,13 @@ check-target-[+module+]: ENDIF raw_cxx +] check) [+ ENDIF no_check +] -[+ IF no_install +] + .PHONY: install-target-[+module+] maybe-install-target-[+module+] maybe-install-target-[+module+]: +[+ IF no_install +] # Dummy target for uninstallable. install-target-[+module+]: [+ ELSE install +] -.PHONY: install-target-[+module+] maybe-install-target-[+module+] -maybe-install-target-[+module+]: install-target-[+module+]: installdirs @r=`${PWD}`; export r; \ s=`cd $(srcdir); ${PWD}`; export s; \ @@ -1237,6 +1270,7 @@ cross: all-texinfo all-bison all-byacc all-binutils all-gas all-ld LANGUAGES="c c++" all .PHONY: check-gcc +maybe-check-gcc: check-gcc: @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD}`; export r; \ @@ -1332,6 +1366,8 @@ all-binutils: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-flex # binutils might be on PATH, and they might need the shared opcodes # library. install-binutils: maybe-install-opcodes +# libopcodes depends on libbfd +install-opcodes: maybe-install-bfd all-gas: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-intl all-gprof: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-intl all-ld: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-bison maybe-all-byacc maybe-all-flex maybe-all-intl @@ -1398,7 +1434,7 @@ configure-target-zlib: $(ALL_GCC_C) configure-target-examples: $(ALL_GCC_C) configure-target-libgloss: $(ALL_GCC) all-target-libgloss: maybe-configure-target-newlib -configure-target-libiberty: $(ALL_GCC_C) +configure-target-libiberty: $(ALL_GCC) configure-target-libtermcap: $(ALL_GCC_C) configure-target-newlib: $(ALL_GCC) configure-target-rda: $(ALL_GCC_C)