Bug#325201: gnome-libs: FTBFS (ppc64): configure check for 'umode_t' fails

Andreas Jochens aj at andaco.de
Fri Aug 26 19:45:37 UTC 2005


Package: gnome-libs
Version: 1.4.2-20
Severity: normal
Tags: patch

When building 'gnome-libs' on ppc64/unstable,
I get the following error:

                 from /usr/include/asm/elf.h:8,
                 from /usr/include/asm-ppc64/sigcontext.h:12,
                 from /usr/include/asm/sigcontext.h:8,
                 from /usr/include/bits/sigcontext.h:28,
                 from /usr/include/signal.h:333,
                 from /usr/include/sys/wait.h:30,
                 from gnome-exec.c:48:
/usr/include/asm-ppc64/types.h:19: error: two or more data types in declaration specifiers
gnome-exec.c: In function 'gnome_execute_async_with_env_fds':
gnome-exec.c:193: warning: format '%d' expects type 'int', but argument 5 has type 'long unsigned int'
make[3]: *** [gnome-exec.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I./.. -DNEED_GNOMESUPPORT_H -I../support -I../support -I../intl -I../intl -I/usr/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include -DGNOMELIBDIR=\"/usr/lib\" -DGNOMEDATADIR=\"/usr/share\" -DGNOMEBINDIR=\"/usr/bin\" -DGNOMELOCALSTATEDIR=\"/var/lib\" -DGNOMELOCALEDIR=\"/usr/share/locale\" -DGNOMESYSCONFDIR=\"/etc\" -DVERSION=\"1.4.2\" -DG_LOG_DOMAIN=\"Gnome\" -I/usr/include/libpng10 -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -Wall -g -O2 -Wall -Wunused -c gnome-fileconvert.c -o gnome-fileconvert.o >/dev/null 2>&1
mv -f .libs/gnome-fileconvert.lo gnome-fileconvert.lo
make[3]: Leaving directory `/gnome-libs-1.4.2/libgnome'

This occurs because 'umode_t' is defined explicitly by the configure 
script.

The 'umode_t' check in the configure script fails for some reason.

With the attached patch 'gnome-libs' can be compiled on ppc64.

The patch remove the configure check for 'umode_t' entirely.
This should not do any harm because 'umode_t' is not used
in the sources.

Regards
Andreas Jochens

diff -urN ../tmp-orig/gnome-libs-1.4.2/configure.in ./configure.in
--- ../tmp-orig/gnome-libs-1.4.2/configure.in	2002-08-16 00:24:36.000000000 +0200
+++ ./configure.in	2005-08-26 20:30:05.000000000 +0200
@@ -304,7 +304,6 @@
 AC_CHECK_FUNCS(strdup)
 AC_CHECK_HEADERS(utime.h)
 AC_FUNC_MMAP
-AC_CHECK_TYPE(umode_t, int)
 
 AC_ARG_ENABLE(prefer-db1, [  --enable-prefer-db1     Prefer Berkeley DB 1.x] [default=no]],[prefer_db1="$enableval"],[prefer_db1=no])
 dnl
diff -urN ../tmp-orig/gnome-libs-1.4.2/configure ./configure
--- ../tmp-orig/gnome-libs-1.4.2/configure	2002-08-16 00:24:44.000000000 +0200
+++ ./configure	2005-08-26 20:30:27.000000000 +0200
@@ -11284,39 +11284,6 @@
 
 fi
 
-echo $ac_n "checking for umode_t""... $ac_c" 1>&6
-echo "configure:11289: checking for umode_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_umode_t'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 11294 "configure"
-#include "confdefs.h"
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "(^|[^a-zA-Z_0-9])umode_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
-  rm -rf conftest*
-  ac_cv_type_umode_t=yes
-else
-  rm -rf conftest*
-  ac_cv_type_umode_t=no
-fi
-rm -f conftest*
-
-fi
-echo "$ac_t""$ac_cv_type_umode_t" 1>&6
-if test $ac_cv_type_umode_t = no; then
-  cat >> confdefs.h <<\EOF
-#define umode_t int
-EOF
-
-fi
-
 
 # Check whether --enable-prefer-db1 or --disable-prefer-db1 was given.
 if test "${enable_prefer_db1+set}" = set; then




More information about the Pkg-gnome-maintainers mailing list