aboutsummaryrefslogtreecommitdiff
path: root/test/unit/CMakeLists.txt
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2018-11-14 17:40:42 +0100
committerEven Rouault <even.rouault@spatialys.com>2018-11-14 22:48:29 +0100
commitd928db15d53805d9b728b440079756081961c536 (patch)
treee862a961d26bedb34c58e4f28ef0bdeedb5f3225 /test/unit/CMakeLists.txt
parent330e8bf686f9c4524075ca1ff50cbca6c9e091da (diff)
downloadPROJ-d928db15d53805d9b728b440079756081961c536.tar.gz
PROJ-d928db15d53805d9b728b440079756081961c536.zip
Implement RFC 2: Initial integration of "GDAL SRS barn" work
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
Diffstat (limited to 'test/unit/CMakeLists.txt')
-rw-r--r--test/unit/CMakeLists.txt25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt
index d6f6b068..5138dafc 100644
--- a/test/unit/CMakeLists.txt
+++ b/test/unit/CMakeLists.txt
@@ -50,6 +50,14 @@ unset(_save_cxx_flags)
#
# Build PROJ unit tests
#
+
+if("${CMAKE_C_COMPILER_ID}" STREQUAL "MSVC" AND BUILD_LIBPROJ_SHARED)
+add_definitions(-DPROJ_MSVC_DLL_IMPORT=1)
+endif()
+
+include_directories(${CMAKE_SOURCE_DIR}/include)
+include_directories(${SQLITE3_INCLUDE_DIR})
+
add_executable(proj_test_unit
main.cpp
basic_test.cpp)
@@ -78,3 +86,20 @@ target_link_libraries(pj_phi2_test
${PROJ_LIBRARIES})
add_test(NAME pj_phi2_test COMMAND pj_phi2_test)
endif()
+
+add_executable(proj_test_cpp_api
+ main.cpp
+ test_util.cpp
+ test_common.cpp
+ test_crs.cpp
+ test_metadata.cpp
+ test_io.cpp
+ test_operation.cpp
+ test_datum.cpp
+ test_factory.cpp
+ test_c_api.cpp)
+target_link_libraries(proj_test_cpp_api
+ gtest
+ ${PROJ_LIBRARIES}
+ ${SQLITE3_LIBRARY})
+add_test(NAME proj_test_cpp_api COMMAND proj_test_cpp_api)