Bug 26337

Summary: jhbuild libGL make needs a configuration parameter
Product: xorg Reporter: David Gerard <dgerard>
Component: Build/ModularAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: jon.turney
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
URL: http://xorg.freedesktop.org/wiki/JhBuildInstructions
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Patch to xorg.modules to indicate mesa can't handle non-srcdir builds
none
Patch to xorg.modules to describe mesa more accurately none

Description David Gerard 2010-01-30 15:00:48 UTC
OS: Linux, Ubuntu 9.10, x86-64.

jhbuild pulls down libGL from git, then just tells it "make". This results in the makefile giving:

Please choose a configuration from the following list:
[...list of possible kernel configurations...]
Then type 'make <config>' (ex: 'make linux-x86')
Or, run './configure' then 'make'
See './configure --help' for details

- and it errors out.

So either it needs to pick a parameter to feed "make", or we need to run "./autogen.sh" here before "make".

(Despite the error message, there is no file "./configure".)

Workaround: option 4. to shell out, run ./autogen.sh , exit shell, option 1. to continue with the make.
Comment 1 David Gerard 2010-02-01 04:54:53 UTC
Also happens on FreeBSD 8.0.
Comment 2 David Gerard 2010-02-02 17:27:00 UTC
By the way: if you shell out and just run ./autogen.sh , mesa then tries to install to /usr/local, which is the default when a prefix isn't specified. So do:

./autogen.sh --prefix=$HOME/mesa
Comment 3 Dan Nicholson 2010-02-02 19:18:11 UTC
That doesn't make sense. What module set are you using? The one in current util/modular? It should be treated just like all the other autotooled modules. Maybe it tries to be smart because mesa doesn't use automake and there's no Makefile.am.

One thing I notice is that jhbuild has an attribute supports-non-srcdir-builds, and that should be no for mesa. It doesn't handle non-srcdir builds. So, you can add supports-non-srcdir-builds="no" to the autotools element.
Comment 4 David Gerard 2010-02-03 11:10:32 UTC
I'm using the "make everything" instructions on http://xorg.freedesktop.org/wiki/JhBuildInstructions and the build file from git.

I got the directory wrong, I'll kick it a bit and see what can be done to make it behave ...
Comment 5 David Gerard 2010-02-04 14:25:56 UTC
The correct workaround is: shell out, run

  ./autogen.sh --prefix=$HOME/xorg-build

- then exit shell and try again. You might have to run make as well if it's not your first time through.
Comment 6 Jon Turney 2010-03-17 06:25:14 UTC
Created attachment 34142 [details] [review]
Patch to xorg.modules to indicate mesa can't handle non-srcdir builds
Comment 7 Jon Turney 2010-03-17 06:31:10 UTC
Ah, wait.  I suspect the actual issue here is that mesa isn't really autooled.

If you aren't doing 'jhbuild -a', jhbuild looks at the fresh checkout of mesa, sees that there is a Makefile there, and hence thinks it doesn't need to run autogen.sh 
Comment 8 Jon Turney 2010-03-17 07:17:35 UTC
Created attachment 34144 [details] [review]
Patch to xorg.modules to describe mesa more accurately

skip-autogen="never" fixes this by causing autogen.sh to be always run.

Updated patch attach.
Comment 9 Jon Turney 2010-04-02 14:33:18 UTC
Patch applied as commit 22f77aa18c48c17c251aebe72fa78ab4fadbcfa7 to xorg/util/modular should address this issue

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.