aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/configure
Commit message (Collapse)AuthorAgeFilesLines
* Various people (among others Maxim Belooussov and Carsten Kunze)Ingo Schwarze2016-05-181-32/+33
| | | | | | | | | | | reported that the build system still assumed that ohash is only needed if sqlite3 is also in use, which is no longer true: The ohash library is now required no matter what. Rework sqlite3 and ohash library autodetection such that both work independently of each other. Provide LDADD for additional linker flags. Add some missing variables to configure.local.example.
* No point in trying to go on when elementary database operationsIngo Schwarze2015-11-261-0/+1
| | | | | | like preparing queries or binding variables fail; that won't yield useful results anyway but may generate huge pointless error messages. Issue reported by deraadt@.
* The sh(1) "test" builtin on Solaris 10 doesn't have -e,Ingo Schwarze2015-11-071-3/+3
| | | | | even though that's required by POSIX. Use -w and -r, that's just as good.
* provide a simple stand-alone implementation of getline(3)Ingo Schwarze2015-11-071-1/+8
| | | | for systems lacking it
* Modernization, no functional change intended:Ingo Schwarze2015-11-071-8/+1
| | | | | | Use the POSIX function getline(3) rather than the slightly dangerous BSD function fgetln(3). Remove the related compatibility code.
* In private header files, __BEGIN_DECLS and __END_DECLS are pointless.Ingo Schwarze2015-11-071-15/+4
| | | | | | | | | | | | Because these work slightly differently on different systems, they are becoming a maintenance burden in the portable version, so delete them. Besides, one of the chief design goals of the mandoc toolbox is to make sure that nothing related to documentation requires C++. Consequently, linking mandoc against any kind of C++ program would defeat the purpose and is not supported. I don't understand why kristaps@ added them in the first place.
* garbage collect unused EXAMPLEDIR, forgotten in the CSS cleanup;Ingo Schwarze2015-11-071-3/+0
| | | | noticed by Peter Bray <pdb_ml at yahoo dot com dot au>
* In ./configure, select a RE syntax for word boundaries supported by libc;Ingo Schwarze2015-11-061-0/+6
| | | | issue reported by Svyatoslav Mishyn, Peter Bray, and Daniel Levai.
* merge pledge(2) support from OpenBSDIngo Schwarze2015-11-061-0/+3
|
* Use getprogname(3) rather than __progname.Ingo Schwarze2015-11-061-1/+5
| | | | | | | Suggested by Joerg@ Sonnenberger (NetBSD). Last year, deraadt@ confirmed on tech@ that this "has the potential to be more portable", and micro-optimizing for speed is not relevant here. Also gets rid of one global variable.
* Finally use __progname, err(3) and warn(3).Ingo Schwarze2015-10-111-0/+13
| | | | | | | | | | That's more readable and less error-prone than fumbling around with argv[0], fprintf(3), strerror(3), perror(3), and exit(3). It's a bad idea to boycott good interfaces merely because standards committees ignore them. Instead, let's provide compatibility modules for archaic systems (like commercial Solaris) that still don't have them. The compat module has an UCB Copyright (c) 1993...
* Do not fork and exec gunzip(1), just link with libz instead.Ingo Schwarze2015-07-191-2/+2
| | | | | | | As discussed with deraadt@, that's cleaner and will help tame(2). Something like this was also suggested earlier by bapt at FreeBSD. Minus 50 lines of code, deleting one interface function (mparse_wait), no functional change intended.
* * remove FreeBSDismsIngo Schwarze2015-05-201-3/+9
| | | | | | | * purge and sort headers * add build and compat glue * and LICENSE information for soelim(1)
* Add man.conf(5). After adding some additional functionality,Ingo Schwarze2015-03-271-0/+3
| | | | | one of the next steps will be to use it in addition to manpath(1) rather than as an alternative to it.
* make MANPATH_DEFAULT compile-time configurableIngo Schwarze2015-03-221-0/+2
|
* Compat glue needed for Solaris 9 and 10.Ingo Schwarze2015-03-191-0/+19
| | | | | | | Thanks to Sevan Janiyan <venture37 at geeklan dot co dot uk> for reporting the Solaris 10 issues, to Jan Holzhueter <jh at opencsw dot org> for some additional insight, and to OpenCSW in general for providing me with a Solaris 9/10/11 testing environment.
* Pass the CC set in configure.local to Makefile.local.Ingo Schwarze2015-03-181-0/+1
| | | | Issue found while testing on opencsw.org.
* When manpath(1) is available, enable HAVE_MANPATH even when buildingIngo Schwarze2015-03-111-3/+1
| | | | | without database support. Required now that we have man(1) even without database support.
* Delete the -V option. It serves no purpose but keeps confusing people.Ingo Schwarze2015-02-161-6/+0
| | | | | | | | Keeping track of the versions of installed software is the job of the package manager, not of the individual binaries. If individual binaries include version numbers, that tends to goad people into writing broken configuration tests that inspect version numbers instead of properly testing for features.
* strtonum(3) compat glueIngo Schwarze2015-02-161-0/+6
|
* Support homebrew-style linking on Mac OS X.Ingo Schwarze2015-01-211-1/+3
| | | | Idea found together with Alexis Hildebrandt <surryhill at gmail dot com>.
* version 1.13.2VERSION_1_13_2Ingo Schwarze2014-12-131-1/+1
|
* Support choosing alternative binary and manual names from configure.local,Ingo Schwarze2014-12-091-0/+24
| | | | to help downstream distributions avoid naming conflicts.
* Integrate the makewhatis binary into the mandoc binaryIngo Schwarze2014-12-091-2/+5
| | | | | just like we do it on OpenBSD. Smaller and neater. While here, let ./configure set INSTALL_TARGETS.
* 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.