Annotation of gcc/X11.README, revision 1.1

1.1     ! root        1: Our setup:
        !             2: 
        !             3:        Sun 3/60 with cgfour
        !             4:        SunOS 4.0 (plus what Sun calls their "general hygiene" patch tape)
        !             5:        XV11R3 + MIT fixes 1 through 8 + "Purdue enhancements" + one local
        !             6:                "ANSIfication" fix (previously reported to MIT,
        !             7:                and attached below)
        !             8: 
        !             9: I installed gcc 1.34 (plus the expr.c fix) and also ran the "fixincludes"
        !            10: script.
        !            11: 
        !            12: I built the X stuff with with the "CC" line in the "Sun.macros" file set to:
        !            13: 
        !            14:              CC = gcc -fcombine-regs -fstrength-reduce -finline-functions -fpcc-struct-return -DPURDUE -Dinline=INLINE -DNOSTDHDRS
        !            15: 
        !            16: where -fcombine-regs, -fstrength-reduce, and -finline-functions specify desired
        !            17: optimizations, -fpcc-struct-return makes things compatible with the dbm library,
        !            18: -DPURDUE buys the Purdue speedups, -Dinline=INLINE avoids a problem with a
        !            19: variable named "inline" in the X file "fonts/bdftosnf/fontutil.c", and
        !            20: -DNOSTDHDRS avoids a problem with multiple (and conflicting) typedef'ing of
        !            21: "size_t" in the gcc-provided STDDEF_H and Sun's "sys/types.h".
        !            22: 
        !            23: The ANSIfication fix:
        !            24: 
        !            25: > From ado Mon Dec 26 10:55:28 1988
        !            26: > To: [email protected]
        !            27: > Subject: Xlibint and __STDC__ don't mix
        !            28: > 
        !            29: > 
        !            30: >                        X Window System Bug Report
        !            31: >                          [email protected]
        !            32: > 
        !            33: > 
        !            34: > 
        !            35: > 
        !            36: > VERSION:
        !            37: >      R3
        !            38: > 
        !            39: > CLIENT MACHINE and OPERATING SYSTEM:
        !            40: >      Sun 3/60 running SunOS 4.0
        !            41: > 
        !            42: > DISPLAY:
        !            43: >      Sun CG4
        !            44: > 
        !            45: > WINDOW MANAGER:
        !            46: >      uwm
        !            47: > 
        !            48: > AREA:
        !            49: >      Xlib
        !            50: > 
        !            51: > SYNOPSIS:
        !            52: >      Xlibint.h and __STDC__ don't mix
        !            53: > 
        !            54: > DESCRIPTION:
        !            55: >      If __STDC__ is defined (and UNIXCPP is not defined),
        !            56: >      code that uses the GetReqExtra macro defined in Xlibint.h
        !            57: >      is uncompilable.
        !            58: > 
        !            59: > REPEAT BY:
        !            60: >      Script started on Mon Dec 26 10:52:58 1988
        !            61: >      elsie$ cd lib/X
        !            62: >      elsie$ rm Xbackgnd.o
        !            63: >      rm: Xbackgnd.o: No such file or directory
        !            64: >      elsie$ rm XBackgnd.o
        !            65: >      elsie$ make XBackgnd.o CC=/usr/local/bin/gcc
        !            66: >      rm -f XBackgnd.o
        !            67: >      /usr/local/bin/gcc -c -O -I. -I../../. -I../.././X11  -DTCPCONN -DUNIXCONN XBackgnd.c
        !            68: >      XBackgnd.c: In function XSetWindowBackground:
        !            69: >      XBackgnd.c:16: undeclared variable `sz_' (first use here)
        !            70: >      *** Error code 1
        !            71: >      make: Fatal error: Command failed for target `XBackgnd.o'
        !            72: >      elsie$ exit
        !            73: > 
        !            74: >      script done on Mon Dec 26 10:53:51 1988
        !            75: > 
        !            76: > SAMPLE FIX:
        !            77: >      *** 1.1/Xlibint.h       Mon Dec 26 10:39:37 1988
        !            78: >      --- 1.2/Xlibint.h       Mon Dec 26 10:39:37 1988
        !            79: >      ***************
        !            80: >      *** 122,133 ****
        !            81: >        #if defined(__STDC__) && !defined(UNIXCPP)
        !            82: >        #define GetReqExtra(name, n, req) \
        !            83: >                WORD64ALIGN\
        !            84: >      !       if ((dpy->bufptr + SIZEOF(*req) + n) > dpy->bufmax)\
        !            85: >                      _XFlush(dpy);\
        !            86: >              req = (x##name##Req *)(dpy->last_req = dpy->bufptr);\
        !            87: >              req->reqType = X_##name;\
        !            88: >      !       req->length = (SIZEOF(*req) + n)>>2;\
        !            89: >      !       dpy->bufptr += SIZEOF(*req) + n;\
        !            90: >              dpy->request++
        !            91: >        #else
        !            92: >        #define GetReqExtra(name, n, req) \
        !            93: >      --- 122,133 ----
        !            94: >        #if defined(__STDC__) && !defined(UNIXCPP)
        !            95: >        #define GetReqExtra(name, n, req) \
        !            96: >                WORD64ALIGN\
        !            97: >      !       if ((dpy->bufptr + SIZEOF(x##name##Req) + n) > dpy->bufmax)\
        !            98: >                      _XFlush(dpy);\
        !            99: >              req = (x##name##Req *)(dpy->last_req = dpy->bufptr);\
        !           100: >              req->reqType = X_##name;\
        !           101: >      !       req->length = (SIZEOF(x##name##Req) + n)>>2;\
        !           102: >      !       dpy->bufptr += SIZEOF(x##name##Req) + n;\
        !           103: >              dpy->request++
        !           104: >        #else
        !           105: >        #define GetReqExtra(name, n, req) \
        !           106: > -- 
        !           107: >      Arthur David Olson    [email protected]    ADO is a trademark of Ampex.
        !           108: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.