akk@korppi.tut.fi (Kautonen Ari) (01/02/91)
Someone of you may have noticed that my checklist (README-SCO) distributed with the new GNU C 1.38 package considering the compilation of this package in SCO Unix System V 3.2 is indeed a false one. It was meant to be used with the version 1.37.1. This new release has corrected many of the previous problems and added many more features. The compilation of this new release is very simple in SCO Unix System V 3.2. Below you will find the complete compilation checklist for this release. I hope that the distributors of the GNU C package will replace the old checklist with the new one if they consider it worth a while. Ari Kautonen (akk@tut.fi) --- checklist follows --- ============================================================================== ============== Checklist from of Ari Kautonen (akk@tut.fi) =================== ============================================================================== Compiling GNU C 1.38 in SCO Unix System V 3.2.0 (31 Dec 1990) ============================================================================== 1. Edit Makefile: - remove -O from CCLIBFLAGS - uncommment CLIB = -lPW - uncomment the following lines from 'SysV from SCO'-part: RANLIB = : CC = rcc OLDCC = rcc - remove limits.h from USER_H - change installation options as you like 2. Run: sh config.gcc i386-sco 3. Add following type-cast to rtl.c line 679 Old: 676: /* get vector length and allocate it */ 677: XVEC (return_rtx, i) = (list_counter 678: ? rtvec_alloc (list_counter) 679: : NULL); New: /* get vector length and allocate it */ XVEC (return_rtx, i) = (list_counter ? rtvec_alloc (list_counter) : (struct rtvec_def *) NULL); 4. Run: make - lots of warnings: ignore - 5. Run: make stage1 6. Run: make "CC=stage1/gcc -Bstage1/" 7. Run: make stage1 8. Run: make "CC=stage1/gcc -O -g -Bstage1/" 9. Run: make install That's it! ============= End checklist from of Ari Kautonen (akk@tut.fi) ================ Ari Kautonen (akk@korppi.tut.fi)
chip@tct.uucp (Chip Salzenberg) (01/03/91)
According to akk@korppi.tut.fi (Kautonen Ari): >2. Run: sh config.gcc i386-sco It looks like my SCO support for 1.37.1 made it into 1.38. Excellent! Now I can stop mailing my patches to a new SCO user each week. :-) >3. Add following type-cast to rtl.c line 679 > > Old: > 676: /* get vector length and allocate it */ > 677: XVEC (return_rtx, i) = (list_counter > 678: ? rtvec_alloc (list_counter) > 679: : NULL); > > New: > /* get vector length and allocate it */ > XVEC (return_rtx, i) = (list_counter > ? rtvec_alloc (list_counter) > : (struct rtvec_def *) NULL); This change is only needed if you neglect to fix SCO's include files, which have conflicting definitions for NULL. That's right, SCO can't even agree within the development staff as to what NULL should be. <sigh> The fix is very simple, and it not only fixes this problem, it also gets rid of many compilation warnings in the bargain. Just hunt down all the definitions of NULL in /usr/include and make sure that all of them define NULL as "0", not "((void *)0)". Presto! No more warnings about "conflicting pointer types". -- Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip> "Please don't send me any more of yer scandalous email, Mr. Salzenberg..." -- Bruce Becker