Package: daemon
Version: 0.6.3-1
Severity: important
Tags: patch

Hi,

currently your package FTBFS on GNU/kFreeBSD with the following error:
> gcc -DDAEMON_NAME=\"daemon\" -DDAEMON_VERSION=\"0.6.3\" 
> -DDAEMON_DATE=\"20040806\" -DDAEMON_URL=\"http://libslack.org/daemon/\"; 
> -DHAVE_SNPRINTF=1 -DHAVE_VSSCANF=1 -DHAVE_GETOPT_LONG=1 
> -DHAVE_PTHREAD_RWLOCK=1  -Ilibslack -O3 -Wall -pedantic -o daemon.o -c 
> daemon.c
> daemon.c:1311: warning: ISO C forbids conversion of function pointer to 
> object pointer type
> [... many times...]
> daemon.c: In function 'tty_noecho':
> daemon.c:1883: error: 'ONLCR' undeclared (first use in this function)
> daemon.c:1883: error: (Each undeclared identifier is reported only once
> daemon.c:1883: error: for each function it appears in.)
> make[1]: *** [daemon.o] Error 1

Full build logs are available at
<http://experimental.ftbfs.de/build.php?arch=kfreebsd-i386&pkg=daemon>.

Please find attached a patch to fix this and allows your package to
build on GNU/kFreeBSD.

Cheers,

-- 
Cyril Brulebois
--- daemon-0.6.3/config 2004-08-05 00:08:53.000000000 +0200
+++ daemon-0.6.3/config 2007-03-11 06:01:25.000000000 +0100
@@ -25,7 +25,7 @@
 die() { echo "$0: $@" >&2; exit 1; }
 
 case "`uname -a`" in
-       Linux*)
+       Linux* | GNU/kFreeBSD*)
                echo "Configuring for linux"
                conf/linux
                ;;
--- daemon-0.6.3/daemon.c       2004-08-05 00:08:53.000000000 +0200
+++ daemon-0.6.3/daemon.c       2007-03-11 06:01:25.000000000 +0100
@@ -1880,7 +1880,9 @@
                return errorsys("failed to get terminal attributes for slave 
pty");
 
        attr->c_lflag &= ~(ECHO | ECHOE | ECHOK | ECHONL);
+#if !defined(__FreeBSD_kernel__)
        attr->c_oflag &= ~ONLCR;
+#endif
 
        return tcsetattr(fd, TCSANOW, attr);
 }
--- daemon-0.6.3/libslack/config        2004-08-05 00:08:53.000000000 +0200
+++ daemon-0.6.3/libslack/config        2007-03-11 06:01:25.000000000 +0100
@@ -25,7 +25,7 @@
 die() { echo "$0: $@" >&2; exit 1; }
 
 case "`uname -a`" in
-       Linux*)
+       Linux* | GNU/kFreeBSD*)
                echo "Configuring for linux"
                conf/linux
                ;;
--- daemon-0.6.3/libslack/configure     2004-08-05 00:08:53.000000000 +0200
+++ daemon-0.6.3/libslack/configure     2007-03-11 06:01:25.000000000 +0100
@@ -25,7 +25,7 @@
 die() { echo "$0: $@" >&2; exit 1; }
 
 case "`uname -a`" in
-       Linux*)
+       Linux* | GNU/kFreeBSD*)
                echo "Configuring for linux"
                conf/linux
                ;;
--- daemon-0.6.3/libslack/net.c 2004-08-05 00:08:53.000000000 +0200
+++ daemon-0.6.3/libslack/net.c 2007-03-11 06:01:25.000000000 +0100
@@ -191,7 +191,10 @@
 
 #ifndef TEST
 
-#ifndef HAVE_IFREQ_IFR_IFINDEX
+/* GNU/kFreeBSD trick: the configuration is shared
+ * with Linux, but there's no ifr_ifindex.
+ */
+#if !defined(HAVE_IFREQ_IFR_IFINDEX) || defined(__FreeBSD_kernel__)
 #define ifr_ifindex ifr_index
 #endif
 #ifndef HAVE_IFREQ_IFR_MTU
--- daemon-0.6.3/libslack/pseudo.c      2004-08-05 00:08:53.000000000 +0200
+++ daemon-0.6.3/libslack/pseudo.c      2007-03-11 06:01:25.000000000 +0100
@@ -116,7 +116,10 @@
 #include <sys/stropts.h>
 #endif
 
-#if defined(HAVE_VHANGUP) && !defined(HAVE_DEV_PTMX)
+/* GNU/kFreeBSD trick: same userland as Linux, but vhangup() is said to be
+ * Linux-specific [according to vhangup(2)].
+ */
+#if defined(HAVE_VHANGUP) && !defined(HAVE_DEV_PTMX) && 
!defined(__FreeBSD_kernel__)
 #define USE_VHANGUP
 #endif
 

Reply via email to