summaryrefslogtreecommitdiffstats
path: root/configure
Commit message (Collapse)AuthorAgeFilesLines
* Version 97.txr-97Kaz Kylheku2014-08-291-1/+1
|
* Version 96.txr-96Kaz Kylheku2014-08-141-1/+1
|
* Version 95.txr-95Kaz Kylheku2014-08-071-1/+1
|
* No getppid on MinGW.Kaz Kylheku2014-08-071-0/+21
| | | | | | * configure: Add test for getppid. * eval.c (getppid_wrap, eval_init): use HAVE_GETPPID
* Version 94.txr-94Kaz Kylheku2014-08-051-1/+1
|
* * configure (have_sys_time): New variable.Kaz Kylheku2014-08-011-0/+28
| | | | | | | | | | | | | | Added check for setitimer/getitimer which also checks for <sys/time.h>. * signal.c (sig_init): Register itimer-real, itimer-virtual, itimer-prof variables and getitimer and setitimer functions. (tv_to_usec): New static function. (getitimer_wrap, setitimer_wrap): New functions. * signal.h (getitimer_wrap, setitimer_wrap): Declared. * txr.1: Documented itimers.
* * Makefile, arith.c, arith.h, combi.c, combi.h, configure, debug.c,Kaz Kylheku2014-07-231-19/+19
| | | | | | | | debug.h, eval.c, eval.h, filter.c, filter.h, gc.c, gc.h, hash.c, hash.h, lib.c, lib.h, match.c, match.h, parser.h, parser.l, parser.y, rand.c, rand.h, regex.c, regex.h, signal.c, signal.h, stream.c, stream.h, syslog.c, syslog.h, txr.c, txr.h, unwind.c, unwind.h, utf8.c, utf8.h: Synchronize license header with LICENSE.
* * configure: Add a check, in the case that we cannot make anKaz Kylheku2014-07-221-6/+14
| | | | | | | | | | | | | | | | | executable, whether this is due to being required to use C99. For instance, the Solaris environment requires compilation using the C99 dialect if _XOPEN_SOURCE is set to 600 or higher. * debug.c: When compiling as C99, we have to obey the special C99 conventions for instantiating inline functions. * hash.c: Likewise. * lib.c: Likewise. * parser.y: Likewise. * unwind.c: Likewise.
* * RELNOTES: Updated.Kaz Kylheku2014-07-221-1/+1
| | | | | | | | * configure, txr.1: Bumped version. * share/txr/stdlib/ver.txr: Likewise * arith.c (log2): Change to static.
* * Makefile (conftest, conftest2): Link mathKaz Kylheku2014-07-181-1/+19
| | | | | | | | | | | | | | | | | | | library so we can test for math functions. * arith.c (log2_init): New static function. (log2, logtwo): New functions. (l2): New static variable. (arith_init): Call log2_init. * configure (lang_flags): Switching _XOPEN_SOURCE from 500 to 600 to reveal log2. Adding test for log2. * eval.c (eval_init): Register log2 intrinsic. * lib.h (logtwo): Declared. * txr.1: Documented log2.
* Version 92.txr-92Kaz Kylheku2014-07-101-1/+1
| | | | | | | | * RELNOTES: Updated. * configure, txr.1: Bumped version. * share/txr/stdlib/ver.txr: Likewise
* Version 91.txr-91Kaz Kylheku2014-07-021-1/+1
|
* * Makefile: use $(EXE) in install: recipe.Kaz Kylheku2014-07-021-1/+1
| | | | * configure: set up EXE variable in config.make, not exe.
* Version 90txr-90Kaz Kylheku2014-06-111-1/+1
|
* * Makefile (txr.o): Pass TXR_VER preprocessor symbol on gcc commandKaz Kylheku2014-06-111-3/+5
| | | | | | | | | | | | | | | | | | | | line. (PREINSTALL): New variable holding a step for the install recipe. (pax tar zip): New targets. * configure (txr_ver): Version now added to config.make, passed through to txr.c. (gen_config_make): bindir, datadir and mandir are established using gmake's regular macro assignment (=) rather than expanding assignment (:=). This allows us to override the prefix variable after configure time. * lib.h (wli_noex): New macro. (wli): Retarget to wli_noex, so that argument is subject to macro replacement. * txr.c (version): Use TXR_VER defined on compiler command line, rather than hard-coded string literal.
* 2014-06-10 Kaz Kylheku <kaz@kylheku.com>Kaz Kylheku2014-06-101-13/+19
| | | | | | | | | | | | | | | * Makefile (PROG): Removing ./ prefix from variable name; adding it to invocations of $(PROG) in some rules. (txr.o): Pass several strings as macros on the command line: TXR_REL_PATH, EXE_SUFF and PROG_NAME. * configure (bindir, datadir, mandir): These variables become just relative paths from the prefix. * txr.c (sysroot): Use the TXR_REL_PATH, EXE_SUFF and PROG_NAME preprocessor symbols defined on the command line to avoid hard-coding strings like "bin/txr" and "bin/txr.exe" which actually should reflect the value of the bindir variable.
* * configure: tabs to spaces.Kaz Kylheku2014-06-061-21/+21
|
* * configure (lang_flags): Removing -D_BSD_SOURCEKaz Kylheku2014-06-051-2/+39
| | | | | | | | | | | | from lang_flags. Adding a test for determining which flag reveals BSD functions. This is due to the braindamaged way feature selection macros work on FreeBSD. There is no way to say "give me only the functions from a certain version of the Unix spec, plus traditional BSD functions", so we have to resort to using the internal symbol __BSD_VISIBLE. Also, changing the detection test for daemon function to the pointer-based approach.
* * configure (lang_flags): drop -D_POSIX_C_SOURCE=199309L.Kaz Kylheku2014-06-041-1/+1
| | | | This is subsumed by -D_XOPEN_SOURCE=500.
* * configure: Typo in diagnostic output: wspawnlp.Kaz Kylheku2014-06-041-1/+1
|
* Changes for FreeBSD 9.Kaz Kylheku2014-06-041-2/+1
| | | | | | | | | * configure: Use pointer-based test for timegm, because -Werror=implicit-function-declaration does not work in the gcc 4.2 used on FreeBSD 9. * parser.l: Check for Flex 2.5.9 and earlier which don't have yylex_destroy. Thanks to Marcus Breiing.
* * configure: Changes for building on Solaris 10 using theKaz Kylheku2014-06-041-7/+8
| | | | | | | | | /usr/bin/xpg4/sh shell. Solaris' /bin/sh does not like test -e. Adding break to the new shell existence testing loop so we use the first shell in the list. Solaris wants _XOPEN_SOURCE=500 to reveal certain functions. Fix breakage in the make utility detection, and also use the $make variable everywhere instead of make.
* * configure: Defend against legacy, non-POSIX /bin/sh implementations.Kaz Kylheku2014-06-041-0/+21
| | | | | | | We boostrap using #!/bin/sh, but try to detect a better shell and re-execute the script with that shell. Furthermore, we now set up the SHELL variable in config.make, so that make uses that shell for executing build recipes.
* Version 89txr-89Kaz Kylheku2014-05-101-1/+1
|
* Version 88txr-88Kaz Kylheku2014-04-041-19/+21
|
* Version 87.txr-87Kaz Kylheku2014-03-221-1/+1
|
* Version 86.txr-86Kaz Kylheku2014-03-161-1/+1
|
* * configure: Detect _wspawn* functions.Kaz Kylheku2014-03-161-0/+21
| | | | * stream.c (run): Implement using _wspawnvp on MinGW.
* On platforms with sigaltstack, TXR programs can now catch theKaz Kylheku2014-03-131-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | segmentation fault that occurs when running out of stack space, and escape by throwing an exception. Also, bugfix: save and restore the gc enable/disable state. Without this, if we are ever running cod in a gc disabled state and it jumps out, gc stays disabled. * configure: added check for sigaltstack. * gc.h (gc_enabled): Declaration added for existing variable. * signal.c (is_cpu_exception): New static function. (sig_handler): For cpu_exception type signals that pertain to the execution of some instruction, turn on async_sig_enabled, so that the signal is not deferred. Otherwise we will just return without calling the user-defined handler, restart the instruction and get into a loop. Also, disable gc around the handler just in case. One issue is that we might be on an alternate stack, which gc won't like. (setup_alt_stack, teardown_alt_stack): New static functions. (set_sig_handler): If we have sigaltstack, and are asked to set up a SEGV handler, then set it up on the alternate stack. * signal.h (extended_jmp_buf): Adding new member, gc. (extended_setjmp, extended_longjmp): use gc member to save and restore the gc_enable state across setjmp and longjmp.
* * configure: new test for fcntl.Kaz Kylheku2014-03-111-0/+24
| | | | | | | | | | | * stream.c (open_process): Fixed off-by one erroneous value of nargs, causing memory leak of one string. Fixed memory leak on fork failure. Fixed a deadlock that can occur in the pipe close function when multiple pipes are in existence. This is fixed by setting the FD_CLOEXEC flag on the pipe file descriptor. Without this, one child process can hold another's pipe open, causing that other one not to terminate when we're trying to shut it down, resulting in that child blocked on a write, while we block on waitpid.
* Version 85.txr-85Kaz Kylheku2014-03-081-1/+1
|
* Version 84.txr-84Kaz Kylheku2014-03-071-1/+1
|
* Version 83txr-83Kaz Kylheku2014-03-021-1/+1
| | | | | | | | | | | | * txr.c (version): Bumped. * txr.1: Bumped version, set date. * configure (txr_ver): Bumped. * RELNOTES: Updated * dep.mk: Updated.
* * configure: changed numerous "if ! conftest" tests to "if conftest",Kaz Kylheku2014-03-011-66/+67
| | | | swapping around the consequent and alternative clauses.
* * configure (conftest, conftest_o): New functionsKaz Kylheku2014-03-011-71/+62
| | | | | | Use functions throughout tests instead of repeated code for removing target, invoking make with redirection and testing for existence of target.
* Version 82.txr-82Kaz Kylheku2014-02-271-1/+1
|
* Version 81txr-81Kaz Kylheku2014-02-261-1/+1
| | | | | | | | | | * txr.c (version): Bumped. * txr.1: Bumped version and set date. * configure (txr_ver): Bumped. * RELNOTES, txr.vim: Updated.
* * configure: Make it an error to have implicit function declarations byKaz Kylheku2014-02-251-10/+14
| | | | | | | | | | | means of -Werror=implicit-function-declarations. Fix broken mkdir and mknod tests. Regenerate config.make if we add -U__STRICT_ANSI__ to the compiler options, so that later tests benefit from this. Regenerate config.make right away if adding -D_DARWIN_C_SOURCE. This allows the makedev test to pass. * stream.c: Include <sys/types.h> for makedev. (mknod_wrap): Don't rely on makedev wrappers to be there; test.
* * configure: Use -Werror= on the missing prototypes andKaz Kylheku2014-02-251-1/+1
| | | | strict prototypes warnings; these should be errors.
* * configure: Added feature tests for makedev, link/symlink/readlink,Kaz Kylheku2014-02-251-0/+89
| | | | | | | | | | | | | | mkdir and mknod. * eval.c (eval_init): Wrap #ifdefs around the registrations of the wrappers for these functions. * stream.c (mkdir_wrap): Wrap in #ifdef HAVE_MKDIR, and provide a Windows version if HAVE_MKDIR is missing, but HAVE_WINDOWS_H is true. (makedev_wrap, major_wrap, minor_wrap): Wrap with #if HAVE_MAKEDEV. (mknod): Use #if HAVE_MKNOD. (symlink_wrap, link_wrap, readlink_wrap): Wrap with #if HAVE_SYMLINK.
* Version 80txr-80Kaz Kylheku2014-02-171-1/+1
| | | | | | | | | | * txr.c (version): Bumped. * txr.1: Bumped version and set date. * configure (txr_ver): Bumped. * RELNOTES, txr.vim, dep.mk: Updated.
* Version 79txr-79Kaz Kylheku2014-02-111-1/+1
|
* Version 78.txr-78Kaz Kylheku2014-02-061-1/+1
|
* * configure: remove stray debugging printf from theKaz Kylheku2014-01-311-1/+0
| | | | GNU Make check. This was introduced in May 2012.
* Version 77txr-77Kaz Kylheku2014-01-291-1/+1
|
* Version 76txr-76Kaz Kylheku2014-01-231-1/+1
|
* Version 75.txr-75Kaz Kylheku2014-01-161-1/+1
|
* Version 74txr-74Kaz Kylheku2014-01-131-1/+1
| | | | | | | | | | * txr.c (version): Bumped. * txr.1: Bumped version and set date. * configure (txr_ver): Bumped. * RELNOTES, txr.vim, dep.mk: Updated.
* Mac OSX Upkeep.Kaz Kylheku2014-01-131-9/+21
| | | | | | | | | * configure: (need_svid_source, need_bsd_source): Variables removed. (need_darwin_c_source): New variable. Detect Apple environment and add -D_DARWIN_C_SOURCE, which is needed to reveal some functions in headers. * signal.c (sig_init): Wrap #ifdefs around SIGPOLL; it is not defined on Darwin.
* * configure: Detect platforms which don't reveal declarationsKaz Kylheku2014-01-101-0/+23
| | | | | | | | | | | | | | in C headers which are extensions to standard C, like popen or fileno, in response to standard feature selection macros like -D_POSIX_SOURCE. MinGW and Cygwin are offenders. These platforms hide the declarations when gcc is in -ansi mode, by testing for __STRICT_ANSI__. Turns out, however, that -U__STRICT_ANSI__ on the gcc command line strips this away, causing the declarations to be revealed. * lib.c, parser.l, stream.c, utf8.c: Removed the declarations which compensated for the above problem. Yippee! Fuck you, stupid Cygwin troglodytes, and the MinGW horse you rode in on. http://cygwin.com/ml/cygwin/2011-10/msg00131.html