Commit Graph

12954 Commits

Author SHA1 Message Date
mrg
99baa91ed3 if not playing (-q mode), don't call ioctl() or try to use the results.
now -q mode works.
2015-03-22 22:47:43 +00:00
plunky
e8fd30eb55 parse and print the HIDLANGIDBaseList attribute 2015-03-16 19:10:48 +00:00
christos
cefb10afe1 The latest refactoring changes broke sed -i:
cd /tmp; echo foo > test; sed -i.orig s,fo,ba, test
Back them out until they are fixed.
2015-03-12 12:40:41 +00:00
jnemeth
71db0be446 note birth and death of Douglas Adams 2015-03-11 17:35:16 +00:00
mlelstv
170fbd6544 Resolve names of datagram services correctly. 2015-03-08 06:46:51 +00:00
christos
b52075bfab add flag that let's you not wait for all the processes specified. 2015-03-04 16:36:12 +00:00
christos
ee9a5a1870 PR/49716: Henning Petersen: Use false and true on bool, fix sign in printf
formats.
2015-03-04 13:34:49 +00:00
christos
dacc247666 PR/49714: Henning Petersen: Change NULL in EV_SET to 0. 2015-03-04 13:31:53 +00:00
christos
1fddf0eec4 Add a timeout parameter. 2015-03-03 19:59:48 +00:00
christos
c7da06e6d1 there is no more makewhatis; it has been replaced by makemandb 2015-03-03 17:59:32 +00:00
christos
90298a02bf add pwait 2015-03-02 21:54:13 +00:00
christos
8fb724825c Add -s option, cleanup warnings. 2015-03-02 21:53:48 +00:00
christos
b957b96ffc Add pwait, from FreeBSD 2015-03-02 21:43:39 +00:00
enami
c1e351a1b2 Don't truncate at microseconds while preserving timestamps.
One of motivation of this change is to make the behavior of test(1)
-nt/ot with preserved copy (like cp -p) closer to the NetBSD 6.
Of course whether full timestamps are kept or not depends also on
underlying file system.

The ifdef added in mv(1) since existing ifdefs was our local change
to compile it on solaris (though I couldn't test it):
http://mail-index.netbsd.org/tech-userlevel/2014/11/28/msg008831.html
2015-03-02 03:17:24 +00:00
mrg
fe7264a410 be explicit about stdout mode. 2015-03-01 09:56:54 +00:00
asau
7004d56080 Hide more subroutines in processing phase. 2015-03-01 01:07:46 +00:00
asau
2390183275 Close files opened at processing time within processing phase. 2015-03-01 01:00:07 +00:00
asau
ee4b150430 Move run-time data structures into processing part. 2015-03-01 00:51:08 +00:00
asau
82be1f5db2 Move data I/O file pointers into processing part. 2015-03-01 00:38:01 +00:00
asau
1f228785da Improve modularity of "sed" source:
- move program source input subroutines into compiler part;
- move data I/O subroutines into processor part.
2015-02-28 21:56:53 +00:00
roy
81601736f6 Document RTF_LOCAL 2015-02-26 09:58:12 +00:00
christos
95f20280d9 Treat complex numbers like other floating numbers. This caused a core-dump
when linting libm complex code and assumed the size of the type larger than
the array size of value bitmaps.
2015-02-09 18:17:34 +00:00
christos
3934378a65 Allocate the right size for pcb blocks.
XXX: pullup-7!
2015-02-08 15:09:45 +00:00
christos
b0698f50d1 print the timer flags. 2015-02-07 19:36:06 +00:00
christos
58fd765e07 Add QXL, re-enable I915 2015-02-07 14:37:42 +00:00
martin
3af45c0517 Drop i915, it still causes duplicate case statements
(DRM_IOCTL_QXL_UPDATE_AREA == DRM_IOCTL_I915_BATCHBUFFER)
2015-02-07 11:24:55 +00:00
christos
e4344b2827 Extend the scripts to handle the X drm ioctls. 2015-02-06 20:08:23 +00:00
christos
3babb960e1 Extend the list of the headers processed to generate symbolic ioctls to
the X sets, and include the DRM ioctls. Unfortunately the DRM ioctls for
different cards overlap, so until I write some code to merge them, only
enable one (currently the i915).
2015-02-06 20:07:45 +00:00
christos
42e28dd7ad use strtoi instead of strtonum, since this is a tool. 2015-01-29 19:26:20 +00:00
christos
b3decb4766 latent strtonum removal. 2015-01-29 13:20:51 +00:00
christos
f47593bb0f use strtonum from libc (Kamil Rytarowski) 2015-01-29 03:28:19 +00:00
christos
fff8579aad delete extern 2015-01-29 03:27:06 +00:00
christos
93da4522d3 appease gcc-4.5.4 2015-01-22 20:01:22 +00:00
gson
7a9652e2cb Retry read() on EINTR. Fixes premature exit of
</dev/random progress -e cat >/dev/null
2015-01-17 10:57:51 +00:00
mrg
a1b1261ab6 do not use directory paths present in gzip files with the -N flag,
similar to the problem reported in pigz.
2015-01-13 02:37:20 +00:00
christos
eea786b46d Increase the buffer limit; otherwise files in:
http://www.taxdetective.ca/Samples/sampledatafiles.html

fail.
2015-01-12 14:17:08 +00:00
christos
e8283fa6b1 fix wordexp result handling 2015-01-10 17:16:01 +00:00
christos
ef0ab4422a fix incorrect arg size computation 2015-01-10 17:16:00 +00:00
prlw1
8707c3a333 Simplify code so that gcc 4.8 can understand it.
http://mail-index.netbsd.org/tech-userlevel/2015/01/06/msg008882.html
2015-01-09 12:45:32 +00:00
riastradh
3299a48014 Omit no longer existing l, m from default trace points. 2015-01-08 22:03:42 +00:00
christos
819d4545f4 Provide -C == -A + -B like fgrep, from Anon Ymous 2015-01-08 03:56:33 +00:00
christos
f8128537a0 adjust to the netname4 prototype. 2015-01-07 22:43:01 +00:00
pooka
0397f3a735 Move sysproxy support into a separate component, rumpkern_sysproxy,
instead of it being always provided by the rump kernel base.  This
move accomplishes two things:

1) it is no longer necessary to provide sysproxy hypercall stubs for
   platforms which do not want to use sysproxy
