Control: tags -1 + patch upstream

[Ivo De Decker]
> The latest ipmitool upload (1.8.13-1) FTBFS on kfreebsd, preventing
> migration to testing.

I had a look at this RC problem, and just commited this fix upstream for
the build problems on Hurd and kFreeBSD.  The fix is only tested on Hurd
so far, but I believe it should work on FreeBSD too.

We are currently working on a new upstream version, but until we manage
to wrap up a new release you can apply this patch to get the source
building.

Index: configure.in
===================================================================
RCS file: /cvsroot/ipmitool/ipmitool/configure.in,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -3 -p -r1.98 -r1.99
--- configure.in        14 Nov 2013 12:56:48 -0000      1.98
+++ configure.in        30 Jan 2014 18:33:47 -0000      1.99
@@ -109,6 +109,11 @@ solaris*)
        xenable_intf_bmc=no
        xenable_intf_open=no
        ;;
+gnu*)
+       # disable the linux and solaris-specific interfaces on Hurd
+       xenable_intf_imb=no
+       xenable_intf_open=no
+       ;;
 esac
 
 AC_SUBST(ARCH, $host_cpu)
Index: src/plugins/serial/serial_basic.c
===================================================================
RCS file: /cvsroot/ipmitool/ipmitool/src/plugins/serial/serial_basic.c,v
retrieving revision 1.1
retrieving revision 1.3
diff -u -3 -p -r1.1 -r1.3
--- src/plugins/serial/serial_basic.c   28 May 2013 07:38:55 -0000      1.1
+++ src/plugins/serial/serial_basic.c   30 Jan 2014 18:55:46 -0000      1.3
@@ -266,8 +266,14 @@ serial_bm_open(struct ipmi_intf * intf)
 
        /* no flow control */
        ti.c_cflag &= ~CRTSCTS;
-       ti.c_iflag &= ~(IGNBRK | IGNCR | INLCR | ICRNL | IUCLC | INPCK | ISTRIP
+       ti.c_iflag &= ~(IGNBRK | IGNCR | INLCR | ICRNL | INPCK | ISTRIP
                        | IXON | IXOFF | IXANY);
+#ifdef IUCLC
+        /* Only disable uppercase-to-lowercase mapping on input for
+          platforms supporting the flag. */
+       ti.c_iflag &= ~(IUCLC)
+#endif
+
 
        ti.c_oflag &= ~(OPOST);
        ti.c_lflag &= ~(ICANON | ISIG | ECHO | ECHONL | NOFLSH);
@@ -323,7 +329,13 @@ serial_bm_alloc_seq(void)
 static int
 serial_bm_flush(struct ipmi_intf * intf)
 {
-       return ioctl(intf->fd, TCFLSH, TCIOFLUSH);
+#if defined(TCFLSH)
+    return ioctl(intf->fd, TCFLSH, TCIOFLUSH);
+#elif defined(TIOCFLUSH)
+    return ioctl(intf->fd, TIOCFLUSH);
+#else
+#   error "unsupported platform, missing flush support (TCFLSH/TIOCFLUSH)"
+#endif
 }
 
 /*
Index: src/plugins/serial/serial_terminal.c
===================================================================
RCS file: /cvsroot/ipmitool/ipmitool/src/plugins/serial/serial_terminal.c,v
retrieving revision 1.1
retrieving revision 1.3
diff -u -3 -p -r1.1 -r1.3
--- src/plugins/serial/serial_terminal.c        28 May 2013 07:38:55 -0000      
1.1
+++ src/plugins/serial/serial_terminal.c        30 Jan 2014 18:55:46 -0000      
1.3
@@ -211,8 +211,13 @@ ipmi_serial_term_open(struct ipmi_intf *
 
        /* no flow control */
        ti.c_cflag &= ~CRTSCTS;
-       ti.c_iflag &= ~(IGNBRK | IGNCR | INLCR | ICRNL | IUCLC | INPCK | ISTRIP
+       ti.c_iflag &= ~(IGNBRK | IGNCR | INLCR | ICRNL | INPCK | ISTRIP
                        | IXON | IXOFF | IXANY);
+#ifdef IUCLC
+        /* Only disable uppercase-to-lowercase mapping on input for
+          platforms supporting the flag. */
+       ti.c_iflag &= ~(IUCLC)
+#endif
 
        ti.c_oflag &= ~(OPOST);
        ti.c_lflag &= ~(ICANON | ISIG | ECHO | ECHONL | NOFLSH);
@@ -337,7 +342,14 @@ serial_write_line(struct ipmi_intf * int
 static int
 serial_flush(struct ipmi_intf * intf)
 {
+#if defined(TCFLSH)
     return ioctl(intf->fd, TCFLSH, TCIOFLUSH);
+#elif defined(TIOCFLUSH)
+    return ioctl(intf->fd, TIOCFLUSH);
+#else
+#   error "unsupported platform, missing flush support (TCFLSH/TIOCFLUSH)"
+#endif
+
 }
 
 /*

-- 
Happy hacking
Petter Reinholdtsen


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to