[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#845159: gcc-7: gnat fails to build on kfreebsd-*



Package: src:gcc-7
Followup-For: Bug #845159
Control: unmerge -1
Control: notfound -1 gcc-7/7.1.0-2
Control: tags 861737 - buster sid
Control: tags -1 + patch

The merge with 861737 was an error.
The attached patch should fix 845159.
--- /dev/null
+++ b/debian/patches/ada-drop-termio-h.diff
@@ -0,0 +1,39 @@
+Description: ada/terminals.c: remove obsolete termio.h
+ On all architectures, the terminals.c source file #includes
+ <termios.h> and declares variables with type struct termios.
+ .
+ Some platforms provide a compatibility termio.h, which only defines
+ the termio structure.
+ .
+ terminals.c also #includes <termio.h>, probably for historical
+ reasons since no termio structure is ever used.
+ .
+ Drop the #include instead of maintaining a list of architectures.
+Author: Nicolas Boulenguez <nicolas@debian.org>
+Bug-Debian: https://bugs.debian.org/845159
+
+--- a/src/gcc/ada/terminals.c
++++ b/src/gcc/ada/terminals.c
+@@ -1060,14 +1060,6 @@
+ #include <errno.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+-
+-/* On some system termio is either absent or including it will disable termios
+-   (HP-UX) */
+-#if !defined (__hpux__) && !defined (BSD) && !defined (__APPLE__) \
+-  && !defined (__rtems__)
+-#   include <termio.h>
+-#endif
+-
+ #include <sys/ioctl.h>
+ #include <termios.h>
+ #include <fcntl.h>
+@@ -1083,7 +1075,6 @@
+ #   include <sys/signal.h>
+ #endif
+ #if defined (__hpux__)
+-#   include <sys/termio.h>
+ #   include <sys/stropts.h>
+ #endif
+ 
--- a/debian/patches/ada-kfreebsd.diff
+++ b/debian/patches/ada-kfreebsd.diff
@@ -1,17 +1,5 @@
 # DP: add support for GNU/kFreeBSD.
 
---- a/src/gcc/ada/terminals.c
-+++ b/src/gcc/ada/terminals.c
-@@ -1064,7 +1064,8 @@
- /* On some system termio is either absent or including it will disable termios
-    (HP-UX) */
- #if !defined (__hpux__) && !defined (BSD) && !defined (__APPLE__) \
--  && !defined (__rtems__)
-+  && ! defined (__FreeBSD_kernel__) && ! defined (__GNU__) \
-+  && ! defined (__rtems__)
- #   include <termio.h>
- #endif
- 
 --- /dev/null
 +++ b/src/gcc/ada/s-osinte-kfreebsd-gnu.adb
 @@ -0,0 +1,158 @@
--- a/debian/rules.patch
+++ b/debian/rules.patch
@@ -233,6 +233,7 @@ debian_patches += skip-bootstrap-multilib
 debian_patches += libffi-ro-eh_frame_sect
 debian_patches += libffi-mips
 debian_patches += ada-kfreebsd
+debian_patches += ada-drop-termio-h
 
 # sigaction on sparc changed between glibc 2.19 and 2.21
 ifeq (,$(filter 2.1%, $(shell dpkg-query -l libc-bin | awk '/^.i/ {print $$3}')))

Reply to: