Commit Graph

56 Commits

Author SHA1 Message Date
lukem cf4db277d4 Fix passing -j NNN to gmake
Use a more restrictive pattern to extract -j NNN from MAKEFLAGS
into GMAKE_J_ARGS, to avoid false positives when the source directory
has "-j" in the path (e.g "amd64-job-000012" or "src-j9999").
Previously this could pass either -"-j" or "-j BIGNUM" to gmake
and result in "vfork: Resource temporarily unavailable" failures.

PR misc/54456
2023-05-19 10:42:34 +00:00
lukem c2a5a723f0 tools: if MAKEVERBOSE >=2, noisy automake builds
Explicitly build with V=1 for MAKEVERBOSE >= 2
so that Makefile.gnuhost (automake) consumers
are more consistent with native builds.

(If the upstream is using AM_SILENT_RULES(yes)
then the default is V=0).
2023-05-15 21:24:56 +00:00
rillig 4c66371fdc tools: in non-verbose mode, build the tools silently 2021-08-29 08:36:00 +00:00
lukem 49c251eb17 tools: configure --silent if MAKEVERBOSE == 0 2020-06-13 10:49:17 +00:00
lukem ccc4feaf7c tools: if MAKEVERBOSE < 2, quieten automake builds 2020-06-13 08:12:16 +00:00
maya c8e8986664 Adjust whitespace to look more like assignment than comparison. NFC 2018-10-22 13:19:42 +00:00
christos 2d7f932be5 detect clang instead of bundling it with Darwin 2018-10-21 00:26:24 +00:00
martin bbde9f9ded Add FLEX to the configure env, from Lloyd Parkes on tech-toolchain.
Some configure scripts seem to need both LEX and FLEX.
2018-10-14 10:23:32 +00:00
maya 43018fddb4 Remove hack previously needed to build gcc/arm with clang.
genattrtab.c:1.2 makes this unnecessary.

Tested by thorpej.
2018-04-17 10:08:54 +00:00
christos 622f49cc74 Use the __clang__ preprocessor symbol to check for clang, since --version
might barf. From joerg@
2018-04-17 02:03:56 +00:00
christos 1c811476c7 do the bracket nesting only for clang for now. 2018-04-15 21:50:38 +00:00
snj 6e9004b7ce GCC build exceeds the macOS clang default bracket nesting level of 256.
Work around with -fbracket-depth=512.

From potr in PR toolchain/53178.
2018-04-13 06:15:26 +00:00
christos ee45ee4be7 look in gpl3 for stuff too (autoconf) 2016-01-16 18:38:53 +00:00
christos 8c986671c8 look in external first. 2016-01-13 23:01:15 +00:00
drochner 86d6df49cc pass HOST_SH to the build, to keep it from picking up a "bash"
from $PATH
2013-08-13 20:41:25 +00:00
apb b042dd28fe Revert previous change to tools/Makefile.gnuhost. When getenv("M4")
contains multiple words, flex fails.

Adjust tools/autoconf/Makefile to pass the necessary extra arguments via
M4=... in CONFIGURE_ENV.  This is similar to what used to be in
revision 1.4 of tools/autoconf/Makefile, but it's now after instead of
before the inclusion of Makefile.gnuhost, because it has to override the
value of M4=...  that Makefile.gnuhost stores in CONFIGURE_ENV.
2013-08-07 17:50:55 +00:00
apb 7788a0781f Add the "-g -D__gnu__" flags when invoking M4 via CONFIGURE_ARGS
in tools/Makefile.gnuhost.  This makes the tools version of m4
behave like GNU m4.

Remove similar code from tools/autoconf/Makefile, where it didn't
work because Makefile.gnuhost would previously have overridden it.

