commit:     7070a6dc14c2adb697e05dbe898da461729916b0
Author:     Kent Fredric <kentnl <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  1 16:47:27 2018 +0000
Commit:     Kent Fredric <kentnl <AT> gentoo <DOT> org>
CommitDate: Sun Apr  1 16:47:58 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7070a6dc

dev-perl/Ace: Fixes for bugs #637102 and #637330

- Use toolchain-funcs for Darwin support ( #637102 )
- Fix 'non-void function should return a value' ( #637330 )
- Migrate sed patches to git-am patches where possible

Closes: https://bugs.gentoo.org/637330
Bug: https://bugs.gentoo.org/637102
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-perl/Ace/Ace-1.920.0-r3.ebuild            | 12 ++++++-----
 dev-perl/Ace/files/Ace-1.92-gcc-nonvoid.patch | 31 +++++++++++++++++++++++++++
 dev-perl/Ace/files/Ace-1.92-glibc26.patch     | 29 +++++++++++++++++++++++++
 dev-perl/Ace/files/Ace-1.92-rpcxs.patch       | 25 +++++++++++++++++++++
 4 files changed, 92 insertions(+), 5 deletions(-)

diff --git a/dev-perl/Ace/Ace-1.920.0-r3.ebuild 
b/dev-perl/Ace/Ace-1.920.0-r3.ebuild
index c8263c2086b..e46cfba0c5e 100644
--- a/dev-perl/Ace/Ace-1.920.0-r3.ebuild
+++ b/dev-perl/Ace/Ace-1.920.0-r3.ebuild
@@ -7,7 +7,7 @@ DIST_NAME=AcePerl
 DIST_AUTHOR=LDS
 DIST_VERSION=1.92
 DIST_EXAMPLES=("examples/*")
-inherit perl-module
+inherit perl-module toolchain-funcs
 
 DESCRIPTION="Object-Oriented Access to ACEDB Databases"
 
@@ -23,18 +23,20 @@ RDEPEND="virtual/perl-Digest-MD5
 DEPEND="${RDEPEND}"
 
 src_prepare() {
-       sed -i 's/", "1")/", "3")/' "${S}/Makefile.PL" || die "Can't patch 
config"
+       eapply "${FILESDIR}/${PN}-1.92-rpcxs.patch"
+       eapply "${FILESDIR}/${PN}-1.92-gcc-nonvoid.patch"
+
        cat > "${S}/acelib/wmake/DARWIN_DEF" <<EOF
 NAME = DARWIN
-COMPILER = clang -fwritable-strings -DACEDB4 -DPOSIX
-LINKER = clang
+COMPILER = $(tc-getCC) -fwritable-strings -DACEDB4 -DPOSIX
+LINKER = $(tc-getLD)
 
 LIBS = -lm
 
 EOF
 
        if use elibc_glibc ; then
-               sed -i -e 's:^USEROPTS=:USEROPTS=-I/usr/include/tirpc :g' -e 
's:^LIBS =:LIBS = -ltirpc:g' "${S}/acelib/wmake/LINUX_DEF"
+               eapply "${FILESDIR}/${PN}-1.92-glibc26.patch"
                export LIBS="-ltirpc"
        fi
 

diff --git a/dev-perl/Ace/files/Ace-1.92-gcc-nonvoid.patch 
b/dev-perl/Ace/files/Ace-1.92-gcc-nonvoid.patch
new file mode 100644
index 00000000000..78c0572ed6f
--- /dev/null
+++ b/dev-perl/Ace/files/Ace-1.92-gcc-nonvoid.patch
@@ -0,0 +1,31 @@
+From c36659030eab65bcf7017e099377bf87a04d1667 Mon Sep 17 00:00:00 2001
+From: Anton Molyboha <anton.stay.connec...@gmail.com>
+Date: Fri, 10 Nov 2017 17:37:54 -0500
+Subject: Fix compile with newer gcc "non-void function 'constant' should ..."
+
+Bug: https://bugs.gentoo.org/637330
+Bug: https://rt.cpan.org/Ticket/Display.html?id=123593
+---
+ RPC/RPC.xs | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/RPC/RPC.xs b/RPC/RPC.xs
+index 3e059c0..cd4f6fa 100644
+--- a/RPC/RPC.xs
++++ b/RPC/RPC.xs
+@@ -152,12 +152,6 @@ int arg;
+     case 'Z':
+       break;
+     case '_':
+-      if (strEQ(name, "_ACECLIENT_"))
+-#ifdef _ACECLIENT_
+-          return _ACECLIENT_;
+-#else
+-          goto not_there;
+-#endif
+       break;
+     }
+     errno = EINVAL;
+-- 
+2.16.2
+

diff --git a/dev-perl/Ace/files/Ace-1.92-glibc26.patch 
b/dev-perl/Ace/files/Ace-1.92-glibc26.patch
new file mode 100644
index 00000000000..93913485b2f
--- /dev/null
+++ b/dev-perl/Ace/files/Ace-1.92-glibc26.patch
@@ -0,0 +1,29 @@
+From 79cbe4803f73eab5474e709b20ed570a44071182 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= <dilfri...@gentoo.org>
+Date: Sat, 31 Mar 2018 08:12:32 +1300
+Subject: Fix building with GlibC 2.26
+
+Bug: https://bugs.gentoo.org/637114
+---
+ acelib/wmake/LINUX_DEF | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/acelib/wmake/LINUX_DEF b/acelib/wmake/LINUX_DEF
+index ba96774..bd89334 100644
+--- a/acelib/wmake/LINUX_DEF
++++ b/acelib/wmake/LINUX_DEF
+@@ -18,9 +18,9 @@
+ NAME = LINUX
+ COMPILER = gcc -g -Wall -O2 -DACEDB4
+ LINKER = gcc -g
+-USEROPTS=-fPIC
++USEROPTS=-I/usr/include/tirpc -fPIC
+ 
+-LIBS = -lm
++LIBS = -ltirpc -lm
+ Xt_LIBS = -L/usr/X11R6/lib -lXaw -lXt -lXmu -lXext -lX11
+ LEX_LIBS = 
+ 
+-- 
+2.16.2
+

diff --git a/dev-perl/Ace/files/Ace-1.92-rpcxs.patch 
b/dev-perl/Ace/files/Ace-1.92-rpcxs.patch
new file mode 100644
index 00000000000..be67f6fe116
--- /dev/null
+++ b/dev-perl/Ace/files/Ace-1.92-rpcxs.patch
@@ -0,0 +1,25 @@
+From f44e3b39758057e3a5af7654768d40de2b249ae5 Mon Sep 17 00:00:00 2001
+From: Kent Fredric <ken...@gentoo.org>
+Date: Fri, 13 Oct 2017 17:30:57 +1300
+Subject: Enable RPC and XS support
+
+---
+ Makefile.PL | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.PL b/Makefile.PL
+index 232bc42..7a312fd 100644
+--- a/Makefile.PL
++++ b/Makefile.PL
+@@ -10,7 +10,7 @@ while (!$choice) {
+                 "  1) Interface to Ace socket server and local databases 
(pure Perl)\n" .
+                 "  2) The above plus XS optimizations (requires C 
compiler)\n" .
+                 "  3) The above plus RPC server interface (requires C 
compiler)\n\n" .
+-                "Enter your choice: ", "1");
++                "Enter your choice: ", "3");
+   if ($reply =~ /(\d+)/) {
+     $choice = $1;
+     die "invalid choice: $choice!" if $choice < 1  ||  $choice > 3;
+-- 
+2.16.2
+

Reply via email to