From d3e384e2af7788591483cb295e5c84ec6aed417a Mon Sep 17 00:00:00 2001 From: zosrothko Date: Wed, 11 Nov 2015 10:03:53 +0100 Subject: [PATCH] Delete poco.cygport.txt --- poco.cygport.txt | 284 ----------------------------------------------- 1 file changed, 284 deletions(-) delete mode 100644 poco.cygport.txt diff --git a/poco.cygport.txt b/poco.cygport.txt deleted file mode 100644 index 7ca8fb650..000000000 --- a/poco.cygport.txt +++ /dev/null @@ -1,284 +0,0 @@ -# poco.cygport -NAME="poco" -VERSION=1.6.1 -RELEASE=1 -SUMMARY="A set of C++ class libraries for network-centric applications." -DESCRIPTION="The POCO C++ Libraries (POCO stands for POrtable COmponents) are open source C++ class libraries that simplify and accelerate the development of network-centric, portable applications in C++. The POCO C++ Libraries are built strictly on standard ANSI/ISO C++, including the standard library." -CATEGORY="Devel" - -MAJOR_VERSION="${VERSION/p[0-9]*/}" - -HOMEPAGE="http://pocoproject.org/" -SRC_URI="http://pocoproject.org/releases/poco-${MAJOR_VERSION}/poco-${VERSION}-all.tar.bz2 -http://pocoproject.org/releases/poco-${MAJOR_VERSION}/poco-${VERSION}-all-doc.tar.gz" -SRC_DIR="poco-${VERSION}-all" - - -############################################################################# -# Determine the POCO library version. This is contained in the 'libversion' -# file in the sources - but we might not have downloaded those yet. So get -# the library version number direct from github. -LIBRARY_VERSION=$(wget --quiet --no-check-certificate --output-document=- https://raw.github.com/pocoproject/poco/poco-${VERSION}-release/libversion) -############################################################################# - - -############################################################################# -# This cygport file produces four packages: the main 'libpoco' package -# contains the binaries necessary to run applications built with the POCO -# library; 'libpoco-devel' contains the header files and libs necessary to -# build applications that use the POCO library; 'libpoco-doc' contains the -# documentation for the POCO API in HTML format; 'poco' contains the -# PageCompiler component. -PKG_NAMES="poco libpoco${LIBRARY_VERSION} libpoco-devel libpoco-doc" -############################################################################# - - -############################################################################# -# Details for the 'poco' package. -poco_CONTENTS="--exclude=html usr/bin/*.exe usr/share" -poco_SUMMARY="The PageCompiler POCO component." -poco_DESCRIPTION="${DESCRIPTION} This package contains the PageCompiler component of POCO." -poco_CATEGORY="Devel" -############################################################################# - - -############################################################################# -# Details for the main 'libpoco' package. -declare libpoco${LIBRARY_VERSION}_SUMMARY="A set of C++ class libraries for network-centric applications." -declare libpoco${LIBRARY_VERSION}_DESCRIPTION="${DESCRIPTION}" -declare libpoco${LIBRARY_VERSION}_CATEGORY="Devel" -declare libpoco${LIBRARY_VERSION}_CONTENTS="usr/bin/*.dll" -############################################################################# - - -############################################################################# -# Details for the 'libpoco-devel' package. Note that POCO provides versions -# of expat, zlib, sqlite3 and pcre, but we delete these and use the -# equivalent Cygwin libraries. Hence the 'libpoco-devel' package has a -# couple of extra '-devel' dependencies. -libpoco_devel_SUMMARY="Headers for developing programs that will use POCO." -libpoco_devel_DESCRIPTION="${DESCRIPTION} This package contains the header files needed for developing POCO applications." -libpoco_devel_CATEGORY="Devel" -libpoco_devel_REQUIRES="libexpat-devel zlib-devel" -libpoco_devel_CONTENTS="usr/include usr/lib" -############################################################################# - - -############################################################################# -# Details for the 'libpoco-doc' package. This contains the documentation from -# the 'doc' source package. This is unaltered, and will contain documentation -# for any POCO libraries that aren't built due to missing dependencies. -libpoco_doc_SUMMARY="The POCO API reference documentation." -libpoco_doc_DESCRIPTION="${DESCRIPTION} This is the complete POCO class library reference documentation in HTML format." -libpoco_doc_CATEGORY="Devel" -libpoco_doc_CONTENTS="usr/share/doc/poco/html" -############################################################################# - - -############################################################################# -# Remove the versions of expat, zlib, sqlite3 and pcre that come bundled with -# POCO. We compile and link against the corresponding Cygwin packages -# instead. -DISTCLEANFILES=" - Foundation/include/Poco/zconf.h - Foundation/include/Poco/zlib.h - Foundation/src/adler32.c - Foundation/src/compress.c - Foundation/src/crc32.c - Foundation/src/crc32.h - Foundation/src/deflate.c - Foundation/src/deflate.h - Foundation/src/gzguts.h - Foundation/src/infback.c - Foundation/src/inffast.c - Foundation/src/inffast.h - Foundation/src/inffixed.h - Foundation/src/inflate.c - Foundation/src/inflate.h - Foundation/src/inftrees.c - Foundation/src/inftrees.h - Foundation/src/MSG00001.bin - Foundation/src/pcre_*.c - Foundation/src/trees.c - Foundation/src/trees.h - Foundation/src/zconf.h - Foundation/src/zlib.h - Foundation/src/zutil.c - Foundation/src/zutil.h - Data/SQLite/src/sqlite3.c - Data/SQLite/src/sqlite3.h - XML/include/Poco/XML/expat.h - XML/include/Poco/XML/expat_external.h - XML/src/ascii.h - XML/src/asciitab.h - XML/src/expat_config.h - XML/src/iasciitab.h - XML/src/internal.h - XML/src/latin1tab.h - XML/src/nametab.h - XML/src/utf8tab.h - XML/src/xmlparse.cpp - XML/src/xmlrole.c - XML/src/xmlrole.h - XML/src/xmltok.c - XML/src/xmltok.h - XML/src/xmltok_impl.c - XML/src/xmltok_impl.h - XML/src/xmltok_ns.c -" -############################################################################# - - -############################################################################# -# Patches. These are as follows: -# -# - 1.4.6p1-unbundled.patch - This forces POCO to use the expat, pcre, -# sqlite3 and zlib libraries that come with Cygwin, rather than the -# versions that are bundled with the POCO source code. -# -# - 1.4.7-test-dequeue.patch - Ensures that 'testDequeue' uses a consistent -# time source for all its computations. -# -# - 1.5.3-data-odbc.patch - This builds the Data/ODBC component of POCO -# with the iODBC library. -# -# - 1.6.0-pcre-unbundled.patch - POCO comes bundled with its own version -# of pcre.h, which is slightly different from the one in libpcre-devel, -# even though they are the same version. Hence, when POCO is built in -# unbundled form, these differences result in compilation errors -# concerning conflicting types. This patch corrects those problems. -# -# The 'unbundled' patch comes from the Fedora port of poco-1.4.2; the other -# patches are specific to Cygwin. -PATCH_URI=" - 1.4.6p1-unbundled.patch - 1.4.7-test-dequeue.patch - 1.5.3-data-odbc.patch - 1.6.0-pcre-unbundled.patch -" -############################################################################# - - -src_compile() { - # In the declaration of LIBRARY_VERSION above, we guessed a value - # based on a file fetched from github. We need to check that the - # value we guessed is correct, and abort if it isn't. - local libversion=$(cat "${S}/libversion") - if [ "${LIBRARY_VERSION}" != "${libversion}" ]; then - error "Library version determined from github is '${LIBRARY_VERSION}', but version number in the local sources is '${libversion}'." - fi - - lndirs - cd ${B} - ./configure --prefix=/usr --unbundled --no-samples - cygmake CC="${CC}" CXX="${CXX}" AR="${AR}" RANLIB="${RANLIB}" \ - STRIP=/usr/bin/true CFLAGS="${CFLAGS}" \ - CXXFLAGS="${CXXFLAGS} -DSQLITE_THREADSAFE=1 -frepo" \ - LINKMODE=SHARED DEFAULT_TARGET=shared_release -} - -src_install() { - # Invoke 'make install'. Note that the runtime libraries are not - # installed by default, so we copy those in using the 'dobin' - # command. - cd ${B} - dobin lib/CYGWIN/$(uname -m)/*.${LIBRARY_VERSION}.dll - cyginstall LINKMODE=SHARED DEFAULT_TARGET=shared_release - - # Rename library files. - pushd ${D}/usr/lib - for file in libPoco*.dll.a - do - mv "${file}" "${file/${LIBRARY_VERSION}./}" - done - popd - - # Install POCO documentation. - local doc_dir=${D}/usr/share/doc/poco - mkdir -p "${doc_dir}" - cp -pr "${S}/../poco-${VERSION}-all-doc" "${doc_dir}" - mv "${doc_dir}/poco-${VERSION}-all-doc" "${doc_dir}/html" -} - -src_test() { - # The code for some of Poco's events uses semaphores, which requires - # cygserver. Ensure that the 'cygserver' service exists. - if [ "0" == "$(cygrunsrv --list | grep -i cygserver | wc -l)" ]; then - cygserver-config --yes - fi - - # Get the name of the 'cygserver' service. By default, this will be - # 'cygserver', but there is some debate about postfixing this with - # '-32' or '-64' for the different architectures. The line below - # should work it out. - local cygserver=$(cygrunsrv --list | grep -i cygserver | head --lines=1) - - # If the 'cygserver' service isn't running then start it now. - local cygsvrstate=$(cygrunsrv -Q "${cygserver}" | grep -i 'current state' | sed 's/\s//g' | cut -d ':' -f 2) - if [ "${cygsvrstate}" != "Running" ]; then - cygrunsrv -S "${cygserver}" - fi - - # Most of these test harnesses run cleanly. However, please note the - # following: - # - # - Foundation: Test 'testFileAttributes3' accesses '/dev/console', - # which fails if the test is run from mintty. The test passes if - # you start Cygwin from the 'cygwin.bat' batch file. - # - # - Data/MySQL: Requires a MySQL server to be running locally: - # - # mysql_install_db - # pushd /usr - # /usr/bin/mysqld_safe & - # popd - # - # You will need to create a user 'test' with password 'test': - # - # mysql --host=localhost --user=root --password= -e \ - # "CREATE USER 'test'@'localhost' IDENTIFIED BY 'test';" - # - # Then all the MySQL tests will pass. - # - # - Net: 'testHostByName' fails, but this also fails when POCO is - # built for Win32 using MSVC++ 2008. So this is probably a - # malformed test rather than a Cygwin problem. - # - # - NetSSL_OpenSSL: There are two tests called 'testProxy', and - # both fail. However, these tests also fail when POCO is built - # for Fedora 18, so this is probably a malformed test rather than - # a Cygwin problem. - # - # - Crypto: 'testCertificate' fails when built against newer - # versions of OpenSSL. However, this test also fails when POCO is - # built for Fedora 21, so it is unlikely to be a Cygwin problem. - # - # - Data/ODBC: This testsuite requires a number of ODBC drivers, - # some of which are available for Cygwin. Sadly, I have been - # unable to get iodbc working under Cygwin, either through the - # 'myodbc-installer' or by creating an 'odbc.ini' file and using - # 'iodbctest'. Hence I have been unable to run this testsuite. - # - # All other tests pass. - local arch=$(uname -m) - export PATH="${B}/lib/CYGWIN/${arch}:${PATH}" - export POCO_BASE="${B}" - # export CYGWIN="${CYGWIN} error_start=gdb -nw %1 %2" - - local components=$(cat "${S}/components" | xargs) - for component in ${components}; do - if [ -d "${B}/${component}/testsuite/bin/CYGWIN/${arch}" ]; then - pushd "${B}/${component}/testsuite/bin/CYGWIN/${arch}" - if [ -f testrunner.exe ]; then - inform "Running ${component} tests..." - ./testrunner -all || /usr/bin/true - fi - popd - fi - done - - # If we started the 'cygserver' service above then stop it now. - if [ "${cygsvrstate}" != "Running" ]; then - cygrunsrv -E "${cygserver}" - fi -}