diff options
-rw-r--r-- | dev-libs/poco/ChangeLog | 8 | ||||
-rw-r--r-- | dev-libs/poco/files/1.3.6_p2-gentoo.patch | 85 | ||||
-rw-r--r-- | dev-libs/poco/poco-1.3.6_p2.ebuild | 118 |
3 files changed, 210 insertions, 1 deletions
diff --git a/dev-libs/poco/ChangeLog b/dev-libs/poco/ChangeLog index e484332ba5a8..996ea08c26a4 100644 --- a/dev-libs/poco/ChangeLog +++ b/dev-libs/poco/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-libs/poco # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/poco/ChangeLog,v 1.8 2010/07/14 08:16:34 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/poco/ChangeLog,v 1.9 2010/07/20 00:12:44 tommy Exp $ + +*poco-1.3.6_p2 (20 Jul 2010) + + 20 Jul 2010; Thomas Sachau (Tommy[D]) <tommy@gentoo.org> + +files/1.3.6_p2-gentoo.patch, +poco-1.3.6_p2.ebuild: + Version bump, fixes bug 269422 14 Jul 2010; Samuli Suominen <ssuominen@gentoo.org> poco-1.3.3_p1.ebuild, +files/1.3.3_p1-openssl-1.patch: diff --git a/dev-libs/poco/files/1.3.6_p2-gentoo.patch b/dev-libs/poco/files/1.3.6_p2-gentoo.patch new file mode 100644 index 000000000000..b0e2dbef86c2 --- /dev/null +++ b/dev-libs/poco/files/1.3.6_p2-gentoo.patch @@ -0,0 +1,85 @@ +diff -ur poco-1.3.6p2-all.orig//components poco-1.3.6p2-all/components +--- poco-1.3.6p2-all.orig//components 2010-07-19 13:52:31.936802078 +0200 ++++ poco-1.3.6p2-all/components 2010-07-19 13:59:37.351927395 +0200 +@@ -1,13 +1,7 @@ +-CppUnit + Foundation + XML + Util + Net +-Crypto +-NetSSL_OpenSSL + Data +-Data/SQLite +-Data/ODBC +-Data/MySQL + Zip + PageCompiler +diff -ur poco-1.3.6p2-all.orig//Data/ODBC/Makefile poco-1.3.6p2-all/Data/ODBC/Makefile +--- poco-1.3.6p2-all.orig//Data/ODBC/Makefile 2010-07-19 13:52:31.932802424 +0200 ++++ poco-1.3.6p2-all/Data/ODBC/Makefile 2010-07-19 13:55:24.976677962 +0200 +@@ -9,10 +9,10 @@ + include $(POCO_BASE)/build/rules/global + + # adjust for the target system (usually '/usr/lib' or '/usr/local/lib') +-ODBCLIBDIR = /usr/lib ++ODBCLIBDIR = /usr/$(LIBDIR) + + INCLUDE += -I/usr/local/include -I/usr/include -I/usr/include/odbc -I/usr/local/include/odbc +-SYSLIBS += -L/usr/local/lib/odbc -L/usr/lib/odbc -L/usr/lib -L/usr/local/lib ++SYSLIBS += -L/usr/local/$(LIBDIR)/odbc -L/usr/$(LIBDIR)/odbc -L/usr/$(LIBDIR) -L/usr/local/$(LIBDIR) + + ifeq ($(POCO_CONFIG),MinGW) + # Lack of unixODBC or iODBC is not an error for MinGW platform since it uses Windows odbc32.lib +@@ -24,19 +24,19 @@ + # CYGWIN platform has its own ODBC library in /lib/w32api + SYSLIBS += -L/lib/w32api -lodbc32 -lodbccp32 + else +-ifeq (0, $(shell test -e $(ODBCLIBDIR)/libodbc$(SHAREDLIBLINKEXT); echo $$?)) ++ifeq (unixodbc, $(GENTOO_ODBC)) + SYSLIBS += -lodbc -lodbcinst + COMMONFLAGS += -DPOCO_UNIXODBC + else +-ifeq (0, $(shell test -h $(ODBCLIBDIR)/libodbc$(SHAREDLIBLINKEXT); echo $$?)) ++ifeq (unixodbc, $(GENTOO_ODBC)) + SYSLIBS += -lodbc -lodbcinst + COMMONFLAGS += -DPOCO_UNIXODBC + else +-ifeq (0, $(shell test -e $(ODBCLIBDIR)/libiodbc$(SHAREDLIBLINKEXT); echo $$?)) ++ifeq (unixodbc, $(GENTOO_ODBC)) + SYSLIBS += -liodbc -liodbcinst + COMMONFLAGS += -DPOCO_IODBC + else +-ifeq (0, $(shell test -h $(ODBCLIBDIR)/libiodbc$(SHAREDLIBLINKEXT); echo $$?)) ++ifeq (unixodbc, $(GENTOO_ODBC)) + SYSLIBS += -liodbc -liodbcinst + COMMONFLAGS += -DPOCO_IODBC + else +diff -ur poco-1.3.6p2-all.orig//Makefile poco-1.3.6p2-all/Makefile +--- poco-1.3.6p2-all.orig//Makefile 2010-07-19 13:52:31.908802377 +0200 ++++ poco-1.3.6p2-all/Makefile 2010-07-19 14:00:03.814676950 +0200 +@@ -31,7 +31,7 @@ + + install: libexecs + mkdir -p $(INSTALLDIR)/include/Poco +- mkdir -p $(INSTALLDIR)/lib ++ mkdir -p $(INSTALLDIR)/$(LIBDIR) + mkdir -p $(INSTALLDIR)/bin + for comp in $(COMPONENTS) ; do \ + if [ -d "$(POCO_BASE)/$$comp/include" ] ; then \ +@@ -41,11 +41,11 @@ + find $(POCO_BUILD)/$$comp/bin -perm -700 -type f -exec cp -f {} $(INSTALLDIR)/bin \; ; \ + fi ; \ + done +- find $(POCO_BUILD)/lib -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/lib \; +- find $(POCO_BUILD)/lib -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/lib \; ++ find $(POCO_BUILD)/$(LIBDIR) -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/$(LIBDIR) \; ++ find $(POCO_BUILD)/$(LIBDIR) -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/$(LIBDIR) \; + +-libexecs = Foundation-libexec XML-libexec Util-libexec Net-libexec Crypto-libexec NetSSL_OpenSSL-libexec Data-libexec Data/SQLite-libexec Data/ODBC-libexec Data/MySQL-libexec Zip-libexec PageCompiler-libexec +-tests = Foundation-tests XML-tests Util-tests Net-tests Crypto-tests NetSSL_OpenSSL-tests Data-tests Data/SQLite-tests Data/ODBC-tests Data/MySQL-tests Zip-tests ++libexecs = Foundation-libexec XML-libexec Util-libexec Net-libexec Data-libexec Zip-libexec PageCompiler-libexec ++tests = Foundation-tests XML-tests Util-tests Net-tests Data-tests Zip-tests + samples = Foundation-samples XML-samples Util-samples Net-samples Crypto-samples NetSSL_OpenSSL-samples Data-samples Zip-samples + + .PHONY: $(libexecs) diff --git a/dev-libs/poco/poco-1.3.6_p2.ebuild b/dev-libs/poco/poco-1.3.6_p2.ebuild new file mode 100644 index 000000000000..4546741380da --- /dev/null +++ b/dev-libs/poco/poco-1.3.6_p2.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/poco/poco-1.3.6_p2.ebuild,v 1.1 2010/07/20 00:12:44 tommy Exp $ + +EAPI="2" + +inherit eutils toolchain-funcs flag-o-matic versionator + +MY_P="${P/_}" +MY_DOCP="${PN}-$(get_version_component_range 1-3)-all-doc" + +DESCRIPTION="C++ class libraries that simplify and accelerate the development of network-centric, portable applications." +HOMEPAGE="http://pocoproject.org/" +SRC_URI="mirror://sourceforge/poco/${MY_P}-all.tar.bz2 + doc? ( mirror://sourceforge/poco/${MY_DOCP}.zip )" +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples iodbc mysql odbc sqlite ssl test" + +DEPEND="dev-libs/libpcre + dev-libs/expat + sys-libs/zlib + mysql? ( dev-db/mysql ) + odbc? ( iodbc? ( dev-db/libiodbc ) + !iodbc? ( dev-db/unixODBC ) ) + ssl? ( dev-libs/openssl ) + sqlite? ( dev-db/sqlite:3 )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}-all" + +src_prepare() { + epatch \ + "${FILESDIR}"/${PV}-gentoo.patch +} + +src_configure() { + targets="libexecs" + odbc="unixodbc" + + if use ssl; then + targets="${targets} NetSSL_OpenSSL-libexec Crypto-libexec" + echo NetSSL_OpenSSL >> components + echo Crypto >> components + fi + if use odbc; then + targets="${targets} Data/ODBC-libexec" + echo Data/ODBC >> components + if use iodbc; then + append-flags "-I/usr/include/iodbc" + odbc="iodbc" + fi + fi + if use sqlite; then + targets="${targets} Data/SQLite-libexec" + echo Data/SQLite >> components + fi + if use mysql; then + targets="${targets} Data/MySQL-libexec" + echo Data/MySQL >> components + fi + + if use test; then + targets="${targets} cppunit tests" + echo CppUnit >> components + use ssl && targets="${targets} NetSSL_OpenSSL-tests Crypto-tests" + use odbc && targets="${targets} Data/ODBC-tests" + use sqlite && targets="${targets} Data/SQLite-tests" + use mysql && targets="${targets} Data/MySQL-tests" + fi + + local myconf + use test || myconf="--no-tests" + # not autoconf + ./configure \ + --no-samples ${myconf} \ + --prefix=/usr \ + --unbundled \ + || die "configure failed" + + sed -i \ + -e "s|CC = .*|CC = $(tc-getCC)|" \ + -e "s|CXX = .*|CXX = $(tc-getCXX)|" \ + -e "s|RANLIB = .*|RANLIB = $(tc-getRANLIB)|" \ + -e "s|LIB = ar|LIB = $(tc-getAR)|" \ + -e "s|STRIP = .*|STRIP = /bin/true|" \ + -e "s|CFLAGS = |CFLAGS = ${CFLAGS}|" \ + -e "s|CXXFLAGS = |CXXFLAGS = ${CXXFLAGS} |" \ + -e "s|LINKFLAGS =|LINKFLAGS = ${LDFLAGS} |" \ + -e "s|SHAREDOPT_LINK = -Wl,-rpath,\$(LIBPATH)|SHAREDOPT_LINK =|" \ + -e 's|-O2||g' \ + build/config/Linux build/config/FreeBSD || die "sed failed" + sed -i -e "s|SHLIBFLAGS)|SHLIBFLAGS) ${LDFLAGS}|" build/rules/lib || die +} + +src_compile() { + emake POCO_PREFIX=/usr GENTOO_ODBC="${odbc}" LIBDIR="$(get_libdir)" ${targets} || die "emake failed" +} + +src_install() { + emake POCO_PREFIX=/usr LIBDIR="$(get_libdir)" DESTDIR="${D}" install || die "emake install failed" + + dodoc CHANGELOG CONTRIBUTORS NEWS README + + use doc && dohtml -r "${WORKDIR}/${MY_DOCP}"/* + + if use examples ; then + for d in Net XML Data Util NetSSL_OpenSSL Foundation ; do + insinto /usr/share/doc/${PF}/examples/${d} + doins -r ${d}/samples + done + find "${D}/usr/share/doc/${PF}/examples" \ + -iname "*.sln" -or -iname "*.vcproj" -or \ + -iname "*.vmsbuild" -or -iname "*.properties" \ + | xargs rm + fi +} |