freebsd-dev/include
Ed Schouten cd4dcac89a Improve compatibility of calls to dirname() on constant strings.
As the xinstall(8) utility had to be patched up to work with the POSIXly
correct basename()/dirname() prototypes, we make it pretty hard to build
previous versions of FreeBSD on HEAD. xinstall(8) is part of the
bootstrap tools.

Add some logic to <libgen.h> to automatically detect bad calls to
dirname() based on the type of the argument. If the argument is of type
'const char *', we simply fall back to calling into dirname@FBSD_1.0
directly.

I'll also give basename() similar treatment when importing the
thread-safe version of that function.

Tested by:	bdrewery, madpilot (thanks!)
2016-08-26 20:23:10 +00:00
..
arpa include: minor spelling fixes. 2016-04-30 14:43:42 +00:00
gssapi Add META_MODE support. 2015-06-13 19:20:56 +00:00
protocols Add META_MODE support. 2015-06-13 19:20:56 +00:00
rpc xdr: Fix xdr_rpc* defines. 2016-03-04 22:03:38 +00:00
rpcsvc include: minor spelling fixes. 2016-04-30 14:43:42 +00:00
xlocale LC_*_MASK bit shifting order was partially broken from the initial commit 2016-08-23 20:33:56 +00:00
_ctype.h Commit log from Dragonfly: 2015-10-13 20:43:49 +00:00
a.out.h
ar.h
assert.h Don't define static_assert for C++. 2011-12-29 14:41:17 +00:00
bitstring.h Improve performance and functionality of the bitstring(3) api 2016-05-04 22:34:11 +00:00
complex.h I'm happy to finally commit stephen@'s implementations of cacos, 2013-05-30 04:49:26 +00:00
cpio.h
ctype.h Commit log from Dragonfly: 2015-10-13 20:43:49 +00:00
db.h
dirent.h Add missing declaration of ino_t. 2016-05-30 07:50:57 +00:00
dlfcn.h Implement fdlopen(3), an rtld interface to load shared object by file 2012-01-07 10:33:01 +00:00
elf-hints.h
elf.h
err.h
fmtmsg.h Fix a small typo. Fireware -> firmware. 2012-06-05 19:42:57 +00:00
fnmatch.h
fstab.h
fts.h Allow certain headers to be included more easily. 2013-05-21 21:20:10 +00:00
ftw.h
getopt.h
glob.h - Add restrict keyword to glob(3) 2011-12-20 22:56:13 +00:00
grp.h Fix up setgrent(3) to have a POSIX-compliant prototype. 2016-07-31 08:05:15 +00:00
gssapi.h
hesiod.h We don't use these files. 2014-08-09 20:03:40 +00:00
iconv.h Remove the const qualifier from iconv(3) to comply with POSIX: 2015-04-15 09:09:20 +00:00
ieeefp.h
ifaddrs.h Allow certain headers to be included more easily. 2013-05-21 21:20:10 +00:00
inttypes.h Rename __wchar_t so it no longer conflicts with __wchar_t from clang 3.4 2014-04-01 14:46:11 +00:00
iso646.h
kenv.h
langinfo.h langinfo.h: Hide YESSTR and NOSTR in strict POSIX mode. 2014-04-19 12:38:01 +00:00
libgen.h Improve compatibility of calls to dirname() on constant strings. 2016-08-26 20:23:10 +00:00
limits.h - Add the definition of CHARCLASS_NAME_MAX, as per POSIX.1-2001. 2016-01-09 14:53:23 +00:00
link.h
locale.h Reapply 227753 (xlocale cleanup), plus some fixes so that it passes build 2012-03-04 15:31:13 +00:00
Makefile Commit the bits of nda that were missed. This should fix the build. 2016-06-10 06:04:53 +00:00
Makefile.depend new depends 2015-06-16 23:37:19 +00:00
malloc_np.h Update jemalloc to 4.1.0. 2016-02-29 19:10:32 +00:00
malloc.h
memory.h
mk-osreldate.sh Stop building vers.c in include/ and only build the needed osreldate.h. 2015-11-25 19:10:59 +00:00
monetary.h Make strfmon_l() work without requiring the use of <xlocale.h>. 2016-05-31 12:29:21 +00:00
mpool.h
mqueue.h POSIX requires sigevent to be visible after mqueue.h is included. 2012-09-10 05:12:45 +00:00
ndbm.h Fix prototype of dbm_open(). 2016-05-31 18:32:57 +00:00
netconfig.h
netdb.h Add NI_NUMERICSCOPE. 2016-07-28 10:05:41 +00:00
nl_types.h
nlist.h
nss.h
nsswitch.h
paths.h Implement suggestion by jhb@ to have _PATH_FIRMWARE instead of hard 2016-03-23 04:18:57 +00:00
printf.h The register_printf_render_std() function expects regular string. 2012-07-04 17:35:07 +00:00
proc_service.h
pthread_np.h
pthread.h Add implementation of robust mutexes, hopefully close enough to the 2016-05-17 09:56:22 +00:00
pwd.h Replace our version of the pwcache(3) API with NetBSD's implementation. 2012-10-19 12:44:22 +00:00
ranlib.h
readpassphrase.h
regex.h Replace __const by const in all non-contributed source code. 2011-12-13 13:32:56 +00:00
res_update.h Update our stub resolver to final version of libbind. 2014-08-12 12:36:06 +00:00
resolv.h resolver: preserve binary compatibility; reduce header pollution 2015-12-14 17:21:06 +00:00
runetype.h After r232498, programs built with -ansi or -std=c89 including <ctype.h> 2012-03-06 20:15:23 +00:00
search.h Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
semaphore.h Ensure #include <semaphore.h> is sufficient for using SEM_VALUE_MAX. 2015-01-31 16:39:26 +00:00
setjmp.h include: Remove checks for __BSD_VISIBLE where redundant with __XSI_VISIBLE 2014-05-11 13:48:21 +00:00
signal.h Fix the signature of the psignal() function. 2016-05-30 13:51:27 +00:00
spawn.h
stab.h
stdalign.h Add <stdalign.h> and <stdnoreturn.h>. 2011-12-25 20:51:40 +00:00
stdbool.h Remove unneeded guard. 2011-12-25 20:15:41 +00:00
stddef.h Add guards to ptrdiff_t definition in include/stddef.h 2014-08-21 15:10:10 +00:00
stdio.h tools/build looks for _WITH_GETLINE in /usr/include/stdio.h to see if 2016-08-02 21:55:23 +00:00
stdlib.h Change type of MB_CUR_MAX and MB_CUR_MAX_L() to size_t. 2016-07-28 09:50:19 +00:00
stdnoreturn.h Simply disallow <stdnoreturn.h> to be used in combination with C++. 2012-01-03 23:05:23 +00:00
string.h Add timingsafe_bcmp and timingsafe_memcmp. 2016-08-14 23:38:50 +00:00
stringlist.h Remove clause 3 and 4 from the license 2015-05-21 08:38:25 +00:00
strings.h Add explicit_bzero(3) and its kernel counterpart. 2014-10-07 04:54:11 +00:00
sysexits.h
tar.h
termios.h include: Remove checks for __BSD_VISIBLE where redundant with __XSI_VISIBLE 2014-05-11 13:48:21 +00:00
tgmath.h Roll back r271012 even more aggressively. 2014-09-05 05:36:32 +00:00
time.h Add CLOCK_PROCESS_CPUTIME_ID to <time.h>, to synchronize the CLOCK_* 2013-01-14 18:01:19 +00:00
timeconv.h
timers.h
ttyent.h Add a new flag to /etc/ttys: onifconsole. This is equivalent to "on" if the 2014-01-20 18:15:06 +00:00
uchar.h Fix <uchar.h> in for C++11. 2013-05-25 16:58:12 +00:00
ulimit.h
unistd.h Add an implementation of fdatasync(2). 2016-08-15 19:08:51 +00:00
unwind.h
utime.h
utmpx.h
uuid.h
varargs.h
wchar.h Add missing va_list to <wchar.h>. 2016-05-30 16:26:34 +00:00
wctype.h Commit log from Dragonfly: 2015-10-13 20:43:49 +00:00
wordexp.h
xlocale.h Reapply 227753 (xlocale cleanup), plus some fixes so that it passes build 2012-03-04 15:31:13 +00:00