This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
toplevel: 'maybe-ize' dependencies
- From: Nathanael Nerode <neroden at twcny dot rr dot com>
- To: gcc-patches at gcc dot gnu dot org, dj at redhat dot com
- Date: Tue, 19 Nov 2002 20:58:21 -0500
- Subject: toplevel: 'maybe-ize' dependencies
This is the followup to the 'maybe' infrastructure patch. This replaces
nearly all dependencies on 'foo-bar' with a dependency on 'maybe-foo-bar'.
This means that the dependency on 'foo-bar' will vanish if the directory
'bar' wasn't being configured (wasn't in $configdirs or $target_configdirs in
configure.in/configure). This is fine, since if the directory
'bar' wasn't being configured, the rule for 'foo-bar' quietly did nothing
(in all cases).
Some of these should be 'un-maybe-ized' later, specifically the ones which
should fail if the directory is missing. For instance, if the opcodes
directory has been removed, binutils should fail to build because of it,
so this deserves a non-maybe dependency.
But maybe-ifying all dependencies is safest as it effectively preserves
current behavior.
* Makefile.tpl: Maybe-ize dependencies.
* Makefile.in: Regenerate.
*** Makefile.tpl.2 Tue Nov 19 19:59:12 2002
--- Makefile.tpl Tue Nov 19 20:52:00 2002
***************
*** 1225,1310 ****
true; \
fi
! ALL_GCC = all-gcc
! ALL_GCC_C = $(ALL_GCC) all-target-newlib all-target-libgloss
! ALL_GCC_CXX = $(ALL_GCC_C) all-target-libstdc++-v3
# This is a list of inter-dependencies among modules.
! all-autoconf: all-m4 all-texinfo
! all-automake: all-m4 all-texinfo
! 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_C) configure-target-qthreads
! all-dejagnu: all-tcl all-expect all-tk
! all-diff: all-libiberty
configure-target-examples: $(ALL_GCC_C)
! all-expect: all-tcl all-tk
! all-fileutils: all-libiberty
! all-flex: all-libiberty all-bison all-byacc
! all-gas: all-libiberty all-opcodes all-bfd all-intl
! all-gcc: all-libiberty all-bison all-byacc all-binutils all-gas all-ld all-zlib
! all-bootstrap: all-libiberty all-texinfo all-bison all-byacc all-binutils all-gas all-ld all-zlib
GDB_TK = @GDB_TK@
! all-gdb: all-libiberty all-opcodes all-bfd all-mmalloc all-readline all-bison all-byacc all-sim $(gdbnlmrequirements) $(GDB_TK)
configure-target-gperf: $(ALL_GCC_CXX)
! all-target-gperf: all-target-libiberty all-target-libstdc++-v3
! all-gprof: all-libiberty all-bfd all-opcodes all-intl
! all-grep: all-libiberty
! all-gzip: all-libiberty
! all-hello: all-libiberty
! all-itcl: all-tcl all-tk
! all-ld: all-libiberty all-bfd all-opcodes all-bison all-byacc all-flex all-intl
configure-target-libgloss: $(ALL_GCC)
! all-target-libgloss: configure-target-newlib
! all-libgui: all-tcl all-tk all-itcl
configure-target-libffi: $(ALL_GCC_C)
! configure-target-libjava: $(ALL_GCC_C) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-libffi
! all-target-libjava: all-fastjar all-target-zlib all-target-boehm-gc all-target-qthreads all-target-libffi
configure-target-libstdc++-v3: $(ALL_GCC_C)
! all-target-libstdc++-v3: all-target-libiberty
configure-target-libf2c: $(ALL_GCC_C)
! all-target-libf2c: all-target-libiberty
configure-target-libobjc: $(ALL_GCC_C)
! all-target-libobjc: all-target-libiberty
! all-m4: all-libiberty all-texinfo
! all-make: all-libiberty
configure-target-newlib: $(ALL_GCC)
configure-target-libtermcap: $(ALL_GCC_C)
! all-opcodes: all-bfd all-libiberty
! all-patch: all-libiberty
! all-prms: all-libiberty
configure-target-qthreads: $(ALL_GCC_C)
! all-recode: all-libiberty
! all-sed: all-libiberty
! all-send-pr: all-prms
! all-sid: all-tcl all-tk
! all-sim: all-libiberty all-bfd all-opcodes all-readline
! all-snavigator: all-tcl all-tk all-itcl all-tix all-db all-grep all-libgui
! all-tar: all-libiberty
! all-tclX: all-tcl all-tk
! all-tk: all-tcl
! all-texinfo: all-libiberty
! all-tix: all-tcl all-tk
configure-target-winsup: $(ALL_GCC_C)
! all-target-winsup: all-target-libiberty all-target-libtermcap
! all-uudecode: all-libiberty
configure-target-zlib: $(ALL_GCC_C)
! all-fastjar: all-zlib all-libiberty
! configure-target-fastjar: configure-target-zlib
! all-target-fastjar: all-target-zlib all-target-libiberty
configure-target-libiberty: $(ALL_GCC_C)
! install-gdb: install-tcl install-tk install-itcl install-tix install-libgui
! install-sid: install-tcl install-tk
# We put install-opcodes before install-binutils because the installed
# binutils might be on PATH, and they might need the shared opcodes
# library.
! install-binutils: install-opcodes
# We put install-tcl before install-itcl because itcl wants to run a
# program on installation which uses the Tcl libraries.
! install-itcl: install-tcl
# This is a slightly kludgy method of getting dependencies on
# all-build-libiberty correct; it would be better to build it every time.
--- 1225,1310 ----
true; \
fi
! ALL_GCC = maybe-all-gcc
! ALL_GCC_C = $(ALL_GCC) maybe-all-target-newlib maybe-all-target-libgloss
! ALL_GCC_CXX = $(ALL_GCC_C) maybe-all-target-libstdc++-v3
# This is a list of inter-dependencies among modules.
! all-autoconf: maybe-all-m4 maybe-all-texinfo
! all-automake: maybe-all-m4 maybe-all-texinfo
! all-bfd: maybe-all-libiberty maybe-all-intl
! all-binutils: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-flex maybe-all-bison maybe-all-byacc maybe-all-intl
! all-bison: maybe-all-texinfo
! configure-target-boehm-gc: $(ALL_GCC_C) maybe-configure-target-qthreads
! all-dejagnu: maybe-all-tcl maybe-all-expect maybe-all-tk
! all-diff: maybe-all-libiberty
configure-target-examples: $(ALL_GCC_C)
! all-expect: maybe-all-tcl maybe-all-tk
! all-fileutils: maybe-all-libiberty
! all-flex: maybe-all-libiberty maybe-all-bison maybe-all-byacc
! all-gas: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-intl
! all-gcc: maybe-all-libiberty maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib
! all-bootstrap: maybe-all-libiberty maybe-all-texinfo maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib
GDB_TK = @GDB_TK@
! all-gdb: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-mmalloc maybe-all-readline maybe-all-bison maybe-all-byacc maybe-all-sim $(gdbnlmrequirements) $(GDB_TK)
configure-target-gperf: $(ALL_GCC_CXX)
! all-target-gperf: maybe-all-target-libiberty maybe-all-target-libstdc++-v3
! all-gprof: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-intl
! all-grep: maybe-all-libiberty
! all-gzip: maybe-all-libiberty
! all-hello: maybe-all-libiberty
! all-itcl: maybe-all-tcl maybe-all-tk
! all-ld: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-bison maybe-all-byacc maybe-all-flex maybe-all-intl
configure-target-libgloss: $(ALL_GCC)
! all-target-libgloss: maybe-configure-target-newlib
! all-libgui: maybe-all-tcl maybe-all-tk maybe-all-itcl
configure-target-libffi: $(ALL_GCC_C)
! configure-target-libjava: $(ALL_GCC_C) maybe-configure-target-zlib maybe-configure-target-boehm-gc maybe-configure-target-qthreads maybe-configure-target-libffi
! all-target-libjava: maybe-all-fastjar maybe-all-target-zlib maybe-all-target-boehm-gc maybe-all-target-qthreads maybe-all-target-libffi
configure-target-libstdc++-v3: $(ALL_GCC_C)
! all-target-libstdc++-v3: maybe-all-target-libiberty
configure-target-libf2c: $(ALL_GCC_C)
! all-target-libf2c: maybe-all-target-libiberty
configure-target-libobjc: $(ALL_GCC_C)
! all-target-libobjc: maybe-all-target-libiberty
! all-m4: maybe-all-libiberty maybe-all-texinfo
! all-make: maybe-all-libiberty
configure-target-newlib: $(ALL_GCC)
configure-target-libtermcap: $(ALL_GCC_C)
! all-opcodes: maybe-all-bfd maybe-all-libiberty
! all-patch: maybe-all-libiberty
! all-prms: maybe-all-libiberty
configure-target-qthreads: $(ALL_GCC_C)
! all-recode: maybe-all-libiberty
! all-sed: maybe-all-libiberty
! all-send-pr: maybe-all-prms
! all-sid: maybe-all-tcl maybe-all-tk
! all-sim: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-readline
! all-snavigator: maybe-all-tcl maybe-all-tk maybe-all-itcl maybe-all-tix maybe-all-db maybe-all-grep maybe-all-libgui
! all-tar: maybe-all-libiberty
! all-tclX: maybe-all-tcl maybe-all-tk
! all-tk: maybe-all-tcl
! all-texinfo: maybe-all-libiberty
! all-tix: maybe-all-tcl maybe-all-tk
configure-target-winsup: $(ALL_GCC_C)
! all-target-winsup: maybe-all-target-libiberty maybe-all-target-libtermcap
! all-uudecode: maybe-all-libiberty
configure-target-zlib: $(ALL_GCC_C)
! all-fastjar: maybe-all-zlib maybe-all-libiberty
! configure-target-fastjar: maybe-configure-target-zlib
! all-target-fastjar: maybe-all-target-zlib maybe-all-target-libiberty
configure-target-libiberty: $(ALL_GCC_C)
! install-gdb: maybe-install-tcl maybe-install-tk maybe-install-itcl maybe-install-tix maybe-install-libgui
! install-sid: maybe-install-tcl maybe-install-tk
# We put install-opcodes before install-binutils because the installed
# binutils might be on PATH, and they might need the shared opcodes
# library.
! install-binutils: maybe-install-opcodes
# We put install-tcl before install-itcl because itcl wants to run a
# program on installation which uses the Tcl libraries.
! install-itcl: maybe-install-tcl
# This is a slightly kludgy method of getting dependencies on
# all-build-libiberty correct; it would be better to build it every time.