mga driver / HALlib

Stefan Dirsch sndirsch at suse.de
Thu Jul 27 09:52:44 PDT 2006


On Thu, Jul 27, 2006 at 06:23:06PM +0200, Stefan Dirsch wrote:
> On Thu, Jul 27, 2006 at 03:45:06PM +0200, Stefan Dirsch wrote:
> > I wonder how the HAL module in the mga driver could be built with
> > X.Org 7.1. Looks like this isn't intended any more. There is nothing
> > provided in configure/Makefile.am files to still build the mga_hal_drv
> > module.
> > 
> > The driver still tries to load it as you can see in mga_driver.c
> > (...xf86LoadSubmodule (... "mga_hal") ...) when USEMGAHAL is set. So
> > the code has not been dropped yet. And it still seems to be required
> > for features like MergedFB as you can see in the driver output, when
> > you try to enable MergedFB.
> > 
> >   ' HALLib not loaded! NOT using "Merged Framebuffer" mode. '
> 
> I tried this one.
> 
> ld --whole-archive -shared -soname mga_hal_drv.so \
>    -o /usr/lib/xorg/modules/drivers/mga_hal_drv.so \
>    HALlib/mgaHALlib.a
>
> and took the appropriate binding.h and set -DUSEMGAHAL for building
> the mga_drv module. But this results in
> 
> (II) Loading sub module "mga_hal"
> (II) LoadModule: "mga_hal"
> (II) Loading /usr/lib/xorg/modules/drivers/mga_hal_drv.so
> dlopen: /usr/lib/xorg/modules/drivers/mga_hal_drv.so: undefined symbol: HALPChangePixelClock
> (EE) Failed to load /usr/lib/xorg/modules/drivers/mga_hal_drv.so
> (II) UnloadModule: "mga_hal"
> (EE) MGA: Failed to load module "mga_hal" (loader failed, 7)
> (==) MGA(0): Matrox HAL module not loaded - using builtin mode setup instead
> 
> Any hints would be appreciated.

Using 

gcc -m32 \
    -o $RPM_BUILD_ROOT/usr/%{_lib}/xorg/modules/drivers/mga_hal_drv.so \
    -shared -nostdlib \
    .libs/mga_halmod.o .libs/clientlx.o HALlib/mgaHALlib.a \
    -Wl,-Bstatic -lgcc -Wl,-Bdynamic

instead works for me. Stolen from the output of make generated by old
Imakefile ...

Best regards,
Stefan

Public Key available
------------------------------------------------------
Stefan Dirsch (Res. & Dev.)   SUSE LINUX Products GmbH
Tel: 0911-740 53 0            Maxfeldstraße 5
FAX: 0911-740 53 479          D-90409 Nürnberg
http://www.suse.de            Germany 
------------------------------------------------------



More information about the xorg mailing list