Skip to content

Commit

Permalink
re-added MongoDB, improved buildwin and release scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
obiltschnig committed Jul 23, 2013
1 parent 586c821 commit f111455
Show file tree
Hide file tree
Showing 10 changed files with 322 additions and 160 deletions.
3 changes: 2 additions & 1 deletion CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
This is the changelog file for the POCO C++ Libraries.

Release 1.5.2 (2013-07-22)
Release 1.5.2 (2013-07-23)
==========================

- added MongoDB library
- fixed GH #57: poco-1.5.1: Doesn't compile for Android
- added VoidEvent (Arturo Castro)
- fixed GH #80: NumberFormatter::append broken
Expand Down
207 changes: 123 additions & 84 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,226 +20,265 @@ ifndef POCO_BUILD
export POCO_BUILD=$(POCO_BASE)
endif

# if we've built both static and shared, install shared
ifeq ($(LINKMODE),BOTH)
SHAREDONLY='(' -name static -prune ')' -o
endif

# TESTS and SAMPLES are set by confgure script in config.make
poco: libexecs $(if $(TESTS),tests) $(if $(SAMPLES),samples)
.PHONY: poco all libexecs cppunit tests samples cleans 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)
COMPONENTS = Foundation XML Util Net Crypto NetSSL_OpenSSL Data Data/SQLite Data/ODBC Data/MySQL Zip PageCompiler PageCompiler/File2Page PDF CppParser JSON MongoDB
COMPONENTS = Foundation XML JSON Util Net Crypto NetSSL_OpenSSL Data Data/SQLite Data/ODBC Data/MySQL MongoDB Zip PageCompiler PageCompiler/File2Page CppParser PDF

cppunit:
$(MAKE) -C $(POCO_BASE)/CppUnit

CppUnit-clean:
\$(MAKE) -C \$(POCO_BASE)/CppUnit clean

