diff options
Diffstat (limited to 'sys-devel/m4')
-rw-r--r-- | sys-devel/m4/Manifest | 3 | ||||
-rw-r--r-- | sys-devel/m4/files/m4-1.4.18-glibc228.patch | 310 | ||||
-rw-r--r-- | sys-devel/m4/m4-1.4.18.ebuild | 4 |
3 files changed, 315 insertions, 2 deletions
diff --git a/sys-devel/m4/Manifest b/sys-devel/m4/Manifest index f9412c1fb107..fcaa68e37d56 100644 --- a/sys-devel/m4/Manifest +++ b/sys-devel/m4/Manifest @@ -1,7 +1,8 @@ AUX m4-1.4.17-posix_spawn.patch 3302 BLAKE2B fe00346f2f180fe70ef867376d9a3f0da632d83aeee21aa524642ec061e6c1e37538c37d266a32aea63c6a8f776ee3bc85fd82f447704c1e73965132f528030a SHA512 82f6f1960a290265f1a7a3c868a780fa0816194c26ed5fc8337e35983021798c55db7c75fccf979a7dcc73253d1864cbf2de89a906fc6bf8458a524e2c4604c8 AUX m4-1.4.18-darwin17-printf-n.patch 1386 BLAKE2B e5b1e4750b21b4efc0e62f2447a3f40dd037e28b5fe833d3ddf87fe853ee8885e34c5720b7b00f08242131df9996d36f4a954571ed21d067ca0dfeae69961e09 SHA512 4ad476e538c85ee41280461269dd8acabdbdb9cd2e0e2e49ea43bc14eb370e17282c504403a7c2914d886adf703bcc3b95991724bed90dc014a66cb861a70faf +AUX m4-1.4.18-glibc228.patch 13863 BLAKE2B f8b54c3b7feae5d458ba893e08313f5e9772e66be03a5db2fe3929e671002cc3c80cf8cc6ca0a68b792f729404dc27c95cf436663026b50682f47c306721b581 SHA512 c81df4510b01044578e11c7bd1046ec297ab195f6e5c7d7eaad7aae31862326d12cf00a9f36218f93db88e36f88ec73be8e320214b999330da3dc5bba9a3be46 DIST m4-1.4.17.tar.xz 1149088 BLAKE2B ccba6a1cd80de241bc2e755addbf4876b00ab776e0a3c85691998e3e84e8a091d57d8c3e9b43a115e52e416450de791662a54ca8e64e1603a166029164f140ce SHA512 406e6e97c3f5c5f3c8055bac748d4fe8c2e861d97e84ab6d840a2caa7df04f523cc662d6d51f6afae7d6c219d03693c7ae0c1e669a80246a3ceb5e8342b82389 DIST m4-1.4.18.tar.xz 1207688 BLAKE2B debfaa4d25af6f583e2cd703e77b73775790f48f34e878eddd820c6b244a065c69495473ce5067be1f20ca07b2d6af9f90cffd33e12c18fd719c0d234eb5462a SHA512 06f583efc3855cd8477d8347544f4ae5153a3e50aea74d21968afa7214784ea3ddfc02d0a2b11324120d76a19f2e804d20de11a456b5da929eb6ae469519b174 EBUILD m4-1.4.17.ebuild 1620 BLAKE2B 789c68b68c8265b799623fede4da9ab2aa344b67972d8abe220aa03c80732425ac474cbd01f0ac3538f8b110ce6dffd5d8844b9cad079cdde5fa283c9216e5e5 SHA512 e5642fde4f5f83daaeac3ab340abd845285d90320ac9c72b4465de4c06c05206c5bc9a3208f1fbf94609552b264de47ee1359e07b0d2c791cb160a4be605ff72 -EBUILD m4-1.4.18.ebuild 1402 BLAKE2B b74e5896824ead629906a4e42613a3cb427b9e52817be0e3f8296f0bcce1762f1709ab18506bb479ef40c87d64c5c781cf7e15a744b99f80fe2e4340313a39fb SHA512 602cf672efeeed2b4a210d5fc95e673e2019510e1ac1065e6c860312d6743a3ff94d4492ba39470ea2c167590685c9eb98293c17dc046c401b995d7e9573b401 +EBUILD m4-1.4.18.ebuild 1462 BLAKE2B 36c2f2cef7b4b3df2bae33314fcdd739620554fc482002e9f833db6bbc0a380ed37bed3200e440c3b54e97194e73824787df62a66c0871ca08da60737101ba1c SHA512 3ed2b17f679d3c61fb67ae3234dbe74b0130f304db957d97da30268fb28667ceb147c87fd160144874f51b5bbe984b31e796f3a98b3106f70a4f819ce6d6312b MISC metadata.xml 253 BLAKE2B 295e9d6d93aaa12af413972e1590c67087801cc09c9aa6b59d4606c0f4106d1dacf2baa9858559083b4c6d91beeef218d0729e8593a33788958da6d2897e8ce2 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555 diff --git a/sys-devel/m4/files/m4-1.4.18-glibc228.patch b/sys-devel/m4/files/m4-1.4.18-glibc228.patch new file mode 100644 index 000000000000..6b5593bfa639 --- /dev/null +++ b/sys-devel/m4/files/m4-1.4.18-glibc228.patch @@ -0,0 +1,310 @@ +Fix build failure on glibc-2.28: + fseeko.c: In function 'rpl_fseeko': + fseeko.c:110:4: error: #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib." + #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib." + +Patch by milan hodoscek. + +https://bugs.gentoo.org/663924 +--- a/old/stdio-impl.h ++++ b/lib/stdio-impl.h +@@ -1,5 +1,5 @@ + /* Implementation details of FILE streams. +- Copyright (C) 2007-2008, 2010-2016 Free Software Foundation, Inc. ++ Copyright (C) 2007-2008, 2010-2018 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -12,12 +12,18 @@ + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License +- along with this program. If not, see <http://www.gnu.org/licenses/>. */ ++ along with this program. If not, see <https://www.gnu.org/licenses/>. */ + + /* Many stdio implementations have the same logic and therefore can share + the same implementation of stdio extension API, except that some fields + have different naming conventions, or their access requires some casts. */ + ++/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this ++ problem by defining it ourselves. FIXME: Do not rely on glibc ++ internals. */ ++#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN ++# define _IO_IN_BACKUP 0x100 ++#endif + + /* BSD stdio derived implementations. */ + +@@ -29,10 +35,10 @@ + #include <errno.h> /* For detecting Plan9. */ + + #if defined __sferror || defined __DragonFly__ || defined __ANDROID__ +- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ ++ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ + + # if defined __DragonFly__ /* DragonFly */ +- /* See <http://www.dragonflybsd.org/cvsweb/src/lib/libc/stdio/priv_stdio.h?rev=HEAD&content-type=text/x-cvsweb-markup>. */ ++ /* See <https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/lib/libc/stdio/priv_stdio.h>. */ + # define fp_ ((struct { struct __FILE_public pub; \ + struct { unsigned char *_base; int _size; } _bf; \ + void *cookie; \ +@@ -49,30 +55,84 @@ + fpos_t _offset; \ + /* More fields, not relevant here. */ \ + } *) fp) +- /* See <http://www.dragonflybsd.org/cvsweb/src/include/stdio.h?rev=HEAD&content-type=text/x-cvsweb-markup>. */ ++ /* See <https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/include/stdio.h>. */ + # define _p pub._p + # define _flags pub._flags + # define _r pub._r + # define _w pub._w ++# elif defined __ANDROID__ /* Android */ ++ /* Up to this commit from 2015-10-12 ++ <https://android.googlesource.com/platform/bionic.git/+/f0141dfab10a4b332769d52fa76631a64741297a> ++ the innards of FILE were public, and fp_ub could be defined like for OpenBSD, ++ see <https://android.googlesource.com/platform/bionic.git/+/e78392637d5086384a5631ddfdfa8d7ec8326ee3/libc/stdio/fileext.h> ++ and <https://android.googlesource.com/platform/bionic.git/+/e78392637d5086384a5631ddfdfa8d7ec8326ee3/libc/stdio/local.h>. ++ After this commit, the innards of FILE are hidden. */ ++# define fp_ ((struct { unsigned char *_p; \ ++ int _r; \ ++ int _w; \ ++ int _flags; \ ++ int _file; \ ++ struct { unsigned char *_base; size_t _size; } _bf; \ ++ int _lbfsize; \ ++ void *_cookie; \ ++ void *_close; \ ++ void *_read; \ ++ void *_seek; \ ++ void *_write; \ ++ struct { unsigned char *_base; size_t _size; } _ext; \ ++ unsigned char *_up; \ ++ int _ur; \ ++ unsigned char _ubuf[3]; \ ++ unsigned char _nbuf[1]; \ ++ struct { unsigned char *_base; size_t _size; } _lb; \ ++ int _blksize; \ ++ fpos_t _offset; \ ++ /* More fields, not relevant here. */ \ ++ } *) fp) + # else + # define fp_ fp + # endif + +-# if (defined __NetBSD__ && __NetBSD_Version__ >= 105270000) || defined __OpenBSD__ || defined __ANDROID__ /* NetBSD >= 1.5ZA, OpenBSD, Android */ ++# if (defined __NetBSD__ && __NetBSD_Version__ >= 105270000) || defined __OpenBSD__ || defined __minix /* NetBSD >= 1.5ZA, OpenBSD, Minix 3 */ + /* See <http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup> +- and <http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup> */ ++ and <https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdio/fileext.h?rev=HEAD&content-type=text/x-cvsweb-markup> ++ and <https://github.com/Stichting-MINIX-Research-Foundation/minix/blob/master/lib/libc/stdio/fileext.h> */ + struct __sfileext + { + struct __sbuf _ub; /* ungetc buffer */ + /* More fields, not relevant here. */ + }; + # define fp_ub ((struct __sfileext *) fp->_ext._base)->_ub +-# else /* FreeBSD, NetBSD <= 1.5Z, DragonFly, Mac OS X, Cygwin, Android */ ++# elif defined __ANDROID__ /* Android */ ++ struct __sfileext ++ { ++ struct { unsigned char *_base; size_t _size; } _ub; /* ungetc buffer */ ++ /* More fields, not relevant here. */ ++ }; ++# define fp_ub ((struct __sfileext *) fp_->_ext._base)->_ub ++# else /* FreeBSD, NetBSD <= 1.5Z, DragonFly, Mac OS X, Cygwin */ + # define fp_ub fp_->_ub + # endif + + # define HASUB(fp) (fp_ub._base != NULL) + ++# if defined __ANDROID__ /* Android */ ++ /* Needed after this commit from 2016-01-25 ++ <https://android.googlesource.com/platform/bionic.git/+/e70e0e9267d069bf56a5078c99307e08a7280de7> */ ++# ifndef __SEOF ++# define __SLBF 1 ++# define __SNBF 2 ++# define __SRD 4 ++# define __SWR 8 ++# define __SRW 0x10 ++# define __SEOF 0x20 ++# define __SERR 0x40 ++# endif ++# ifndef __SOFF ++# define __SOFF 0x1000 ++# endif ++# endif ++ + #endif + + +@@ -81,7 +141,7 @@ + #ifdef __TANDEM /* NonStop Kernel */ + # ifndef _IOERR + /* These values were determined by the program 'stdioext-flags' at +- <http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00165.html>. */ ++ <https://lists.gnu.org/r/bug-gnulib/2010-12/msg00165.html>. */ + # define _IOERR 0x40 + # define _IOREAD 0x80 + # define _IOWRT 0x4 +@@ -99,6 +159,8 @@ + int _file; \ + unsigned int _flag; \ + } *) fp) ++# elif defined __VMS /* OpenVMS */ ++# define fp_ ((struct _iobuf *) fp) + # else + # define fp_ fp + # endif +@@ -110,7 +172,7 @@ + # define _flag __flag + # endif + +-#elif (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ /* newer Windows with MSVC */ ++#elif defined _WIN32 && ! defined __CYGWIN__ /* newer Windows with MSVC */ + + /* <stdio.h> does not define the innards of FILE any more. */ + # define WINDOWS_OPAQUE_FILE +@@ -130,7 +192,7 @@ struct _gl_real_FILE + # define fp_ ((struct _gl_real_FILE *) fp) + + /* These values were determined by a program similar to the one at +- <http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00165.html>. */ ++ <https://lists.gnu.org/r/bug-gnulib/2010-12/msg00165.html>. */ + # define _IOREAD 0x1 + # define _IOWRT 0x2 + # define _IORW 0x4 +--- a/old/fseeko.c ++++ b/lib/fseeko.c +@@ -1,5 +1,5 @@ + /* An fseeko() function that, together with fflush(), is POSIX compliant. +- Copyright (C) 2007-2016 Free Software Foundation, Inc. ++ Copyright (C) 2007-2018 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -12,7 +12,7 @@ + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along +- with this program; if not, see <http://www.gnu.org/licenses/>. */ ++ with this program; if not, see <https://www.gnu.org/licenses/>. */ + + #include <config.h> + +@@ -33,9 +33,9 @@ fseeko (FILE *fp, off_t offset, int whence) + #endif + #if _GL_WINDOWS_64_BIT_OFF_T + # undef fseeko +-# if HAVE__FSEEKI64 /* msvc, mingw64 */ ++# if HAVE__FSEEKI64 && HAVE_DECL__FSEEKI64 /* msvc, mingw since msvcrt8.0, mingw64 */ + # define fseeko _fseeki64 +-# else /* mingw */ ++# else /* mingw before msvcrt8.0 */ + # define fseeko fseeko64 + # endif + #endif +@@ -47,12 +47,13 @@ fseeko (FILE *fp, off_t offset, int whence) + #endif + + /* These tests are based on fpurge.c. */ +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ ++#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 ++ /* GNU libc, BeOS, Haiku, Linux libc5 */ + if (fp->_IO_read_end == fp->_IO_read_ptr + && fp->_IO_write_ptr == fp->_IO_write_base + && fp->_IO_save_base == NULL) + #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ +- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ ++ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ + # if defined __SL64 && defined __SCLE /* Cygwin */ + if ((fp->_flags & __SL64) == 0) + { +@@ -80,7 +81,7 @@ fseeko (FILE *fp, off_t offset, int whence) + #elif defined __minix /* Minix */ + if (fp_->_ptr == fp_->_buf + && (fp_->_ptr == NULL || fp_->_count == 0)) +-#elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel */ ++#elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */ + if (fp_->_ptr == fp_->_base + && (fp_->_ptr == NULL || fp_->_cnt == 0)) + #elif defined __UCLIBC__ /* uClibc */ +@@ -117,18 +118,19 @@ fseeko (FILE *fp, off_t offset, int whence) + if (pos == -1) + { + #if defined __sferror || defined __DragonFly__ || defined __ANDROID__ +- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ ++ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ + fp_->_flags &= ~__SOFF; + #endif + return -1; + } + +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ ++#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 ++ /* GNU libc, BeOS, Haiku, Linux libc5 */ + fp->_flags &= ~_IO_EOF_SEEN; + fp->_offset = pos; + #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ +- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ +-# if defined __CYGWIN__ || (defined __NetBSD__ && __NetBSD_Version__ >= 600000000) ++ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ ++# if defined __CYGWIN__ || (defined __NetBSD__ && __NetBSD_Version__ >= 600000000) || defined __minix + /* fp_->_offset is typed as an integer. */ + fp_->_offset = pos; + # else +@@ -150,7 +152,7 @@ fseeko (FILE *fp, off_t offset, int whence) + fp_->_flags &= ~__SEOF; + #elif defined __EMX__ /* emx+gcc */ + fp->_flags &= ~_IOEOF; +-#elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel */ ++#elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw, MSVC, NonStop Kernel, OpenVMS */ + fp_->_flag &= ~_IOEOF; + #elif defined __MINT__ /* Atari FreeMiNT */ + fp->__offset = pos; +--- a/old/freadahead.c ++++ b/lib/freadahead.c +@@ -1,5 +1,5 @@ + /* Retrieve information about a FILE stream. +- Copyright (C) 2007-2016 Free Software Foundation, Inc. ++ Copyright (C) 2007-2018 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by +@@ -12,7 +12,7 @@ + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License +- along with this program. If not, see <http://www.gnu.org/licenses/>. */ ++ along with this program. If not, see <https://www.gnu.org/licenses/>. */ + + #include <config.h> + +@@ -22,17 +22,26 @@ + #include <stdlib.h> + #include "stdio-impl.h" + ++#if defined __DragonFly__ ++/* Defined in libc, but not declared in <stdio.h>. */ ++extern size_t __sreadahead (FILE *); ++#endif ++ ++/* This file is not used on systems that have the __freadahead function, ++ namely musl libc. */ ++ + size_t + freadahead (FILE *fp) + { +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ ++#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 ++ /* GNU libc, BeOS, Haiku, Linux libc5 */ + if (fp->_IO_write_ptr > fp->_IO_write_base) + return 0; + return (fp->_IO_read_end - fp->_IO_read_ptr) + + (fp->_flags & _IO_IN_BACKUP ? fp->_IO_save_end - fp->_IO_save_base : + 0); + #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ +- /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */ ++ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ + if ((fp_->_flags & __SWR) != 0 || fp_->_r < 0) + return 0; + # if defined __DragonFly__ diff --git a/sys-devel/m4/m4-1.4.18.ebuild b/sys-devel/m4/m4-1.4.18.ebuild index 9c6670123534..378946733cae 100644 --- a/sys-devel/m4/m4-1.4.18.ebuild +++ b/sys-devel/m4/m4-1.4.18.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2018 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="5" @@ -20,6 +20,8 @@ RDEPEND="" src_prepare() { epatch "${FILESDIR}"/${P}-darwin17-printf-n.patch + epatch "${FILESDIR}"/${P}-glibc228.patch #663924 + epatch_user default } |