1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-06-15 23:35:50 +00:00

189 Commits

Author SHA1 Message Date
Bruno Haible d171b9454f Rename module math to math-h.
* modules/math-h: Renamed from modules/math.
* modules/math-h-tests: Renamed from modules/math-tests.
* modules/math-h-c++-tests: Renamed from modules/math-c++-tests.
* tests/test-math-h.c: Renamed from tests/test-math.c.
* tests/test-math-h-c++.cc: Renamed from tests/test-math-c++.cc.
* tests/test-math-h-c++2.cc: Renamed from tests/test-math-c++2.cc.
* doc/posix-headers/math.texi: Update.
* modules/* (Depends-on): Update.
* modules/math: New file.
2024-12-27 23:14:22 +01:00
Bruno Haible 3d1b90b454 Rename module float to float-h.
* modules/float-h: Renamed from modules/float.
* modules/float-h-tests: Renamed from modules/float-tests.
* modules/float-h-c++-tests: Renamed from modules/float-c++-tests.
* tests/test-float-h.c: Renamed from tests/test-float.c.
* tests/test-float-h-c++.cc: Renamed from tests/test-float-c++.cc.
* tests/test-float-h-c++2.cc: Renamed from tests/test-float-c++2.cc.
* doc/posix-headers/float.texi: Update.
* modules/* (Depends-on): Update.
* modules/float: New file.
2024-12-27 23:14:08 +01:00
Bruno Haible 3f8e0614d0 logp1l: New module.
* lib/math.in.h (logp1l): New declaration.
* lib/logp1l.c: New file.
* m4/logp1l.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether logp1l is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LOGP1L.
(gl_MATH_H_DEFAULTS): Initialize HAVE_LOGP1L.
* modules/math (Makefile.am): Substitute GNULIB_LOGP1L, HAVE_LOGP1L.
* modules/logp1l: New file.
* doc/posix-functions/logp1l.texi: Mention the new module.
2024-07-29 13:55:28 +02:00
Bruno Haible 4fc589a2d2 logp1f: New module.
* lib/math.in.h (logp1f): New declaration.
* lib/logp1f.c: New file.
* m4/logp1f.m4: New file.
* m4/log1p.m4 (gl_FUNC_LOG1P): Define through AC_DEFUN_ONCE.
* m4/isnand.m4 (gl_FUNC_ISNAND): Define through AC_DEFUN_ONCE.
* m4/math_h.m4 (gl_MATH_H): Test whether logp1f is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LOGP1F.
(gl_MATH_H_DEFAULTS): Initialize HAVE_LOGP1F.
* modules/math (Makefile.am): Substitute GNULIB_LOGP1F, HAVE_LOGP1F.
* modules/logp1f: New file.
* doc/posix-functions/logp1f.texi: Mention the new module.
2024-07-29 13:54:03 +02:00
Bruno Haible 4cab49fa79 logp1: New module.
* lib/math.in.h (logp1): New declaration.
* lib/logp1.c: New file.
* m4/logp1.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether logp1 is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LOGP1.
(gl_MATH_H_DEFAULTS): Initialize HAVE_LOGP1.
* modules/math (Makefile.am): Substitute GNULIB_LOGP1, HAVE_LOGP1.
* modules/logp1: New file.
* doc/posix-functions/logp1.texi: Mention the new module.
2024-07-29 13:02:43 +02:00
Bruno Haible a0e8c0276a totalordermagl: New module.
* lib/math.in.h (totalordermagl): New declaration.
* lib/totalordermagl.c: New file, based on lib/totalorderl.c.
* m4/math_h.m4 (gl_MATH_H): Test whether totalordermagl is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_TOTALORDERMAGL.
(gl_MATH_H_DEFAULTS): Initialize HAVE_TOTALORDERMAGL,
REPLACE_TOTALORDERMAGL.
* modules/math (Makefile.am): Substitute GNULIB_TOTALORDERMAGL,
HAVE_TOTALORDERMAGL, REPLACE_TOTALORDERMAGL.
* modules/totalordermagl: New file, based on modules/totalorderl.
* doc/posix-functions/totalordermagl.texi: Mention the new module.
2024-04-19 02:22:16 +02:00
Bruno Haible 5960f76549 totalordermagf: New module.
* lib/math.in.h (totalordermagf): New declaration.
* lib/totalordermagf.c: New file, based on lib/totalorderf.c.
* m4/math_h.m4 (gl_MATH_H): Test whether totalordermagf is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_TOTALORDERMAGF.
(gl_MATH_H_DEFAULTS): Initialize HAVE_TOTALORDERMAGF,
REPLACE_TOTALORDERMAGF.
* modules/math (Makefile.am): Substitute GNULIB_TOTALORDERMAGF,
HAVE_TOTALORDERMAGF, REPLACE_TOTALORDERMAGF.
* modules/totalordermagf: New file, based on modules/totalorderf.
* doc/posix-functions/totalordermagf.texi: Mention the new module.
2024-04-19 02:21:56 +02:00
Bruno Haible 9b5f6e60d2 totalordermag: New module.
* lib/math.in.h (totalordermag): New declaration.
* lib/totalordermag.c: New file, based on lib/totalorder.c.
* m4/totalordermag.m4: New file, based on m4/totalorder.m4.
* m4/math_h.m4 (gl_MATH_H): Test whether totalordermag is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_TOTALORDERMAG.
(gl_MATH_H_DEFAULTS): Initialize HAVE_TOTALORDERMAG,
REPLACE_TOTALORDERMAG.
* modules/math (Makefile.am): Substitute GNULIB_TOTALORDERMAG,
HAVE_TOTALORDERMAG, REPLACE_TOTALORDERMAG.
* modules/totalordermag: New file, based on modules/totalorder.
* doc/posix-functions/totalordermag.texi: Mention the new module.
2024-04-19 02:21:21 +02:00
Bruno Haible 63f3bcdc9a getpayloadl: New module.
* lib/math.in.h (getpayloadl): New declaration.
* lib/getpayloadl.c: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether getpayloadl is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_GETPAYLOADL.
(gl_MATH_H_DEFAULTS): Initialize HAVE_GETPAYLOADL, REPLACE_GETPAYLOADL.
* modules/math (Makefile.am): Substitute GNULIB_GETPAYLOADL,
HAVE_GETPAYLOADL, REPLACE_GETPAYLOADL.
* modules/getpayloadl: New file.
* doc/posix-functions/getpayloadl.texi: Mention the new module and the
glibc bug.
2024-04-17 15:39:33 +02:00
Bruno Haible 282b03a5af getpayloadf: New module.
* lib/math.in.h (getpayloadf): New declaration.
* lib/getpayloadf.c: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether getpayloadf is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_GETPAYLOADF.
(gl_MATH_H_DEFAULTS): Initialize HAVE_GETPAYLOADF, REPLACE_GETPAYLOADF.
* modules/math (Makefile.am): Substitute GNULIB_GETPAYLOADF,
HAVE_GETPAYLOADF, REPLACE_GETPAYLOADF.
* modules/getpayloadf: New file.
* doc/posix-functions/getpayloadf.texi: Mention the new module and the
glibc bug.
2024-04-17 15:38:34 +02:00
Bruno Haible 20b8f23dca getpayload: New module.
* lib/math.in.h (getpayload): New declaration.
* lib/getpayload.c: New file.
* m4/getpayload.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether getpayload is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_GETPAYLOAD.
(gl_MATH_H_DEFAULTS): Initialize HAVE_GETPAYLOAD, REPLACE_GETPAYLOAD.
* modules/math (Makefile.am): Substitute GNULIB_GETPAYLOAD,
HAVE_GETPAYLOAD, REPLACE_GETPAYLOAD.
* modules/getpayload: New file.
* doc/posix-functions/getpayload.texi: Mention the new module and the
glibc bug.
2024-04-17 15:22:43 +02:00
Bruno Haible 7a4a7fd18d setpayloadsigl: New module.
* lib/math.in.h (setpayloadsigl): New declaration.
* lib/setpayloadsigl.c: New file, based on lib/setpayloadl.c.
* m4/math_h.m4 (gl_MATH_H): Test whether setpayloadsigl is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_SETPAYLOADSIGL.
(gl_MATH_H_DEFAULTS): Initialize HAVE_SETPAYLOADSIGL.
* modules/math (Makefile.am): Substitute GNULIB_SETPAYLOADSIGL,
HAVE_SETPAYLOADSIGL.
* modules/setpayloadsigl: New file.
* doc/posix-functions/setpayloadsigl.texi: Mention the new module.
2024-04-17 00:40:28 +02:00
Bruno Haible 8cf6f8cdd3 setpayloadsigf: New module.
* lib/math.in.h (setpayloadsigf): New declaration.
* lib/setpayloadsigf.c: New file, based on lib/setpayloadf.c.
* m4/math_h.m4 (gl_MATH_H): Test whether setpayloadsigf is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_SETPAYLOADSIGF.
(gl_MATH_H_DEFAULTS): Initialize HAVE_SETPAYLOADSIGF.
* modules/math (Makefile.am): Substitute GNULIB_SETPAYLOADSIGF,
HAVE_SETPAYLOADSIGF.
* modules/setpayloadsigf: New file.
* doc/posix-functions/setpayloadsigf.texi: Mention the new module.
2024-04-17 00:40:17 +02:00
Bruno Haible f9e62b06d5 setpayloadsig: New module.
* lib/math.in.h (setpayloadsig): New declaration.
* lib/setpayloadsig.c: New file, based on lib/setpayload.c.
* m4/setpayloadsig.m4: New file, based on m4/setpayload.m4.
* m4/math_h.m4 (gl_MATH_H): Test whether setpayloadsig is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_SETPAYLOADSIG.
(gl_MATH_H_DEFAULTS): Initialize HAVE_SETPAYLOADSIG.
* modules/math (Makefile.am): Substitute GNULIB_SETPAYLOADSIG,
HAVE_SETPAYLOADSIG.
* modules/setpayloadsig: New file.
* doc/posix-functions/setpayloadsig.texi: Mention the new module.
2024-04-17 00:39:11 +02:00
Bruno Haible 9ee372d318 setpayloadl: New module.
* lib/math.in.h (setpayloadl): New declaration.
* lib/setpayloadl.c: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether setpayloadl is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_SETPAYLOADL.
(gl_MATH_H_DEFAULTS): Initialize HAVE_SETPAYLOADL.
* modules/math (Makefile.am): Substitute GNULIB_SETPAYLOADL,
HAVE_SETPAYLOADL.
* modules/setpayloadl: New file.
* doc/posix-functions/setpayloadl.texi: Mention the new module.
2024-04-16 16:21:13 +02:00
Bruno Haible eaa0ca659f setpayloadf: New module.
* lib/math.in.h (setpayloadf): New declaration.
* lib/setpayloadf.c: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether setpayloadf is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_SETPAYLOADF.
(gl_MATH_H_DEFAULTS): Initialize HAVE_SETPAYLOADF.
* modules/math (Makefile.am): Substitute GNULIB_SETPAYLOADF,
HAVE_SETPAYLOADF.
* modules/setpayloadf: New file.
* doc/posix-functions/setpayloadf.texi: Mention the new module.
2024-04-16 16:21:07 +02:00
Bruno Haible e53309da10 setpayload: New module.
* lib/math.in.h (setpayload): New declaration.
* lib/setpayload.c: New file.
* m4/setpayload.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether setpayload is declared.
(gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_SETPAYLOAD.
(gl_MATH_H_DEFAULTS): Initialize HAVE_SETPAYLOAD.
* modules/math (Makefile.am): Substitute GNULIB_SETPAYLOAD,
HAVE_SETPAYLOAD.
* modules/setpayload: New file.
* doc/posix-functions/setpayload.texi: Mention the new module.
2024-04-16 14:36:58 +02:00
Paul Eggert 0eb469248a totalorder, totalorderf, totalorderl: new modules
* lib/math.in.h: Declare totalorderf, totalorder, totalorderl.
* lib/totalorder.c, lib/totalorderf.c, lib/totalorderl.c:
* m4/totalorder.m4, modules/totalorder, modules/totalorder-tests:
* modules/totalorderf, modules/totalorderf-tests:
* modules/totalorderl, modules/totalorderl-tests:
* tests/test-totalorder.c, tests/test-totalorderf.c:
* tests/test-totalorderl.c: New files.
* m4/math_h.m4 (gl_MATH_H, gl_MATH_H_REQUIRE_DEFAULTS)
(gl_MATH_H_DEFAULTS):
* modules/math (math.h): Set up totalorder, totalorderf, totalorderl.
* m4/mathfunc.m4 (gl_MATHFUNC): Also support pointer-to-const.
2023-10-01 22:20:40 -07:00
Bruno Haible fed956a877 ldexp: Work around OpenBSD/mips64 bug.
* lib/math.in.h (ldexp): New declaration.
* lib/ldexp.c: New file, based on lib/ldexpl.c.
* lib/ldexpl.c: Moved the implementation to lib/ldexp.c. Just include
it.
* m4/math_h.m4 (gl_MATH_H_REQUIRE_DEFAULTS): Initialize GNULIB_LDEXP.
(gl_MATH_H_DEFAULTS): Initialize REPLACE_LDEXP.
* m4/ldexp.m4 (gl_FUNC_LDEXP): Require gl_MATH_H_DEFAULTS and
gl_FUNC_ISNAND. Invoke gl_FUNC_LDEXP_WORKS. Set REPLACE_LDEXP. Consider
it when setting LDEXP_LIBM.
(gl_FUNC_LDEXP_WORKS): New macro.
* modules/math (Makefile.am): Substitute GNULIB_LDEXP, REPLACE_LDEXP.
* modules/ldexp (Files): Add lib/ldexp.c.
(Depends-on): Add math, isnand.
(configure.ac): Set GL_COND_OBJ_LDEXP. Invoke gl_MATH_MODULE_INDICATOR.
(Makefile.am): Conditionally compile ldexp.c.
* modules/ldexpl (Files): Add lib/ldexp.c.
* doc/posix-functions/ldexp.texi: Mention the OpenBSD bug.
2023-08-20 03:14:14 +02:00
Bruno Haible 73e0fecc37 Fix build errors on Linux/hppa.
* modules/math (Makefile.am): Split long pipe command into several
smaller commands.
* modules/pthread-h (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/unictype/base (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
2023-07-11 20:09:38 +02:00
Paul Eggert b4c57b4240 maint: avoid empty lines in recipes
AIX 7.2 ‘make’ complains about recipe lines that are empty after
macro expansion, and I suppose there’s a good chance some
non-POSIX ‘make’ would prohibit them.  Rework macros so
that we can avoid them.
* gnulib-tool (func_emit_lib_Makefile_am)
(func_emit_lib_Makefile_am): Support @!NMD@ too.
* modules/gen-header (@gl_V_at): New macro.
* modules/alloca-opt, modules/argz, modules/assert-h:
* modules/byteswap, modules/configmake, modules/ctype:
* modules/dirent, modules/errno, modules/execinfo, modules/fcntl-h:
* modules/float, modules/fnmatch-h, modules/getopt-posix:
* modules/glob-h, modules/iconv-h, modules/ieee754-h:
* modules/inttypes-incomplete, modules/langinfo:
* modules/libtextstyle-optional, modules/limits-h, modules/locale:
* modules/malloc-h, modules/math, modules/monetary, modules/netdb:
* modules/openmp-init, modules/poll-h, modules/posix-shell:
* modules/pthread-h, modules/pty, modules/sched, modules/search:
* modules/signal-h, modules/sigsegv, modules/snippet/link-warning:
* modules/spawn, modules/stdalign, modules/stdarg, modules/stdbool:
* modules/stddef, modules/stdint, modules/stdio, modules/stdlib:
* modules/stdnoreturn, modules/string, modules/strings:
* modules/sysexits, modules/termios, modules/threads-h:
* modules/time, modules/uchar, modules/unicase/base:
* modules/uniconv/base, modules/unictype/base, modules/unigbrk/base:
* modules/unilbrk/base, modules/uniname/base, modules/uninorm/base:
* modules/unistd, modules/unistdio/base, modules/unistr/base:
* modules/unitypes, modules/uniwbrk/base, modules/uniwidth/base:
* modules/utime-h, modules/wchar, modules/wctype-h:
Use it.
2021-12-24 17:27:26 -08:00
Paul Eggert 53cdf46161 gen-header: new module
Simplify header generation by using Makefile variables
defined by a new gen-header module.
* modules/gen-header: New module.
* modules/alloca-opt, modules/argz, modules/arpa_inet:
* modules/assert-h, modules/byteswap:
* modules/ctype, modules/dirent, modules/dynarray, modules/errno:
* modules/execinfo, modules/fcntl-h, modules/float:
* modules/fnmatch-h, modules/getopt-posix, modules/glob-h:
* modules/iconv-h, modules/ieee754-h, modules/inttypes-incomplete:
* modules/langinfo, modules/libtextstyle-optional, modules/limits-h:
* modules/locale, modules/malloc-h, modules/math, modules/monetary:
* modules/net_if, modules/netdb, modules/netinet_in:
* modules/openmp-init, modules/poll-h:
* modules/pthread-h, modules/pty, modules/sched:
* modules/scratch_buffer, modules/search, modules/selinux-h:
* modules/signal-h, modules/sigsegv:
* modules/spawn, modules/stdalign, modules/stdarg, modules/stdbool:
* modules/stddef, modules/stdint, modules/stdio, modules/stdlib:
* modules/stdnoreturn, modules/string, modules/strings:
* modules/sys_file, modules/sys_ioctl, modules/sys_random:
* modules/sys_resource, modules/sys_select, modules/sys_socket:
* modules/sys_stat, modules/sys_time, modules/sys_times:
* modules/sys_types, modules/sys_uio, modules/sys_utsname:
* modules/sys_wait, modules/sysexits, modules/termios:
* modules/threads-h, modules/time, modules/uchar:
* modules/unicase/base, modules/unicase/special-casing:
* modules/uniconv/base, modules/unictype/base, modules/unigbrk/base:
* modules/unilbrk/base, modules/uniname/base, modules/uninorm/base:
* modules/unistd, modules/unistdio/base, modules/unistr/base:
* modules/unitypes, modules/uniwbrk/base, modules/uniwidth/base:
* modules/utime-h, modules/wchar, modules/wctype-h:
Depend on gen-header, and use its macros to simplify
header generation.
2021-12-24 17:27:25 -08:00
Paul Eggert 42415d79b8 maint: omit unnecessary ‘rm -f $@-t $@’
* modules/alloca-opt, modules/argz, modules/arpa_inet:
* modules/assert-h, modules/byteswap, modules/configmake:
* modules/ctype, modules/dirent, modules/dynarray, modules/errno:
* modules/execinfo, modules/fcntl-h, modules/float:
* modules/fnmatch-h, modules/getopt-posix, modules/glob-h:
* modules/iconv-h, modules/ieee754-h, modules/inttypes-incomplete:
* modules/langinfo, modules/libtextstyle-optional:
* modules/limits-h, modules/langinfo, modules/libgmp, modules/limits-h:
* modules/locale, modules/malloc-h, modules/math, modules/monetary:
* modules/net_if, modules/netdb, modules/netinet_in:
* modules/openmp-init, modules/poll-h, modules/posix-shell:
* modules/posix_spawnp-tests, modules/pthread-h, modules/pty:
* modules/sched, modules/scratch_buffer, modules/search:
* modules/selinux-h, modules/signal-h, modules/sigsegv:
* modules/snippet/link-warning, modules/spawn, modules/stdalign:
* modules/stdarg, modules/stdbool, modules/stddef, modules/stdint:
* modules/stdio, modules/stdlib, modules/stdnoreturn:
* modules/string, modules/strings, modules/sys_file:
* modules/sys_ioctl, modules/sys_random, modules/sys_resource:
* modules/sys_select, modules/sys_socket, modules/sys_stat:
* modules/sys_time, modules/sys_times, modules/sys_types:
* modules/sys_uio, modules/sys_utsname, modules/sys_wait:
* modules/sysexits, modules/termios, modules/threads-h:
* modules/time, modules/uchar, modules/unicase/base:
* modules/unicase/special-casing, modules/uniconv/base:
* modules/unictype/base, modules/unigbrk/base, modules/unilbrk/base:
* modules/uniname/base, modules/uninorm/base, modules/unistd:
* modules/unistdio/base, modules/unistr/base, modules/unitypes:
* modules/uniwbrk/base, modules/uniwidth/base, modules/utime-h:
* modules/wchar, modules/wctype-h:
Don’t bother to do a ‘rm -f $@-t $@’ at the start of recipes that
create .h and similar files.  This is a revenant of a style in
which the files were created read-only.  Also, consistently use
use plain ‘mv $@-t $@’ afterwards, instead of usually using
‘mv -f’ but sometimes plain ‘mv’.
2021-12-22 10:58:24 -08:00
Bruno Haible 83a0d5891d Optimize redundant 'mkdir -p .' invocations.
Reported by Paul Eggert.

* gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
Eliminate @NMD@ tokens.
* modules/alloca-opt (Makefile.am): Prefix the "$(MKDIR_P) '%reldir%'"
line with @NMD@.
* modules/argz (Makefile.am): Likewise.
* modules/assert-h (Makefile.am): Likewise.
* modules/byteswap (Makefile.am): Likewise.
* modules/configmake (Makefile.am): Likewise.
* modules/ctype (Makefile.am): Likewise.
* modules/dirent (Makefile.am): Likewise.
* modules/errno (Makefile.am): Likewise.
* modules/execinfo (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/float (Makefile.am): Likewise.
* modules/fnmatch-h (Makefile.am): Likewise.
* modules/getopt-posix (Makefile.am): Likewise.
* modules/glob-h (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/ieee754-h (Makefile.am): Likewise.
* modules/inttypes-incomplete (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/libtextstyle-optional (Makefile.am): Likewise.
* modules/limits-h (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/malloc-h (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/monetary (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/openmp-init (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/posix-shell (Makefile.am): Likewise.
* modules/pthread-h (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/sched (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/signal-h (Makefile.am): Likewise.
* modules/sigsegv (Makefile.am): Likewise.
* modules/snippet/link-warning (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdalign (Makefile.am): Likewise.
* modules/stdarg (Makefile.am): Likewise.
* modules/stdbool (Makefile.am): Likewise.
* modules/stddef (Makefile.am): Likewise.
* modules/stdint (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/stdnoreturn (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/strings (Makefile.am): Likewise.
* modules/sysexits (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/threads-h (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/uchar (Makefile.am): Likewise.
* modules/unicase/base (Makefile.am): Likewise.
* modules/uniconv/base (Makefile.am): Likewise.
* modules/unictype/base (Makefile.am): Likewise.
* modules/unigbrk/base (Makefile.am): Likewise.
* modules/unilbrk/base (Makefile.am): Likewise.
* modules/uniname/base (Makefile.am): Likewise.
* modules/uninorm/base (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/unistdio/base (Makefile.am): Likewise.
* modules/unistr/base (Makefile.am): Likewise.
* modules/unitypes (Makefile.am): Likewise.
* modules/uniwbrk/base (Makefile.am): Likewise.
* modules/uniwidth/base (Makefile.am): Likewise.
* modules/utime-h (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
* modules/wctype-h (Makefile.am): Likewise.
2021-12-21 09:59:17 +01:00
Bruno Haible 766ec17a90 Fix creation of build directories with non-recursive-gnulib-prefix-hack.
This is necessary for executing "make" in a VPATH build of a package
that uses prefix-gnulib-mk and a module such as alloca-opt.

* modules/alloca-opt (Makefile.am): Before generating the .h-t file,
ensure that the directory in which we want to create it exists.
(configure.ac): Invoke AC_PROG_MKDIR_P.
* modules/argz: Likewise.
* modules/arpa_inet: Likewise.
* modules/assert-h: Likewise.
* modules/byteswap: Likewise.
* modules/configmake: Likewise.
* modules/ctype: Likewise.
* modules/dirent: Likewise.
* modules/dynarray: Likewise.
* modules/errno: Likewise.
* modules/execinfo: Likewise.
* modules/fcntl-h: Likewise.
* modules/float: Likewise.
* modules/fnmatch-h: Likewise.
* modules/getopt-posix: Likewise.
* modules/glob-h: Likewise.
* modules/iconv-h: Likewise.
* modules/ieee754-h: Likewise.
* modules/inttypes-incomplete: Likewise.
* modules/langinfo: Likewise.
* modules/libgmp: Likewise.
* modules/libtextstyle-optional: Likewise.
* modules/limits-h: Likewise.
* modules/locale: Likewise.
* modules/malloc-h: Likewise.
* modules/math: Likewise.
* modules/monetary: Likewise.
* modules/net_if: Likewise.
* modules/netdb: Likewise.
* modules/netinet_in: Likewise.
* modules/openmp-init: Likewise.
* modules/poll-h: Likewise.
* modules/posix-shell: Likewise.
* modules/pthread-h: Likewise.
* modules/pty: Likewise.
* modules/sched: Likewise.
* modules/scratch_buffer: Likewise.
* modules/search: Likewise.
* modules/selinux-h: Likewise.
* modules/signal-h: Likewise.
* modules/sigsegv: Likewise.
* modules/snippet/link-warning: Likewise.
* modules/spawn: Likewise.
* modules/stdalign: Likewise.
* modules/stdarg: Likewise.
* modules/stdbool: Likewise.
* modules/stddef: Likewise.
* modules/stdint: Likewise.
* modules/stdio: Likewise.
* modules/stdlib: Likewise.
* modules/stdnoreturn: Likewise.
* modules/string: Likewise.
* modules/strings: Likewise.
* modules/sys_file: Likewise.
* modules/sys_ioctl: Likewise.
* modules/sys_random: Likewise.
* modules/sys_resource: Likewise.
* modules/sys_select: Likewise.
* modules/sys_socket: Likewise.
* modules/sys_stat: Likewise.
* modules/sys_time: Likewise.
* modules/sys_times: Likewise.
* modules/sys_types: Likewise.
* modules/sys_uio: Likewise.
* modules/sys_utsname: Likewise.
* modules/sys_wait: Likewise.
* modules/sysexits: Likewise.
* modules/termios: Likewise.
* modules/threads-h: Likewise.
* modules/time: Likewise.
* modules/uchar: Likewise.
* modules/unicase/base: Likewise.
* modules/unicase/special-casing: Likewise.
* modules/uniconv/base: Likewise.
* modules/unictype/base: Likewise.
* modules/unigbrk/base: Likewise.
* modules/unilbrk/base: Likewise.
* modules/uniname/base: Likewise.
* modules/uninorm/base: Likewise.
* modules/unistd: Likewise.
* modules/unistdio/base: Likewise.
* modules/unistr/base: Likewise.
* modules/unitypes: Likewise.
* modules/uniwbrk/base: Likewise.
* modules/uniwidth/base: Likewise.
* modules/utime-h: Likewise.
* modules/wchar: Likewise.
* modules/wctype-h: Likewise.
* gnulib-tool (func_emit_lib_Makefile_am): When producing output for
GNU make, eliminate %reldir% tokens.
2021-12-15 19:18:20 +01:00
Bruno Haible 80a344e323 Support several gnulib-tool invocations under the same configure.ac.
Reported by Reuben Thomas <rrt@sc3d.org> in
<https://lists.gnu.org/archive/html/bug-gnulib/2021-04/msg00104.html>.

This is done by defining the Gnulib module indicator variables per
gnulib-tool invocation. So that a generated .h file is no longer
influenced by the set of modules used in other gnulib-tool invocations.

* gnulib-tool (func_compute_include_guard_prefix): Set
module_indicator_prefix.
(func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use it to
modify $(GNULIB_*) variable references in the Automake snippets.
(func_emit_initmacro_start): Push macro definitions for GL_MACRO_PREFIX
and GL_MODULE_INDICATOR_PREFIX.
(func_emit_initmacro_end): Pop these macro definitions.
* pygnulib/GLConfig.py (GLConfig.getIncludeGuardPrefix): New method.
* pygnulib/GLEmiter.py (GLEmiter.initmacro_start): Push macro
definitions for GL_MACRO_PREFIX and GL_MODULE_INDICATOR_PREFIX.
(GLEmiter.initmacro_end): Pop these macro definitions.
(GLEmiter.lib_Makefile_am, GLEmiter.tests_Makefile_am): Use the module
indicator prefix to modify $(GNULIB_*) variable references in the
Automake snippets.
* m4/gnulib-common.m4 (gl_MODULE_INDICATOR_INIT_VARIABLE,
gl_MODULE_INDICATOR_SET_VARIABLE): Use the value of
GL_MODULE_INDICATOR_PREFIX.
* m4/arpa_inet_h.m4: Use new idiom for header files that contain
references to Gnulib module indicator variables:
- Define the main macro through AC_DEFUN_ONCE.
- Define a macro gl_*_H_REQUIRE_DEFAULTS that initializes the Gnulib
  module indicator variables (each prefixed with
  GL_MODULE_INDICATOR_PREFIX).
- Invoke this macro in the gl_*_MODULE_INDICATOR macro.
* m4/ctype.m4: Likewise.
* m4/dirent_h.m4: Likewise.
* m4/fcntl_h.m4: Likewise.
* m4/fnmatch_h.m4: Likewise.
* m4/glob_h.m4: Likewise.
* m4/iconv_h.m4: Likewise.
* m4/inttypes.m4: Likewise.
* m4/langinfo_h.m4: Likewise.
* m4/locale_h.m4: Likewise.
* m4/malloc_h.m4: Likewise.
* m4/math_h.m4: Likewise.
* m4/monetary_h.m4: Likewise.
* m4/netdb_h.m4: Likewise.
* m4/poll_h.m4: Likewise.
* m4/pthread_h.m4: Likewise.
* m4/pty_h.m4: Likewise.
* m4/sched_h.m4: Likewise.
* m4/search_h.m4: Likewise.
* m4/signal_h.m4: Likewise.
* m4/spawn_h.m4: Likewise.
* m4/stddef_h.m4: Likewise.
* m4/stdio_h.m4: Likewise.
* m4/stdlib_h.m4: Likewise.
* m4/string_h.m4: Likewise.
* m4/strings_h.m4: Likewise.
* m4/sys_file_h.m4: Likewise.
* m4/sys_ioctl_h.m4: Likewise.
* m4/sys_random_h.m4: Likewise.
* m4/sys_resource_h.m4: Likewise.
* m4/sys_select_h.m4: Likewise.
* m4/sys_socket_h.m4: Likewise.
* m4/sys_stat_h.m4: Likewise.
* m4/sys_time_h.m4: Likewise.
* m4/sys_times_h.m4: Likewise.
* m4/sys_types_h.m4: Likewise.
* m4/sys_uio_h.m4: Likewise.
* m4/sys_utsname_h.m4: Likewise.
* m4/sys_wait_h.m4: Likewise.
* m4/termios_h.m4: Likewise.
* m4/threads.m4: Likewise.
* m4/time_h.m4: Likewise.
* m4/uchar.m4: Likewise.
* m4/unistd_h.m4: Likewise.
* m4/utime_h.m4: Likewise.
* m4/wchar_h.m4: Likewise.
* m4/wctype_h.m4: Likewise.
* modules/arpa_inet (configure.ac): Invoke the macro
gl_*_H_REQUIRE_DEFAULTS explicitly.
* modules/ctype (configure.ac): Likewise.
* modules/dirent (configure.ac): Likewise.
* modules/fcntl-h (configure.ac): Likewise.
* modules/fnmatch-h (configure.ac): Likewise.
* modules/glob-h (configure.ac): Likewise.
* modules/iconv-h (configure.ac): Likewise.
* modules/inttypes-incomplete (configure.ac): Likewise.
* modules/langinfo (configure.ac): Likewise.
* modules/locale (configure.ac): Likewise.
* modules/malloc-h (configure.ac): Likewise.
* modules/math (configure.ac): Likewise.
* modules/monetary (configure.ac): Likewise.
* modules/netdb (configure.ac): Likewise.
* modules/poll-h (configure.ac): Likewise.
* modules/pthread-h (configure.ac): Likewise.
* modules/pty (configure.ac): Likewise.
* modules/sched (configure.ac): Likewise.
* modules/search (configure.ac): Likewise.
* modules/signal-h (configure.ac): Likewise.
* modules/spawn (configure.ac): Likewise.
* modules/stddef (configure.ac): Likewise.
* modules/stdio (configure.ac): Likewise.
* modules/stdlib (configure.ac): Likewise.
* modules/string (configure.ac): Likewise.
* modules/strings (configure.ac): Likewise.
* modules/sys_file (configure.ac): Likewise.
* modules/sys_ioctl (configure.ac): Likewise.
* modules/sys_random (configure.ac): Likewise.
* modules/sys_resource (configure.ac): Likewise.
* modules/sys_select (configure.ac): Likewise.
* modules/sys_socket (configure.ac): Likewise.
* modules/sys_stat (configure.ac): Likewise.
* modules/sys_time (configure.ac): Likewise.
* modules/sys_times (configure.ac): Likewise.
* modules/sys_types (configure.ac): Likewise.
* modules/sys_uio (configure.ac): Likewise.
* modules/sys_utsname (configure.ac): Likewise.
* modules/sys_wait (configure.ac): Likewise.
* modules/termios (configure.ac): Likewise.
* modules/threads-h (configure.ac): Likewise.
* modules/time (configure.ac): Likewise.
* modules/uchar (configure.ac): Likewise.
* modules/unistd (configure.ac): Likewise.
* modules/utime-h (configure.ac): Likewise.
* modules/wchar (configure.ac): Likewise.
* modules/wctype-h (configure.ac): Likewise.
* m4/af_alg.m4: Update after a macro name changed.
* m4/ctime.m4: Likewise.
* m4/explicit_bzero.m4: Likewise.
* m4/ffs.m4: Likewise.
* m4/ffsl.m4: Likewise.
* m4/ffsll.m4: Likewise.
* m4/flock.m4: Likewise.
* m4/fstat.m4: Likewise.
* m4/getaddrinfo.m4: Likewise.
* m4/getdomainname.m4: Likewise.
* m4/gettimeofday.m4: Likewise.
* m4/hostent.m4: Likewise.
* m4/ioctl.m4: Likewise.
* m4/localtime.m4: Likewise.
* m4/mbslen.m4: Likewise.
* m4/memchr.m4: Likewise.
* m4/memmem.m4: Likewise.
* m4/mempcpy.m4: Likewise.
* m4/memrchr.m4: Likewise.
* m4/mktime.m4: Likewise.
* m4/nanosleep.m4: Likewise.
* m4/passfd.m4: Likewise.
* m4/pselect.m4: Likewise.
* m4/rawmemchr.m4: Likewise.
* m4/select.m4: Likewise.
* m4/servent.m4: Likewise.
* m4/sigabbrev_np.m4: Likewise.
* m4/sigdescr_np.m4: Likewise.
* m4/sockpfaf.m4: Likewise.
* m4/stat.m4: Likewise.
* m4/stpcpy.m4: Likewise.
* m4/stpncpy.m4: Likewise.
* m4/strcase.m4: Likewise.
* m4/strcasestr.m4: Likewise.
* m4/strchrnul.m4: Likewise.
* m4/strdup.m4: Likewise.
* m4/strerror.m4: Likewise.
* m4/strerror_r.m4: Likewise.
* m4/strerrorname_np.m4: Likewise.
* m4/strftime-fixes.m4: Likewise.
* m4/strncat.m4: Likewise.
* m4/strndup.m4: Likewise.
* m4/strnlen.m4: Likewise.
* m4/strpbrk.m4: Likewise.
* m4/strptime.m4: Likewise.
* m4/strsep.m4: Likewise.
* m4/strsignal.m4: Likewise.
* m4/strstr.m4: Likewise.
* m4/strtok_r.m4: Likewise.
* m4/strverscmp.m4: Likewise.
* m4/time_r.m4: Likewise.
* m4/time_rz.m4: Likewise.
* m4/timegm.m4: Likewise.
* m4/timespec_get.m4: Likewise.
* m4/tzset.m4: Likewise.
* modules/accept (configure.ac): Likewise.
* modules/bind (configure.ac): Likewise.
* modules/connect (configure.ac): Likewise.
* modules/flock (configure.ac): Likewise.
* modules/getpeername (configure.ac): Likewise.
* modules/getsockname (configure.ac): Likewise.
* modules/getsockopt (configure.ac): Likewise.
* modules/listen (configure.ac): Likewise.
* modules/recv (configure.ac): Likewise.
* modules/recvfrom (configure.ac): Likewise.
* modules/send (configure.ac): Likewise.
* modules/sendto (configure.ac): Likewise.
* modules/setsockopt (configure.ac): Likewise.
* modules/shutdown (configure.ac): Likewise.
* modules/socket (configure.ac): Likewise. Use the
gl_*_H_REQUIRE_DEFAULTS macros.
* modules/nonblocking (configure.ac): Use the gl_*_H_REQUIRE_DEFAULTS
and gl_MODULE_INDICATOR_INIT_VARIABLE macros.
* modules/sigpipe (configure.ac): Likewise.
* modules/windows-stat-override (configure.ac): Likewise.
* m4/nonblocking.m4: Update a comment.
* m4/sigpipe.m4: Likewise.
2021-04-11 21:25:54 +02:00
Bruno Haible 52c7413a80 Make it possible to turn off each of the Windows oldnames workarounds.
* lib/fcntl.in.h (creat, open):  Conditionalize each of the Windows
oldnames workarounds through a GNULIB_MDA_<func> symbol.
* lib/math.in.h (j0, j1, jn, y0, y1, yn): Likewise.
* lib/search.in.h (lfind, lsearch): Likewise.
* lib/stdio.in.h (fcloseall, fdopen, fileno, getw, putw, tempnam):
Likewise.
* lib/stdlib.in.h (ecvt, fcvt, gcvt, mktemp, putenv): Likewise.
* lib/string.in.h (memccpy, strdup): Likewise.
* lib/sys_stat.in.h (chmod, umask): Likewise.
* lib/time.in.h (tzset): Likewise.
* lib/unistd.in.h (access, chdir, close, dup, dup2, execl, execle,
execlp, execv, execve, execvp, execvpe, getcwd, getpid, isatty, lseek,
read, rmdir, swab, unlink, write): Likewise.
* lib/utime.in.h (utime): Likewise.
* lib/wchar.in.h (wcsdup): Likewise.
* m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Initialize these
GNULIB_MDA_<func> symbols.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Likewise.
* m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Likewise.
* m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
* m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
* m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Likewise.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Likewise.
* m4/utime_h.m4 (gl_UTIME_H_DEFAULTS): Likewise.
* m4/wchar_h.m4 (gl_WCHAR_H_DEFAULTS): Likewise.
* modules/fcntl-h (Makefile.am): Substitute these GNULIB_MDA_<func>
symbols.
* modules/math (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/utime-h (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
2020-12-25 13:48:17 +01:00
Bruno Haible d6dabe8eec Use __builtin_signbit* with clang.
* lib/math.in.h (signbit): Use __builtin_signbit{,f,l} also on clang.
* m4/signbit.m4 (gl_SIGNBIT): Use __builtin_signbit{,f,l} also on clang.
Set REPLACE_SIGNBIT_USING_BUILTINS, not REPLACE_SIGNBIT_USING_GCC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
REPLACE_SIGNBIT_USING_BUILTINS, not REPLACE_SIGNBIT_USING_GCC.
* modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_BUILTINS,
not REPLACE_SIGNBIT_USING_GCC.
2020-08-09 12:36:37 +02:00
Bruno Haible 5b490ef07f rintl: Override broken implementation on NetBSD.
* lib/math.in.h (rintl): Test also REPLACE_RINTL.
* m4/rintl.m4 (gl_FUNC_RINTL): Add test for negative arguments. Set
REPLACE_RINTL.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_RINTL.
* modules/math (Makefile.in): Substitute REPLACE_RINTL.
* modules/rintl (Depends-on, configure.ac): Test REPLACE_RINTL.
* doc/posix-functions/rintl.texi: Mention the NetBSD bug.
2019-01-21 00:33:28 +01:00
Bruno Haible 67df3cffac expm1l: Work around inaccurate implementation on NetBSD.
* lib/math.in.h (expm1l): Test also REPLACE_EXPM1L.
* m4/expm1l.m4 (gl_FUNC_EXPM1L): Add test for a certain accuracy. Set
REPLACE_EXPM1L.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_EXPM1L.
* modules/math (Makefile.in): Substitute REPLACE_EXPM1L.
* modules/expm1l (Depends-on, configure.ac): Test REPLACE_EXPM1L.
* doc/posix-functions/expm1l.texi: Mention the NetBSD bug.
2019-01-20 22:28:37 +01:00
Bruno Haible 0ac7b4317d expl: Work around inaccurate implementation on NetBSD.
* lib/math.in.h (expl): Test also REPLACE_EXPL.
* m4/expl.m4 (gl_FUNC_EXPL): Add test for a certain accuracy. Set
REPLACE_EXPL.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_EXPL.
* modules/math (Makefile.in): Substitute REPLACE_EXPL.
* modules/expl (Depends-on, configure.ac): Test REPLACE_EXPL.
* doc/posix-functions/expl.texi: Mention the NetBSD bug.
2019-01-20 22:11:31 +01:00
Bruno Haible 625f7aea33 ilogbl: Ensure replacement on Haiku.
* m4/ilogbl.m4 (gl_FUNC_ILOGBL): Invoke gl_FUNC_ILOGBL_WORKS and set
REPLACE_ILOGBL if ilogbl does not work.
(gl_FUNC_ILOGBL_WORKS): New macro.
* lib/math.in.h (ilogbl): Replace if REPLACE_ILOGBL is 1.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ILOGBL.
* modules/math (Makefile.am): Substitute REPLACE_ILOGBL.
* modules/ilogbl (Depends-on, configure.ac): Consider REPLACE_ILOGBL.
* doc/posix-functions/ilogbl.texi: Mention the Haiku problem.
2017-10-29 21:27:51 +01:00
Bruno Haible 51150279ad tanhf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_TANHF.
* m4/tanhf.m4 (gl_FUNC_TANHF): Set REPLACE_TANHF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_TANHF.
* lib/math.in.h (tanhf): Override if REPLACE_TANHF is 1.
2016-12-17 23:09:19 +01:00
Bruno Haible 9ef2e6d205 tanf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_TANF.
* m4/tanf.m4 (gl_FUNC_TANF): Set REPLACE_TANF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_TANF.
* lib/math.in.h (tanf): Override if REPLACE_TANF is 1.
2016-12-17 23:09:18 +01:00
Bruno Haible c7a2c318d3 sqrtf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_SQRTF.
* m4/sqrtf.m4 (gl_FUNC_SQRTF): Set REPLACE_SQRTF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_SQRTF.
* lib/math.in.h (sqrtf): Override if REPLACE_SQRTF is 1.
2016-12-17 23:09:17 +01:00
Bruno Haible 0225ce36c6 sinhf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_SINHF.
* m4/sinhf.m4 (gl_FUNC_SINHF): Set REPLACE_SINHF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_SINHF.
* lib/math.in.h (sinhf): Override if REPLACE_SINHF is 1.
2016-12-17 23:09:16 +01:00
Bruno Haible a8cff6cb02 sinf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_SINF.
* m4/sinf.m4 (gl_FUNC_SINF): Set REPLACE_SINF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_SINF.
* lib/math.in.h (sinf): Override if REPLACE_SINF is 1.
2016-12-17 23:09:13 +01:00
Bruno Haible 21ec014a2f expf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_EXPF.
* m4/expf.m4 (gl_FUNC_EXPF): Set REPLACE_EXPF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_EXPF.
* lib/math.in.h (expf): Override if REPLACE_EXPF is 1.
2016-12-17 23:09:07 +01:00
Bruno Haible c3c53687f7 coshf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_COSHF.
* m4/coshf.m4 (gl_FUNC_COSHF): Set REPLACE_COSHF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_COSHF.
* lib/math.in.h (coshf): Override if REPLACE_COSHF is 1.
2016-12-17 23:09:06 +01:00
Bruno Haible 9113a6db3f cosf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_COSF.
* m4/cosf.m4 (gl_FUNC_COSF): Set REPLACE_COSF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_COSF.
* lib/math.in.h (cosf): Override if REPLACE_COSF is 1.
2016-12-17 23:09:04 +01:00
Bruno Haible cf308efdb0 atan2f: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_ATAN2F.
* m4/atan2f.m4 (gl_FUNC_ATAN2F): Set REPLACE_ATAN2F to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_ATAN2F.
* lib/math.in.h (atan2f): Override if REPLACE_ATAN2F is 1.
2016-12-17 23:09:03 +01:00
Bruno Haible 4d3d2763fe atanf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_ATANF.
* m4/atanf.m4 (gl_FUNC_ATANF): Set REPLACE_ATANF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_ATANF.
* lib/math.in.h (atanf): Override if REPLACE_ATANF is 1.
2016-12-17 23:09:02 +01:00
Bruno Haible 6cd601d2b9 asinf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_ASINF.
* m4/asinf.m4 (gl_FUNC_ASINF): Set REPLACE_ASINF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_ASINF.
* lib/math.in.h (asinf): Override if REPLACE_ASINF is 1.
2016-12-17 23:09:01 +01:00
Bruno Haible c3cb8a2634 acosf: Avoid redefinition error on MSVC.
* m4/math_h.m4 (gl_MATH_H_DEFAULTS): Define REPLACE_ACOSF.
* m4/acosf.m4 (gl_FUNC_ACOSF): Set REPLACE_ACOSF to 1 if the function
may be defined as an inline function.
* modules/math (Makefile.am): Substitute REPLACE_ACOSF.
* lib/math.in.h (acosf): Override if REPLACE_ACOSF is 1.
2016-12-17 23:09:00 +01:00
Paul Eggert 62dbbbd1dd math: better 'inline'
* lib/math.c: New file.
* lib/math.in.h (_GL_MATH_INLINE):
New macro.  Replace all uses of 'static inline' with it.
Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
* m4/math_h.m4 (gl_MATH_H):
Do not require AC_C_INLINE.
* modules/math (Files, lib_SOURCES):
Add lib/math.c.
(Depends-on): Add extern-inline.
2012-11-29 23:38:50 -08:00
Bruno Haible 811b6ef05c New module 'ilogbl'.
* lib/math.in.h (ilogbl): New declaration.
* lib/ilogbl.c: New file.
* m4/ilogbl.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether ilogbl is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGBL, HAVE_ILOGBL.
* modules/math (Makefile.am): Substitute GNULIB_ILOGBL, HAVE_ILOGBL.
Split sed invocation, to avoid the limit of 100 substitutions of
HP-UX 'sed'.
* modules/ilogbl: New file.
* tests/test-math-c++.cc: Check the declaration of ilogbl.
* doc/posix-functions/ilogbl.texi: Mention the new module.
2012-04-03 21:58:52 +02:00
Bruno Haible d6d7a9dc24 New module 'ilogbf'.
* lib/math.in.h (ilogbf): New declaration.
* lib/ilogbf.c: New file.
* m4/ilogbf.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether ilogbf is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGBF, HAVE_ILOGBF,
REPLACE_ILOGBF.
* modules/math (Makefile.am): Substitute GNULIB_ILOGBF, HAVE_ILOGBF,
REPLACE_ILOGBF.
* modules/ilogbf: New file.
* tests/test-math-c++.cc: Check the declaration of ilogbf.
* doc/posix-functions/ilogbf.texi: Mention the new module.
2012-04-03 21:14:16 +02:00
Bruno Haible 1ab17d9f64 New module 'ilogb'.
* lib/math.in.h (ilogb): New declaration.
* lib/ilogb.c: New file.
* m4/ilogb.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether ilogb is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_ILOGB, HAVE_ILOGB,
REPLACE_ILOGB.
* modules/math (Makefile.am): Substitute GNULIB_ILOGB, HAVE_ILOGB,
REPLACE_ILOGB.
* modules/ilogb: New file.
* tests/test-math-c++.cc: Check the declaration of ilogb.
* doc/posix-functions/ilogb.texi: Mention the new module.
2012-04-03 21:14:09 +02:00
Bruno Haible 032debd69f New module 'logbl'.
* lib/math.in.h (logbl): New declaration.
* lib/logbl.c: New file.
* m4/logbl.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether logbl is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGBL, HAVE_LOGBL,
REPLACE_LOGBL.
* modules/math (Makefile.am): Substitute GNULIB_LOGBL, HAVE_LOGBL,
REPLACE_LOGBL.
* modules/logbl: New file.
* tests/test-math-c++.cc: Check the declaration of logbl.
* doc/posix-functions/logbl.texi: Mention the new module.
2012-04-03 14:03:21 +02:00
Bruno Haible 6c8149d7e1 New module 'logbf'.
* lib/math.in.h (logbf): New declaration.
* lib/logbf.c: New file.
* m4/logbf.m4: New file.
* m4/math_h.m4 (gl_MATH_H): Test whether logbf is declared.
(gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGBF, HAVE_LOGBF,
REPLACE_LOGBF.
* modules/math (Makefile.am): Substitute GNULIB_LOGBF, HAVE_LOGBF,
REPLACE_LOGBF.
* modules/logbf: New file.
* tests/test-math-c++.cc: Check the declaration of logbf.
* doc/posix-functions/logbf.texi: Mention the new module.
2012-04-03 14:01:40 +02:00