install: libexecs
mkdir -p $(INSTALLDIR)/include/Poco
mkdir -p $(INSTALLDIR)/lib$(LIB64SUFFIX)
mkdir -p $(INSTALLDIR)/lib
mkdir -p $(INSTALLDIR)/bin
for comp in $(COMPONENTS) ; do \
if [ -d "$(POCO_BASE)/$$comp/include" ] ; then \
cp -Rf $(POCO_BASE)/$$comp/include/* $(INSTALLDIR)/include/ ; \
fi ; \
if [ -d "$(POCO_BUILD)/$$comp/bin" ] ; then \
find $(POCO_BUILD)/$$comp/bin $(SHAREDONLY) '(' -perm -700 -type f -exec cp -f {} $(INSTALLDIR)/bin \; ')' ; \
find $(POCO_BUILD)/$$comp/bin -perm -700 -type f -exec cp -f {} $(INSTALLDIR)/bin \; ; \
fi ; \
done
find $(POCO_BUILD)/lib -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/lib$(LIB64SUFFIX) \;
find $(POCO_BUILD)/lib -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/lib$(LIB64SUFFIX) \;
find $(POCO_BUILD)/lib -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/lib \;
find $(POCO_BUILD)/lib -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/lib \;

libexecs = Foundation-libexec XML-libexec JSON-libexec Util-libexec Net-libexec Crypto-libexec NetSSL_OpenSSL-libexec Data-libexec Data/SQLite-libexec Data/ODBC-libexec Data/MySQL-libexec Zip-libexec PageCompiler-libexec PageCompiler/File2Page-libexec PDF-libexec CppParser-libexec MongoDB-libexec
tests = Foundation-tests XML-tests JSON-tests Util-tests Net-tests Crypto-tests NetSSL_OpenSSL-tests Data-tests Data/SQLite-tests Data/ODBC-tests Data/MySQL-tests Zip-tests PDF-tests CppParser-tests MongoDB-tests
samples = Foundation-samples XML-samples JSON-samples Util-samples Net-samples Crypto-samples NetSSL_OpenSSL-samples Data-samples Zip-samples PageCompiler-samples PDF-samples
libexecs = Foundation-libexec XML-libexec JSON-libexec Util-libexec Net-libexec Crypto-libexec NetSSL_OpenSSL-libexec Data-libexec Data/SQLite-libexec Data/ODBC-libexec Data/MySQL-libexec MongoDB-libexec Zip-libexec PageCompiler-libexec PageCompiler/File2Page-libexec CppParser-libexec PDF-libexec
tests = Foundation-tests XML-tests JSON-tests Util-tests Net-tests Crypto-tests NetSSL_OpenSSL-tests Data-tests Data/SQLite-tests Data/ODBC-tests Data/MySQL-tests MongoDB-tests Zip-tests CppParser-tests PDF-tests
samples = Foundation-samples XML-samples JSON-samples Util-samples Net-samples Crypto-samples NetSSL_OpenSSL-samples Data-samples MongoDB-samples Zip-samples PageCompiler-samples PDF-samples
cleans = Foundation-clean XML-clean JSON-clean Util-clean Net-clean Crypto-clean NetSSL_OpenSSL-clean Data-clean Data/SQLite-clean Data/ODBC-clean Data/MySQL-clean MongoDB-clean Zip-clean PageCompiler-clean PageCompiler/File2Page-clean CppParser-clean PDF-clean

.PHONY: poco all libexecs cppunit tests samples clean distclean install
.PHONY: $(libexecs)
.PHONY: $(tests)
.PHONY: $(samples)
.PHONY: $(cleans)

libexecs: $(filter-out $(foreach f,$(OMIT),$f%),$(libexecs))
tests: $(filter-out $(foreach f,$(OMIT),$f%),$(tests))
samples: $(filter-out $(foreach f,$(OMIT),$f%),$(samples))
cleans: $(filter-out $(foreach f,$(OMIT),$f%),$(cleans))

Foundation-libexec:
$(MAKE) -C $(POCO_BASE)/Foundation

Foundation-tests: Foundation-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Foundation/testsuite

Foundation-samples: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/Foundation/samples

Foundation-clean:
$(MAKE) -C $(POCO_BASE)/Foundation clean
$(MAKE) -C $(POCO_BASE)/Foundation/testsuite clean
$(MAKE) -C $(POCO_BASE)/Foundation/samples clean

XML-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/XML

XML-tests: XML-libexec cppunit
$(MAKE) -C $(POCO_BASE)/XML/testsuite

XML-samples: XML-libexec
$(MAKE) -C $(POCO_BASE)/XML/samples

XML-clean:
$(MAKE) -C $(POCO_BASE)/XML clean
$(MAKE) -C $(POCO_BASE)/XML/testsuite clean
$(MAKE) -C $(POCO_BASE)/XML/samples clean

JSON-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/JSON

JSON-tests: JSON-libexec cppunit
$(MAKE) -C $(POCO_BASE)/JSON/testsuite

JSON-samples: JSON-libexec
$(MAKE) -C $(POCO_BASE)/JSON/samples

Util-libexec: Foundation-libexec XML-libexec
JSON-clean:
$(MAKE) -C $(POCO_BASE)/JSON clean
$(MAKE) -C $(POCO_BASE)/JSON/testsuite clean
$(MAKE) -C $(POCO_BASE)/JSON/samples clean

Util-libexec: Foundation-libexec XML-libexec JSON-libexec
$(MAKE) -C $(POCO_BASE)/Util

Util-tests: Util-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Util/testsuite

Util-samples: Util-libexec
$(MAKE) -C $(POCO_BASE)/Util/samples

Util-clean:
$(MAKE) -C $(POCO_BASE)/Util clean
$(MAKE) -C $(POCO_BASE)/Util/testsuite clean
$(MAKE) -C $(POCO_BASE)/Util/samples clean

Net-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/Net

Net-tests: Net-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Net/testsuite

Net-samples: Net-libexec Foundation-libexec XML-libexec Util-libexec
$(MAKE) -C $(POCO_BASE)/Net/samples

Net-clean:
$(MAKE) -C $(POCO_BASE)/Net clean
$(MAKE) -C $(POCO_BASE)/Net/testsuite clean
$(MAKE) -C $(POCO_BASE)/Net/samples clean

Crypto-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/Crypto

Crypto-tests: Crypto-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Crypto/testsuite

Crypto-samples: Crypto-libexec Foundation-libexec Util-libexec
$(MAKE) -C $(POCO_BASE)/Crypto/samples

Crypto-clean:
$(MAKE) -C $(POCO_BASE)/Crypto clean
$(MAKE) -C $(POCO_BASE)/Crypto/testsuite clean
$(MAKE) -C $(POCO_BASE)/Crypto/samples clean

NetSSL_OpenSSL-libexec: Foundation-libexec Net-libexec Util-libexec Crypto-libexec
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL

NetSSL_OpenSSL-tests: NetSSL_OpenSSL-libexec cppunit
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL/testsuite

NetSSL_OpenSSL-samples: NetSSL_OpenSSL-libexec
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL/samples

NetSSL_OpenSSL-clean:
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL clean
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL/testsuite clean
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL/samples clean

Data-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/Data

Data-tests: Data-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Data/testsuite

Data-samples: Data-libexec Data-libexec Data/SQLite-libexec
$(MAKE) -C $(POCO_BASE)/Data/samples

Data-clean:
$(MAKE) -C $(POCO_BASE)/Data clean
$(MAKE) -C $(POCO_BASE)/Data/testsuite clean
$(MAKE) -C $(POCO_BASE)/Data/samples clean

Data/SQLite-libexec: Foundation-libexec Data-libexec
$(MAKE) -C $(POCO_BASE)/Data/SQLite

Data/SQLite-tests: Data/SQLite-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Data/SQLite/testsuite

Data/SQLite-clean:
$(MAKE) -C $(POCO_BASE)/Data/SQLite clean
$(MAKE) -C $(POCO_BASE)/Data/SQLite/testsuite clean

Data/ODBC-libexec: Foundation-libexec Data-libexec
$(MAKE) -C $(POCO_BASE)/Data/ODBC

Data/ODBC-tests: Data/ODBC-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Data/ODBC/testsuite

Data/ODBC-clean:
$(MAKE) -C $(POCO_BASE)/Data/ODBC clean
$(MAKE) -C $(POCO_BASE)/Data/ODBC/testsuite clean

Data/MySQL-libexec: Foundation-libexec Data-libexec
$(MAKE) -C $(POCO_BASE)/Data/MySQL

Data/MySQL-tests: Data/MySQL-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Data/MySQL/testsuite

Data/MySQL-clean:
$(MAKE) -C $(POCO_BASE)/Data/MySQL clean
$(MAKE) -C $(POCO_BASE)/Data/MySQL/testsuite clean

MongoDB-libexec: Foundation-libexec Net-libexec
$(MAKE) -C $(POCO_BASE)/MongoDB

MongoDB-tests: MongoDB-libexec cppunit
$(MAKE) -C $(POCO_BASE)/MongoDB/testsuite

MongoDB-samples: MongoDB-libexec
$(MAKE) -C $(POCO_BASE)/MongoDB/samples

MongoDB-clean:
$(MAKE) -C $(POCO_BASE)/MongoDB clean
$(MAKE) -C $(POCO_BASE)/MongoDB/testsuite clean
$(MAKE) -C $(POCO_BASE)/MongoDB/samples clean

Zip-libexec: Foundation-libexec Net-libexec Util-libexec XML-libexec
$(MAKE) -C $(POCO_BASE)/Zip

Zip-tests: Zip-libexec cppunit
$(MAKE) -C $(POCO_BASE)/Zip/testsuite

Zip-samples: Zip-libexec
$(MAKE) -C $(POCO_BASE)/Zip/samples

Zip-clean:
$(MAKE) -C $(POCO_BASE)/Zip clean
$(MAKE) -C $(POCO_BASE)/Zip/testsuite clean
$(MAKE) -C $(POCO_BASE)/Zip/samples clean

PageCompiler-libexec: Net-libexec Util-libexec XML-libexec Foundation-libexec
$(MAKE) -C $(POCO_BASE)/PageCompiler

PageCompiler-samples: PageCompiler-libexec
$(MAKE) -C $(POCO_BASE)/PageCompiler/samples

PageCompiler-clean:
$(MAKE) -C $(POCO_BASE)/PageCompiler clean
$(MAKE) -C $(POCO_BASE)/PageCompiler/samples clean

PageCompiler/File2Page-libexec: Net-libexec Util-libexec XML-libexec Foundation-libexec
$(MAKE) -C $(POCO_BASE)/PageCompiler/File2Page

PDF-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/PDF

PDF-tests: PDF-libexec cppunit
$(MAKE) -C $(POCO_BASE)/PDF/testsuite

PDF-samples: PDF-libexec
$(MAKE) -C $(POCO_BASE)/PDF/samples
PageCompiler/File2Page-clean:
$(MAKE) -C $(POCO_BASE)/PageCompiler/File2Page clean

CppParser-libexec: Foundation-libexec
CppParser-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/CppParser

CppParser-tests: CppParser-libexec
CppParser-tests: CppParser-libexec cppunit
$(MAKE) -C $(POCO_BASE)/CppParser/testsuite

MongoDB-libexec: Foundation-libexec Net-libexec
$(MAKE) -C $(POCO_BASE)/MongoDB
CppParser-clean:
$(MAKE) -C $(POCO_BASE)/CppParser clean
$(MAKE) -C $(POCO_BASE)/CppParser/testsuite clean

MongoDB-tests: MongoDB-libexec Net-libexec cppunit
$(MAKE) -C $(POCO_BASE)/MongoDB/testsuite
PDF-libexec: Foundation-libexec
$(MAKE) -C $(POCO_BASE)/PDF

PDF-tests: PDF-libexec cppunit
$(MAKE) -C $(POCO_BASE)/PDF/testsuite

PDF-samples: PDF-libexec
$(MAKE) -C $(POCO_BASE)/PDF/samples

clean:
$(MAKE) -C $(POCO_BASE)/Foundation clean
$(MAKE) -C $(POCO_BASE)/Foundation/testsuite clean
$(MAKE) -C $(POCO_BASE)/Foundation/samples clean
$(MAKE) -C $(POCO_BASE)/XML clean
$(MAKE) -C $(POCO_BASE)/XML/testsuite clean
$(MAKE) -C $(POCO_BASE)/XML/samples clean
$(MAKE) -C $(POCO_BASE)/Util clean
$(MAKE) -C $(POCO_BASE)/Util/testsuite clean
$(MAKE) -C $(POCO_BASE)/Util/samples clean
$(MAKE) -C $(POCO_BASE)/Net clean
$(MAKE) -C $(POCO_BASE)/Net/testsuite clean
$(MAKE) -C $(POCO_BASE)/Net/samples clean
$(MAKE) -C $(POCO_BASE)/Crypto clean
$(MAKE) -C $(POCO_BASE)/Crypto/testsuite clean
$(MAKE) -C $(POCO_BASE)/Crypto/samples clean
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL clean
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL/testsuite clean
$(MAKE) -C $(POCO_BASE)/NetSSL_OpenSSL/samples clean
$(MAKE) -C $(POCO_BASE)/Data clean
$(MAKE) -C $(POCO_BASE)/Data/testsuite clean
$(MAKE) -C $(POCO_BASE)/Data/samples clean
$(MAKE) -C $(POCO_BASE)/Data/SQLite clean
$(MAKE) -C $(POCO_BASE)/Data/SQLite/testsuite clean
$(MAKE) -C $(POCO_BASE)/Data/ODBC clean
$(MAKE) -C $(POCO_BASE)/Data/ODBC/testsuite clean
$(MAKE) -C $(POCO_BASE)/Data/MySQL clean
$(MAKE) -C $(POCO_BASE)/Data/MySQL/testsuite clean
$(MAKE) -C $(POCO_BASE)/Zip clean
$(MAKE) -C $(POCO_BASE)/Zip/testsuite clean
$(MAKE) -C $(POCO_BASE)/Zip/samples clean
$(MAKE) -C $(POCO_BASE)/PageCompiler clean
$(MAKE) -C $(POCO_BASE)/PageCompiler/samples clean
$(MAKE) -C $(POCO_BASE)/PageCompiler/File2Page clean
PDF-clean:
$(MAKE) -C $(POCO_BASE)/PDF clean
$(MAKE) -C $(POCO_BASE)/PDF/testsuite clean
$(MAKE) -C $(POCO_BASE)/PDF/samples clean
$(MAKE) -C $(POCO_BASE)/CppParser clean
$(MAKE) -C $(POCO_BASE)/CppParser/testsuite clean
$(MAKE) -C $(POCO_BASE)/CppUnit clean
$(MAKE) -C $(POCO_BASE)/JSON clean
$(MAKE) -C $(POCO_BASE)/JSON/testsuite clean
$(MAKE) -C $(POCO_BASE)/JSON/samples clean
$(MAKE) -C $(POCO_BASE)/MongoDB clean
$(MAKE) -C $(POCO_BASE)/MongoDB/testsuite clean

clean: cleans CppUnit-clean

distclean:
rm -rf $(POCO_BUILD)/lib
find $(POCO_BUILD) \( -name bin -o -name .dep -o -name obj \) -type d -print0 | xargs -0 rm -rf
find $(POCO_BUILD) -name obj -type d -print0 | xargs -0 rm -rf
find $(POCO_BUILD) -name .dep -type d -print0 | xargs -0 rm -rf
find $(POCO_BUILD) -name bin -type d -print0 | xargs -0 rm -rf
1 change: 1 addition & 0 deletions PDF/dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Foundation
Loading

0 comments on commit f111455

Please sign in to comment.