GNOME Bugzilla – Bug 706497
"configure without autotools" option doesn't work
Last modified: 2013-09-19 17:00:16 UTC
knocte@ulises:~/Documents/Code$ git clone git://git.gnome.org/jhbuild Cloning into 'jhbuild'... remote: Counting objects: 37214, done. remote: Compressing objects: 100% (14902/14902), done. remote: Total 37214 (delta 28750), reused 28613 (delta 22178) Receiving objects: 100% (37214/37214), 7.31 MiB | 12 KiB/s, done. Resolving deltas: 100% (28750/28750), done. knocte@ulises:~/Documents/Code$ cd jhbuild/ knocte@ulises:~/Documents/Code/jhbuild$ ./autogen.sh ./autogen.sh: line 158: gnome-autogen.sh: command not found I am going to attach a patch.
Created attachment 252552 [details] [review] Proposed patch
Review of attachment 252552 [details] [review]: I'll be honest the autogen.sh makes my head spin...a lot of this looks plausible. But: ::: autogen.sh @@ +223,3 @@ +fi +if [ $force_autotools -eq $TRUE -a $autotools_dependencies_met -eq $TRUE ]; then + use_autotools=$TRUE I think this bit will break gnome-ostree again since it doesn't have yelp (i.e. $autotools_dependencies_met=$FALSE). Why can't it just be if $force_autotools -eq TRUE; then use_autotools=$TRUE ?
Created attachment 255091 [details] [review] change the NOCONFIGURE check to match the comment above it The comment above the NOCONFIGURE check mentions that autotools should be forced (on?) if NOCONFIGURE is specified, but the check currently does "test -z NOCONFIGURE" before setting have_autotools to 0, which then results in calling configure_with_autotools() next. The attached patch makes the NOCONFIGURE test match the comment, which fixes the --simple-install mode (and just running autogen.sh without the required dependencies) but I guess that this breaks gnome-continuous? Colin, can you confirm whether the logic should match the comment above the NOCONFIGURE check?
Review of attachment 255091 [details] [review]: No, this won't work for continuous because the non-autotools build doesn't generate a configure script. Continuous is extremely rigorous in that EVERY build works in exactly this way (there are no spec files/debian/rules): env NOCONFIGURE=1 ./autogen.sh ./configure --prefix=/usr ... make make install DESTDIR= Following http://people.gnome.org/~walters/docs/build-api.txt However, let's unbreak the other case, I think I can come up with an alternative patch which just disables the yelp parts of the build for Continuous.
Created attachment 255121 [details] [review] Proposed patch v2 (In reply to comment #2) > Review of attachment 252552 [details] [review]: > But: > > ::: autogen.sh > @@ +223,3 @@ > +fi > +if [ $force_autotools -eq $TRUE -a $autotools_dependencies_met -eq $TRUE ]; > then > + use_autotools=$TRUE > > I think this bit will break gnome-ostree again since it doesn't have yelp (i.e. > $autotools_dependencies_met=$FALSE). Fixed? If it doesn't have yelp, it won't work, because yelp is a hard dependency on the autotools option (if it is not, then the whole autogen.sh was very broken in the first place).
Er sorry David, your patch (on top of the other one) is right. I also added one on top of yours which addresses comment 2. So hopefully we're in a better state now...
(In reply to comment #5) > If it doesn't have yelp, it won't work, because yelp is a hard dependency on > the autotools option (if it is not, then the whole autogen.sh was very broken > in the first place). yelp is a hard dependency in that autoconf will fail unless it's present in the buildroot because we use the YELP_HELP_INIT macro. But yelp won't actually *work* without docbook last I checked, but that's fine because --enable-doc-installation defaults to no. So...I think we're in a better state now, all patches pushed: https://git.gnome.org/browse/jhbuild/commit/?id=3d03dc2487d128b949cde5e8b3b5a06d9ab40f89 https://git.gnome.org/browse/jhbuild/commit/?id=7ab604b3a6ecbe9f6b92474f646d5ce57b91e072 https://git.gnome.org/browse/jhbuild/commit/?id=feab355cb928a2b4aba0271e8b211f886a5a3eeb
*** Bug 708108 has been marked as a duplicate of this bug. ***