This fixes a problem in which the tools version of autoconf complained
"M4sugar requires GNU M4.
Install it before installing M4sugar or set the M4 environment variable to its path name."
2013-08-06 21:47:01 +00:00
hans f70d5ee4a9 Don't use -print0/-0 in find | xargs, it is non-standard and not needed at all. 2012-06-19 21:48:33 +00:00
tsutsui 07a6a7e726 Replace not only space but also '(' and ')' on generating BUILD_PLATFORM
strings to appease shell's echo.
Cygwin's uname -r returns "1.7.9(0.237/5/3)" etc.
2012-04-18 11:28:30 +00:00
christos 66776cea39 remove dup target. 2012-01-21 22:31:15 +00:00
christos c300185bd0 Merge the two Makefiles that were mostly copies of each others.
The reason to do this was to add support for cleaning up the config.cache
files when the build environment (as determined by uname -srm) changes.
2012-01-20 23:01:05 +00:00
tsutsui 3093d001cd Pass M4=${TOOL_M4:Q} to CONFIGURE_ENV for tools/gmp.
Fixes configure error on cygwin.
2011-11-21 13:46:37 +00:00
uebayasi d219709b67 Actually use timestamp file's timestamps so that things rebuild correctly. 2009-11-25 11:49:36 +00:00
apb 96230fab84 Use ${TOOL_AWK} instead of ${AWK} or plain "awk" in make commands.
Pass AWK=${TOOL_AWK:Q} to shell scripts that use awk.
2008-10-19 22:05:19 +00:00
jmc 2fbd40c4e0 Put back @ on configure line. Was off for debugging and shouldn't have been
committed.
2005-02-11 15:11:08 +00:00
jmc 07aeec53c1 Make a BUILD_ENV that by defaults matches CONFIGURE_ENV and pass it along on
the build step. Catches things like binutils which do a bunch of configures
on the build step and lose possibly. Fixes issues from PR#29197 for lex
not being picked up here.
2005-02-11 15:01:03 +00:00
skrll c31da5e397 Pass AR and RANLIB also.
OK'ed by mrg.
2004-10-18 08:33:48 +00:00
jmc 84fafa3db5 Ignore errors on some rm -rf's for platforms that aren't quite
POSIX compliant
and return errors on r/o source (FreeBSD) for -rf. Fixes PR#25022
2004-06-21 18:20:08 +00:00
jmc a3bd3ce336 Add $MAKE to env also. From PR#25952 2004-06-20 23:12:40 +00:00
jmc c1f0789352 MKUPDATE cannot possibly do the right thing with GNU wrapped tools installs as
no dependencies are known in advance. So a simple 'build.sh -r -u' will
often lose and end up with a TOOLDIR without a toolchain, groff, etc. Fix
by forcing .install_done to always run.
2004-06-12 14:56:30 +00:00
skrll 0aae540257 Backout recent changes made to gnu/lib/libgcc3 for a forced MKPIC=no build.
Fix the behaviour of native and tools gcc when MKPIC=no is specified for
platforms that mknative has determined support shared libraries.

XXX distrib/sets/sets.subr doesn't support MKPIC=no
2004-02-27 14:52:01 +00:00
skrll b263dbdd73 Be more gcc like in the way we deal with libgcc so that sh3/hppa millicode
and exception handling have a chance of working properly.

        - creates libgcc, libgcc_eh and libgcc_s

        - updates LIBGCC_SPEC to use them appropriately.

          There's a hack in here at the moment with respect to libgcc_so in that it
          is preferable to link against libgcc_so will only when -shared-libgcc is
          specified (the c++ frontend does this automatically.) Configurations where
          LINK_EH_SPEC is defined already do this. The gcc configuration for
          NetBSD/alpha and another NetBSD platform (I forget which) actually define
          LINK_EH_SPEC probably by accident rather than design.

        - updates share/mk to use the compiler's knowledge of what needs linking into
          libraries and executables. This removes an hppa hack.

        - updates the sets for the newly created libgcc* files.

	- support for linking against the _pg version of libgcc has been removed.
