delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1992/09/21/19:42:24

From: Eric Backus <ericb AT lsid DOT hp DOT com>
Subject: A few more patches for libc.a
To: djgpp AT sun DOT soe DOT clarkson DOT edu (djgpp)
Date: Mon, 21 Sep 92 16:21:41 PDT
Mailer: Elm [revision: 66.25]

Here are a few more patches to libc.a.  I hope people find them
useful.  I include here a discription of the patches, and then a zoo
archive containing the actual patches.

1. Apparently the patch to dos/dir.c that I posted before was
   corrupted.  I don't know what happenned, but I've included a new
   copy of it.  This patch fixes the problem of trailing slashes on
   the directory name passed to opendir().  This is a problem in
   particular for the root directory "/", since it always has a
   trailing slash.  It also fixes closedir() to return zero.  It also
   changes readdir() so that it finds hidden and system files as well
   as normal files.

   To use this patch, apply it to /djgpp/libsrc/c/dos/dir.c, and
   recompile libc.a.

2. While compiling various FSF utilities, I ran into three more errno
   values that were not defined - ENOSPC, EAGAIN, and ENXIO.  To use
   this patch, apply it to /djgpp/include/errno.h.  This patch assumes
   that you have applied my previous patch to errno.h.

3. I previously supplied source for getgrent() and related functions,
   and getpwent() and related functions.  I am now providing a patch
   for them which makes them work a little better.  To use this patch,
   apply it to the getgrent.c and getpwent.c that I previously
   distributed, and recompile libc.a.

4. The link() function in libc.a doesn't do a link, since links are
   not possible on DOS.  However, what it does do is a rename, which
   seems wrong to me.  Included is a version of link() which does a
   copy instead of rename.  This version attempts to make the modes
   and time of the destination file match those of the source file.
   To use this patch, remove the existing /djgpp/libsrc/c/sys/link.s,
   replace it with the supplied link.c, and then recompile libc.a.

5. The stdio.h file distributed with DJGPP 1.08 defines STDC_HEADERS.
   This okay, but many makefiles try to define STDC_HEADERS on the
   command line, leading to spurious warnings that STDC_HEADERS was
   redefined.  I fixed this by putting "#ifndef STDC_HEADERS" around
   the definition in stdio.h.  To use this patch, apply it to
   /djgpp/include/stdio.h.

6. The unistd.h file distributed with DJGPP 1.08 defines FNM_QUOTE and
   FNM_PATHNAME, which are used by the fnmatch() function.  However,
   many FSF programs supply their own copy of fnmatch() and their own
   definitions of FNM_QUOTE and FNM_PATHNAME.  To avoid spurious
   warnings, I put "#ifndef"s around these definitions in unistd.h.
   To usethis patch, apply it to /djgpp/include/unistd.h.

   On a related subject, the version of fnmatch() included in DJGPP
   1.08 seems to have the return value backwards.  As I understand it,
   fnmatch() should return zero for a match an non-zero for a
   non-match (kind of like strcmp()).  The fnmatch() supplied in DJGPP
   1.08 seems to have this backwards.  I guess I can't be sure what
   the correct definition is, but FSF code and HP-UX 8.0 both agree
   with me and disagree with the fnmatch() supplied with DJGPP 1.08.

7. In a previous patch to libc.a, I supplied a simple one-line version
   of /djgpp/include/sys/wait.h.  In order to get a the FSF find and
   xargs programs to compile, I had to define a few constants in
   wait.h as well.  To get the new version wait.h, copy the supplied
   wait.h into /djgpp/include/sys/wait.h.
--
				Eric Backus
				ericb%hplsla AT hplabs DOT hp DOT com
				(206) 335-2495

