aboutsummaryrefslogtreecommitdiff
path: root/cmake
AgeCommit message (Collapse)Author
2022-03-09nkg.gie: update results due to https://github.com/OSGeo/PROJ-data/pull/79Even Rouault
2022-03-07CMake: handle potentially undefined value in list functionMike Taves
2022-02-05Revise pc file constructionKai Pastor
Use sqlite3, libtiff-4 and libcurl modules instead of plain libs Allow opt out by setting 'USE_PKGCONFIG_MODULES' off. Link native system libs on Windows, and implicit C++ libraries on other systems (e.g. libstc++/libc++).
2022-01-31Drop autotools; move remaining useful m4 macros (#3027)Mike Taves
2022-01-24CI: transition tests from autotools to cmake (#3023)Mike Taves
2021-12-05Refactor proj.pc to use EXTRA_LIBS; add -lpthread to Libs.privateMike Taves
2021-11-25Move option to module and add more commentsMike Taves
2021-11-25Also look for clcache for MSVC; only use wrappers for XcodeMike Taves
2021-11-20CMake: add option USE_CCACHE=OFF to use ccache to compile C/C++ objsMike Taves
2021-10-16cmake/ProjTest.cmake: fix error in creation of tmp_user_writable_dirEven Rouault
2021-08-28proj.pc.in: add -lm -ldl in Libs.private (#2825)Mike Taves
2021-08-05cmake: remove unused configure checks (#2789)Ben Boeckel
These results are just not used anywhere, so there's no need to check them (as the compiler will do it anyways).
2021-05-09CMake: "make dist" workalike via CPack (#2690)Mike Taves
2021-04-30CMake build: run nkg.gie tests (dependent on CURL_ENABLED and ↵Even Rouault
RUN_NETWORK_DEPENDENT_TESTS settings)
2021-04-10CMake: for test/cli, generate the output files in /test/cli like autoconf buildsEven Rouault
2021-02-26CMake: add support for pkg-config (#2547)Mike Taves
2020-11-06automake and cmake: install COPYING, NEWS and AUTHORS in /share/doc/projEven Rouault
2020-03-28CMake: prefer to use use PROJ_SOURCE_DIR and PROJ_BINARY_DIR (#2100)Mike Taves
* Use instead of CMAKE_SOURCE_DIR and CMAKE_BINARY_DIR * Also PROJECT_SOURCE_DIR and PROJECT_BINARY_DIR, which are similar * Set properties with a list variable rather than a long line * Correction to 'proj_test_set_properties' function, rename ENVIRONMENT: - PROJ_IGNORE_USER_WRITABLE_DIRECTORY (ignored) - PROJ_SKIP_READ_USER_WRITABLE_DIRECTORY (used by filemanager.cpp)
2020-03-18CMake: fix bug with find_package(PROJ) with macOSMike Taves
2020-02-27Make tests independent of proj-datumgridEven Rouault
Fixes #1984 - Copy BETA2007.gsb, MD, alaska, conus, ntf_r93.gsb, ntv1_can.dat grids from proj-datumgrid to data/tests. - Replace a couple uses of nzgd2kgrid0005.gsb in tests by ntf_r93.gsb - Add downsampled/subsetted versions of egm96_15.gtx as tests/egm96_15_downsampled.gtx and ntv2_0.gsb as tests/ntv2_0_downsampled.gsb This results in a few changes in expected results - Simpify travis/install.sh due to less configurations to test This results in a hopefully acceptable increase of the proj-X.Y.Z.tar.gz from 2.9 to 5.3 MB
2020-02-13Don't print version when using PROJ4 from cmakeCalum Robinson
This will declutter cmake output for PROJ4 users
2020-02-12Merge pull request #1923 from mwtoews/cmake-outputKristian Evers
CMake: simplify message functions
2020-02-11Use relative directory to locate PROJ resource files.Even Rouault
Fixes #1490 This is an extension of the Window-specific logic added recently to Unix builds. This reuses parts of proposed past commit https://github.com/OSGeo/PROJ/pull/1517/commits/82a07e51c6e24ddb936d131ababe29f1ac36ef14 (credits to @abellgithub)
2020-02-11CMake: simplify message functionsMike Taves
* Remove colormsg(); just use message() * Rename boost_report_value() with print_variable()
2020-02-04Make PROJ the CMake project nameCharles Karney
Allow both find_package(PROJ) and find_package(PROJ4). More details are in cmake/CMakeLists.txt.
2020-02-04Merge pull request #1905 from russkel/patch-1Kristian Evers
tests: force use of bash for proj_add_test_script_sh
2020-02-04Increase CMake minimum version from 3.5 to 3.9Mike Taves
* Also remove a few if()-blocks to support older CMake versions
2020-01-25Remove legacy CMake target name "proj" addressing #802Charles Karney
2020-01-22Merge RFC4 (#1865)Even Rouault
This commit is the result of the squashing of rfc4_dev branch in a single commit. It implements mostly RFC 4 related work. * Grid handling: - remove obsolete and presumably unfinished implementation of grid catalog functionality - all grid functionality is in grids.cpp/.hpp - vertical and horizontal grid shift: rework to no longer load whole grid into memory - remove hgrids and vgrids member from PJ structure, and store them in hgridshift/vgridshift/deformation structures - build systems: add optional libtiff dependency. Must be explicitly disabled if not desired - add support for horizontal and vertical grids in GeoTIFF, if libtiff is available - add GenericShiftGridSet and GenericShiftGrid classes, relying on TIFF grids, that can be used for generic purpose grid-based adjustment - add a +proj=xyzgridshift method to perform geocentric translation by grid. Used for French NTF to RGF93 transformation using gr3df97a.tif grid - deformation: add support for +grids= for GeoTIFF grids - horizontal grid shift: fix failures on points slightly outside a subgrid (fixes #209) * File management: - add a filemanager.cpp/.hpp to deal with file related work - test for legacy proj_api.h fileapi - proj.h: add proj_context_set_fileapi() and proj_context_set_sqlite3_vfs_name() (fixes #866) - add capability to read resource files from the user writable directory * Network access: - build systems: add optional curl dependency - add a curl-based default implementation for network related functionality - proj.h: add C API to control network functionality, and optionaly provide network callbacks - add data/proj.ini with default settings - add a SQLite3 local cache of downloaded chunks - add proj_is_download_needed() and proj_download_file() * Use Win32 Unicode APIs and expect all strings to be UTF-8 (fixes #1765) For backward compatibility, if PROJ_LIB content is found to be not UTF-8 or pointing to a non existing directory, then an attempt at interpretating it in the ANSI page encoding is done. proj_context_set_search_paths() now assumes strings to be in UTF-8, and functions returning paths will also return values in UTF-8.
2020-01-07Remove deprecated JNI bindings (#1825)Kristian Evers
Remove deprecated JNI bindings
2020-01-07Remove deprecated JNI bindingsKristian Evers
Closes #1757
2020-01-05Make sure tests pass if extra grids are presentEven Rouault
Should fix the issue reported in https://lists.osgeo.org/pipermail/proj/2020-January/009188.html Some extra north-american grids present in data/ can affect the results of some tests, so create a data/for_tests/ subdirectory in which we copy only select grids.
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-10-23Fix errors running gie-based tests in Debug mode on WindowsAsa Packer
2019-09-21Improve Visual Studio compatibility check in CMake.Charles Karney
Make the setting of major toolset version variables parallel that for cross-compilation. Add comments so it's easier for the next person looking at this code to figure what's going on. Note: no need to unset variables at the end of the version check file (the file is read in a nested scope).
2019-09-20Merge pull request #1625 from hobu/cmake-proj_lib-testsKristian Evers
set PROJ_LIB on test targets for CMake
2019-09-19set PROJ_LIB on test targets for CMakeHoward Butler
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-03stick with proj.lib on windowsJuergen E. Fischer
2019-06-05Update GitHub references: proj.4 -> PROJMike Taves
2019-06-01Update website: proj4.org -> proj.orgMike Taves
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-04-16CMake: better support for Intel compilerMike Taves
2019-03-21Build: automatically enable system error messagesChris Mayo
Define HAVE_STRERROR during configuration. Before: $ cs2cs +proj=latlong +to +proj=latlong dummy <cs2cs>: Sys errno: 2: <system mess. texts unavail.> dummy After: $ cs2cs +proj=latlong +to +proj=latlong dummy <cs2cs>: Sys errno: 2: No such file or directory dummy
2019-03-19Normalize CMake with cmakelint, 2-space indentMike Taves
2019-03-11Fix cross-compilation detectionSean Warren
2019-02-22CMake warning about second proj_config.hMike Taves
2019-02-18Windows CMAKE Paths to match osx/linux (#1274)Alan D. Snow
Addressing issue #1177.
2019-02-13Address issue #801: set CMake ${PROJ4_LIBRARIES} to PROJ4::projCharles Karney
2019-02-04Remove all traces of nad2bin and nad2nadKristian Evers
The source material for the default grids used by PROJ has been moved to the proj-datumgrid repository. For that reason it is no longer necessary to include the nad2bin program in the PROJ repository and source distribution. From now on the nad2bin application will be kept in the proj-datumgrid repo. Previously the null grid was generated by running nad2bin on the null.lla file. Since nad2bin is no longer available null.lla has been replaced by its binary counterpart null. This file will be distributed and installed alongside PROJ. Build scripts and documenation has been adjusted so that nad2bin is not mentioned anywhere. Additionally all references to nad2nad has been removed as well. nad2nad has not been part of the PROJ distribution for quite some time so this has been long overdue.