commit:     27c1365ddac261581a5e97294c162a5669521228
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri May 19 23:42:38 2017 +0000
Commit:     Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri May 19 23:43:06 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27c1365d

dev-db/firebird: Builds, but the install phase needs more analysis

Package-Manager: Portage-2.3.5, Repoman-2.3.2

 .../firebird-3.0.2.32703.0-cloop-compiler.patch    | 15 +++++++++++
 .../files/firebird-3.0.2.32703.0-gcc6.patch        | 19 +++++++++++++
 dev-db/firebird/firebird-3.0.2.32703.0.ebuild      | 31 +++++-----------------
 3 files changed, 40 insertions(+), 25 deletions(-)

diff --git a/dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch 
b/dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch
new file mode 100644
index 00000000000..363602bed8f
--- /dev/null
+++ b/dev-db/firebird/files/firebird-3.0.2.32703.0-cloop-compiler.patch
@@ -0,0 +1,15 @@
+Source: LibreOffice git master
+
+
+diff -ur firebird.org/extern/cloop/Makefile firebird/extern/cloop/Makefile
+--- firebird.org/extern/cloop/Makefile 2016-08-17 18:32:59.078044357 +0200
++++ firebird/extern/cloop/Makefile     2016-08-17 18:33:14.430518561 +0200
+@@ -4,8 +4,6 @@
+ 
+ TARGET        := release
+ 
+-CC    := gcc
+-CXX   := g++
+ LD    := $(CXX)
+ 
+ SRC_DIR               := src

diff --git a/dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch 
b/dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch
new file mode 100644
index 00000000000..e1361415c03
--- /dev/null
+++ b/dev-db/firebird/files/firebird-3.0.2.32703.0-gcc6.patch
@@ -0,0 +1,19 @@
+commit 3618aa2171674babf79ef935aa049c40a3db1321
+Author: asfernandes <[email protected]>
+Date:   Sat Mar 5 03:39:36 2016 +0000
+
+    Make the generated code compatible with gcc 6 in C++-14 mode.
+
+diff --git a/src/gpre/c_cxx.cpp b/src/gpre/c_cxx.cpp
+index 2af96c6..2dcffd6 100644
+--- a/src/gpre/c_cxx.cpp
++++ b/src/gpre/c_cxx.cpp
+@@ -2820,7 +2820,7 @@ static void gen_request(const gpre_req* request)
+               printa(0, "static %sshort\n   isc_%dl = %d;",
+                          (request->req_flags & REQ_extend_dpb) ? "" : 
CONST_STR,
+                          request->req_ident, request->req_length);
+-              printa(0, "static %schar\n   isc_%d [] = {", CONST_STR, 
request->req_ident);
++              printa(0, "static %sunsigned char\n   isc_%d [] = {", 
CONST_STR, request->req_ident);
+ 
+               const TEXT* string_type = "blr";
+               if (gpreGlob.sw_raw)

diff --git a/dev-db/firebird/firebird-3.0.2.32703.0.ebuild 
b/dev-db/firebird/firebird-3.0.2.32703.0.ebuild
index 9180b5aa186..4cf71cd1fe1 100644
--- a/dev-db/firebird/firebird-3.0.2.32703.0.ebuild
+++ b/dev-db/firebird/firebird-3.0.2.32703.0.ebuild
@@ -34,9 +34,10 @@ RDEPEND="${CDEPEND}
 
 S="${WORKDIR}/${MY_P}"
 
-# this is work in progress and likely does not build yet
 PATCHES=(
-       "${FILESDIR}/${P}-unbundle.patch"
+       "${FILESDIR}/${P}"-unbundle.patch
+       "${FILESDIR}/${P}"-gcc6.patch
+       "${FILESDIR}/${P}"-cloop-compiler.patch
 )
 
 pkg_setup() {
@@ -84,11 +85,10 @@ src_configure() {
        filter-flags -fprefetch-loop-arrays
        filter-mfpmath sse
 
-       # otherwise this doesnt build with gcc-6?
+       # otherwise this doesnt build with gcc-6
        # http://tracker.firebirdsql.org/browse/CORE-5099
        append-cflags -fno-sized-deallocation -fno-delete-null-pointer-checks
-       append-cxxflags -fno-sized-deallocation -fno-delete-null-pointer-checks 
-Wno-narrowing
-       # -std=c++11
+       append-cxxflags -fno-sized-deallocation -fno-delete-null-pointer-checks
 
        econf \
                --prefix=/usr/$(get_libdir)/firebird \
@@ -130,8 +130,6 @@ src_install() {
 
        doheader include/*
 
-       rm lib/libfbstatic.a || die "failed to remove libfbstatic.a"
-
        insinto /usr/$(get_libdir)
        dolib.so lib/*.so*
 
@@ -146,29 +144,12 @@ src_install() {
        einfo "Renaming isql -> fbsql"
        mv bin/isql bin/fbsql || die "failed to rename isql -> fbsql"
 
-       local bins="fbsql fbsvcmgr fbtracemgr gbak gdef gfix gpre gsec gstat 
nbackup qli"
+       local bins="fbguard fbsql fbsvcmgr fbtracemgr firebird gbak gfix gpre 
gpre_boot gpre_current gsec gsplit gstat nbackup qli"
        for bin in ${bins}; do
                dobin bin/${bin}
        done
 
        dosbin bin/fb_lock_print
-       # SuperServer
-       if use superserver ; then
-               dosbin bin/{fbguard,fbserver}
-       # ClassicServer
-       elif use xinetd ; then
-               dosbin bin/fb_inet_server
-       # SuperClassic
-       else
-               dosbin bin/{fbguard,fb_smp_server}
-
-               #Temp should not be necessary, need to patch/fix
-               dosym ../../libib_util.so 
/usr/$(get_libdir)/${PN}/lib/libib_util.so
-       fi
-
-       exeinto /usr/bin/${PN}
-       exeopts -m0755
-       doexe bin/{changeRunUser,restoreRootRunUser,changeDBAPassword}.sh
 
        insinto /usr/$(get_libdir)/${PN}/help
        doins help/help.fdb

Reply via email to