commit:     46573bad4a55a674fb24b26ec74565e988c44811
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  3 11:30:42 2024 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sun Nov  3 11:35:11 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46573bad

app-crypt/gnupg: clarify/refresh Solaris workarounds

- Filed upstream bug for the standards problems:
  https://dev.gnupg.org/T7368
- Define _XOPEN_SOURCE=500 for 2.4.6 to resolve the mismatch
- Force configure machinery to kick in for 2.5.1

Closes: https://bugs.gentoo.org/942793
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 app-crypt/gnupg/gnupg-2.4.6-r1.ebuild | 9 +++++----
 app-crypt/gnupg/gnupg-2.5.1.ebuild    | 9 +++++----
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/app-crypt/gnupg/gnupg-2.4.6-r1.ebuild 
b/app-crypt/gnupg/gnupg-2.4.6-r1.ebuild
index a9d778121bd4..0b2fe344f8c9 100644
--- a/app-crypt/gnupg/gnupg-2.4.6-r1.ebuild
+++ b/app-crypt/gnupg/gnupg-2.4.6-r1.ebuild
@@ -96,10 +96,6 @@ src_prepare() {
        # which in turn requires discovery in Autoconf, something that upstream 
deeply resents.
        sed -e "/DirectoryMode=/a ExecStartPost=-${EPREFIX}/bin/systemctl 
--user set-environment SSH_AUTH_SOCK=%t/gnupg/S.gpg-agent.ssh" \
                -i "${T}"/gpg-agent-ssh.socket || die
-
-       # definition of getpeername etc uses different things like socket_fd_t
-       [[ ${CHOST} == *-solaris* ]] &&
-               append-cflags $(test-flags-CC -Wno-incompatible-pointer-types)
 }
 
 my_src_configure() {
@@ -147,6 +143,11 @@ my_src_configure() {
                append-cppflags -I"${ESYSROOT}/usr/include/libusb-1.0"
        fi
 
+       if [[ ${CHOST} == *-solaris* ]] ; then
+               # https://dev.gnupg.org/T7368
+               append-cppflags -D_XOPEN_SOURCE=500
+       fi
+
        # bug #663142
        if use user-socket; then
                myconf+=( --enable-run-gnupg-user-socket )

diff --git a/app-crypt/gnupg/gnupg-2.5.1.ebuild 
b/app-crypt/gnupg/gnupg-2.5.1.ebuild
index 382e366f6c0d..af4b2cee9a10 100644
--- a/app-crypt/gnupg/gnupg-2.5.1.ebuild
+++ b/app-crypt/gnupg/gnupg-2.5.1.ebuild
@@ -95,10 +95,6 @@ src_prepare() {
        # which in turn requires discovery in Autoconf, something that upstream 
deeply resents.
        sed -e "/DirectoryMode=/a ExecStartPost=-${EPREFIX}/bin/systemctl 
--user set-environment SSH_AUTH_SOCK=%t/gnupg/S.gpg-agent.ssh" \
                -i "${T}"/gpg-agent-ssh.socket || die
-
-       # definition of getpeername etc uses different things like socket_fd_t
-       [[ ${CHOST} == *-solaris* ]] &&
-               append-cflags $(test-flags-CC -Wno-incompatible-pointer-types)
 }
 
 my_src_configure() {
@@ -146,6 +142,11 @@ my_src_configure() {
                append-cppflags -I"${ESYSROOT}/usr/include/libusb-1.0"
        fi
 
+       if [[ ${CHOST} == *-solaris* ]] ; then
+               # https://dev.gnupg.org/T7368
+               export ac_cv_should_define__xopen_source=yes
+       fi
+
        # bug #663142
        if use user-socket; then
                myconf+=( --enable-run-gnupg-user-socket )

Reply via email to