Browse Source

[dev-libs/Ice] put back db 5.1 support since that is stable, no idea if 5.3 gets stable anytime soon, add libressl support, apply patch from PLD which maybe can fix bug 552702

master
Robert Förster 6 years ago
parent
commit
98a6dfa42a
  1. 29
      dev-libs/Ice/Ice-3.6.1.ebuild
  2. 23
      dev-libs/Ice/files/Ice-3.6.1-libressl.patch
  3. 31
      dev-libs/Ice/files/Ice-3.6.1-no-arch-opts.patch

29
dev-libs/Ice/Ice-3.6.1.ebuild

@ -26,12 +26,16 @@ SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="GPL-2"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm ~ia64 ~x86 ~x86-linux ~x64-macos"
IUSE="doc examples +ncurses mono php php_namespaces python ruby test debug"
IUSE="doc examples libressl +ncurses mono php php_namespaces python ruby test debug"
RDEPEND=">=dev-libs/expat-2.0.1
>=app-arch/bzip2-1.0.5
>=dev-libs/openssl-0.9.8o:0
sys-libs/db:5.3[cxx]
!libressl? ( >=dev-libs/openssl-0.9.8o:0 )
libressl? ( dev-libs/libressl )
|| (
sys-libs/db:5.3[cxx]
sys-libs/db:5.1[cxx]
)
dev-cpp/libmcpp
python? ( ${PYTHON_DEPS} )
ruby? ( $(ruby_implementation_depend ruby22) )
@ -71,6 +75,8 @@ src_unpack() {
}
src_prepare() {
epatch "${FILESDIR}/${P}-libressl.patch"
epatch "${FILESDIR}/${P}-no-arch-opts.patch"
epatch "${FILESDIR}/${P}-csharp.patch"
sed -i \
-e 's|\(install_configdir[[:space:]]*\):=|\1?=|' \
@ -114,6 +120,18 @@ src_prepare() {
fi
}
suitable_db_version() {
local tested_slots="5.3 5.1"
for ver in ${tested_slots}; do
if [[ -n $(db_findver sys-libs/db:${ver}) ]]; then
echo ${ver}
return 0
fi
done
die "No suitable BerkDB versions found, aborting"
}
src_configure() {
MAKE_RULES="prefix=\"${ED}/usr\"
install_docdir=\"${ED}/usr/share/doc/${PF}\"
@ -126,13 +144,14 @@ src_configure() {
use ncurses && OPTIONS="${MAKE_RULES} USE_READLINE=yes" || MAKE_RULES="${MAKE_RULES} USE_READLINE=no"
use debug && OPTIONS="${MAKE_RULES} OPTIMIZE=no" || MAKE_RULES="${MAKE_RULES} OPTIMIZE=yes"
MAKE_RULES="${MAKE_RULES} DB_FLAGS=-I$(db_includedir 5.3)"
local BERKDB_VERSION="$(suitable_db_version)"
MAKE_RULES="${MAKE_RULES} DB_FLAGS=-I$(db_includedir ${BERKDB_VERSION})"
sed -i \
-e "s|g++|$(tc-getCXX)|" \
-e "s|\(CFLAGS[[:space:]]*=\)|\1 ${CFLAGS}|" \
-e "s|\(CXXFLAGS[[:space:]]*=\)|\1 ${CXXFLAGS}|" \
-e "s|\(LDFLAGS[[:space:]]*=\)|\1 ${LDFLAGS}|" \
-e "s|\(DB_LIBS[[:space:]]*=\) \-ldb_cxx|\1 -ldb_cxx-$(db_findver sys-libs/db:5.3)|" \
-e "s|\(DB_LIBS[[:space:]]*=\) \-ldb_cxx|\1 -ldb_cxx-$(db_findver sys-libs/db:${BERKDB_VERSION})|" \
cpp/config/Make.rules{,.Linux} python/config/Make.rules || die "sed failed"
if use python ; then

23
dev-libs/Ice/files/Ice-3.6.1-libressl.patch

@ -0,0 +1,23 @@
From 5974de7290be5097960a117321fc87fa8fb607d4 Mon Sep 17 00:00:00 2001
From: hasufell <hasufell@hasufell.de>
Date: Sat, 3 Oct 2015 15:40:56 +0200
Subject: [PATCH] Fix compilation with LibreSSL
Signed-off-by: Joe George <joe@zeroc.com>
---
cpp/src/IceSSL/OpenSSLEngine.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cpp/src/IceSSL/OpenSSLEngine.cpp b/cpp/src/IceSSL/OpenSSLEngine.cpp
index 5ec9186..a5e857c 100644
--- a/cpp/src/IceSSL/OpenSSLEngine.cpp
+++ b/cpp/src/IceSSL/OpenSSLEngine.cpp
@@ -259,7 +259,7 @@ OpenSSLEngine::OpenSSLEngine(const CommunicatorPtr& communicator) :
}
}
}
-# ifndef _WIN32
+# if !defined (_WIN32) && !defined (OPENSSL_NO_EGD)
//
// The Entropy Gathering Daemon (EGD) is not available on Windows.
// The file should be a Unix domain socket for the daemon.

31
dev-libs/Ice/files/Ice-3.6.1-no-arch-opts.patch

@ -0,0 +1,31 @@
--- ice-3.6.0/cpp/config/Make.rules.Linux~ 2015-06-27 16:56:56.000000000 +0200
+++ ice-3.6.0/cpp/config/Make.rules.Linux 2015-06-27 17:23:45.810591931 +0200
@@ -71,14 +71,6 @@
CXXARCHFLAGS += -mtune=v8 -pipe -Wno-deprecated -DICE_USE_MUTEX_SHARED
endif
- ifeq ($(MACHINE),x86_64)
- ifeq ($(LP64),yes)
- CXXARCHFLAGS += -m64
- else
- CXXARCHFLAGS += -m32
- endif
- endif
-
CXXFLAGS += $(CXXARCHFLAGS) -fvisibility=hidden -Wall -Werror -pthread
# If MAXWARN is set then enable extra warnings
--- ice-3.6.0/config/Make.common.rules~ 2015-06-23 17:30:20.000000000 +0200
+++ ice-3.6.0/config/Make.common.rules 2015-06-28 01:53:57.149666595 +0200
@@ -104,11 +104,6 @@
LP64 = yes
endif
endif
- ifneq ($(STATICLIBS),yes)
- ifneq ($(LP64),yes)
- binsuffix = 32
- endif
- endif
endif
ifeq ($(shell test -d $(usr_dir)/lib/i386-linux-gnu && echo 0),0)
Loading…
Cancel
Save