Discussion:
[Grep-devel] buildbot failure in OpenCSW Buildbot on ggrep-solaris10-sparc
(too old to reply)
Paul Eggert
2017-08-21 00:08:53 UTC
Permalink
Raw Message
The error lies in #72 in your configure.ac
Thanks for helping to debug it. configure.ac is itself OK; the problem is that
build-aux/git-version-gen is a shell script that uses the construct ${v#-g*} in
line 170, and Solaris 10 /bin/sh does not understand that construct.

It seems to me that the Buildbot configuration is still at fault here, because
the code in question runs before 'configure' is invoked. We do not attempt to be
portable to arbitrary development environments in the pre-configure stage of the
build, as it is reasonable to assume that developers are running recent-enough
versions of Autoconf, M4, Git, etc., and it's not necessary to run these tools
to build from distribution tarballs.

Because there is an easy fix in Gnulib I installed the attached patch. However,
in the long run if you want to continue to build on Solaris 10 I expect you will
need to fix the Buildbot procedure so that it does only './configure; make' on
Solaris 10. That is what I do, when I test on Solaris 10.
Dagobert Michelsen
2017-08-21 09:43:44 UTC
Permalink
Raw Message
Hi Paul,
The error lies in #72 in your configure.ac
Thanks for helping to debug it. configure.ac is itself OK; the problem is that build-aux/git-version-gen is a shell script that uses the construct ${v#-g*} in line 170, and Solaris 10 /bin/sh does not understand that construct.
It seems to me that the Buildbot configuration is still at fault here, because the code in question runs before 'configure' is invoked. We do not attempt to be portable to arbitrary development environments in the pre-configure stage of the build, as it is reasonable to assume that developers are running recent-enough versions of Autoconf, M4, Git, etc., and it's not necessary to run these tools to build from distribution tarballs.
Definitely, that is why I invoke „bootstrap“ with /opt/csw/bin/bash and $SHELL is set
correctly. Shouldn’t $SHELL be used for the tools invoked from „bootstrap“?
Because there is an easy fix in Gnulib I installed the attached patch. However, in the long run if you want to continue to build on Solaris 10 I expect you will need to fix the Buildbot procedure so that it does only './configure; make' on Solaris 10. That is what I do, when I test on Solaris 10.
I am not sure what needs adjustment here, from your comment I read that the PATH
should include something like bash as /bin/sh which I cannot provide, or did I
missing something here?

Your fix worked and there are now 2 test failures:
https://buildfarm.opencsw.org/buildbot/builders/ggrep-solaris10-sparc/builds/94


Best regards

— Dago


--
"You don't become great by trying to be great, you become great by wanting to do something,
and then doing it so hard that you become great in the process." - xkcd #896
Paul Eggert
2017-08-21 19:52:00 UTC
Permalink
Raw Message
Post by Dagobert Michelsen
Shouldn’t $SHELL be used for the tools invoked from „bootstrap“?
Not particularly. SHELL is set up by configure and this is pre-configure. We
don't want to worry about pre-configure code that can be done on a machine with
a standard /bin/sh.
Post by Dagobert Michelsen
https://buildfarm.opencsw.org/buildbot/builders/ggrep-solaris10-sparc/builds/94
Thanks, fixed with the attached. This problem was introduced in Erik Skultety's
patch so I'll cc him.

Loading...