From 8d00dc333228261aaaeacfa4840da8ac891538fb Mon Sep 17 00:00:00 2001 From: Volker Grabsch Date: Sun, 1 May 2011 17:44:17 +0200 Subject: corrections and improvements for package poco --- src/poco-1-fix-mno-cygwin.patch | 23 +++++++++++++++ src/poco-test.cpp | 63 +++-------------------------------------- src/poco.mk | 27 +++++++++++------- 3 files changed, 44 insertions(+), 69 deletions(-) create mode 100644 src/poco-1-fix-mno-cygwin.patch diff --git a/src/poco-1-fix-mno-cygwin.patch b/src/poco-1-fix-mno-cygwin.patch new file mode 100644 index 0000000..75b63af --- /dev/null +++ b/src/poco-1-fix-mno-cygwin.patch @@ -0,0 +1,23 @@ +This file is part of mingw-cross-env. +See doc/index.html for further information. + +--- a/build/config/MinGW-CrossEnv ++++ b/build/config/MinGW-CrossEnv +@@ -23,7 +23,7 @@ CXX = $(CROSSENV)-g++ + LINK = $(CXX) + LIB = $(CROSSENV)-ar -cr + RANLIB = $(CROSSENV)-ranlib +-SHLIB = $(CXX) -shared -mno-cygwin -o $@ -Wl,--out-implib=$(dir $@)$(subst cyg,lib,$(basename $(notdir $@))).a ++SHLIB = $(CXX) -shared -o $@ -Wl,--out-implib=$(dir $@)$(subst cyg,lib,$(basename $(notdir $@))).a + SHLIBLN = $(POCO_BASE)/build/script/shlibln + STRIP = + DEP = $(POCO_BASE)/build/script/makedepend.gcc +@@ -68,7 +68,7 @@ RELEASEOPT_LINK = -O2 + # + # System Specific Flags + # +-SYSFLAGS = -mno-cygwin -D_WIN32 -DMINGW32 -DWINVER=0x500 -DPOCO_NO_FPENVIRONMENT -DPCRE_STATIC -DPOCO_THREAD_STACK_SIZE -DFoundation_Config_INCLUDED ++SYSFLAGS = -D_WIN32 -DMINGW32 -DWINVER=0x500 -DPOCO_NO_FPENVIRONMENT -DPCRE_STATIC -DPOCO_THREAD_STACK_SIZE -DFoundation_Config_INCLUDED + + # + # System Specific Libraries diff --git a/src/poco-test.cpp b/src/poco-test.cpp index 0f06668..7d98dcc 100644 --- a/src/poco-test.cpp +++ b/src/poco-test.cpp @@ -1,68 +1,13 @@ /* This file is part of mingw-cross-env. */ /* See doc/index.html for further information. */ -// -// DateTime.cpp -// -// $Id: //poco/1.4/Foundation/samples/DateTime/src/DateTime.cpp#1 $ -// -// This sample demonstrates the DateTime class. -// -// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. -// and Contributors. -// -// Permission is hereby granted, free of charge, to any person or organization -// obtaining a copy of the software and accompanying documentation covered by -// this license (the "Software") to use, reproduce, display, distribute, -// execute, and transmit the Software, and to prepare derivative works of the -// Software, and to permit third-parties to whom the Software is furnished to -// do so, all subject to the following: -// -// The copyright notices in the Software and this entire statement, including -// the above license grant, this restriction and the following disclaimer, -// must be included in all copies of the Software, in whole or in part, and -// all derivative works of the Software, unless such copies or derivative -// works are solely in the form of machine-executable object code generated by -// a source language processor. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT -// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE -// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, -// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -// DEALINGS IN THE SOFTWARE. -// - - -#include "Poco/LocalDateTime.h" -#include "Poco/DateTime.h" -#include "Poco/DateTimeFormat.h" -#include "Poco/DateTimeFormatter.h" -#include "Poco/DateTimeParser.h" #include - - -using Poco::LocalDateTime; -using Poco::DateTime; -using Poco::DateTimeFormat; -using Poco::DateTimeFormatter; -using Poco::DateTimeParser; - +#include +#include +#include int main() { - LocalDateTime now; - - std::string str = DateTimeFormatter::format(now, DateTimeFormat::ISO8601_FORMAT); - DateTime dt; - int tzd; - DateTimeParser::parse(DateTimeFormat::ISO8601_FORMAT, str, dt, tzd); - dt.makeUTC(tzd); - LocalDateTime ldt(tzd, dt); - - std::cerr << "Current time is " << str << std::endl; - str = DateTimeFormatter::format(ldt, DateTimeFormat::ISO8601_FORMAT); - std::cerr << "Parsed current time is " << str << std::endl; + std::cout << Poco::DateTimeFormatter::format(Poco::LocalDateTime(), Poco::DateTimeFormat::ISO8601_FORMAT) << std::endl; return 0; } diff --git a/src/poco.mk b/src/poco.mk index 84622ed..01c91ec 100644 --- a/src/poco.mk +++ b/src/poco.mk @@ -4,22 +4,29 @@ # POCO C++ Libraries PKG := poco $(PKG)_IGNORE := -$(PKG)_VERSION := 1.4.1 -$(PKG)_PATCHNUM := p1 +$(PKG)_VERSION := 1.4.1p1 $(PKG)_CHECKSUM := e9810b8fc14c607626d7d3c74baf60726a61e83c -$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)$($(PKG)_PATCHNUM) -$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION)$($(PKG)_PATCHNUM).tar.gz -$(PKG)_WEBSITE := http://sourceforge.net/projects/$(PKG)/ -$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/poco/sources/poco-$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $($(PKG)_SUBDIR).tar.gz +$(PKG)_WEBSITE := http://pocoproject.org/ +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/sources/$(PKG)-$(word 1,$(subst p, ,$($(PKG)_VERSION)))/$($(PKG)_FILE) $(PKG)_DEPS := gcc +define $(PKG)_UPDATE + wget -q -O- 'http://pocoproject.org/download/' | \ + $(SED) -n 's,.*poco-\([0-9][^>/]*\)\.tar.*,\1,p' | \ + head -1 +endef + define $(PKG)_BUILD cd '$(1)' && ./configure \ --config=MinGW-CrossEnv \ --static \ - --prefix='$(PREFIX)/$(TARGET)' - $(MAKE) -C '$(1)' -j '$(JOBS)' install + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install - '$(TARGET)-g++' -W -Wall -Werror -ansi -pedantic \ - '$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-poco.exe' -lPocoFoundation + '$(TARGET)-g++' \ + -W -Wall -Werror -ansi -pedantic \ + '$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-poco.exe' \ + -lPocoFoundation endef -- cgit v0.12