diff options
-rw-r--r-- | net-libs/ice/ChangeLog | 12 | ||||
-rw-r--r-- | net-libs/ice/files/ice-3.3.0-cross-compile.patch | 119 | ||||
-rw-r--r-- | net-libs/ice/files/ice-3.3.0-destdir.patch | 18 | ||||
-rw-r--r-- | net-libs/ice/files/ice-3.3.0-gentoo-db-include.patch | 110 | ||||
-rw-r--r-- | net-libs/ice/files/ice-3.3.0-makefile.patch | 50 | ||||
-rw-r--r-- | net-libs/ice/files/ice-3.3.0-thread-fix.patch | 16 | ||||
-rw-r--r-- | net-libs/ice/ice-3.3.0.ebuild | 77 | ||||
-rw-r--r-- | net-libs/ice/metadata.xml | 11 |
8 files changed, 413 insertions, 0 deletions
diff --git a/net-libs/ice/ChangeLog b/net-libs/ice/ChangeLog new file mode 100644 index 000000000000..3c397dc4b5b1 --- /dev/null +++ b/net-libs/ice/ChangeLog @@ -0,0 +1,12 @@ +# ChangeLog for net-libs/ice +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-libs/ice/ChangeLog,v 1.1 2009/01/07 15:19:18 b33fc0d3 Exp $ + +*ice-3.3.0 (07 Jan 2009) + + 07 Jan 2009; Ahmed Ammar <aammar@edge-techno.com> <b33fc0d3@gentoo.org> + +files/ice-3.3.0-cross-compile.patch, +files/ice-3.3.0-destdir.patch, + +files/ice-3.3.0-gentoo-db-include.patch, +files/ice-3.3.0-makefile.patch, + +files/ice-3.3.0-thread-fix.patch, +metadata.xml, +ice-3.3.0.ebuild: + New ebuild for Ice. Ebuild written by b33fc0d3. + diff --git a/net-libs/ice/files/ice-3.3.0-cross-compile.patch b/net-libs/ice/files/ice-3.3.0-cross-compile.patch new file mode 100644 index 000000000000..76c107e664af --- /dev/null +++ b/net-libs/ice/files/ice-3.3.0-cross-compile.patch @@ -0,0 +1,119 @@ +--- ./Ice-3.3.0/cpp/Makefile.orig 2008-09-17 11:11:23.000000000 +0200 ++++ ./Ice-3.3.0/cpp/Makefile 2008-09-17 12:28:23.000000000 +0200 +@@ -11,7 +11,7 @@ + + include $(top_srcdir)/config/Make.rules + +-SUBDIRS = config src include test demo ++SUBDIRS = config src include + + INSTALL_SUBDIRS = $(install_bindir) $(install_libdir) $(install_includedir) $(install_configdir) + +--- ./Ice-3.3.0/cpp/src/Makefile.orig 2008-09-17 11:27:14.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/Makefile 2008-09-17 11:09:31.000000000 +0200 +@@ -13,18 +13,6 @@ + + SUBDIRS = IceUtil \ + Slice \ +- slice2cpp \ +- slice2cppe \ +- slice2cs \ +- slice2freeze \ +- slice2freezej \ +- slice2docbook \ +- slice2java \ +- slice2javae \ +- slice2py \ +- slice2rb \ +- slice2sl \ +- slice2html \ + Ice \ + IceXML \ + IceSSL \ +--- ./Ice-3.3.0/cpp/config/Make.rules.Linux.orig 2008-09-17 11:04:41.000000000 +0200 ++++ ./Ice-3.3.0/cpp/config/Make.rules.Linux 2008-09-17 13:05:41.000000000 +0200 +@@ -17,13 +17,7 @@ + # + # Default compiler is c++ (aka g++). + # +-ifeq ($(CXX),) +- ICXX = c++ +-endif +- +-ifeq ($(CXX),g++) +- ICXX = c++ +-endif ++ICXX = c++ + + # + # icecpp is built with a C compiler +@@ -78,7 +72,7 @@ + endif + endif + +- CXXFLAGS += $(CXXARCHFLAGS) -ftemplate-depth-128 -Wall -D_REENTRANT -I/usr/include/nptl ++ CXXFLAGS += $(CXXARCHFLAGS) -ftemplate-depth-128 -Wall -D_REENTRANT + + ifneq ($(GENPIC),no) + CXXFLAGS += -fPIC +@@ -154,9 +148,7 @@ + + endif + +-NPTL_LIB = /usr/$(libsubdir)/nptl +- +-BASELIBS = -lIceUtil -L$(NPTL_LIB) -lpthread -lrt ++BASELIBS = -lIceUtil -lpthread -lrt + LIBS = $(BZIP2_RPATH_LINK) -lIce $(BASELIBS) + + ICEUTIL_OS_LIBS = +--- ./Ice-3.3.0/cpp/config/Make.rules.orig 2008-09-17 11:13:00.000000000 +0200 ++++ ./Ice-3.3.0/cpp/config/Make.rules 2008-09-17 11:20:19.000000000 +0200 +@@ -221,17 +221,11 @@ + endif + + ifdef ice_src_dist +- SLICEPARSERLIB = $(libdir)/$(call mklibfilename,Slice,$(VERSION)) +- SLICE2CPP = $(bindir)/slice2cpp +- SLICE2XSD = $(bindir)/slice2xsd +- SLICE2FREEZE = $(bindir)/slice2freeze +- SLICE2DOCBOOK = $(bindir)/slice2docbook +-else +- SLICEPARSERLIB = $(ice_dir)/$(libsubdir)/$(call mklibfilename,Slice,$(VERSION)) +- SLICE2CPP = $(ice_dir)/$(binsubdir)/slice2cpp +- SLICE2XSD = $(ice_dir)/$(binsubdir)/slice2xsd +- SLICE2FREEZE = $(ice_dir)/$(binsubdir)/slice2freeze +- SLICE2DOCBOOK = $(ice_dir)/$(binsubdir)/slice2docbook ++ SLICEPARSERLIB = /usr/lib/$(call mklibfilename,Slice,$(VERSION)) ++ SLICE2CPP = /usr/bin/slice2cpp ++ SLICE2XSD = /usr/bin/slice2xsd ++ SLICE2FREEZE = /usr/bin/slice2freeze ++ SLICE2DOCBOOK = /usr/bin/slice2docbook + endif + + EVERYTHING = all depend clean install +--- ./Ice-3.3.0/cpp/include/IceUtil/Config.h.orig 2008-09-17 11:01:12.000000000 +0200 ++++ ./Ice-3.3.0/cpp/include/IceUtil/Config.h 2008-09-17 12:27:56.000000000 +0200 +@@ -16,18 +16,12 @@ + // Most CPUs support only one endianness, with the notable exceptions + // of Itanium (IA64) and MIPS. + // +-#if defined(__i386) || defined(_M_IX86) || defined(__x86_64) || \ +- defined(_M_X64) || defined(_M_IA64) || defined(__alpha__) || \ +- defined(__MIPSEL__) +-# define ICE_LITTLE_ENDIAN +-#elif defined(__sparc) || defined(__sparc__) || defined(__hppa) || \ +- defined(__ppc__) || defined(__powerpc) || defined(_ARCH_COM) || \ +- defined(__MIPSEB__) +-# define ICE_BIG_ENDIAN +-#else +-# error "Unknown architecture" ++#ifdef __GLIBC__ ++ #include <endian.h> + #endif + ++#define ICE_LITTLE_ENDIAN ++ + // + // 32 or 64 bit mode? + // diff --git a/net-libs/ice/files/ice-3.3.0-destdir.patch b/net-libs/ice/files/ice-3.3.0-destdir.patch new file mode 100644 index 000000000000..8bbc1efb58e0 --- /dev/null +++ b/net-libs/ice/files/ice-3.3.0-destdir.patch @@ -0,0 +1,18 @@ +--- Ice-3.3.0/cpp/config/Make.rules.orig 2008-09-16 11:19:04.000000000 +0200 ++++ Ice-3.3.0/cpp/config/Make.rules 2008-09-16 11:20:07.000000000 +0200 +@@ -11,13 +11,13 @@ + # Select an installation base directory. The directory will be created + # if it does not exist. + # +-prefix ?= /opt/Ice-$(VERSION) ++prefix ?= DESTDIR_PLACE_HOLDER + + # + # The "root directory" for runpath embedded in executables. Can be unset + # to avoid adding a runpath to Ice executables. + # +-embedded_runpath_prefix ?= /opt/Ice-$(VERSION_MAJOR).$(VERSION_MINOR) ++#embedded_runpath_prefix ?= /opt/Ice-$(VERSION_MAJOR).$(VERSION_MINOR) + + # + # Define OPTIMIZE as yes if you want to build with diff --git a/net-libs/ice/files/ice-3.3.0-gentoo-db-include.patch b/net-libs/ice/files/ice-3.3.0-gentoo-db-include.patch new file mode 100644 index 000000000000..a6656ff5a109 --- /dev/null +++ b/net-libs/ice/files/ice-3.3.0-gentoo-db-include.patch @@ -0,0 +1,110 @@ +--- ./Ice-3.3.0/cpp/src/Freeze/MapDb.h.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/Freeze/MapDb.h 2008-09-16 10:48:07.000000000 +0200 +@@ -11,7 +11,7 @@ + #define FREEZE_MAP_DB_H + + #include <IceUtil/Config.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <Freeze/ConnectionI.h> + #include <Freeze/Map.h> + +--- ./Ice-3.3.0/cpp/src/Freeze/TransactionI.h.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/Freeze/TransactionI.h 2008-09-16 10:48:07.000000000 +0200 +@@ -12,7 +12,7 @@ + + #include <Ice/CommunicatorF.h> + #include <Freeze/Transaction.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + + namespace Freeze + { +--- ./Ice-3.3.0/cpp/src/Freeze/ObjectStore.h.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/Freeze/ObjectStore.h 2008-09-16 10:48:07.000000000 +0200 +@@ -20,7 +20,7 @@ + + #include <vector> + #include <list> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + + namespace Freeze + { +--- ./Ice-3.3.0/cpp/src/Freeze/Util.h.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/Freeze/Util.h 2008-09-16 10:48:07.000000000 +0200 +@@ -12,7 +12,7 @@ + + #include <Ice/Ice.h> + #include <Freeze/DB.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <sys/stat.h> + + #ifdef _WIN32 +--- ./Ice-3.3.0/cpp/src/Freeze/SharedDbEnv.h.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/Freeze/SharedDbEnv.h 2008-09-16 10:48:07.000000000 +0200 +@@ -12,7 +12,7 @@ + + #include <Freeze/Map.h> + #include <Ice/Ice.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <map> + #include <list> + +--- ./Ice-3.3.0/cpp/src/FreezeScript/DumpDescriptors.cpp.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/FreezeScript/DumpDescriptors.cpp 2008-09-16 10:48:07.000000000 +0200 +@@ -14,7 +14,7 @@ + #include <FreezeScript/Exception.h> + #include <FreezeScript/Util.h> + #include <IceUtil/InputUtil.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <set> + #include <climits> + +--- ./Ice-3.3.0/cpp/src/FreezeScript/DumpDB.cpp.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/FreezeScript/DumpDB.cpp 2008-09-16 10:48:07.000000000 +0200 +@@ -12,7 +12,7 @@ + #include <FreezeScript/Exception.h> + #include <IceUtil/OutputUtil.h> + #include <IceUtil/Options.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <sys/stat.h> + #include <fstream> + #include <algorithm> +--- ./Ice-3.3.0/cpp/src/FreezeScript/Util.cpp.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/FreezeScript/Util.cpp 2008-09-16 10:48:07.000000000 +0200 +@@ -13,7 +13,7 @@ + #include <Freeze/Connection.h> + #include <Freeze/Initialize.h> + #include <Slice/Preprocessor.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <sys/stat.h> + + using namespace std; +--- ./Ice-3.3.0/cpp/src/FreezeScript/Transformer.cpp.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/FreezeScript/Transformer.cpp 2008-09-16 10:48:07.000000000 +0200 +@@ -19,7 +19,7 @@ + #include <Freeze/Initialize.h> + #include <IceXML/Parser.h> + #include <IceUtil/InputUtil.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <climits> + + using namespace std; +--- ./Ice-3.3.0/cpp/src/FreezeScript/transformdb.cpp.orig 2008-09-16 10:46:13.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/FreezeScript/transformdb.cpp 2008-09-16 10:48:07.000000000 +0200 +@@ -15,7 +15,7 @@ + #include <Freeze/Transaction.h> + #include <Freeze/Catalog.h> + #include <IceUtil/Options.h> +-#include <db_cxx.h> ++#include <db4.6/db_cxx.h> + #include <sys/stat.h> + #include <fstream> + #include <algorithm> diff --git a/net-libs/ice/files/ice-3.3.0-makefile.patch b/net-libs/ice/files/ice-3.3.0-makefile.patch new file mode 100644 index 000000000000..815a9519fbcc --- /dev/null +++ b/net-libs/ice/files/ice-3.3.0-makefile.patch @@ -0,0 +1,50 @@ +--- ./Ice-3.3.0/cpp/config/Make.rules.Linux.orig 2008-09-16 14:05:40.000000000 +0200 ++++ ./Ice-3.3.0/cpp/config/Make.rules.Linux 2008-09-16 14:08:25.000000000 +0200 +@@ -18,17 +18,17 @@ + # Default compiler is c++ (aka g++). + # + ifeq ($(CXX),) +- CXX = c++ ++ ICXX = c++ + endif + + ifeq ($(CXX),g++) +- CXX = c++ ++ ICXX = c++ + endif + + # + # icecpp is built with a C compiler + # +-CFLAGS = -O2 ++CFLAGS += -O2 + + ifeq ($(MACHINE),x86_64) + ifeq ($(LP64),yes) +@@ -38,7 +38,7 @@ + endif + endif + +-ifeq ($(CXX),c++) ++ifeq ($(ICXX),c++) + + ifeq ($(MACHINE),sparc64) + # +@@ -78,7 +78,7 @@ + endif + endif + +- CXXFLAGS = $(CXXARCHFLAGS) -ftemplate-depth-128 -Wall -D_REENTRANT -I/usr/include/nptl ++ CXXFLAGS += $(CXXARCHFLAGS) -ftemplate-depth-128 -Wall -D_REENTRANT -I/usr/include/nptl + + ifneq ($(GENPIC),no) + CXXFLAGS += -fPIC +@@ -122,7 +122,7 @@ + + endif + +-ifeq ($(CXX),icpc) ++ifeq ($(ICXX),icpc) + $(warning ===================================================================) + $(warning Intel C++ is currently not supported. The Ice team does not) + $(warning maintain Intel C++ specific portions of the source code or build) diff --git a/net-libs/ice/files/ice-3.3.0-thread-fix.patch b/net-libs/ice/files/ice-3.3.0-thread-fix.patch new file mode 100644 index 000000000000..f738e231c52f --- /dev/null +++ b/net-libs/ice/files/ice-3.3.0-thread-fix.patch @@ -0,0 +1,16 @@ +--- ./Ice-3.3.0/cpp/src/IceUtil/Thread.cpp.orig 2008-11-20 16:40:34.000000000 +0200 ++++ ./Ice-3.3.0/cpp/src/IceUtil/Thread.cpp 2008-11-20 16:42:41.000000000 +0200 +@@ -438,7 +438,12 @@ + } + else + { +- int rc = pthread_create(&_thread, 0, startHook, this); ++ pthread_attr_t attr; ++ int rc = pthread_attr_init(&attr); ++ if(rc != 0) ++ rc = pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN); ++ if(rc != 0) ++ rc = pthread_create(&_thread, 0, startHook, this); + if(rc != 0) + { + __decRef(); diff --git a/net-libs/ice/ice-3.3.0.ebuild b/net-libs/ice/ice-3.3.0.ebuild new file mode 100644 index 000000000000..5d00d0e72eeb --- /dev/null +++ b/net-libs/ice/ice-3.3.0.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-libs/ice/ice-3.3.0.ebuild,v 1.1 2009/01/07 15:19:18 b33fc0d3 Exp $ + +inherit eutils mono multilib toolchain-funcs flag-o-matic + +DESCRIPTION="The Internet Communications Engine (Ice) is a modern object-oriented middleware with support for C++, .NET, Java, Python, Ruby, and PHP" +HOMEPAGE="http://www.zeroc.com/ice.html" +SRC_URI="http://www.zeroc.com/download/Ice/3.3/Ice-${PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~x86 ~arm" +IUSE="mono" + +DEPEND=">=sys-libs/db-4.6.21 + >=dev-libs/expat-1.95.7 + >=dev-libs/openssl-0.9.7 + >=app-arch/bzip2-1.0.0 + >=dev-cpp/libmcpp-2.7 + mono? ( + >=dev-lang/mono-1.1.10 + )" +RDEPEND="${DEPEND}" + +S=${WORKDIR}/Ice-${PV} + +src_unpack() { + unpack ${A} + + #epatch "${FILESDIR}/ice-3.3.0-gentoo-db-include.patch" # can be done better + epatch "${FILESDIR}/ice-3.3.0-destdir.patch" + epatch "${FILESDIR}/ice-3.3.0-makefile.patch" + #epatch "${FILESDIR}/ice-3.3.0-thread-fix.patch" + + if tc-is-cross-compiler ; then + epatch "${FILESDIR}/ice-3.3.0-cross-compile.patch" + fi +} + +src_compile() { + if tc-is-cross-compiler ; then + # uncomment for kernel with no epoll support + # append-flags -DICE_NO_EPOLL + export CXX="${CHOST}-g++" + fi + + cd "${S}"/cpp; + emake || die 'emake [cpp module] failed' + + if use mono; then + cd "${S}"/cs; + emake || die 'emake [mono module] failed' + fi +} + +src_install() { + dodir /usr/share/"${PN}" + + cd "${S}"/cpp; + sed -i "s/DESTDIR_PLACE_HOLDER/${D//\//\\/}\/usr/" config/Make.rules + emake install || die 'emake install failed' + + if use mono; then + cd "${S}"/cs/bin; + for dll in *.dll; do + gacutil -i ${dll} -root "${D}"/usr/$(get_libdir) \ + -gacdir /usr/$(get_libdir) -package ${P} || die 'gacutil failed' + done + fi + + cd "${D}"/usr + rm -rf LICENSE ICE_LICENSE + + mv "${D}"/usr/config "${D}"/usr/share/"${PN}" + mv "${D}"/usr/slice "${D}"/usr/share/"${PN}" +} diff --git a/net-libs/ice/metadata.xml b/net-libs/ice/metadata.xml new file mode 100644 index 000000000000..8d1f45275d9e --- /dev/null +++ b/net-libs/ice/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>no-herd</herd> + <maintainer> + <email>b33fc0d3@gentoo.org</email> + <name>Ahmed Ammar</name> + </maintainer> +<longdescription lang="en">The Internet Communications Engine (Ice) is a modern object-oriented middleware with support for C++, .NET, Java, Python, Ruby, and PHP</longdescription> +</pkgmetadata> + |