On Wed, 2010-03-24 at 11:25 -0700, Dan Nicholson wrote: > On Wed, Mar 24, 2010 at 11:11 AM, Gaetan Nadon <[email protected]> wrote: > > The current value is based on $lib which is based on the driver package > > $prefix. The driver object code will be installed in the correct xserver > > location > > only if both the driver package and the xserver package have the same > > prefix. > > > > This patch obtains the drivers object code location from the installed > > xserver > > package through the xorg-server.pc file. The server default location for > > drivers > > object code is based on its own $lib but this may have been changed at > > configuration > > time (using with-module-dir). In any case, the resulting net location is > > returned. > > > > Signed-off-by: Gaetan Nadon <[email protected]> > > --- > > configure.ac | 4 ++-- > > 1 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/configure.ac b/configure.ac > > index c1fae22..c3f33a2 100644 > > --- a/configure.ac > > +++ b/configure.ac > > @@ -55,9 +55,9 @@ AH_TOP([#include "xorg-server.h"]) > > > > AC_ARG_WITH(xorg-module-dir, > > AC_HELP_STRING([--with-xorg-module-dir=DIR], > > - [Default xorg module directory > > [[default=$libdir/xorg/modules]]]), > > + [Default xorg module directory > > [[default=$moduledir/xorg/modules]]]), > > [moduledir="$withval"], > > - [moduledir="$libdir/xorg/modules"]) > > + [moduledir=`$PKG_CONFIG --variable=moduledir xorg-server`]) > > > > AC_ARG_ENABLE(dri, AC_HELP_STRING([--disable-dri], > > [Disable DRI support [[default=auto]]]), > > -- > > 1.6.0.4 > > > > My assumption is that the drivers can only be loaded if they are located > > in the running server xorg/modules/drivers directory that it knows > > about at configuration time. If that is correct, the only value that > > with-xorg-module-dir can be given is the value that the server returns > > through the xorg-server .pc file. > > You can set the module path with -modulepath on the command line or > ModulePath in a Files section in xorg.conf.
I wasn't aware of that. It's an additional workaround for a bad default
value.
> So, you can definitely
> handle drivers that are in a different prefix. More problematic, this
> will break distcheck unless you set it back under $prefix with
> DISTCHECK_CONFIGURE_FLAGS. This is like the chat we had about drivers
> installing headers outside the xorg $includedir (which we might want
> to revisit since it's doing the opposite unnecessarily).
I think this issue with distcheck (which fails for a user without write
permission in moduledir) is quite
exaggerated. All instructions I have seen on the net for people
installing drivers require them to have root password.
For someone who is creating a tarball to be published to others, it's
the least to ask. Running this
target is mandatory, there are other ways of testing.
In any case, there 5 easy workarounds for distcheck:
- configure the driver package with moduledir=<some comfy
location> and then run distcheck.
- configure the driver package with libdir=<some comfy location>
and then run distcheck.
- we add DISTCHECK_CONFIGURE_FLAGS =
--with-xorg-module-dir='$${libdir}/xorg/modules'.
- we add DISTCHECK_CONFIGURE_FLAGS =
--libdir='$${libdir}/xorg/modules'.
- run 'make all dist distcheckclean' in a VPATH build which
would be the exact equivalent of distcheck.
The question remains: would `$PKG_CONFIG --variable=moduledir
xorg-server` not be a "better" default option?
- The configuration would not fail when different prefixes are
used for driver and xserver (without config swicth)
- Thousands of people would no longer be forced to hunt for and
supply the correct driver location
- All drivers could be build with no additional configure
switches
- With one workaround above, the few people creating tarball
without password would not be affected.
Example of instructions found on the net:
./configure --with-xorg-module-dir=/usr/lib/xorg/modules
make && sudo make install
Thanks
>
> > After searching in 2005 archives, I found out some distro did not install
> > our .pc files or did not install the pkg-config package. Is it still the
> > case?
> > Would all of our build not fail?
> > http://lists.x.org/archives/xorg/2006-November/019654.html
>
> I doubt it would happen nowadays, but you could easily make it
> fallback to $libdir/xorg/modules if nothing came from pkg-config.
>
> --
> Dan
signature.asc
Description: This is a digitally signed message part
_______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
