Return to BSD News archive
Path: sserve!manuel!munnari.oz.au!spool.mu.edu!nigel.msen.com!ilium!boozsh!block From: block@gmf.eds.com (W. Jon Block) Newsgroups: comp.unix.bsd Subject: gcc-2.2.2 patches for BSD/386 Message-ID: <1992Jul12.194906.18145@gmf.eds.com> Date: 12 Jul 92 19:49:06 GMT Article-I.D.: gmf.1992Jul12.194906.18145 Organization: GMFanuc Robotics Corp. Lines: 264 These patches should allow you to cleanly build gcc-2.2.2 on BSDI's BSD/386, and probably on 386/BSD. -----------------------------cut here------------------------------ diff -c gcc/configure:1.1 gcc/configure:1.2 *** gcc/configure:1.1 Sat Jul 11 15:11:30 1992 --- gcc/configure Sat Jul 11 15:11:31 1992 *************** *** 240,248 **** tm_file=seq386.h fi ;; ! i386-*-bsd*) xm_file=xm-i386.h tm_file=i386bsd.h tmake_file=t-libc-ok use_collect2=yes ;; --- 240,254 ---- tm_file=seq386.h fi ;; ! i386-*-bsd) xm_file=xm-i386.h tm_file=i386bsd.h + tmake_file=t-libc-ok + use_collect2=yes + ;; + i386-*-bsdi) + xm_file=xm-i386.h + tm_file=i386bsdi.h tmake_file=t-libc-ok use_collect2=yes ;; diff -c gcc/gstdarg.h:1.1 gcc/gstdarg.h:1.2 *** gcc/gstdarg.h:1.1 Sat Jul 11 15:11:32 1992 --- gcc/gstdarg.h Sat Jul 11 15:11:33 1992 *************** *** 34,43 **** #endif /* The macro _VA_LIST_ is the same thing used by this file in Ultrix. */ ! #ifndef _VA_LIST_ /* The macro _VA_LIST is used in SCO Unix 3.2. */ #ifndef _VA_LIST #define _VA_LIST_ #define _VA_LIST #ifndef __svr4__ typedef char *va_list; --- 34,45 ---- #endif /* The macro _VA_LIST_ is the same thing used by this file in Ultrix. */ ! #if !defined (_VA_LIST_) || defined (_ANSI_H) || defined (_ANSI_H_) /* The macro _VA_LIST is used in SCO Unix 3.2. */ #ifndef _VA_LIST + #ifndef _VA_LIST_ #define _VA_LIST_ + #endif #define _VA_LIST #ifndef __svr4__ typedef char *va_list; diff -c gcc/gstddef.h:1.1 gcc/gstddef.h:1.2 *** gcc/gstddef.h:1.1 Sat Jul 11 15:11:34 1992 --- gcc/gstddef.h Sat Jul 11 15:11:35 1992 *************** *** 26,32 **** #ifndef _T_PTRDIFF_ #ifndef _T_PTRDIFF #ifndef __PTRDIFF_T ! #ifndef _PTRDIFF_T_ #ifndef ___int_ptrdiff_t_h #ifndef _GCC_PTRDIFF_T #define _PTRDIFF_T --- 26,32 ---- #ifndef _T_PTRDIFF_ #ifndef _T_PTRDIFF #ifndef __PTRDIFF_T ! #if !defined (_PTRDIFF_T_) || defined(_ANSI_H_) #ifndef ___int_ptrdiff_t_h #ifndef _GCC_PTRDIFF_T #define _PTRDIFF_T *************** *** 33,39 **** --- 33,41 ---- #define _T_PTRDIFF_ #define _T_PTRDIFF #define __PTRDIFF_T + #ifndef _PTRDIFF_T_ #define _PTRDIFF_T_ + #endif #define ___int_ptrdiff_t_h #define _GCC_PTRDIFF_T #ifndef __PTRDIFF_TYPE__ *************** *** 79,85 **** --- 81,89 ---- /* Define this type if we are doing the whole job, or if we want this type in particular. */ #if defined (_STDDEF_H) || defined (__need_size_t) + #if !defined (_ANSI_H) && !defined (_ANSI_H_) typedef __SIZE_TYPE__ size_t; + #endif #endif /* <stddef.h> or __need_size_t. */ #endif /* _SIZET_ */ #endif /* _GCC_SIZE_T */ *************** *** 101,107 **** #ifndef _T_WCHAR_ #ifndef _T_WCHAR #ifndef __WCHAR_T ! #ifndef _WCHAR_T_ #ifndef ___int_wchar_t_h #ifndef _GCC_WCHAR_T #define _WCHAR_T --- 105,111 ---- #ifndef _T_WCHAR_ #ifndef _T_WCHAR #ifndef __WCHAR_T ! #if !defined (_WCHAR_T_) || defined (_ANSI_H_) #ifndef ___int_wchar_t_h #ifndef _GCC_WCHAR_T #define _WCHAR_T *************** *** 108,114 **** --- 112,120 ---- #define _T_WCHAR_ #define _T_WCHAR #define __WCHAR_T + #ifndef _WCHAR_T_ #define _WCHAR_T_ + #endif #define ___int_wchar_t_h #define _GCC_WCHAR_T #ifndef __WCHAR_TYPE__ diff -c gcc/gvarargs.h:1.1 gcc/gvarargs.h:1.2 *** gcc/gvarargs.h:1.1 Sat Jul 11 15:11:36 1992 --- gcc/gvarargs.h Sat Jul 11 15:11:36 1992 *************** *** 67,73 **** /* The macro _VA_LIST_ is the same thing used by this file in Ultrix. */ /* But in 4.3bsd-net2, _VA_LIST_ has another meaning. So ignore it. */ ! #if !defined (_VA_LIST_) || defined (_ANSI_H) /* The macro _VA_LIST is used in SCO Unix 3.2. */ #ifndef _VA_LIST #ifndef _VA_LIST_ --- 67,73 ---- /* The macro _VA_LIST_ is the same thing used by this file in Ultrix. */ /* But in 4.3bsd-net2, _VA_LIST_ has another meaning. So ignore it. */ ! #if !defined (_VA_LIST_) || defined (_ANSI_H) || defined (_ANSI_H_) /* The macro _VA_LIST is used in SCO Unix 3.2. */ #ifndef _VA_LIST #ifndef _VA_LIST_ *************** *** 83,89 **** /* In 4.3bsd-net2, it is said we must #undef this. I hope this successfully identifies that system. I don't know why this works--rms. */ ! #ifdef _ANSI_H #undef _VA_LIST_ #endif --- 83,89 ---- /* In 4.3bsd-net2, it is said we must #undef this. I hope this successfully identifies that system. I don't know why this works--rms. */ ! #if defined (_ANSI_H) || defined (_ANSI_H_) #undef _VA_LIST_ #endif diff -c gcc/config/i386.md:1.1 gcc/config/i386.md:1.3 *** gcc/config/i386.md:1.1 Sat Jul 11 15:11:43 1992 --- gcc/config/i386.md Sat Jul 11 15:11:45 1992 *************** *** 3879,3885 **** label = gen_label_rtx (); output_asm_insn (AS2 (xor%B0,%0,%0), operands); ! output_asm_insn (\"repz\;cmps%B2\", operands); output_asm_insn (\"je %l0\", &label); xops[0] = operands[0]; --- 3879,3885 ---- label = gen_label_rtx (); output_asm_insn (AS2 (xor%B0,%0,%0), operands); ! output_asm_insn (\"repe\;cmps%B2\", operands); output_asm_insn (\"je %l0\", &label); xops[0] = operands[0]; *************** *** 3912,3918 **** xops[1] = CONST0_RTX (QImode); output_asm_insn (AS2 (test%B0,%1,%0), xops); ! return \"repz\;cmps%B2\"; }") (define_expand "ffssi2" --- 3912,3918 ---- xops[1] = CONST0_RTX (QImode); output_asm_insn (AS2 (test%B0,%1,%0), xops); ! return \"repe\;cmps%B2\"; }") (define_expand "ffssi2" *************** *** 4073,4079 **** xops[0] = operands[0]; xops[1] = constm1_rtx; output_asm_insn (AS2 (mov%L0,%1,%0), xops); ! return \"repnz\;scas%B2\"; }") ;;- Local variables: --- 4073,4079 ---- xops[0] = operands[0]; xops[1] = constm1_rtx; output_asm_insn (AS2 (mov%L0,%1,%0), xops); ! return \"repne\;scas%B2\"; }") ;;- Local variables: diff -c /dev/null gcc/config/i386bsdi.h:1.2 *** /dev/null Sat Jul 11 15:11:46 1992 --- gcc/config/i386bsdi.h Sat Jul 11 15:11:47 1992 *************** *** 0 **** --- 1,23 ---- + /* Configuration for an i386 running 386BSD as the target machine. */ + #include "i386mach.h" + + #undef CPP_PREDEFINES + #define CPP_PREDEFINES "-Dunix -Di386 -Dbsdi -DBSDI" + + /* Specify extra dir to search for include files. */ + #undef SYSTEM_INCLUDE_DIR + + /* Don't allow / as a comment character */ + #undef COMMENT_BEGIN + #define COMMENT_BEGIN "#" + + /* Set APP codes for bsdi gas configuration */ + #undef ASM_APP_ON + #define ASM_APP_ON "#APP\n" + + #undef ASM_APP_OFF + #define ASM_APP_OFF "#NO_APP\n" + + /* Don't look for libg.a */ + #undef LIB_SPEC + #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}" -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Jon Block mail: block@gmf.eds.com GMFanuc Robotics uucp: uunet!edsews!boozsh!block 2000 South Adams Road Voice: 313-377-7545 Auburn Hills, MI 48326-2800 FAX: 313-377-7477 -- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Jon Block Internet: block@gmf.eds.com GMFanuc Robotics uucp: uunet!edsews!boozsh!block 2000 South Adams Road Voice: 313-377-7545