2004-02-15 19:52:27 +00:00
lukem f85d2d1c14 Use ${HOST_SH} instead of `sh'.
If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
2003-10-26 07:25:33 +00:00
lukem 130ab7336b Rework how MAKEVERBOSE operates:
*	Don't bother prefixing commands with a line of  ${_MKCMD}\
	and instead rely upon "make -s".  This is less intrusive on
	all the Makefiles than the former.  Idea from David Laight.

    *	Rename the variables use to print messages.  The scheme now is:
	    _MKMSG_FOO		Run  _MKMSG 'foo'
	    _MKTARGET_FOO	Run  _MKMSG_FOO ${.TARGET}
	From discussion with Alistair Crooks.
2003-10-21 10:01:19 +00:00
lukem 2c30246862 MAKEVERBOSE support 2003-10-18 16:33:58 +00:00
dbj 3c72899f34 add -O2 to HOST_CFLAGS on Darwin since adding "-no-cpp-precomp" there blows
it away otherwise
2003-10-10 21:49:59 +00:00
dbj 2fe0adbe32 set HOST_CFLAGS+= -no-cpp-precomp when configuring gnu software on Darwin 2003-10-07 14:12:36 +00:00
lukem f134f3dc38 Add MKUNPRIVED; if not no has the same semantics as if UNPRIVED was defined.
Replace defined(UNPRIVED) tests with ${MKUNPRIVED} != "no"

Add MKUPDATE; if not no has the same semantics as if UPDATE was defined.
Replace defined(UPDATE) tests with ${MKUPDATE} != "no"

Improve documentation for these and other make flags.
2003-07-18 08:26:01 +00:00
thorpej d2809fcf8a Put -X into MAKEFLAGS on FreeBSD and Mac OS X; they have a small ARG_MAX. 2003-03-14 05:22:50 +00:00
lukem 27c21a917d replace DIST with GNUHOSTDIST, and don't unconditionally define it
in Makefile.gnuhost (use ?= instead of =, to allow overriding)
2003-02-07 01:52:51 +00:00
tv a616862da1 Remove the "-j1" hack. This needs to be fixed better. For now, -j is
disabled at the top level anyway, making this extra hack unnecessary.
2002-02-26 22:27:11 +00:00
tv 9fbd88883c Roll in fixes to permit cross-compiling from non-NetBSD hosts. This
round has been tested on Solaris/x86 and Linux hosts.

* Add host tools cap_mkdb, ctags, m4, uudecode.
* Protect __RCSID() and __COPYRIGHT() better.
* Reduce the number of places that need to include "config.h", to keep
  sources closer to their "vanilla" versions.
* Add more compat #defines and autoconf-checked functions.
2002-01-31 22:43:33 +00:00
tv c10af7be1e Make sure LEX and YACC are properly defined (mainly for groff); also use
a more portable grep construct.
2002-01-31 02:42:25 +00:00
tv fe9dd95fc6 Remove stray diagnostic "echo". 2002-01-03 16:47:08 +00:00
tv b6ed0d753c * Honor BUILD on "make install" (will do "make all" first).
* Make "make all" update the .build_done timestamp more intelligently;
  if no files changed in the build tree, don't touch the timestamp.
  (This allows UPDATE and BUILD to function correctly.)
2002-01-03 16:45:18 +00:00
tv 94d108be2e Avoid building and installing every time, so that we don't have toolchain
dependencies cause things like constantly regenerating catpages....
2001-12-13 19:36:22 +00:00
jmc 1bcf4d49b2 Make sure and run sh configure as it may not have execute permissions. 2001-12-02 03:03:12 +00:00
perry 184d8eecad replace instances of INSTALL_FILE with HOST_INSTALL_FILE 2001-11-19 04:47:42 +00:00
tv f39f0b5131 Workaround some make(1) braindamage wrt when it tries to "auto-chdir"
back to ${.CURDIR}.  How losing....
2001-11-16 16:41:46 +00:00
tv 7cbe8c2c16 Recheck the GNU configuration if ${.CURDIR}/Makefile changes. 2001-11-14 22:14:48 +00:00