-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
"Any day now" X-modular (xorg-x11-7.0-xx) will be unmasked. I have
attached a few notes aimed at sparc users (or at anyone who requires
(mod 64) address alignment for 64-bit data items.) I believe the note to
be accurate, but I do not warrant it against defects, omissions, etc. (so
to speak). It is also available on-line at:
http://dev.gentoo.org/~fmccor/files/X-modular.sparc-upgrade
Reason for this sparc-specific is contained in point -6- in the note.
There is a bug in the xorg-server build (see
https://bugs.freedesktop.org/show_bug.cgi?id=5622 for details) which
necessitates use of an extra CFLAG --- -D__GLX_ALIGN64 --- when building
xorg-x11-7.0-xx. (This is not strictly correct. By chance, you might
not need this extra -D... added to your CFLAGS. But if you do need it and
do not add it, the end result will be very unpleasant for you.)
If you don't run xorg-x11 keyworded ~sparc, you may safely discard this
email before reading.
Hope this is useful (and mostly correct),
Regards,
Ferris
- --
Ferris McCormick (P44646, MI) <[EMAIL PROTECTED]>
Developer, Gentoo Linux (sparc, devrel)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
iD8DBQFD2+cXQa6M3+I///cRArVqAKCyrTvLCNDsG2iyon/1S8nyguMnyACfaI0P
Bpub77Ljm8zUejpCOr2c34c=
=vCIT
-----END PGP SIGNATURE-----
Soon X-modular (a.k.a. xorg-7.0) will be removed from
/usr/portage/profiles/package.mask: it
will be package-unmasked. This means that if you are running a ~sparc system
(or if you are
running with xorg-x11 in your /etc/portage/package.keywords file), some day
soon after you
'emerge --sync' portage is going to want to upgade xorg-x11 to xorg-x11-7.0-r1
(or whatever
release version is current at the time of unmasking --- -r1 is current as of
28.i.06).
This will be a shock. X-modular currently comprises 290 separate ebuilds, and
xorg-x11-7.0
itself requires many of them. This note assumes that (1) you know what
X-modular is, (2) you
are one of the people whose system will want to install it, and (3) you have
been paying
attention to the relevant instructions and how-to documents as they have been
posted and
advertised.
If you want to see what is in X-modular, the current list of files may be
viewed at
http://dev.gentoo.org/~fmccor/files/X-modular.files
The very basic instructions go soemthing like this:
1. Add a 'VIDEO_CARDS' entry to /etc/make.conf to tell xorg-x11 what video
driver(s) you want
built. On the system I am writing this note on,I have:
VIDEO_CARDS='sunffb dummy fbdev'
2. Add an 'INPUT_DRIVERS' entry to /etc/make.conf to tell xorg-x11 what
(X-related) input drivers
you need. On that same system as above, I have:
INPUT_DEVICES='keyboard mouse -elographics'
(Don't worry about '-elographics' --- you shouldn't need it).
On a different system, I have
INPUT_DEVICES='evdev keyboard mouse'
(Don't worry about 'evdev' --- if you don't know what it is, you don't have
one. I don't have one,
either; it is there for regression testing.)
3. quickpkg xorg-x11 # The sensible and prudent user will do this
4. emerge -C xorg-x11 # Clean out xorg-x11 monolithic
5. If necessary (i.e., you run a KEYWORDS='sparc' system but build xorg-x11 as
~sparc),
go ahead and add the files at
http://dev.gentoo.org/~fmccor/files/X-modular.files to your
/etc/package.keywords file.
*******************************************************************************************
*******************************************************************************************
* N O T E
*
*******************************************************************************************
*******************************************************************************************
6. SPARC (or other architecture requiring (mod 64) alignment for 64-bit data
types) ONLY:
Add -D__GLX_ALIGN64 to your CFLAGS in /etc/make.conf. Yes, this is ugly. It is
the
simplest way to avoid a bug in the xorg-server (actually, in libglx.so, which
is what you
get if you "Load 'glx'" in your xorg.conf file.). This is not needed on all
systems; see
https://bugs.gentoo.org/show_bug.cgi?id=111361#24 and
https://bugs.freedesktop.org/show_bug.cgi?id=5622 for details. Note, however,
that what it
does is force glx to understand that the underlying hardware requires (mod 64)
address alignment
for these data types. Depending on your compiler version (profile, actually),
other CFLAGS,
and perhaps the phase of the moon, without this Mesa (libGL) programs might or
might not work.
THE FAILURE IS CATASTROPHIC! At best, if you encounter the bug Xserver will
take down all of
X with a Bus error. (On one of my systems, it also turns the console (non-X)
into a display
using black-on-dark-blue-background, which is very hard to read.) So, before
building read the
referenced bugs and choose the way you like best to make sure __GLX_ALIGN64 is
defined for your
build.
*******************************************************************************************
*******************************************************************************************
* / N O T E
*
*******************************************************************************************
*******************************************************************************************
7. emerge -pv xorg-x11
Take note of what fonts and applications are installed and compare with what
you need on YOUR
system. Anything that is missing, you will have to install by hand.
If you like what you see, go ahead and 'emerge xorg-x11'.
8. Edit your /etc/X11/xorg.conf file to remove (the now incorrect) RgbPath and
ModulePath
entries (They are now RgbPath "/usr/share/X11/rgb" and ModulePath
"/usr/lib/xorg/modules",
but you don't need them.)
9. revdep-rebuild
In one or two instances, library versions are updated (libXaw, I believe, but
am not sure),
and there is no reason to believe that xorg-x11 installed all the libraries YOU
need.
10. emerge and fonts, applications, or whatever you still need. You did make a
list in step 7
above, didn't you?
That's it. The upgrade to X-modular actually goes more smoothly than I have
made it sound; I have
installed it on five sparc systems (2 U2-SMP systems, 2 U60-SMP systems, 1
SB1000-SMP system) with
few difficulties. The libglx bug noted in point -6- has by far been the
nastiest problem I have
run into.
Final note. It is possible that in your upgrade, you will run into missing
~sparc keywords. We
----- -----
have made every effort to keyword as ~sparc everything you could possibly want
from X-modular,
but doubtless some packages have been missed. If this happens, please (1)
record it on the
tracking bug https://bugs.gentoo.org/show_bug.cgi?id=111361 (2) send an email
to #gentoo-sparc
(or to me) requesting ~sparc-ification. We will correct such oversights almost
instantly.