From 95cc5faa16833acaf12a4d273c5c848984fc73ce Mon Sep 17 00:00:00 2001 From: Frank Lichtenheld Date: Tue, 19 Sep 2023 17:56:35 +0200 Subject: [PATCH] CMake: various small non-functional improvements These are based on review comments for the 2.6 backport. But since they apply to the original master implementation as well, I address them in this separate patch. - Add documentation to contrib/cmake/*.py - Fix grammar in README.cmake.md - Update a TODO in CMakeLists.txt to better reflect the status quo - Fix indentation in unit_tests' Makefile.am Change-Id: I4e16767ee221e1aefdd18d13b3411c27d8dd844a Signed-off-by: Frank Lichtenheld Acked-by: Lev Stipakov Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/342 Message-Id: <20230919155635.708557-1-frank@lichtenheld.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg27043.html Signed-off-by: Gert Doering --- CMakeLists.txt | 2 +- README.cmake.md | 2 +- contrib/cmake/git-version.py | 8 ++++++++ contrib/cmake/parse-version.m4.py | 6 ++++++ tests/unit_tests/openvpn/Makefile.am | 2 +- 5 files changed, 17 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9de6abab5cf..454ef62d4d3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -292,7 +292,7 @@ set(HAVE_CONFIG_VERSION_H YES) configure_file(config.h.cmake.in config.h) configure_file(include/openvpn-plugin.h.in openvpn-plugin.h) -# TODO remove later when msvc-config.h is removed and we can always include config.h +# TODO we should remove the need for this, and always include config.h add_definitions(-DHAVE_CONFIG_H) include_directories(${CMAKE_CURRENT_BINARY_DIR}) diff --git a/README.cmake.md b/README.cmake.md index 599d8dc1641..d181b64cd9d 100644 --- a/README.cmake.md +++ b/README.cmake.md @@ -24,7 +24,7 @@ MSVC builds ----------- The following tools are expected to be present on the system, you -can them install with a package manager of your choice (e.g. +can install them with a package manager of your choice (e.g. chocolatey, winget) or manually: * CMake diff --git a/contrib/cmake/git-version.py b/contrib/cmake/git-version.py index c2b445272c4..4f78ac42bf2 100644 --- a/contrib/cmake/git-version.py +++ b/contrib/cmake/git-version.py @@ -22,6 +22,14 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # +# Usage: ./git-version.py [directory] +# Find a good textual representation of the git commit currently checked out. +# Make that representation available as CONFIGURE_GIT_REVISION in +# /config-version.h. +# It will prefer a tag name if it is checked out exactly, otherwise will use +# the branch name. 'none' if no branch is checked out (detached HEAD). +# This is used to enhance the output of openvpn --version with Git information. + import os import sys import subprocess diff --git a/contrib/cmake/parse-version.m4.py b/contrib/cmake/parse-version.m4.py index d5ff2bdb30a..3dfb31fbf8c 100644 --- a/contrib/cmake/parse-version.m4.py +++ b/contrib/cmake/parse-version.m4.py @@ -22,6 +22,12 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # +# Usage: ./parse-version.m4.py m4file [directory] +# Read , extract all lines looking like M4 define(), and translate +# them into CMake style set(). Those are then written out to file +# /version.cmake. +# Intended to be used on top-level version.m4 file. + import os import re import sys diff --git a/tests/unit_tests/openvpn/Makefile.am b/tests/unit_tests/openvpn/Makefile.am index 6b56f848024..ef45b117aae 100644 --- a/tests/unit_tests/openvpn/Makefile.am +++ b/tests/unit_tests/openvpn/Makefile.am @@ -110,7 +110,7 @@ tls_crypt_testdriver_LDFLAGS = @TEST_LDFLAGS@ \ -Wl,--wrap=parse_line \ -Wl,--wrap=rand_bytes tls_crypt_testdriver_SOURCES = test_tls_crypt.c mock_msg.c mock_msg.h \ - mock_win32_execve.c \ + mock_win32_execve.c \ $(top_srcdir)/src/openvpn/argv.c \ $(top_srcdir)/src/openvpn/base64.c \ $(top_srcdir)/src/openvpn/buffer.c \