2) it is easier to reason about the security aspects, since configurations
   not linking the sysproxy component simply do not support remote
   system calls

discussed on rumpkernel-users
2015-01-07 22:24:03 +00:00
joerg
1382c4d712 Don't depend on yacc skeleton to include sys/cdefs.h early. 2015-01-04 18:31:09 +00:00
joerg
6e60cc85b0 Mark debug_log as printf-like. 2015-01-03 22:57:54 +00:00
christos
da9cda45ee don't shadow div(3) 2015-01-01 04:57:01 +00:00
mrg
4fe8b4e652 - this is midirecord(1) not midiorecord(1)
- add the -o handling to the getopt() and man page
- bump date
2014-12-30 18:52:47 +00:00
wiz
6fc026f9ce Sync usage with man page. 2014-12-30 12:14:34 +00:00
wiz
bd9cac43f4 Describe -T. Sync SYNOPSIS with options. Sort options.
Remove trailing whitespace. Use more markup.
2014-12-30 12:10:07 +00:00
mrg
34602bc4ec only prev_div needs to be static.
add channel to some log messages.
2014-12-30 06:08:14 +00:00
mrg
e2cc3fc481 install midirecord. 2014-12-30 04:22:18 +00:00
mrg
3f4db5ffea add a program to record midi files from /dev/music.
this doesn't process several potential result that netbsd does
not output on /dev/music, and should be largely complete for
our current sequencer(4).
2014-12-30 04:14:25 +00:00
mrg
9dd3b8ae69 add a decode_uint() function. 2014-12-30 01:22:09 +00:00
christos
ad7787327b And correct it. 2014-12-26 12:45:57 +00:00
christos
1a965b8777 Correct the provenance of finger.1 and show the link that it was part of
2BSD (from Marcin F. Michalski)
2014-12-26 03:49:00 +00:00
christos
f4b2cc8e89 Correct provenance of who(1) (from Marcin F. Michalski) 2014-12-26 01:43:58 +00:00
dennis
7ad3371ebc Update stats-keeping in sys/kern/vfs_cache.c to remove (most)
races while allowing consistent lockless sampling of the per-cpu
statistics without atomic operations.  Update comment describing
the locking protocol to include this.

These files were fumble-fingered out of the last commit.
2014-12-24 20:01:21 +00:00
dennis
61933bb52e Move enough additional 'w' code into 'uptime' to keep the latter
from double-counting utmp users.
2014-12-22 15:24:14 +00:00
christos
2a8765d5a2 Fix various security related issues:
0001. Do not recognize paths, mail folders, and pipes in mail addresses
    by default.  That avoids a direct command injection with syntactically
    valid email addresses starting with |.

    Such addresses can be specified both on the command line, the mail
    headers (with -t) or in address lines copied over from previous
    while replying.

    This was assigned CVE-2014-7844 for some versions of BSD mailx.  It is
    documented behavior for Heirloom mailx, and was mentioned in an old
    technical report about BSD mailx (which does not usually make its way
    into operating system installations).  The patch switches off this
    processing and updates the documentation.

Added expandaddr option to explicitly enable this behavior.

    0002. When invoking sendmail, prevent option processing for email
    address arguments.  This prevents changing e.g. the Postfix
    configuration file in unexpected ways.  This behavior was documented for
    BSD mailx (sort of), but not for Heirloom mailx.  We did not assign a
    CVE to this because it is more of a missing feature, and code invoking
    mailx needs adjustment in the caller as well.

Fixed.

    0003. Make wordexp support mandatory.  (No functional change.)

Fixed (replaced explicit shell pipe implementation).

    0004. Prevent command execution in the expand function, which is IMHO
    unexpected.  (Not really required with patch 1, and there is still
    information disclosure/DoS potential if this expansion occurs.)  This is
    a historic vulnerability already fixed in the Debian package,
    retroactively assigned CVE-2004-2771:

Fixed (as part of the pipe replacement with wordexp).
2014-12-16 19:30:24 +00:00
uebayasi
d8aa702d35 Revert debug code. Simplify. 2014-12-15 15:49:25 +00:00
uebayasi
fc1f7728b8 config(1): Fix build of old trees (bin/49389) (take 2)
Look into sys/conf/Makefile.kern.inc to check if "build_kernel" .USE target
is defined.  If not (== old source trees), generate one on the fly.
2014-12-15 15:41:18 +00:00
uebayasi
10b064f35c config(1): Fix build of old tree (bin/49389)
Define the default, empty "build_kernel" target, so that old source trees,
whose sys/conf/Makefile.kern.inc don't have "build_kernel" .USE target, can
be built.

