Commit Graph

139 Commits

Author SHA1 Message Date
Günter Obiltschnig
185493a82d fix CMake build of OpenSSL 2020-01-12 11:18:49 +01:00
Günter Obiltschnig
645a9f8a7a update CMake required version to 3.5 2020-01-10 17:08:59 +01:00
Günter Obiltschnig
16808f1afe CMake: require C++14; enable C++11 tests 2020-01-10 13:44:51 +01:00
Günter Obiltschnig
a7cbff393e
Merge pull request #2815 from brice-gros/brice.gros/1.10.0+allow-for-cmake-fetchcontent
Make Poco git repository fetchable using CMake's FetchContent
2019-11-25 21:24:16 +01:00
Brice Gros
70caa2a942
Update CMakeLists.txt 2019-10-21 10:27:47 +02:00
Brice Gros
990f7825b5 Fix path to DLLVersion.rc and enable to skip Foundation; Fix Foundation samples referencing useless libs 2019-10-18 15:35:02 +02:00
Brice Gros
22c3ae8d30 allow to select long tests to be run from cmdline 2019-10-18 15:09:38 +02:00
Joerg-Christian Boehme
b9fa82b08b
CMake merge from devel to 1.10 to use embedded OpenSSL for Windows (#2767)
* Add  embedded openssl for windows
* Add windows fix for OpenSSL #2708
* Fix CppUnit lib prefix with Poco
2019-09-02 11:48:01 +02:00
Günter Obiltschnig
4ce91351f4 automatically enable PocoJWT if OpenSSL is available 2019-07-31 19:33:20 +02:00
Günter Obiltschnig
6c828018df added JWT library 2019-07-30 11:19:49 +02:00
Joerg-Christian Boehme
e1435a6620
Fix cross-compilation against Poco pre-built (#2599) (#2679)
* Use ZLIB and PCRE imported target to improve portability
* Set EXPAT and SQLite3 library for XML and SQL if POCO_UNBUNDLED is true in cmake build
2019-04-22 23:47:11 +02:00
Joerg-Christian Boehme
eec8dedbb8
Merge cmake changes from develop (#2504)
* Increase PostgreSQL version number

* Take changes from develop for Define Platform Specific cmake

* Take changes from develop for find MySQL modul

* Take changes from develop for find ODBC modul

* Cleanup standard language compile features

* Fix cmake compile features

* Improve to find ODBC on windows

* Enable 64-bit build on AppVeyor

* Switch MySQL off on AppVeyor because of error LNK2038: mismatch detected for _MSC_VER: value 1800 doesnt match value 1900

* Move LCC define to MySQL
2018-10-18 07:07:46 +02:00
Joerg-Christian Boehme
85b9fe7a21
Fix cmake build on FreeBSD (#2476)
* Fix cmake build on FreeBSD
2018-10-10 13:48:08 +02:00
Joerg-Christian Boehme
e624b3315c
CMake improve find third-party libraries (#2478)
* Improve find thirdparty cmake module. Cleanup cmake build system

* Add additional settings for thirdparty paths and fix windows build

* Improve cmake getting started doc

* Fix postgresql build

* Add additional path for odbc windows kits
2018-10-10 13:43:34 +02:00
Joerg-Christian Boehme
a7f9ebe116
Fix static build in cmake (#2455)
* Fix cmake build issue when poco build as static lib with enabled tests

* Cleanup compile flags output in cmake

* Some minor improvements in cmake
2018-09-22 12:02:05 +02:00
Joerg-Christian Boehme
612f092235 Cleanup cmake build system to use transitive dependency management from cmake (#2321)
* Some cleanup in the root CMakeLists.txt

* Cleanup cmake targets

* Add find openssl modul for older cmake version

* Set proper scope

* Change crypto default to off

* Fix openssl default to on

* Remove global setting of C99 standard

* Set from C11 to C99

* Fix for NetSSL win build

* Set C99 compile features

* Fix Windows build

* Fix windows build

* Cleanup poco unbundle definition

* Fix PDF build

* Remove unused set affinity

* Add _CRT_SECURE_NO_WARNINGS as target compile definitions

* Add _AFXDLL as target compile definitions

* Remove commented out line

* Refactor add_definitions to target_compile_definitons in Util

* Refactor add_definitions to target_compile_definitons in XML

* Remove THREADSAFE in data sql cmake build

* Refactor add_definitions to target_compile_definition in cmake mysql

* Refactor add_definitions to target_compile_definition in cmake odbc

* Refactor add_definitions to target_compile_definition in cmake sqlite

* Refactor add_definitions to target_compile_definitions in platform specific cmake

* Add _DEBUG as compile definition

* Add build dependencies between Foundation-testrunner and TestApp, TestLibrary in cmake build

* Use cmake property to build shared libs

* Cleanup POCO_NO_AUTOMATIC_LIBS. Set only for Windows in cmake build system

* cleanup LIB_MODE_DEFINITIONS in cmake buld system

* Add POCO_STATIC for CppUnit

* Cleanup target link libraries and add option dependencies.

* Add dependencies management in cmake

* Update cmake documentation

* Squashed commit of the following:

commit 38c233f93fc8e9ad6e24d686c905eb18c86e19a7

    Fix "invalid new-expression of abstract class type ApacheServerRequest" (#2231)

    - abstract method "bool secure() const" defined in HTTPServerRequest was implemented in ApacheServerRequest, one of its derived classes
     - a ap_log_error had one of its parameters changed for fixing a warning "passing NULL to non-pointer argument"
     - minor indentation problems corrected

commit 4cbdfbe828943871618172f9e042176f115d61d8

    Fix build dependencies

* Improve database cmake build dependencies

* Update doc

* Update doc

* Update cmake build commands

* Set public on target link libraries in cmake build system

* Fix PostgreSQL build

* Fix PostgreSQL build in cmake

* Fix PostgreSQL from SQL to Data

* Squashed commit of the following:

commit 1ba7d5dcbfb8d07860dd4efda33b31bedf6184c4

    Add missing cmake file

* Set path to PostgresSQL in AppVoyer

* Try to fix AppVeyor build

* show dir in appvoyer

* Disable PostgreSQL build on Appvoyer

* Refactor add_definitions to target_compile_definitions
2018-06-03 11:17:50 -05:00
Alex Fabijanic
dc021ae25c Postgres Linux and cmake build 2018-05-07 11:50:39 -05:00
Günter Obiltschnig
1f77aec1b3 fix message grammer 2018-03-07 11:22:34 +01:00
Joerg-Christian Boehme
9feabc7723 Add android build on travis (#1981)
* Add build for android in travis CI.

* Fix review findings. Change from __ANDORID__ to POCO_ANDROID

* Add android test

* Fix compile issue after rebase

* Ignore test big ping when its failing
2018-02-26 18:54:40 -06:00
Raphael Freudiger
1dc38d8500 respect lib suffix when installing cmake files
Some cmake files contain pathes to the lib directory with suffix.
So they should respect the suffix as well.
2018-02-19 10:26:45 +01:00
Günter Obiltschnig
48f0de54ea cmake support for EncodingsCompiler 2018-02-14 12:11:37 +01:00
Günter Obiltschnig
e590fa36ad updated Makefile and CMakeLists.txt for Encodings lib 2018-02-14 10:25:27 +01:00
Günter Obiltschnig
ccea123acf fix Exists check 2017-11-10 21:35:25 +01:00
Guenter Obiltschnig
e89e7d4520 Make cmake work with minimal package 2017-11-10 19:21:55 +01:00
Guenter Obiltschnig
7829aca793 add Redis to CMake 2017-11-10 12:25:53 +01:00
Joerg-Christian Boehme
c6e1a0137b Verify in cmake if it possible to compile with C++yy standard 2017-11-08 09:25:06 +01:00
Alex Fabijanic
87ec631b4a try to fix clang build (use libc++) 2017-10-24 21:03:08 -05:00
Alex Fabijanic
dea76c8e2e add CXX1x compiler capability detection to cmake 2017-10-24 13:52:12 -05:00
Alex Fabijanic
1054c46f6c compile pdjson as C++; disarm some windows warnings 2017-09-27 11:51:43 -05:00
Pascal Bach
1bc210dcf9 CMake: use C11 as standard for all targets (#1909)
This makes the JSON module compile with GCC < 5 where the default was still C90
2017-09-27 10:00:49 -05:00
daB0bby
3a2b9014b9 Keeps code-style consistency 2017-01-02 11:59:56 +01:00
Josh Blum
df8b868da6 minor change to support cmake2.8 builds
Reduce cmake version requirement to 2.8.12 (ubuntu trusty),
and conditionalize export() in PocoMacros to support 2.8 syntax.
2015-12-14 17:32:18 -08:00
Guenter Obiltschnig
e25a17030d integrated CMake improvements from develop (GH #946) 2015-09-26 11:11:23 +02:00
Sascha Zelzer
9c0184337e Make regex compatible with VERSIONS like "1.6.0-all (2014-12-22)".
Without the fix, the patch number contained spaces which led to
errors on Linux with CMake because the generated symlinks contained
spaces.
2015-02-04 04:46:25 +01:00
Aleksandar Fabijanic
eb28010c16 remove deprecated mno-cygwin option #651, part II 2015-01-01 14:12:17 -06:00
Aleksandar Fabijanic
5424aade0e remove deprecated mno-cygwin option #651 2015-01-01 14:09:45 -06:00
xantares
345481a475 do not guess mingw include/link dirs
let cmake do the job as we dont want mingw headers to conflict with system headers and libs, they are provided in a separate tree
2014-12-22 19:12:41 +01:00
Guenter Obiltschnig
d247e1cf05 updated CHANGELOG; CMake fixes for OS X; doc updates; release script improvements 2014-12-22 00:06:53 +01:00
Pascal Bach
6f809f7acb CMake: Add support for PageCompiler and File2Page
Resolves: #649
2014-12-21 21:54:02 +01:00
Pascal Bach
739cd30487 CMake: Build PocoDoc using CMake 2014-12-21 16:23:35 +01:00
Pascal Bach
d9c0d2b495 CMake: Add support for CppParser 2014-12-21 16:23:34 +01:00
Pascal Bach
b69fafb84c CMake: Create PocoConfig.cmake to make importable from other CMake projects
The generated PocoConfig.cmake can be used by other CMake projects using find_package.
2014-10-14 17:58:46 +02:00
Pascal Bach
65fcaf65a0 cmake: Rework top level CMake file
- Allow enable/disable components
2014-08-22 17:11:03 +02:00
Pascal Bach
6f262da25c cmake: Add SQLite, MySQL and ODBC include directories to global include path 2014-07-13 17:54:05 +02:00
rafi
81a4487e20 cmake: Set an output directory for Windows DLLs 2014-07-11 20:44:49 +02:00
Pascal Bach
d334ef4fb0 cmake: read shared library version from libversion 2014-07-10 17:15:09 +02:00
Pascal Bach
82d329914b cmake: cleanup top CMake file
- use lower case commands
- use find_package(*) instead of include(Find*)
- rearange find_package commands closer to where they are used

Reviewed-by: Roger Meier <r.meier@siemens.com>
2014-07-10 09:15:06 +02:00
Pascal Bach
74397ccbe3 cmake: read the version information from VERSION
The version inforamtion for CMake is extracted from the VERSION file not hardcoded in CMakeLists.txt

Reviewed-by: Roger Meier <r.meier@siemens.com>
2014-07-10 09:15:06 +02:00
Csaba Keszegh
638b10856b fix: configure_file error if CMAKE_MODULE_PATH had multiple directories 2013-12-05 10:18:15 +01:00
Csaba Keszegh
8b3561a525 cmake: android support
Foundation/src/Error.cpp: ndk-r9 define _GNU_SOURCE in features.h but only the XSI-compliant strerror_r in string.h
2013-12-05 10:18:15 +01:00
Sascha Zelzer
aa0218fa9a Fix #279 by not checking CMAKE_BUILD_TYPE when setting CMAKE_DEBUG_POSTFIX.
CMAKE_DEBUG_POSTFIX is already build-type specific and only applied
in case of "Debug" builds. The build-type is correctly inferred from
either CMAKE_BUILD_TYPE for MAkefile based generators or the selected
build type in the Visual Studio IDE. This fix allows to switch the
build type in Visual Studio and have Poco compile/link correctly.
2013-09-01 11:20:45 +02:00
Marian Krivos
a33cc590a2 version bump 2013-06-12 18:13:44 +02:00
Marian Krivos
9349786415 cmake and gcc warning fixes 2013-02-19 06:16:12 +01:00
fbraem
f41e6f1b5b Add MongoDB 2013-02-16 20:53:48 +01:00
Mathäus Mendel
dc9aafa7a1 Moved contributed CMake modules to "cmake" folder
By convention CMake project files are placed on a folder called "cmake" and then called from the build system by appending the CMAKE_MODULE_PATH variable
2012-12-16 00:40:40 -02:00
Mathäus Mendel
e3649153b8 Fixed build with CMake
Used CMAKE_DEBUG_POSTFIX instead LIB_EXT for library name decoration on debug builds (less intrusive and more flexible)
2012-12-08 15:54:38 -02:00
Aleksandar Fabijanic
6d2881ef34 Merge pull request #3 from RangelReale/mobilefixes
Android and iOS fixes
2012-12-02 20:28:22 -08:00
Rangel Reale
86b79a6dff * add POCO_STATIC definition in CMake
* Foundation must compile .mc file in CMake build
* Net must list all files in CMake build file
2012-11-11 14:17:28 -02:00
Rangel Reale
141a2c152c * use xcode-select to find correct paths for iOS build
* add iOS definitions for CMake
* ServerApplication on Android must use events instead of signals to wait for server termination.
2012-11-11 11:59:36 -02:00
Marian Krivos
bb1e8c1852 cmake: fix so version to 15 2012-09-23 17:19:50 +00:00
Marian Krivos
05ebb66609 added cmake support 2012-06-26 12:40:26 +00:00
Aleksandar Fabijanic
f9b60296f7 removing old trunk files 2012-04-23 00:43:14 +00:00
Marian Krivos
4e26485542 trunk" cmake fix for openssl include dir 2012-02-10 15:30:38 +00:00
Marian Krivos
ac73265fb3 trunk: cmake: added simple build script for building Release & Debug version at once 2012-02-07 13:56:54 +00:00
Marian Krivos
1d8e75687e cmake build: POCO_UNBUNDLED support for sqlite 2012-02-06 18:35:26 +00:00
Marian Krivos
8b70c37260 trunk: sync from 1.4.3
make & cmake fixes
2012-02-04 17:03:09 +00:00
Marian Krivos
0afd04898b cmake build system cleanup 2012-01-08 21:29:25 +00:00
Marian Krivos
218b06621d trunk: split cmake debug/optimize build 2 2012-01-08 19:10:15 +00:00
Marian Krivos
7cb622a445 trunk: split cmake debug/optimize build 2012-01-07 13:45:03 +00:00
Marian Krivos
650d804f1d cmake: change RELEASE flags from -Os to -O3 2011-11-04 12:43:14 +00:00
Marian Krivos
ea49f63847 Another sync from 1.4.2 2011-09-15 08:52:32 +00:00
Marian Krivos
eb266f8a57 Set cmake produced shared libraries numbering to standard scheme (trunk = 12)
Sync latest Foundation changes from 1.4.2
2011-09-15 08:31:51 +00:00
Marian Krivos
d5f027d6c9 cmake win32 fix 2011-09-14 13:17:15 +00:00
Marian Krivos
f65f178b54 poco::data vs100 project updates 2011-09-14 13:09:29 +00:00
Marian Krivos
c4ad405d9d trunk: cmake min version bump to 2.8.0 2011-08-05 16:23:43 +00:00
Marian Krivos
0ac146cb9e cmake improvements: test and samples are from now disabled by default, you can enable this option with cmdline option to cmake: '-DENABLE_TESTS=1'
minimum required CMAKE version is 2.6 from now
2011-01-22 11:46:03 +00:00
Marian Krivos
96b0296969 cmake + MinGW32: fix for ignored ODBC 2011-01-16 13:36:24 +00:00
Marian Krivos
eaa622aca3 required cmake version will be 2.4.8
add crypto include to global cmakefile
2009-06-22 12:08:17 +00:00
Marian Krivos
47cf15d198 cmake scripts: fix SunPro C++ on linux 2009-03-16 22:52:54 +00:00
Marian Krivos
c4f6084c25 added last Poco module to cmake infrastructure - PocoODBC (working at least on linux32 + unixodbc + gcc 4.3.2) 2009-03-08 17:03:18 +00:00
Marian Krivos
f345a6c6e2 CMake: Fix standard system libraries linking on Solaris 10 + gcc 2009-02-22 20:46:12 +00:00
Marian Krivos
538c9335c9 CMake: Fix standard system libraries linking on linux 2009-02-22 20:14:40 +00:00
Marian Krivos
2c304d744d adaptation cmake scripts to current MinGW platform (exclude SSL/Crypto/MySQL/Apache/ODBC) 2009-02-22 19:58:27 +00:00
Marian Krivos
680ce5e93e cpack support - generate binary / source packages and instalator 2009-02-22 14:19:55 +00:00
Marian Krivos
60e1433f51 rest of cmake scripts for samples + apache/apr detection 2009-02-21 09:58:44 +00:00
Marian Krivos
d141423a56 cmake 2.4.8 downgrade 2009-02-19 18:11:55 +00:00
Marian Krivos
16cdb4b127 cmake runtime install support (headers+libs) 2009-02-18 20:47:32 +00:00
Marian Krivos
32642ba9c1 More cmake scripts: ApacheConnector, Crypto, NetSSL, WebWidgets, Zip 2009-02-17 20:02:37 +00:00
Marian Krivos
5b320c2894 Very basic but functional (at least on linux with gcc) support
for CMake build system
. 
It is strongly recomended to use out-of-source build to preserve
original Poco makefiles.

http://www.cmake.org/Wiki/CMake_FAQ#Out-of-source_build_trees

I have tested unix makefile generating and Eclipse CDT4 generating.

Supported are static/dynamic and debug/release targets. 
On now only core libs are included: CppUnit, Foundation,
Data, Data/SQLite, Util, Net and XML. But autodetection
of OpenSSL, MySQL and ODBC is working OK already.

CPack and CTest nor library install still doesn't work, only building.

This is only the start.
2009-02-15 15:49:19 +00:00