[dev-libs/Ice] version bump, re-add py3k4 since its still supported upstream, use 3.6.1 pdf since upstream has not updated it yet

This commit is contained in:
Robert Förster 2016-04-06 01:08:08 +02:00
parent cf324a49fb
commit 4a95d27e2a
7 changed files with 49 additions and 420 deletions

View File

@ -4,10 +4,10 @@
EAPI=5
PYTHON_COMPAT=( python{2_7,3_4} pypy )
PYTHON_COMPAT=( python{2_7,3_4,3_5} pypy )
RUBY_OPTIONAL="yes"
USE_RUBY="ruby22"
USE_RUBY="ruby23"
PHP_EXT_NAME="IcePHP"
PHP_EXT_INI="yes"
@ -22,7 +22,7 @@ inherit toolchain-funcs versionator php-ext-source-r2 python-r1 mono-env ruby-ng
DESCRIPTION="ICE middleware C++ library and generator tools"
HOMEPAGE="http://www.zeroc.com/"
SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
doc? ( http://www.zeroc.com/download/Ice/$(get_version_component_range 1-2)/${P}.pdf )"
doc? ( http://download.zeroc.com/Ice/$(get_version_component_range 1-2)/${PN}-3.6.1.pdf )"
LICENSE="GPL-2"
SLOT="0/36"
KEYWORDS="~amd64 ~x86"
@ -38,7 +38,7 @@ RDEPEND=">=dev-libs/expat-2.0.1
)
dev-cpp/libmcpp
python? ( ${PYTHON_DEPS} )
ruby? ( $(ruby_implementation_depend ruby22) )
ruby? ( $(ruby_implementation_depend ruby23) )
mono? ( dev-lang/mono )
php? ( dev-lang/php:5.6 )
php_namespaces? ( dev-lang/php:5.6 )
@ -77,11 +77,8 @@ src_unpack() {
}
src_prepare() {
epatch "${FILESDIR}/${P}-libressl.patch"
epatch "${FILESDIR}/${P}-no-arch-opts.patch"
epatch "${FILESDIR}/${P}-csharp.patch"
epatch "${FILESDIR}/${P}-python-test.patch"
epatch "${FILESDIR}/${P}-python-test-import.patch"
sed -i \
-e 's|\(install_configdir[[:space:]]*\):=|\1?=|' \
-e 's|-L\$\(libdir\)||' \
@ -173,24 +170,24 @@ src_configure() {
if use python ; then
S=${S}/python python_copy_sources
# make a place for the symlink
rm -r python/python || die
# make a place for the build hackery
rm -r "${WORKDIR}/${PN}"/python || die
fi
if use ruby ; then
SITERUBY="$(ruby22 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
SITERUBY="$(ruby23 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
MAKE_RULES_RB="install_rubydir=\"${ED}/${SITERUBY}\"
install_libdir=\"${ED}/${SITERUBY}\""
# make it use ruby22 only
# make it use ruby23 only
sed -i \
-e 's|RUBY = ruby|\022|' \
-e 's|RUBY = ruby|\023|' \
ruby/config/Make.rules || die "sed failed"
sed -i \
-e 's|env ruby|\022|' \
-e 's|env ruby|\023|' \
ruby/config/s2rb.rb || die "sed failed"
sed -i \
-e 's|env ruby|\022|' \
-e 's|env ruby|\023|' \
ruby/scripts/slice2rb || die "sed failed"
fi
@ -238,7 +235,10 @@ src_compile() {
if use python ; then
building() {
emake -C "${BUILD_DIR}" ${MAKE_RULES} || die "emake python-${EPYTHON} failed"
# build requires that the directory is named 'python'
mv "${BUILD_DIR}" "${S}"/python || die
emake -C python ${MAKE_RULES} || die "emake python-${EPYTHON} failed"
mv "${S}"/python "${BUILD_DIR}"
}
BUILD_DIR=python python_foreach_impl building
fi
@ -252,6 +252,35 @@ src_compile() {
fi
}
src_test() {
export LD_LIBRARY_PATH="${S}/cpp/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
emake -C cpp ${MAKE_RULES} test || die "emake cpp test failed"
# php tests require the extension loaded and are therefore skipped
if use python ; then
testing() {
mv "${BUILD_DIR}" "${S}"/python || die
emake -C python ${MAKE_RULES} \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" \
test || die "emake python-${EPYTHON} test failed"
mv "${S}"/python "${BUILD_DIR}"
}
BUILD_DIR=python python_foreach_impl testing
fi
if use ruby ; then
emake -C ruby ${MAKE_RULES} ${MAKE_RULES_RB} test || die "emake ruby test failed"
fi
if use mono ; then
# skip mono tests, bug #498484
ewarn "Tests for C# are currently disabled."
# emake -C csharp ${MAKE_RULES} ${MAKE_RULES_CS} test || die "emake csharp test failed"
fi
}
src_install() {
dodoc CHANGELOG*.md README.md
@ -293,10 +322,12 @@ src_install() {
installation() {
mkdir -p "${D}/$(python_get_sitedir)" || die
emake -C "${BUILD_DIR}" ${MAKE_RULES} \
mv "${BUILD_DIR}" "${S}"/python || die
emake -C python ${MAKE_RULES} \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" \
install || die "emake python-${EPYTHON} install failed"
mv "${S}"/python "${BUILD_DIR}"
}
BUILD_DIR=python python_foreach_impl installation
fi
@ -310,34 +341,3 @@ src_install() {
emake -C csharp ${MAKE_RULES} ${MAKE_RULES_CS} install || die "emake csharp install failed"
fi
}
src_test() {
export LD_LIBRARY_PATH="${S}/cpp/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
emake -C cpp ${MAKE_RULES} test || die "emake cpp test failed"
# php tests require the extension loaded and are therefore skipped
if use python ; then
testing() {
# tests require that the directory is named 'python'
ln -f -s ../"${BUILD_DIR}"/python python/python || die
cd "${S}"/python
emake -C . ${MAKE_RULES} \
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
install_libdir="\"${D}/$(python_get_sitedir)\"" \
test || die "emake python-${EPYTHON} test failed"
cd "${S}"
}
BUILD_DIR=python python_foreach_impl testing
fi
if use ruby ; then
emake -C ruby ${MAKE_RULES} ${MAKE_RULES_RB} test || die "emake ruby test failed"
fi
if use mono ; then
# skip mono tests, bug #498484
ewarn "Tests for C# are currently disabled."
# emake -C csharp ${MAKE_RULES} ${MAKE_RULES_CS} test || die "emake csharp test failed"
fi
}

View File

@ -4,7 +4,7 @@
EAPI=5
PYTHON_COMPAT=( python{2_7,3_5} pypy )
PYTHON_COMPAT=( python{2_7,3_4,3_5} pypy )
RUBY_OPTIONAL="yes"
USE_RUBY="ruby23"
@ -82,7 +82,7 @@ src_unpack() {
}
src_prepare() {
epatch "${FILESDIR}/${PN}-3.6.1-no-arch-opts.patch"
epatch "${FILESDIR}/${PN}-3.6.2-no-arch-opts.patch"
epatch "${FILESDIR}/${PN}-3.6.2-csharp.patch"
sed -i \
-e 's|\(install_configdir[[:space:]]*\):=|\1?=|' \

View File

@ -1,50 +0,0 @@
--- ice-3.6.1/csharp/src/Makefile~ 2015-06-23 17:30:20.000000000 +0200
+++ ice-3.6.1/csharp/src/Makefile 2015-06-27 20:07:04.217188211 +0200
@@ -11,7 +11,7 @@
include $(top_srcdir)/config/Make.rules.cs
-SUBDIRS = Ice IceStorm Glacier2 IcePatch2 IceGrid IceBox IceDiscovery IceLocatorDiscovery
+SUBDIRS = Ice IceStorm Glacier2 IcePatch2 IceGrid IceBox IceSSL IceDiscovery IceLocatorDiscovery
$(EVERYTHING)::
@for subdir in $(SUBDIRS); \
--- /dev/null 2015-06-27 16:44:15.733558105 +0200
+++ ice-3.6.1/csharp/lib/pkgconfig/IceSSL.pc 2015-06-27 20:19:30.731894653 +0200
@@ -0,0 +1,10 @@
+version = 3.6.1
+mono_root = /usr
+
+name = IceSSL
+
+Name: ${name}
+Description: IceSSL run-time support
+Version: ${version}
+Libs: -r:${mono_root}/lib/mono/${name}/${name}.dll
+Requires: Ice = ${version}
--- /dev/null 2015-06-27 16:44:15.733558105 +0200
+++ ice-3.6.1/csharp/lib/pkgconfig/IceDiscovery.pc 2015-06-27 20:20:44.312515987 +0200
@@ -0,0 +1,10 @@
+version = 3.6.1
+mono_root = /usr
+
+name = IceDiscovery
+
+Name: ${name}
+Description: IceDiscovery run-time support
+Version: ${version}
+Libs: -r:${mono_root}/lib/mono/${name}/${name}.dll
+Requires: Ice = ${version}
--- /dev/null 2015-06-27 16:44:15.733558105 +0200
+++ ice-3.6.1/csharp/lib/pkgconfig/IceLocatorDiscovery.pc 2015-06-27 20:21:22.206185123 +0200
@@ -0,0 +1,10 @@
+version = 3.6.1
+mono_root = /usr
+
+name = IceLocatorDiscovery
+
+Name: ${name}
+Description: IceLocatorDiscovery run-time support
+Version: ${version}
+Libs: -r:${mono_root}/lib/mono/${name}/${name}.dll
+Requires: Ice = ${version}

View File

@ -1,23 +0,0 @@
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.

View File

@ -1,26 +0,0 @@
From 69e03dfb1c7fa26d2bc8a571bc773994607eb01d Mon Sep 17 00:00:00 2001
From: Dwayne Boone <dwayne@zeroc.com>
Date: Tue, 15 Sep 2015 16:48:21 -0230
Subject: [PATCH] ICE-6792 fix for test failure on linux
---
python/test/Slice/import/run.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/python/test/Slice/import/run.py b/python/test/Slice/import/run.py
index 02a58b1..2594c96 100755
--- a/python/test/Slice/import/run.py
+++ b/python/test/Slice/import/run.py
@@ -41,8 +41,10 @@
else:
slice2py = os.path.join(path[0], "python", "config", "s2py.py")
-subprocess.call([sys.executable, slice2py, "Test1.ice"])
-subprocess.call([sys.executable, slice2py, "Test2.ice"])
+s2p = TestUtil.spawn(sys.executable + " " + slice2py + " Test1.ice")
+s2p.waitTestSuccess()
+s2p = TestUtil.spawn(sys.executable + " " + slice2py + " Test2.ice")
+s2p.waitTestSuccess()
sys.stdout.write("starting client... ")
sys.stdout.flush()

View File

@ -1,272 +0,0 @@
From a973118e7026ed1ab89caeaf612bc80873b4fe04 Mon Sep 17 00:00:00 2001
From: Dwayne Boone <dwayne@zeroc.com>
Date: Tue, 15 Sep 2015 12:59:33 -0230
Subject: [PATCH] ICE-6792 python tests no longer require make/nmake
---
python/Makefile | 4 ----
python/Makefile.mak | 2 +-
python/test/Makefile | 21 ---------------------
python/test/Makefile.mak | 19 -------------------
python/test/Slice/Makefile | 21 ---------------------
python/test/Slice/Makefile.mak | 19 -------------------
python/test/Slice/import/Makefile | 32 --------------------------------
python/test/Slice/import/Makefile.mak | 29 -----------------------------
python/test/Slice/import/run.py | 26 +++++++++++++++++++++++++-
9 files changed, 26 insertions(+), 147 deletions(-)
delete mode 100644 python/test/Makefile
delete mode 100644 python/test/Makefile.mak
delete mode 100644 python/test/Slice/Makefile
delete mode 100644 python/test/Slice/Makefile.mak
delete mode 100644 python/test/Slice/import/Makefile
delete mode 100644 python/test/Slice/import/Makefile.mak
diff --git a/python/Makefile b/python/Makefile
index 6ffd68d..5c8a10c 100644
--- a/python/Makefile
+++ b/python/Makefile
@@ -13,10 +13,6 @@ include $(top_srcdir)/config/Make.rules
SUBDIRS = modules python
-ifneq ($(MAKECMDGOALS),install)
-SUBDIRS := $(SUBDIRS) test
-endif
-
INSTALL_SUBDIRS = $(install_pythondir) $(install_libdir)
install:: install-common
diff --git a/python/Makefile.mak b/python/Makefile.mak
index 60d92e5..924cf55 100644
--- a/python/Makefile.mak
+++ b/python/Makefile.mak
@@ -11,7 +11,7 @@ top_srcdir = .
!include $(top_srcdir)\config\Make.rules.mak
-SUBDIRS = modules python test
+SUBDIRS = modules python
install:: install-common
@if not exist "$(install_pythondir)" \
diff --git a/python/test/Makefile b/python/test/Makefile
deleted file mode 100644
index 23caa0e..0000000
--- a/python/test/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-# **********************************************************************
-#
-# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
-#
-# This copy of Ice is licensed to you under the terms described in the
-# ICE_LICENSE file included in this distribution.
-#
-# **********************************************************************
-
-top_srcdir = ..
-
-include $(top_srcdir)/config/Make.rules
-
-SUBDIRS = Slice
-
-$(EVERYTHING)::
- @for subdir in $(SUBDIRS); \
- do \
- echo "making $@ in $$subdir"; \
- ( cd $$subdir && $(MAKE) $@ ) || exit 1; \
- done
diff --git a/python/test/Makefile.mak b/python/test/Makefile.mak
deleted file mode 100644
index 9830e50..0000000
--- a/python/test/Makefile.mak
+++ /dev/null
@@ -1,19 +0,0 @@
-# **********************************************************************
-#
-# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
-#
-# This copy of Ice is licensed to you under the terms described in the
-# ICE_LICENSE file included in this distribution.
-#
-# **********************************************************************
-
-top_srcdir = ..
-
-!include $(top_srcdir)\config\Make.rules.mak
-
-SUBDIRS = Slice
-
-$(EVERYTHING)::
- @for %i in ( $(SUBDIRS) ) do \
- @echo "making $@ in %i" && \
- cmd /c "cd %i && $(MAKE) -nologo -f Makefile.mak $@" || exit 1
diff --git a/python/test/Slice/Makefile b/python/test/Slice/Makefile
deleted file mode 100644
index 19f1855..0000000
--- a/python/test/Slice/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-# **********************************************************************
-#
-# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
-#
-# This copy of Ice is licensed to you under the terms described in the
-# ICE_LICENSE file included in this distribution.
-#
-# **********************************************************************
-
-top_srcdir = ../..
-
-include $(top_srcdir)/config/Make.rules
-
-SUBDIRS = import
-
-$(EVERYTHING)::
- @for subdir in $(SUBDIRS); \
- do \
- echo "making $@ in $$subdir"; \
- ( cd $$subdir && $(MAKE) $@ ) || exit 1; \
- done
diff --git a/python/test/Slice/Makefile.mak b/python/test/Slice/Makefile.mak
deleted file mode 100644
index 2646ddd..0000000
--- a/python/test/Slice/Makefile.mak
+++ /dev/null
@@ -1,19 +0,0 @@
-# **********************************************************************
-#
-# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
-#
-# This copy of Ice is licensed to you under the terms described in the
-# ICE_LICENSE file included in this distribution.
-#
-# **********************************************************************
-
-top_srcdir = ..\..
-
-!include $(top_srcdir)\config\Make.rules.mak
-
-SUBDIRS = import
-
-$(EVERYTHING)::
- @for %i in ( $(SUBDIRS) ) do \
- @echo "making $@ in %i" && \
- cmd /c "cd %i && $(MAKE) -nologo -f Makefile.mak $@" || exit 1
diff --git a/python/test/Slice/import/Makefile b/python/test/Slice/import/Makefile
deleted file mode 100644
index 5e79abb..0000000
--- a/python/test/Slice/import/Makefile
+++ /dev/null
@@ -1,32 +0,0 @@
-# **********************************************************************
-#
-# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
-#
-# This copy of Ice is licensed to you under the terms described in the
-# ICE_LICENSE file included in this distribution.
-#
-# **********************************************************************
-
-top_srcdir = ../../..
-
-include $(top_srcdir)/config/Make.rules
-
-#
-# Parallel builds are not supported because multiple executions of slice2py could
-# attempt to modify the __init__.py file simultaneously.
-#
-.NOTPARALLEL:
-
-SRCS = Test1_ice.py \
- Test2_ice.py
-
-all:: $(SRCS)
-
-Test1_ice.py: Test1.ice $(SLICEPARSERLIB)
- $(SLICE2PY) $(SLICE2PYFLAGS) $<
-
-Test2_ice.py: Test2.ice $(SLICEPARSERLIB)
- $(SLICE2PY) $(SLICE2PYFLAGS) $<
-
-clean::
- rm -rf $(SRCS) Test
diff --git a/python/test/Slice/import/Makefile.mak b/python/test/Slice/import/Makefile.mak
deleted file mode 100644
index e3935c6..0000000
--- a/python/test/Slice/import/Makefile.mak
+++ /dev/null
@@ -1,29 +0,0 @@
-# **********************************************************************
-#
-# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
-#
-# This copy of Ice is licensed to you under the terms described in the
-# ICE_LICENSE file included in this distribution.
-#
-# **********************************************************************
-
-top_srcdir = ..\..\..
-
-!include $(top_srcdir)\config\Make.rules.mak
-
-SRCS = Test1_ice.py \
- Test2_ice.py
-
-all:: $(SRCS)
-
-Test1_ice.py: "Test1.ice" "$(SLICEPARSERLIB)"
- "$(SLICE2PY)" $(SLICE2PYFLAGS) "Test1.ice"
-
-Test2_ice.py: "Test2.ice" "$(SLICEPARSERLIB)"
- "$(SLICE2PY)" $(SLICE2PYFLAGS) "Test2.ice"
-
-clean::
- -rmdir /s /q Test
- del /q $(SRCS)
-
-include .depend.mak
diff --git a/python/test/Slice/import/run.py b/python/test/Slice/import/run.py
index 2054bdd..02a58b1 100755
--- a/python/test/Slice/import/run.py
+++ b/python/test/Slice/import/run.py
@@ -8,7 +8,7 @@
#
# **********************************************************************
-import os, sys
+import os, sys, shutil, subprocess
path = [ ".", "..", "../..", "../../..", "../../../.." ]
head = os.path.dirname(sys.argv[0])
@@ -20,6 +20,30 @@
sys.path.append(os.path.join(path[0], "scripts"))
import TestUtil
+testdir = os.path.dirname(os.path.abspath(__file__))
+
+if os.path.exists(os.path.join(testdir, "Test1_ice.py")):
+ os.remove(os.path.join(testdir, "Test1_ice.py"))
+if os.path.exists(os.path.join(testdir, "Test2_ice.py")):
+ os.remove(os.path.join(testdir, "Test2_ice.py"))
+if os.path.exists(os.path.join(testdir, "Test")):
+ shutil.rmtree(os.path.join(testdir, "Test"))
+
+if os.environ.get("USE_BIN_DIST", "no") == "yes":
+ if TestUtil.isDarwin():
+ slice2py = "/usr/local/bin/slice2py"
+ elif TestUtil.isWin32():
+ pythonHome = os.path.dirname(sys.executable)
+ slice2py = os.path.join(pythonHome, "Scripts", "slice2py.exe")
+ else:
+ import slice2py
+ slice2py = os.path.normpath(os.path.join(slice2py.__file__, '..', '..', '..', '..', 'bin', 'slice2py'))
+else:
+ slice2py = os.path.join(path[0], "python", "config", "s2py.py")
+
+subprocess.call([sys.executable, slice2py, "Test1.ice"])
+subprocess.call([sys.executable, slice2py, "Test2.ice"])
+
sys.stdout.write("starting client... ")
sys.stdout.flush()
clientProc = TestUtil.startClient("Client.py", "--Ice.Default.Host=127.0.0.1", startReader = False)