Add support for proj.h, proj_api.h is removed in PROJ 8.
authorBas Couwenberg <sebastic@debian.org>
Sun, 24 Oct 2021 08:00:58 +0000 (09:00 +0100)
committerGraham Inggs <ginggs@debian.org>
Sun, 24 Oct 2021 08:00:58 +0000 (09:00 +0100)
Bug-Debian: https://bugs.debian.org/983254
Forwarded: https://github.com/OpenOrienteering/mapper/pull/1994

Gbp-Pq: Name proj8.patch

cmake/FindPROJ4.cmake

index 093deaa79aed3d74fd457914ed1c71b0255cccb1..10dfc7afa47b6574d79aa2fc6868c27e785797d6 100644 (file)
@@ -91,6 +91,21 @@ if(PROJ4_INCLUDE_DIR AND EXISTS "${PROJ4_INCLUDE_DIR}/proj_api.h")
     string(REGEX REPLACE "^.*PJ_VERSION [0-9][0-9]([0-9]).*$" "\\1" PROJ4_VERSION_PATCH "${PROJ4_H}")
     set(PROJ4_VERSION "${PROJ4_VERSION_MAJOR}.${PROJ4_VERSION_MINOR}.${PROJ4_VERSION_PATCH}")
     set(PROJ4_VERSION_COUNT 3)
+else()
+    find_path(PROJ4_INCLUDE_DIR NAMES proj.h ${_PROJ4_SEARCH} PATH_SUFFIXES include)
+    mark_as_advanced(PROJ4_INCLUDE_DIR)
+
+    if(PROJ4_INCLUDE_DIR AND EXISTS "${PROJ4_INCLUDE_DIR}/proj.h")
+        file(STRINGS "${PROJ4_INCLUDE_DIR}/proj.h" PROJ_VERSION_MAJOR REGEX "^#define PROJ_VERSION_MAJOR [0-9]+$")
+        file(STRINGS "${PROJ4_INCLUDE_DIR}/proj.h" PROJ_VERSION_MINOR REGEX "^#define PROJ_VERSION_MINOR [0-9]+$")
+        file(STRINGS "${PROJ4_INCLUDE_DIR}/proj.h" PROJ_VERSION_PATCH REGEX "^#define PROJ_VERSION_PATCH [0-9]+$")
+
+        string(REGEX REPLACE "^.*PROJ_VERSION_[A-Z]+ ([0-9]).*$" "\\1" PROJ4_VERSION_MAJOR "${PROJ_VERSION_MAJOR}")
+        string(REGEX REPLACE "^.*PROJ_VERSION_[A-Z]+ ([0-9]).*$" "\\1" PROJ4_VERSION_MINOR "${PROJ_VERSION_MINOR}")
+        string(REGEX REPLACE "^.*PROJ_VERSION_[A-Z]+ ([0-9]).*$" "\\1" PROJ4_VERSION_PATCH "${PROJ_VERSION_PATCH}")
+        set(PROJ4_VERSION "${PROJ4_VERSION_MAJOR}.${PROJ4_VERSION_MINOR}.${PROJ4_VERSION_PATCH}")
+        set(PROJ4_VERSION_COUNT 3)
+    endif()
 endif()
 
 # Allow PROJ4_LIBRARY to be set manually, as the location of the proj library