From 5150553d37972c79a9df38489d4937f05fccdd1a Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Fri, 17 Mar 2023 17:14:27 +0100 Subject: intl: Simplify use of vasnprintf from Gnulib. * autogen.sh (GNULIB_MODULES_LIBINTL): Use vasnprintf-posix instead of vasnprintf. * gettext-runtime/intl/vasnprintf.h: Remove file, moved to gnulib. * gettext-runtime/intl/Makefile.am (EXTRA_DIST): Remove vasnprintf.h. (printf.lo): Simplify dependencies accordingly. --- autogen.sh | 2 +- gettext-runtime/intl/Makefile.am | 3 +- gettext-runtime/intl/vasnprintf.h | 76 --------------------------------------- 3 files changed, 2 insertions(+), 79 deletions(-) delete mode 100644 gettext-runtime/intl/vasnprintf.h diff --git a/autogen.sh b/autogen.sh index 6858e9799..842cb56fd 100755 --- a/autogen.sh +++ b/autogen.sh @@ -119,7 +119,7 @@ if ! $skip_gnulib; then lock relocatable-lib-lgpl tsearch - vasnprintf + vasnprintf-posix vasnwprintf-posix ' GNULIB_SETLOCALE_DEPENDENCIES=`$GNULIB_TOOL --extract-dependencies setlocale | sed -e 's/ .*//'` diff --git a/gettext-runtime/intl/Makefile.am b/gettext-runtime/intl/Makefile.am index 806d722f4..1eff31b45 100644 --- a/gettext-runtime/intl/Makefile.am +++ b/gettext-runtime/intl/Makefile.am @@ -71,7 +71,6 @@ EXTRA_DIST += \ loadinfo.h \ plural-exp.h \ eval-plural.h \ - vasnprintf.h \ intl-exports.c os2compat.h os2compat.c \ libgnuintl.in.h @@ -364,7 +363,7 @@ plural.lo: ../config.h $(srcdir)/plural-exp.h $(PLURAL_DEPS) plural-exp.lo: ../config.h $(srcdir)/plural-exp.h langprefs.lo: ../config.h log.lo: ../config.h -printf.lo: ../config.h $(srcdir)/vasnprintf.h +printf.lo: ../config.h setlocale.lo: ../config.h $(srcdir)/gettextP.h libgnuintl.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h version.lo: ../config.h libgnuintl.h osdep.lo: ../config.h $(srcdir)/intl-exports.c $(srcdir)/os2compat.c diff --git a/gettext-runtime/intl/vasnprintf.h b/gettext-runtime/intl/vasnprintf.h deleted file mode 100644 index e58bd40cf..000000000 --- a/gettext-runtime/intl/vasnprintf.h +++ /dev/null @@ -1,76 +0,0 @@ -/* vsprintf with automatic memory allocation. - Copyright (C) 2002-2004, 2012 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published by - the Free Software Foundation; either version 2.1 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -#ifndef _VASNPRINTF_H -#define _VASNPRINTF_H - -/* Get va_list. */ -#include - -/* Get size_t. */ -#include - -#ifndef __attribute__ -/* This feature is available in gcc versions 2.5 and later. */ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ -# define __attribute__(Spec) /* empty */ -# endif -/* The __-protected variants of 'format' and 'printf' attributes - are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) -# define __format__ format -# define __printf__ printf -# endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* Write formatted output to a string dynamically allocated with malloc(). - You can pass a preallocated buffer for the result in RESULTBUF and its - size in *LENGTHP; otherwise you pass RESULTBUF = NULL. - If successful, return the address of the string (this may be = RESULTBUF - if no dynamic memory allocation was necessary) and set *LENGTHP to the - number of resulting bytes, excluding the trailing NUL. Upon error, set - errno and return NULL. - - When dynamic memory allocation occurs, the preallocated buffer is left - alone (with possibly modified contents). This makes it possible to use - a statically allocated or stack-allocated buffer, like this: - - char buf[100]; - size_t len = sizeof (buf); - char *output = vasnprintf (buf, &len, format, args); - if (output == NULL) - ... error handling ...; - else - { - ... use the output string ...; - if (output != buf) - free (output); - } - */ -extern char * asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...) - __attribute__ ((__format__ (__printf__, 3, 4))); -extern char * vasnprintf (char *resultbuf, size_t *lengthp, const char *format, va_list args) - __attribute__ ((__format__ (__printf__, 3, 0))); - -#ifdef __cplusplus -} -#endif - -#endif /* _VASNPRINTF_H */ -- cgit v1.2.1