[dev-libs/Ice] added a patch for db6 from pld, also include php 7.1 fix from upstream so i don't forget it later in case we have no 3.6.4 soon-ish
This commit is contained in:
parent
aa8c4cc6f1
commit
fa1f3e73e0
@ -20,6 +20,9 @@ EGIT_REPO_URI="https://github.com/zeroc-ice/ice.git"
|
|||||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}"
|
EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}"
|
||||||
EGIT_BRANCH="3.6"
|
EGIT_BRANCH="3.6"
|
||||||
|
|
||||||
|
# This variable does not belong to any eclass. It is solely used in this ebuild
|
||||||
|
BERKDB_SLOTS=( 6.2 6.1 5.3 5.1 4.8 )
|
||||||
|
|
||||||
inherit db-use mono-env php-ext-source-r3 python-r1 ruby-ng toolchain-funcs versionator git-r3
|
inherit db-use mono-env php-ext-source-r3 python-r1 ruby-ng toolchain-funcs versionator git-r3
|
||||||
|
|
||||||
# for mono-env
|
# for mono-env
|
||||||
@ -61,6 +64,7 @@ PHP_EXT_S="${S}/php"
|
|||||||
|
|
||||||
PATCHES=(
|
PATCHES=(
|
||||||
"${FILESDIR}/${PN}-3.6.3-no-arch-opts.patch"
|
"${FILESDIR}/${PN}-3.6.3-no-arch-opts.patch"
|
||||||
|
"${FILESDIR}/${PN}-3.6.3-db6.patch"
|
||||||
"${FILESDIR}/${PN}-3.6.4-csharp.patch"
|
"${FILESDIR}/${PN}-3.6.4-csharp.patch"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
48
dev-libs/Ice/files/Ice-3.6.3-db6.patch
Normal file
48
dev-libs/Ice/files/Ice-3.6.3-db6.patch
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
Avoid ambiguous ctor call (uint32_t vs DB_ENV*) with db 6.x.
|
||||||
|
|
||||||
|
--- ice-3.6.3/cpp/src/Freeze/SharedDbEnv.cpp.orig 2016-10-05 16:59:08.000000000 +0200
|
||||||
|
+++ ice-3.6.3/cpp/src/Freeze/SharedDbEnv.cpp 2017-06-28 18:42:43.411869639 +0200
|
||||||
|
@@ -530,7 +530,7 @@
|
||||||
|
{
|
||||||
|
if(_env == 0)
|
||||||
|
{
|
||||||
|
- _envHolder.reset(new DbEnv(0));
|
||||||
|
+ _envHolder.reset(new DbEnv(0u));
|
||||||
|
_env = _envHolder.get();
|
||||||
|
|
||||||
|
if(_trace >= 1)
|
||||||
|
--- ice-3.6.3/cpp/src/FreezeScript/transformdb.cpp.orig 2016-10-05 16:59:08.000000000 +0200
|
||||||
|
+++ ice-3.6.3/cpp/src/FreezeScript/transformdb.cpp 2017-06-28 19:15:03.928514164 +0200
|
||||||
|
@@ -766,8 +766,8 @@
|
||||||
|
//
|
||||||
|
// Transform the database.
|
||||||
|
//
|
||||||
|
- DbEnv dbEnv(0);
|
||||||
|
- DbEnv dbEnvNew(0);
|
||||||
|
+ DbEnv dbEnv(0u);
|
||||||
|
+ DbEnv dbEnvNew(0u);
|
||||||
|
Freeze::TransactionPtr txNew;
|
||||||
|
Freeze::ConnectionPtr connection;
|
||||||
|
Freeze::ConnectionPtr connectionNew;
|
||||||
|
--- ice-3.6.3/cpp/src/FreezeScript/Util.cpp.orig 2016-10-05 16:59:08.000000000 +0200
|
||||||
|
+++ ice-3.6.3/cpp/src/FreezeScript/Util.cpp 2017-06-28 19:22:29.318509063 +0200
|
||||||
|
@@ -209,7 +209,7 @@
|
||||||
|
{
|
||||||
|
CatalogDataMap result;
|
||||||
|
|
||||||
|
- DbEnv dbEnv(0);
|
||||||
|
+ DbEnv dbEnv(0u);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
#ifdef _WIN32
|
||||||
|
--- ice-3.6.3/cpp/src/FreezeScript/DumpDB.cpp.orig 2016-10-05 16:59:08.000000000 +0200
|
||||||
|
+++ ice-3.6.3/cpp/src/FreezeScript/DumpDB.cpp 2017-06-28 19:33:38.555168088 +0200
|
||||||
|
@@ -481,7 +481,7 @@
|
||||||
|
FreezeScript::ObjectFactoryPtr objectFactory = new FreezeScript::ObjectFactory;
|
||||||
|
communicator->addObjectFactory(objectFactory, "");
|
||||||
|
|
||||||
|
- DbEnv dbEnv(0);
|
||||||
|
+ DbEnv dbEnv(0u);
|
||||||
|
DbTxn* txn = 0;
|
||||||
|
Freeze::ConnectionPtr connection;
|
||||||
|
int status = EXIT_SUCCESS;
|
30
dev-libs/Ice/files/Ice-3.6.3-php71.patch
Normal file
30
dev-libs/Ice/files/Ice-3.6.3-php71.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
--- ice-3.6.3/php/src/php7/Types.cpp.orig 2016-10-05 16:59:08.000000000 +0200
|
||||||
|
+++ ice-3.6.3/php/src/php7/Types.cpp 2017-06-30 20:05:36.233173124 +0200
|
||||||
|
@@ -1166,26 +1166,7 @@
|
||||||
|
{
|
||||||
|
assert(Z_TYPE_P(target) == IS_OBJECT);
|
||||||
|
|
||||||
|
- //
|
||||||
|
- // The add_property_zval function fails if the data member has protected visibility.
|
||||||
|
- // As a workaround, before calling the function we change the current scope to be that
|
||||||
|
- // of the object.
|
||||||
|
- //
|
||||||
|
- zend_class_entry *oldScope = EG(scope);
|
||||||
|
- EG(scope) = Z_OBJCE_P(target);
|
||||||
|
-
|
||||||
|
- //
|
||||||
|
- // add_property_zval increments the refcount of zv.
|
||||||
|
- //
|
||||||
|
- int status = add_property_zval(target, STRCAST(name.c_str()), zv);
|
||||||
|
-
|
||||||
|
- EG(scope) = oldScope; // Restore the previous scope.
|
||||||
|
-
|
||||||
|
- if(status == FAILURE)
|
||||||
|
- {
|
||||||
|
- runtimeError("unable to set member `%s'", name.c_str());
|
||||||
|
- throw AbortMarshaling();
|
||||||
|
- }
|
||||||
|
+ zend_update_property(Z_OBJCE_P(target), target, STRCAST(name.c_str()), strlen(name.c_str()), zv);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
Loading…
Reference in New Issue
Block a user