[PATCH 04/12] drm/xe: xe_gen_wa_oob: fix program_invocation_short_name for macos

Lucas De Marchi lucas.demarchi at intel.com
Wed Aug 7 01:50:09 UTC 2024


On Wed, Aug 07, 2024 at 01:09:18AM GMT, Daniel Gomez via B4 Relay wrote:
>From: Daniel Gomez <da.gomez at samsung.com>
>
>Use getprogname() [1] instead of program_invocation_short_name() [2]
>for macOS hosts.
>
>[1]:
>https://www.gnu.org/software/gnulib/manual/html_node/
>program_005finvocation_005fshort_005fname.html
>
>[2]:
>https://developer.apple.com/library/archive/documentation/System/
>Conceptual/ManPages_iPhoneOS/man3/getprogname.3.html
>
>Fixes build error for macOS hosts:
>
>drivers/gpu/drm/xe/xe_gen_wa_oob.c:34:3: error: use of
>undeclared identifier 'program_invocation_short_name'    34 |
>program_invocation_short_name);       |                 ^ 1 error
>generated.
>
>Signed-off-by: Daniel Gomez <da.gomez at samsung.com>
>---
> drivers/gpu/drm/xe/xe_gen_wa_oob.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
>diff --git a/drivers/gpu/drm/xe/xe_gen_wa_oob.c b/drivers/gpu/drm/xe/xe_gen_wa_oob.c
>index 904cf47925aa..079b8870c461 100644
>--- a/drivers/gpu/drm/xe/xe_gen_wa_oob.c
>+++ b/drivers/gpu/drm/xe/xe_gen_wa_oob.c
>@@ -9,6 +9,12 @@
> #include <stdbool.h>
> #include <stdio.h>
> #include <string.h>
>+#define PROG_INV_NAME program_invocation_short_name
>+
>+#ifdef __APPLE__
>+#include <stdlib.h>
>+#define PROG_INV_NAME getprogname()
>+#endif
>
> #define HEADER \
> 	"// SPDX-License-Identifier: MIT\n" \
>@@ -31,7 +37,7 @@
> static void print_usage(FILE *f)
> {
> 	fprintf(f, "usage: %s <input-rule-file> <generated-c-source-file> <generated-c-header-file>\n",
>-		program_invocation_short_name);
>+		PROG_INV_NAME);

instead of doing that, can we a) include stdlib.h unconditionally and b)
add here a
`static const char *program_invocation_short_name = getprogname()` so we
don't need to change the common case and just handle the "build on
macos" as a compat layer?

Lucas De Marchi

> }
>
> static void print_parse_error(const char *err_msg, const char *line,
>
>-- 
>Git-146)
>
>


More information about the dri-devel mailing list