From 282821221ea46a5bcfc810faf9b4487c227aef64 Mon Sep 17 00:00:00 2001 From: Lukas Bulwahn Date: Mon, 29 Jul 2013 15:06:35 +0200 Subject: [PATCH] libpoco: including an external recipe for the poco library A previously written recipe for the poco library and a special OpenEmbedded config file for poco is included from https://gitorious.digitalstrom.org/dss-oe/dss-oe/blobs/raw/master/dS/meta-dss11-production/recipes-support/poco/poco_1.3.6p2.bb and https://gitorious.digitalstrom.org/dss-oe/dss-oe/blobs/raw/master/dS/meta-dss11-production/recipes-support/poco/files/OE This recipe and the config is redistributed here under the same license agreement as the original. Signed-off-by: Lukas Bulwahn --- recipes-extended/libpoco/libpoco/OE | 78 ++++++++++++++++++++++++ recipes-extended/libpoco/poco_1.3.6p2.bb | 33 ++++++++++ 2 files changed, 111 insertions(+) create mode 100644 recipes-extended/libpoco/libpoco/OE create mode 100644 recipes-extended/libpoco/poco_1.3.6p2.bb diff --git a/recipes-extended/libpoco/libpoco/OE b/recipes-extended/libpoco/libpoco/OE new file mode 100644 index 0000000..516b5cb --- /dev/null +++ b/recipes-extended/libpoco/libpoco/OE @@ -0,0 +1,78 @@ +# +# $Id: //poco/1.3/build/config/Angstrom#1 $ +# +# Angstrom +# +# Make settings for Open Embedded/Angstrom +# +# ^^^ I wonder what the guy who wrote the above lines was thinking... +# Yeah, right, Angstrom is only for ARM, and why would we want to override +# the compiler name? What, uclibc, what is that? And please also explain us +# what environment variables are! + + +# +# General Settings +# +LINKMODE = SHARED +POCO_TARGET_OSNAME = Linux +POCO_TARGET_OSARCH ?= armv5te +TOOL ?= arm-angstrom-linux-gnueabi + +# +# Define Tools +# +CC ?= $(TOOL)-gcc +CXX ?= $(TOOL)-g++ +LINK ?= $(CXX) +STRIP ?= $(TOOL)-strip +LIB ?= $(TOOL)-ar -cr +RANLIB ?= $(TOOL)-ranlib +SHLIB ?= $(CXX) -shared -Wl,-soname,$(notdir $@) -o $@ +SHLIBLN ?= $(POCO_BASE)/build/script/shlibln +DEP ?= $(POCO_BASE)/build/script/makedepend.gcc +SHELL ?= sh +RM ?= rm -rf +CP ?= cp +MKDIR ?= mkdir -p + +# +# Extension for Shared Libraries +# +SHAREDLIBEXT = .so.$(target_version) +SHAREDLIBLINKEXT = .so + +# +# Compiler and Linker Flags +# +CFLAGS = -Isrc +CFLAGS32 = +CFLAGS64 = +CXXFLAGS = +CXXFLAGS32 = +CXXFLAGS64 = +LINKFLAGS = +LINKFLAGS32 = +LINKFLAGS64 = +STATICOPT_CC = +STATICOPT_CXX = +STATICOPT_LINK = -static +SHAREDOPT_CC = -fPIC +SHAREDOPT_CXX = -fPIC +SHAREDOPT_LINK = -Wl,-rpath,$(LIBPATH) +DEBUGOPT_CC = -g -D_DEBUG +DEBUGOPT_CXX = -g -D_DEBUG +DEBUGOPT_LINK = -g +RELEASEOPT_CC = -O3 -DNDEBUG +RELEASEOPT_CXX = -O2 -DNDEBUG +RELEASEOPT_LINK = -O2 + +# +# System Specific Flags +# +SYSFLAGS = -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_REENTRANT -D_THREAD_SAFE -DPOCO_NO_FPENVIRONMENT + +# +# System Specific Libraries +# +SYSLIBS = -lpthread -ldl -lrt diff --git a/recipes-extended/libpoco/poco_1.3.6p2.bb b/recipes-extended/libpoco/poco_1.3.6p2.bb new file mode 100644 index 0000000..bd6c158 --- /dev/null +++ b/recipes-extended/libpoco/poco_1.3.6p2.bb @@ -0,0 +1,33 @@ +# POCO C++ libraries build file + +DESCRIPTION="POCO C++ Libraries" +HOMEPAGE="http://pocoproject.org" +LICENSE="Boost Software License" +LIC_FILES_CHKSUM="file://LICENSE;md5=e4224ccaecb14d942c71d31bef20d78c" +DEPENDS="expat zlib pcre" +SRC_URI="${SOURCEFORGE_MIRROR}/poco/poco-1.3.6p2-all.tar.bz2 \ + file://OE" +SRC_URI[md5sum] = "8f1a6c3511764167d39f1950da3fcb37" +SRC_URI[sha256sum] = "290c7f80827e509642f200b766e3709ef6ace0b6efadc832c9e879ac11830ae5" + +S="${WORKDIR}/poco-${PV}-all" +PR = "r4" + +inherit autotools binconfig pkgconfig + +TARGET_CC_ARCH += "${LDFLAGS}" + +EXTRA_OECONF += "--config=OE \ + --no-samples \ + --no-wstring \ + --no-tests \ + --unbundled \ + --omit=Data/MySQL,Data/SQLite,Data/ODBC,PageCompiler \ + " + +do_configure_prepend() { + install ${WORKDIR}/OE ${S}/build/config/OE + export POCO_TARGET_OSARCH=${TARGET_ARCH} +} + +# not in the mood to fix the rpath badness, we do not need those files anyway