Package: libunistring-dev
Version: 0.9.6+really0.9.3-0.1
Tags: patch upstream
User: helm...@debian.org
Usertags: rebootstrap
Control: block 798955 by -1

We plan on moving glibc's headers to /usr/include/<triplet>. That
includes headers such as stdint.h. Unfortunately, libunistring's build
system contains unportable things such as "test -f
/usr/include/stdint.h" (while also checking for stdint.h portably at
configure time). This causes a misbuild (assumes that stdint.h is
absent) and (among other things) breaks coinstallability of
libunistring-dev. The proper solution is to rely on autoconf's results.
That's what the attached patch does. Please consider applying it after
stretch is released.

Helmut
diff --minimal -Nru libunistring-0.9.6+really0.9.3/debian/changelog 
libunistring-0.9.6+really0.9.3/debian/changelog
--- libunistring-0.9.6+really0.9.3/debian/changelog     2016-05-27 
10:11:04.000000000 +0200
+++ libunistring-0.9.6+really0.9.3/debian/changelog     2017-03-14 
08:24:16.000000000 +0100
@@ -1,3 +1,10 @@
+libunistring (0.9.6+really0.9.3-0.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix misbuild with multiarched glibc. (Closes: #-1)
+
+ -- Helmut Grohne <hel...@subdivi.de>  Tue, 14 Mar 2017 08:24:16 +0100
+
 libunistring (0.9.6+really0.9.3-0.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff --minimal -Nru 
libunistring-0.9.6+really0.9.3/debian/patches/multiarch-libc.patch 
libunistring-0.9.6+really0.9.3/debian/patches/multiarch-libc.patch
--- libunistring-0.9.6+really0.9.3/debian/patches/multiarch-libc.patch  
1970-01-01 01:00:00.000000000 +0100
+++ libunistring-0.9.6+really0.9.3/debian/patches/multiarch-libc.patch  
2017-03-14 08:24:16.000000000 +0100
@@ -0,0 +1,39 @@
+From: Helmut Grohne <hel...@subdivi.de>
+Subject: fix @HAVE_STDINT_H@ once stdint.h moves to /usr/include/<triplet>
+
+Index: libunistring-0.9.6+really0.9.3/lib/Makefile.am
+===================================================================
+--- libunistring-0.9.6+really0.9.3.orig/lib/Makefile.am
++++ libunistring-0.9.6+really0.9.3/lib/Makefile.am
+@@ -98,28 +98,13 @@
+         echo '#if __GLIBC__ >= 2'; \
+         echo '#include <stdint.h>'; \
+         echo '#else'; \
+-        if test -f /usr/include/stdint.h; then \
+-          HAVE_STDINT_H='1'; \
+-        else \
+-          HAVE_STDINT_H='defined __MINGW32__ || defined __HAIKU__'; \
+-        fi; \
+-        if test -f /usr/include/inttypes.h; then \
+-          HAVE_INTTYPES_H='1'; \
+-        else \
+-          HAVE_INTTYPES_H='defined __MINGW32__ || defined __HAIKU__'; \
+-        fi; \
+-        if test -f /usr/include/sys/inttypes.h; then \
+-          HAVE_SYS_INTTYPES_H='1'; \
+-        else \
+-          HAVE_SYS_INTTYPES_H='0'; \
+-        fi; \
+-        sed -e 's/@''HAVE_STDINT_H''@/'"$$HAVE_STDINT_H"'/g' \
++        sed -e 's/@''HAVE_STDINT_H''@/@HAVE_STDINT_H@/g' \
+             -e 's|@''INCLUDE_NEXT''@|include|g' \
+             -e 's|@''PRAGMA_SYSTEM_HEADER''@||g' \
+             -e 's|@''NEXT_STDINT_H''@|<stdint.h>|g' \
+             -e 's/@''HAVE_SYS_TYPES_H''@/1/g' \
+-            -e 's/@''HAVE_INTTYPES_H''@/'"$$HAVE_INTTYPES_H"'/g' \
+-            -e 's/@''HAVE_SYS_INTTYPES_H''@/'"$$HAVE_SYS_INTTYPES_H"'/g' \
++            -e 's/@''HAVE_INTTYPES_H''@/@HAVE_INTTYPES_H@/g' \
++            -e 's/@''HAVE_SYS_INTTYPES_H''@/@HAVE_SYS_INTTYPES_H@/g' \
+             -e 's/@''HAVE_SYS_BITYPES_H''@/0/g' \
+             < $(srcdir)/stdint.mini.h; \
+         echo '#endif'; \
diff --minimal -Nru libunistring-0.9.6+really0.9.3/debian/patches/series 
libunistring-0.9.6+really0.9.3/debian/patches/series
--- libunistring-0.9.6+really0.9.3/debian/patches/series        2016-05-26 
17:14:45.000000000 +0200
+++ libunistring-0.9.6+really0.9.3/debian/patches/series        2017-03-14 
08:14:51.000000000 +0100
@@ -1 +1,2 @@
 float-endian-detection.patch
+multiarch-libc.patch

Reply via email to