Re: [PATCH v1 1/1] selftests/sgx: Fix the implicit declaration of asprintf() compiler error
From: Mirsad Todorovac
Date: Fri May 10 2024 - 17:02:59 EST
On 5/10/24 22:52, John Hubbard wrote:
> On 5/10/24 1:37 PM, Mirsad Todorovac wrote:
> ...
>> The fix defines __USE_GNU before including <stdio.h> in case it isn't already
>> defined. After this intervention the module compiles OK.
>
> Instead of interventions, I believe the standard way to do this is to simply
> define _GNU_SOURCE before including the header file(s). For example, the
> following also fixes the compilation failure on Ubuntu:
>
> diff --git a/tools/testing/selftests/sgx/main.c b/tools/testing/selftests/sgx/main.c
> index 9820b3809c69..bb6e795d06e2 100644
> --- a/tools/testing/selftests/sgx/main.c
> +++ b/tools/testing/selftests/sgx/main.c
> @@ -1,6 +1,7 @@
> // SPDX-License-Identifier: GPL-2.0
> /* Copyright(c) 2016-20 Intel Corporation. */
>
> +#define _GNU_SOURCE
> #include <cpuid.h>
> #include <elf.h>
> #include <errno.h>
>
>
> However, that's not required, because Edward Liaw is already on v4 of
> a patchset[1] that fixes up the _GNU_SOURCE problem for all selftests.
>
> [1] https://lore.kernel.org/all/20240510000842.410729-2-edliaw@xxxxxxxxxx/
>
> thanks,
Hi,
Yes, I actually like Ed's solution more, because it solves the asprintf() prototype
problem with TEST_HARNESS_MAIN macro for all of the tests.
Sorry for the noise and the time wasted reviewing. 8-|
Best regards,
Mirsad Todorovac