Package: yap Version: 5.1.3-2 Severity: serious Tags: patch Justification: no longer builds from source
Ubuntu encountered a FTBFS with the Jaunty toolchain (gcc 4.3). Specifically, open() calls with O_CREAT needed 3 arguments. There was also an issue that required the use of -fno-stack-protector on i386. You can see the downstream bug here: https://bugs.launchpad.net/ubuntu/+source/yap/+bug/246406 I filed an upstream patch about the open() issue here: http://sourceforge.net/tracker/?func=detail&aid=2800587&group_id=24437&atid=381485 A pared down ubuntu debdiff is attached. -- System Information: Debian Release: squeeze/sid APT prefers karmic-updates APT policy: (500, 'karmic-updates'), (500, 'karmic-security'), (500, 'karmic') Architecture: i386 (i686) Kernel: Linux 2.6.30-7-generic (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
diff -u yap-5.1.3/debian/rules yap-5.1.3/debian/rules --- yap-5.1.3/debian/rules +++ yap-5.1.3/debian/rules @@ -13,6 +13,11 @@ DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) + +ifeq ($(DEB_BUILD_ARCH),i386) +CFLAGS += -fno-stack-protector +endif configure: config-stamp patch diff -u yap-5.1.3/debian/patches/00list yap-5.1.3/debian/patches/00list --- yap-5.1.3/debian/patches/00list +++ yap-5.1.3/debian/patches/00list @@ -3,0 +4 @@ +04_ubuntu_toolchain_FTBFS only in patch2: unchanged: --- yap-5.1.3.orig/debian/patches/04_ubuntu_toolchain_FTBFS.dpatch +++ yap-5.1.3/debian/patches/04_ubuntu_toolchain_FTBFS.dpatch @@ -0,0 +1,26 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 04_gcc_4.3.dpatch by <[email protected]> +## DP: Fix FTBFS with Ubuntu toolchain + +...@dpatch@ +diff -urNad yap-5.1.1~/C/alloc.c yap-5.1.1/C/alloc.c +--- yap-5.1.1~/C/alloc.c 2006-03-24 18:15:18.000000000 +0100 ++++ yap-5.1.1/C/alloc.c 2008-07-09 22:55:34.000000000 +0200 +@@ -796,7 +796,7 @@ + itos(getpid(), &file[12]); + #endif /* HAVE_TMPNAM */ + #endif /* HAVE_MKSTEMP */ +- fd = open(file, O_CREAT|O_RDWR); ++ fd = open(file, O_CREAT|O_RDWR, 0644); + if (fd < 0) { + Yap_Error(FATAL_ERROR, TermNil, "mmap could not open %s", file); + return NULL; +@@ -909,7 +909,7 @@ + itos(getpid(), &file[12]); + #endif /* HAVE_TMPNAM */ + #endif /* HAVE_MKSTEMP */ +- fd = open(file, O_CREAT|O_RDWR); ++ fd = open(file, O_CREAT|O_RDWR, 0644); + if (fd < 0) { + Yap_ErrorMessage = Yap_ErrorSay; + snprintf4(Yap_ErrorMessage, MAX_ERROR_MSG_SIZE,

