aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
AgeCommit message (Collapse)Author
2020-04-27Bump version numbers for 6.3.2Kristian Evers
2020-04-27Update ABI numbers for 6.3.2Kristian Evers
2020-02-10Update version and libtool number to 6.3.1Even Rouault
2019-12-28Update ABI numbers for 6.3.0 releaseKristian Evers
2019-11-25Change version numbers to 6.3.0Even Rouault
2019-11-07Build: require SQLite 3.11 (refs #1718)Even Rouault
PROJ can build and run against older version (3.7 for example), but it has been found that performance is horrible. With 3.11 (Ubuntu 16.04), it is fine, so sets this as the minimum version.
2019-09-19Require C99 compiler see #1621Charles Karney
cmake and autoconf now stipulate C99 change c89 to c99 in travis jobs remove HAVE_C99_MATH checks (unrelated) relax Visual Studio compatibility check in cmake/project-config-version.cmake.in (VS 2019 can use a VS 2015 library but not vice versa).
2019-09-18math.cpp removed since its isnan isn't used. Keep proj_math.h (whichCharles Karney
just includes math.h and limits.h) since it's included in a score of places.
2019-09-18Get rid of dead code. The end result of this chain of commits is toCharles Karney
eliminate most of math.cpp. All that is left is the handling of isnan (and I've this because math.cpp notes that gie.c uses pj_isnan). geodesic.c now handles supplying C99 math functions internally and this can go away once C99 support is mandated.
2019-09-17Add atanh, copysign, cbrt, remainder, remquo to math.cpp.Charles Karney
The supported C99 math functions provided by math.cpp are thus hypot log1p asinh atanh copysign cbrt remainder remquo round lround Make compiler checks in CMakeLists.txt and configure.ac consistent with this set. Make geodesic.c use the math.cpp defined (instead of the internally defined) versions of hypot atanh copysign cbrt This is keyed off the presence of the PROJ_LIB macro. I had at one time https://github.com/OSGeo/PROJ/pull/1425 suggested supplying an additional macro PROJ_COMPILATION when compiling geodesic.c. However, PROJ_LIB seems to fill the bill OK. The *next* version of geodesic.c (due out in a few weeks) will also use remainder remquo All of this is only of concern for C compilers without C99 support. So this may become an historical footnote at some point.
2019-09-01Update version numbers in preparation for 7.0.0Kristian Evers
2019-08-26Update API numbers in preparation for 6.2.0 releaseKristian Evers
2019-08-26Update ABI numbers in preparation for 6.2.0 releaseKristian Evers
2019-05-23Remove ProjSystemInfo.cmake module as unusedMateusz Łoskot
None of variables calculated by the module are currently used. Besides, this is legacy module which should not be necessary for anything. Related to #1263
2019-05-06Update ABI version number for 6.1.0Kristian Evers
2019-05-01Merge pull request #1425 from mwtoews/defineKristian Evers
Remove `PROJ_COMPILATION=1` definition
2019-04-16CMake: better support for Intel compilerMike Taves
2019-04-16Remove `PROJ_COMPILATION=1` definitionMike Taves
2019-04-05CMake: cache C/C++ warn flags to compile PROJ targetsMike Taves
Remove (most) needs to fiddle with CMAKE_C_FLAGS / CMAKE_CXX_FLAGS
2019-04-03CMake: Set -fvisibility=hidden using global variableMike Taves
2019-03-19Normalize CMake with cmakelint, 2-space indentMike Taves
2019-03-01Bump version numbers in preparation for 6.1.0Kristian Evers
2019-02-16Merge pull request #1267 from kbevers/release-prepKristian Evers
6.0.0 Release prep
2019-02-16Improve CMake sqlite3 dependency docsMike Taves
2019-02-14Bump ABI version numberKristian Evers
2019-02-13Set CMake variable CXX_STANDARD with C++11 as defaultMateusz Łoskot
Set required C++ standard version with CMake variable instead of hand-rolled compiler-specific flags. Allow user to override the default with -DCMAKE_CXX_STANDARD={98,11,14,17,20} Closes #1118
2018-11-15autoconf / cmake: build test/ only if neededEven Rouault
2018-11-14Implement RFC 2: Initial integration of "GDAL SRS barn" workEven Rouault
This work mostly consists of: - a C++ implementation of the ISO-19111:2018 / OGC Topic 2 "Referencing by coordinates" classes to represent Datums, Coordinate systems, CRSs (Coordinate Reference Systems) and Coordinate Operations. - methods to convert between this C++ modeling and WKT1, WKT2 and PROJ string representations of those objects - management and query of a SQLite3 database of CRS and Coordinate Operation definition - a C API binding part of those capabilities This is all-in-one squashed commit of the work of https://github.com/OSGeo/proj.4/pull/1040
2018-10-27Merge pull request #1164 from mathstuf/cmake-pthread-mutex-recursive-detectionKristian Evers
cmake: detect PTHREAD_MUTEX_RECURSIVE by compiling
2018-10-26cmake: detect PTHREAD_MUTEX_RECURSIVE by compilingBen Boeckel
The `check_symbol_exists` cannot detect `#define symbol 1` because it takes the address of the symbol to detect it, but the address of a literal is not allowed. Some platforms define `PTHREAD_MUTEX_RECURSIVE` by such a literal. Fixes #1158
2018-10-26ProjVersion: use cmake_parse_argumentsBen Boeckel
CMake provides this function, but only in CMake 2.8.3 and up. This minimum version bump is OK because it is from 2010, but the code requires C++11 features to exist. Any platform with a suitable compiler, but too-old of a CMake can easily compile the required CMake version as well.
2018-09-18Rename nad/ directory as data/Even Rouault
2018-09-15Bump version numbers after 5.2.0 releaseKristian Evers
2018-09-11Specify c++11 for Intel compilersMike Toews
Also, workaround issue: CMake Error at test/unit/CMakeLists.txt:7 (string): string sub-command REGEX, mode REPLACE needs at least 6 arguments total to command.
2018-09-10Update ABI version for 5.2 releaseKristian Evers
2018-06-20Raise version number to 5.2.0 in CMake configKristian Evers
Add instruction to HOWTO-RELEASE as well so it is remembered in the future.
2018-06-08CMake: bump PROJ version to 5.1.0Mateusz Loskot
Align version with the one defined in configure.ac.
2018-06-07Add googletest 1.8.0 framework in test/googletest, and use it with autoconf ↵Even Rouault
builds only (CMake integration to be done)
2018-06-05Remove include(CTest) as unnecessaryMateusz Loskot
The library does not require CDash server, so there is no point in generating all testing configurations (ie. Experimental, Continuous, Nightly) CTest also adds implicit BUILD_TESTING option (default ON) which is not used by the library - there is custom PROJ_TESTS.
2018-05-30Enable c++ compilation with autotools and cmake, hardened compilation flags ↵Even Rouault
and add catch2 framework Hardened compilation flags come from GDAL' configure.ac and are 'combat proven' Dummy test added just to demonstrate catch2 based tests work.
2018-05-24Fix libtool versioning, using the proper number for 'age'Kristian Evers
2018-05-24Update version numbers for 5.1.0 releaseKristian Evers
2018-04-23Merge pull request #937 from kbevers/c99-math-moduleKristian Evers
Collect custom C99 math functions in proj_math.h
2018-04-22Collaps multiline strings to not trip up CMake2Kristian Evers
2018-04-16Collect custom C99 math functions in proj_math.hKristian Evers
We are relying more and more on C99 math functions. On C89 systems where those functions are not available our own custom versions of those functions are used instead. So far these has been spread across the code base. This commit gathers them in the same file and introduces the proj_math.h header. The build system checks for C99 math functions. If not found the proj_math.h header make sure that C99 functions are defined as their pj_ equivalent. Ideally proj_math.h is included instead of math.h. This removes the need for any checks against HAVE_C99_MATH in the code making it easier to read. For this commit the functions hypot, log1p and asinh has been taken care of.
2018-03-26Restore PROJECT-NAME as PROJ4Mike Toews
2018-03-26Rename CMake infrastructure to remove 4mwtoews
2018-03-24Don't set -std=c89 in CMakeLists.txtAaron Puchert
This allows us to take advantage of newer features when they are available. However, builds on Travis still use -std=c89 to ensure C89 compatibility. Locally this can be achieved with either * cmake -DCMAKE_C_STANDARD=90 .. * cmake -DCMAKE_C_FLAGS='-std=c89' .. * C_FLAGS='-std=c89' cmake .. We also reorder the warning flags: they are all part of the standard build now, but -Werror is only applied on Travis. Fixes #892.
2018-03-23If HAVE_C99_MATH, define pj_is_nan as isnan.Charles Karney
Extend HAVE_C99_MATH checks in CMakeLists.txt and configure.ac to include test for C99 function isnan.
2018-03-20For the Intel compiler use "-fp-model precise" on all platforms.Charles Karney