aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/ECMGeneratePkgConfigFile.cmake11
-rw-r--r--tests/ECMGeneratePkgConfigFile/KF5CoreAddons.pc1
-rw-r--r--tests/ECMGeneratePkgConfigFile/KF5CoreAddons2.pc1
-rw-r--r--tests/ECMGeneratePkgConfigFile/KF5CoreAddons3.pc1
-rw-r--r--tests/ECMGeneratePkgConfigFile/KF5CoreAddons4.pc1
-rw-r--r--tests/ECMGeneratePkgConfigFile/KF5CoreAddons5.pc13
-rw-r--r--tests/ECMGeneratePkgConfigFile/run_test.cmake.config14
7 files changed, 41 insertions, 1 deletions
diff --git a/modules/ECMGeneratePkgConfigFile.cmake b/modules/ECMGeneratePkgConfigFile.cmake
index 99d26ada..8c303981 100644
--- a/modules/ECMGeneratePkgConfigFile.cmake
+++ b/modules/ECMGeneratePkgConfigFile.cmake
@@ -22,6 +22,7 @@ projects.
[LIB_INSTALL_DIR <dir>]
[DEFINES -D<variable=value>...]
[DESCRIPTION <library description>] # since 5.41.0
+ [URL <url>] # since 5.89.0
[INSTALL])
``BASE_NAME`` is the name of the module. It's the name projects will use to
@@ -59,6 +60,9 @@ the library pass to the compiler when using it.
will first try to get the description from the metainfo.yaml file or will
create one based on ``LIB_NAME``. Since 5.41.0.
+``URL`` An URL where people can get more information about and download the
+package. Defaults to "https://www.kde.org/". Since 5.89.0.
+
``INSTALL`` will cause the module to be installed to the ``pkgconfig``
subdirectory of ``LIB_INSTALL_DIR``, unless the ``ECM_PKGCONFIG_INSTALL_DIR``
cache variable is set to something different. Note that the first call to
@@ -86,7 +90,7 @@ Since 1.3.0.
function(ECM_GENERATE_PKGCONFIG_FILE)
set(options INSTALL)
- set(oneValueArgs BASE_NAME LIB_NAME FILENAME_VAR INCLUDE_INSTALL_DIR LIB_INSTALL_DIR DESCRIPTION)
+ set(oneValueArgs BASE_NAME LIB_NAME FILENAME_VAR INCLUDE_INSTALL_DIR LIB_INSTALL_DIR DESCRIPTION URL)
set(multiValueArgs DEPS DEFINES)
cmake_parse_arguments(EGPF "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
@@ -133,6 +137,9 @@ function(ECM_GENERATE_PKGCONFIG_FILE)
set(EGPF_DESCRIPTION "${EGPF_LIB_NAME} library.")
endif()
endif()
+ if(NOT EGPF_URL)
+ set(EGPF_URL "https://www.kde.org/")
+ endif()
set(PKGCONFIG_TARGET_BASENAME ${EGPF_BASE_NAME})
set(PKGCONFIG_TARGET_LIBNAME ${EGPF_LIB_NAME})
@@ -167,6 +174,7 @@ function(ECM_GENERATE_PKGCONFIG_FILE)
set(PKGCONFIG_TARGET_LIBS "\${prefix}/${EGPF_LIB_INSTALL_DIR}")
endif()
set(PKGCONFIG_TARGET_DESCRIPTION "${EGPF_DESCRIPTION}")
+ set(PKGCONFIG_TARGET_URL "${EGPF_URL}")
set(PKGCONFIG_TARGET_DEFINES "")
if(EGPF_DEFINES)
set(PKGCONFIG_TARGET_DEFINES "${EGPF_DEFINE}")
@@ -186,6 +194,7 @@ includedir=${PKGCONFIG_TARGET_INCLUDES}
Name: ${PKGCONFIG_TARGET_LIBNAME}
Description: ${PKGCONFIG_TARGET_DESCRIPTION}
+URL: ${PKGCONFIG_TARGET_URL}
Version: ${PROJECT_VERSION}
Libs: -L\${prefix}/${EGPF_LIB_INSTALL_DIR} -l${PKGCONFIG_TARGET_LIBNAME}
Cflags: -I${PKGCONFIG_TARGET_INCLUDES} ${PKGCONFIG_TARGET_DEFINES}
diff --git a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons.pc b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons.pc
index cdc3b119..adcf4494 100644
--- a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons.pc
+++ b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons.pc
@@ -6,6 +6,7 @@ includedir=${prefix}/include/KF5CoreAddons
Name: KF5CoreAddons
Description: KF5CoreAddons test
+URL: https://www.kde.org/
Version: 5.43
Libs: -L${prefix}/lib -lKF5CoreAddons
Cflags: -I${prefix}/include/KF5CoreAddons
diff --git a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons2.pc b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons2.pc
index 816ee5af..05c94701 100644
--- a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons2.pc
+++ b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons2.pc
@@ -6,6 +6,7 @@ includedir=/usr/KCoreAddons
Name: KF5CoreAddons2
Description: Addons to QtCore
+URL: https://www.kde.org/
Version: 5.43
Libs: -L${prefix}/lib -lKF5CoreAddons2
Cflags: -I/usr/KCoreAddons
diff --git a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons3.pc b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons3.pc
index bd3886dc..8f1b4683 100644
--- a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons3.pc
+++ b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons3.pc
@@ -6,6 +6,7 @@ includedir=/usr/KCoreAddons
Name: KF5CoreAddons3
Description: KF5CoreAddons3 library.
+URL: https://www.kde.org/
Version: 5.43
Libs: -L${prefix}/lib -lKF5CoreAddons3
Cflags: -I/usr/KCoreAddons
diff --git a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons4.pc b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons4.pc
index 0d59faad..4a792992 100644
--- a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons4.pc
+++ b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons4.pc
@@ -6,6 +6,7 @@ includedir=/usr/KCoreAddons
Name: KF5CoreAddons4
Description: KF5CoreAddons4 library.
+URL: https://www.kde.org/
Version: 5.43
Libs: -L${prefix}/lib -lKF5CoreAddons4
Cflags: -I/usr/KCoreAddons
diff --git a/tests/ECMGeneratePkgConfigFile/KF5CoreAddons5.pc b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons5.pc
new file mode 100644
index 00000000..dd545eea
--- /dev/null
+++ b/tests/ECMGeneratePkgConfigFile/KF5CoreAddons5.pc
@@ -0,0 +1,13 @@
+
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${prefix}/lib
+includedir=/usr/KCoreAddons
+
+Name: KF5CoreAddons5
+Description: KF5CoreAddons test
+URL: https://www.example.org/
+Version: 5.43
+Libs: -L${prefix}/lib -lKF5CoreAddons5
+Cflags: -I/usr/KCoreAddons
+Requires: Qt5Core
diff --git a/tests/ECMGeneratePkgConfigFile/run_test.cmake.config b/tests/ECMGeneratePkgConfigFile/run_test.cmake.config
index c0dec227..c303c920 100644
--- a/tests/ECMGeneratePkgConfigFile/run_test.cmake.config
+++ b/tests/ECMGeneratePkgConfigFile/run_test.cmake.config
@@ -124,3 +124,17 @@ compare_files(GENERATED ${OutputFile}
ORIGINALS ${origfiles})
file(REMOVE ${OutputFile})
file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/metainfo.yaml)
+
+message(STATUS "Test 6: with an URL parameter")
+set(origfiles "${CMAKE_CURRENT_SOURCE_DIR}/KF5CoreAddons5.pc")
+
+ecm_generate_pkgconfig_file(BASE_NAME KF5CoreAddons5
+ DESCRIPTION "KF5CoreAddons test"
+ URL "https://www.example.org/"
+ DEPS Qt5Core
+ INCLUDE_INSTALL_DIR /usr/KCoreAddons
+ FILENAME_VAR OutputFile)
+
+compare_files(GENERATED ${OutputFile}
+ ORIGINALS ${origfiles})
+file(REMOVE ${OutputFile})