From afa957ae5b8187996e0c7c500e2b747cd55347e9 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 24 Nov 2022 12:23:09 +0100 Subject: [PATCH] Cygwin: uname: allow to specify external release info When creating regular Cygwin test releases we need a way to automate unambiguous version information based on the output of `git describe'. Allow to inject a release string via a preprocessor macro CYGPORT__RELEASE_INFO. Change the default release info to recognize a local, non-distro build. Signed-off-by: Corinna Vinschen --- winsup/cygwin/uname.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/uname.cc b/winsup/cygwin/uname.cc index 7e0d8849b..e893660c6 100644 --- a/winsup/cygwin/uname.cc +++ b/winsup/cygwin/uname.cc @@ -42,11 +42,15 @@ uname_x (struct utsname *name) cygwin_gethostname (buf, sizeof buf - 1); strncat (name->nodename, buf, sizeof (name->nodename) - 1); /* release */ - __small_sprintf (name->release, "%d.%d.%d-%d.", +#ifdef CYGPORT_RELEASE_INFO + stpcpy (name->release, __XSTRING (CYGPORT_RELEASE_INFO)); +#else + __small_sprintf (name->release, "%d.%d.%d-0.%d.local.", cygwin_version.dll_major / 1000, cygwin_version.dll_major % 1000, cygwin_version.dll_minor, cygwin_version.api_minor); +#endif /* version */ stpcpy (name->version, cygwin_version.dll_build_date); strcat (name->version, " UTC");