(When "build_kernel" is defined, the target is overriden, as far as
sys/conf/Makefile.kern.inc is included later than the "netbsd: ..." definition
in sys/arch/*/conf/Makefile.*.)

This should address PR bin/49389.
2014-12-15 10:10:24 +00:00
mrg
4023260255 redo the previous; avoid a bunch of processing when running as "uptime",
and as a side effect, avoid any name lookups.
2014-12-03 06:12:19 +00:00
christos
3f1eb4e425 if doing uptime, don't bother resolving names. 2014-12-02 22:19:19 +00:00
christos
938d39fd7f PR/49422: Ryo ONODERA: patch(1) cannot handle context diffs 2014-11-27 15:07:23 +00:00
enami
11fe7239df Changes done in rsh.c rev. 1.36 was incomplete. As chuq pointed
in private mail, it broke rcp(1).

To achieve the documented behavior and to fix long standing incorrect
rsh(1) behavior which I've tried to fix in rev. 1.36, rcmd(1) should have
two operation mode; whether it should relay signal information on
auxiliary channel or not, depending on the argument `fd2p' passed to rcmd(3).
So, make rcmd(1) behave differntly depending on the environment variable and
set it when necessary in rcmd(3) according to how auxiliary channel
is set up by rcmd(3).
2014-11-26 23:44:21 +00:00
christos
59de200486 Avoid coredumps when the linenumbers in the hunks turn negative.
From: http://marc.info/?l=openbsd-tech&m=141693055412785

XXX: pullup 7
2014-11-26 00:31:32 +00:00
christos
c8da6eb49b Use proper index types, delete casts, use correct sizeof() in allocations. 2014-11-21 20:46:56 +00:00
christos
bf68803d37 allow c99 flexible arrays for packed structures. 2014-11-20 21:17:18 +00:00
christos
caa0961bff Always set i_brace in the struct case.
Cleanup some debugging.
2014-11-20 20:49:06 +00:00
christos
a6210a763e add LDEBUG 2014-11-20 20:48:33 +00:00
riastradh
9783666546 Fix vndcompress restart failure fallback when input is a pipe.
Defer seeking the *input* image, or winding it forward, until we are
certain we all ready in the cloop2 output, because when the input
image is a pipe, we don't get a chance to seek back to the beginning
and start from the top instead of restarting.

If restart does fail, don't try to seek the input image back to the
beginning unless we had already tried to seek or wind it forward.

Add some automatic tests for this and related cases.

XXX pullup to netbsd-7, netbsd-6
2014-11-18 03:48:17 +00:00
uebayasi
57751c8485 Pre-calc file path len/suffix. Misc. clean up. 2014-11-17 00:53:15 +00:00
uebayasi
9eb1865390 Fix oops in r1.30. 2014-11-16 15:10:54 +00:00
uebayasi
d2824e0952 Simpfily code by assuming suffix is a single character. 2014-11-16 14:57:59 +00:00
uebayasi
8a0d672c53 Refactor. 2014-11-16 14:49:12 +00:00
uebayasi
20fd8a9d0f Consistently wrap long lines in ioconf.c. 2014-11-16 14:26:14 +00:00
uebayasi
73810e5d00 config(1): TODO about namespace (esp. options vs. module) 2014-11-16 07:12:34 +00:00
uebayasi
79fcd6c2d2 config(1): TODO item about swapnetbsd.c 2014-11-16 04:28:09 +00:00
uebayasi
dfd51da465 config(1): Avoid buffer overrun (modular build) 2014-11-15 12:18:55 +00:00
uebayasi
70dd8e7d2a config(1): Sort objects by weight in modular build
Sort per-module kernel objects (*.ko) by dependency weight.  Important modules
are placed in lower addresses.  The ``machdep'' module will be always placed
in the lowest.

(At this moment, the order is not exact because dependency information is
incomplete in config files (files.*).  Thus ``sysmon_power.ko'' comes lower
than ``machdep.ko'' and/or ``uvm.ko''; but still much better than alphabetical
sort.)
2014-11-15 08:21:38 +00:00
uebayasi
2f06dcafd4 Revise a plan about link-set.
(I was ignorant 2 weeks ago.)
2014-11-13 15:25:48 +00:00
aymeric
072d5fd039 Remove the syslogging of a dial out login warning based on the tty name, because
the test is sloppy and doesn't correspond to the current naming anyway.
OK gdt@
PR#377 can remain closed.
2014-11-12 22:23:38 +00:00
christos
df51b41a7f PR/47704: Takahiro HAYASHI: Fix -L flag 2014-11-12 03:34:59 +00:00
christos
b552d112cd merge a bit of duplicated code. 2014-11-10 21:13:04 +00:00
snj
8aed8f1ac1 minor wording nits and a typo fix 2014-11-10 07:33:31 +00:00
uebayasi
28fcb3ecde config(1): Note a little more about linkage 2014-11-08 05:57:41 +00:00
christos
727f236228 - simplify string parsing
- emalloc + sprintf = easprintf
2014-11-07 17:50:14 +00:00
uebayasi
701e371cb2 config(1): TODO about kernel linkage 2014-11-07 16:41:17 +00:00
christos
e2c137d286 fix A,v,T with route display. 2014-11-07 12:42:27 +00:00
christos
34cb342199 use the common code from route.c 2014-11-06 21:30:09 +00:00
uebayasi
7710d317bc config(1): Rename internal flag to enable modular build 2014-11-06 11:40:32 +00:00
sjg
a75f41b571 Ensure -- filemon is at start of line 2014-11-06 01:36:57 +00:00
joerg
4e288682c2 nv_num is not a dev_t, so add explicit cast for the sake of
-Wconversion.
2014-11-04 23:02:14 +00:00
joerg
fdcb5b3398 makedev returns ~uint64_t, but val is int64_t. Cast for -Wconversion. 2014-11-04 23:01:23 +00:00
joerg
e7051a1953 To make -Wconversion happy, cast return value of tolower/toupper to
char.
2014-11-04 23:00:35 +00:00
pooka
23dfcd7408 Use autoconf for rump kernel posix hypercall layer.
This gets rid of homegrown hacks and puts all probes in one place.

Tested for NetBSD (build.sh + anita) and Linux (buildrump.sh)
2014-11-04 19:05:17 +00:00
uebayasi
e8a6d4b70c config(1): Start calling module as module 2014-11-01 14:24:45 +00:00
uebayasi
6c852b2895 config(1): More TODO description. 2014-11-01 14:15:31 +00:00
uebayasi
fe2a50734b config(1): Don't emit unused empty loc[] 2014-11-01 11:02:41 +00:00
uebayasi
c62ce2631a config(1): One more TODO about retiring direct attachment 2014-11-01 08:13:11 +00:00
uebayasi
6c283bdad1 config(1): Emit pdevinit[] into .rodata 2014-11-01 07:26:11 +00:00
uebayasi
def3cecb48 config(1): Set NULL to unused cfdata::cf_loc 2014-11-01 06:20:24 +00:00
uebayasi
e1a6328057 config(1): KNF 2014-11-01 04:34:27 +00:00
uebayasi
304be40991 config(1): Better indent of cfdata in ioconf.c 2014-10-31 18:26:06 +00:00
uebayasi
084f527f2d config(1): KNF generated ioconf.c 2014-10-31 17:58:02 +00:00
uebayasi
374e86cbe4 config(1): Emit only referenced interface attributes in ioconf.c 2014-10-31 17:43:55 +00:00
uebayasi
c42523f496 config(1), config(5): Introduce "select"
o Introduce a new selection directive "select" to select an attribute (as a
  module) and its dependencies.
o Support "no select" too.
o Stop abusing "options" to select an attribute.
o Bump config(1) version.
2014-10-31 07:38:36 +00:00
lukem
b315b2bb36 Version 20141026
Ignore special characters unless they're from the command line.
Fixes CVE-2014-8517
2014-10-31 03:27:18 +00:00
wiz
75f5ef0d24 Spelling fixes. 2014-10-30 23:18:02 +00:00
christos
b89e3b087d remove overflow test that triggered for negative values; we only care
about the hash here.
2014-10-30 15:13:11 +00:00
uebayasi
bd3d598f54 config(1): More TODO 2014-10-30 08:20:15 +00:00
dholland
e26b626982 Drop setuid before execing rlogin. Failure to do so should be
harmless, but is sloppy.
2014-10-30 06:13:50 +00:00
christos
5dcabc490b print more info about the overflow 2014-10-30 01:36:13 +00:00
uebayasi
c5c18c905b config(1): More TODO items 2014-10-30 01:26:20 +00:00
christos
584127132b put back scanner warnings now that flex produces clean code. 2014-10-29 19:10:49 +00:00
christos
1ed33bc5b9 cast to signed, since that's all we have. 2014-10-29 19:10:18 +00:00
uebayasi
5a220e24e9 Fix build. 2014-10-29 18:09:35 +00:00
christos
d12b0036c5 - add RCSID's
- fix -Wconversion (except scanner)
2014-10-29 17:14:50 +00:00
christos
d138fe3e34 don't pay attention to special characters if they don't come from the command
line (from jmcneill)
2014-10-26 16:21:59 +00:00
sjg
0b32bec31a Use read and fwrite rather than fgets and printf when reading filemon data. 2014-10-20 23:22:57 +00:00
sjg
18f74f9db1 Extract broken tests 2014-10-20 23:21:11 +00:00
christos
0fef28f060 PR/49291: Henning Petersen: Problem with half-line feeds in input stream. 2014-10-18 14:56:14 +00:00
snj
f0a7346d21 src is too big these days to tolerate superfluous apostrophes. It's
"its", people!
2014-10-18 08:33:23 +00:00
uebayasi
023c161bb6 Keep track of attribute (module) dependency using hash2. 2014-10-18 06:36:40 +00:00
uebayasi
1af1e581aa Revert implicit attribute (module) declaration for options (flag/param).
Flag and param are to change contents of attributes (modules).  These don't
have code (*.[coS]).

Filesystem definition still defines an attribute (module) implicitly.
2014-10-14 08:00:27 +00:00
apb
e010c72036 Allow easier adding/removing of options without regard to
whether or not they were already defined.
2014-10-12 15:54:19 +00:00
uebayasi
6e01290960 Don't shadow global 'devname' on macppc. 2014-10-12 15:35:40 +00:00
wiz
891aaa4d83 Spelling. 2014-10-12 08:04:30 +00:00
uebayasi
ab6c1d8a5a Fix typos in previous. 2014-10-12 05:25:21 +00:00
uebayasi
a38ec9b5de Make hash capable of taking two key strings. 2014-10-12 05:20:54 +00:00
uebayasi
0819fb14f9 More TODOs. 2014-10-12 04:23:46 +00:00
martin
db3a752aed Remove a set but not used variable 2014-10-11 17:27:42 +00:00
uebayasi
6d52c530bb More debug messages. 2014-10-11 15:47:38 +00:00
uebayasi
77259bf204 On second thought, resolving "device" dependency in enddefs() is correct.
The problem was to select things.  So put back the code to record dependency
as attributes.

While here, sprinkle more debug messages.
2014-10-11 15:20:36 +00:00
uebayasi
d1bb5c1f69 Don't conplain devclass redifition to the same value; it can happen while
resolving dependency.
2014-10-11 09:27:51 +00:00
wiz
9ff8e27788 Give flag argument in description. Add two articles. 2014-10-11 09:23:32 +00:00
uebayasi
0e6a39b020 After yyparse() is done, print not file but stage for debug. 2014-10-11 09:09:19 +00:00
uebayasi
984251350e Redo "device" dependency. It was completely wrong to select things just
after definitions at enddefs().  Resolve dependency in selectbase().
2014-10-11 09:06:29 +00:00
enami
2858bdfe72 - Explicitly describe that kvm(3) is used when -M/-N option is used since
nowadays sysctl(3) is the default information retrieval method.
- Fix description about default value for -N; it is no longer a single value
  these days, so just say see kvm_openfiles(3) rahter than repeating
  several lines description here.
2014-10-11 06:25:32 +00:00
uebayasi
1140e58262 Pass stricter build. 2014-10-11 06:18:29 +00:00
uebayasi
84fb961fd3 Resolve "device" definition dependency lazily. 2014-10-11 06:07:20 +00:00
uebayasi
93405beec9 Enable debug for tools. 2014-10-11 03:17:40 +00:00
uebayasi
bb4851f85c Remove an unsed var. 2014-10-10 16:17:27 +00:00
uebayasi
9a2063bca6 Revert a mistakenly added, superflous attribute match test that caused some
valid options to get lost.
2014-10-10 15:35:08 +00:00
uebayasi
92b86764e1 Bump config(1) version.
config(1) still keeps backward-compatibility; it is more permissive than
before.  The tree, however, needs the updated config(1), mainly to strictly
define attribute ("module") ownership and dependencies.
2014-10-10 12:10:02 +00:00
wiz
c8fb5a2e0f Fix two typos. 2014-10-10 11:58:59 +00:00
uebayasi
b0d108d368 Document -M. 2014-10-10 11:49:15 +00:00
uebayasi
eac891b935 Put TODO ideas (to keep your fun). 2014-10-10 11:38:42 +00:00
uebayasi
d23bf64337 Allow dependency on undefined attributes, so that attribute definitions can
be written out-of-order, like:

	# b is not defined yet
	define	a: b
	file	a.c	a

	# b is defined here
	define	b
	fine	b.c
2014-10-10 11:09:50 +00:00
uebayasi
680ed4abc8 Select attributes for filesystem options too. 2014-10-10 10:46:05 +00:00
uebayasi
861847ab35 If an option is selected, select the matching (lowercased) attribute. Handle
dependencies too.
2014-10-10 10:22:49 +00:00
uebayasi
7a01ec4b08 If an attribute is selected, select its dependencies too. 2014-10-10 10:16:19 +00:00
uebayasi
c24abed7e6 Implicitly define attribute for device. 2014-10-10 08:14:47 +00:00
uebayasi
6903e7639b Implicitly define attribute for options. 2014-10-10 07:48:50 +00:00
uebayasi
d88f6cad14 Implicitly define attribute for filesystem. 2014-10-10 07:08:26 +00:00
uebayasi
82e22e6766 Implicitly define empty "attribute" for "device attachment". Much less
troublesome than "device" and "interface attribute".
2014-10-10 06:59:38 +00:00
uebayasi
bd3d511493 Split plain/interface/devclass attribute initializers. 2014-10-10 06:13:30 +00:00
uebayasi
b4d3dfc64a Refactor attr definition and initialization a little. 2014-10-10 05:27:28 +00:00
enami
7bed5ae0f8 As described in kvm_openfiles(3), default core file is not /dev/kmem
but /dev/mem.  Actually, passing /dev/kmem to -M doesn't work.
2014-10-09 23:52:47 +00:00
enami
e36fe94f89 Fix a bug introduced in rev. 1.62; it fails to negate (a && b). 2014-10-09 23:45:47 +00:00
uebayasi
1c89d26524 Style. 2014-10-09 19:33:43 +00:00
uebayasi
b35679c08e FIT_FORCESELECT is never set anywhere. 2014-10-09 19:27:04 +00:00
uebayasi
9a04781594 FIT_NOPROLOGUE is never set anywhere. 2014-10-09 19:24:36 +00:00
uebayasi
eb981efe66 Kill more unused indent code in emitfiles(). 2014-10-09 19:22:31 +00:00
uebayasi
7603d666f0 Steal -M to enable "modular" build. 2014-10-09 19:20:56 +00:00
uebayasi
aeeeb994e8 Print one file per line. Simplify code. 2014-10-09 17:36:10 +00:00
uebayasi
745a9de44a Correct inverted logic. 2014-10-09 17:22:55 +00:00
uebayasi
ae77717cc7 Implement code to generate Makefile to build netbsd via intermediate relocatable
object files.  Disabled for now.  Commit this for further experiments.

Kernel (netbsd) has been built as:

	netbsd: *.o
		ld -o netbsd *.o

Change this to:

	netbsd: *.ko
		ld -o netbsd *.ko
	acpica.ko: ${OBJS.acpica}
		ld -r acpica.ko ${OBJS.acpica}
	:

You can call *.ko as a module, but this is not only beneficial for loadable
module, but also localize related text/data.  Various options/flags/params
will be able to be per-ko.  Unnecessary symbols can be hidden.  Many ideas
will follow.
2014-10-09 17:00:15 +00:00
uebayasi
3586467df2 Always select the fallback allattr. 2014-10-09 16:08:36 +00:00
uebayasi
adf6a4556b Define an implicit attribute "netbsd" internally to collect files that don't
belong to any specific attribute.

Eventually, all operations doing "foreach (files)" can be rewritten as "foreach
(attributes) foreach (files)".
2014-10-09 15:25:26 +00:00
uebayasi
fa3d850434 If a file is marked by an atom expression, like "file a.c foo", and if the
specified expression is an attribute, mark the file as belonging to the
attribute.

At this moment this information is not used for any purpose, but can be
traced by config -ddd.
2014-10-09 10:29:36 +00:00
uebayasi
567430ccec Sort definition/selection rules to clarify which is which. 2014-10-09 09:39:24 +00:00
martin
012985802d Provide a CFGDBG version for the tools build. 2014-10-09 07:43:55 +00:00
uebayasi
fc2a41ac40 The word "configuration" is too ambiguous; use "selection" meaning that
user selects some of provided "definitions".
2014-10-09 07:05:01 +00:00
uebayasi
2820acceff Debug print where things are selected (by user). 2014-10-09 06:49:53 +00:00
uebayasi
99af41ba8d Add debug print function. 2014-10-09 06:45:31 +00:00
christos
dbe2f0f9f0 put back ua will fix differently. 2014-10-01 23:41:41 +00:00
christos
d2ae978666 Define some of the missing macros. The only error now is:
213: warning: can't find font `C'

Because the CW macro wants to use a constant width font is "ascii" mode,
and this does not exist with -Tascii. I don't think this should be fixed
here...
2014-09-30 21:33:14 +00:00
christos
24c423bbde There is no \(ua in roff, you really mean \(ha (Circumflex-Accent) aka ^ 2014-09-30 20:54:11 +00:00
wiz
0c19eea1b0 Use An in AUTHORS section. 2014-09-30 10:30:35 +00:00
msaitoh
4dc6aff1b8 Bump date. 2014-09-30 10:23:16 +00:00
msaitoh
1d272d4ec2 Support arm64, i386 and or1k. 2014-09-30 10:21:50 +00:00
christos
6d997ca05e oops I terminated the block too early (thanks unit tests!) 2014-09-26 15:26:01 +00:00
wiz
4bbe72809e Sort options in SYNOPSIS/usage. 2014-09-26 02:20:39 +00:00
christos
e36fdb7ec1 add VIS_META/VIS_SHELL support to encode all shell metacharacters.
XXX: /etc/rc.d/wizd fix $
2014-09-26 01:21:07 +00:00
christos
b6701ee132 make for introduce a new block level for c99 decls. 2014-09-26 01:20:00 +00:00
matt
6cf6fe02a9 New files for Userland support of UCB RISC-V (both 32-bit and 64-bit) 2014-09-19 17:36:24 +00:00
wiz
2a65137f55 Sort sections. From Henning Petersen in PR 49222. 2014-09-19 16:02:58 +00:00
dholland
9e4a361214 Comments, and one very minor tidyup. 2014-09-18 08:06:13 +00:00
apb
19f37cd621 Small markup fixes:
* Use \e instead of \\ to represent a backslash;
* Dont' start a line with .SUFFIXES.
2014-09-14 08:47:19 +00:00
dholland
985229f07f bump date; I think I'm done for tonight 2014-09-14 04:32:42 +00:00
dholland
cf64c76e74 Add some notes on compatibility with other make dialects.
I was originally intending to preserve some of Jarmo Jaakkola's notes
on POSIX make from the PR 49085 changes... but really there's no point
wandering into details about $? and such when the big picture is
"almost everything in this manual works only in BSD make".

Maybe the exact details can be stuffed into a chapter of the mythical
make reference manual if that ever gets (re)written.
2014-09-14 04:32:07 +00:00
dholland
d8e17b53b4 Improve the documentation of rule-local variables. Cherry-picked from
the PR 49085 changes, with some adjustments by me.
2014-09-14 03:50:28 +00:00
dholland
7837a7ce15 Improvements pertaining to shell commands and chdir. Some of this
appeared in the PR 49085 changes, even though it's not actually
relevant there except tangentially. However, I've reworked most of
that for clarity and added some more.
2014-09-14 03:13:49 +00:00
dholland
d2a37b0d8b Fix handling of the silly $(@D) $(@F) etc. vars so modifiers on them
work. This is issue #1 in PR 49085 from Jarmo Jaakkola, but I've used
a different and cleaner patch this time.
2014-09-14 02:32:51 +00:00
dholland
58de96de3f Recognize the crazy POSIXisms $(?D) and $(?F); issue 2 in PR 49085
from Jarmo Jaakkola.
2014-09-13 23:21:01 +00:00
dholland
d32cd0af74 typo in comment, from the first reverted patch 2014-09-13 23:10:28 +00:00
skrll
f6dcbec3a9 Trailing whitespace. 2014-09-12 16:25:55 +00:00
skrll
e52f4ab9a5 Print the cpu in the kernhist record. 2014-09-12 16:25:29 +00:00
wiz
3ca7a10cff Use false/true on boolean, not increment.
From Henning Petersen in PR 49194.
2014-09-11 08:22:03 +00:00
apb
73b33010e7 Add a test for backslash-newline at the very end of a command script. 2014-09-09 10:22:27 +00:00
apb
14a634bc53 Change @echo to echo in several places in escape.mk,
to make it easier to spot changes in what make sends to the shell.
Adjust escape.out to match.
2014-09-09 10:11:20 +00:00
dholland
012b391598 Restore -r1.234 of make.1, which was an unrelated fix from sjg pertaining
to the docs for the -w option.
2014-09-09 06:41:56 +00:00
dholland
718f11413b Revert the man page as well. (hi joerg)
Revert it to 20140823 (-r1.230), before the controversial commits,
which changed it a good deal.
2014-09-09 06:39:59 +00:00
dholland
3728c0fad2 Restore apb's 20140820 commit (-r1.228 of main.c):
It should not be an error to have VAR != command that prints no output

Joerg reverted a bit too enthusiastically.
2014-09-09 06:18:17 +00:00
joerg
d92bea4fa3 Revert all make changes except the unit tests to the state of three
weeks ago. Individual changes can be reapplied after review.
2014-09-07 20:55:34 +00:00
wiz
51b005985e Sort sections. Remove trailing whitespace. 2014-09-06 21:21:36 +00:00
dholland
5136cf6d6b Clarify the usage message. For PR 49177. 2014-09-06 18:58:35 +00:00
dholland
5aa87af538 On reflection change "outputname" to "headername" so it's clear it's not
the output of uuencode.
2014-09-06 18:58:05 +00:00
dholland
d1f9310d50 Clarify and generally improve. The expansion of files is not a bug,
it's a consequence of what uuencode does. Also note for a more hostile
internet environment that blindly uudecoding files without inspecting
the header is dangerous.

Pursuant to PR 49177.
2014-09-06 18:54:46 +00:00
dholland
fb7387f1d1 Fix wrong use of argument identifiers; pursuant to PR 49177. 2014-09-06 18:37:01 +00:00
wiz
875700f431 Reduce pirate slang. 2014-09-05 06:57:20 +00:00
christos
1639e1cf8d document commented out .INVISIBLE and .JOIN. 2014-09-04 19:07:47 +00:00
mrg
a1ff035944 port the -ut / -nut options from freebsd. -ut (default) enables tabs
in output, the -nut uses spaces.
2014-09-04 04:06:07 +00:00
matt
27620987b8 New files for OR1K support 2014-09-03 19:34:25 +00:00
wiz
c11d7d47ce New sentence, new line. 2014-08-31 07:23:53 +00:00
christos
94162e221a PR/49134: Kamil Rytarowski: Add -q flag. 2014-08-31 07:05:33 +00:00
sjg
82b1920e05 Replace use of $() with ${}
$() means something special to the shell, so ${} reduces confusion
and is used almost exclusively in the rest of the makefiles.

Discussed with: christos
2014-08-30 22:21:07 +00:00
sjg
294be283d0 *.rawout are out-of-date if ${TEST_MAKE} is newer. 2014-08-29 20:03:27 +00:00
sjg
75abee676e posix1.mk and suffixes.mk need to cleanup in order to achieve
repeatable results.
posix1.mk's lib.a target still looks dubious.
2014-08-29 15:55:44 +00:00
christos
aeacc22675 undo eating the trailing backslash now that the shell has been fixed. 2014-08-29 09:27:43 +00:00
sjg
a1caebb65d Enter/leave flag is -w not -dw 2014-08-28 19:55:00 +00:00
christos
98e4fd4ef7 don't leave trailing backlashes on commands, just like gmake does. What does
POSIX have to say?
2014-08-28 14:39:13 +00:00
joerg
9d3b3e9cc5 Fix ldd on LP64 platforms by splitting the symbol versioning stuff for
elf64 as well.
2014-08-28 12:23:29 +00:00
christos
f50c40cd6c Make .INVISIBLE nodes be ignored by suffix transformations. 2014-08-27 08:50:38 +00:00
joerg
aa44bc3b18 Bump CONFIG_VERSION. 2014-08-24 20:22:18 +00:00
apb
089825332f Let "make clean" delete the files and dirs created by some of the tests. 2014-08-24 17:17:24 +00:00
apb
71a54383f7 In either a variable assignmentor a command, backslash-backslash-newline
does not escape the newline.  This is compatible with gmake.
2014-08-24 16:47:12 +00:00
apb
b4e732f551 Our practice is that an even number of backslashes before a newline
in a variable assignment simply stores the backslashes as part of the
value, and treats the newline as though it was not escaped.  This
is compatible with GNU make.
2014-08-24 16:08:14 +00:00
apb
175bed92d9 Our practice, despite what POSIX might say, is that "\#"
in a variable assignment stores "#" as part of the value.
The "\" is not taken literally, and the "#" does not begin a comment.
2014-08-24 15:10:13 +00:00
apb
c80311840b Convert the variable printing tests to use .USE rules,
to ensure that the value printed always comes from the expected variable.
2014-08-24 14:38:38 +00:00
apb
ae2e300da1 Adjust tests to correct for the fact that end-of-line comments
in variable assignments should not be included in the value.

Also fix more typos.
2014-08-24 14:04:35 +00:00
apb
c761b26f2c Fix more typos in variable names. 2014-08-24 13:11:49 +00:00
apb
e989f440f6 Fix typos in variable names, and in a comment. 2014-08-24 13:07:25 +00:00
apb
b3edfc2816 Add tests for backslash escaping in make(1).
Many of these tests fail, and I have populated the escape.exp file with
the results that I expect, not with the results that make(1) actually
produces.

Also update the set lists for these tests.
2014-08-24 11:52:45 +00:00
christos
69f7fee3bd fix output based on new sources 2014-08-23 16:08:42 +00:00
christos
6076cfd13e Instead of adding the test in 48095 I added the tests in 48096. Add the
missing test now.
2014-08-23 15:21:35 +00:00
christos
defa6c58f6 PR/46096: Jarmo Jaakkola: fix many problems with dependencies (PR 49086)
Quite extensive rewrite of the Suff module.  Some ripple effects into
Parse and Targ modules too.

Dependency searches in general were made to honor explicit rules so
implicit and explicit sources are no longer applied on targets that
do not invoke a transformation rule.

Archive member dependency search was rewritten.  Explicit rules now
work properly and $(.TARGET) is set correctly.  POSIX semantics for
lib(member.o) and .s1.a rules are supported.

.SUFFIXES list maintenance was rewritten so that scanning of existing
rules works when suffixes are added and that clearing the suffix list
removes single suffix rules too.  Transformation rule nodes are now
mixed with regular nodes so they are available as regular targets too
if needed (especially after the known suffixes are cleared).

The .NULL target was documented in the manual page, especially to
warn against using it when a single suffix rule would work.
A deprecation warning was also added to the manual and make also
warns the user if it encounters .NULL.

Search for suffix rules no longer allows the explicit dependencies
to override the selected transformation rule.  A check is made in
the search that the transformation that would be tried does not
already exist in the chain.  This prevents getting stuck in an infinite
loop under specific circumstances.  Local variables are now set
before node's children are expanded so dynamic sources work in
multi-stage transformations.  Make_HandleUse() no longer expands
the added children for transformation nodes, preventing triple
expansion and allowing the Suff module to properly postpone their
expansion until proper values are set for the local variables.

Directory prefix is no longer removed from $(.PREFIX) if the target
is found via directory search.

The last rule defined is now used instead of the first one (POSIX
requirement) in case a rule is defined multiple times.  Everything
defined in the first instance is undone, but things added "globally"
are honored.  To implement this, each node tracks attribute bits
which have been set by special targets (global) instead of special
sources (local).  They also track dependencies that were added by
a rule with commands (local) instead of rule with no commands (global).

New attribute, OP_FROM_SYS_MK is introduced.  It is set on all targets
found in system makefiles so that they are not eligible to become
the main target.  We cannot just set OP_NOTMAIN because it is one of
the attributes inherited from transformation and .USE rules and would
make any eligible target that uses a built-in inference rule ineligible.

The $(.IMPSRC) local variable now works like in gmake: it is set to
the first prerequisite for explicit rules.  For implicit rules it
is still the implied source.

The manual page is improved regarding the fixed features.  Test cases
for the fixed problems are added.

Other improvements in the Suff module include:
  - better debug messages for transformation rule search (length of
    the chain is now visualized by indentation)
  - Suff structures are created, destroyed and moved around by a set
    of maintenance functions so their reference counts are easier
    to track (this also gets rid of a lot of code duplication)
  - some unreasonably long functions were split into smaller ones
  - many local variables had their names changed to describe their
    purpose instead of their type
2014-08-23 15:05:40 +00:00
wiz
ecd932c9a3 Bump date for previous. 2014-08-23 15:03:22 +00:00
christos
be99220c64 Convert test in PR/49085 2014-08-23 15:02:04 +00:00
christos
4da7383dde PR/49085: Jarmo Jaakkola: fix several parsing errors
Don't exit from var.c:Var_Parse() before possible modifiers are handled
on D and F modified versions of local variables.  Properly expand $(?D)
and $(?F) too.

Make line continuations in rule's commands POSIX compliant.

Fix the syntax error caused by lib(member) as the last target before
a dependency operator.

Document the line continuation change in the manual page.  Also talk
more about the POSIX style local variables and their modifiers.

Add tests covering the fixed problems into d_posix.mk.  The test is
a known failure at the moment because of PR 49086 and PR 49092.

[XXX: unconverted tests]
2014-08-23 14:50:24 +00:00
apb
ee8e02daed Add a .PATH, so you can be in any other directory and run
"make -f /path/to/this/Makefile sometest.out"
and have it create sometest.out in your current directory.
2014-08-21 22:00:30 +00:00
apb
c354f55834 Add varmisc.mk, for miscellaneous variable tests.
For now, the only test is copied from
src/tests/usr.bin/make/d_unmatchedvarparen.mk.  This was
the only test in src/tests/usr.bin/make that was not also in
src/usr.bin/make/unit-tests.

XXX: src/tests/usr.bin/mk should be changed to reach over to
src/usr.bin/make/unit-tests, instead of keeping out of date copies
of the tests.
2014-08-21 15:37:13 +00:00
apb
b9dad2e00f Give each group of tests its own output file.
* Rename each sub-makefile to *.mk;
* Add a *.exp file of expected output for each sub-makefile;
* Remove test.exp, which is replaced by all the other *.exp files.
* Use suffix rules to generate *.rawout and *.out files for
  each test case.
* Rewrite the test and accept targets to adapt to the new way.

The old (now removed) test.exp file is almost identical to the
concatenation (in the correct order) of all the new *.exp files.  There
are expected differences in makefile names embedded in the output, and
the new "exit status" lines.  Some old "*** Error code 1 (ignored)"
lines are also removed (replaced by new "exit status 1" lines).
2014-08-21 13:44:51 +00:00
apb
8189a8d901 Stricter sed expression for matching an optional PID in square brackets. 2014-08-21 13:31:52 +00:00
apb
ff90baf509 When sanitising test output, replace "${TEST_MAKE}" with "make".
This string may appear in error messages that end up in the output.
2014-08-21 12:42:03 +00:00
apb
9dba8e3973 Add tests for VAR != command. 2014-08-20 08:39:14 +00:00
apb
21c7c4bccf It should not be an error to have VAR != command that prints no output 2014-08-20 08:37:25 +00:00
pooka
65016d742c Might as well byteswap when we assign to local variables instead of when
we use said variables.
2014-08-18 14:40:17 +00:00