On Mon, Aug 25, 2025 at 03:09:09AM +0200, Achill Gilgenast wrote:
basename() got implicitly included on glibc but not on other libc's like
musl libc and therefore fails to build:
/home/achill/git/user-aports/experimental/linux-mainline/src/linux-6.17-rc3/drivers/gpu/drm/xe/xe_gen_wa_oob.c:
In function 'fn_to_prefix':
/home/achill/git/user-aports/experimental/linux-mainline/src/linux-6.17-rc3/drivers/gpu/drm/xe/xe_gen_wa_oob.c:130:14:
error: implicit declaration of function 'basename'; did you mean 'rename'?
[-Wimplicit-function-declaration]
130 | fn = basename(fn);
| ^~~~~~~~
| rename
/home/achill/git/user-aports/experimental/linux-mainline/src/linux-6.17-rc3/drivers/gpu/drm/xe/xe_gen_wa_oob.c:130:12:
error: assignment to 'const char *' from 'int' makes pointer from integer
without a cast [-Wint-conversion]
130 | fn = basename(fn);
| ^
Fixes: b0a2ee5567ab ("drm/xe: prepare xe_gen_wa_oob to be multi-use")
Signed-off-by: Achill Gilgenast <ach...@achill.org>
libgen.h provides a different basename than the one used here.
glibc defines it in string.h, but other libc's don't (or removed it
recently). See
https://lore.kernel.org/intel-xe/w4j3kzezrd4xqc4q4vkpbbxqvqxitam5htkex6rj6dguj5kbw5@27gqnp6veuu4/
Lucas De Marchi