begin 644 newpatch.zoo
M6D]/(#(N,3`@07)C:&EV92X:``#<I\3]*@```-;___\"``$````````#W*?$
M_0("8P(``'$````U&?9*IENW!```\@$```(!``````````!D:7)C+F1I9@``
M````"@`<T+(`````M@%`````0"DC*``!K&.ZPB;51\ULE]_[O`T.W%M"I5+8
MZ336LVD=F2U\.CF:"7C7HEX)P:95K\;NX#A+M-XETWF?@TW AT -8FFR$(-9TQ8
M)4GN<\J!J-,'G1B AT RNO9<>0.P0/7KKCCBPV"+Q!P97F`R>'U/`'R^P5>JX$^
M6`*_W+UT#/S:0268R%1=J+9"D$1#M,VOK_-Z[P@`Z*!(9'91LS+Y:R:AX]H:
MI\V]L,DDL34Y_P:6-?&VW6+4&<XD=NWK2:'6HABS?U10%=>M4;N(KS]BE9!U
M)E<TJ4]DUH2I/-4K;A?9.%<L4WW:L+E%(#,MIU-?"0:J$GF%"83R'1V">2&?
M8:<HGE'<810H$,RZ-C AT PDP$X`3#4:[MAY#!IUNKVKI0*Z3*45:3LGM4W7\>,
M-,#*H<V/HJC/U[^ZPK\JQ"J'?-8V_AOC=N'GW]75?;9"1Y!U!L5^R8&DG-^R
M6]&?JJE3*F0T;ZF54096Q)J.U*%ICRN\[`5['7=^M.RH7<R,Z-:#?:AKTTQV
M.-D3J3'H\1<9TS]Z)87*/=Q]?'IY.7<K_TY_AT>_I7XJR,T<C(G35U4+;8A*
MUPO)5>.N-XN/UVXZ_]2K&7+E,\\U>OPY>;/GT="_'5TZOCHY_\P_YOXZ5_U6
MZM9'RY(+7)&DQO#*G?RLRYMDM.#05 AT T```#<I\3]`@*,`P``J@(``#4964G=
M`'L!``#B`````@$``````````&5R<FYO:"YD:68````*`!QD(P````"V`4``
M``!`*2,H``#;6KKNB:B'FY!]_X+Q]3E>:P+XT9(?!*F8B\K+_QD%>3N=!?'+
ME3$&QBF`!PMG.<$I6*>6["ZTU5>8J+(/H#R(O2&*#>'X84-M...;$;N746"+
M0CH*?MVO@(-_E!"-I]*,R?S0&0N-M`>%I<;L2$LT_QP,^\\8SIQ-CFRV\\LR
MM"_U>98"RN^\QW>R=#$7]D7:`E0^T\\;5Z94E1M3O'^.GHJID8BC5&=(7E78
M0O+CF$XBU5WX7=./VCFG8G!T3P2HADI-A+62_^Q_3,49:?67YZY53+P]S2QR
M22U:>[;0``#<I\3]`@(@!0``TP,``#4964E'JF\#``!-`0```@$`````````
M`&=E=&=R96YC+F1I9@`*`!Q<IP````"V`4````!`*2,H``$=8WO1I675L2%_
M]C(S;GMC;.-@%6H4B>HL:Q![<<=)CMIQV*+'XW=_C``YIK39&BU">O"R1M+$
M(0$'8A9U&@I6ES*M(>9Z@"0(^[)#)DCQ!%CQQW[S[[^^*9`;YB(H<DDEL02[
MZS@"4L40;MPTANZ,&Z'[]X`)@'$?>M*C45SG#P0NJ#5Y7[W;RX]C%I4AO,XY
M@(&6E8-X3:ZG7K:%SBIZ$^O.*:.CJVNO%L(B9^$H/NQFAB3#3JS,!"Z:ZG$+
M[_LEX<999;28&Y$QJ"5-FDSO#R>PX#]I311G2IUYM,ZK.%"X$+SMB`\1CN'.
ML[*UJ#LLNX![\0WQ"@;T^A++-P3__@%.D'>0%L`SUU_^`E_O3-F_`G]/E,6:
M2Y)E:-;IM6A8$;I/_)2,2U*AR_4KVTIGM2'$6;#<D/2^"DEOY>X@<M@&>%,X
M>B8[@R```-RGQ/T"`KD&``!G!0``-1E92<5-?`,``%(!```"`0``````````
M9V5T<'=E;F,N9&EF``H`'*19`````+8!0````$`I(R@``2%C>]$G9=6&1O_Z
M:30.W`@+$!VVJ-)GJ/IJS#<"O2#STXY2AIOC=WX&4<:GM4TU'5&:Z-&VT\0A
M`USK35 DOT  AT SVY1VLZCA_YT@&0(<>9_)FQQA!))#AP.NN^T4MXWQ$009GW[8 AT E_
MJV`92P0!8L-(8M"#$'<.``)B'D?O6=!J-\TX=Z:IGMGCAP=MS.E:CHUL;--8
MB!GW*!C$VU+;EM"YQ4U!_/G%,'4Z.#;A11WGFM1UBC<`:5RK.8:QO,L$RTTU
M3-)J[OHK10%BCM*X68>&MG0L&=N"T]!X'VH]%&DZ&W&4SJK8IJ>35I9$!X#'
M<6ZF"%2`[*[N`>O(.7!4+<E10EBDXY+_@$?4#=P&K`[EX`]PG_O+1H^PI\XH
MD+'EOQ0B7:V;9*H",1G_<5C$LQ8/7YBWAN/-9B*-\L<5^(NE\'$MOYKY`<M8
M&<'&C_3&5 AT 9```#<I\3]`@(F"P````<``#4964G8(PD*```F!````@$`````
M`````&QI;FLN8P!C+F1I9@`*`!P<J0````"V`4````!`*2,H``-\:KO1MMR[
MS)@_?_3!(U,HXFC&-1QT')'=H$C=''M92:#.:7)OK.?)B[E''M-\;O_^23<3
MDTUF*&#!2^+>3:`-8VFWN#>KU@"Q"Z'')HU2HRYF!:]?K@"]*B$.(T/9,NO6
M)#Q9D+!<D;-)I3AG-J#(<)EGB".4YTZAZP3(K*!E AT PDN'6T%2,1"<$+)CI/&
MP$*8:%EDFJ>4ND4,!;$IE,.<)%3L*EW6:];>X"`WV(5"F:(X<*]2^!;#,LYO
M8XYP;P>V24"][#H$E;$B.%3$U(N#'AY,%_F^#P'9#9\DV92%LBJ3I3FBL.O!
MIE0PY>'R54HSH8NI5]UW%^6/GN]/\MYB,YZD=O!YC,\LJI*D9O`$\`S]S#RJ
M#MD1$&.-'=H,S-8AD4M AT 0YC2AO/4?;MLDX6#@C&1DTJSO!R8.@(3*W6$5TC+
M6*0#`E"NP9&>\X?&86,WC*7PRG6P3^\4N`TYD0YBE6,X84R+.7 AT 30RG$^`%U
M)!@S$=HT'##`Y/5,0&3I-J6$9D):QS*B%^LF$B;]H5?E*=BNR>>13U25&J2I
M AT 8+1GC8-&->L0GVFHCW:$W^7%`[7K?NUUC0G+-"QM#3CA?.2:.WMZBD$/(X4
MB5T=1,IS1:ZM<QOM"UUO!H@\>&I-%A=4#_W?A3R",''(XA#L<4#P*R:F#'\@
M#,NU3X06Y[7``IT#"`$1@=#!L5`B0VQF9*6P":U8PL- DOT  AT 7+@7_SYN8._OH@,
M7#N_J_NCPUZSC8#>:)!2B.SLX82.3TMW`O7\%Z_B$(.:Y.4$K^*1)KINHCOH
MM.V_ETP%"EWT+4XHBD.5^#`/W#;:&_3=QI0)I6=GA7=2<VH DOT  AT 7EN43#=#A!]
MT*A5\W:B=UF%+RS)&B*-"3[6Y8H:=E;,>>0;@-P.C'R^WGQ.AZKC?+#>_'TA
MC[KV'G_V&'F#"K[GD0644<<\2(XQR!*&W4_:.25?C.JUU/]9`0:>7^OT`73R
M7OT_X!3*-D$],D"30=5`1WV^G^1]&L(7.U#*/].3T.\?+BY;]W#\*:`R&!)O
MUDQL!$(XAF'H AT E]05!K!4!`KWX?(%-\N/#>NXF^-[IX^9X'_O??\1'`T1[(F
MV"RF.SXU"(3OTBB6RRB'XD2<>TB6*38V&WZB,VZ1&X#!IF&_Q'['DC+S:Z2"
MDZ3PW"AWD%.[*>B?3NW"&U;:D-J8H\:7'4*`GS7#&.AL>P'_[N0'#3/GI+,Z
M.\L=-99MVZ(84G,H)M&LLT8O!=>V%.SJ@\.J"J.5!=!\L1-+&V^WSDE,IN?.
M?.I])*]$T(V@+]5&RBGE&D<C,V]D96YS,'6,7#(/XGD*,EX$95#Z#^+P;VI)
M=EP=-#&85QM.?E AT IVQ3I=#<+Y:3?_=K=0-D?R,$MW*G68N*W4BB_?Z1L_ AT C4
MQ`;^&`AUN-6- AT QHNA?'@&C$``-RGQ/T"`@$,``!M"P``-1E92;<$W@```)0`
M```"`0``````````<W1D:6]H+F1I9@!F``H`'*H:`````+8!0````$`I(R@`
M`(-:FL&E8AS.#=_X/'KV:V:8SQI.BN"X;)!<20.T[A4*;X[;3<;P>B AT 5HPQC
M#WE<_&^;'T^1GC(5?/(2H;$TH12C:$*4DI#G/F1-?_BST?A3:>^P"A7]OG&>
M\>&CON$,3E(`;7'Z4FH2O=A<UTC+*^%O)=5:^K(URPD?@T:3P/;A<]V;HB[`
M<,[LL7TMX\^RRD```-RGQ/T"`D@-``!(#```-1E923*;H@$````!```"`0``
M````````<W1U8G-C+F1I9@!F``H`'`-4`````+8!0````$`I(R@``/]:EMFV
MHAS."]_P/`YN;=K1,;55XG"9X$H8001X)I)F_A++"25Q1'QNLNR(+P:6!$FY
M''&'/MVN/+8TN;9:L;$L`SB>:CKFHS9Q-ITSQ8I)).%1*?^I9Z)\]$VCC2Q_
M\P0$_5-F'`T,+>;0+P218A"&'IYZ_45F/42TC;:\;ZB/4$6+Z'@S&*N%C09J
M8'*MBDUI6]*!NL;QPGAY>--,HCRP/%BR#G)9U6H2.U+6KLEJ[X,_JKGH46WD
ML7PLRN2USLN\Q/P8R8:`EOATPF)QWC&XE(2[VG]^F"WU#B$PWH[AJIUTZNS\
M5:E]K5B2;!'[X>T`^;"1#MURSXX$OQ8``-RGQ/T"`E\.``"/#0``-1E922YV
M5P$``-`````"`0``````````=6YI<W1D:"YD:68```H`',7+`````+8!0```
M`$`I(R@``,M:FM6VH?S:A>_\-QQ9M)%4=>.\%P AT FSL6O-C!9&^%TB7UR#\<I
M*YX*(L,`))H0@<WD>%MVCD5N;7>0K;\!7:%ZJ&=U"F1!J9/,E*>DG1=E&9V4
M*50KPZ1D?NQ0"U]:^\?9Y<>)V+$0IGF`TH%(/BYJ?>$/8G^H-N`@X871(8=?
M#D/GC>4 DOT 9 AT _H\&Q,V\R@\PC3+A3S=0SDY]K79M>W9PW4V>.VG95)O/%0GM&2
MX7C1:^TG2#_7]_IYV?]S%0,RLR_(_+(KJJ\N%=5D\P```-RGQ/T"`OL/``"F
M#@``-1E920]BPP(``%4!```"`0``````````=V%I="YH`"YD:68```H`'*Q<
M`````+8!0````$`I(R@``4-:NL(TH]YNP;W_Q`FSX%5O!2$H:738IRCLC>"!
M-;=EXM=DVY)0OC?W2V9FJO%7BI``D*=6FNL`Q"R+DNC7,;-G0*]FS8#<QH1T
M00^&F==90;^<TXGEC1Y03%'C!K'>4:9RQ".8I9-:?L22GS""<(47#1('E0:$
MH-.J'D+&@&.B"%%14J697RD,)F)H#H*42GV07K75%UJ=56#5:8=*6)-I*=-E
M'+,E4R-!HF&1`>+TZ\B>:CDF<<18S'*3([@ZFG;Q"5_KYQNOXFKC=TECY^LN
M1IQ^^T]UD8VOCS%!^RCWXEZX;MOJ*%SI;[7'V[K&74R1AAA.^,A704A6U1QL
MBU:%9GW1>?P8</^EJY8_A5R\ZUV;EOQ?B55"E2[EUB$(/T-4WOG%:$\^T_C>
M^\3MVQS4.^R;[>*^G$MJ'"GX9TK;MQ/]-)2,>&33$4<\Z(JF>VNL``#<I\3]
M`@``````````````````````````````````````````````````````````
'``````#\@P``
`
end

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019