Go to file
kre 36d40de856 For now, probably forever, prohibit unquoted $ and ` in the names of
functions being defined (they can still be included if quoted).

If we parsed the way POSIX specifies (leaving the exact input text of
$ and ` expansions unaltered, until required to be expanded) this would
not be needed, as the name of a function being defined does not underbo
parameter, command, or arith expansions, so xxx$3() { : ; } would just
work.   But for many reasons we don't do that (and are unlikely to ever,
though maintaing both forms might be an option someday) - which led to
very obscure behaviour (if sh were compiled in DEBUG mode, even an abort())
and certainly nothing useful.   So just prohibit these uses for now.
(A portable function name must be a "name" so this makes no difference
at all to posix compat applications/scripts).

A doc update is pending (the updated sh.1 also contains updates in other
areas not yet appropriate to commit).
2020-08-19 22:41:47 +00:00
bin For now, probably forever, prohibit unquoted $ and ` in the names of 2020-08-19 22:41:47 +00:00
common Part I of ad@'s performance improvements for aarch64 2020-08-12 12:59:57 +00:00
compat 1. All Makefiles that use ARM_APCS_FLAGS add -marm unconditionally and 2019-10-24 18:46:20 +00:00
crypto move $VERSION from Makefile.inc into the single Makefile that uses it. 2020-07-23 07:53:35 +00:00
dist/pf Externalize variables owned logically by pf_ruleset.c 2020-04-22 23:40:40 +00:00
distrib Quoted from the top of the file: 2020-08-18 07:13:59 +00:00
doc note mips crash(8). 2020-08-17 04:16:24 +00:00
etc Use sysctl -n hw.machine_arch so this works on e.g. aarch64 2020-08-15 14:47:28 +00:00
external merge GCC 8.4 into gcc.old. 2020-08-19 07:46:31 +00:00
extsrc
games s/ be be / be / 2020-08-19 02:19:06 +00:00
include nameser_compat.h: correct preprocessor error syntax 2020-06-28 02:16:19 +00:00
lib make sure errno is always set when we return -1 (Anon Ymous) 2020-08-18 19:18:06 +00:00
libexec Add -DNO_BLOCKLIST_SUPPORT also to small/Makefile. 2020-07-13 10:35:17 +00:00
regress citrus SUBDIR is gone 2020-06-27 11:06:43 +00:00
rescue smb is no more. 2020-04-04 17:57:16 +00:00
sbin Find the if a device points to an active filesystem by looking at the mount 2020-08-08 11:44:55 +00:00
share s/ be be / be / 2020-08-19 02:19:06 +00:00
sys in uao_get(), if we unlock the uobj to read a page from swap, 2020-08-19 15:36:41 +00:00
tests Add skipped test for in-kernel roll-forward agent 2020-08-18 03:02:50 +00:00
tools set MODULE to ${EXTERNAL_GCC_SUBDIR} so this actually works.. 2020-08-13 10:57:53 +00:00
usr.bin make(1): don't optimize when measuring the code coverage 2020-08-19 06:30:37 +00:00
usr.sbin s/ be be / be / 2020-08-19 02:19:06 +00:00
build.sh make(1): remove references to the removed lst.lib 2020-07-26 09:17:24 +00:00
BUILDING Fix a typo 2019-05-08 14:03:57 +00:00
Makefile automatically remove old debug files for modules. 2020-05-15 16:34:44 +00:00
Makefile.inc
README.md Use first-level heading for "NetBSD" title in README.md 2020-01-10 12:33:28 +00:00
UPDATING 20200811: 2020-08-12 06:48:50 +00:00

NetBSD

NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices.

Building

You can cross-build NetBSD from most UNIX-like operating systems. To build for amd64 (x86_64), in the src directory:

./build.sh -U -u -j4 -m amd64 -O ~/obj release

Additional build information available in the BUILDING file.

Binaries

Testing

On a running NetBSD system:

cd /usr/tests; atf-run | atf-report

Troubleshooting

Latest sources

To fetch the main CVS repository:

cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P src

To work in the Git mirror, which is updated every few hours from CVS:

git clone https://github.com/NetBSD/src.git