summaryrefslogtreecommitdiffstats
path: root/configure
Commit message (Collapse)AuthorAgeFilesLines
* On Linux, wcwidth() needs _XOPEN_SOURCE, or just _GNU_SOURCE for simplicity.Ingo Schwarze2014-08-281-1/+1
| | | | | | Besides, signedness of wchar_t and wint_t may differ, it i only guaranteed that each wchar_t can be represented as a wint_t. A problem report by Daniel Levai reminded me to fix this.
* Do not require getsubopt() to provide extern char *suboptarg.Ingo Schwarze2014-08-171-3/+1
| | | | | | | | | | | | | | | | | | | | We don't use it anyway in mandoc. Like this, fewer systems need the compat implementation. In particular, we can now use the stock getsubopt() on glibc and musl. Besides, the comment in the BSD getsubopt.c that error messages are tricky without *suboptarg is massively overblown. If you simply save a copy of the pointer you pass into getsubopt(), that's quite usable for an error message. People start campaigning for the addition of *suboptarg to C libraries on the grounds that mandoc wants it, but actually, i consider library functions manipulating global data quite ugly, so stop pushing people into that questionable direction. While here, add an explicit Copyright header to the test file. While it's obviously to me what Kristaps intended, others might consider this file copyrightable and wonder what's up.
* When BUILD_DB is active, link apropos(1) into the mandoc binary.Ingo Schwarze2014-08-161-0/+4
| | | | | This is the first step on the way to a man(1) implementation. The new ./configure is flexible enough to make this step quite easy.
* Improve build system and autodetection.Ingo Schwarze2014-08-161-24/+364
| | | | | | | | | * Make ./configure standalone, that's what people expect. * Let people write a ./configure.local from scratch, not edit existing files. * Autodetect wchar, sqlite3, and manpath and act accordingly. * Autodetect the need for -L/usr/local/lib and -lutil. * Get rid of config.h.p{re,ost}, let ./configure only write what's needed. * Let ./configure write a Makefile.local snippet, that's quite flexible.
* work around lack of d_namlen and ALIGN/ALIGNBYTES on LinuxIngo Schwarze2014-08-111-0/+1
|
* Provide a fallback version of fts(3) for systems lacking it.Ingo Schwarze2014-08-111-0/+1
| | | | | | I chose the OpenBSD version because it apparently contains various bugfixes that never made it into libnbcompat. To reduce size and complexity, i stripped out the features we don't need.
* Clarifications in comments and standard output suggested byIngo Schwarze2014-08-101-0/+2
| | | | Paul Onyschuk <ptmelville at gmail dot com> (Alpine Linux)
* Do not hardcode stuff in ./configure that is actually user-configurableIngo Schwarze2014-08-081-3/+2
| | | | | | in the Makefile; instead, pass it down via the environment just like CFLAGS. Nice suggestion from kristaps@ hoping to make MacOS X happier.
* Since old SQLite versions do not have sqlite3_errstr(),Ingo Schwarze2014-08-051-0/+2
| | | | | | | | | provide a dummy fallback implementation. Do not bother to decode the error, SQLite error codes are not useful enough for that to be worthwhile. Note that using sqlite3_errmsg(db) would be a bad idea: On malloc() failure, db is NULL, which would cause a segfault. Issue noticed by kristaps@.
* remove strnlen(3) compat, we no longer use itIngo Schwarze2014-08-041-1/+0
|
* let the build system cope with the recent ohash changesIngo Schwarze2014-06-201-3/+3
|
* Audit malloc(3)/calloc(3)/realloc(3) usage.Ingo Schwarze2014-04-231-0/+1
| | | | | | | * Change eight reallocs to reallocarray to be safe from overflows. * Change one malloc to reallocarray to be safe from overflows. * Change one calloc to reallocarray, no zeroing needed. * Change the order of arguments of three callocs (aesthetical).
* Even though strnlen(3) is required by POSIX 2008,Ingo Schwarze2014-01-041-0/+1
| | | | | | Matthias Scheler reports than Solaris 10 lacks it. While here, sort the declarations in config.h and move the headers to the top.
* Clean up feature tests:Ingo Schwarze2014-01-041-0/+45
* Split the configure steering script out of the Makefile. * Let the configure step depend on the test sources. * Clean up the test programs such that they can be run.