123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- ## automake - create Makefile.in from Makefile.am
- ## Copyright (C) 1994-2017 Free Software Foundation, Inc.
- ## This program is free software; you can redistribute it and/or modify
- ## it under the terms of the GNU General Public License as published by
- ## the Free Software Foundation; either version 2, or (at your option)
- ## any later version.
- ## This program is distributed in the hope that it will be useful,
- ## but WITHOUT ANY WARRANTY; without even the implied warranty of
- ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ## GNU General Public License for more details.
- ## You should have received a copy of the GNU General Public License
- ## along with this program. If not, see <http://www.gnu.org/licenses/>.
- VPATH = @srcdir@
- @SET_MAKE@
- ## We used to define this. However, we don't because vendor makes
- ## (e.g., Solaris, Irix) won't correctly propagate variables that are
- ## defined in Makefile. This particular variable can't be correctly
- ## defined by configure (at least, not the current configure), so we
- ## simply avoid defining it to allow the user to use this feature with
- ## a vendor make.
- ## DESTDIR =
- ## Shell code that determines whether we are running under GNU make.
- ##
- ## Why the this needs to be so convoluted?
- ##
- ## (1) We can't unconditionally use make functions or special variables
- ## starting with a dot, as those cause non-GNU implmentations to
- ## crash hard.
- ##
- ## (2) We can't use $(MAKE_VERSION) here, as it is also defined in some
- ## non-GNU make implementations (e.g., FreeBSD make). But at least
- ## BSD make does *not* define the $(CURDIR) variable -- it uses
- ## $(.CURDIR) instead.
- ##
- ## (3) We can't use $(MAKEFILE_LIST) here, as in some situations it
- ## might cause the shell to die with "Arg list too long" (see
- ## automake bug#18744).
- ##
- ## (4) We can't use $(MAKE_HOST) unconditionally, as it is only
- ## defined in GNU make 4.0 or later.
- ##
- am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
- }
- ## Shell code that determines whether the current make instance is
- ## running with a given one-letter option (e.g., -k, -n) that takes
- ## no argument.
- am__make_running_with_option = \
- case $${target_option-} in \
- ?) ;; \
- *) echo "am__make_running_with_option: internal error: invalid" \
- "target option '$${target_option-}' specified" >&2; \
- exit 1;; \
- esac; \
- has_opt=no; \
- sane_makeflags=$$MAKEFLAGS; \
- if $(am__is_gnu_make); then \
- ## The format of $(MAKEFLAGS) is quite tricky with GNU make; the
- ## variable $(MFLAGS) behaves much better in that regard. So use it.
- sane_makeflags=$$MFLAGS; \
- else \
- ## Non-GNU make: we must rely on $(MAKEFLAGS). This is tricker and more
- ## brittle, but is the best we can do.
- case $$MAKEFLAGS in \
- ## If we run "make TESTS='snooze nap'", FreeBSD make will export MAKEFLAGS
- ## to " TESTS=foo\ nap", so that the simpler loop below (on word-split
- ## $$MAKEFLAGS) would see a "make flag" equal to "nap", and would wrongly
- ## misinterpret that as and indication that make is running in dry mode.
- ## This has already happened in practice. So we need this hack.
- *\\[\ \ ]*) \
- ## Extra indirection with ${bs} required by FreeBSD 8.x make.
- ## Not sure why (so sorry for the cargo-cult programming here).
- bs=\\; \
- sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
- | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
- esac; \
- fi; \
- skip_next=no; \
- strip_trailopt () \
- { \
- flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
- }; \
- for flg in $$sane_makeflags; do \
- test $$skip_next = yes && { skip_next=no; continue; }; \
- case $$flg in \
- *=*|--*) continue;; \
- ##
- ## GNU make 4.0 has changed the format of $MFLAGS, and removed the space
- ## between an option and its argument (e.g., from "-I dir" to "-Idir").
- ## So we need to handle both formats, at least for options valid in GNU
- ## make. OTOH, BSD make formats $(MAKEFLAGS) by separating all options,
- ## and separating any option from its argument, so things are easier
- ## there.
- ##
- ## For GNU make and BSD make.
- -*I) strip_trailopt 'I'; skip_next=yes;; \
- -*I?*) strip_trailopt 'I';; \
- ## For GNU make >= 4.0.
- -*O) strip_trailopt 'O'; skip_next=yes;; \
- -*O?*) strip_trailopt 'O';; \
- ## For GNU make (possibly overkill, this one).
- -*l) strip_trailopt 'l'; skip_next=yes;; \
- -*l?*) strip_trailopt 'l';; \
- ## For BSD make.
- -[dEDm]) skip_next=yes;; \
- ## For NetBSD make.
- -[JT]) skip_next=yes;; \
- esac; \
- case $$flg in \
- *$$target_option*) has_opt=yes; break;; \
- esac; \
- done; \
- test $$has_opt = yes
- ## Shell code that determines whether make is running in "dry mode"
- ## ("make -n") or not. Useful in rules that invoke make recursively,
- ## and are thus executed also with "make -n" -- either because they
- ## are declared as dependencies to '.MAKE' (NetBSD make), or because
- ## their recipes contain the "$(MAKE)" string (GNU and Solaris make).
- am__make_dryrun = (target_option=n; $(am__make_running_with_option))
- ## Shell code that determines whether make is running in "keep-going mode"
- ## ("make -k") or not. Useful in rules that must recursively descend into
- ## subdirectories, and decide whether to stop at the first error or not.
- am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
- ## Some derived variables that have been found to be useful.
- pkgdatadir = $(datadir)/@PACKAGE@
- pkgincludedir = $(includedir)/@PACKAGE@
- pkglibdir = $(libdir)/@PACKAGE@
- pkglibexecdir = $(libexecdir)/@PACKAGE@
- am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
- install_sh_DATA = $(install_sh) -c -m 644
- install_sh_PROGRAM = $(install_sh) -c
- install_sh_SCRIPT = $(install_sh) -c
- INSTALL_HEADER = $(INSTALL_DATA)
- transform = $(program_transform_name)
- ## These are defined because otherwise make on NetBSD V1.1 will print
- ## (eg): $(NORMAL_INSTALL) expands to empty string.
- NORMAL_INSTALL = :
- PRE_INSTALL = :
- POST_INSTALL = :
- NORMAL_UNINSTALL = :
- PRE_UNINSTALL = :
- POST_UNINSTALL = :
- ## dejagnu.am uses these variables. Some users might rely on them too.
- ?BUILD?build_triplet = @build@
- ?HOST?host_triplet = @host@
- ?TARGET?target_triplet = @target@
|