Bug 26342 - xf86-video-impact can't find xf86Resources.h
xf86-video-impact can't find xf86Resources.h
Status: RESOLVED FIXED
Product: xorg
Classification: Unclassified
Component: Driver/other
git
All Linux (All)
: medium normal
Assigned To: Xorg Project Team
Xorg Project Team
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-01-30 18:30 UTC by David Gerard
Modified: 2010-10-29 16:32 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Gerard 2010-01-30 18:30:57 UTC
I'm doing a complete source build with jhbuild, so header files should be available by the time it reaches this driver. The build dies with:

make  
make  all-recursive
make[1]: Entering directory `/home/fun/git/xorg/driver/xf86-video-impact'
Making all in src
make[2]: Entering directory `/home/fun/git/xorg/driver/xf86-video-impact/src'
source='impact_cmap.c' object='impact_cmap.lo' libtool=yes \
	DEPDIR=.deps depmode=none /bin/bash ../depcomp \
	/bin/bash ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -fvisibility=hidden -I/home/fun/xorg/include/xorg -I/home/fun/xorg/include/pixman-1   -g -O2 -c -o impact_cmap.lo impact_cmap.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -fvisibility=hidden -I/home/fun/xorg/include/xorg -I/home/fun/xorg/include/pixman-1 -g -O2 -c impact_cmap.c  -fPIC -DPIC -o .libs/impact_cmap.o
In file included from impact_cmap.c:14:
impact.h:19:27: error: xf86Resources.h: No such file or directory
make[2]: *** [impact_cmap.lo] Error 1
make[2]: Leaving directory `/home/fun/git/xorg/driver/xf86-video-impact/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/fun/git/xorg/driver/xf86-video-impact'
make: *** [all] Error 2

I would assume this was an error in the jhbuild process, as it's a MIPS-only driver and I'm on x86-64 here.

However, xf86Resources.h doesn't appear to be built, so it may be the driver asking for something that doesn't exist any more.
Comment 1 Alan Coopersmith 2010-02-01 10:33:33 UTC
xf86Resources.h is no longer provided in Xorg 1.7 and later.

Most drivers had updates to remove dependencies on this, but it
appears impact did not, since it's not in the build.sh script 
used by most developers.

See for example, these xf86-video-ati commits:
http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=21a621c297ac71c65c239ea960c38706e718b91c
http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=63c873cbd4d1d21d9f688028c0900c79fadc42c1
Comment 2 Jesse Adkins 2010-10-11 19:07:43 UTC
The problem is that other drivers do this :

#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6
#include "xf86Resources.h"
#endif

instead of just including xf86Resources.h, which impact does.

Solving that problem opens up more problems:
impact_driver.c:137: error: ‘XF86_VERSION_CURRENT’ undeclared here (not in a function)
impact_driver.c: In function ‘ImpactFreeRec’:
impact_driver.c:211: warning: ‘Xfree’ is deprecated (declared at /usr/local/include/xorg/os.h:234)
impact_driver.c: In function ‘ImpactProbe’:
impact_driver.c:231: error: ‘resRange’ undeclared (first use in this function)
impact_driver.c:231: error: (Each undeclared identifier is reported only once
impact_driver.c:231: error: for each function it appears in.)
impact_driver.c:231: error: expected ‘;’ before ‘range’
impact_driver.c:256: error: expected expression before ‘range’
impact_driver.c:260: error: expected expression before ‘range’
impact_driver.c:280: warning: ‘Xfree’ is deprecated (declared at /usr/local/include/xorg/os.h:234)
impact_driver.c: In function ‘ImpactPreInit’:
impact_driver.c:365: warning: assignment from incompatible pointer type
impact_driver.c:366: warning: assignment from incompatible pointer type
impact_driver.c:377: warning: assignment from incompatible pointer type
impact_driver.c:378: warning: assignment from incompatible pointer type
impact_driver.c:394: warning: ‘Xalloc’ is deprecated (declared at /usr/local/include/xorg/os.h:221)
impact_driver.c:493: warning: ‘Xfree’ is deprecated (declared at /usr/local/include/xorg/os.h:234)
impact_driver.c: In function ‘ImpactMapRegs’:
impact_driver.c:806: warning: format ‘%08lx’ expects type ‘long unsigned int’, but argument 2 has type ‘int’
impact_driver.c: In function ‘ImpactMapShadowFB’:
impact_driver.c:830: warning: format ‘%08lx’ expects type ‘long unsigned int’, but argument 2 has type ‘int’

XF86_VERSION_CURRENT should probably be XORG_VERSION_CURRENT, and the X{alloc,free} can be changed to just malloc and free.

I don't know fixing about the rest. I'm actually wondering if this driver should be moved out of the drivers pulled by jhbuild, due to lack of basic maintenance on it. There's the lack of a .gitignore and the Changelog being a static file that suggest that this driver has a severe lack of maintenance done on it.

Thoughts?
Comment 3 Jesse Adkins 2010-10-29 16:32:08 UTC
Fixed by git commit 3ea59deae7e662d64b331844bcd4738e9bb15f77 on Oct 27 2010. I still can't get the driver to compile, but that seems like another bug for another time.

Closing this.