Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 9778 - New Submission - Glide3 library for 3dfx Voodoo/Banshee cards built from CVS sources
Summary: New Submission - Glide3 library for 3dfx Voodoo/Banshee cards built from CVS ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Martin Schlemmer (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-10-27 13:59 UTC by Ron
Modified: 2003-01-28 00:30 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
glide3-cvs.ebuild (glide3.tar.gz,839 bytes, text/plain)
2002-10-27 14:03 UTC, Ron
Details
patches glide-v3-r3.ebuild to use the following atachment (glide-ebuild.patch,974 bytes, patch)
2002-10-31 15:43 UTC, Ron
Details | Diff
patches swlibs/include/make/makefile.autoconf.bottom to get sane default optimisation (defaultflags.patch,464 bytes, patch)
2002-10-31 15:46 UTC, Ron
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ron 2002-10-27 13:59:10 UTC
Hi,

Please find attached glide3.tar.gz containing glide3-cvs.ebuild

This is a CVS ebuild for the glide3 library as used by 3dfx Voodoo and Banshee
cards.

The currently used glide-v3 ebuild builds from extremely out of date sources,
and, IMHO really needs replacing with something a bit more up to date.

Glide3 (and swlibs) from CVS is very stable and will take quite a lot of
compiler optimisation in my experience, it also offers much enhanced performance
over the last official release - extremely useful for games like Quake3 :).

This ebuild depends on Xfree and should probably accompany glide-v3 in media-libs.

Ron
Comment 1 Ron 2002-10-27 14:03:53 UTC
Created attachment 5086 [details]
glide3-cvs.ebuild
Comment 2 Martin Schlemmer (RETIRED) gentoo-dev 2002-10-29 14:38:54 UTC
 1)  No glide3.tar.gz is attatched.

 2) glide CVS have not changed in a year or more .. check the dates of
    the files you get from there ...  meaning its the same as what we
    got (except if the cvs repository moved, in which case it will be
    better if you gave that location.).
Comment 3 Ron 2002-10-31 15:41:02 UTC
1)
Apologies for the bad attachment, I followed the "The Contributing Ebuilds
Guide" to the letter and did wonder about the fact that I couldn't view/get the
attachment properly.

2)
I have since checked CVS sources vs gentoo tarballs and you're right they're the
same, I have just always built glide manually instead of using the build scripts.

I have done some further investigation and have attached two plain text patches.

The first "glide-ebuild.patch" is a patch to be applied to
glide-v3-3.10-r3.ebuild. This will cause the second attached patch
"defaultflags.patch" to be applied, it also sets/unsets the myarch variable. The
"defaultflags.patch" patch should be placed in $PORTDIR/media-libs/glide-v3/files/

The "defaultflags.patch", sets the GLIDE_DEBUG_GCFLAGS variable to "-O3
-march=${myarch}" and replaces the hardcoded "GLIDE_DEBUG_GCFLAGS = -O6 -m486"
which is the root cause of the appalling performance with the standard ebuild of
the glide library.
Comment 4 Ron 2002-10-31 15:43:04 UTC
Created attachment 5249 [details, diff]
patches glide-v3-r3.ebuild to use the following atachment
Comment 5 Ron 2002-10-31 15:46:07 UTC
Created attachment 5250 [details, diff]
patches swlibs/include/make/makefile.autoconf.bottom to get sane default optimisation
Comment 6 Martin Schlemmer (RETIRED) gentoo-dev 2002-10-31 16:11:48 UTC
I have one problem with this .... checkout bug #2012.  Aparently compiling
with different CFLAGS causes it to be very unstable for many users.
Comment 7 Ron 2002-10-31 17:58:07 UTC
Most peculiar, I have no problems passing "-march=pentium3 -O3 -mmmx -msse
-mfpmath=sse -pipe -fomit-frame-pointer -funroll-loops -fthread-jumps
-fforce-addr -falign-functions=4 -falign-jumps=4 -w -fprefetch-loop-arrays" into
the glide build.

One thing I did see though when doing "gcc -v -Q -m486 -O6 test.c -o test"
(where test.c == Hello World :) gcc 3.2 (can't speak for gcc 2.9x as I no longer
have it installed) reports using -march=i386 -mcpu=i486 as part of the
optimisations, so maybe that's why *shrugs*.

One other thing to consider is that bug #2012 may have something to do with bug
#3735 - but that's just a stab in the dark...

However, poor performance is better than no performance, so if instability is a
major problem things are probably best left alone. Unless of course you wanted
to include it as an ACCEPT_KEYWORDS="~x86" build to try to get more feedback.