ada: Fix Ada bootstrap on FreeBSD
commit8d2e5ad7f1723c9125c2d511c281b4fe62ff29cd
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 11 Dec 2023 12:38:19 +0000 (11 13:38 +0100)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 11 Dec 2023 12:38:19 +0000 (11 13:38 +0100)
treed144b284ec4f2915f06824125926c5f5bfab7399
parent0a569f87cd8436abaa6ac8c0da6e441152904e67
ada: Fix Ada bootstrap on FreeBSD

Ada bootstrap on FreeBSD/amd64 was also broken by the recent warning
changes:

terminals.c: In function 'allocate_pty_desc':
terminals.c:1200:12: error: implicit declaration of function 'openpty'; did you
mean 'openat'? [-Wimplicit-function-declaration]
 1200 |   status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL);
      |            ^~~~~~~
      |            openat

terminals.c: At top level:
terminals.c:1268:9: warning: "TABDLY" redefined
 1268 | #define TABDLY 0
      |         ^~~~~~
In file included from /usr/include/termios.h:38,
                 from terminals.c:1109:
/usr/include/sys/_termios.h:111:9: note: this is the location of the previous definition
  111 | #define TABDLY          0x00000004      /* tab delay mask */
      |         ^~~~~~
make[7]: *** [../gcc-interface/Makefile:302: terminals.o] Error 1

Fixed by including the necessary header and guarding the fallback
definition of TABDLY.

This allowed a 64-bit-only bootstrap on x86_64-unknown-freebsd14.0 to
complete successfully.

2023-12-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

gcc/ada:
* terminals.c [__FreeBSD__]: Include <libutil.h>.
(TABDLY): Only define if missing.
gcc/ada/terminals.c