Commit Graph

306 Commits

Author SHA1 Message Date
christos 309da5c724 Fix the build kernels target with -n, disable temporarily runcmd while we
are fetching the allkernels variable.
2015-02-01 18:49:25 +00:00
uebayasi 0a333665fa Add a new build make variable, CONFIGOPTS, which is passed to config(1)
when building kernels.  Revert "mkernel=*" and "mkernels" in favor of
this option.

Diff posted on source-changes-d@, approved by (null).
2014-11-30 15:53:29 +00:00
uebayasi 34757c628f build.sh mkernels: Build all kernels in modular build 2014-11-16 06:08:13 +00:00
uebayasi 5c3b6b4d21 Expand TABs in usage. 2014-11-16 05:39:09 +00:00
uebayasi 445d0e91db build.sh mkernel=*: New command to build kernel in modular 2014-11-16 05:38:10 +00:00
apb d23dc3a0d7 Replace '.' and '-' in ${op} with '_', before setting d_${op}=true.
Also remove or simplify older code that did the same thing in a
different way.  The old code handled most cases, but did not change
op=kernel.gdb to op=kernel_gdb.
2014-11-10 09:59:33 +00:00
uebayasi 9886534313 build.sh: New operation "kernels" to build all kernels 2014-11-06 02:02:48 +00:00
snj 5a351217dd iso -> images 2014-11-05 08:19:17 +00:00
apb fccc687bdd Prefer dash to bash when searching for a usable shell.
I have tested a complete build with HOST_SH=dash on NetBSD.
2014-09-30 14:57:51 +00:00
matt fab8544d6c Add riscv32 and riscv64 platforms. 2014-09-19 17:59:57 +00:00
matt ef6ee95a03 Add or1k MACHINE/MACHINE_ARCH. 2014-09-03 19:32:18 +00:00
apb 9c3c6064f6 Only the -m command line option, not MACHINE from the environment,
is supposed override MACHINE_ARCH from the environment with the
default MACHINE_ARCH for the requested machine.

Add and use an opt_m variable to enforce this.
2014-08-15 18:34:19 +00:00
matt 547b3a3b01 Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only.  While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.
2014-08-10 05:56:36 +00:00
apb 76ee568117 MACHINE_ARCH from the environment may be overridden by getarch (based
on the MACHINE), but MACHINE_ARCH from the -a option should not be
overridden.  The previous commit accidentally removed this behaviour.
2014-08-07 18:10:20 +00:00
apb 3058a673ed Add a list-arch operation to build.sh.
This lists all known MACHINE/MACHINE_ARCH values, optionally
filtered by glob patterns given in the "-m" and "-a" options.
For example: build.sh -a '*arm*' list-arch
2014-08-07 17:54:28 +00:00
apb b0a459328c In the usage message, mention that the -m arg may be an alias.
Also adjust a comment around alias processing.
2014-08-07 15:15:48 +00:00
apb cb95afc6e0 When searching for a default MACHINE_ARCH for a given MACHINE,
don't break out of the loop too early.
2014-08-06 12:29:13 +00:00
apb f80058aa23 Synchronise several shell_quote implementations, and:
* Elide some unnecessary pairs of quotation marks, to improve readability.
  For example, shell_quote "''" is now \'\' instead of ''\'''\'''.
* Don't add quotes around words that contain only safe characters,
  to improve readability.
* LC_COLLATE=C to prevent [a-zA-Z] from matching non-ASCII characters.
* Use ${SED} if defined.
2014-08-04 21:56:30 +00:00
riz ca39102762 hpcarm wants earmv4 because some models only have v4 CPUs. 2014-08-03 17:11:44 +00:00
apb 62aca79a71 BUILDINFO part 4: build.sh
Add BUILDINFO to the list of variables saved in the makewrapper script,
and print any non-blank BUILDINFO lines near the beginning of the output
from build.sh.
Index: build.sh
===================================================================
RCS file: /cvsroot/src/build.sh,v
retrieving revision 1.286
diff -d -p -u -r1.286 build.sh
--- build.sh	3 Aug 2014 01:03:41 -0000	1.286
+++ build.sh	3 Aug 2014 09:20:46 -0000
@@ -1299,6 +1299,7 @@ parseoptions()
 	#
 	makeenv="${makeenv} TOOLDIR MACHINE MACHINE_ARCH MAKEFLAGS"
 	[ -z "${BUILDID}" ] || makeenv="${makeenv} BUILDID"
+	[ -z "${BUILDINFO}" ] || makeenv="${makeenv} BUILDINFO"
 	MAKEFLAGS="-de -m ${TOP}/share/mk ${MAKEFLAGS}"
 	MAKEFLAGS="${MAKEFLAGS} MKOBJDIRS=${MKOBJDIRS-yes}"
 	export MAKEFLAGS MACHINE MACHINE_ARCH
@@ -2078,6 +2079,13 @@ main()
 	if [ -n "${BUILDID}" ]; then
 		statusmsg2 "BUILDID:"  "${BUILDID}"
 	fi
+	if [ -n "${BUILDINFO}" ]; then
+		printf "%b\n" "${BUILDINFO}" | \
+		while read -r line ; do
+			[ -s "${line}" ] && continue
+			statusmsg2 "BUILDINFO:"  "${line}"
+		done
+	fi

 	rebuildmake
 	validatemakeparams
