From 50c8a3af1661c3950b9743d673fd46872860aa08 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date: Mon, 18 May 2020 07:53:20 +0200
Subject: [PATCH] src: make path to m4 relocatable

Commit a4ede8f85b0c9a254fcb01e5888cee1983095669 ("package: make bison
a relocatable package") made Bison relocatable, but in fact it still
contains one absolute reference: the M4 variable, which points to the
M4 program. Let's fix that by using relocate().

We don't use relocate2() to store the temporary buffer and re-use it,
because m4path() is only called once.

Upstream: submitted to the bison-patches@gnu.org mailing list
https://lists.gnu.org/archive/html/bison-patches/2020-05/msg00078.html
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 src/files.c  | 7 +++++++
 src/files.h  | 3 +++
 src/output.c | 2 +-
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/files.c b/src/files.c
index 71c10e34..b8b43230 100644
--- a/src/files.c
+++ b/src/files.c
@@ -421,6 +421,13 @@ pkgdatadir (void)
     }
 }
 
+char const *
+m4path (void)
+{
+  char const *m4 = getenv("M4");
+  return m4 ? m4 : relocate(M4);
+}
+
 void
 output_file_names_free (void)
 {
diff --git a/src/files.h b/src/files.h
index 00814ad0..64b6f8b5 100644
--- a/src/files.h
+++ b/src/files.h
@@ -64,6 +64,9 @@ extern char *all_but_ext;
 /* Where our data files are installed.  */
 char const *pkgdatadir (void);
 
+/* Where the m4 program is installed.  */
+char const *m4path (void);
+
 void compute_output_file_names (void);
 void output_file_names_free (void);
 
diff --git a/src/output.c b/src/output.c
index 1871fd75..ebe75095 100644
--- a/src/output.c
+++ b/src/output.c
@@ -682,7 +682,7 @@ static void
 output_skeleton (void)
 {
   /* Compute the names of the package data dir and skeleton files.  */
-  char const *m4 = (m4 = getenv ("M4")) ? m4 : M4;
+  char const *m4 = m4path ();
   char const *datadir = pkgdatadir ();
   char *skeldir = xpath_join (datadir, "skeletons");
   char *m4sugar = xpath_join (datadir, "m4sugar/m4sugar.m4");
-- 
2.26.2

