Ignore as_needed in ld_add_file_list

After the change to DT_NEEDED I get warnings for some functions.
The reason is that libc.so on my machine contains:
GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a  AS_NEEDED ( /lib64/ld-linux-x86-64.so.2 ) )

Before the change to DT_NEEDED we solved the symbols because the
/lib64/libc.so.6 file has as DT_NEEDED set for ld-linux-x86-64.so.2
The above AS_NEEDED section was not followed so symbols in this
file gives a warning.
Currently fixed by including AS_NEEDED files.
This commit is contained in:
herman ten brugge 2023-11-08 19:58:26 +01:00
parent 0f29dbcfd5
commit ded713e90d

View file

@ -3877,8 +3877,9 @@ static int ld_add_file_list(TCCState *s1, const char *cmd, int as_needed)
if (ret)
goto lib_parse_error;
} else {
/* TODO: Implement AS_NEEDED support. Ignore it for now */
if (!as_needed) {
/* TODO: Implement AS_NEEDED support. */
/* DT_NEEDED is not used any more so ignore as_needed */
if (1 || !as_needed) {
ret = ld_add_file(s1, filename);
if (ret)
goto lib_parse_error;