Index: ossp-pkg/l2/ChangeLog RCS File: /v/ossp/cvs/ossp-pkg/l2/ChangeLog,v co -q -kk -p'1.21' '/v/ossp/cvs/ossp-pkg/l2/ChangeLog,v' | diff -u /dev/null - -L'ossp-pkg/l2/ChangeLog' 2>/dev/null --- ossp-pkg/l2/ChangeLog +++ - 2024-05-04 19:24:09.213468020 +0200 @@ -0,0 +1,124 @@ + _ ___ ____ ____ ____ _ ____ + |_|_ _ / _ \/ ___/ ___|| _ \ | |___ \ + _|_||_| | | | \___ \___ \| |_) | | | __) | + |_||_|_| | |_| |___) |__) | __/ | |/ __/ + |_|_|_| \___/|____/____/|_| |_|_____| + + OSSP l2 -- Flexible Logging + + ChangeLog + ========= + + Changes between 0.9.9 and 0.9.10 (01-Feb-2005 to 03-Feb-2005) + + *) Add va_copy() Autoconf checks to make va_list copying portable. + [Ralf S. Engelschall ] + + *) Accept new GNU Bison 2.0 + [Ralf S. Engelschall ] + + Changes between 0.9.8 and 0.9.9 (24-Apr-2004 to 01-Feb-2005) + + *) Import OSSP sa 1.2.4 + [Thomas Lotterer ] + + *) Upgraded build environment to GNU shtool 2.0.1 and + GNU libtool 1.5.10. + [Ralf S. Engelschall ] + + *) Adjust copyright messages for new year 2005. + [Ralf S. Engelschall ] + + Changes between 0.9.7 and 0.9.8 (22-Apr-2004 to 22-Apr-2004) + + *) Change devtool.conf %import of OSSP sa to inject a faked + HAVE_CONFIG_H. This unbreaks preprocessor conditions and fixes + building on Solaris 2.6 + [Thomas Lotterer ] + + Changes between 0.9.6 and 0.9.7 (21-Apr-2004 to 22-Apr-2004) + + *) Replace modf(3) calls in l2_ut_format.c with a hand-crafted + inlined l2_util_modf() function to avoid dependency to external + libm on systems where modf(3) is not part of libc, i.e. Tru64 and + QNX. Reported by Karl Vogel. + [Ralf S. Engelschall ] + + Changes between 0.9.5 and 0.9.6 (10-Nov-2003 to 21-Apr-2004) + + *) Create devtool.conf %import and import OSSP sa 1.2.0 + [Thomas Lotterer ] + + Changes between 0.9.4 and 0.9.5 (25-Sep-2003 to 10-Nov-2003) + + *) Remove log0...4 macros + [Thomas Lotterer ] + + *) Minor adjustments porting to OpenDarwin 6.6 + [Thomas Lotterer ] + + *) Fix Problem where l2 does not terminate a message when it + contains a \n so if previous message was longer the part between + \n and the end of the previous message is repeated in the current + message. + http://cvs.ossp.org/tktview?tn=23 + [Thomas Lotterer ] + + *) Added bison-locations option to scanner, fixing the missing + reentrant yylloc with flex-2.5.31. + [Michael Schloh ] + + Changes between 0.9.3 and 0.9.4 (15-Sep-2003 to 25-Sep-2003) + + *) Change jitter option in file channel from flag to count. + [Thomas Lotterer ] + + *) Add monitor option to file channel. + [Thomas Lotterer ] + + Changes between 0.9.2 and 0.9.3 (30-Jun-2003 to 15-Sep-2003) + + *) Make sure prefix channel does atomar downstream writes + [Ralf S. Engelschall ] + + Changes between 0.9.1 and 0.9.2 (11-Oct-2002 to 30-Jun-2003) + + *) Introduce "trunc=" option for file channel; keep support for + obsolete "append" option. + [Thomas Lotterer ] + + *) Change default mode for file channel to "append". + [Thomas Lotterer ] + + *) Fix array too small by one element bug in fd and file channels. + [Thomas Lotterer ] + + *) Add jitter option to file channel. + [Thomas Lotterer ] + + Changes between 0.9.0 and 0.9.1 (30-Jul-2002 to 11-Oct-2003) + + *) Changed "filedescriptor" to "fs" in file descriptor channel + configuration. + [Thomas Lotterer ] + + *) Upgraded to GNU autoconf 2.54. + [Ralf S. Engelschall ] + + *) Simplify install/uninstall Makefile targets + [Ralf S. Engelschall ] + + *) Fixed uname(3) usage in prefix channel. + [Ralf S. Engelschall ] + + *) Fixed memory leak in l2_util_vasprintf(). + [Ralf S. Engelschall ] + + *) Upgraded to latest OSSP sa. + [Ralf S. Engelschall ] + + Changes between *GENESIS* and 0.9.0 (30-Jul-2002 to 30-Jul-2002) + + *) Initial release. + [Ralf S. Engelschall ] + Index: ossp-pkg/l2/aclocal.m4 RCS File: /v/ossp/cvs/ossp-pkg/l2/aclocal.m4,v rcsdiff -q -kk '-r1.16' '-r1.17' -u '/v/ossp/cvs/ossp-pkg/l2/aclocal.m4,v' 2>/dev/null --- aclocal.m4 2005/01/24 15:03:17 1.16 +++ aclocal.m4 2005/02/03 09:40:34 1.17 @@ -417,3 +417,114 @@ fi ]) +dnl ## +dnl ## Check for C99 va_copy() implementation +dnl ## (and provide fallback implementation if neccessary) +dnl ## +dnl ## configure.in: +dnl ## CHECK_VA_COPY +dnl ## foo.c: +dnl ## #include "config.h" +dnl ## [...] +dnl ## va_copy(d,s) +dnl ## +dnl ## This check is rather complex: first because we really have to +dnl ## try various possible implementations in sequence and second, we +dnl ## cannot define a macro in config.h with parameters directly. +dnl ## + +dnl # test program for va_copy() implementation +changequote(<<,>>) +m4_define(__va_copy_test, <<[ +#include +#include +#include +#define DO_VA_COPY(d, s) $1 +void test(char *str, ...) +{ + va_list ap, ap2; + int i; + va_start(ap, str); + DO_VA_COPY(ap2, ap); + for (i = 1; i <= 9; i++) { + int k = (int)va_arg(ap, int); + if (k != i) + abort(); + } + DO_VA_COPY(ap, ap2); + for (i = 1; i <= 9; i++) { + int k = (int)va_arg(ap, int); + if (k != i) + abort(); + } + va_end(ap); +} +int main(int argc, char *argv[]) +{ + test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); + exit(0); +} +]>>) +changequote([,]) + +dnl # test driver for va_copy() implementation +m4_define(__va_copy_check, [ + AH_VERBATIM($1, +[/* Predefined possible va_copy() implementation (id: $1) */ +#define __VA_COPY_USE_$1(d, s) $2]) + if test ".$ac_cv_va_copy" = .; then + AC_TRY_RUN(__va_copy_test($2), [ac_cv_va_copy="$1"]) + fi +]) + +dnl # Autoconf check for va_copy() implementation checking +AC_DEFUN(CHECK_VA_COPY,[ + dnl # provide Autoconf display check message + AC_MSG_CHECKING(for va_copy() function) + dnl # check for various implementations in priorized sequence + AC_CACHE_VAL(ac_cv_va_copy, [ + ac_cv_va_copy="" + dnl # 1. check for standardized C99 macro + __va_copy_check(C99, [va_copy((d), (s))]) + dnl # 2. check for alternative/deprecated GCC macro + __va_copy_check(GCM, [VA_COPY((d), (s))]) + dnl # 3. check for internal GCC macro (high-level define) + __va_copy_check(GCH, [__va_copy((d), (s))]) + dnl # 4. check for internal GCC macro (built-in function) + __va_copy_check(GCB, [__builtin_va_copy((d), (s))]) + dnl # 5. check for assignment approach (assuming va_list is a struct) + __va_copy_check(ASS, [do { (d) = (s); } while (0)]) + dnl # 6. check for assignment approach (assuming va_list is a pointer) + __va_copy_check(ASP, [do { *(d) = *(s); } while (0)]) + dnl # 7. check for memory copying approach (assuming va_list is a struct) + __va_copy_check(CPS, [memcpy((void *)&(d), (void *)&(s)), sizeof((s))]) + dnl # 8. check for memory copying approach (assuming va_list is a pointer) + __va_copy_check(CPP, [memcpy((void *)(d), (void *)(s)), sizeof(*(s))]) + if test ".$ac_cv_va_copy" = .; then + AC_ERROR([no working implementation found]) + fi + ]) + dnl # optionally activate the fallback implementation + if test ".$ac_cv_va_copy" = ".C99"; then + AC_DEFINE(HAVE_VA_COPY, 1, [Define if va_copy() macro exists (and no fallback implementation is required)]) + fi + dnl # declare which fallback implementation to actually use + AC_DEFINE_UNQUOTED([__VA_COPY_USE], [__VA_COPY_USE_$ac_cv_va_copy], + [Define to id of used va_copy() implementation]) + dnl # provide activation hook for fallback implementation + AH_VERBATIM([__VA_COPY_ACTIVATION], +[/* Optional va_copy() implementation activation */ +#ifndef HAVE_VA_COPY +#define va_copy(d, s) __VA_COPY_USE(d, s) +#endif +]) + dnl # provide Autoconf display result message + if test ".$ac_cv_va_copy" = ".C99"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no (using fallback implementation)]) + fi + m4_undefine([__va_copy_test]) + m4_undefine([__va_copy_check]) +]) + Index: ossp-pkg/l2/configure.ac RCS File: /v/ossp/cvs/ossp-pkg/l2/configure.ac,v rcsdiff -q -kk '-r1.28' '-r1.29' -u '/v/ossp/cvs/ossp-pkg/l2/configure.ac,v' 2>/dev/null --- configure.ac 2005/01/24 15:03:17 1.28 +++ configure.ac 2005/02/03 09:40:34 1.29 @@ -46,8 +46,8 @@ AC_CHECK_MAINTAINER AC_CONFIGURE_LIBTOOL -AC_CHECK_BISON(BISON, 1.875, [1.[[8-9]][[0-9]]|1.[[8-9]][[0-9]][[0-9]]]) -AC_CHECK_FLEX(FLEX, 2.5.10, [2.5.1[[0-9]]|2.5.[[2-9]][[0-9]]|2.[[6-9]].*]) +AC_CHECK_BISON(BISON, 1.875d, [1.[[8-9]][[0-9]]|1.[[8-9]][[0-9]][[0-9]]]|[2.[[0-9]]]) +AC_CHECK_FLEX(FLEX, 2.5.31, [2.5.1[[0-9]]|2.5.[[2-9]][[0-9]]|2.[[6-9]].*]) AC_CHECK_LIB(nsl, gethostname) if test ".`echo $LIBS | grep nsl`" = . ;then @@ -59,6 +59,8 @@ AC_CHECK_FUNCS(inet_aton inet_pton inet_ntoa inet_ntop snprintf vsnprintf setitimer) +CHECK_VA_COPY + case $PLATFORM in *-*-solaris2.[[6-8]]* ) AC_DEFINE(HAVE_VSYSLOG_USVALIST, 1, [Define to 1 if vsyslog has underscored va_list])