Commit Graph

18 Commits

Author SHA1 Message Date
mrg 4a55b2ff97 exp() -> m4_exp(). 2006-05-11 01:22:20 +00:00
drochner a908ca7d51 merge in FreeBSD's rev.1.14:
Fix m4 to properly handle bitwise operators &, ^, and |. Fix operator
precedence. Add short-circuit evaluation.
2005-10-06 17:28:33 +00:00
jmc b2f782612f Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')

Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).

Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.

Fixes PR's: PR#17762 PR#25944
2004-06-20 22:20:14 +00:00
agc 89aaa1bb64 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
2003-08-07 11:13:06 +00:00
tv 76834aef57 Protect __RCSID and __COPYRIGHT from being invoked if not defined. 2002-01-31 19:36:47 +00:00
tv 279abfc5d2 Make compilable from src/tools/m4 on non-NetBSD hosts. 2002-01-21 21:49:57 +00:00
tv 4b087712af Pull in various changes from OpenBSD, most from Marc Espie, including:
* Provide some GNUisms as extensions.
* Provide dynamically growable string space.
* Make define(defn(foo)) work correctly for builtins.
(The current version is supposed to be capable of satisfying autoconf.)

All still relevant NetBSD changes have been preserved in this version, and
formatting and style fixes have been applied in various places.

Thanks to Masao Uebayashi <uebayasi@soum.co.jp> for pointing this out.
2001-11-14 06:16:07 +00:00
wiz 9d876c80cc Sprinkle some const, and rename a shadow-variable. 2001-03-05 20:26:17 +00:00
jdolecek deaf9ad4a4 Fix unconsistent spacing/tabs. Adresses bin/11158 by Nathan Ahlstrom. 2000-10-17 18:51:32 +00:00
matthias f251445b74 make eval() recognize hexadecimal constant as specified in the man page. 1999-04-14 09:38:37 +00:00
lukem 6f9ec05a98 WARNSify, fix .Nm usage, getopt returns -1 not EOF, deprecate register 1997-10-19 04:39:51 +00:00
tls 8ddb734554 Sync with 4.4BSD-Lite2 1995-09-28 05:37:28 +00:00
mycroft a5381ee7f4 There were several places where m4 did not conform to the specification
in `The M4 Macro Processor', by Kernighan and Ritchie.

* `|' and `||' are both logical or.  There is no binary or.
* `&' and `&&' are both logical and.  There is no binary and.
* `!' has a much higher precedence.
* The equal and relation operators have the same precedence.
* `**' is implemented, and `^' is for exponentation (not xor).
* Unary `+' in implemented.

I've coded exponentiation to return what appears to be the same results
that other versions of m4 return.
1995-04-14 23:10:25 +00:00
glass a7c89f0ff9 upgrade to 4.4-lite m4. no local changes of note 1994-06-19 03:58:22 +00:00
glass c33a954998 latest m4 from ozan. now does the right thing w/respect to sendmail 1993-10-30 00:28:42 +00:00
mycroft aee4b07b8a Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
1993-08-02 17:48:44 +00:00
glass 0d66213fcd baseline of new version of m4 supplied by Ozan Yigit, original author
of the broken m4 we had.  This is his stuff virgin + our Makefile.
1993-06-18 21:50:26 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00