Index: head/gnu/usr.bin/Makefile =================================================================== --- head/gnu/usr.bin/Makefile (revision 211700) +++ head/gnu/usr.bin/Makefile (revision 211701) @@ -1,63 +1,63 @@ # $FreeBSD$ .include SUBDIR= ${_binutils} \ ${_cc} \ ${_cvs} \ dialog \ diff \ diff3 \ ${_dtc} \ ${_gdb} \ ${_gperf} \ ${_grep} \ ${_groff} \ ${_man} \ patch \ ${_rcs} \ sdiff \ send-pr \ sort \ ${_texinfo} .if ${MK_CXX} != "no" _gperf= gperf .if ${MK_GROFF} != "no" _groff= groff .endif .endif +.if ${MK_BSD_GREP} != "yes" +_grep= grep +.endif + .if ${MK_CVS} != "no" _cvs= cvs .endif .if ${MK_FDT} != "no" _dtc= dtc -.endif - -.if ${MK_GNU_GREP} != "no" -_grep= grep .endif .if ${MK_INFO} != "no" _texinfo= texinfo .endif .if ${MK_MAN_UTILS} != "no" _man= man .endif .if ${MK_RCS} != "no" _rcs= rcs .endif .if ${MK_TOOLCHAIN} != "no" _binutils= binutils _cc= cc .if ${MK_GDB} != "no" _gdb= gdb .endif .endif .include Index: head/share/mk/bsd.own.mk =================================================================== --- head/share/mk/bsd.own.mk (revision 211700) +++ head/share/mk/bsd.own.mk (revision 211701) @@ -1,562 +1,562 @@ # $FreeBSD$ # # The include file set common variables for owner, # group, mode, and directories. Defaults are in brackets. # # # +++ variables +++ # # DESTDIR Change the tree where the file gets installed. [not set] # # DISTDIR Change the tree where the file for a distribution # gets installed (see /usr/src/release/Makefile). [not set] # # COMPRESS_CMD Program to compress documents. # Output is to stdout. [gzip -cn] # # COMPRESS_EXT File name extension of ${COMPRESS_CMD} command. [.gz] # # BINOWN Binary owner. [root] # # BINGRP Binary group. [wheel] # # BINMODE Binary mode. [555] # # NOBINMODE Mode for non-executable files. [444] # # LIBDIR Base path for libraries. [/usr/lib] # # LIBCOMPATDIR Base path for compat libraries. [/usr/lib/compat] # # LIBDATADIR Base path for misc. utility data files. [/usr/libdata] # # LINTLIBDIR Base path for lint libraries. [/usr/libdata/lint] # # SHLIBDIR Base path for shared libraries. [${LIBDIR}] # # LIBOWN Library owner. [${BINOWN}] # # LIBGRP Library group. [${BINGRP}] # # LIBMODE Library mode. [${NOBINMODE}] # # # KMODDIR Base path for loadable kernel modules # (see kld(4)). [/boot/kernel] # # KMODOWN Kernel and KLD owner. [${BINOWN}] # # KMODGRP Kernel and KLD group. [${BINGRP}] # # KMODMODE KLD mode. [${BINMODE}] # # # SHAREDIR Base path for architecture-independent ascii # text files. [/usr/share] # # SHAREOWN ASCII text file owner. [root] # # SHAREGRP ASCII text file group. [wheel] # # SHAREMODE ASCII text file mode. [${NOBINMODE}] # # # DOCDIR Base path for system documentation (e.g. PSD, USD, # handbook, FAQ etc.). [${SHAREDIR}/doc] # # DOCOWN Documentation owner. [${SHAREOWN}] # # DOCGRP Documentation group. [${SHAREGRP}] # # DOCMODE Documentation mode. [${NOBINMODE}] # # # INFODIR Base path for GNU's hypertext system # called Info (see info(1)). [${SHAREDIR}/info] # # INFOOWN Info owner. [${SHAREOWN}] # # INFOGRP Info group. [${SHAREGRP}] # # INFOMODE Info mode. [${NOBINMODE}] # # # MANDIR Base path for manual installation. [${SHAREDIR}/man/man] # # MANOWN Manual owner. [${SHAREOWN}] # # MANGRP Manual group. [${SHAREGRP}] # # MANMODE Manual mode. [${NOBINMODE}] # # # NLSDIR Base path for National Language Support files # installation. [${SHAREDIR}/nls] # # NLSOWN National Language Support files owner. [${SHAREOWN}] # # NLSGRP National Language Support files group. [${SHAREGRP}] # # NLSMODE National Language Support files mode. [${NOBINMODE}] # # INCLUDEDIR Base path for standard C include files [/usr/include] .if !target(____) ____: .if !defined(_WITHOUT_SRCCONF) SRCCONF?= /etc/src.conf .if exists(${SRCCONF}) .include "${SRCCONF}" .endif .endif # Binaries BINOWN?= root BINGRP?= wheel BINMODE?= 555 NOBINMODE?= 444 .if defined(MODULES_WITH_WORLD) KMODDIR?= /boot/modules .else KMODDIR?= /boot/kernel .endif KMODOWN?= ${BINOWN} KMODGRP?= ${BINGRP} KMODMODE?= ${BINMODE} LIBDIR?= /usr/lib LIBCOMPATDIR?= /usr/lib/compat LIBDATADIR?= /usr/libdata LINTLIBDIR?= /usr/libdata/lint SHLIBDIR?= ${LIBDIR} LIBOWN?= ${BINOWN} LIBGRP?= ${BINGRP} LIBMODE?= ${NOBINMODE} # Share files SHAREDIR?= /usr/share SHAREOWN?= root SHAREGRP?= wheel SHAREMODE?= ${NOBINMODE} MANDIR?= ${SHAREDIR}/man/man MANOWN?= ${SHAREOWN} MANGRP?= ${SHAREGRP} MANMODE?= ${NOBINMODE} DOCDIR?= ${SHAREDIR}/doc DOCOWN?= ${SHAREOWN} DOCGRP?= ${SHAREGRP} DOCMODE?= ${NOBINMODE} INFODIR?= ${SHAREDIR}/info INFOOWN?= ${SHAREOWN} INFOGRP?= ${SHAREGRP} INFOMODE?= ${NOBINMODE} NLSDIR?= ${SHAREDIR}/nls NLSOWN?= ${SHAREOWN} NLSGRP?= ${SHAREGRP} NLSMODE?= ${NOBINMODE} INCLUDEDIR?= /usr/include # Common variables .if !defined(DEBUG_FLAGS) STRIP?= -s .endif COMPRESS_CMD?= gzip -cn COMPRESS_EXT?= .gz .if !defined(_WITHOUT_SRCCONF) # # Define MK_* variables (which are either "yes" or "no") for users # to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the # make(1) environment. # These should be tested with `== "no"' or `!= "no"' in makefiles. # The NO_* variables should only be set by makefiles. # # # Supported NO_* options (if defined, MK_* will be forced to "no", # regardless of user's setting). # .for var in \ INSTALLLIB \ MAN \ PROFILE .if defined(NO_${var}) WITHOUT_${var}= .endif .endfor # # Compat NO_* options (same as above, except their use is deprecated). # .if !defined(BURN_BRIDGES) .for var in \ ACPI \ ATM \ AUDIT \ AUTHPF \ BIND \ BIND_DNSSEC \ BIND_ETC \ BIND_LIBS_LWRES \ BIND_MTREE \ BIND_NAMED \ BIND_UTILS \ BLUETOOTH \ BOOT \ CALENDAR \ CPP \ CRYPT \ CVS \ CXX \ DICT \ DYNAMICROOT \ EXAMPLES \ FORTH \ FP_LIBC \ GAMES \ GCOV \ GDB \ GNU \ GPIB \ GROFF \ HTML \ INET6 \ INFO \ IPFILTER \ IPX \ KERBEROS \ LIB32 \ LIBPTHREAD \ LIBTHR \ LOCALES \ LPR \ MAILWRAPPER \ NETCAT \ NIS \ NLS \ NLS_CATALOGS \ NS_CACHING \ OBJC \ OPENSSH \ OPENSSL \ PAM \ PF \ RCMDS \ RCS \ RESCUE \ SENDMAIL \ SETUID_LOGIN \ SHAREDOCS \ SYSCONS \ TCSH \ TOOLCHAIN \ USB \ WPA_SUPPLICANT_EAPOL .if defined(NO_${var}) #.warning NO_${var} is deprecated in favour of WITHOUT_${var}= WITHOUT_${var}= .endif .endfor .endif # !defined(BURN_BRIDGES) # # Older-style variables that enabled behaviour when set. # .if defined(YES_HESIOD) WITH_HESIOD= .endif .if defined(MAKE_IDEA) WITH_IDEA= .endif # # Default behaviour of MK_CLANG depends on the architecture. # .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" || \ ${MACHINE_ARCH} == "powerpc" _clang_yes=CLANG _clang_no= .else _clang_yes= _clang_no=CLANG .endif # # MK_* options which default to "yes". # .for var in \ ACCT \ ACPI \ AMD \ APM \ ASSERT_DEBUG \ AT \ ATM \ AUDIT \ AUTHPF \ BIND \ BIND_DNSSEC \ BIND_ETC \ BIND_LIBS_LWRES \ BIND_MTREE \ BIND_NAMED \ BIND_UTILS \ BLUETOOTH \ BOOT \ BSD_CPIO \ BSNMP \ BZIP2 \ CALENDAR \ CDDL \ ${_clang_yes} \ CPP \ CRYPT \ CTM \ CVS \ CXX \ DICT \ DYNAMICROOT \ EXAMPLES \ FLOPPY \ FORTH \ FP_LIBC \ FREEBSD_UPDATE \ GAMES \ GCOV \ GDB \ GNU \ GPIB \ GROFF \ HTML \ INET6 \ INFO \ INSTALLLIB \ IPFILTER \ IPFW \ IPX \ JAIL \ KERBEROS \ KVM \ LEGACY_CONSOLE \ LIB32 \ LIBPTHREAD \ LIBTHR \ LOCALES \ LOCATE \ LPR \ MAIL \ MAILWRAPPER \ MAKE \ MAN \ NCP \ NDIS \ NETCAT \ NETGRAPH \ NIS \ NLS \ NLS_CATALOGS \ NS_CACHING \ NTP \ OBJC \ OPENSSH \ OPENSSL \ PAM \ PF \ PKGTOOLS \ PMC \ PORTSNAP \ PPP \ PROFILE \ QUOTAS \ RCMDS \ RCS \ RESCUE \ ROUTED \ SENDMAIL \ SETUID_LOGIN \ SHAREDOCS \ SSP \ SYSINSTALL \ SYMVER \ SYSCONS \ TCSH \ TELNET \ TEXTPROC \ TOOLCHAIN \ USB \ WIRELESS \ WPA_SUPPLICANT_EAPOL \ ZFS \ ZONEINFO .if defined(WITH_${var}) && defined(WITHOUT_${var}) .error WITH_${var} and WITHOUT_${var} can't both be set. .endif .if defined(MK_${var}) .error MK_${var} can't be set by a user. .endif .if defined(WITHOUT_${var}) MK_${var}:= no .else MK_${var}:= yes .endif .endfor # # MK_* options which default to "no". # .for var in \ BIND_IDN \ BIND_LARGE_FILE \ BIND_LIBS \ BIND_SIGCHASE \ BIND_XML \ + BSD_GREP \ ${_clang_no} \ FDT \ - GNU_GREP \ HESIOD \ IDEA .if defined(WITH_${var}) && defined(WITHOUT_${var}) .error WITH_${var} and WITHOUT_${var} can't both be set. .endif .if defined(MK_${var}) .error MK_${var} can't be set by a user. .endif .if defined(WITH_${var}) MK_${var}:= yes .else MK_${var}:= no .endif .endfor # # Force some options off if their dependencies are off. # Order is somewhat important. # .if ${MK_LIBPTHREAD} == "no" MK_LIBTHR:= no .endif .if ${MK_LIBTHR} == "no" MK_BIND:= no .endif .if ${MK_BIND} == "no" MK_BIND_DNSSEC:= no MK_BIND_ETC:= no MK_BIND_LIBS:= no MK_BIND_LIBS_LWRES:= no MK_BIND_MTREE:= no MK_BIND_NAMED:= no MK_BIND_UTILS:= no .endif .if ${MK_BIND_MTREE} == "no" MK_BIND_ETC:= no .endif .if ${MK_CDDL} == "no" MK_ZFS:= no .endif .if ${MK_CRYPT} == "no" MK_OPENSSL:= no MK_OPENSSH:= no MK_KERBEROS:= no .endif .if ${MK_IPX} == "no" MK_NCP:= no .endif .if ${MK_MAIL} == "no" MK_MAILWRAPPER:= no MK_SENDMAIL:= no .endif .if ${MK_NETGRAPH} == "no" MK_ATM:= no MK_BLUETOOTH:= no .endif .if ${MK_OPENSSL} == "no" MK_OPENSSH:= no MK_KERBEROS:= no .endif .if ${MK_PF} == "no" MK_AUTHPF:= no .endif .if ${MK_TEXTPROC} == "no" MK_GROFF:= no .endif .if ${MK_TOOLCHAIN} == "no" MK_CLANG:= no MK_GDB:= no .endif # # Set defaults for the MK_*_SUPPORT variables. # # # MK_*_SUPPORT options which default to "yes" unless their corresponding # MK_* variable is set to "no". # .for var in \ BZIP2 \ GNU \ INET6 \ IPX \ KERBEROS \ KVM \ NETGRAPH \ PAM \ WIRELESS .if defined(WITH_${var}_SUPPORT) && defined(WITHOUT_${var}_SUPPORT) .error WITH_${var}_SUPPORT and WITHOUT_${var}_SUPPORT can't both be set. .endif .if defined(MK_${var}_SUPPORT) .error MK_${var}_SUPPORT can't be set by a user. .endif .if defined(WITHOUT_${var}_SUPPORT) || ${MK_${var}} == "no" MK_${var}_SUPPORT:= no .else MK_${var}_SUPPORT:= yes .endif .endfor # # MK_* options whose default value depends on another option. # .for vv in \ GSSAPI/KERBEROS \ MAN_UTILS/MAN .if defined(WITH_${vv:H}) && defined(WITHOUT_${vv:H}) .error WITH_${vv:H} and WITHOUT_${vv:H} can't both be set. .endif .if defined(MK_${vv:H}) .error MK_${vv:H} can't be set by a user. .endif .if defined(WITH_${vv:H}) MK_${vv:H}:= yes .elif defined(WITHOUT_${vv:H}) MK_${vv:H}:= no .else MK_${vv:H}:= ${MK_${vv:T}} .endif .endfor .endif # !_WITHOUT_SRCCONF .endif # !target(____) Index: head/sys/sys/param.h =================================================================== --- head/sys/sys/param.h (revision 211700) +++ head/sys/sys/param.h (revision 211701) @@ -1,317 +1,317 @@ /*- * Copyright (c) 1982, 1986, 1989, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)param.h 8.3 (Berkeley) 4/4/95 * $FreeBSD$ */ #ifndef _SYS_PARAM_H_ #define _SYS_PARAM_H_ #include #define BSD 199506 /* System version (year & month). */ #define BSD4_3 1 #define BSD4_4 1 /* * __FreeBSD_version numbers are documented in the Porter's Handbook. * If you bump the version for any reason, you should update the documentation * there. * Currently this lives here: * * doc/en_US.ISO8859-1/books/porters-handbook/book.sgml * * scheme is: Rxx * 'R' is in the range 0 to 4 if this is a release branch or * x.0-CURRENT before RELENG_*_0 is created, otherwise 'R' is * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 900016 /* Master, propagated to newvers */ +#define __FreeBSD_version 900017 /* Master, propagated to newvers */ #ifndef LOCORE #include #endif /* * Machine-independent constants (some used in following include files). * Redefined constants are from POSIX 1003.1 limits file. * * MAXCOMLEN should be >= sizeof(ac_comm) (see ) */ #include #define MAXCOMLEN 19 /* max command name remembered */ #define MAXINTERP 32 /* max interpreter file name length */ #define MAXLOGNAME 17 /* max login name length (incl. NUL) */ #define MAXUPRC CHILD_MAX /* max simultaneous processes */ #define NCARGS ARG_MAX /* max bytes for an exec function */ #define NGROUPS (NGROUPS_MAX+1) /* max number groups */ #define NOFILE OPEN_MAX /* max open files per process */ #define NOGROUP 65535 /* marker for empty group set member */ #define MAXHOSTNAMELEN 256 /* max hostname size */ #define SPECNAMELEN 63 /* max length of devicename */ /* More types and definitions used throughout the kernel. */ #ifdef _KERNEL #include #include #ifndef LOCORE #include #include #endif #ifndef FALSE #define FALSE 0 #endif #ifndef TRUE #define TRUE 1 #endif #endif #ifndef _KERNEL /* Signals. */ #include #endif /* Machine type dependent parameters. */ #include #ifndef _KERNEL #include #endif #ifndef DEV_BSHIFT #define DEV_BSHIFT 9 /* log2(DEV_BSIZE) */ #endif #define DEV_BSIZE (1<>PAGE_SHIFT) #endif /* * btodb() is messy and perhaps slow because `bytes' may be an off_t. We * want to shift an unsigned type to avoid sign extension and we don't * want to widen `bytes' unnecessarily. Assume that the result fits in * a daddr_t. */ #ifndef btodb #define btodb(bytes) /* calculates (bytes / DEV_BSIZE) */ \ (sizeof (bytes) > sizeof(long) \ ? (daddr_t)((unsigned long long)(bytes) >> DEV_BSHIFT) \ : (daddr_t)((unsigned long)(bytes) >> DEV_BSHIFT)) #endif #ifndef dbtob #define dbtob(db) /* calculates (db * DEV_BSIZE) */ \ ((off_t)(db) << DEV_BSHIFT) #endif #define PRIMASK 0x0ff #define PCATCH 0x100 /* OR'd with pri for tsleep to check signals */ #define PDROP 0x200 /* OR'd with pri to stop re-entry of interlock mutex */ #define PBDRY 0x400 /* for PCATCH stop is done on the user boundary */ #define NZERO 0 /* default "nice" */ #define NBBY 8 /* number of bits in a byte */ #define NBPW sizeof(int) /* number of bytes per word (integer) */ #define CMASK 022 /* default file mask: S_IWGRP|S_IWOTH */ #define NODEV (dev_t)(-1) /* non-existent device */ /* * File system parameters and macros. * * MAXBSIZE - Filesystems are made out of blocks of at most MAXBSIZE bytes * per block. MAXBSIZE may be made larger without effecting * any existing filesystems as long as it does not exceed MAXPHYS, * and may be made smaller at the risk of not being able to use * filesystems which require a block size exceeding MAXBSIZE. * * BKVASIZE - Nominal buffer space per buffer, in bytes. BKVASIZE is the * minimum KVM memory reservation the kernel is willing to make. * Filesystems can of course request smaller chunks. Actual * backing memory uses a chunk size of a page (PAGE_SIZE). * * If you make BKVASIZE too small you risk seriously fragmenting * the buffer KVM map which may slow things down a bit. If you * make it too big the kernel will not be able to optimally use * the KVM memory reserved for the buffer cache and will wind * up with too-few buffers. * * The default is 16384, roughly 2x the block size used by a * normal UFS filesystem. */ #define MAXBSIZE 65536 /* must be power of 2 */ #define BKVASIZE 16384 /* must be power of 2 */ #define BKVAMASK (BKVASIZE-1) /* * MAXPATHLEN defines the longest permissible path length after expanding * symbolic links. It is used to allocate a temporary buffer from the buffer * pool in which to do the name expansion, hence should be a power of two, * and must be less than or equal to MAXBSIZE. MAXSYMLINKS defines the * maximum number of symbolic links that may be expanded in a path name. * It should be set high enough to allow all legitimate uses, but halt * infinite loops reasonably quickly. */ #define MAXPATHLEN PATH_MAX #define MAXSYMLINKS 32 /* Bit map related macros. */ #define setbit(a,i) (((unsigned char *)(a))[(i)/NBBY] |= 1<<((i)%NBBY)) #define clrbit(a,i) (((unsigned char *)(a))[(i)/NBBY] &= ~(1<<((i)%NBBY))) #define isset(a,i) \ (((const unsigned char *)(a))[(i)/NBBY] & (1<<((i)%NBBY))) #define isclr(a,i) \ ((((const unsigned char *)(a))[(i)/NBBY] & (1<<((i)%NBBY))) == 0) /* Macros for counting and rounding. */ #ifndef howmany #define howmany(x, y) (((x)+((y)-1))/(y)) #endif #define rounddown(x, y) (((x)/(y))*(y)) #define roundup(x, y) ((((x)+((y)-1))/(y))*(y)) /* to any y */ #define roundup2(x, y) (((x)+((y)-1))&(~((y)-1))) /* if y is powers of two */ #define powerof2(x) ((((x)-1)&(x))==0) /* Macros for min/max. */ #define MIN(a,b) (((a)<(b))?(a):(b)) #define MAX(a,b) (((a)>(b))?(a):(b)) #ifdef _KERNEL /* * Basic byte order function prototypes for non-inline functions. */ #ifndef LOCORE #ifndef _BYTEORDER_PROTOTYPED #define _BYTEORDER_PROTOTYPED __BEGIN_DECLS __uint32_t htonl(__uint32_t); __uint16_t htons(__uint16_t); __uint32_t ntohl(__uint32_t); __uint16_t ntohs(__uint16_t); __END_DECLS #endif #endif #ifndef lint #ifndef _BYTEORDER_FUNC_DEFINED #define _BYTEORDER_FUNC_DEFINED #define htonl(x) __htonl(x) #define htons(x) __htons(x) #define ntohl(x) __ntohl(x) #define ntohs(x) __ntohs(x) #endif /* !_BYTEORDER_FUNC_DEFINED */ #endif /* lint */ #endif /* _KERNEL */ /* * Scale factor for scaled integers used to count %cpu time and load avgs. * * The number of CPU `tick's that map to a unique `%age' can be expressed * by the formula (1 / (2 ^ (FSHIFT - 11))). The maximum load average that * can be calculated (assuming 32 bits) can be closely approximated using * the formula (2 ^ (2 * (16 - FSHIFT))) for (FSHIFT < 15). * * For the scheduler to maintain a 1:1 mapping of CPU `tick' to `%age', * FSHIFT must be at least 11; this gives us a maximum load avg of ~1024. */ #define FSHIFT 11 /* bits to right of fixed binary point */ #define FSCALE (1<> (PAGE_SHIFT - DEV_BSHIFT)) #define ctodb(db) /* calculates pages to devblks */ \ ((db) << (PAGE_SHIFT - DEV_BSHIFT)) /* * Given the pointer x to the member m of the struct s, return * a pointer to the containing structure. */ #define member2struct(s, m, x) \ ((struct s *)(void *)((char *)(x) - offsetof(struct s, m))) #endif /* _SYS_PARAM_H_ */ Index: head/tools/build/options/WITH_GNU_GREP =================================================================== --- head/tools/build/options/WITH_GNU_GREP (revision 211700) +++ head/tools/build/options/WITH_GNU_GREP (nonexistent) @@ -1,2 +0,0 @@ -.\" $FreeBSD$ -Set to build the base system with GNU grep instead of BSD grep Property changes on: head/tools/build/options/WITH_GNU_GREP ___________________________________________________________________ Deleted: svn:keywords ## -1 +0,0 ## -FreeBSD=%H \ No newline at end of property Index: head/tools/build/options/WITH_BSD_GREP =================================================================== --- head/tools/build/options/WITH_BSD_GREP (nonexistent) +++ head/tools/build/options/WITH_BSD_GREP (revision 211701) @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Build BSD-licensed grep instead of GNU grep. Property changes on: head/tools/build/options/WITH_BSD_GREP ___________________________________________________________________ Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Index: head/usr.bin/Makefile =================================================================== --- head/usr.bin/Makefile (revision 211700) +++ head/usr.bin/Makefile (revision 211701) @@ -1,414 +1,414 @@ # From: @(#)Makefile 8.3 (Berkeley) 1/7/94 # $FreeBSD$ .include # XXX MISSING: deroff diction graph learn plot # spell spline struct xsend # XXX Use GNU versions: apropos diff ld man patch whatis # Moved to secure: bdes # SUBDIR= alias \ apply \ ${_ar} \ asa \ ${_at} \ ${_atm} \ awk \ banner \ basename \ ${_bc} \ ${_biff} \ ${_bluetooth} \ brandelf \ bsdiff \ bzip2 \ bzip2recover \ ${_c89} \ ${_c99} \ ${_calendar} \ cap_mkdb \ ${_catman} \ chat \ ${_checknr} \ ${_chkey} \ chpass \ cksum \ ${_clang} \ cmp \ col \ ${_colcrt} \ colldef \ colrm \ column \ comm \ ${_compile_et} \ compress \ ${_cpio} \ cpuset \ csplit \ ${_csup} \ ${_ctags} \ cut \ ${_dc} \ ${_dig} \ dirname \ du \ ee \ elf2aout \ elfdump \ enigma \ env \ expand \ false \ fetch \ file \ ${_file2c} \ find \ finger \ fmt \ fold \ ${_from} \ fstat \ fsync \ ftp \ gcore \ gencat \ getconf \ getent \ getopt \ ${_gprof} \ ${_grep} \ gzip \ head \ ${_hesinfo} \ hexdump \ ${_host} \ id \ ${_indent} \ ipcrm \ ipcs \ join \ jot \ kdump \ keylogin \ keylogout \ killall \ ktrace \ ktrdump \ lam \ last \ lastcomm \ ldd \ leave \ less \ lessecho \ lesskey \ ${_lex} \ limits \ locale \ ${_locate} \ lock \ lockf \ logger \ login \ logins \ logname \ look \ lorder \ lsvfs \ lzmainfo \ m4 \ ${_mail} \ ${_make} \ ${_makewhatis} \ mesg \ minigzip \ ministat \ mkdep \ mkfifo \ mklocale \ ${_mkstr} \ mktemp \ mkuzip \ ${_msgs} \ mt \ ${_nc} \ ncal \ ${_ncplist} \ ${_ncplogin} \ netstat \ newgrp \ ${_newkey} \ nfsstat \ nice \ nl \ nohup \ ${_nslookup} \ ${_nsupdate} \ opieinfo \ opiekey \ opiepasswd \ pagesize \ passwd \ paste \ pathchk \ perror \ pr \ printenv \ printf \ procstat \ ${_quota} \ renice \ rev \ revoke \ ${_rlogin} \ ${_rpcgen} \ rpcinfo \ rs \ ${_rsh} \ rup \ ${_ruptime} \ rusers \ rwall \ ${_rwho} \ script \ sed \ seq \ shar \ showmount \ ${_smbutil} \ sockstat \ split \ stat \ su \ systat \ tabs \ tail \ talk \ tar \ tcopy \ tee \ ${_telnet} \ tftp \ time \ tip \ top \ touch \ tput \ tr \ true \ truncate \ ${_truss} \ tset \ tsort \ tty \ ${_ul} \ uname \ unexpand \ ${_unifdef} \ uniq \ unzip \ units \ unvis \ ${_usbhidaction} \ ${_usbhidctl} \ users \ uudecode \ uuencode \ ${_vacation} \ ${_vgrind} \ vi \ vis \ vmstat \ w \ wall \ wc \ what \ whereis \ which \ who \ whois \ write \ wtmpcvt \ xargs \ xinstall \ ${_xlint} \ ${_xstr} \ xz \ xzdec \ ${_yacc} \ yes \ ${_ypcat} \ ${_ypmatch} \ ${_ypwhich} .if ${MACHINE_ARCH} != "arm" _truss= truss .endif # NB: keep these sorted by MK_* knobs .if ${MK_AT} != "no" _at= at .endif .if ${MK_ATM} != "no" _atm= atm .endif .if ${MK_MAN_UTILS} != "no" _catman= catman .endif .if ${MK_BIND_UTILS} != "no" _dig= dig _host= host _nslookup= nslookup _nsupdate= nsupdate .endif .if ${MK_BLUETOOTH} != "no" _bluetooth= bluetooth .endif .if ${MK_BSD_CPIO} != "no" _cpio= cpio .endif +.if ${MK_BSD_GREP} != "no" +_grep= grep +.endif + .if ${MK_CALENDAR} != "no" _calendar= calendar .endif .if ${MK_CLANG} != "no" _clang= clang -.endif - -.if ${MK_GNU_GREP} != "yes" -_grep= grep .endif .if ${MK_HESIOD} != "no" _hesinfo= hesinfo .endif .if ${MK_OPENSSL} != "no" _bc= bc _chkey= chkey _dc= dc _newkey= newkey .if ${MK_LIBTHR} != "no" _csup= csup .endif .endif .if ${MK_LOCATE} != "no" _locate= locate .endif # XXX msgs? .if ${MK_MAIL} != "no" _biff= biff _from= from _mail= mail _msgs= msgs .endif .if ${MK_MAKE} != "no" _make= make .endif .if ${MK_MAN_UTILS} != "no" _makewhatis= makewhatis .endif .if ${MK_NETCAT} != "no" _nc= nc .endif .if ${MK_NIS} != "no" _ypcat= ypcat _ypmatch= ypmatch _ypwhich= ypwhich .endif .if ${MK_QUOTAS} != "no" _quota= quota .endif .if ${MK_RCMDS} != "no" _rlogin= rlogin _rsh= rsh _ruptime= ruptime _rwho= rwho .endif .if ${MK_SENDMAIL} != "no" _vacation= vacation .endif .if ${MK_TELNET} != "no" _telnet= telnet .endif .if ${MK_TEXTPROC} != "no" _checknr= checknr _colcrt= colcrt _ul= ul .endif .if ${MK_TOOLCHAIN} != "no" _ar= ar _c89= c89 _c99= c99 _compile_et= compile_et _ctags= ctags _file2c= file2c _gprof= gprof _indent= indent _lex= lex _mkstr= mkstr _rpcgen= rpcgen _unifdef= unifdef _xlint= xlint _xstr= xstr # XXX maybe under textproc? _vgrind= vgrind _yacc= yacc .endif .if ${MK_USB} != "no" _usbhidaction= usbhidaction _usbhidctl= usbhidctl .endif .if ${MACHINE_ARCH} == "i386" .if ${MK_NCP} != "no" _ncplist= ncplist _ncplogin= ncplogin .endif _smbutil= smbutil .endif .if ${MACHINE_ARCH} == "ia64" _smbutil= smbutil .endif .if ${MACHINE_ARCH} == "amd64" .if ${MK_NCP} != "no" _ncplist= ncplist _ncplogin= ncplogin .endif _smbutil= smbutil .endif .if ${MACHINE_ARCH} == "powerpc" _smbutil= smbutil .endif .if ${MACHINE_ARCH} == "sparc64" _smbutil= smbutil .endif .include