From patchwork Thu Sep 22 04:42:58 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lev Stipakov X-Patchwork-Id: 2787 Return-Path: Delivered-To: patchwork@openvpn.net Delivered-To: patchwork@openvpn.net Received: from director10.mail.ord1d.rsapps.net ([172.30.191.6]) by backend30.mail.ord1d.rsapps.net with LMTP id AE8HDrB0LGMNQwAAIUCqbw (envelope-from ) for ; Thu, 22 Sep 2022 10:44:00 -0400 Received: from proxy8.mail.ord1d.rsapps.net ([172.30.191.6]) by director10.mail.ord1d.rsapps.net with LMTP id aIojDbB0LGOjYwAApN4f7A (envelope-from ) for ; Thu, 22 Sep 2022 10:44:00 -0400 Received: from smtp17.gate.ord1d ([172.30.191.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) by proxy8.mail.ord1d.rsapps.net with LMTPS id QCTADbB0LGP5AwAAGdz6CA (envelope-from ) for ; Thu, 22 Sep 2022 10:44:00 -0400 X-Spam-Threshold: 95 X-Spam-Score: 0 X-Spam-Flag: NO X-Virus-Scanned: OK X-Orig-To: openvpnslackdevel@openvpn.net X-Originating-Ip: [216.105.38.7] Authentication-Results: smtp17.gate.ord1d.rsapps.net; iprev=pass policy.iprev="216.105.38.7"; spf=pass smtp.mailfrom="openvpn-devel-bounces@lists.sourceforge.net" smtp.helo="lists.sourceforge.net"; dkim=fail (signature verification failed) header.d=sourceforge.net; dkim=fail (signature verification failed) header.d=sf.net; dkim=fail (signature verification failed) header.d=gmail.com; dmarc=fail (p=none; dis=none) header.from=gmail.com X-Suspicious-Flag: YES X-Classification-ID: fde57666-3a84-11ed-af5c-5254008de1cb-1-1 Received: from [216.105.38.7] ([216.105.38.7:54070] helo=lists.sourceforge.net) by smtp17.gate.ord1d.rsapps.net (envelope-from ) (ecelerity 4.2.38.62370 r(:)) with ESMTPS (cipher=DHE-RSA-AES256-GCM-SHA384) id 9A/9E-22475-FA47C236; Thu, 22 Sep 2022 10:43:59 -0400 Received: from [127.0.0.1] (helo=sfs-ml-1.v29.lw.sourceforge.com) by sfs-ml-1.v29.lw.sourceforge.com with esmtp (Exim 4.95) (envelope-from ) id 1obNQF-0007Zy-CI; Thu, 22 Sep 2022 14:43:27 +0000 Received: from [172.30.20.202] (helo=mx.sourceforge.net) by sfs-ml-1.v29.lw.sourceforge.com with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1obNQE-0007Ze-8e for openvpn-devel@lists.sourceforge.net; Thu, 22 Sep 2022 14:43:26 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sourceforge.net; s=x; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=HlTt9YLx2AwwukLMa911HBFzDxmhloL7lliXysGvqe4=; b=biL/4WBH+9g7EWK93/s1hN3vh1 5qLiPPek1Qv4PwjqB2h6uI6TSzxsQtVlegilbiX9MVPHd7Siji1Mz3pZmKDhJO5O66In3J1TOZOeU v63Agai0wiTxj2HCGY6we2oFtUUJCnDAoDU1udMD5H8rXY7dHk8WZjSIMmkVn0lHVeM8=; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sf.net; s=x ; h=Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=HlTt9YLx2AwwukLMa911HBFzDxmhloL7lliXysGvqe4=; b=FZqE1E3TEniH/BYl/8F/S535ae oAO/69TE8QjAEdl0B/ybFT3LD42/5WfIxOGA5Fsink7/eS26bxpN6zVDEXMaFiCBh9RcJCdH4LFWr hWfPTKibmV7Kc3RVgSfSj+DRmfRinIm875rAhpyMe/8CbphosaW/80qhWhNhKopewh1Q=; Received: from mail-lj1-f181.google.com ([209.85.208.181]) by sfi-mx-2.v28.lw.sourceforge.com with esmtps (TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.95) id 1obNQ7-0001WM-Bt for openvpn-devel@lists.sourceforge.net; Thu, 22 Sep 2022 14:43:26 +0000 Received: by mail-lj1-f181.google.com with SMTP id a10so11347071ljq.0 for ; Thu, 22 Sep 2022 07:43:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date; bh=HlTt9YLx2AwwukLMa911HBFzDxmhloL7lliXysGvqe4=; b=c/jug0GJJ6CX9mOCgFabygeTXSYWVW5pSIdy1l6Y67NYUQuVHWJvL+hcpBQn3tTUGV AmHVQEql+5Ta4bTAWPrxGLn8jzfJ5xQJSscsfLx6A9RlwxWHxCmU0a0/LV77snU70I5G rIrIHvl+w+Cbz8YXehmGgtcNwfG4gAV0Z1VT0evrq9om24bSmrJrMiPTBqwkfi8RZ3ys BAg8vlccG8Ba8i46YbD+GK5W0Z9ah8mi4pnXSShLOMS2pjBiLAH2UkRNGObhCD6LHCdu VNHKg0oeWrsdmWWWv+slGShsw/LUtev4b+ET4sIEhXHNHS4Y9pKvHXvJS3pGpuRTyoJJ hLcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date; bh=HlTt9YLx2AwwukLMa911HBFzDxmhloL7lliXysGvqe4=; b=GZS2GJv+VpFN9nQ6e6uoyQ8y5yD7fyZ01T9MoIZsRD2TG2mc+dxs1phVPJwq6TixYQ Aizl4fpfsB6KxA1JMuatcTW6n+rYU6f3Vf3rvOwM4KVNfs06EsWXWjU0JAcHBeZlT7N6 f9NSCdaOufowRFtm1ASJ1eXbtK71SmhODSYQjCuxBwlJX9nXZDIrOOlYxCpP9FBDX/J4 2Q6eoe1YpeRNFgHpeYtC7ey+ziXvnZfQZOT8A8PU9v7RHuQuKRe2HkkgcuTtXKpKb4Xs b8cIBUzQBzqzLxquvQtgYV5nijtbOddC1Oq1C40RgGzmS+j4HhpNG8snsL7p7/+KSpoV 22Cg== X-Gm-Message-State: ACrzQf1RbYVXVSM+e3PPTM3r8DJlno3AexYYIOh1laS2fBbiQa7Xf3xJ vB+sqeIJaD8/F6ZYIXAZQ30/41wz5Ms= X-Google-Smtp-Source: AMsMyM7wZoYTNDRmysDd26M5fWcZeLjhizd6G3mODzfyckY6IZDX7dEiIeYiLRn7zB4Z9V3UiGszaw== X-Received: by 2002:a2e:9b93:0:b0:26c:42b0:d941 with SMTP id z19-20020a2e9b93000000b0026c42b0d941mr1309008lji.297.1663857792484; Thu, 22 Sep 2022 07:43:12 -0700 (PDT) Received: from LAPTOP-4L3N7KFS.localdomain (89-166-53-18.co.dnainternet.fi. [89.166.53.18]) by smtp.gmail.com with ESMTPSA id d2-20020a056512368200b00494a603953dsm971706lfs.89.2022.09.22.07.43.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Sep 2022 07:43:11 -0700 (PDT) From: Lev Stipakov To: openvpn-devel@lists.sourceforge.net Date: Thu, 22 Sep 2022 17:42:58 +0300 Message-Id: <20220922144258.432-1-lstipakov@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220922125822.313-1-lstipakov@gmail.com> References: <20220922125822.313-1-lstipakov@gmail.com> MIME-Version: 1.0 X-Spam-Report: Spam detection software, running on the system "util-spamd-2.v13.lw.sourceforge.com", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: From: Lev Stipakov Add a simple python script which generates header with branch name and commit hash #defines. While on it, fix filename in msvc-generate.vcxproj and add proper copyright header to Makefile.mak. Content analysis details: (-0.2 points, 6.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider [lstipakov[at]gmail.com] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [209.85.208.181 listed in wl.mailspike.net] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [209.85.208.181 listed in list.dnswl.org] -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1obNQ7-0001WM-Bt Subject: [Openvpn-devel] [PATCH v2 release/2.5] msvc: add branch name and commit hash to version output X-BeenThere: openvpn-devel@lists.sourceforge.net X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lev Stipakov Errors-To: openvpn-devel-bounces@lists.sourceforge.net X-getmail-retrieved-from-mailbox: Inbox From: Lev Stipakov Add a simple python script which generates header with branch name and commit hash #defines. While on it, fix filename in msvc-generate.vcxproj and add proper copyright header to Makefile.mak. Signed-off-by: Lev Stipakov --- v2: - fix copyright year 2002 -> 2022 - change "not-a-git-repo" to "unknown" build/msvc/msvc-generate/Makefile.mak | 33 +++++++++++++- build/msvc/msvc-generate/git-version.py | 45 +++++++++++++++++++ .../msvc/msvc-generate/msvc-generate.vcxproj | 2 +- config-msvc.h | 2 + 4 files changed, 79 insertions(+), 3 deletions(-) create mode 100644 build/msvc/msvc-generate/git-version.py diff --git a/build/msvc/msvc-generate/Makefile.mak b/build/msvc/msvc-generate/Makefile.mak index 1cb43102..ae8b0842 100644 --- a/build/msvc/msvc-generate/Makefile.mak +++ b/build/msvc/msvc-generate/Makefile.mak @@ -1,4 +1,27 @@ -# Copyright (C) 2008-2012 Alon Bar-Lev +# +# OpenVPN -- An application to securely tunnel IP networks +# over a single UDP port, with support for SSL/TLS-based +# session authentication and key exchange, +# packet encryption, packet authentication, and +# packet compression. +# +# Copyright (C) 2002-2022 OpenVPN Inc +# Copyright (C) 2008-2012 Alon Bar-Lev +# Copyright (C) 2022-2022 Lev Stipakov +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 +# as published by the Free Software Foundation. +# +# This program 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 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., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# CONFIG=$(SOLUTIONDIR)/version.m4 @@ -14,7 +37,9 @@ OUTPUT_PLUGIN_CONFIG=version.m4 INPUT_MAN=$(SOLUTIONDIR)/doc/openvpn.8.rst OUTPUT_MAN=$(SOLUTIONDIR)/doc/openvpn.8.html -all: $(OUTPUT_MSVC_VER) $(OUTPUT_PLUGIN) $(OUTPUT_MAN) +OUTPUT_MSVC_GIT_CONFIG=$(SOLUTIONDIR)/config-version.h + +all: $(OUTPUT_MSVC_VER) $(OUTPUT_PLUGIN) $(OUTPUT_MAN) $(OUTPUT_MSVC_GIT_CONFIG) $(OUTPUT_MSVC_VER): $(INPUT_MSVC_VER) $(CONFIG) cscript //nologo msvc-generate.js --config="$(CONFIG)" --input="$(INPUT_MSVC_VER)" --output="$(OUTPUT_MSVC_VER)" @@ -28,8 +53,12 @@ $(OUTPUT_PLUGIN): $(INPUT_PLUGIN) $(OUTPUT_PLUGIN_CONFIG) $(OUTPUT_MAN): $(INPUT_MAN) -FOR /F %i IN ('where rst2html.py') DO python %i "$(INPUT_MAN)" "$(OUTPUT_MAN)" +$(OUTPUT_MSVC_GIT_CONFIG): + python git-version.py $(SOLUTIONDIR) + clean: -del "$(OUTPUT_MSVC_VER)" -del "$(OUTPUT_PLUGIN)" -del "$(OUTPUT_PLUGIN_CONFIG)" -del "$(OUTPUT_MAN)" + -del "$(OUTPUT_MSVC_GIT_CONFIG)" diff --git a/build/msvc/msvc-generate/git-version.py b/build/msvc/msvc-generate/git-version.py new file mode 100644 index 00000000..bf0891fe --- /dev/null +++ b/build/msvc/msvc-generate/git-version.py @@ -0,0 +1,45 @@ +# +# OpenVPN -- An application to securely tunnel IP networks +# over a single UDP port, with support for SSL/TLS-based +# session authentication and key exchange, +# packet encryption, packet authentication, and +# packet compression. +# +# Copyright (C) 2022-2022 OpenVPN Inc +# Copyright (C) 2022-2022 Lev Stipakov +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 +# as published by the Free Software Foundation. +# +# This program 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 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., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# + +import os +import sys + +def get_branch_commit_id(): + commit_id = os.popen("git rev-parse --short=16 HEAD").read()[:-1] + branch = os.popen("git rev-parse --symbolic-full-name HEAD").read().split("/")[2][:-1] + return branch, commit_id + +def main(): + try: + branch, commit_id = get_branch_commit_id() + except: + branch, commit_id = "unknown", "unknown" + + name = os.path.join("%s" % (sys.argv[1] if len(sys.argv) > 1 else "."), "config-version.h") + with open(name, "w") as f: + f.write("#define CONFIGURE_GIT_REVISION \"%s/%s\"\n" % (branch, commit_id)) + f.write("#define CONFIGURE_GIT_FLAGS \"\"\n") + +if __name__ == "__main__": + main() diff --git a/build/msvc/msvc-generate/msvc-generate.vcxproj b/build/msvc/msvc-generate/msvc-generate.vcxproj index dda8b051..eae94709 100644 --- a/build/msvc/msvc-generate/msvc-generate.vcxproj +++ b/build/msvc/msvc-generate/msvc-generate.vcxproj @@ -150,7 +150,7 @@ - + diff --git a/config-msvc.h b/config-msvc.h index e7479c86..47c5ba07 100644 --- a/config-msvc.h +++ b/config-msvc.h @@ -177,3 +177,5 @@ typedef uint16_t in_port_t; #define HAVE_INET_NTOP #define HAVE_INET_PTON #endif + +#define HAVE_CONFIG_VERSION_H 1