xserver: Branch 'master'

Paulo Cesar Pereira de Andrade pcpa at kemper.freedesktop.org
Mon Dec 8 16:14:03 PST 2008


 hw/xfree86/common/xf86sbusBus.h |    5 +++--
 hw/xfree86/loader/sdksyms.sh    |   13 +++++++++----
 2 files changed, 12 insertions(+), 6 deletions(-)

New commits:
commit 7c8720c1433d2c3b85bbf4b811cc54c2df4c0080
Author: Paulo Cesar Pereira de Andrade <pcpa at mandriva.com.br>
Date:   Mon Dec 8 22:11:50 2008 -0200

    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.

diff --git a/hw/xfree86/common/xf86sbusBus.h b/hw/xfree86/common/xf86sbusBus.h
index e83592d..5cdb095 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 2f62cd7..b522096 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


More information about the xorg-commit mailing list