[PATCH v2] lib/build_OID_registry: Don't mention the full path of the script in output

From: Uwe Kleine-König
Date: Wed Mar 13 2024 - 17:20:17 EST


This change strips the full path of the script generating
lib/oid_registry_data.c to just lib/build_OID_registry. The motivation
for this change is Yocto emitting a build warning

File /usr/src/debug/linux-lxatac/6.7-r0/lib/oid_registry_data.c in package linux-lxatac-src contains reference to TMPDIR [buildpaths]

So this change brings us one step closer to make the build result
reproducible independent of the build path.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
---
Changes since (implicit) v1, archived at
https://lore.kernel.org/lkml/20240311110121.459581-2-u.kleine-koenig@xxxxxxxxxxxxxx:

- Handle abs_srctree not being exported any more

The v1 patch made it into next but im combination with commit e2bad142bb3d
("kbuild: unexport abs_srctree and abs_objtree") resulted in a build warning
about $ENV{"abs_srctree"} being uninitialized which required this respin.

Best regards
Uwe

lib/build_OID_registry | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/build_OID_registry b/lib/build_OID_registry
index d7fc32ea8ac2..56d8bafeb848 100755
--- a/lib/build_OID_registry
+++ b/lib/build_OID_registry
@@ -8,6 +8,7 @@
#

use strict;
+use Cwd qw(abs_path);

my @names = ();
my @oids = ();
@@ -17,6 +18,8 @@ if ($#ARGV != 1) {
exit(2);
}

+my $abs_srctree = abs_path($ENV{'srctree'});
+
#
# Open the file to read from
#
@@ -35,7 +38,7 @@ close IN_FILE || die;
#
open C_FILE, ">$ARGV[1]" or die;
print C_FILE "/*\n";
-print C_FILE " * Automatically generated by ", $0, ". Do not edit\n";
+print C_FILE " * Automatically generated by ", $0 =~ s#^\Q$abs_srctree/\E##r, ". Do not edit\n";
print C_FILE " */\n";

#

base-commit: e8f897f4afef0031fe618a8e94127a0934896aba
--
2.43.0