Using PROJ in CMake projects
The recommended way to use the PROJ library in a CMake project is to
link to the imported library target PROJ::proj
provided by
the CMake configuration which comes with the library. Typical usage is:
find_package(PROJ REQUIRED CONFIG)
target_link_libraries(MyApp PRIVATE PROJ::proj)
By adding the imported library target PROJ::proj
to the
target link libraries, CMake will also pass the include directories to
the compiler.
The CMake command find_package
will look for the configuration in a
number of places. The lookup can be adjusted for all packages by setting
the cache variable or environment variable CMAKE_PREFIX_PATH
. In
particular, CMake will consult (and set) the cache variable
PROJ_DIR
.
The old CMake name for the PROJ project was "PROJ4" and the switch to
the name "PROJ" was made with version 7.0. As of PROJ 9.1, using
find_package(PROJ4)
will show a CMake Deprecation Warning. The
old project name PROJ4 name will be phased out after the PROJ 9.x series.