build: fix _Noreturn compilation failure

Fix a build failure seen on gcc 3.4 on Solaris 10 at least.

* src/crctab.c: Ensure we include config.h for all compilation units.
This is now required for new _Noreturn usage in gnulib for stdint.h.
* src/cksum.c: Update generation code to ensure config.h included.
* cfg.mk: Remove crctab.c exclusion from the config.h check.
This commit is contained in:
Pádraig Brady 2023-04-10 19:36:23 +01:00
parent 09ded7049b
commit ae4dace2ec
3 changed files with 5 additions and 3 deletions

2
cfg.mk
View File

@ -844,7 +844,7 @@ exclude_file_name_regexp--sc_trailing_blank = \
exclude_file_name_regexp--sc_system_h_headers = \
^src/((die|system|copy|chown-core|find-mount-point)\.h|make-prime-list\.c)$$
_src = (crctab|false|lbracket|ls-(dir|ls|vdir)|tac-pipe|uname-(arch|uname))
_src = (false|lbracket|ls-(dir|ls|vdir)|tac-pipe|uname-(arch|uname))
_gl_src = (xdecto.max|cl-strtold)
exclude_file_name_regexp--sc_require_config_h_first = \
(^lib/buffer-lcm\.c|gl/lib/$(_gl_src)\.c|src/$(_src)\.c)$$

View File

@ -116,8 +116,9 @@ main (void)
}
}
printf ("#include <stdint.h>\n\n");
printf ("uint_fast32_t const crctab[8][256] = {\n");
printf ("#include <config.h>\n");
printf ("#include <stdint.h>\n");
printf ("\nuint_fast32_t const crctab[8][256] = {\n");
for (int y = 0; y < 8; y++)
{
printf ("{\n 0x%08x", crctab[y][0]);

View File

@ -1,3 +1,4 @@
#include <config.h>
#include <stdint.h>
uint_fast32_t const crctab[8][256] = {