View Issue Details

IDProjectCategoryView StatusLast Update
0001400libextractorbuild systempublic2009-02-20 11:54
Reportercyberix Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product VersionGit master 
Summary0001400: configure doesn't check for required rpm headers
DescriptionBuilding fails, if rpm headers are missing, but configure doesn't warn the user.
Also the web page doesn't mention that the rpm headers are required.
TagsNo tags attached.
Attached Files
1400-draft-fix.diff (5,224 bytes)   
Index: configure.ac
===================================================================
--- configure.ac	(revision 7534)
+++ configure.ac	(working copy)
@@ -1,9 +1,9 @@
 # Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.57)
+AC_PREREQ(2.61)
 AC_INIT([libextractor], [0.5.20c], [bug-libextractor@gnu.org])
-AC_REVISION($Revision: 1.67 $)
 AM_INIT_AUTOMAKE([libextractor], [0.5.20c])
-AM_CONFIG_HEADER(config.h)
+AC_CONFIG_HEADERS([config.h])
+AH_TOP([#define _GNU_SOURCE  1])
 
 LIB_VERSION_CURRENT=2
 LIB_VERSION_REVISION=1
@@ -12,8 +12,6 @@
 AC_SUBST(LIB_VERSION_REVISION)
 AC_SUBST(LIB_VERSION_AGE)
 
-AH_TOP([#define _GNU_SOURCE  1])
-
 # Checks for programs.
 AC_CANONICAL_HOST
 AC_USE_SYSTEM_EXTENSIONS
@@ -22,7 +20,6 @@
 AC_PROG_CPP
 AC_PROG_CXX
 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
-AM_CONDITIONAL(HAVE_CXX, test "x$HAVE_CXX" = "xyes")
 AC_PROG_INSTALL
 AC_PROG_LN_S
 AC_PROG_MAKE_SET
@@ -33,7 +30,6 @@
 AC_PROG_LIBTOOL
 AC_LIB_LTDL
 m4_ifdef([_AC_SEEN_TAG(libltdl)], [], [AC_CONFIG_SUBDIRS(libltdl)])
-AC_CANONICAL_HOST
 AC_SUBST(LTDLINCL)
 AC_SUBST(LIBLTDL)
 AC_SUBST(MKDIR_P)
@@ -152,6 +148,9 @@
  CFLAGS="-fno-strict-aliasing $CFLAGS"
 fi
 
+AM_CONDITIONAL(HAVE_CXX, test "x$HAVE_CXX" = "xyes")
+
+
 # Checks for libraries.
 
 # the library tests that follow should not result in every plugin linking to them,
@@ -169,13 +168,18 @@
 # test if we have vorbisfile
 # prior versions had ov_open_callbacks in libvorbis, test that, too.
 AC_CHECK_LIB(vorbisfile, ov_open_callbacks,
-        [AM_CONDITIONAL(HAVE_VORBISFILE, true)
-         AC_DEFINE(HAVE_VORBISFILE,1,[Have vorbisfile])],
-        [AM_CONDITIONAL(HAVE_VORBISFILE, false)],
+        [AC_CHECK_HEADERS([vorbis/vorbisfile.h],
+         [AM_CONDITIONAL(HAVE_VORBISFILE, true)
+          AC_DEFINE(HAVE_VORBISFILE,1,[Have vorbisfile])],
+         [AM_CONDITIONAL(HAVE_VORBISFILE, false)
+          AC_DEFINE(HAVE_VORBISFILE,0,[lacking vorbisfile])]),
+        [AM_CONDITIONAL(HAVE_VORBISFILE, false)]],
         -lvorbis -logg)
 AC_CHECK_LIB(FLAC, FLAC__stream_decoder_init_stream,
-        [AM_CONDITIONAL(HAVE_FLAC, true)
-         AC_DEFINE(HAVE_FLAC,1,[Have flac])],
+        [AC_CHECK_HEADERS([FLAC/all.h],
+         [AM_CONDITIONAL(HAVE_FLAC, true)
+          AC_DEFINE(HAVE_FLAC,1,[Have flac])],
+         AM_CONDITIONAL(HAVE_FLAC, false))],
         [AM_CONDITIONAL(HAVE_FLAC, false)],
         -logg)
 # test without -logg to see whether we really need it (libflac can be without)
@@ -190,23 +194,31 @@
         -logg)
 
 AC_CHECK_LIB(z, inflate,
-        [AM_CONDITIONAL(HAVE_ZLIB, true)
-        AC_DEFINE(HAVE_ZLIB,1,[Have zlib])],
+        [AC_CHECK_HEADERS([zlib.h],
+         [AM_CONDITIONAL(HAVE_ZLIB, true)
+          AC_DEFINE(HAVE_ZLIB,1,[Have zlib])],
+         AM_CONDITIONAL(HAVE_ZLIB, false))],
         [AM_CONDITIONAL(HAVE_ZLIB, false)])
 
 AC_CHECK_LIB(rpm, rpmReadPackageFile,
-        [AM_CONDITIONAL(HAVE_LIBRPM, true)
-        AC_DEFINE(HAVE_LIBRPM,1,[Have librpm])],
+        [AC_CHECK_HEADERS([rpm/rpmlib.h rpm/rpmts.h],
+         [AM_CONDITIONAL(HAVE_LIBRPM, true)
+          AC_DEFINE(HAVE_LIBRPM,1,[Have librpm])],
+         AM_CONDITIONAL(HAVE_LIBRPM, false))],
         [AM_CONDITIONAL(HAVE_LIBRPM, false)])
 
 AC_CHECK_LIB(bz2, BZ2_decompress,
-        [AM_CONDITIONAL(HAVE_BZ2, true)
-        AC_DEFINE(HAVE_LIBBZ2,1,[Have libbz2])],
+        [AC_CHECK_HEADERS([bzlib.h],
+         [AM_CONDITIONAL(HAVE_BZ2, true)
+          AC_DEFINE(HAVE_LIBBZ2,1,[Have libbz2])],
+         AM_CONDITIONAL(HAVE_BZ2, false))],
         [AM_CONDITIONAL(HAVE_BZ2, false)])
 
 AC_CHECK_LIB(mpeg2, mpeg2_init,
-        [AM_CONDITIONAL(HAVE_MPEG2, true)
-        AC_DEFINE(HAVE_MPEG2,1,[Have libmpeg2])],
+        [AC_CHECK_HEADERS([mpeg2dec/mpeg2.h],
+          [AM_CONDITIONAL(HAVE_MPEG2, true)
+           AC_DEFINE(HAVE_MPEG2,1,[Have libmpeg2])],
+         AM_CONDITIONAL(HAVE_MPEG2, false))],
         [AM_CONDITIONAL(HAVE_MPEG2, false)])
 
 # restore LIBS
@@ -232,14 +244,8 @@
 AC_HEADER_STDC
 AC_HEADER_DIRENT
 AC_HEADER_STDBOOL
-AC_CHECK_HEADERS([fcntl.h netinet/in.h stdlib.h string.h unistd.h libintl.h limits.h stddef.h zlib.h])
-AC_CHECK_HEADERS([ltdl.h iconv.h bzlib.h mpeg2dec/mpeg2.h])
-# fixme, we need to die here if a header is not found!
+AC_CHECK_HEADERS([ltdl.h iconv.h fcntl.h netinet/in.h stdlib.h string.h unistd.h libintl.h limits.h stddef.h zlib.h])
 
-AC_CHECK_HEADERS([vorbis/vorbisfile.h])
-
-AC_CHECK_HEADERS([FLAC/all.h])
-
 # Checks for typedefs, structures, and compiler characteristics.
 AC_C_CONST
 AC_C_INLINE
Index: doc/version.texi
===================================================================
--- doc/version.texi	(revision 7534)
+++ doc/version.texi	(working copy)
@@ -1,4 +1,4 @@
-@set UPDATED 23 June 2008
-@set UPDATED-MONTH June 2008
+@set UPDATED 23 July 2008
+@set UPDATED-MONTH July 2008
 @set EDITION 0.5.20c
 @set VERSION 0.5.20c
Index: acinclude.m4
===================================================================
--- acinclude.m4	(revision 7534)
+++ acinclude.m4	(working copy)
@@ -1,5 +1,3 @@
-AC_PREREQ(2.52)
-
 define(GNUPG_CHECK_ENDIAN,
   [ if test "$cross_compiling" = yes; then
         AC_MSG_WARN(cross compiling; assuming big endianess)
1400-draft-fix.diff (5,224 bytes)   

Activities

Christian Grothoff

2008-08-10 16:24

manager   ~0003626

I have attached an initial draft for a fix for this and other similar issues with missing header files.

Problem is, on my system I get errors with "AM_CONDITIONAL" undefined when I use it. Very strange. Feedback / suggestions for how to fix it would be welcome...

Christian Grothoff

2008-08-25 16:23

manager   ~0003672

Fixed in SVN 7628.

Issue History

Date Modified Username Field Change
2008-08-01 18:38 cyberix New Issue
2008-08-10 16:23 Christian Grothoff File Added: 1400-draft-fix.diff
2008-08-10 16:24 Christian Grothoff Note Added: 0003626
2008-08-10 16:24 Christian Grothoff Status new => feedback
2008-08-25 08:23 Christian Grothoff Status feedback => assigned
2008-08-25 08:23 Christian Grothoff Assigned To => Christian Grothoff
2008-08-25 16:23 Christian Grothoff Status assigned => resolved
2008-08-25 16:23 Christian Grothoff Resolution open => fixed
2008-08-25 16:23 Christian Grothoff Note Added: 0003672
2009-02-20 11:54 Christian Grothoff Status resolved => closed