diff --git a/Data/MySQL/Makefile b/Data/MySQL/Makefile index bfcba995e..2263c3a43 100644 --- a/Data/MySQL/Makefile +++ b/Data/MySQL/Makefile @@ -9,7 +9,7 @@ include $(POCO_BASE)/build/rules/global SYSLIBS += -L/usr/local/lib$(LIB64SUFFIX)/mysql -L/usr/lib$(LIB64SUFFIX)/mysql -L/usr/mysql/lib$(LIB64SUFFIX) -L/usr/mysql/lib$(LIB64SUFFIX)/mysql -L/usr/local/mysql/lib$(LIB64SUFFIX) -lmysqlclient -INCLUDE += -I/usr/local/include/mysql/ -I/usr/include/mysql/ -I/usr/mysql/include/mysql -I/usr/mysql/include +INCLUDE += -I/usr/local/include/mysql/ -I/usr/include/mysql/ -I/usr/mysql/include/mysql -I/usr/local/mysql/include SYSFLAGS += -DTHREADSAFE -DNO_TCL objects = Binder Extractor SessionImpl Connector \ diff --git a/Data/MySQL/dependencies b/Data/MySQL/dependencies new file mode 100644 index 000000000..bef728c9a --- /dev/null +++ b/Data/MySQL/dependencies @@ -0,0 +1,2 @@ +Foundation +Data diff --git a/Data/MySQL/testsuite/Makefile b/Data/MySQL/testsuite/Makefile index d5d5c042a..a845628f3 100644 --- a/Data/MySQL/testsuite/Makefile +++ b/Data/MySQL/testsuite/Makefile @@ -8,7 +8,7 @@ include $(POCO_BASE)/build/rules/global -INCLUDE += -I./../include -I/usr/local/include/mysql -I/usr/include/mysql/ -I/usr/mysql/include/mysql -I/usr/mysql/include +INCLUDE += -I./../include -I/usr/local/include/mysql -I/usr/include/mysql/ -I/usr/mysql/include/mysql -I/usr/local/mysql/include # Note: linking order is important, do not change it. SYSLIBS += -L/usr/local/lib$(LIB64SUFFIX)/mysql -L/usr/lib$(LIB64SUFFIX)/mysql -L/usr/mysql/lib$(LIB64SUFFIX) -L/usr/mysql/lib$(LIB64SUFFIX)/mysql -L/usr/local/mysql/lib$(LIB64SUFFIX) -lmysqlclient -lz -lpthread -ldl diff --git a/Data/ODBC/ODBC.make b/Data/ODBC/ODBC.make index f457e950f..30eb5e371 100644 --- a/Data/ODBC/ODBC.make +++ b/Data/ODBC/ODBC.make @@ -6,8 +6,18 @@ # Makefile fragment for finding ODBC library # -ifndef POCO_ODBC_LIB_DIR -POCO_ODBC_LIB_DIR = /usr/lib +ifndef POCO_ODBC_INCLUDE +POCO_ODBC_INCLUDE = /usr/include +endif + +ifndef POCO_ODBC_LIB +ifeq (0, $(shell test -d /usr/lib/$(OSARCH)-linux-gnu; echo $$?)) +POCO_ODBC_LIB = /usr/lib/$(OSARCH)-linux-gnu +else ifeq (0, $(shell test -d /usr/lib64; echo $$?)) +POCO_ODBC_LIB = /usr/lib64 +else +POCO_ODBC_LIB = /usr/lib +endif endif ifeq ($(LINKMODE),STATIC) @@ -16,19 +26,20 @@ else LIBLINKEXT = $(SHAREDLIBLINKEXT) endif -SYSLIBS += -L$(POCO_ODBC_LIB_DIR) +INCLUDE += -I$(POCO_ODBC_INCLUDE) +SYSLIBS += -L$(POCO_ODBC_LIB) -########### -# MinGW # -########### +## +## MinGW +## ifeq ($(POCO_CONFIG),MinGW) # -DODBCVER=0x0300: SQLHandle declaration issue # -DNOMINMAX : MIN/MAX macros defined in windows conflict with libstdc++ CXXFLAGS += -DODBCVER=0x0300 -DNOMINMAX -########### -# Cygwin # -########### +## +## Cygwin +## else ifeq ($(POCO_CONFIG),CYGWIN) # -DODBCVER=0x0300: SQLHandle declaration issue # -DNOMINMAX : MIN/MAX macros defined in windows conflict with libstdc++ @@ -36,20 +47,20 @@ CXXFLAGS += -DODBCVER=0x0300 -DNOMINMAX # CYGWIN platform has its own ODBC library in /lib/w32api SYSLIBS += -L/lib/w32api -lodbc32 -lodbccp32 -############ -# unixODBC # -############ -else ifeq (0, $(shell test -e $(POCO_ODBC_LIB_DIR)/libodbc$(LIBLINKEXT); echo $$?)) +## +## unixODBC +## +else ifeq (0, $(shell test -e $(POCO_ODBC_LIB)/libodbc$(LIBLINKEXT); echo $$?)) SYSLIBS += -lodbc -lodbcinst COMMONFLAGS += -DPOCO_UNIXODBC -############ -# iODBC # -############ -else ifeq (0, $(shell test -e $(POCO_ODBC_LIB_DIR)/libiodbc$(LIBLINKEXT); echo$$?)) +## +## iODBC +## +else ifeq (0, $(shell test -e $(POCO_ODBC_LIB)/libiodbc$(LIBLINKEXT); echo $$?)) SYSLIBS += -liodbc -liodbcinst -COMMONFLAGS += -DPOCO_IODBC +COMMONFLAGS += -DPOCO_IODBC -I/usr/include/iodbc else -$(error No ODBC library found in $(POCO_ODBC_LIB_DIR). Please install unixODBC or iODBC and try again.) +$(error No ODBC library found. Please install unixODBC or iODBC or specify POCO_ODBC_LIB and try again) endif diff --git a/PocoDoc/cfg/mkdocumentation.xml b/PocoDoc/cfg/mkdocumentation.xml new file mode 100644 index 000000000..bfbc75207 --- /dev/null +++ b/PocoDoc/cfg/mkdocumentation.xml @@ -0,0 +1,106 @@ + + + + + ${PocoBuild}/*/include/Poco/*.h + ${PocoBuild}/*/include/Poco/*/*.h + ${PocoBuild}/*/include/Poco/*/*/*.h + ${PocoBuild}/*/include/Poco/*/*.h + ${PocoBuild}/*/*/include/Poco/*/*/*.h + + + *_*.h, + expat*.h, + zconf.h, + zlib.h, + ${PocoBuild}/Util/include/Poco/Util/Units.h + + + + ${PocoBuild}/doc/*.page, + ${PocoBuild}/*/doc/*.page + ${PocoBuild}/*/*/doc/*.page + + + ${PocoBase}/PocoDoc/resources/css, + ${PocoBase}/PocoDoc/resources/images, + ${PocoBase}/PocoDoc/resources/platform/index.html, + ${PocoBase}/PocoDoc/resources/platform/welcome.thtml, + ${PocoBase}/PocoDoc/resources/platform/images, + ${PocoBuild}/*/doc/images + + + g++ + + ${Includes}, + -I/usr/local/mysql/include, + -D_DEBUG, + -E, + -C + + + true + + EN + utf-8 + Applied Informatics C++ Libraries and Tools + Applied Informatics Software Engineering GmbH and Contributors + http://www.appinf.com/ + images/headerlogo.png + + + + All Base Classes + All Symbols + Anonymous + Constructors + Class + Deprecated + Description + Destructor + Direct Base Classes + Enumerations + Functions +
Header
+ if and only if + Inheritance + Inherited Functions + is deprecated and should no longer be used + Known Derived Classes + Library + Member Functions + Member Summary + more... + Namespaces + Namespace + Nested Classes + Package + Packages + Package Index + See also + Struct + Symbol Index + This + Types + Variables + Contents + User Guides and Tutorials + Introduction +
+
+ + + + + c1 + warning + + + + + ConsoleChannel + %s: [%p] %t + + + +
diff --git a/VERSION b/VERSION index dad53225d..3e1ad720b 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.5.0d1 (2012-04-22) +1.5.0 \ No newline at end of file diff --git a/release/script/cpproj b/release/script/cpproj index 672cf479a..2d167dc7a 100644 --- a/release/script/cpproj +++ b/release/script/cpproj @@ -1,6 +1,6 @@ #! /bin/sh # -# $Id: //poco/1.3/release/script/cpproj#2 $ +# $Id: //poco/1.4/release/script/cpproj#6 $ # # cpproj # @@ -11,6 +11,7 @@ src=$1 dst=$2 +extradirs="doc templates res bundle sql" if [ "$src" = "" ] ; then echo "usage: $0 " @@ -32,10 +33,18 @@ fi cp ${src}/src/* ${dst}/src cp ${src}/*.sln ${dst} cp ${src}/*.vcproj ${dst} +cp ${src}/*.vcxproj ${dst} +cp ${src}/*.vcxproj.filters ${dst} +cp ${src}/*.vcxproj.user ${dst} cp ${src}/Makefile* ${dst} +cp ${src}/*.make ${dst} +cp ${src}/*.progen ${dst} if [ "`find ${src} -name '*.vmsbuild'`" != "" ] ; then cp ${src}/*.vmsbuild ${dst} fi +if [ "`find ${src} -name '*.vxbuild'`" != "" ] ; then + cp ${src}/*.vxbuild ${dst} +fi if [ "`find ${src} -name '*.bndlspec'`" != "" ] ; then cp ${src}/*.bndlspec ${dst} fi @@ -45,16 +54,6 @@ if [ -f ${src}/.project ] ; then cp ${src}/.cdtproject ${dst} fi -if [ -d ${src}/doc ] ; then - mkdir -p ${dst}/doc - cp -R ${src}/doc/* ${dst}/doc -fi - -if [ -d ${src}/templates ] ; then - mkdir -p ${dst}/templates - cp -R ${src}/templates/* ${dst}/templates -fi - if [ -d ${src}/testsuite ] ; then mkdir -p ${dst}/testsuite mkdir -p ${dst}/testsuite/src @@ -71,13 +70,21 @@ if [ -d ${src}/testsuite ] ; then cp ${src}/testsuite/src/* ${dst}/testsuite/src cp ${src}/testsuite/*.vcproj ${dst}/testsuite + cp ${src}/testsuite/*.vcxproj ${dst}/testsuite + cp ${src}/testsuite/*.vcxproj.filters ${dst}/testsuite + cp ${src}/testsuite/*.vcxproj.user ${dst}/testsuite cp ${src}/testsuite/Makefile* ${dst}/testsuite + cp ${src}/testsuite/*.make ${dst}/testsuite + cp ${src}/testsuite/*.progen ${dst}/testsuite if [ "`find ${src}/testsuite -name '*.vmsbuild'`" != "" ] ; then cp ${src}/testsuite/*.vmsbuild ${dst}/testsuite fi if [ "`find ${src}/testsuite -name '*.opt'`" != "" ] ; then cp ${src}/testsuite/*.opt ${dst}/testsuite fi + if [ "`find ${src}/testsuite -name '*.vxbuild'`" != "" ] ; then + cp ${src}/testsuite/*.vxbuild ${dst}/testsuite + fi if [ "`find ${src}/testsuite -name '*.properties'`" != "" ] ; then cp ${src}/testsuite/*.properties ${dst}/testsuite fi @@ -89,23 +96,26 @@ if [ -d ${src}/testsuite ] ; then fi fi -if [ -d ${src}/bundle ] ; then - mkdir -p ${dst}/bundle - cp -R ${src}/bundle/* ${dst}/bundle +if [ -f ${src}/extradirs ] ; then + extradirs="$extradirs `cat ${src}/extradirs`" fi -if [ -d ${src}/res ] ; then - mkdir -p ${dst}/res - cp -R ${src}/res/* ${dst}/res -fi +for extradir in $extradirs ; +do + if [ -d ${src}/${extradir} ] ; then + mkdir -p ${dst}/${extradir} + cp -R ${src}/${extradir}/* ${dst}/${extradir} + fi +done if [ -d ${src}/samples ] ; then mkdir -p ${dst}/samples cp ${src}/samples/*.sln ${dst}/samples cp ${src}/samples/Makefile* ${dst}/samples + cp ${src}/samples/*.progen ${dst}/samples - samples=`find ${src}/samples -maxdepth 1 -mindepth 1 -type d -print | sed "s:^.*/::"` + samples=`find ${src}/samples/* -type d -print -prune | sed "s:^.*/::"` for sample in $samples ; do @@ -125,15 +135,33 @@ if [ -d ${src}/samples ] ; then mkdir -p ${dst}/samples/${sample}/res cp -R ${src}/samples/${sample}/res/* ${dst}/samples/${sample}/res fi + + if [ -d ${src}/samples/${sample}/xml ] ; then + mkdir -p ${dst}/samples/${sample}/xml + cp -R ${src}/samples/${sample}/xml/* ${dst}/samples/${sample}/xml + fi + + if [ -d ${src}/samples/${sample}/media ] ; then + mkdir -p ${dst}/samples/${sample}/media + cp -R ${src}/samples/${sample}/media/* ${dst}/samples/${sample}/media + fi cp ${src}/samples/${sample}/*.vcproj ${dst}/samples/${sample} + cp ${src}/samples/${sample}/*.vcxproj ${dst}/samples/${sample} + cp ${src}/samples/${sample}/*.vcxproj.filters ${dst}/samples/${sample} + cp ${src}/samples/${sample}/*.vcxproj.user ${dst}/samples/${sample} cp ${src}/samples/${sample}/Makefile* ${dst}/samples/${sample} + cp ${src}/samples/${sample}/*.make ${dst}/samples/${sample} + cp ${src}/samples/${sample}/*.progen ${dst}/samples/${sample} if [ "`find ${src}/samples/${sample}/ -name '*.vmsbuild'`" != "" ] ; then cp ${src}/samples/${sample}/*.vmsbuild ${dst}/samples/${sample} fi if [ "`find ${src}/samples/${sample}/ -name '*.opt'`" != "" ] ; then cp ${src}/samples/${sample}/*.opt ${dst}/samples/${sample} fi + if [ "`find ${src}/samples/${sample}/ -name '*.vxbuild'`" != "" ] ; then + cp ${src}/samples/${sample}/*.vxbuild ${dst}/samples/${sample} + fi if [ "`find ${src}/samples/${sample}/ -name '*.properties'`" != "" ] ; then cp ${src}/samples/${sample}/*.properties ${dst}/samples/${sample} fi @@ -181,4 +209,4 @@ if [ -d ${src}/samples ] ; then cp -R ${src}/samples/${sample}/* ${dst}/samples/${sample} fi done -fi \ No newline at end of file +fi diff --git a/release/script/mkdoc b/release/script/mkdoc new file mode 100755 index 000000000..b1ec96c93 --- /dev/null +++ b/release/script/mkdoc @@ -0,0 +1,87 @@ +#! /bin/sh +# +# $Id: //poco/1.4/release/script/mkdoc#2 $ +# +# mkdoc +# +# Create reference documentation for a POCO release. +# This is a wrapper for mkdocumentation that syncs to the +# Perforce head revision, reads the current +# version from $POCO_BASE/VERSION and requires a release +# specification (loaded from $POCO_BASE/release/spec/*.release) +# as argument. +# +# usage: mkdoc [-l ] [] +# + +if [ "$POCO_BASE" = "" ] ; then + echo "Error: POCO_BASE not set." + exit 1 +fi + +spec="" +docConfig=$POCO_BASE/PocoDoc/cfg/mkdoc-poco.xml +while [ "$1" != "" ] ; +do + if [ "$1" = "-C" ] ; then + shift + docConfig=$1 + shift + elif [ "$1" = "-v" ] ; then + shift + version=$1 + shift + else + spec=$1 + shift + fi +done + +if [ "$spec" != "" ] ; then + relspec="-f release/spec/${spec}.release" + tag="-$spec" + reltag="-t $spec" +else + relspec="" + reltag="" + tag="" +fi + +cd $POCO_BASE + +if [ ! -f VERSION ] ; then + echo "Error: No VERSION file found." + exit 2 +fi + +if [ "$version" = "" ] ; then + read version <$POCO_BASE/VERSION +fi +release=$version$tag + +# +# Build release +# + +echo "Building tools" +osname=`uname -s | tr ' ' '_'` +osarch=`uname -m | tr ' ' '_'` + +if [ $osname = "Darwin" ] ; then + archpath=`dirname stage/tools/PocoDoc/bin/Darwin/*/PocoDoc` + osarch=`basename $archpath` +fi + +tools=$POCO_BASE/stage/tools +rm -rf $tools +mkdir -p $tools +mkrelease -o $tools $version CppParser PocoDoc + +cd $tools +./configure --no-tests --no-samples +make -s -j8 +export PATH=$tools/PocoDoc/bin/$osname/$osarch:$PATH +cd $POCO_BASE + +echo "Building documentation $release (using $docConfig)" +mkdocumentation $reltag $relspec -C $docConfig -v $version diff --git a/release/script/mkdocumentation b/release/script/mkdocumentation new file mode 100755 index 000000000..cd5bb4725 --- /dev/null +++ b/release/script/mkdocumentation @@ -0,0 +1,139 @@ +#! /bin/sh +# +# mkdocumentation +# +# Create reference documentation for a POCO release. +# +# Usage: +# mkdocumentation [-u] [-t ] [-f ] {} +# +# -u: Upload file to release repository. +# -t: Specify release tag. +# -f : Component list file +# -c : Build using the given configuration +# : Additional components to include +# +# Environment: +# $POCO_BASE: POCO base directory (e.g., "/cygdrive/p/poco-1.2") +# +# Prerequisites: +# PocoDoc must be in PATH +# + + +if [ "$POCO_BASE" = "" ] ; then + echo "Error: POCO_BASE not set." + exit 1 +fi + +make=make +include=`dirname $0` +build=$POCO_BASE/stage/docbuild +dist=$POCO_BASE/releases +docConfig=$POCO_BASE/PocoDoc/cfg/mkdocumentation.xml +read version <$POCO_BASE/VERSION + +osname=`uname -s | tr ' ' '_'` +osarch=`uname -m | tr ' ' '_'` + +comps="" +specfile="" +tag="" +config="" + +while [ "$1" != "" ] ; +do + if [ "$1" = "-f" ] ; then + shift + specfile=$1 + shift + elif [ "$1" = "-t" ] ; then + shift + tag=$1 + shift + elif [ "$1" = "-c" ] ; then + shift + config=$1 + shift + elif [ "$1" = "-C" ] ; then + shift + docConfig=$1 + shift + elif [ "$1" = "-v" ] ; then + shift + version=$1 + shift + else + comps="$comps $1" + shift + fi +done + +if [ "$specfile" != "" ] ; then + while read c + do + comps="$comps $c" + done <$specfile +fi + +allcomps="Foundation XML JSON Util Net $comps" + +# +# Clean build directory +# +echo "Cleaning build directory: $build" +rm -rf $build +mkdir -p $build +mkdir -p $dist + + +# +# Copy POCO sources into build directory +# +echo "Copying sources" +mkrelease -o $build $version $comps + + +# +# Make all files writeable +# +chmod -R +w $build + + +# +# Generate documentation +# +echo "Generating documentation" + +# Create a PocoDoc configuration file +docVersion=$version +if [ $tag ] ; then + docVersion="$docVersion-$tag" +fi +docPath=$dist/poco-${docVersion}-doc + +includes="" +for inc in `find $build -name include -print` ; do + includes="$includes,-I$inc" +done + +echo "PocoBuild=$build" >>$build/PocoDoc.ini +echo "PocoBase=$POCO_BASE" >>$build/PocoDoc.ini +echo "PocoDoc.output=$docPath" >>$build/PocoDoc.ini +echo "PocoDoc.version=$docVersion" >> $build/PocoDoc.ini +echo "Includes=$includes" >> $build/PocoDoc.ini + +PocoDoc --config=$docConfig --config=$build/PocoDoc.ini + +cd $dist + +chmod -R ugo+rw poco-${docVersion}-doc +chmod -R go+r poco-${docVersion}-doc +tar cf poco-${docVersion}-doc.tar poco-${docVersion}-doc +gzip -f poco-${docVersion}-doc.tar + +if [ -x /usr/bin/zip ] ; then + /usr/bin/zip -r -q poco-${docVersion}-doc.zip poco-${docVersion}-doc +fi + +echo "Done." diff --git a/release/script/mkrel b/release/script/mkrel new file mode 100755 index 000000000..dbf07951f --- /dev/null +++ b/release/script/mkrel @@ -0,0 +1,79 @@ +#! /bin/sh +# +# $Id: //poco/1.4/release/script/mkrel#1 $ +# +# mkrel +# +# Create a release for distribution. +# This is a wrapper for mkrelease that syncs to the +# Perforce head revision, reads the current +# version from $POCO_BASE/VERSION and requires a release +# specification (loaded from $POCO_BASE/release/spec/*.release) +# as argument. +# +# usage: mkrel [] +# + +if [ "$POCO_BASE" = "" ] ; then + echo "Error: POCO_BASE not set." + exit 1 +fi + +cd $POCO_BASE + +if [ ! -f VERSION ] ; then + echo "Error: No VERSION file found." + exit 2 +fi + +case `uname` in + CYGWIN*) cygwin=1 + ;; + *) cygwin="" + ;; +esac + +label="" +spec="" +while [ "$1" != "" ] ; +do + if [ "$1" = "-l" ] ; then + shift + label=@$1 + shift + else + spec=$1 + shift + fi +done + + +if [ "$spec" != "" ] ; then + relspec="-f release/spec/${spec}.release" + reltag="-$spec" +else + relspec="" + reltag="" +fi + +if [ $cygwin ] ; then + export PWD=`cygpath -w $POCO_BASE` +fi + +# +# Sync files +# +echo "Syncing files..." +p4 sync ./...$label + +read version <$POCO_BASE/VERSION +release=$version$reltag + +# +# Build release +# +echo "Building release $release" + +rm -rf releases/poco-$release.* +$POCO_BASE/release/script/mkrelease $release $relspec + diff --git a/release/script/mkrelease b/release/script/mkrelease index b92fa87ab..1cc961b9b 100644 --- a/release/script/mkrelease +++ b/release/script/mkrelease @@ -1,6 +1,6 @@ -#! /bin/sh +#! /bin/bash # -# $Id: //poco/1.3/release/script/mkrelease#10 $ +# $Id: //poco/1.4/release/script/mkrelease#8 $ # # mkrelease # @@ -18,7 +18,14 @@ if [ "$1" = "" ] ; then exit 1 fi -comps="Foundation XML Util Net" +case `uname` in + CYGWIN*) cygwin=1 + ;; + *) cygwin="" + ;; +esac + +comps="Foundation XML JSON Util Net" internal=0 specfile="" version="" @@ -52,7 +59,7 @@ do done if [ "$specfile" != "" ] ; then - while read c + while read c do comps="$comps $c" done <$specfile @@ -72,21 +79,26 @@ fi mkdir -p ${target} mkdir -p ${target}/doc mkdir -p ${target}/contrib +mkdir -p ${target}/patches # # readme files, etc. # echo ${version} "(`date +%Y-%m-%d`)" >${target}/VERSION -cp ${POCO_BASE}/dist/LICENSE ${target} -cp ${POCO_BASE}/dist/NEWS ${target} -cp ${POCO_BASE}/dist/README ${target} -cp ${POCO_BASE}/dist/CHANGELOG ${target} -cp ${POCO_BASE}/dist/CONTRIBUTORS ${target} +cp ${POCO_BASE}/LICENSE ${target} +cp ${POCO_BASE}/NEWS ${target} +cp ${POCO_BASE}/README ${target} +cp ${POCO_BASE}/CHANGELOG ${target} +cp ${POCO_BASE}/CONTRIBUTORS ${target} +cp ${POCO_BASE}/DLLVersion.rc ${target} cp ${POCO_BASE}/doc/Acknowledgements.html ${target}/doc +cp ${POCO_BASE}/doc/*.page ${target}/doc cp -R ${POCO_BASE}/contrib/* ${target}/contrib +cp -R ${POCO_BASE}/patches/* ${target}/patches + # # build system @@ -95,16 +107,19 @@ mkdir -p ${target}/build/config mkdir -p ${target}/build/rules mkdir -p ${target}/build/script mkdir -p ${target}/build/vms +mkdir -p ${target}/build/vxconfig cp ${POCO_BASE}/build/config/* ${target}/build/config cp ${POCO_BASE}/build/rules/* ${target}/build/rules +cp ${POCO_BASE}/build/vxconfig/* ${target}/build/vxconfig cp ${POCO_BASE}/build/script/makedepend.* ${target}/build/script cp ${POCO_BASE}/build/script/makeldpath ${target}/build/script cp ${POCO_BASE}/build/script/shlibln ${target}/build/script cp ${POCO_BASE}/build/script/projname ${target}/build/script +cp ${POCO_BASE}/build/script/vxprogen ${target}/build/script cp ${POCO_BASE}/build/vms/* ${target}/build/vms -cp ${POCO_BASE}/dist/buildwin.cmd ${target} -cp ${POCO_BASE}/dist/configure ${target} +cp ${POCO_BASE}/buildwin.cmd ${target} +cp ${POCO_BASE}/configure ${target} cp ${POCO_BASE}/buildvms.com ${target} cp ${POCO_BASE}/libversion ${target} @@ -131,14 +146,23 @@ cp ${POCO_BASE}/CppUnit/include/CppUnit/* ${target}/CppUnit/include/CppUnit cp ${POCO_BASE}/CppUnit/src/* ${target}/CppUnit/src cp ${POCO_BASE}/CppUnit/*.sln ${target}/CppUnit cp ${POCO_BASE}/CppUnit/*.vcproj ${target}/CppUnit +cp ${POCO_BASE}/CppUnit/*.vcxproj ${target}/CppUnit +cp ${POCO_BASE}/CppUnit/*.vcxproj.filters ${target}/CppUnit +cp ${POCO_BASE}/CppUnit/*.vcxproj.user ${target}/CppUnit cp ${POCO_BASE}/CppUnit/Makefile ${target}/CppUnit cp ${POCO_BASE}/CppUnit/*.vmsbuild ${target}/CppUnit +cp ${POCO_BASE}/CppUnit/*.vxbuild ${target}/CppUnit +cp ${POCO_BASE}/CppUnit/*.progen ${target}/CppUnit cp ${POCO_BASE}/CppUnit/WinTestRunner/include/WinTestRunner/* ${target}/CppUnit/WinTestRunner/include/WinTestRunner cp ${POCO_BASE}/CppUnit/WinTestRunner/src/* ${target}/CppUnit/WinTestRunner/src cp ${POCO_BASE}/CppUnit/WinTestRunner/res/WinTestRunner.rc ${target}/CppUnit/WinTestRunner/res cp ${POCO_BASE}/CppUnit/WinTestRunner/res/Resource.h ${target}/CppUnit/WinTestRunner/res cp ${POCO_BASE}/CppUnit/WinTestRunner/*.vcproj ${target}/CppUnit/WinTestRunner +cp ${POCO_BASE}/CppUnit/WinTestRunner/*.vcxproj ${target}/CppUnit/WinTestRunner +cp ${POCO_BASE}/CppUnit/WinTestRunner/*.vcxproj.filters ${target}/CppUnit/WinTestRunner +cp ${POCO_BASE}/CppUnit/WinTestRunner/*.vcxproj.user ${target}/CppUnit/WinTestRunner +cp ${POCO_BASE}/CppUnit/WinTestRunner/*.progen ${target}/CppUnit/WinTestRunner # @@ -191,8 +215,10 @@ ifndef POCO_BUILD export POCO_BUILD=$(POCO_BASE) endif -.PHONY: all libexecs cppunit tests samples clean distclean install +.PHONY: poco all libexecs cppunit tests samples clean distclean install +# TESTS and SAMPLES are set in config.make +poco: libexecs $(if $(TESTS),tests) $(if $(SAMPLES),samples) all: libexecs tests samples INSTALLDIR = $(DESTDIR)$(POCO_PREFIX) @@ -250,7 +276,7 @@ echo 'samples: $(filter-out $(foreach f,$(OMIT),$f%),$(samples))' >>${target}/Ma for comp in $comps ; do - if [ `grep -c POCO_LICENSING "${POCO_BASE}/${comp}/Makefile"` != 0 ] ; then + if [ "`grep -c POCO_LICENSING "${POCO_BASE}/${comp}/Makefile"`" != 0 ] ; then dependencies=$licensingDep else dependencies="" @@ -258,6 +284,8 @@ do if [ -f "${POCO_BASE}/${comp}/dependencies" ] ; then for dep in `cat "${POCO_BASE}/${comp}/dependencies"` ; do + # get rid of surrounding whitespace (trailing \r on Cygwin) + read dep <<< "$dep" dependencies="$dependencies ${dep}-libexec" done fi @@ -280,6 +308,8 @@ ENDOFSCRIPT if [ -f "${POCO_BASE}/${comp}/samples/dependencies" ] ; then for dep in `cat "${POCO_BASE}/${comp}/samples/dependencies"` ; do + # get rid of surrounding whitespace (trailing \r on Cygwin) + read dep <<< ${dep} sdependencies="$sdependencies ${dep}-libexec" done fi @@ -311,6 +341,7 @@ ENDOFSCRIPT done cat >>${target}/Makefile <${target}/build_vs71.cmd <<'ENDOFSCRIPT' @echo off -buildwin 71 build shared both yes +if defined VS71COMNTOOLS ( +call "%VS71COMNTOOLS%\vsvars32.bat") +buildwin 71 build shared both Win32 samples ENDOFSCRIPT # -# Create Visual Studio 8 buils script +# Create Visual Studio 8 build script # cat >${target}/build_vs80.cmd <<'ENDOFSCRIPT' @echo off -buildwin 80 build shared both yes +if defined VS80COMNTOOLS ( +call "%VS80COMNTOOLS%\vsvars32.bat") +buildwin 80 build shared both Win32 samples ENDOFSCRIPT # -# Create Visual Studio 9 buils script +# Create Visual Studio 9 build script # cat >${target}/build_vs90.cmd <<'ENDOFSCRIPT' @echo off -buildwin 90 build shared both yes +if defined VS90COMNTOOLS ( +call "%VS90COMNTOOLS%\vsvars32.bat") +buildwin 90 build shared both Win32 samples +ENDOFSCRIPT + + +# +# Create Visual Studio 10 build script +# +cat >${target}/build_vs100.cmd <<'ENDOFSCRIPT' +@echo off +if defined VS100COMNTOOLS ( +call "%VS100COMNTOOLS%\vsvars32.bat") +buildwin 100 build shared both Win32 samples +ENDOFSCRIPT + + +# +# Create Visual Studio 9 WinCE build script +# +cat >${target}/build_CE_vs90.cmd <<'ENDOFSCRIPT' +@echo off +buildwin 90 build static_mt both WinCE samples +ENDOFSCRIPT + + +# +# Create Visual C++ Express 2008 build script +# +cat >${target}/build_vcexpress2008.cmd <<'ENDOFSCRIPT' +@echo off +buildwin 90 build shared both Win32 samples vcexpress +ENDOFSCRIPT + + +# +# Create Visual C++ Express 2010 build script +# +cat >${target}/build_vcexpress2010.cmd <<'ENDOFSCRIPT' +@echo off +buildwin 100 build shared both Win32 samples vcexpress ENDOFSCRIPT # # Fix line endings # -if [ -x /usr/bin/unix2dos ] ; then - /usr/bin/unix2dos ${target}/build_vs71.cmd - /usr/bin/unix2dos ${target}/build_vs80.cmd - /usr/bin/unix2dos ${target}/build_vs90.cmd +if [ $cygwin ] ; then + if [ -x /usr/bin/unix2dos ] ; then + /usr/bin/unix2dos ${target}/build_vs71.cmd + /usr/bin/unix2dos ${target}/build_vs80.cmd + /usr/bin/unix2dos ${target}/build_vs90.cmd + /usr/bin/unix2dos ${target}/build_vs100.cmd + /usr/bin/unix2dos ${target}/build_CE_vs90.cmd + /usr/bin/unix2dos ${target}/build_vcexpress2008.cmd + /usr/bin/unix2dos ${target}/build_vcexpress2010.cmd + /usr/bin/unix2dos ${target}/Makefile + fi fi diff --git a/release/spec/all.release b/release/spec/all.release new file mode 100644 index 000000000..e9861d8ac --- /dev/null +++ b/release/spec/all.release @@ -0,0 +1,10 @@ +Crypto +NetSSL_OpenSSL +Data +Data/SQLite +Data/ODBC +Data/MySQL +Zip +PageCompiler +PageCompiler/File2Page +PDF \ No newline at end of file