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 [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]