X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=Makefile.in;h=94f4692e44a4315b4187ab2b583c982ce716482a;hb=df2ff48f1a90f72b7e49b4f1959fe9d022f944c6;hp=379a779535447d3040ca754cdba62d2af7f6cdc0;hpb=85d6787eb892fa8ff6563292883f5da69f62828d;p=pf3gnuchains%2Fgcc-fork.git diff --git a/Makefile.in b/Makefile.in index 379a7795354..94f4692e44a 100644 --- a/Makefile.in +++ b/Makefile.in @@ -18,6 +18,12 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # +# Tell GNU make 3.79 not to run the top level in parallel. This +# prevents contention for $builddir/$target/config.cache, as well +# as minimizing scatter in file system caches. +NOTPARALLEL = .NOTPARALLEL +$(NOTPARALLEL): + srcdir = . prefix = /usr/local @@ -140,9 +146,13 @@ M4 = `if [ -f $$r/m4/m4 ] ; \ then echo $$r/m4/m4 ; \ else echo ${DEFAULT_M4} ; fi` -MAKEINFO = `if [ -f $$r/texinfo/makeinfo/Makefile ] ; \ +# For an installed makeinfo, we require it to be from texinfo 4 or +# higher, else we use the "missing" dummy. +MAKEINFO = `if [ -f $$r/texinfo/makeinfo/makeinfo ] ; \ then echo $$r/texinfo/makeinfo/makeinfo ; \ - else echo makeinfo ; fi` + else if (makeinfo --version \ + | egrep 'texinfo[^0-9]*([1-3][0-9]|[4-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 @@ -174,8 +184,16 @@ TARGET_CONFIGDIRS = libiberty libgloss $(SPECIAL_LIBS) newlib librx winsup opcod # Changed by configure to $(target_alias) if cross. TARGET_SUBDIR = . -# This is set by the configure script to the arguments passed to configure. -CONFIG_ARGUMENTS = +BUILD_CONFIGDIRS = libiberty +BUILD_SUBDIR = . + +# This is set by the configure script to the arguments to use when configuring +# directories built for the target. +TARGET_CONFIGARGS = + +# This is set by the configure script to the arguments to use when configuring +# directories built for the build system. +BUILD_CONFIGARGS = # This is set by configure to REALLY_SET_LIB_PATH if --enable-shared # was used. @@ -489,6 +507,18 @@ EXTRA_GCC_FLAGS = \ GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) # This is a list of the targets for all of the modules which are compiled +# using the build machine's native compiler. Configure edits the second +# macro for build!=host builds. +ALL_BUILD_MODULES_LIST = \ + all-build-libiberty +ALL_BUILD_MODULES = + +# This is a list of the configure targets for all of the modules which +# are compiled using the native tools. +CONFIGURE_BUILD_MODULES = \ + configure-build-libiberty + +# This is a list of the targets for all of the modules which are compiled # using $(FLAGS_TO_PASS). ALL_MODULES = \ all-apache \ @@ -943,6 +973,7 @@ CLEAN_X11_MODULES = \ # The target built for a native build. .PHONY: all.normal all.normal: \ + $(ALL_BUILD_MODULES) \ $(ALL_MODULES) \ $(ALL_X11_MODULES) \ $(ALL_TARGET_MODULES) \ @@ -1091,8 +1122,11 @@ clean-target-libgcc: # Check target. -.PHONY: check -check: $(CHECK_MODULES) \ +.PHONY: check do-check +check: + $(MAKE) do-check NOTPARALLEL=parallel-ok + +do-check: $(CHECK_MODULES) \ $(CHECK_TARGET_MODULES) \ $(CHECK_X11_MODULES) \ check-gcc @@ -1189,6 +1223,106 @@ gcc-no-fixedincludes: mv gcc/tmp-include gcc/include 2>/dev/null; \ else true; fi +# This rule is used to build the modules which are built with the +# build machine's native compiler. +.PHONY: $(ALL_BUILD_MODULES) +$(ALL_BUILD_MODULES): + dir=`echo $@ | sed -e 's/all-build-//'`; \ + if [ -f ./$${dir}/Makefile ] ; then \ + r=`pwd`; export r; \ + s=`cd $(srcdir); pwd`; export s; \ + (cd $(BUILD_SUBDIR)/$${dir} && $(MAKE) all); \ + else \ + true; \ + fi + +# This rule is used to configure the modules which are built with the +# native tools. +.PHONY: $(CONFIGURE_BUILD_MODULES) +$(CONFIGURE_BUILD_MODULES): + @dir=`echo $@ | sed -e 's/configure-build-//'`; \ + if [ ! -d $(BUILD_SUBDIR) ]; then \ + true; \ + elif [ -f $(BUILD_SUBDIR)/$${dir}/Makefile ] ; then \ + true; \ + elif echo " $(BUILD_CONFIGDIRS) " | grep " $${dir} " >/dev/null 2>&1; then \ + if [ -d $(srcdir)/$${dir} ]; then \ + [ -d $(BUILD_SUBDIR)/$${dir} ] || mkdir $(BUILD_SUBDIR)/$${dir};\ + r=`pwd`; export r; \ + s=`cd $(srcdir); pwd`; export s; \ + AR="$(AR_FOR_BUILD)"; export AR; \ + AS="$(AS_FOR_BUILD)"; export AS; \ + CC="$(CC_FOR_BUILD)"; export CC; \ + CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ + DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ + LD="$(LD_FOR_BUILD)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ + NM="$(NM_FOR_BUILD)"; export NM; \ + RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \ + WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; \ + echo Configuring in $(BUILD_SUBDIR)/$${dir}; \ + cd "$(BUILD_SUBDIR)/$${dir}" || exit 1; \ + case $(srcdir) in \ + /* | [A-Za-z]:[\\/]*) \ + topdir=$(srcdir) ;; \ + *) \ + case "$(BUILD_SUBDIR)" in \ + .) topdir="../$(srcdir)" ;; \ + *) topdir="../../$(srcdir)" ;; \ + esac ;; \ + esac; \ + if [ "$(srcdir)" = "." ] ; then \ + if [ "$(BUILD_SUBDIR)" != "." ] ; then \ + if $(SHELL) $$s/symlink-tree $${topdir}/$${dir} "no-such-file" ; then \ + if [ -f Makefile ]; then \ + if $(MAKE) distclean; then \ + true; \ + else \ + exit 1; \ + fi; \ + else \ + true; \ + fi; \ + else \ + exit 1; \ + fi; \ + else \ + true; \ + fi; \ + srcdiroption="--srcdir=."; \ + libsrcdir="."; \ + else \ + srcdiroption="--srcdir=$${topdir}/$${dir}"; \ + libsrcdir="$$s/$${dir}"; \ + fi; \ + if [ -f $${libsrcdir}/configure ] ; then \ + rm -f no-such-file skip-this-dir; \ + CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ + $(BUILD_CONFIGARGS) $${srcdiroption} \ + --with-build-subdir="$(BUILD_SUBDIR)"; \ + else \ + rm -f no-such-file skip-this-dir; \ + CONFIG_SITE=no-such-file $(SHELL) $$s/configure \ + $(BUILD_CONFIGARGS) $${srcdiroption} \ + --with-build-subdir="$(BUILD_SUBDIR)"; \ + fi || exit 1; \ + if [ -f skip-this-dir ] ; then \ + sh skip-this-dir; \ + rm -f skip-this-dir; \ + cd ..; rmdir $${dir} || true; \ + else \ + true; \ + fi; \ + else \ + true; \ + fi; \ + else \ + true; \ + fi + # This rule is used to build the modules which use FLAGS_TO_PASS. To # build a target all-X means to cd to X and make all. # @@ -1334,12 +1468,12 @@ $(CONFIGURE_TARGET_MODULES): if [ -f $${libsrcdir}/configure ] ; then \ rm -f no-such-file skip-this-dir; \ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ - $(CONFIG_ARGUMENTS) $${srcdiroption} \ + $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)"; \ else \ rm -f no-such-file skip-this-dir; \ CONFIG_SITE=no-such-file $(SHELL) $$s/configure \ - $(CONFIG_ARGUMENTS) $${srcdiroption} \ + $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)"; \ fi || exit 1; \ if [ -f skip-this-dir ] ; then \ @@ -1586,7 +1720,7 @@ all-bash: all-bfd: all-libiberty all-intl all-binutils: all-libiberty all-opcodes all-bfd all-flex all-bison all-byacc all-intl all-bison: all-texinfo -configure-target-boehm-gc: $(ALL_GCC_CXX) configure-target-qthreads +configure-target-boehm-gc: $(ALL_GCC_C) configure-target-qthreads all-target-boehm-gc: configure-target-boehm-gc configure-target-bsp: $(ALL_GCC_C) all-target-bsp: configure-target-bsp @@ -1637,9 +1771,12 @@ configure-target-libgloss: $(ALL_GCC) all-target-libgloss: configure-target-libgloss configure-target-newlib all-libgui: all-tcl all-tk all-tcl8.1 all-tk8.1 all-itcl all-libiberty: + +all-build-libiberty: configure-build-libiberty + configure-target-libffi: $(ALL_GCC_C) all-target-libffi: configure-target-libffi -configure-target-libjava: $(ALL_GCC_CXX) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-libffi +configure-target-libjava: $(ALL_GCC_C) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-libffi all-target-libjava: configure-target-libjava all-fastjar all-target-zlib all-target-boehm-gc all-target-qthreads all-target-libffi configure-target-librx: $(ALL_GCC_C) all-target-librx: configure-target-librx @@ -1675,7 +1812,7 @@ all-send-pr: all-prms all-shellutils: all-sid: all-tcl all-tk all-sim: all-libiberty all-bfd all-opcodes all-readline all-cgen -all-snavigator: all-tcl all-tk all-itcl all-db all-grep all-libgui +all-snavigator: all-tcl all-tk all-itcl all-tix all-db all-grep all-libgui all-tar: all-libiberty all-tcl: all-tcl8.1: @@ -1695,9 +1832,9 @@ all-zip: all-zlib: configure-target-zlib: $(ALL_GCC_C) all-target-zlib: configure-target-zlib -all-fastjar: all-zlib +all-fastjar: all-zlib all-libiberty configure-target-fastjar: configure-target-zlib -all-target-fastjar: configure-target-fastjar all-target-zlib +all-target-fastjar: configure-target-fastjar all-target-zlib all-target-libiberty configure-target-libiberty: $(ALL_GCC_C) all-target-libiberty: configure-target-libiberty all-target: $(ALL_TARGET_MODULES) @@ -1756,7 +1893,9 @@ DEVO_SUPPORT= README Makefile.in configure configure.in \ # ChangeLog omitted because it may refer to files which are not in this # distribution (perhaps it would be better to include it anyway). ETC_SUPPORT= Makefile.in configure configure.in standards.texi \ - make-stds.texi standards.info* + make-stds.texi standards.info* configure.texi configure.info* \ + configbuild.* configdev.* + # When you use `make setup-dirs' or `make taz' you should always redefine # this macro. @@ -1764,10 +1903,16 @@ SUPPORT_FILES = list-of-support-files-for-tool-in-question # NOTE: No double quotes in the below. It is used within shell script # as VER="$(VER)" -VER = ` if grep AM_INIT_AUTOMAKE $(TOOL)/configure.in >/dev/null 2>&1; then \ +VER = ` if grep 'AM_INIT_AUTOMAKE.*BFD_VERSION' $(TOOL)/configure.in >/dev/null 2>&1; then \ + sed < bfd/configure.in -n 's/AM_INIT_AUTOMAKE[^,]*, *\([^)]*\))/\1/p'; \ + elif grep AM_INIT_AUTOMAKE $(TOOL)/configure.in >/dev/null 2>&1; then \ sed < $(TOOL)/configure.in -n 's/AM_INIT_AUTOMAKE[^,]*, *\([^)]*\))/\1/p'; \ - else \ + elif test -f $(TOOL)/version.in; then \ + head -1 $(TOOL)/version.in; \ + elif grep VERSION $(TOOL)/Makefile.in > /dev/null 2>&1; then \ sed < $(TOOL)/Makefile.in -n 's/^VERSION *= *//p'; \ + else \ + echo VERSION; \ fi` PACKAGE = $(TOOL) @@ -1781,13 +1926,17 @@ taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(SUPPORT_FILES)" - $(MAKE) -f Makefile.in do-tar-bz2 \ + $(MAKE) -f Makefile.in do-tar \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-bz2 \ TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(SUPPORT_FILES)" -.PHONY: gdb-taz -gdb-taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex +.PHONY: gdb-tar +gdb-tar: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex $(MAKE) -f Makefile.in do-proto-toplev \ TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ MD5PROG="$(MD5PROG)" \ @@ -1800,7 +1949,18 @@ gdb-taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(SUPPORT_FILES)" - $(MAKE) -f Makefile.in do-tar-bz2 \ + $(MAKE) -f Makefile.in do-tar \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + +.PHONY: gdb-taz +gdb-taz: gdb-tar $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex + $(MAKE) -f Makefile.in gdb-tar \ + TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(SUPPORT_FILES)" + $(MAKE) -f Makefile.in do-bz2 \ TOOL=$(TOOL) PACKAGE="$(PACKAGE)" VER="$(VER)" \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(SUPPORT_FILES)" @@ -1859,15 +2019,25 @@ do-proto-toplev: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex else true; fi chmod -R og=u . || chmod og=u `find . -print` # + # Create .gmo files from .po files. + for f in `find . -name '*.po' -type f -print`; do \ + msgfmt -o `echo $$f | sed -e 's/\.po$$/.gmo/'` $$f ; \ + done + # -rm -f $(PACKAGE)-$(VER) ln -s proto-toplev $(PACKAGE)-$(VER) -.PHONY: do-tar-bz2 -do-tar-bz2: - echo "==> Making $(PACKAGE)-$(VER).tar.bz2" - -rm -f $(PACKAGE)-$(VER).tar.bz2 +.PHONY: do-tar +do-tar: + echo "==> Making $(PACKAGE)-$(VER).tar" + -rm -f $(PACKAGE)-$(VER).tar find $(PACKAGE)-$(VER) -follow -name CVS -prune -o -type f -print \ | tar cTfh - $(PACKAGE)-$(VER).tar + +.PHONY: do-bz2 +do-bz2: + echo "==> Bzipping $(PACKAGE)-$(VER).tar.bz2" + -rm -f $(PACKAGE)-$(VER).tar.bz2 $(BZIPPROG) -v -9 $(PACKAGE)-$(VER).tar .PHONY: do-md5sum @@ -1924,9 +2094,14 @@ gdb.tar.bz2: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb $(MAKE) -f Makefile.in gdb-taz TOOL=gdb \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(GDB_SUPPORT_DIRS)" +.PHONY: gdb.tar +gdb.tar: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-tar TOOL=gdb \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(GDB_SUPPORT_DIRS)" -.PHONY: dejagnu.tar.bz2 DEJAGNU_SUPPORT_DIRS= tcl expect libiberty +.PHONY: dejagnu.tar.bz2 dejagnu.tar.bz2: $(DIST_SUPPORT) $(DEJAGNU_SUPPORT_DIRS) dejagnu $(MAKE) -f Makefile.in taz TOOL=dejagnu \ MD5PROG="$(MD5PROG)" \ @@ -1938,6 +2113,11 @@ gdb+dejagnu.tar.bz2: $(DIST_SUPPORT) $(GDBD_SUPPORT_DIRS) gdb $(MAKE) -f Makefile.in gdb-taz TOOL=gdb PACKAGE=gdb+dejagnu \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(GDBD_SUPPORT_DIRS)" +.PHONY: gdb+dejagnu.tar +gdb+dejagnu.tar: $(DIST_SUPPORT) $(GDBD_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-tar TOOL=gdb PACKAGE=gdb+dejagnu \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(GDBD_SUPPORT_DIRS)" .PHONY: insight.tar.bz2 INSIGHT_SUPPORT_DIRS= $(GDB_SUPPORT_DIRS) tcl tk itcl tix libgui @@ -1945,6 +2125,11 @@ insight.tar.bz2: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb $(MAKE) -f Makefile.in gdb-taz TOOL=gdb PACKAGE=insight \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(INSIGHT_SUPPORT_DIRS)" +.PHONY: insight.tar +insight.tar: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-tar TOOL=gdb PACKAGE=insight \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(INSIGHT_SUPPORT_DIRS)" .PHONY: insight+dejagnu.tar.bz2 INSIGHTD_SUPPORT_DIRS= $(INSIGHT_SUPPORT_DIRS) expect dejagnu @@ -1952,6 +2137,11 @@ insight+dejagnu.tar.bz2: $(DIST_SUPPORT) $(INSIGHTD_SUPPORT_DIRS) gdb $(MAKE) -f Makefile.in gdb-taz TOOL=gdb PACKAGE="insight+dejagnu" \ MD5PROG="$(MD5PROG)" \ SUPPORT_FILES="$(INSIGHTD_SUPPORT_DIRS)" +.PHONY: insight+dejagnu.tar +insight+dejagnu.tar: $(DIST_SUPPORT) $(INSIGHTD_SUPPORT_DIRS) gdb + $(MAKE) -f Makefile.in gdb-tar TOOL=gdb PACKAGE="insight+dejagnu" \ + MD5PROG="$(MD5PROG)" \ + SUPPORT_FILES="$(INSIGHTD_SUPPORT_DIRS)" .PHONY: newlib.tar.bz2 NEWLIB_SUPPORT_DIRS=libgloss