Diego Biurrun <[email protected]> writes: > On Mon, Aug 06, 2012 at 03:54:10PM +0100, Måns Rullgård wrote: >> Måns Rullgård <[email protected]> writes: >> >>> Now that's debian. What about other systems, like cygwin? Or >> >>> AncientBSD? >> >> >> >> Cygwin comes with nasm 2.08 (of course you can compile yasm there). >> > >> > You can compile yasm anywhere. I thought this whole exercise was about >> > supporting what comes with the systems whenever possible. >> >> OK, so let's make a list. >> >> System nasm yasm >> ---------------------------------------------- >> CentOS 6 2.07 >> Debian stale 2.08.01 0.8.0 >> Debian testing 2.10.01 1.1.0 >> Debian unstable 2.10.01 1.1.0 >> Fedora 14 2.09.03 1.0.1 >> Fedora 15 2.09.07 1.1.0 >> Fedora 16 2.09.08 1.1.0 >> Fedora 17 2.09.08 1.2.0 >> Gentoo 2.10.01 1.2.0 >> OpenSUSE 11 2.07 1.1.0 >> OpenSUSE 12 2.09.08 1.1.0 >> RHEL 6 2.07 >> Scientific Linux 6 2.07 >> Ubuntu Lucid 2.07 0.8.0 >> Ubuntu Maverick 2.08.01 1.1.0 >> Ubuntu Oneiric (11.10) 2.09.08 1.1.0 >> Ubuntu Precise (12.04) 2.09.10 1.1.0 >> >> FreeBSD 9.0 2.09.10 1.1.0 >> NetBSD 2.07 1.2.0 >> OpenBSD 5.1 2.08.01 1.2.0 >> >> OSX (fink) 2.09.10 1.2.0 >> OSX (macports) 2.10.03 1.2.0 >> >> Cygwin 2.08.02 > > Thanks, this is a good overview. The only system missing there is > OS/2, which is of course fringe, but IIRC it has no yasm at all. > > The OS/2 build instructions at > > http://www.edm2.com/index.php/FFmpeg > > recommend grabbing the latest OS/2 nasm snapshot, but apparently they > are no longer prebuilt for OS/2. The 2.10 release has no OS/2 binaries, > but 2.09.10 has, there are 2.10 binaries available from OS/2 forums.
IIRC, yasm simply does not support OS/2 at all, so building it is not an option there. >> With the first set of 5 patches I sent yesterday, we can support nasm >> 2.09.07 or later. >> >> If we ifdef the avx code and somehow work around the %+ bug, we can >> support nasm versions back to 2.08. >> >> If we additionally ifdef sse4 code, we can support nasm 2.07, which >> would cover all the systems above. >> >> Limiting support to 2.09.07 or later would require installing unpackaged >> nasm/yasm versions on Cygwin and RHEL-like distros. A few more would >> need to install yasm rather than nasm. >> >> Restoring support for nasm 2.08 would leave only RHEL in the cold. > > We could turn this around as well and say that requiring nasm 2.09.07 > or yasm 0.8.0 would allow us to drop the avx ifdeffery. Also, the test > in configure would become very simple: the avx test would become the > yasm/nasm test. > > This would only leave the RHEL-derived distros and Cygwin out in the > cold, but supporting nasm 2.08 or even 2.07 requires adding some very > ugly hacks to the codebase, which have a high chance of getting > rejected. > > So I would suggest making yasm 0.8.0 and nasm 2.09.07 the minimum > requirement. This covers all current systems except RHEL 6 derivatives > and Cygwin while having minimal impact on our codebase. Sounds like > a good deal to me. I don't think RHEL matters much, but supporting out of the box cygwin might gains us some PR points. The patch I posted for nasm 2.08 support is ugly, and I'd probably reject it myself if someone else sent it. That doesn't mean that a better fix is impossible, someone just has to find it. You're giving up a little too easily. -- Måns Rullgård [email protected] _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
