libpoco: using cmake in version 1.5.2 (resolves #138, #151, #152)

This commit is contained in:
Lukas Bulwahn 2014-03-01 17:09:46 +01:00
parent 769f657fd6
commit 73174e13cf
5 changed files with 60 additions and 124 deletions

View File

@ -0,0 +1,42 @@
From ee7e02737b599d90f628252202e5a9969d050f5e Mon Sep 17 00:00:00 2001
From: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
Date: Sat, 1 Mar 2014 16:32:32 +0100
Subject: [PATCH] correct path for CONFIGURE_FILE in CMakeLists.txt
If CMAKE_MODULE_PATH is empty before appending
'${CMAKE_CURRENT_SOURCE_DIR}/cmake' to it (CMakeLists.txt:27),
CONFIGURE_FILE (CMakeLists.txt:182) works as intended.
However, when CMAKE_MODULE_PATH is not empty, e.g., because of
further tool-chain settings, CONFIGURE_FILE fails with:
CMake Error: File <SOME-OTHER-PATH>;<POCO-SRC-PATH>/cmake/cmake_uninstall.cmake.in does not exist.
| CMake Error at CMakeLists.txt:182 (CONFIGURE_FILE):
| configure_file Problem configuring file
This commit addresses this problem by only using
'${CMAKE_CURRENT_SOURCE_DIR}/cmake' in CONFIGURE_FILE.
The problem was discovered in the meta-ros layer project
(http://github.com/bmwcarit/meta-ros) when creating a libpoco
bitbake recipe, which uses poco's cmake installation scripts.
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8d02f13..1c9f523 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -180,7 +180,7 @@ endif(APRUTIL_FOUND AND APACHE_FOUND)
#############################################################
# Uninstall stuff see: http://www.vtk.org/Wiki/CMake_FAQ
CONFIGURE_FILE(
- "${CMAKE_MODULE_PATH}/cmake_uninstall.cmake.in"
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY)
--
1.8.3.1

View File

@ -1,78 +0,0 @@
#
# $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

View File

@ -1,11 +0,0 @@
diff -Naur a/Foundation/Makefile b/Foundation/Makefile
--- a/Foundation/Makefile 2013-07-26 13:16:29.590566734 +0200
+++ b/Foundation/Makefile 2013-07-26 13:19:34.138559575 +0200
@@ -44,6 +44,7 @@
ifdef POCO_UNBUNDLED
SYSLIBS += -lpcre -lz
+ objects += $(pcre_utf8_objects)
else
objects += $(zlib_objects) $(pcre_objects) $(pcre_utf8_objects)
endif

View File

@ -1,35 +0,0 @@
DESCRIPTION = "POCO C++ Libraries"
HOMEPAGE = "http://pocoproject.org"
LICENSE = "BSL-1.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e4224ccaecb14d942c71d31bef20d78c"
PR = "r1"
DEPENDS = "expat zlib libpcre openssl"
SRC_URI = "${SOURCEFORGE_MIRROR}/poco/poco-${PV}-all.tar.bz2 \
file://OE \
file://add_pcre_utf8_objects.patch"
SRC_URI[md5sum] = "2598b53d481e2bd3fb92bd23172abe53"
SRC_URI[sha256sum] = "95af0382257614c70841629c928184cddc228831a8bfc4c57399931bed8a16f8"
S = "${WORKDIR}/poco-${PV}-all"
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 \
"
EXTRA_OEMAKE += 'STRIP=""'
do_configure_prepend() {
install ${WORKDIR}/OE ${S}/build/config/OE
export POCO_TARGET_OSARCH=${TARGET_ARCH}
}
do_install_append () {
rmdir ${D}${bindir}
}

View File

@ -0,0 +1,18 @@
DESCRIPTION = "POCO C++ Libraries"
HOMEPAGE = "http://pocoproject.org"
LICENSE = "BSL-1.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e4224ccaecb14d942c71d31bef20d78c"
DEPENDS = "expat zlib libpcre openssl"
SRC_URI = "https://github.com/pocoproject/poco/archive/poco-${PV}-release.tar.gz"
SRC_URI[md5sum] = "4ed751311fe4eb437a485139fcfdf558"
SRC_URI[sha256sum] = "315f0947b3494172cb2833d7c978fc24f16f6f10dd1a5299e83b81fee7b62f27"
SRC_URI += "file://0001-correct-path-for-CONFIGURE_FILE-in-CMakeLists.txt.patch"
S = "${WORKDIR}/poco-poco-${PV}-release"
EXTRA_OECMAKE += "-DCMAKE_BUILD_TYPE=Release"
inherit cmake