Gentoo Archives: gentoo-alt

From: Michael Haubenwallner <michael.haubenwallner@×××××××.at>
To: gentoo-alt@l.g.o
Subject: Re: [gentoo-alt] [prefix][solaris] shell problem in portage/configure
Date: Thu, 19 Apr 2007 15:27:44
Message-Id: 1176996627.7328.71.camel@localhost
In Reply to: Re: [gentoo-alt] [prefix][solaris] shell problem in portage/configure by Fabrizio Listello
On Thu, 2007-04-19 at 16:33 +0200, Fabrizio Listello wrote:
> I've found another similar (?) shell problem during compiling of MPlayer. > [...] > >>> Compiling source in > /opt/gentoo/var/tmp/portage/media-video/mplayer-1.0_rc1-r2/work/MPlayer-1.0rc1 > ... > * QA Notice: USE Flag 'ppc64' not in IUSE for media-video/mplayer-1.0_rc1-r2 > Detected operating system: SunOS > Detected host architecture: i386 > Checking for i386-pc-solaris2.11-gcc version ... 4.1.2, ok > [...] > Checking for tga ... no > Checking for DirectFB ... ./configure: syntax error at line 3756: > `_dfb_version=$' unexpected > > [...] > > And this is the line with the problem: > 3756: _dfb_version=$(dfb_version $_dfb_major $_dfb_minor $_dfb_micro) > > The mplayer configure script uses /bin/sh which is the Bourne shell > and not Bourne-again shell.
It is defined that configure-scripts need to work with bourne shells (/bin/sh). And "$(foo)" is bash (or ksh) style. Replacing line 3756 like this should work: - _dfb_version=$(dfb_version $_dfb_major $_dfb_minor $_dfb_micro) + _dfb_version=`dfb_version $_dfb_major $_dfb_minor $_dfb_micro`
> > > I'm proposing to patch the "configure" script with a single line in > ebuild unpack function:
This is the quick&dirty hack, the goal should be to fix the origin of that line: *) maybe configure.in, then it should be reported upstream, *) maybe a patch already in the tree, then fix that patch.
> > --- mplayer-1.0_rc1-r2.ebuild.mio 2007-04-19 16:33:28.545169753 +0200 > +++ mplayer-1.0_rc1-r2.ebuild 2007-04-19 16:32:20.262831061 +0200 > @@ -131,5 +131,5 @@ > SLOT="0" > LICENSE="GPL-2" > -KEYWORDS="~amd64 ~ia64 ~ppc-macos ~x86 ~x86-macos ~x86-solaris" > +KEYWORDS="~amd64 ~ia64 ~ppc-macos ~x86 ~x86-macos" > > pkg_setup() { > @@ -204,8 +204,4 @@ > sed -i -e "s:-O4:-O4 -D__STDC_LIMIT_MACROS:" configure > > - # Solaris /bin/sh fix > - if [[ ${CHOST} == *-solaris* ]] ; then > - sed -e "s:^#!.*/bin/sh:#!${EPREFIX}/bin/sh:" -i configure > - fi
Maybe setting CONFIG_SHELL=${EPREFIX}/bin/bash could work too ? /haubi/
> } > > > On 4/14/07, Fabian Groffen <grobian@g.o> wrote: > > On 12-04-2007 13:15:08 +0200, Michael Haubenwallner wrote: > > > On Thu, 2007-04-12 at 12:39 +0200, Fabian Groffen wrote: > > > > On 12-04-2007 10:25:46 +0200, Michael Haubenwallner wrote: > > > > > Hi, > > > > > > > > > > with solaris /bin/sh, this does not work: > > > > > echo 1 | grep -E ^[[:digit:]]+$ > > > > > > > > I guess this is Solaris <10? > > > > > > exactly, Thanks. > > > > I fixed this one or two days ago. If it's not in the latest portage, > > then it'll be in the portage that I'll roll out today. > > > > -- > > Fabian Groffen > > Gentoo on a different level > > > > -- > > gentoo-alt@g.o mailing list > > > > > > > -- > > FList
-- gentoo-alt@g.o mailing list

Replies

Subject Author
Re: [gentoo-alt] [prefix][solaris] shell problem in portage/configure Fabian Groffen <grobian@g.o>