[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#525591: libffi: Observation of pygobject_2.16.1-1 FTBFS



Package: libffi
Version: 3.0.7-1
Followup-For: Bug #525591

Not exactly.  That's debian/rules what mangles with ffi.h location.

	190  endif
	191          dh_install -s --sourcedir=debian/tmp
	192
	193          mkdir -p debian/libffi-dev/usr/include/$(DEB_HOST_GNU_TYPE)
	194          mv debian/libffi-dev/usr/include/*.h \
	195                  debian/libffi-dev/usr/include/$(DEB_HOST_GNU_TYPE)/
	196
	197  ifneq (,$(filter biarch32, $(multiarch)))
	198          mkdir -p debian/lib32ffi-dev/usr/include/$(biarch_gnu_type)

And, I suppose, that would be OK, if other build process would look in
host specific directory also.  Instead pygobject relies on pkg-config.
Surprisingly, pkg-config has nothing to say about location of include
files.  Because:

	prefix=/usr
	exec_prefix=${prefix}
	libdir=${exec_prefix}/lib
	includedir=${prefix}/include

	Name: libffi
	Description: Library supporting Foreign Function Interfaces
	Version: 3.0.7
	Libs: -lffi
	Cflags:

That's exact contents of libffi.pc as shipped with libffi-dev_3.0.7-1 .
My overoptemistic attempt to fix this by adding --with-includedir has
failed.  Not because mv of debian/rules has failed to find any headers,
but because Cflags: line of libffi.pc happened to be still empty.

Thus me wonders, is that about lintian warning on ancient libtool?  I
wouldn't say that's grave, maybe important?


-- System Information:
Debian Release: 5.0
  APT prefers testing
  APT policy: (700, 'testing'), (700, 'stable'), (1, 'testing'), (1, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=ru_UA.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/bash
--- /tmp/libffi_neFY/libffi-3.0.7/debian/rules	2009-07-09 20:30:01.000000000 +0300
+++ /tmp/libffi_x_jfCo/libffi-3.0.7/debian/rules	2009-07-09 23:24:12.000000000 +0300
@@ -193,6 +193,7 @@
 	mkdir -p debian/libffi-dev/usr/include/$(DEB_HOST_GNU_TYPE)
 	mv debian/libffi-dev/usr/include/*.h \
 		debian/libffi-dev/usr/include/$(DEB_HOST_GNU_TYPE)/
+	sed -i -e '/^Cflags:/s,$$,/ -I$${includedir}/'$(DEB_HOST_GNU_TYPE)',' debian/libffi-dev/usr/lib/pkgconfig/libffi.pc
 
 ifneq (,$(filter biarch32, $(multiarch)))
 	mkdir -p debian/lib32ffi-dev/usr/include/$(biarch_gnu_type)

Reply to: