[ports-i386@pointyhat.freebsd.org: linux_dri-devel-6.5.20060624
failed on i386 4]
John E Hein
jhein at timing.com
Mon Aug 7 16:50:21 UTC 2006
Boris Samorodov wrote at 18:39 +0400 on Aug 7, 2006:
> On Mon, 7 Aug 2006 05:59:11 -0400 Kris Kennaway wrote:
>
> > FYI; can you please investigate and/or report to the developers? If
> > you are already aware of this problem but do not yet have a fix,
> > please mark the port BROKEN in the appropriate case, so that users do
> > not unexpectedly encounter it.
>
> > See http://pointyhat.freebsd.org for the full log.
>
> This is another port which contains both bz2 and gz distfiles and
> doesn't extract at 4.x. I marked it BROKEN while searching for a good
> solution.
>
> Thanks, Kris.
It's only semi-luck that it extracts in 5.x+.
The extract command does gzip -nf -9 -dc Mesa-linux-bin-6.5.tar.bz2
(which silently does nothing) and pipes it to tar.
However, on 5.x+ the tar command is bsdtar by default. bsdtar looks
into its input and determines that it has been bzip'd and figures out
how to handle it. The default 4.x tar (gnu tar) does not and needs
the -j arg.
Since you can't have more than one EXTRACT_SUFX, ports with a mix of
.gz & .bz2 need special handling - maybe override do-extract, but the
default do-extract does other stuff that is kludgy to copy/paste into
individual ports. bsd.ports.mk is a little weak on support for this
kind of thing.
Maybe there could be a pre-extract that handles the .bz2 separately.
As a workaround, check OSVERSION and, for 4.x, could override TAR
to use bsdtar and have a BUILD_DEPENDS on archivers/bsdtar.
More information about the freebsd-emulation
mailing list