BUILD: ist: use the literal declaration for ist_lc/ist_uc under TCC

TCC doesn't knoow about __attribute__((weak)), it silently ignores it.
We could add a "static" modifier there in this case but we already have
an alternate portable mode that is based on a slightly larger literal
for obsolete linkers (and non-ELF systems) which choke on weak. Let's
just add the test for tcc there and use it in this case.

No backport is needed.
This commit is contained in:
Willy Tarreau 2023-05-24 21:31:21 +02:00
parent 4e8720ab78
commit eced142aa8

View File

@ -109,9 +109,10 @@
0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, \
}
#ifdef USE_OBSOLETE_LINKER
#if defined(USE_OBSOLETE_LINKER) || defined(__TINYC__)
/* some old linkers and some non-ELF platforms have issues with the weak
* attribute so we turn these arrays to literals there.
* attribute so we turn these arrays to literals there. TCC silently ignores
* it so we switch to literal as well.
*/
#define ist_lc ((const unsigned char[256])_IST_LC)
#define ist_uc ((const unsigned char[256])_IST_UC)