2014-08-03 09:22:29 +00:00
riz 8b64a7c094 Make EABI the default for arm ports, as discussed on current-users
and port-arm.
2014-08-03 01:03:41 +00:00
apb cfff08a8a3 Make the makewrapper script robust against variables with
embedded special characters.
* Add a shell_quote function, identical to that in postinstall(1)
  and etcupdate(1).
* In the variable=value lines emitted to the wrapper script,
  quote the values, because they may contain special characters.
* Sort the variable names, not the variable=value lines, in case the
  value contains newlines.
2014-07-06 18:04:44 +00:00
apb 21232f58bc Set USETOOLS and MAKEWRAPPERMACHINE in parseoptions(), where
several other make variables are set, insteadof in special
case code in createmakewrapper().
2014-07-06 17:49:20 +00:00
apb dc4d730583 Fix two incorrect attempts to skip blank lines or comment lines.
They failed to account for the space that is appended to ${line}
before comparison.
2014-07-06 17:35:09 +00:00
apb 1ee6f9f471 Print BUILDID near the beginning of build.sh. 2014-06-14 12:25:00 +00:00
martin be27ff5209 Add a new action kernel.gdb=MYCONF to build a kernel with debuginfo
(and generate netbsd.gdb)
2014-05-05 19:12:19 +00:00
uebayasi f03da5f1d6 Revert previous for now; resolvepath() has to work for file paths too. 2014-04-29 11:52:51 +00:00
uebayasi 601713acc4 resolvepath: Resolve .. in absolute paths. 2014-04-29 06:51:57 +00:00
martin 606e79f9ab Typo 2014-03-31 19:29:21 +00:00
martin aad6ef8bb5 Bring back the playstation2 port - now that a toolchain for it is
available again.
2014-03-31 11:25:47 +00:00
skrll 6d3ceb1d61 Rename NetBSD/hp700 to NetBSD/hppa.
Unfortunately our VCS isn't very helpful here.
2014-02-24 07:23:38 +00:00
apb 5c6a475640 Move the "-U or -E must be set for build as an unprivileged user."
test from sanitycheck() to validatemakeparams().  If MKUNPRIVED is set
in mk.conf (and not on the build.sh command line) then it's not yet
available for use in the sanitycheck function.

Also move some other code for consistency.
2014-02-10 08:20:05 +00:00
apb d67dc8a5dd In the sanitycheck function, treat undefined MKUNPRIVED like "no".
Other uses of MKUNPRIVED should not need this treatment, because
bsd.own.mk sets it to "no" by default, and build.sh uses getmakevar to
pick up that default (but that happens too late for the sanitycheck
function to take advantage of it).
2014-01-13 20:00:20 +00:00
pooka 74f1a93841 Rename RUMPTEST_BUILDSH to RUMPKERN_ONLY. Turns out not building any
POSIX implementations of hypercalls is useful beyond the build.sh test,
such as when building rump kernels for non-POSIX hosts.
2013-08-30 10:29:06 +00:00
matt ebaa4f9b26 Use earmv4 for ecats enetwinder eshark
Add evbearm variants for earmv{4,5}{,eb} earmv7{,hf} earmv6{,hf}{,eb}
2013-08-06 05:47:58 +00:00
matt d97935c873 Add evbearmv7-eb and evbearmv7hf-eb aliases for evbarm.
These are because cortex (armv7a) cores uses a different big-endian binary
format that previous big-endian arm systems.
2013-08-05 00:28:52 +00:00
matt c9855651f8 Add stub port for evbcf which has enough to do a distribution build. 2013-07-18 22:08:59 +00:00
msaitoh 6c7aa7e063 The default of hpcarm's MACHINE_ARCH is arm. 2013-06-28 06:17:37 +00:00
matt 0daafbf5e0 Add earm aliases for various arm ports (ecats, hpcearm, eshark, etc.) 2013-06-27 01:02:13 +00:00
kiyohara 4aba7d3a0d Support to build for epoc32 userland. 2013-05-01 13:11:59 +00:00
pooka e0ab611267 fix "build.sh rumptest" wrt private hypercalls 2013-04-28 12:54:39 +00:00
oki 227f9e0fe5 fixed typo on comment. 2013-03-07 04:51:58 +00:00
christos d6c020d518 add a disk-image=target option 2013-02-13 02:17:54 +00:00
matt 29bcadd648 Add
MACHINE=evbarm		MACHINE_ARCH=earmhf	ALIAS=evbearmhf-el
MACHINE=evbarm		MACHINE_ARCH=earmhfeb	ALIAS=evbearmhf-eb
2013-02-03 05:37:43 +00:00
hubertf 1f03a12d0f If the initial build of nbmake fails, make the configure logfile
available (and tell where it is).
2013-02-02 02:08:37 +00:00
pooka 9df40f0e83 Scrub TERMINFO from host env lest it leaks into libterminfo build. 2013-01-14 13:02:59 +00:00
apb 381c3917c4 Move some tests from validatemakeparams() to sanitycheck(), so the
related error messages can be printed before build.sh builds
a new version of make.

Also make some sanity tests unconditional, instead of conditional on
${do_build} || ${do_distribution} || ${do_release} || ${do_install}.
2012-12-02 19:19:36 +00:00
joerg 54f191bfce Move the build_install logic from lib/Makefile into share/mk and re-use
it for tools. The existing logic broke for the LLVM build with the
recent .ORDER changes in make.
2012-11-15 23:51:53 +00:00
apb 9c5c1c9f13 Replace getarch and validatearch with table-driven implementations. 2012-10-31 13:05:09 +00:00
apb 22c6226401 Print the value of MAKECONF. 2012-10-18 16:15:29 +00:00