diff options
| author | Mike Taves <mwtoews@gmail.com> | 2021-02-26 00:45:42 +1300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-02-26 00:45:42 +1300 |
| commit | 3d22f6f0a7f3919d7ed6ac4ebb09d233f5fc65c2 (patch) | |
| tree | 2b6d5d873a85a297b206e60aa92ea80e46994118 /cmake | |
| parent | 1a518773616fb001483c175e8dfab00c06e83c89 (diff) | |
| download | PROJ-3d22f6f0a7f3919d7ed6ac4ebb09d233f5fc65c2.tar.gz PROJ-3d22f6f0a7f3919d7ed6ac4ebb09d233f5fc65c2.zip | |
CMake: add support for pkg-config (#2547)
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/ProjInstallPath.cmake | 2 | ||||
| -rw-r--r-- | cmake/ProjUtilities.cmake | 31 |
2 files changed, 32 insertions, 1 deletions
diff --git a/cmake/ProjInstallPath.cmake b/cmake/ProjInstallPath.cmake index b7f7b821..fa67161e 100644 --- a/cmake/ProjInstallPath.cmake +++ b/cmake/ProjInstallPath.cmake @@ -40,6 +40,8 @@ else() set(DEFAULT_INCLUDE_SUBDIR include) set(DEFAULT_DOC_SUBDIR share/doc/proj) set(DEFAULT_CMAKE_SUBDIR lib/cmake) + # Used for proj.pc + set(CMAKE_INSTALL_DATAROOTDIR share) endif() # Locations are changeable by user to customize layout of PROJ installation diff --git a/cmake/ProjUtilities.cmake b/cmake/ProjUtilities.cmake index 6f43edb5..f8688cd6 100644 --- a/cmake/ProjUtilities.cmake +++ b/cmake/ProjUtilities.cmake @@ -14,7 +14,8 @@ # Macros in this module: # # print_variable -# proj_target_output_name: +# proj_target_output_name +# configure_proj_pc # ################################################################################ @@ -60,3 +61,31 @@ function(proj_target_output_name TARGET_NAME OUTPUT_NAME) set(${OUTPUT_NAME} ${TARGET_NAME}${SUFFIX} PARENT_SCOPE) endfunction() + +# +# Configure a pkg-config file proj.pc +# See also ProjInstallPath.cmake +# + +function(configure_proj_pc) + set(prefix "${CMAKE_INSTALL_PREFIX}") + set(exec_prefix "$\{prefix\}") + set(libdir "$\{exec_prefix\}/${PROJ_LIB_SUBDIR}") + set(includedir "$\{prefix\}/${PROJ_INCLUDE_SUBDIR}") + set(datarootdir "$\{prefix\}/${CMAKE_INSTALL_DATAROOTDIR}") + set(datadir "$\{datarootdir\}") + set(PACKAGE "proj") + set(VERSION ${PROJ_VERSION}) + set(SQLITE3_LIBS -lsqlite3) + if(TIFF_ENABLED) + set(TIFF_LIBS -ltiff) + endif() + if(CURL_ENABLED) + set(CURL_LIBS -lcurl) + endif() + + configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/proj.pc.in + ${CMAKE_CURRENT_BINARY_DIR}/proj.pc + @ONLY) +endfunction() |
