diff options
author | Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br> | 2008-12-08 22:11:50 -0200 |
---|---|---|
committer | Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br> | 2008-12-08 22:11:50 -0200 |
commit | 7c8720c1433d2c3b85bbf4b811cc54c2df4c0080 (patch) | |
tree | f5eacfbbccebad984f3d461900b352b55e97c16e /hw/xfree86 | |
parent | 58a27d2932164e43c0db42b1286ec2f95250b420 (diff) |
Correct wrong symbol reference on sparc.
The awk script was incorrectly referencing the struct name, and
not the struct variable.
Also added some comments to sdksyms.sh, for the reason it generates
the "symbol table" and add a message to the generated file, telling
is was automatically generated.
Diffstat (limited to 'hw/xfree86')
-rw-r--r-- | hw/xfree86/common/xf86sbusBus.h | 5 | ||||
-rwxr-xr-x | hw/xfree86/loader/sdksyms.sh | 13 |
2 files changed, 12 insertions, 6 deletions
diff --git a/hw/xfree86/common/xf86sbusBus.h b/hw/xfree86/common/xf86sbusBus.h index e83592d15..5cdb0951a 100644 --- a/hw/xfree86/common/xf86sbusBus.h +++ b/hw/xfree86/common/xf86sbusBus.h @@ -56,16 +56,17 @@ typedef struct sbus_device { char *device; } sbusDevice, *sbusDevicePtr; -extern _X_EXPORT struct sbus_devtable { +struct sbus_devtable { int devId; int fbType; char *promName; char *driverName; char *descr; -} sbusDeviceTable[]; +}; extern _X_EXPORT void xf86SbusProbe(void); extern _X_EXPORT sbusDevicePtr *xf86SbusInfo; +extern _X_EXPORT struct sbus_devtable sbusDeviceTable[]; extern _X_EXPORT int xf86MatchSbusInstances(const char *driverName, int sbusDevId, GDevPtr *devList, int numDevs, DriverPtr drvp, diff --git a/hw/xfree86/loader/sdksyms.sh b/hw/xfree86/loader/sdksyms.sh index 2f62cd7ef..b522096a7 100755 --- a/hw/xfree86/loader/sdksyms.sh +++ b/hw/xfree86/loader/sdksyms.sh @@ -1,6 +1,8 @@ #!/bin/sh cat > sdksyms.c << EOF +/* This file is automatically generated by sdksyms.sh. */ + #ifdef HAVE_XORG_CONFIG_H #include <xorg-config.h> #endif @@ -320,6 +322,10 @@ EOF cpp -DXorgLoader $@ sdksyms.c | awk ' BEGIN { sdk = 0; + print("/*"); + print(" * These symbols are referenced to ensure they"); + print(" * will be available in the X Server binary."); + print(" */"); print("_X_HIDDEN void *xorg_symbols[] = {"); } /^# [0-9]+/ { @@ -345,11 +351,8 @@ BEGIN { n++; # match - # extern _X_EXPORT struct name { - if ($n == "{") - n--; # extern _X_EXPORT type (* name[])(...) - else if ($n ~ /^[^[:alnum:]_]+$/) + if ($n ~ /^[^[:alnum:]_]+$/) n++; # match @@ -389,4 +392,6 @@ STATUS=$? cat _sdksyms.c >> sdksyms.c rm _sdksyms.c +[ $? != 0 ] && exit $? + exit $STATUS |