After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 605930 - [shave] common/shave not existing yet when configure checks need it
[shave] common/shave not existing yet when configure checks need it
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 0.10.26
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 606243 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-01-02 22:22 UTC by Philip Jägenstedt
Modified: 2010-01-06 19:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
one-line fix (829 bytes, patch)
2010-01-03 00:22 UTC, Philip Jägenstedt
rejected Details | Review

Description Philip Jägenstedt 2010-01-02 22:22:48 UTC
not doing this causes a compilation error in check_log.c, which will redefine localtime_r if HAVE_LOCALTIME_R is not set
Comment 1 Philip Jägenstedt 2010-01-03 00:22:40 UTC
Created attachment 150715 [details] [review]
one-line fix

ooops, forgot to attach
Comment 2 Tim-Philipp Müller 2010-01-03 12:18:46 UTC
I've seen reports of these compilation errors before, but IIRC they usually went away with an autogen/autoregen or after a 'touch config.h'.

(Isn't time.h always present as per the C standard? Does it make sense for the addition the to AC_CHECK_HEADERS check to affect the AC_CHECK_FUNCS check?)
Comment 3 Sebastian Dröge (slomo) 2010-01-04 09:00:07 UTC
Same problem here but the patch is not the solution. Seems that shave is just broken in some way or another :)

[...]
configure:20052: checking for localtime_r
configure:20052: /bin/sh /home/slomo/projects/gstreamer/head/gstreamer/common/shave cc gcc -o conftest -g -O2   conftest.c  -lrt -ldl >&5
/bin/sh: /home/slomo/projects/gstreamer/head/gstreamer/common/shave: No such file or directory
configure:20052: $? = 127
[...]
Comment 4 Philip Jägenstedt 2010-01-04 14:58:25 UTC
Perhaps I just got lucky with a recompile then.
Comment 5 Tim-Philipp Müller 2010-01-06 17:39:17 UTC
I'm guessing SHAVE_INIT is changing the configure test environment (CC etc.) to use shave, but common/shave is only created later via AC_OUTPUT, so all checks that invoke a compiler will fail.

Moving SHAVE_INIT after AG_GST_CHECK_CHECKS fixes this for me:

commit 0c1e45acf32be3f6afeb65d26b43bfd8a90bb88c
Author: Tim-Philipp Müller <tim.muller@collabora.co.uk>
Date:   Wed Jan 6 17:35:07 2010 +0000

    configure: move SHAVE_INIT behind all checks
    
    Move SHAVE_INIT behind all other checks, in particular AG_GST_CHECK_CHECKS.
    This should fix problems with header checking and checking for localtime_r,
    which causes compilation errors with clean checkouts where common/shave has
    not been created yet when those checks are run. It seems like SHAVE_INIT
    changes the environment so that checks depending on a compiler need shave
    to exist at that point, which will fail if AC_OUTPUT hasn't created it
    yet.
    
    Fixes #605930.
Comment 6 Tim-Philipp Müller 2010-01-06 19:16:14 UTC
Guess I should actually push this into the right repo... => commit 9a4f0d8ca31af2b48313d19b2dc67a5bea5c50f6 now.
Comment 7 Tim-Philipp Müller 2010-01-06 19:16:16 UTC
*** Bug 606243 has been marked as a duplicate of this bug. ***