Add cmake configuration files
* configure.ac: Add libgpgmepp version. Configure cmake files. * lang/cpp/src/Makefile.am: Add targets for cmake files. (EXTRA_DIST): Add cmake files. -- This should smooth the transition for downstream users that have worked with KF5::Gpgmepp previously.
This commit is contained in:
parent
98e5b67242
commit
77c3fb450c
@ -61,6 +61,10 @@ LIBGPGME_LT_CURRENT=25
|
|||||||
LIBGPGME_LT_AGE=14
|
LIBGPGME_LT_AGE=14
|
||||||
LIBGPGME_LT_REVISION=0
|
LIBGPGME_LT_REVISION=0
|
||||||
|
|
||||||
|
LIBGPGMEPP_LT_CURRENT=3
|
||||||
|
LIBGPGMEPP_LT_AGE=0
|
||||||
|
LIBGPGMEPP_LT_REVISION=0
|
||||||
|
|
||||||
# If the API is changed in an incompatible way: increment the next counter.
|
# If the API is changed in an incompatible way: increment the next counter.
|
||||||
GPGME_CONFIG_API_VERSION=1
|
GPGME_CONFIG_API_VERSION=1
|
||||||
##############################################
|
##############################################
|
||||||
@ -104,6 +108,9 @@ AC_CHECK_PROGS(GITLOG_TO_CHANGELOG, gitlog-to-changelog, [gitlog-to-changelog])
|
|||||||
AC_SUBST(LIBGPGME_LT_CURRENT)
|
AC_SUBST(LIBGPGME_LT_CURRENT)
|
||||||
AC_SUBST(LIBGPGME_LT_AGE)
|
AC_SUBST(LIBGPGME_LT_AGE)
|
||||||
AC_SUBST(LIBGPGME_LT_REVISION)
|
AC_SUBST(LIBGPGME_LT_REVISION)
|
||||||
|
AC_SUBST(LIBGPGMEPP_LT_CURRENT)
|
||||||
|
AC_SUBST(LIBGPGMEPP_LT_AGE)
|
||||||
|
AC_SUBST(LIBGPGMEPP_LT_REVISION)
|
||||||
|
|
||||||
AC_SUBST(PACKAGE)
|
AC_SUBST(PACKAGE)
|
||||||
AC_SUBST(VERSION)
|
AC_SUBST(VERSION)
|
||||||
@ -653,6 +660,8 @@ AC_CONFIG_FILES(Makefile src/Makefile
|
|||||||
src/gpgme.h)
|
src/gpgme.h)
|
||||||
AC_CONFIG_FILES(src/gpgme-config, chmod +x src/gpgme-config)
|
AC_CONFIG_FILES(src/gpgme-config, chmod +x src/gpgme-config)
|
||||||
AC_CONFIG_FILES(lang/cpp/Makefile lang/cpp/src/Makefile)
|
AC_CONFIG_FILES(lang/cpp/Makefile lang/cpp/src/Makefile)
|
||||||
|
AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfig.cmake.in)
|
||||||
|
AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfigVersion.cmake)
|
||||||
AC_CONFIG_FILES([lang/Makefile lang/cl/Makefile lang/cl/gpgme.asd])
|
AC_CONFIG_FILES([lang/Makefile lang/cl/Makefile lang/cl/gpgme.asd])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
|
|
||||||
|
115
lang/cpp/src/GpgmeppConfig.cmake.in.in
Normal file
115
lang/cpp/src/GpgmeppConfig.cmake.in.in
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
# CMake Config file for GPGMEPP.
|
||||||
|
# Copyright (C) 2016 Intevation GmbH
|
||||||
|
#
|
||||||
|
# This file is part of GPGMEPP.
|
||||||
|
#
|
||||||
|
# GPGME-CL is free software; you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# GPGME-CL is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Lesser General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA
|
||||||
|
|
||||||
|
# based on a generated file from cmake.
|
||||||
|
# Generated by CMake 3.0.2
|
||||||
|
|
||||||
|
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
|
||||||
|
message(FATAL_ERROR "CMake >= 2.6.0 required")
|
||||||
|
endif()
|
||||||
|
cmake_policy(PUSH)
|
||||||
|
cmake_policy(VERSION 2.6)
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
# Generated CMake target import file.
|
||||||
|
#----------------------------------------------------------------
|
||||||
|
|
||||||
|
# Commands may need to know the format version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||||
|
|
||||||
|
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
||||||
|
set(_targetsDefined)
|
||||||
|
set(_targetsNotDefined)
|
||||||
|
set(_expectedTargets)
|
||||||
|
foreach(_expectedTarget KF5::Gpgmepp KF5::QGpgme)
|
||||||
|
list(APPEND _expectedTargets ${_expectedTarget})
|
||||||
|
if(NOT TARGET ${_expectedTarget})
|
||||||
|
list(APPEND _targetsNotDefined ${_expectedTarget})
|
||||||
|
endif()
|
||||||
|
if(TARGET ${_expectedTarget})
|
||||||
|
list(APPEND _targetsDefined ${_expectedTarget})
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION)
|
||||||
|
cmake_policy(POP)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
if(NOT "${_targetsDefined}" STREQUAL "")
|
||||||
|
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
|
||||||
|
endif()
|
||||||
|
unset(_targetsDefined)
|
||||||
|
unset(_targetsNotDefined)
|
||||||
|
unset(_expectedTargets)
|
||||||
|
|
||||||
|
# Compute the installation prefix relative to this file.
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||||
|
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||||
|
|
||||||
|
# Create imported target Gpgmepp
|
||||||
|
add_library(Gpgmepp SHARED IMPORTED)
|
||||||
|
|
||||||
|
set_target_properties(Gpgmepp PROPERTIES
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include/gpgme++"
|
||||||
|
INTERFACE_LINK_LIBRARIES "@libdir@/libgpgme.dll.a;@LIBASSUAN_LIBS@;@GPG_ERROR_LIBS@"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Create imported target QGpgme
|
||||||
|
#add_library(QGpgme SHARED IMPORTED)
|
||||||
|
|
||||||
|
#set_target_properties(KF5::QGpgme PROPERTIES
|
||||||
|
# INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include/qgpgme"
|
||||||
|
# INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX} TODO"
|
||||||
|
# INTERFACE_LINK_LIBRARIES "Qt5::Core"
|
||||||
|
#)
|
||||||
|
|
||||||
|
if(CMAKE_VERSION VERSION_LESS 2.8.12)
|
||||||
|
message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Cleanup temporary variables.
|
||||||
|
set(_IMPORT_PREFIX)
|
||||||
|
|
||||||
|
# Loop over all imported files and verify that they actually exist
|
||||||
|
foreach(target ${_IMPORT_CHECK_TARGETS} )
|
||||||
|
foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
|
||||||
|
if(NOT EXISTS "${file}" )
|
||||||
|
message(FATAL_ERROR "The imported target \"${target}\" references the file
|
||||||
|
\"${file}\"
|
||||||
|
but this file does not exist. Possible reasons include:
|
||||||
|
* The file was deleted, renamed, or moved to another location.
|
||||||
|
* An install or uninstall procedure did not complete successfully.
|
||||||
|
* The installation package was faulty and contained
|
||||||
|
\"${CMAKE_CURRENT_LIST_FILE}\"
|
||||||
|
but not all the files it references.
|
||||||
|
")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
unset(_IMPORT_CHECK_FILES_FOR_${target})
|
||||||
|
endforeach()
|
||||||
|
unset(_IMPORT_CHECK_TARGETS)
|
||||||
|
|
||||||
|
# This file does not depend on other imported targets which have
|
||||||
|
# been exported from the same project but in a separate export set.
|
||||||
|
|
||||||
|
# Commands beyond this point should not need to know the version.
|
||||||
|
set(CMAKE_IMPORT_FILE_VERSION)
|
||||||
|
cmake_policy(POP)
|
31
lang/cpp/src/GpgmeppConfigVersion.cmake.in
Normal file
31
lang/cpp/src/GpgmeppConfigVersion.cmake.in
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# CMake Version file for GPGMEPP.
|
||||||
|
# Copyright (C) 2016 Intevation GmbH
|
||||||
|
#
|
||||||
|
# This file is part of GPGMEPP.
|
||||||
|
#
|
||||||
|
# GPGME-CL is free software; you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# GPGME-CL is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Lesser General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA
|
||||||
|
|
||||||
|
# based on a generated file from cmake.
|
||||||
|
set(PACKAGE_VERSION "@LIBGPGMEPP_LT_CURRENT@.@LIBGPGMEPP_LT_AGE@.@LIBGPGMEPP_LT_REVISION@.@BUILD_REVISION@")
|
||||||
|
|
||||||
|
if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" )
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||||
|
else()
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE TRUE)
|
||||||
|
if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}")
|
||||||
|
set(PACKAGE_VERSION_EXACT TRUE)
|
||||||
|
endif()
|
||||||
|
endif()
|
@ -18,6 +18,8 @@
|
|||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
# 02111-1307, USA
|
# 02111-1307, USA
|
||||||
|
|
||||||
|
EXTRA_DIST = GpgmeppConfig.cmake.in.in GpgmeConfigVersion.cmake.in
|
||||||
|
|
||||||
lib_LTLIBRARIES = libgpgmepp.la
|
lib_LTLIBRARIES = libgpgmepp.la
|
||||||
|
|
||||||
main_sources = \
|
main_sources = \
|
||||||
@ -57,3 +59,22 @@ libgpgmepp_la_SOURCES = $(main_sources) $(gpgmepp_headers) context_vanilla.cpp \
|
|||||||
AM_CPPFLAGS = @GPG_ERROR_CFLAGS@ @LIBASSUAN_CFLAGS@ -DBUILDING_GPGMEPP
|
AM_CPPFLAGS = @GPG_ERROR_CFLAGS@ @LIBASSUAN_CFLAGS@ -DBUILDING_GPGMEPP
|
||||||
|
|
||||||
libgpgmepp_la_LIBADD = ../../../src/libgpgme.la @LIBASSUAN_LIBS@
|
libgpgmepp_la_LIBADD = ../../../src/libgpgme.la @LIBASSUAN_LIBS@
|
||||||
|
|
||||||
|
GpgmeppConfig.cmake: GpgmeppConfig.cmake.in
|
||||||
|
sed -e 's|[@]resolved_libdir@|$(libdir)|g' < "$<" > "$@"
|
||||||
|
|
||||||
|
install-cmake-files: GpgmeppConfig.cmake GpgmeppConfigVersion.cmake
|
||||||
|
-$(INSTALL) -d $(DESTDIR)$(libdir)/cmake/Gpgmepp
|
||||||
|
$(INSTALL) GpgmeppConfig.cmake \
|
||||||
|
$(DESTDIR)$(libdir)/cmake/Gpgmepp/GpgmeppConfig.cmake
|
||||||
|
$(INSTALL) GpgmeppConfigVersion.cmake \
|
||||||
|
$(DESTDIR)$(libdir)/cmake/Gpgmepp/GpgmeppConfigVersion.cmake
|
||||||
|
|
||||||
|
uninstall-cmake-files:
|
||||||
|
-rm $(DESTDIR)$(libdir)/cmake/Gpgmepp/GpgmeppConfigVersion.cmake
|
||||||
|
-rm $(DESTDIR)$(libdir)/cmake/Gpgmepp/GpgmeppConfig.cmake
|
||||||
|
-rmdir $(DESTDIR)$(libdir)/cmake/Gpgmepp/
|
||||||
|
|
||||||
|
install-data-local: install-cmake-files
|
||||||
|
|
||||||
|
uninstall-local: uninstall-cmake-files
|
||||||
|
Loading…
Reference in New Issue
Block a user