From 08ba80225e23f3277c4db18c53de2468c7ecc228 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Fri, 15 Sep 2023 18:43:46 -0400 Subject: [PATCH] Obsolete sys/time.h and HAVE_TIME_WITH_SYS_TIME --- citadel/server/threads.h | 2 +- ctdlsalearn/src/sockets.c | 2 +- ctdlsh/ctdlsh.h | 4 +- libcitadel/lib/decode.c | 6 +- libcitadel/lib/html_to_ascii.c | 15 +---- libcitadel/lib/tools.c | 16 +---- libcitadel/lib/vcard.c | 15 +---- libcitadel/lib/vnote.c | 15 +---- libcitadel/lib/xdgmime/xdgmime.c | 3 +- webcit-ng/server/webcit.h | 2 +- webcit/configure.ac | 106 +++++++++++++++++++------------ 11 files changed, 79 insertions(+), 107 deletions(-) diff --git a/citadel/server/threads.h b/citadel/server/threads.h index 0e28333ee..6441c8552 100644 --- a/citadel/server/threads.h +++ b/citadel/server/threads.h @@ -8,7 +8,7 @@ #include #endif -#include +#include #include #include "server.h" #include "sysdep_decls.h" diff --git a/ctdlsalearn/src/sockets.c b/ctdlsalearn/src/sockets.c index 75e145c96..a8f1fb023 100644 --- a/ctdlsalearn/src/sockets.c +++ b/ctdlsalearn/src/sockets.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/ctdlsh/ctdlsh.h b/ctdlsh/ctdlsh.h index 043d42b15..bbf03692c 100644 --- a/ctdlsh/ctdlsh.h +++ b/ctdlsh/ctdlsh.h @@ -1,7 +1,7 @@ /* * main header file for ctdlsh * - * Copyright (c) 2009-2013 by the citadel.org team + * Copyright (c) 2009-2023 by the citadel.org team * This program is open source software, cheerfully made available to * you under the terms of the GNU General Public License version 3. */ @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/libcitadel/lib/decode.c b/libcitadel/lib/decode.c index 10bde0ce0..b2a93a9a5 100644 --- a/libcitadel/lib/decode.c +++ b/libcitadel/lib/decode.c @@ -15,13 +15,9 @@ #include #include #include +#include #include "libcitadel.h" -#if TIME_WITH_SYS_TIME -# include -# include -#endif - // This is the non-define version in case it is needed for debugging #if 0 diff --git a/libcitadel/lib/html_to_ascii.c b/libcitadel/lib/html_to_ascii.c index 3c1012f00..c57a5020e 100644 --- a/libcitadel/lib/html_to_ascii.c +++ b/libcitadel/lib/html_to_ascii.c @@ -1,5 +1,5 @@ // Functions which handle translation between HTML and plain text -// Copyright (c) 2000-2022 by the citadel.org team +// Copyright (c) 2000-2023 by the citadel.org team // // This program is open source software. Use, duplication, or disclosure // is subject to the terms of the GNU General Public License, version 3. @@ -14,18 +14,7 @@ #include #include #include - -#if TIME_WITH_SYS_TIME -# include -# include -#else -# if HAVE_SYS_TIME_H -# include -# else -# include -# endif -#endif - +#include #include "libcitadel.h" diff --git a/libcitadel/lib/tools.c b/libcitadel/lib/tools.c index 2b5066d95..4eda91bff 100644 --- a/libcitadel/lib/tools.c +++ b/libcitadel/lib/tools.c @@ -1,7 +1,7 @@ // A basic toolset containing miscellaneous functions for string manipluation, // encoding/decoding, and a bunch of other stuff. // -// Copyright (c) 1987-2022 by the citadel.org team +// Copyright (c) 1987-2023 by the citadel.org team // // This program is open source software. Use, duplication, or disclosure // is subject to the terms of the GNU General Public License, version 3. @@ -16,21 +16,9 @@ #include #include #include - -#if TIME_WITH_SYS_TIME -# include -# include -#else -# if HAVE_SYS_TIME_H -# include -# else -# include -# endif -#endif - +#include #include "libcitadel.h" - #define TRUE 1 #define FALSE 0 diff --git a/libcitadel/lib/vcard.c b/libcitadel/lib/vcard.c index b58f61c96..a3ea54c79 100644 --- a/libcitadel/lib/vcard.c +++ b/libcitadel/lib/vcard.c @@ -1,7 +1,7 @@ /* * vCard implementation for Citadel * - * Copyright (C) 1999-2008 by the citadel.org development team. + * Copyright (C) 1999-2023 by the citadel.org development team. * // This program is open source software. Use, duplication, or disclosure // is subject to the terms of the GNU General Public License, version 3. @@ -13,18 +13,7 @@ #include #include #include - -#if TIME_WITH_SYS_TIME -# include -# include -#else -# if HAVE_SYS_TIME_H -# include -# else -# include -# endif -#endif - +#include #include #include #include diff --git a/libcitadel/lib/vnote.c b/libcitadel/lib/vnote.c index 4460c3323..59b95208f 100644 --- a/libcitadel/lib/vnote.c +++ b/libcitadel/lib/vnote.c @@ -1,6 +1,6 @@ // vNote implementation for Citadel // -// Copyright (C) 1999-2007 by the citadel.org development team. +// Copyright (C) 1999-2023 by the citadel.org development team. // // This program is open source software. Use, duplication, or disclosure // is subject to the terms of the GNU General Public License, version 3. @@ -11,18 +11,7 @@ #include #include #include - -#if TIME_WITH_SYS_TIME -# include -# include -#else -# if HAVE_SYS_TIME_H -# include -# else -# include -# endif -#endif - +#include #include #include #include diff --git a/libcitadel/lib/xdgmime/xdgmime.c b/libcitadel/lib/xdgmime/xdgmime.c index 872b92923..aa435944d 100644 --- a/libcitadel/lib/xdgmime/xdgmime.c +++ b/libcitadel/lib/xdgmime/xdgmime.c @@ -1,4 +1,3 @@ -/* -*- mode: C; c-file-style: "gnu" -*- */ /* xdgmime.c: XDG Mime Spec mime resolver. Based on version 0.11 of the spec. * * More info can be found at http://www.freedesktop.org/standards/ @@ -40,7 +39,7 @@ #include #include #include -#include +#include #include #include diff --git a/webcit-ng/server/webcit.h b/webcit-ng/server/webcit.h index 72f98f7f4..d06e3800c 100644 --- a/webcit-ng/server/webcit.h +++ b/webcit-ng/server/webcit.h @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/webcit/configure.ac b/webcit/configure.ac index 88644475f..6dfc88519 100644 --- a/webcit/configure.ac +++ b/webcit/configure.ac @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. dnl $Id$ -AC_INIT([WebCit],m4_esyscmd_s([grep CLIENT_VERSION webcit.h | sed 's/[^0-9]*//g']),[http://uncensored.citadel.org]) +AC_INIT([WebCit],[m4_esyscmd_s(grep CLIENT_VERSION webcit.h | sed 's/[^0-9]*//g')],[http://uncensored.citadel.org]) AC_SUBST(PROG_SUBDIRS) AC_DEFINE(PROG_SUBDIRS, [], [Program dirs]) @@ -11,7 +11,7 @@ AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) dnl Make sure we see all GNU and Solaris extensions. -AC_GNU_SOURCE +AC_USE_SYSTEM_EXTENSIONS AC_CHECK_PROG(SED, sed, sed, no) AC_PREFIX_DEFAULT(/usr/local/webcit) @@ -84,24 +84,29 @@ AC_SEARCH_LIBS(gethostbyname, nsl) AC_SEARCH_LIBS(connect, socket) dnl Checks for header files. -AC_HEADER_STDC +m4_warn([obsolete], +[The preprocessor macro `STDC_HEADERS' is obsolete. + Except in unusual embedded environments, you can safely include all + ISO C90 headers unconditionally.])dnl +# Autoupdate added the next two lines to ensure that your configure +# script's behavior did not change. They are probably safe to remove. +AC_CHECK_INCLUDES_DEFAULT +AC_PROG_EGREP + dnl AC_HEADER_SYS_WAIT AC_CHECK_FUNCS(crypt gethostbyname connect flock getpwnam_r getpwuid_r getloadavg) AC_CACHE_CHECK( [for call semantics from getpwuid_r], ac_cv_call_getpwuid_r, - [AC_TRY_COMPILE([#include -#include ], - [ + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include +#include ]], [[ struct passwd pw, *pwp; char pwbuf[64]; uid_t uid; getpwuid_r(uid, &pw, pwbuf, sizeof(pwbuf), &pwp); - ], - ac_cv_call_getpwuid_r=yes, - ac_cv_call_getpwuid_r=no) + ]])],[ac_cv_call_getpwuid_r=yes],[ac_cv_call_getpwuid_r=no]) ]) if test $ac_cv_call_getpwuid_r = no; then @@ -129,10 +134,35 @@ AC_CHECK_SIZEOF(int, 0) AC_CHECK_SIZEOF(long, 0) AC_CHECK_SIZEOF(long unsigned int, 0) AC_CHECK_SIZEOF(size_t, 0) -dnl AC_HEADER_TIME +dnl m4_warn([obsolete], +[Update your code to rely only on HAVE_SYS_TIME_H, +then remove this warning and the obsolete code below it. +All current systems provide time.h; it need not be checked for. +Not all systems provide sys/time.h, but those that do, all allow +you to include it and time.h simultaneously.])dnl +AC_CHECK_HEADERS_ONCE([sys/time.h]) +# Obsolete code to be removed. +if test $ac_cv_header_sys_time_h = yes; then + AC_DEFINE([TIME_WITH_SYS_TIME],[1],[Define to 1 if you can safely include both + and . This macro is obsolete.]) +fi +# End of obsolete code. + dnl Checks for library functions. -AC_TYPE_SIGNAL +m4_warn([obsolete], +[your code may safely assume C89 semantics that RETSIGTYPE is void. +Remove this warning and the `AC_CACHE_CHECK' when you adjust the code.])dnl +AC_CACHE_CHECK([return type of signal handlers],[ac_cv_type_signal],[AC_COMPILE_IFELSE( +[AC_LANG_PROGRAM([#include +#include +], + [return *(signal (0, 0)) (0) == 1;])], + [ac_cv_type_signal=int], + [ac_cv_type_signal=void])]) +AC_DEFINE_UNQUOTED([RETSIGTYPE],[$ac_cv_type_signal],[Define as the return type of signal handlers + (`int' or `void').]) + dnl AC_FUNC_VPRINTF AC_REPLACE_FUNCS(snprintf) AC_CHECK_HEADER(CUnit/CUnit.h, [AC_DEFINE(ENABLE_TESTS, [], [whether we should compile the test-suite])]) @@ -164,7 +194,7 @@ AC_ARG_ENABLE(iconv, ok_iconv=no, ok_iconv=yes) AC_MSG_CHECKING(Checking to see if your system supports iconv) -AC_TRY_RUN([ +AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include main() { iconv_t ic = (iconv_t)(-1) ; @@ -172,40 +202,36 @@ AC_TRY_RUN([ iconv_close(ic); exit(0); } - ], - [ + ]])],[ ok_iconv=yes AC_MSG_RESULT([yes]) - ], - [ + ],[ ok_iconv=no AC_MSG_RESULT([no]) - ] -) + +],[]) dnl Check for iconv in external libiconv if test "$ok_iconv" = no; then AC_MSG_CHECKING(Checking for an external libiconv) OLD_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -liconv" - AC_TRY_RUN([ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include main() { iconv_t ic = (iconv_t)(-1) ; ic = iconv_open("UTF-8", "us-ascii"); iconv_close(ic); } - ], - [ + ]])],[ ok_iconv=yes AC_MSG_RESULT([yes]) - ], - [ + ],[ ok_iconv=no LDFLAGS="$OLD_LDFLAGS" AC_MSG_RESULT([no]) - ] - ) + + ],[]) fi if test "$ok_iconv" != "no"; then AC_MSG_RESULT(webcit will be built with character set conversion.) @@ -259,7 +285,7 @@ AC_CHECK_HEADER(libcitadel.h, ) AC_MSG_CHECKING([whether your system likes memcpy + HKEY]) -AC_TRY_COMPILE([ +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #define _GNU_SOURCE #include #include @@ -272,21 +298,18 @@ AC_TRY_COMPILE([ #include #include "lib/libcitadel.h" -], -[ +]], [[ char foo[22]; memcpy(foo, HKEY("foo")); -], - [ +]])],[ AC_MSG_RESULT([yes]) - ], - [ + ],[ AC_DEFINE(UNDEF_MEMCPY, [], [whether we need to undefine memcpy]) AC_MSG_RESULT([no]) - ] -) + +]) dnl Checks for the Expat XML parser. AC_CHECK_HEADER(expat.h, @@ -350,8 +373,7 @@ if test "$with_ssl" != "no"; then # Basic test to check for compatible version and correct linking # *does not* test for RSA - that comes later. - AC_TRY_RUN( - [ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include int main(void) @@ -361,12 +383,11 @@ if test "$with_ssl" != "no"; then RAND_add(a, sizeof(a), sizeof(a)); return(RAND_status() <= 0); } - ], - [ + ]])],[ found_crypto=1 break; - ], [] - ) + ],[ + ],[]) if test ! -z "$found_crypto" ; then break; @@ -576,8 +597,9 @@ abs_builddir="`pwd`" if test "$abs_srcdir" != "$abs_builddir"; then CFLAGS="$CFLAGS -I $abs_builddir" fi -AC_CONFIG_HEADER(sysdep.h) -AC_OUTPUT(Makefile po/webcit/Makefile) +AC_CONFIG_HEADERS([sysdep.h]) +AC_CONFIG_FILES([Makefile po/webcit/Makefile]) +AC_OUTPUT if test "$abs_srcdir" != "$abs_builddir"; then ln -s $abs_srcdir/static $abs_builddir -- 2.30.2