-----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.

Reply via email to