From 133c693650ff75487c90c2284972af09ab11a264 Mon Sep 17 00:00:00 2001 From: Justine Tunney Date: Tue, 9 Aug 2022 06:28:41 -0700 Subject: [PATCH] Work around Landlock output inode in compile.com This change fixes Landlock Make so that only the output target file is unveiled, rather than unveiling the directory that contains it. This gives us a much stronger sandbox. It also helped identify problematic build code in our repo that should have been using o/tmp instead. Landlock isn't able to let us unveil files that don't exist. Even if they do, then once a file is deleted, the sandboxing for it goes away. This caused problems for Landlock Make because tools like GNU LD will repeatedly delete and recreate the output file. This change uses the compile.com wrapper to ensure on changes happen to the output inode. New binary available on https://justine.lol/make/ Fixes #528 --- Makefile | 8 +- build/bootstrap/ar.com | Bin 143360 -> 139264 bytes build/bootstrap/compile.com | Bin 172032 -> 176128 bytes build/bootstrap/cp.com | Bin 139264 -> 131072 bytes build/bootstrap/mkdeps.com | Bin 167936 -> 167936 bytes build/bootstrap/package.com | Bin 204800 -> 200704 bytes build/definitions.mk | 1 + build/rules.mk | 12 +- examples/examples.mk | 10 - libc/x/x.h | 1 + libc/x/xbasename.c | 28 + third_party/chibicc/chibicc.mk | 10 - third_party/lua/lua.mk | 10 - third_party/make/job.c | 50 +- third_party/make/make.mk | 10 - third_party/python/python.mk | 10 - third_party/quickjs/quickjs.mk | 10 - third_party/sqlite3/sqlite3.mk | 10 - third_party/tidy/tidy.mk | 10 - third_party/unzip/unix/Makefile | 1038 ------------------------------- third_party/zip/fileio.c | 16 + third_party/zip/zip.c | 11 +- third_party/zip/zip.mk | 1 + tool/build/ar.c | 11 +- tool/build/build.mk | 11 - tool/build/compile.c | 50 +- tool/build/cp.c | 22 +- tool/build/lib/persist.c | 6 +- tool/build/mkdeps.c | 7 +- tool/build/package.c | 3 - tool/net/net.mk | 164 +---- tool/plinko/plinko.mk | 13 - tool/viz/viz.mk | 20 - 33 files changed, 207 insertions(+), 1346 deletions(-) create mode 100644 libc/x/xbasename.c delete mode 100644 third_party/unzip/unix/Makefile diff --git a/Makefile b/Makefile index 9956c6589..6bedf45a0 100644 --- a/Makefile +++ b/Makefile @@ -360,18 +360,18 @@ o/cosmopolitan.h: \ libc/integral/normalize.inc \ $(foreach x,$(COSMOPOLITAN_HEADERS),$($(x)_HDRS)) \ $(foreach x,$(COSMOPOLITAN_HEADERS),$($(x)_INCS)) - $(file >$@.args,libc/integral/normalize.inc $(foreach x,$(COSMOPOLITAN_HEADERS),$($(x)_HDRS))) - @$(COMPILE) -AROLLUP -T$@ o/$(MODE)/tool/build/rollup.com @$@.args >$@ + $(file >$(TMPDIR)/$(subst /,_,$@),libc/integral/normalize.inc $(foreach x,$(COSMOPOLITAN_HEADERS),$($(x)_HDRS))) + @$(COMPILE) -AROLLUP -T$@ o/$(MODE)/tool/build/rollup.com @$(TMPDIR)/$(subst /,_,$@) >$@ o/cosmopolitan.html: \ o/$(MODE)/third_party/chibicc/chibicc.com.dbg \ $(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS))) \ $(SRCS) \ $(HDRS) - $(file >$@.args,$(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS)))) + $(file >$(TMPDIR)/$(subst /,_,$@),$(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS)))) o/$(MODE)/third_party/chibicc/chibicc.com.dbg -J \ -fno-common -include libc/integral/normalize.inc -o $@ \ - @$@.args + @$(TMPDIR)/$(subst /,_,$@) $(SRCS): \ libc/integral/normalize.inc \ diff --git a/build/bootstrap/ar.com b/build/bootstrap/ar.com index 0baefcb0876d7c24b40d995e0caa51c17d907780..d841f225cdc274ea486132deaf454e64f5a6919f 100755 GIT binary patch delta 39041 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 pVaq}08uxq6r%$Yv1BEAG0lJU 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 diff --git a/build/bootstrap/compile.com b/build/bootstrap/compile.com index 6d0dcb1b39c2826fd99def6b70054692a1a50497..730d12b488df45973d670f2d3d0e02578204c15b 100755 GIT binary patch delta 56190 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 X|Er$=uX_GZRZkRM`^#(P%&Pw%tOiMM delta 53702 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�_OeZb!-NJMSk>U(Lc)hEVn}a6(}7JJ($ODov&Nh^ zuB=zFYXL^R3r79&514gGk}ycmt`7T!Jv5Aeb;XPABg_3!m2%TPho%twpR|;30G3`-b{p7Y&VKn~M>goiHi?1M3e#S1 z@}iim$k}dPgY9E}pPs*-Ar0ir-uQJl_i>lJ`uAd6UQE`$f}N4(s6Fa)3F!>;8M{W! zo*PXf$GKHQM|DDVlJgD(x!PWW-BBZ85|p@n;J?oV-T?*kxhwj0kiq z%HSOSjoY)$BLa;B+9TY`Ipjj@#RCuNq+%VUIs9GQffq5;!ubl$u#YNGi#;mk9dh{3 zMk$hb?K@>42NHhAvLK8t|It)Dcoj`yac|&%`u9P`s)^6ad&4uMmFV> z*r<_R6H9j~qr-}I5HxpI?$ZYvgsDbPtaL(NPo|ON$Zsew-Nk+!sTb0Bv7k}$g5NHd zGpfI^qYYa#YAipPJs#CLdiQ3fT8%Q4am){HS#iO4#txu|kKoZ1HHL zASE-mF+KQxtoN93{7zMV-x+gwSQgv|sZy;@cCwj?e_L;&MlItW9=+WuLQKjZAh zt_4C8M=4~+hO%KhV2MQB`&r_Tx3OJg!`ih5Vc{uF(Yt7+NgIS5mp{7Xy*cSh>)n); zqpD=#oD3&m;T)zJm+dxz=hDQlH?kMU^~l(c=`LGJ!mObwOh#8?BnabS;O5UcbS8R! z$vfzh;y$rhV7L>+Ttvei%a>Vr$Wj}2eq5AqcM$cI=7nQ%x9t%sEdQCng2u;tdep+@ zJqfJ$_zuF6@7bH3WoUz5e>%N zamRFN{tuQh{e%`mQY-exgupO;D+=f?%UQ9QtkHC?rm@`kXG{Zb==&Y6Z2g3m0W+4N z)~WlaH^bQroZxvlLI26i*o6r(LdG)YH8H$J7*R;Gyk++ULh=qHIeUA4``I2;j?%p>P6F+V;xPAuLCp?)UJ3-0jdXQkpu2r zX@R%AFV0zK``b{HlZ6^{t~G1*Qh4|P;Bzrmz-%g2ZjxsJlw9zXmTbyP9hzdoC4UpF z)B!!gVaX-;Zplhsn#H$d$&)(reYU(jDaKt04rME*c9{56h!R>BNvMqM6R9-UbZ?HP z=mL#h#6Te>8;+_*1}VSsT+i&tzS zvmYf}JXFi^xszj;lOy6;j=w$!$H&C6rj}#6(a9n?S(2V*DIu2Eow$r=aUT$_KZz^e zK-L~EiP4HQW21~8&_sv5!+$f51EZ6|kBQSYo@K$9S6h;#?ZGU3dMr-SbEn63YJxp3 zvV&|mQ1{6g#l_Wk9gb|N=mH))st^W9D`h05ZCCIMJGqXB{7x|Y-}D}hhAnj3b6Iot zXnF@Bcp+x`GXSrVZV%;El+=dg=@KfTs0Mto^6&*)h>{e z-^5ygfSVTo$2+q1`7!XNRr$>W2q?`zB>#-T1*Vz`jPgw*nCpyogZkEr{Qf?Pggi}Q z2#ixL=Mw-iQWdBMP^^d$eTbXe;8e7*2>=;3*dlp65|k~8A0-Ohq^hB;ct(h4K%g=Z zfpqE1w#|rY4Rw|hISsmWD6k9OBg!H3B_I(ZpOrgfLPmaYA676kAh2ry)$*F`3n-ADDl)DQ`(|dMa3+|Y znHe2 z3tzgsV6Nz=<12M$Z5qK4&sK=n-ouDi=SsyN!KY^yvZOgJg{yPekU62ki8*ZMoW%Ye zVQ`!w!r?!$rNI4Oc543hQwhF+ow1)vcnFjF{lM9OPX9JjI8ZL7oN6s_w#L+`zP~#h z1=g&9wtJ zay9Y#DEAwhpBkKL%2& zQbVio%>TWX?CxP*gi2X+OcMWyN8GsI<8BqU6(hv%)0H~|Z$IJKy7>d6&`KG0g)0!s z>PHy?I`b1r+n6xW5m$48{bXz_eCf^jg8spU5T;AbayK;4rDX-?dt#uJk=J?X$6hOF z8ke(1ao+Y}=q;=XVszswu}Lvv1{MI_;c04@D+6Y*ZwjJ?gc4r&T#LVdb%Uj5?O@`XCV;>S)dj23=e#rQ>?npPTMKq!Ng6VEFf>6y@9 zNDtO$QApI=z|9y_uQU??rcN$~0ctSeEARS_EngJr+a2)fS@j6D2DWcetlJ0O5x$3h z$8If(^wVnU=Ii~c*D+mX@uuLIAD~BdGg5D!g{bY(4zW3U4-_)HKe$=pxqDWz58#bY+h45Azwgiv2d$UbN%{4z{ zQN-quw|Jn%DVx|IMS*FNmu0*_9v=E*X?Kgo+cHM+P=}S449_x0H<52swcw5yY zOdb$&x<6~PIKcSQ+e#SRP@acvR{I$8c3Bvb<~`PjSiakQUZ|ayKVdX4OJavwhF-*w zL<~ME!#bJ~o-(}QWDpew&C&@pvt9O5WN)b@?Vxmq+#R&`91uw22}zyrw-Nacm3)6K zxk??#*n`C>JzK%MN-6y#VJNgE^<8fa`r?6Q*lw+owC{$&aJ#@J_2z%F&3|F{AD(vO z11!wSotnrmle9C4D&Q`g{iasv`8q3kGrDby*C~dZhXaS=yg#rTC4Yt1!E=PlpLxfRmmBzDU5q&jIrYnCS#& z3_$P{i@h6G{EnNC4k*NyG((_cMLAev-Bv{Uggghnw1iz+*49tvX<1Ly=`{a?e%%t* zdU=BH+ByW*RU~Kh686gSc789{!D|_U2ob~%Ef4pJ0#YrzkHYh_nYDSReb7}7exsbq zz>)y_L^^52y#wX)LNlB9PN2_eVCz?Suo)E&4m964-*EWvd=42+$Vi`Go&*2$7Qmr_ z4*xHnBGl&C-a=T!+ANO@HQ&JXNr(SkP^c|-Hmm>?dd9!gls#GD5pbXm9j>;!rxP6< zK=l#pTBvHbsZy|?!~eq5f|aIUdXsHpu|vOm4*d0-6h>F;r3uhLeJk1U1WsZpwnys& z4-s(obHGXhzQ~f^^>^9&glFgQ{7ikm@&QoKid{p*ZqG?5Cg2SWjrwI35b*RfK;>HF z)aPU>z;SAUS;L+~N@8CUv-lY?k~n~XZ#)O=LBQbxOMcfctNp*^#1j@#ZoN7xB?teD z(witnMNZ)3$ImO^CLs3T*x{A_fz|&)9w+3Ngmfu?tg3R0^ZAwfeC7RrF}*`f9WXK1 z*WL#N41Er`jDVic0T&VQE*wdH_Iv`KVG$O8m$7QW3H<q_I`c0&^Km_0A2@(@b@BWHIUnE; zM~)hHp!`r>TTJ5Xh@SX*cL5~vML>%C@MizMNWcRKBg(C#cVI!J{mc_H)E^rVfL*DR zP@o+&7u~Kxi^N6Orq3X6E`{1ojqP1B#bX(fos~hDfoU#?1eP} zAv@eard|_8EFjyUD(8mYBO5DNGewx{$NpZ^r6HF>%TR|L8^GGVKiW9Dow_QO{ODw2 z)=ACM?O@C<9>>=lu?|J~v}B!vec(dGTI+zaj&%YDIf1nCVtw5S%us;&bF6cnfFu?0 zveo1SgsFfb*7pdI3+c4WjCEQM>jo#uV@$OGbg*u904&Yu*Ofx0>kz-GmWUg<%GriaIoy!< zG-2aD>=ODO0whjTv$@|GOwql|08Qa^jN=0B#wf;r z)YUkZNLPc@J_2P>@jY-o3EgLXfSSrzlsZ+|CJ|XSNyIkra;nl)V3b2I)jAY{z97if zY>y5`VL62t@&gLA4XNCGuL7+LB{YQvR7FWFXinjv>pmkk%WxB0oK1Nt$>tS?ThMUw z+|4gEma-78u*}fU>J1>(Y@@rP<`}E56Yzlw2(Sh^0g?hRgi+za#4;Bf;&j_tsa{bV zG_#A+%rh!vI^TwMUE9=8L7RZ4<|!Fn8}{%xT- z$5`>Y2;r;?+q^Ec{qOE7Pd2t5&Bqj`{G-G`fKo)$hyV<@YA~X@7C7!0<3A1$c*O-T zau~2m2mHFE9RxXY!ZFtI<0!YelopP$u^<0W$ZF3Te=~L{R<)2;KGw~OPfJ3eB~MxlLh%4tuy$GYHL&uLZgc=dOPLCiqFoN8{0Y`8 zIDwx>>D9FHDrqNC`iYtzK$!-1@QAzWIFy2g2+@-{!|{?D=-|HN4;!Ds@s(jSXD`L5yy9uAI$*$Dx8mQrtJ~4 zxEc>EDnMr~fK(gkIeAnSY@!wVN75cAQ5(=+llBOb7*9t0nzRShOc3f@N>?Hj?>}tyff@xvuDr^8?5VSWGg2s}dT3YKAYb(=`DpP(F7lbPJLURs#4eBWu17K}dSG(`AORf-E z!|Gt40;V&LOEK1!7#WT6`5#rCMkThbW1K?5`cVOaC<;2diVYBF={0Z2AK{Qr@}G|g zHPu^FsNB5bh`3W-Q{zd%OghUOXG~HXyFTi_i@w(qq?d1iy>nfQgTZda<^mOMK+%$R zLkP59fEZ>+8EmO`t$GFcwWpP#ls{T_r)qg!cJN%Pdw!-#TL>P0f$?W~0!bfTSGi^A z7kLK3Jk%n5P(-EJpU45I`OtY4VTt@b7Nk;W07(qYpKM*H431?88|BLP$yCF@!WlAQ z6-WG)QF0Uy`FDt>^8*Y|WJ54`<`cM_z;Wfeg%8s+HQdZOChfUq?0;W0H!iQM*=clx z9FIbE*5bdl_7$$X%WM95Mr%KTyE5mBVj`XJYt_|tXdzJKYn9mJqesu!Yf4@4 zF&ILvW9pdtfT`BxI+DDSx{9X6uz6ob8kJb5Gs%{;ANVO6_z(~IQ&ddVzERTViHm>5~@=4KoTyDl9xcmxhu&U zO2P;L{f&|w7jCPb1j!9l$%e*s?ltQk>|Z3>(oJDT3bbgmW*$bQ;{9HNt(xQv)4deU zo3yAfmpP*LtxLw{3B4#}pMVatk!ZPiDhLxkg&e+SyGdN5BsL-__;!Her{e*r`4IV! z)w~boiz~!A3Sl9-_N@VUcR>CNYY($H6j1xC5DxeoV33ajthoIagz2wh1`}q7!Vp4W zB?^$V=>-0ymf>VmU?Rz|WP~7)7eQzrvQD%36Cp)Hl2&y_N$X13+tl%9aXn$_-l&R| zw3qt>`J0NIOUNH7l9IgM>;(0Vh1!+r&z2sW$;l^R6sl?ruT!~R0>bO(iM}HuatCs6 z5M>*sgq0{FBlWbV5VnGA7%3u(v7UpeQ3U)OqByKjnpiJ70hJ0MKNWiQ1fh;EL$w7; zN#f0bT7aEWl6bNXP=(at=sWnu^^o3D>nnJZ?K9+zRzyoE>6-i*g;*$R5)>u@BTvM6 zE7{BbJ2W@$v(}&nl>Z0YWJEZnLfj2HzCtXahkjhjp?**h+$Oc%9h>8&G!v={ssyuK z0zaU(ec)>}38Mpy*3mnurPt(*Yn2{o0$DT&ie{jX)L)9cXX)M*Vzyd( zM|#vOwBB}7^m9^pR)}GQvX7(Qe&ocqe~J}>HS+cxLc4^kwFpqrn!+}KR*2`|V0n8B zq^XMEUZ=~n6+B%@NxiOFd|u?Z-o;&R&BKPQY;$P-qQx0`@5YO(C2K zXN`3NH>mI=K5E`|Y#UPp9)IWuGbregt3A;n?#U!A}OpsbW_=y=|rxs zLwYO7G(z@Pkj88BygKX^Un;aYVMjSxN7W&ZC`g`=Go8rHI^;GWIr{|!$=0`>$mlxc z3Wc+hkZYVs_gbV;%vV_dN7&Du*c!wOP(yZsb^;;uBgt3_-vo*6AV}oIt4JNDR1{M7 z*9bwTBKs3!8>Jc%Vju~vHLCYip}_@OZxX60>x7Vw?gbl$O!>@fi-C_H=)KDm$pN$LcER~Z;v6qu};28b$sW61fPe(w^`v^`Utlw;Q17`>quMI zC#m&Ku4DU3Wjg|_NjqC*+o!MF&!Wf1s*=oL zAeFR5EM})`9oF}pw51AjetYXDPQV5g(89XW30S29e5~I(0V#@jW0@fai+WXlJVctb zhrN|v4s{k*QG>#~sj%Hn&PQk=DwbbqJ?MmVQS0uBNyQJ`_H#J-v7T`v!_<pE2_5iYKW8rqtQlmyuIUA4x*wDfH$Vq%2(>Bx+om-qwZ?<9r(L~lBp*Ymokl!!JL|>Q75QEZ28byP>(!}gM52|)~aSUE19p9OcBB@V7?g*vV4C`uD2SK z01RkC80D8CyFj~$Xbsq3nW0L!tT0VdCD6fcfp(~x!O9q!95tiv0d-U}`3fdZ&CFCX z;c5m881MusnZhDuY~Re{< z1pEbp`@+RzmT!wyeknx|>MXw>V?aJ13i)n;$;OFD-6L2L#M{D?k(!H?oo*M|-o;dD zH$I^x`G0vV(Iil1h9Fg-or-dBKcPT7QAxBZ&<>_VewPAmZ%SwiPZKZA0CG#>9YMSy zB!4d<$otD)gy=vB7o=)-+Q{w8cV$3z1U3GRWX(4=@_h0+r0wq!FL^Zi2vJQTs{NE& zKq)Jc6c7oy7kLw97f_bGhP;ll^C(N+Kz@g^b0|xbg1iV>n}wvzBE)NiFw$Hizf5_O znoD2fKs0W-s2s4j%EfX;f#G6UthGmTionjw$L=d*;)u>vF5*Qo8JpHM`v`IHG8*%v ztx~Be(zYr}ZAA)pw;E*h5>|*@u2IGf`toxlZFryflH_R$H=^UMWu;g?A;HP>KX5Jy zaElU~N2P887tLMAsUsIo+FuE13FtUeHUE~l6M|G;0?8S*ye5Tr!E?O0rp(#;V4-G| z2S(zYo)$PtUcMHArEyA+TR5>LynGgUE1mSJ*(%E7h}fCkP1#0u+3$!s)CbI1&?)Te z04Ys}AS-1h?F;{4kv(BQ_-CP=@(v^Lury}zJTleV-GS>m!o$jBeU4Jk{g4S?a|)SpId8KR+@?T0eVKi%2uFnBJ! z58sC!sUPuMpk2}k>mO*c0QBe}Psman!&KzuNVJmnZ~uk_`3f{({R}CPU2KRh`yEZN z>p-XA0X<95eIQfryOw~IvrmLYsj1;)YXD(cC4q-hwhOS05|j^M!!4kuonTvk%KkDI z1yzbeMaaiLB)cQ|@-wPXZxXH83r1x%^>mqiI{+fg)tCWBgIQgApCg!!U{_J93R??U zZt}R>>gK`wO`!V!+Cjp7Jb4Upc1984WcPM7H!2$h1`_K2Y(b+5)|FtMEouvD4j6ha zk-8dtYYJ~eqWkCUQ?W3HD8Q_tb!?aYYd;GzUsagGXhVIh#>aK7*aIs0XA<;O1AhR9 zE@_S}WcddO#U3IyYc$B(NTc%0s9(meMM&DW!BNt?l8WpZ;IoF;DQzW*F_rUpbLFNB zb{6R}&uL&eU0WCNFF^ECINfr+iSdmoatEbHz?0Bna&0@KAcNrBS@)fZ!;fM!*;TVF z71mL&N&7I3Vl4+8SL2141_?f67Zp^X{feNPB8*XFwhcul-$!jk>yK&L)D)rL;2h?- zv#Oo`#*qs7vaX=psnpb@ZKHse(u+3GiH`sq$ICr<$bX)px>f?}sY1O7`V&F<%KX-V z@5SLZsQ2L^|5!(DRiQS5ZX;+M-U59>X4D$P#*T6nJAxXN+haOSy!bWzj~wwBx?h8M zVxp#v*m*u%{zI!#p@i6pKBYD1O7SgZ?T4S>GRJs|v5p~SZ8ofz(_+7bqU@&#Ms2ex zXDTeUaLuqz0hchZ_hiq&!$Z#G#T#gB|baHJ*{JcCy0X6+k_mdZl8R zEe3CN3tT??1U_jXGH^yC@u>NrmV*`SYU-Z~kSel_N|&^;09cx==lxjOu14xvkPR4l z>uGrYRk%mtqOt78yV4rVp2EY1INUscjQahGL9H6zaO@>n6B84iSrd5e!)bfOd=hjU z>*(5p&YndGNn45COCa~-A^-db^(4Kzx7)#I5_k`RO9&iSfma6AF&>Smrgn^%D}95m zIRxo)G^eTRdMbT-o#V_X7}^#pDu&7NPj#aaAOWb;y= zOzW9jJUqk&*3uJ*YBq3KJ5Tzk8bvApktVO3@h!$_? zHLb7bYD%AUt2th;*>@2*)HNGhRm*Wmj~8(- zC~Io``!`hfkeozSm+MI$8sS|chB22(ej1}XW49$M0mV=H$z5h4Y)es_rR5&4hrNM7pR=`p#* z1EOe9Tmn?><9yF&2E_-Mk856bIwg4y_*A#Pt&SlZ3^hG!1$|xzZ~d&G{v;?|hZn9) zRD7@ClltF96jQPs8h|DYw#awbz=?o5d$cneHWM3f~773(8h- z=tlsC)2`r2d;F7?A}W9IsPd9zn9pg|S; zEY(iT4QQ6XKfoF*_T|HounzP0f;C)J86 z=gEDP?DyxCGre9EAuU7Q5se@iqfPFCHA)|5(v6i@;OtEg9fl}57+iS6D%*UOIJSL8 z;%mHQ7Zt2HBwQw>BPMz=fmK$t5_S(|w<;2SBHL!5|F6j*G-0D-H=N$mzVcOG=;6jb z-JdPo_h$C}k$!n;Hivw;8UOUsll&(OI}phqVwnf}2$%lY^6r5ayb#ra?Ks#>Xx)Jw zKNubmIhE&5=N0Ir`~s@gG>T8sIxx>4Q^Ut~P&YmNL^7D^Q%he}0GDN2b_Zu?-Dl zA%}v5-&0t}LlGUzUZX1Fn}zwyiOie$&nrCF|K8N{Fflcc^f+a%m{Q{sPR5N_+ee zRmkbU7XH*TAP=k2dJ6oIPy;)#b3es&tyN%Om>3i|tMqH9ZjOS837k9P9jAj^tpXMXM;wjb2C)A*6UL49ks_9~v20yUh6ipu1F zTv*mGGyDg@2~#Xj?t;;f2X|-o^Dh}~t`c{0XKO8wTGLZTF~ zu7-833KY(}upw1HB;RkKn7Iz0f6Rkh){}vs1q{ck>)i}~rP(OR>e8{ccB}tlIfn=H zQ`m=x`{o4_cnE&5U4%-1SDHw~3N(SBKNECwX>uL3CqYXHx(T1Pz&~|aQS-4TEPYG2 zBRzPRk6d`mxfMV?{jX=PtyW9%O7(m%he@6P?>6Lddm}YS^pF9!nkjk@kEBpTX?Ue{6uEA znLqKIBYL6oYf^rT@JpxECAIGqHda%JJusI!s;r%$P@4`P9FgZ-Wb=QI2=4*7E>-M= zhoL8~>9nD|xe9NqiMZdD+=W?x4>7tBurkYi&>!$>weC)R4+{a(ZOjQ+4dfoan#)({ z7CPt~u!eRe+m5DF*BE|QQuH~K-Iqj1mGi~S5_}Ws2QcEptsC*MPlmSZUZ8wmN#Q&c zZ~B9U4L#W?Y$2%d4yuSre*q;iIKH`q#_U8f@`^v1>12%1IgNdNvQwwoWVg%67F(T% zE$%AqhgMq^==%iqC+J4?^M?v_GeI5aSjef?5qB`SsoFR@Kk1wt4<C<<6XPg^x`= z6(JPHGIlCvf(GhI(nzY-x!Vwsvl>HZaJuO}R2F9D>Pe33%m<^hDh$cUeUOjRf zkJ-72_!c0Pbyu@yWGh8lPt%4f=04A^toa`y9Wnut#PL*GnW3ms9Em*rt1GR5ayD;# zeM)WsP1BO3!X)dhl#JZkI5yo_4`DgNko@s3FnJi(J zFY`E?A}s32($5A{Zur@LVf0Zz$=|)BpjPl`bA-$E`;9QP1Djvn zF)$XSc|~_LMYEvy5=q)^6&|;JZXMlUg~2_ z;nrRNq~6BawI1tke3U_FI)AU&^(Qg~T`Dww2L#2g9&}-IQWMtfa;$N+BC8s+0fN3P z_ZQ4jE%ewXD2jq?y*YX;(Dv@=1I5tw(sXaVG&fKWT@{}135wL4n!*tfs+0QvtFWm0 zg`tb2lqg8cO|8Hi(r7(a!I;(dTu$|+uOrwuqNiz$=p;Whmo=6L2-6bTczKF&JAoaR zBU+qK5V&dHd1Vmr2P>>1(NC#?Ew(v2zWq_Zvy+#p7GR1 zZ``kEqaU?qQGe}=JlYBzxZi_^{RKr%0g10OkksMd;Fst*PneG-*%p!=%Z?>@^*uRXd-KN~ypsDj078)OBE* z_MLc^b0tie8qX$P!55a|nRF$wiA1fVZxx(`Dl&Gg@?!_D%oe_lV>y3!3^<7U5j~6j zymM2JX-vD2(Wj>9*y4{uIkRt~M7o#S|_$T1O9533Yr-EvA2^%0S-};lDM8HNN&j)c6>L|3&v;vOs2dRA!sC zeF1`!Zj%7r!aW%81=renMFUFz(2+t6E4wzm?Z*hfG;dzQ5YknW)8y=oI@;V`DGYC3 zX^IX4VE+t7!rCB@O}L&XM7CsGuP+wXL~rTxPY1rEM=a!O3O^;$3m+OugKyFr42zk; zQKYRh!yH}l+&(lzQa<&>^v*k>xD7XY``l_l0P!b0W;8;@s#~yzHxq<`F)a0Fr~slN zH@o}JKsCV}10r}}h)rq1zP%ak(U_Rc+G~;Q?9Bk*FNw-5UXO&aoI!={3%fD*TTy*_ zQ!Znchm1t2|-my-O)5;Dzy93C^=kbjXdlC~MDQHuIk-AZb5EQ0*lc6huO zildUqW}4g%rp6`QUTEw9B-onL!*md?Ww5)hGCRq=kD@{UUr1wS|3IKK?v!aXMH$`T zuqv~o+%cNDo0`}Cb3l=yX)++n8@bRPYHoN`ICK$@41$DKcvOnX_(e|xAVwfGXa zQ7qw37oj|tO}W!e7~YkAeJ4Y4-#U{6?)!q4+_x=^Iqvui>%&;U-Kek?IL4$Ya8ZA# z4xXhDBC&<=MLa@6|LE`7(7TZ-eLw@1S7Jy*xi07?Rk`}&@qu0QB5t8G7ehbLsirVm z=>e~ak!^YP$;{JJBnS~?73<#1pt1z68eH)E~7_U^lm(6xFKJHgmQ#- zjn-vPIx)k;7X+VXZ12Nv!hv8WKI$*b3uZ4qYTL7Yuo6mip->_g=@-mh;6|OH1g3iP z%%q9An%Az~(D>|wCHBDnkiRGB?EB$7oNDbU`H|~A{%ExDQ4s6&I5cNw5GdM#A{icM zH`a6ZO~}YknkzaSN?3mY^yV9S^L;xlLh&7wOn{;CH09y14`OQ`PiwI?kUXHQDY^yy zXM4zI@e@GwX1`zSYRTF>3Gtq-KvSkE4}Vi28}_6}qYqQasLmlGNnsnG1bg`+U+jl1 zE5Bbc@gIAlrQpWb(NB22DSOG0CB!#nUpqPp*8|ukht?VEouGbC^ZzVhWm`T{CPhtkR`=MF*_>mhTz8+aJxmjb_ykrQ@r+;K6)-%+DeSd@JEgKT8_{T(7sa zEED*IKwDE~NSg6`M;wccU}%gh)4rBt0^c@%JFYn$mDjsyihfaD-bMiQspmDO;TWD+ zBNk=Ddr9I7UrUk;PqC^+@4{ya-F+>~T`)X8O}1=u;alLN50+yte40}&ezaCb2<&5N z?#d$u_OWzz%ven={l#7j!PTC=za&C|zK(-yK> ztO69sb9nSD_Jou3I^M+ME%JelT%by7l>hW5mUbea)P4+ToOh>nrUy8NUIoFl5wRQ> zzV3({{D{7(?0lRn$?KjIOy`g;RTeH=;p(acku(+_};S z@9g6CO0<}Vm6nu+kgob3U34sZj2F+9Ps7qR)x(rY{S&hf618MXTsIqlywr=D!iQ9; z)abWSq~^_$&~|RBWk3TyrFnlqbf)`oX{$lfv$#DPo6?nlX0I@B%a;xKSj`x86RqG~ z;3;hH`dQ9^vDpC)Xw>ayxSzGi(LW@=)>snV_z>Z|k45jsX9<&1IL)n60pR~aVoJ^*>CcQu7rO`ystR~uVoH-3yTy|Ja2J0CN+A8wjp4<>i_ z6&Ib>fg&|;+DHcG|KWNmp%>7~*UbIsYvveSFm}^DH17b2;4pwzmSpOR=OEfl{^quq z<$yaM<#ED`MzmJ;vfOd!Tcv-BEX^squhx}yuC-d$FwDLm0Ihsz-H$%BUazcFrK}NN zmN6c@ztG*wGRuQ+;Sr|@kM8Vc`OJeKEd1_idF;W*M6bd<4g0T(4{GfUIRDlZJ**$d z&i1tAHstl;-9V}_wZWj24`K@xe__QQiA=84-5W2vM0i@ZHRRKsk!Y|QbV8yX}Cm$N#i3B;PY5KHX-TI|$}Gj0H*6Y+O1>VI4&9f80!u+!{LpH@(M^-Zw`Dk59$2N2on z05871Fu=pI#EXwjoEzsHC|i;EuO$)@JZ)ID7o3jG-Qw`#14I2FSinGnT)bt6BXla| zZ{#Y)2aPQ48}si9p6-@|jrp!lzw`xsnLbr(bF(znz+b=bW=YfVX~IZ1%Pb8)#YyC% z5?yFuxj{r_4J-lPATl+u^!MhYh2ae>bG-RBDNP%oysG>jq?|@bKeGmfg`1}*P1I># z!%K5Mdo)e5@S&cBrVT7-yx|YwM4x!`1B6AQWk3_Yze}hnSb8_+n_6}^;S-`;q9OL? z7}s?%mfj^{w=0c;gi<`P#QM?I;_Jhgb^FH!q^Zt$1ypwAL3JJvP|iDgOM5Mu|`h%>Z5>aTfOgSjZ;M z5);5@dbc2b;r4%O#muBT;#L>S>;OK|zYuB=41V~VGB|*Tlfp^YG#ASc0lZF#Ewwag z$~X5e14cc6(x-`EIe1I^ro1j`RX7G;DvXSepiwv#qwvzb%wj+1?!j?Q(I!x275icP zfT9S?*G>6hnmFi!EYkspLiQgJ$WIBK;Xz^Z?d90K_0CDYW4{h0R?|4nPJY5$J__U$ z(t>bQ4bT4o=f`&XPP(F7$$t;>G{W8ms8a00tBST4)d|@Bn71?t;=4DT1xm~rX5N|Ioet05b>kqy3Iz7R!~gqwd+y!XB`IB74z_JWF*b-*i$j{`^Z0UVSoMbj=TvXX0G~b9u&{ zz3v8I+FNg2{GubGyv9uq#d{NY!Sq!AJe(Zo50n>xFk4C(1#Z0WgWm$}$a~Pc!3WH| zA#FUCC70yeZGjK>y zGeOVe=I|2Bo^XClmwem_ggSlb4~#v#)lK)d%Ib>y78i?ZPS$-7;Ep)z78(%2w~7Dx zrt-e?JZ$)uBFPziE5+@Uz(0h2Um`i8yg+*g^d%8|w9Cw!yrnvV5A_*DMEM`cItqi$ zq7HCPB>#uEb0-~R6?p8XTOLO88AAGZmaZ-Mpsv?ZC7Y`j7H3g>1d1JN`;d(Ijx>0yv|?4nN>2X(e>7ru+5&efnh##EQr^6$L5h81h^9 zpa6Uprp8jL{1K{6I|lZ(yanOH$%U4$qWRv!Uxk)O(R{M|!H0;{{c}y0l$LyMMDTT` zyFG1NAqszP;10Y*u4-MD<^`})JWqr&*MzN0LEqAjnhrA-X~sbAM`h;aToE_(MTO;><;GRx8Uo?J+=da}su~t7Ty<-_q@$zmW;(X89(T4|F?1ne=X! zpD441GON2H9HGYvgV`vr5(4>jF%$Bu z0BS~@ByI*heE-tb2r96N^f|!vIq{v{l=j}aX>pI|2enlGLcrQ|*jC93_+#^}+})47 zb1;@9ZPrmZf(O_b?s?Qw7|(Y}6hWqbl6??pb>mLqU?MH_5{~4iXW>ili4Ns+^HWaY zFDZmpAF*7G=i8?o!Dc!AA*+b<*;v}WyT`oSbdC?-^VYz%hHyz7QscCg?hp-2`T7QW zq14MVxE0^cO#sq1J>BwQE52FKkEp(@rtlao1L%1FuKZ~u)mjd>;x`Hn=2{9`^Do3H z&3T`iqgzhbHgev@eDZr0CL@}++G0GKk3$(Jsw{U~^I4%!Tl5F+7Z7>wxV^dK@Lk`O zm#Qp-6Zn`WFMv6X*S!55OczS&R%Kb1z`r0|`^9oLfo~e}iL7cF-U{A$Pc|I)=W1K7 zT(kHj^7Djy6k6m`Q`7f0&_8Qtet)b;qA|D*KY!=V0_cnB)zuJT9 zlt_77rGY=7#n`%CFIQRo+VH*O3L?lg9>X7CFl>~(rb9EP13vg;ff+b7#vcfvH%}Gv zA(pq>@ae+$Gc7;2;hP0N2q!jtx`{s9SV+xD%~_8>&(bu*;*!Mo5x(%V3{2vqjRm+{ ziob1$E!yN$7%X0@m6c*lz)RzkYMVYM{Jo1xGX~@B+CDmL>fu}Zm#<6t`{f_WHZYul zNUw+3EH8bR5WD;I&lupyN9*!R=r3&5j>C=_iUo*&(*hnto)u&Su*Xe2EX|X7O`AVI zqpLu}Q6`5&@B&ocIyMv5I14}WaVQ^WQZ#(BKw&dwT81a{;cg+6S(RxqCG#%2E-F%SE-B_&i>`WZrG|yM#0nzyPtSxnD5dU z!5P9gKhkv*+#S|#{m~NKmQRa$YEQeDpc&&%VSMxlmBxg5i_=XxN`GXe-;b7gZTT+# zN(0WI5;gsCH3(m!yCaquEI<8UabE&n)77@U*G@J;I3a@|At8}aL(GDZkZ__=p@x`a zs2W?t3979VO`?t?#JCi#m{nU-Rnj0QgalQMsg0Ual${=Jqt(z>o&SE;-Z{eiz1RQ! z-*;XAd#>y3d#z{9YdveNXU%O{Tk|_zNR~iKXE{^)2c@(c`Rd3o?S+P1y!7y^O4~if z)v&MKe!jq}Qbvjbd$NTJEC%LCoNuh97(-$)#r2ErPxy*@m;MuRZ^>|dOvM+pWA%Mq z5Q&&J+Lrk&jKy%{Hx_Y!ZNm4pV_t6UexWA6t%;v)$3Bp|_TsO%XD8+CB;Kk6%aglr z;AI`yIC<%OKByx*(&ioluzGi#1wqC@jko%(AjE)R!Ha~GZ|WJ}tCxt+(YrjV6HDmv zYr7~(V?Vdn`kHP|eaey0}?!=n;-a0^BQw?4Dd8qJ^ zV`LEJOu?#|MZUaEXZEJKE7>rlro-m~r6V+~bb#p7J2ZyIe%+Yf(-qST$b-2jZIM49 z)NLEE15Ii*VchElk*;X?iRRWo9Q)V{A@$yVCK1iPMKel*bz^R;@o!EiCq_$HL8P1R z>Oy@fR7!=6o|lqOVItK(5@!}F zaeEPE6+%Oy5(}ktS11pC%A~v>h4OPKlYitFyR$iRqRL6J=KEuqk9>42KOMsY+s%fF zZ81LTsR%egL@(t~671Ep-BY8qGc|PGwY=C9!QwrLjQZTaHw%#y#`501S?i!T4?@fc z#aea6{iPE@fDmKqDFU?DQ4jvcKj_T@hhP2%9vjkD;ESDgqtHE+ra>)AjILVPorpfK zim7Ev31)Y&RS)gvMa*pf{yF3dynXDoQoqXlClFG)R5b-#j@xU&r{-6+8GIF@35-JvD#qUQOa7u~!pJZGlX@LaYWFF($bhG$5hY0W=}|{>V)*QrSx#O5*Mw1$ zHwF#PR|wo*TP*%5GO+DzeXqVW+JQRS#mbh7G$2iNe-}V@BC2#snhb?n6 z-xbHkdBTu_{Ad}1ZiYF-`)={PD2{paw*8oIh3V*jF`dk%DpPnw!`bzU#JdAF<51isAfSIOJ@ z!dodRQu8(tqjuD%35XZGv|H3a?h4OK-$4}hAd@<&H}CTBfh@GyAMWC6d~vx)jOBi5 zd)NXy<6c>`IHA2OTAZz4@g)OUhu0Dynweh3?&K4q2F$c7w+111Tn%YnsO!6!DG05) z=+N>vfV_fRV2Hn~K`f!x&rJ;%(L8BYw&(NKud)Dhyfg6d zGq40X7Uk#@Ywcuv!)ek8Cb20e*(>SY?6E05B$E$aFMZY4dr(Eh|2Yj;XKb^aPVR&7 zUwd`|Cgd4znfN6(W$1t9+dj>=xlZ5c4luD<;8~L9)TA6eSz1rzBwf#IOLp4#Ji~(r zu>kr0*Syal78}{>Rpg$Wl!#})ntn+sG^VeS;1I5?5wS2-+kXXN88bbJhmpaOy{j?( zi?VXEa8FHU4qh|}twWP2?J(q;e7n2G?-d6&E*|4-FbnOt8!@nDJEQUR6udgE{&toG zxnU^5a1WC~y-nJhTS)7cv{$`!mXCp3PrePu%TqFB*8}$NcsCTiXwyOP>;8gn>cnB7LP4LDE z`yx&IMK~Wagf*(QA8zze)x!p!GK2-zYY5R=^pih;YfGHTe7lez9m1M*J=aJ`;61dh zt!TATf0IQ|sGc^H%fcx31V@}w{x;10fo`Zha&iU=pyGTPr#bm>@CQvdX+k)DIn0h>x$@WkzpovV98UO z;;^TIDKOhXFY`Ps;CB+(v^L*v)^h2~0F9~2(58vgAF6i`hXYm8JKE`gMqnKTek>b-C6=E$@&hASf4@1x z%C9fO%6xc&2FS2HQIzMFm%0B))<|CXGVeZ;MGV>i<5D`sP?%PXkQJ(7M{z~NS|rj` zB|8totGK6^uAOpI7sIyIH#hG->Jk~Lw7o!`1*!#a9G+W)p$44rZ$`2fLyq^Q7CchB z9)3@M$h_UvIoC8%&rO}CsW7jDUDl8!I=>(k2I)3$sGsL+4df-{;rm8DU=&tb;wJIU z^O<-31Cxk%3m_fRR9}X(=vL(MougPUbNdg$LUoN(3+Zji*3i(jR8^Hcw|B%cMl6-A zC#FYk$J5yNSBxG1JdPZwZ=C9YlZYo9Q6`pe)sPyPmQ>U@%x;QaDgzvd!Dn5qpUAZ# zU|SJBaDT-n#-8X3ZG(JZuGIy{;4ZY9P~1%bN38Cri;(G42XP9xKCHs^_vpBT-W z)@=`ahLjj$w`X!`$VSe_u*ROXkS%x)4ID$QCHQ_z9`87Yosc^n=TFA4hMuk)koG~9 zT>ibDw@hR$Yn)xLRSdOFXZ~6u8zWCY#tVRLAl_n!Q~|`+OJD=2(5YoXWvyw0N#%BV zC-mydTs~wh+v3}~EsFnN+T9ZexyLxxyyI__H_zJLpV2zo3)LTxOIB}VAHChZK-!us zNb8pLnVN6oGsdyNxE4seYf=*->Z*$|G_vGdl@`hr1(uN%$&+e<80&~f89 zlT9*K)Z;M}#t#XEAl=MnaHNe7wmk^L>44}YUhV1vZEcIc^5Dg-fhTv!|7cj zc~_mN>2xON7gQZw|GGq7bTR9**I7KP^hV@{!MxgJwn-k%=qc?o=O4z^(qYLx}zM-9O?!K$>4`qdHxjE)huEKbYU4}XJ-F*N66r;GQ^3L%T|)I!Ws+4G*c|K9PGcw`TnvH<5)9)v~p zBV;0)ktmu?$!J5m9Kd!@Fy5q4?*At1DBHvN;5V^G zd1xuBokzt?_)>0rlQlPo?m{I_svjNR@?|(rs%`lmGpk1J{jDg+C3_cj4sLq0x5K4s zogvtRhjEOg9BJM~%~fhB;!qdDcU7?}XLnb-KxRdI^x7G{JvzTrBz~M#x!sLPHI%dn zG-qj#MK&0si}|D(%uC)fm@k;YeEfeJC{i0^`2h*W#xMwOHWdj* zj4zzYeC35Z_=cIRVS~6%h?F7q02t7!jD(a`Lm4Q(gSPWaGgUSXD~UR@`72cRoE;G z+FCq&MniE-Mu=z6CW4mIrHaYl>iv5MCY2wrV(J1rv-+rg3VG0MY^oTumyex|e*Krl z{Jq&Mw8;rvt0N+YJARAQMi^R}boIi@@Wx(EvaHC=%{vfP{w5yc6~+^@8{njT27o z_`xLBs3?`%t_;i=CFWj8EIk;t9B;8Ifn(-DMrhR{2h(vMobgm8_Mg< z#r~MkG=BXmYi7n&^G2z@X)Zot*N~=;xdTXwH5cbCaIi*cJ_)&-R4OU@Ft@n z6$`_TltO0zE`0#AoHFe9-T)K45KC;VO?(LT%&Ev+9c>i&eR|iFcUC8VBwiU2zx4H<0UWZ6v0eQo+{BBTpZDb7}E_|PgN^VZBt;N|R0e z&v~q^`(mg6u{(IDw^(36nUmtTL*t3kF-Qx&Xxr1OZ2O4Mdy9p1i;Sx%*~{B?TeOkV zs*L-HVq#cU9Xin|m)kO&c0Y#Q(lUNCnbjTjFvVduiR}_G;Djozg%sk73u(p6Lcg?w z=r~qAlqcE^u<)mv%Bqw>paZuJeKD!(INk0w_1G@nAA(|o_3$Jq7iW8M-;wfJ3(SJ= zH(IMey}1Q9&&P0dYMdrfo{yulsgNj7Ipe!;8!wvA+K=!NVH%b%BnE1v(9$Y~H__H^ z;?dn`Ym2lJ2*)v&U!op;8<*DMVta&JEjq2`_fX(a*ZBNGS78&*$^Bz=A~BYq>|w~ZpRstULE>u7p>`&ATN{8k?J4huAsXBZfH;DQ5_Po&|HL)_PH zuaD))YB&!7X~hTS4!IJ!9xgo6ncu1`)2JTmlrfT&emEJys~s%hf9#QPhVwO6ZbZ<} zUKP#(NsH3K!L>1p)V4jLqZw#bLR#=2-eK>_TVLX@z02;@KiV8M@wS}QBfSrnaTd(& zpW>)ydNn*ExD6k_fVGbM{0Q~$LN4rFDeY<#LAT#k>uZYZYUyDi3E)}Vo45+&19S(b z>QN~UW_bS=B3`aEYtC;hU~OCc(TquMxTy+6V`0p`lHa2UGXZeHT~L`4v1J{fX=Yw7$Yj3Q%o+t#ZpT_<+%%X;e0! zp3GL)Noxi6YOJ38QgmSG@j3Tg$oh5b-i0`-KvzJGUHLS6s;;S!=hC3XPp(*40&oyQwm#R6qU9aRCu%+)!TB_I6n153ZPOe zUwb~23L*m->@0^JAtB({Dm+)eEq>|{k7t>!3daza+BCW#SbeK58uovAORIPz@~s`r zu@0!)4u%e)T327E)L9RTz-?i#RMfxi(NVvTG&d8P6Fn zK*yySM-7P@?7VZDn^RcrMx8NCDp%eNW>S@;zO<$?2@i7>Y2vDS&WG?llSjITvI@MH!N33L|x}hoU(zx zoyz>H?g&EZ?5N2%rLqQfY#-5hI81~@Q-gyf9<~8f1nWSz)^s4c7+T&{Eo99SX6+CW z%KuJfje@cPWtmVlTNOo&y|EpxT1T>goi*oJV`d9GPnl;EnrznT@TkUx? z`#EP~Q+g;ERV3`=50?SyDbzaC+JUzh#SPwKI47EK-e(# zR2O2DiRN~c=DD)~>}z?irEDEb<=2)ne`e)>EoHOoFTu(Lx|qx5I73#1ft z)$;Wv{QYzmP&)>CqoJ1)L1mVjF|c@kZZVa_@dD=I8VL18VRKZ6z!BX-Aa(K5>3@P zqT`GZU$LBxZTuNBQpNZH9iKK4Vq+no*ac_C?6X~J%Dpl$VVTpPM`kcT-%Cwlx=NUe z*MECsGe~wWOidYB4fzBEyb0Mp*r+CsN2}LRkByd?efC8*BHBNv9)^N6T4VOn6KsXO z-4Yw}Z!%Z|pXo>mUfs4}(Q9xXs#>hIyLuyI?Fx+QZ2h^<3O1^mFY)Y9_4-Qw&I(p< zV8{w;D($^7pcR8jF@SC?h%{hsrEW%gF$05q3in8Aq^>0GsIwMdd-iiqMuOdF%J4H`t+^(blKWfEZ+0sWOz5OQuAz|%*U@nWf+jg zGgq-tuQ15|5JG~~?|16GQNuKTZ56B6a7KIu_m5hNHt;L84FabD*XeTQf;abE&6>)Y zPk7hWtbu&anIH{aui1PhJav+ zw|xuS7<Jac4G@O6m(b>wJEf=KeN;hJjB$r~(W+BY7fcJ(!>I#T z!y-u3QtlAgCw4A0!Z#fF{$(I^yWCL8@6-ULuG%~uY=_N;t?X~Xl&l{6TeKszu6_Dr;He2It=siD-x&21o~((l$bitKSmdb1iEf zc^4r?TQSq}1wC3!Q(k4qp3?psQyc2wK~vW=v20_iy~_ie5+SzIO;DmOQFo>D{cG7| zmdhJ(=HIRknwl^yCUn!*0RMRn3=&z1K^}sT(wX7n2jl`KaMcCd_*6J#Te*c}Ep02z zY0X5;)Qh{|5ijwMqQOP11~iRIAF1F)sM&JV!l!h1*_`fH?|KW7#tUXI)xH%n0IeUY zK@e(7XF=7EHaV4IR+N0f1&E80dJ(wVXE9=M){-}|Fg1n@M@msVbRAp4%sgiu3va$) zAcnL^=(FdFl01b=%6)(JpDjW-t*V~g!u>zMZj(7TdB+b}5Ba~I-B@cx=Pj9nqw!=QW=Uw;NS%Zzfa%3T&vR!>a4)a0-3!Ns;QY~r!0*+rnq?}P zb874o?y;WLZGQ57vFeueiP{vrhjw9$>JNozH7keo^ZR@N>^Dx;?3-#}3DmzpS-Aj_ zRKG`NiB_dRNnXI0tY-}x^npG5dG!;REbQz+CK#4ALT(l)eHZY&^(@h&6HL&NV_uHB z@mBAPZoGCK^2z&4BpuDwUDd_Hhit$Uc`driKAiewSCT?RuBulT@l_kp&TLx5zuCar zvzl418`*qWewxCQKVk#IXOI5Ze)x6Js2^@(^?q1g^utLpxF3s|T40_AnF{U=O5@cx zv6q_PgM^7K2KIh515;gf*+|vrq`iCjaoL2872Pmta}RITNBla9kJ-fhylk4en;N3o zv?^2I;>$NdL}=+;q^+LJ_ibYS?y*kF4`zO46YDm}4f$wDEkj13k(oyY-CA4VtcB&e z^8BiX)J?=m8HPj3yTioJ?|a!K=q*y-(6q(L5#yj@hO}gmv4LpRFg`hx^)Ls4YMgvQ zIH8B4$6jyH112l2)56b{MaG;_M zn*9J{H5@PWJ_*MK${~E2xXDZ1faz(wjYN*h^CKx3qL|#$I(+BOTW`ielgwoP%4XKU zo6<|2!UgIS*3g=snvu*GY-UllVASTc)qAu%wn_O6=U;EeynBsg{`+Ruy5Si!jvM5e zhP62jR}!{xQS}DURXpd+JaP+*^#0(fqs>)1V-SKU8!g2+G~l+Lui3)Fy4A(axmR0a zr4!$m@I}Y`_~!J-^J?8VeYNHHXf$q|zH#hyezB4Zwf!fj{A7*jSCzA^*d{X`{29@* zDi7SsI!^kd3dD~%jG!tqrs(SQq8p{fH6!61H)G-)e6wPNQFL>9(Y$Im{)CVgiaDfW z#gDxI^@?h@QxFxhH$85ON?|zEG9igFcL2VuTxnW`+qSYOvm3NHm0+Uw*jx)C3GcN1 zSkM*MT!kXM-Vb|IlTO(Zog5bY4%I{o2NUAjlQK9nkUN-otg-eq*l!B99C?2V5;Egz z%U9vgjng-$mr-8iB%<_lR}SjgRI+V_r|MtW%4k2O`xhpntUkf81kZ%y);xu8-^Lo% z_k~}$ai(91p;=8oO+C2G(9AnvFu$>l`567TQqd^2VU+x?1BVx|fzQpANf8^P5EB`y z)A{8}Zx`Yc41$&WP(559CE0JO#FwCa56Z{udAIGXLG?e7M9Z;qCDoOW-OidZS8m~J7K*J>(R{PcF#hOOa$!?-opK7gUcJ?OWN=swe-{Zn zs8&O|?VqWwf99|5zz(uAF8rMxtefohF3;J)+W1U^Eo;q}5mO8}ZXzG|StDXxINQkz z-IgOhR_}AJyl5x;$c>~vyk;_-&)LOR1ytyIY8_zqugFvTLm@EQe}*or*~hFEtMLZz zg~sV;93Rij8n>Ixb7gz@)je1@`7Eo;US?tJ)2tKw*vB$^$lv&!1vZ$Bjt{cNPnx7_ zd+aR!gVVBhf6l&SRR*Ib&l;RH`3qLZg>BDzCz}m(t-do^lIWE>b27hq1dH<%lDT}8 zbz+&k%TYE2u;M7|*>DAF9p1Dn!DH#c*U=6EOQ6Rq=?OJ2Z{iP*vL-QtoZ$bZW_$xi z{$J>7Sp61Gyy-C(&~+RJT7ow{sRlEl-oA+s%VoXUCZ3tg{Jb?2?*W>tE3oC?ZxcVC z%i7e%=4VqDUOTw_`zcf!~KNy~$)WCLFqa=W$&hx_<-4}M%X!vcb zN2(8d^SATZK&J9@c`S+D<vgInE~3 z+>dpU(BJ4*Ho694$Kg= zOz4P-*Y|UJP$*$=YU_)Sx&zI${cC5Fni3&JQf6ZhEh%WDhOLYyE$({LSTq}E*ctm{ z4_^BO^K4((gY06KYs|=rQ%low z32Yfo3)6=4S5C5_JFC1xW{Rvs0;{3-~$K=|})K{zJ}2WhzV-O!%H;pVcS7 zbWaez5`{e%L6FCmP&?a?;_;^Y)4{Ye!Pex7n#MvwxGl zm_T&MqBBl;YBqUV9^|YimvMSt(P!1Quz0#851It2J=@xZWAj|WW|I^)rI2)}iT zbqylt&lxI-p88=%Flj_^Nt#PdES=%#e7p_bc< z$nCFL*s#2=FK~TJWV@5w9%9WGO!WfSkB9daw;O9^aaOZend`G=o@0ZUyC;@MiNS0o zk9zX+-!M=2hge#4Qp&zzfz_@^lB*GW`HZ}N5!+_&VidxXf%brGM^KoSvGx~5I-Djr zEA>%TVN*(Svnnp|0&`nl$Y%Q^rv;p^#bzeSR4*msIw_JoaNO867_pJ8k)0u?E9!iB zta*v+3D70rf|aa@^Q?fe%iQ%MTf`=F>qSV+888~}&W-F(#}7ujI|QR}8pe&g%uifo z!R%7jPZ!w~#x7(HzRd13cAoeAjxA(G{KR*xt#=Vg3GOO(z6dD+;iwm1<28zzsp&hk zKt5&__q^WCw%45d*o5=t=sD2MLe1|N zvpmG(vn#AKYr*ecVS8Jnv9vYAN4<3iV>4@TC&bTwGG`Qg%ylEfj%0XJGkgze_@4D; z=eXf2^Q}$BQ^`0U##kvi&pTgbp@J-2)fME+-|(4N*--Cy0+}=mPpwy)BbpgVI{{uY zw}(;qW5X+tEfLM2w14q@f3LPSqLh4dA|Z5OYv8w+z(SN{jo%*i7V{#ess&0rB%G-X zwk^KsQ2%uo03JW1>@w9!j#!S}A6N-aj(8u-gdpL0JK;dh?;`@E0Fra&A$iz#X-qlJ z><@BDCqh=o!%{_j`ad6^Nr;cS0OpvY`J`Ntz6M7pF~O=>xKT$Oed_3{{N5EaMT)3P zhb3O+I;$N>896DJ&IuIuw6@@d0Bn_s9}B-;aRpam{z@%SiaRsu)dJ-LAhtj`+nJBQi9MS;JM$$s zS^MZ&Ag8+~v%F^cDfwZG{l`OJpp3#-$__&;#QnkrN-PLN3zS}f!39bLU=W^N(`|9N zgqb`)LN|>`E<_}N=Cl=cd1RKQgpFnLre6I159~z431^TwzoS*RV9?mKkm^De42I-K zSFw+kzPGl zwY~iIpJ+|B#C{)A%t>DR4)g0a4f|)acTT16=i-|$zTb;)nfPv{Z-&uP(~eCFIEQ&h zK+T`qWlg@r*1Gh_$jB&HZXQFq8qzXGJjH751!&w1X-zxR((OrTJPc{|ps^k3f|6+2 z862hTJW11NN_H6UUdDU^cXopouUVr_v^_*FqrSU33~$Mfs`&zv<^$$u?nSM)@!7$#oEeBl?pH{%?MF)Yw#yi;gg`RQne8+v zCj%=Pgu&o&=o75IG=)mt(2;m2rn7iGAm@Fj1F0(<3?~QEVQp7{$t!z13~dV~-t{*& zQ6ABXZ~cw!YE%*>%^ht_?^(|n!Jsz0KN;3>d!RhgU{X#DRZLO?{Hs zjh5f69YP^3*keHfe)O|Ja~dj?Z>|RBSo! z;$4KHK~j6$V#w5*!y0@~ISXLj`8VaPN!KdPsr@!%$ApUFqJtE>Jd&nTq2*+XHcZLO z1xrNK!8eKyK1&7#HML!?RKi<6VgcjwoE|G}&>nx71My7Ct%}36wm^JT&mxS_vd~YC z7XIu*baIhg2jZBA$r=w#B+p)#Gt%iOm>k{s29DmNrj^3k`v`LGBRI513?SzeF~M7v zBIJ&PNueSsy|I{Ra(XA?@H%;S1MTsAPjH7-`9%1o;A>E37v#L{v@HS;C)@jMsxx7( zVUom0J_Z|k!AZ)gsx=f(C>|9B79|DH5>&TGg>=PWQdGGTi+05|=@s=%Td?c+GP{@h zNjpT`dnF=l@rW%fptM_+PFh?sQ(XqGe74g{eOK6?P}#Pxi!jTQ%c0)5Z>xf_N6cF8AViOhf5W39 zJh+plRLOGu$rif&JLBnD>;7S(|JJzW7sYa0mwFX`2V4Eb-ib#zTzJ*k#Qzq@W*wdDHd)>vsmWqQe~ z)ZU89R3)iBn5|$3O8%w+w|^_2LupW^NK>T049qXcP{aNNUEmu|Df!iUD6!+aTus-o zWUz7NQ*n+iYEXQX*+rZV|d{# zEGR2(PkEy{^5^pSn*357c~i{;Pc$=6nC;-no^qg9Dv_+|v{qmYKQ^l^OlEStk=q4j zTIMO+<#B`gbuT$Y&g;&rc*|GiZq;c8q!E{Wr50KJo=QcOV~IS8gk(4$N9pSH8}=5A1@n?`yPt zL7h!OS_Hl>ap}QbiQG=pv%_KI(5j>dHzguoC=qs{H^pb|t0&iD43qlxA0DNh z5{6U*=9`hCT@Sgrfm|Hd%mWOAnHbtGRIcn?LviYne6%~XSa^fQb&JFn3q$H&t;82Y z?ojs4`#ZnkCoipY^)&L5LZ9*{6zR%Wr};a$ zF0TF-hQ=4N!(7nTk{UZ>O;e!R!v{CSQ%4gSf2*N9K>n*eKig1l78pf)wG63UAXg+u zv=f@Nme3qV+$dEIvwRxK)tQ`bhD50N}lI<1GgWfE0aL6&w^rfFMh45oLB>WyJW|rk@B!-R-X_#k-5!B4M25+6cQ@? z@vlN<50AE3M+C#-5;kvKUVHIEMk{N-hYlrk6BZx8|aD7Lr7wHbe|8 z`KqT2z}Kjq12$SmJwBap_5XyYG?N>fAx~P9%kZ_|LqCF4j>oxR*MWwt)e=!BVrA>B z0e2kyWjc*nB6~@!<&0JN8;k$w@@LDBiu19##*3mtCj=tSy$n%{Zlc7HjC{jPFUD}j z?5_J<4!Gds2$m34W419*Ij)S%Qyk{tGDtJVY$eQlR^txI4IIHGLSJR9|9g#_2lzXJ zi-f*fy!!?Jlkx73;5?zPk>R@1H8#W55xh_6*#p0}jiRDpKU3&^GUZ!=RX59y;0&P; ze&F~u@U?h9M{u&x*UIqf=^Ykd$Lt86AqWvOq*+o84_HVP`a5Ng<+XY1)vT>F|ck%cn^ zp-Gv;U>H#X4-+*9@zOv^iARj%g4gA$>)XS!{1 zi;IMVBB5uIQcuY>5)sG~dasPCE33YhQ58AB(_6^CUL0h)ENsg|u%0Py$iQ;tZT@8o zIi$&}FmW~Av33{_qjax7h&L@4upv=S_Cj6yD*LeqcWEh)WPfBOwv;!?S?*zS50|V- z?d1BdS&KW#>#Ca*c1DsbY0NGS*S(;xpx^#C^a}GAaiMNs(*3P4_t*8OHFL8w;0g;B zIO&A|54@nSu=l@1^Rtxyzk1Z=g_Ql@+;{u0640tr)>nAYTempx1qc0iMy^`Hyv;8) zK^u$T%Q_~s(e!+0B2$9a0fqICTLfhe*mI^k^{({b-bqI zk2?OW;}ae0V9y}^TItwV$Kg6o(Qy_b!j~*M;UgXQ>X@tJ869aeBK@xDcw5K&I_@5$ znbWNq^efl#FCD)hr_pK4W5qA)T8x}pFRN&bT+h|~ca$I}|D~b(6Ag=B&{xo3#Q(0n z7u{9p%@vCODZZ&kbdsKs03Cx!}_KtVR>% z-Y)ep-A_Lm|G~PNhCTUXvKCC1*E93?A3GfP|8sw{;F0My#ATPXLP$B`3keOFX+ebeP*}94xybA zW5%Z<)qb$JXurcT_0#7aJk(SAPbI8{h^;*6aCCy37J8&Vf!>b)rO%)D-b?~o`zqvU+Pe82rheLk{`hWKigZWvQ|8M>q;a>lnD-{1 z?2O6(zrg85jA@g{jc+~q4HNfxQ_e7#^^qhJuvFlmz|KZ|m?XtRUllkHXaKGQdILjY zj(ywGBfVyH5kYPP7Nfm92;2ny9pHB0HQ*<}hrk2C zPl3Nyha2D_=>6dLNUXej0cmu30`vml5g={?lFkAz0WSfs1D^nI0bOCgRFXWUASlW} za0ik&d%rioF;kvp-UW+(h;$y1GNlZN30G+!ka9T;_9>TVKpzE622$>30^@;2z@b1Y zjWIws;Ojuj{WpQdFsIC$2c)H;P|)88dH|PG=`4o92OwksHv@fP@G-D6a6d2-_$AN? zJO+#ho(9eX76Fri#lT6x5?~4Z`3X1!`rm-3p#K{f06jy_XG8A>d<^uEAj%Nfk<8!1UX(!B17llXR!ihD>>FY(OVEcprJPX%R<_?Ai(>kFYpgZ(~ftR4Cw^TlbemrmjmH!kdOfZ;51Q^T%j)dL}Y!7pKb-@pq z4!j2XD&QU1TMrxreJ0Qq=G%eM(0>ZN4?GC$27AYVOM$0=XF&cAz=yy{U<c9G z5cDxXKj7=Yvj}J=a5eB9;2_{qpcm|~0{TI}5$GC`^~ziF$QnF5Rqm1HohG+pStAz7 zUoqZgvHUT&FP1;-I&U7BQ2*T;1a*ci?W#oUGgX$tK-)L}nZ07z>%3AHgWAkl8hwwB zc{*Ow@ve>)VMwzz`wew$p<|?uLv);=<2)Ug=(t12Yz@uQ8J$q9<6Ry9($UML1sJAd zPaVhUIA6zQI&RZ3N5@M#{-UF6lICB1foAk1Iw3*Fi8{Wg<4PTO>3BrPb2{G8u}nvK zjut>29Yb~Otm8l(#}OiYX}(Tas^fYcck6gW$8$PS)q2 zRmWvO3SZiy6ZYtsr{e`3@9QX6;wy6J@q)fEB$CL|6&()^L9>ou+ZK@mGw?D+Iksrj zf=IFo|4+_IBczwVk)+A^|AQShJujd!4MjD_eR1LN8$g$MJDaUUt${}z=kQn~n>Bp}eLr0(FJ@UCSIcK=WO@9^FxJiZ&sH>)^MACW5ug1hE1KZ* Z|6oPyAu7QCyrN}I*&?s4xhj)|{U2Xr!m9uP diff --git a/build/bootstrap/cp.com b/build/bootstrap/cp.com index d9df416184e02709a8bb9a64cc1b61c8eda36b32..76ec9989b588aee8890a2780533cd9ed2a6ad328 100755 GIT binary patch delta 40528 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 delta 46634 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 j+ZMVnJmk$wN&*9*dkG8Q7jA5B_ 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 H#PPoX^!H4` delta 44806 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 delta 59553 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 PS`2_~2bhtvKnm!8{i%j@ diff --git a/build/definitions.mk b/build/definitions.mk index 3ee7faa69..74a71683f 100644 --- a/build/definitions.mk +++ b/build/definitions.mk @@ -65,6 +65,7 @@ ZIPOBJ = build/bootstrap/zipobj.com FIXUPOBJ = build/bootstrap/fixupobj.com MKDIR = build/bootstrap/mkdir.com -p COMPILE = build/bootstrap/compile.com -V9 -P4096 $(QUOTA) +SYMTAB = $(TMPDIR)/$(subst /,_,$@).symtab COMMA := , PWD := $(shell build/bootstrap/pwd.com) diff --git a/build/rules.mk b/build/rules.mk index 1d5b762a7..ff5f03249 100644 --- a/build/rules.mk +++ b/build/rules.mk @@ -92,16 +92,16 @@ o/$(MODE)/%.o: o/$(MODE)/%.cc @$(COMPILE) -AFIXUPOBJ -T$@ $(FIXUPOBJ) $@ o/%.a: - $(file >$@.args,$^) - @$(COMPILE) -AARCHIVE -T$@ $(AR) $(ARFLAGS) $@ @$@.args + $(file >$(TMPDIR)/$(subst /,_,$@),$^) + @$(COMPILE) -AARCHIVE -T$@ $(AR) $(ARFLAGS) $@ @$(TMPDIR)/$(subst /,_,$@) o/%.pkg: - $(file >$@.args,$(filter %.o,$^)) - @$(COMPILE) -APACKAGE -T$@ $(PKG) $(OUTPUT_OPTION) $(addprefix -d,$(filter %.pkg,$^)) @$@.args + $(file >$(TMPDIR)/$(subst /,_,$@).args,$(filter %.o,$^)) + @$(COMPILE) -APACKAGE -T$@ $(PKG) $(OUTPUT_OPTION) $(addprefix -d,$(filter %.pkg,$^)) @$(TMPDIR)/$(subst /,_,$@) o/$(MODE)/%.pkg: - $(file >$@.args,$(filter %.o,$^)) - @$(COMPILE) -APACKAGE -T$@ $(PKG) $(OUTPUT_OPTION) $(addprefix -d,$(filter %.pkg,$^)) @$@.args + $(file >$(TMPDIR)/$(subst /,_,$@),$(filter %.o,$^)) + @$(COMPILE) -APACKAGE -T$@ $(PKG) $(OUTPUT_OPTION) $(addprefix -d,$(filter %.pkg,$^)) @$(TMPDIR)/$(subst /,_,$@) o/$(MODE)/%.o: %.py o/$(MODE)/third_party/python/pyobj.com @$(COMPILE) -APYOBJ o/$(MODE)/third_party/python/pyobj.com $(PYFLAGS) -o $@ $< diff --git a/examples/examples.mk b/examples/examples.mk index 8fba75045..da7c3f302 100644 --- a/examples/examples.mk +++ b/examples/examples.mk @@ -155,16 +155,6 @@ o/$(MODE)/examples/picol.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/$(MODE)/examples/nesemu1.com: \ - o/$(MODE)/examples/nesemu1.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/examples/.nesemu1/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/examples/.nesemu1/.symtab - o/$(MODE)/examples/nesemu1.o: QUOTA += -M512m o/$(MODE)/usr/share/dict/words.zip.o: ZIPOBJ_FLAGS += -C2 diff --git a/libc/x/x.h b/libc/x/x.h index c514b0e42..b80de0b36 100644 --- a/libc/x/x.h +++ b/libc/x/x.h @@ -69,6 +69,7 @@ void *xloadzd(bool *, void **, const void *, size_t, size_t, size_t, size_t, int rmrf(const char *); int makedirs(const char *, unsigned); +char *xbasename(const char *) paramsnonnull() _XMAL; char *xdirname(const char *) paramsnonnull() _XMAL; char *xjoinpaths(const char *, const char *) paramsnonnull() _XMAL; char *xreadlink(const char *) paramsnonnull() _XMAL; diff --git a/libc/x/xbasename.c b/libc/x/xbasename.c new file mode 100644 index 000000000..779db8e3a --- /dev/null +++ b/libc/x/xbasename.c @@ -0,0 +1,28 @@ +/*-*- mode:c;indent-tabs-mode:nil;c-basic-offset:2;tab-width:8;coding:utf-8 -*-│ +│vi: set net ft=c ts=2 sts=2 sw=2 fenc=utf-8 :vi│ +╞══════════════════════════════════════════════════════════════════════════════╡ +│ Copyright 2022 Justine Alexandra Roberts Tunney │ +│ │ +│ Permission to use, copy, modify, and/or distribute this software for │ +│ any purpose with or without fee is hereby granted, provided that the │ +│ above copyright notice and this permission notice appear in all copies. │ +│ │ +│ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL │ +│ WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED │ +│ WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE │ +│ AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL │ +│ DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR │ +│ PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER │ +│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │ +│ PERFORMANCE OF THIS SOFTWARE. │ +╚─────────────────────────────────────────────────────────────────────────────*/ +#include "libc/fmt/conv.h" +#include "libc/runtime/gc.internal.h" +#include "libc/x/x.h" + +/** + * Returns base portion of path. + */ +char *xbasename(const char *path) { + return xstrdup(basename(gc(xstrdup(path)))); +} diff --git a/third_party/chibicc/chibicc.mk b/third_party/chibicc/chibicc.mk index 82a067a7b..b3160b940 100644 --- a/third_party/chibicc/chibicc.mk +++ b/third_party/chibicc/chibicc.mk @@ -86,16 +86,6 @@ o/$(MODE)/third_party/chibicc/chibicc.com.dbg: \ $(THIRD_PARTY_CHIBICC_A).pkg @$(APELINK) -o/$(MODE)/third_party/chibicc/chibicc.com: \ - o/$(MODE)/third_party/chibicc/chibicc.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/third_party/chibicc/.chibicc/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/third_party/chibicc/.chibicc/.symtab - o/$(MODE)/third_party/chibicc/as.com.dbg: \ $(THIRD_PARTY_CHIBICC_A_DEPS) \ $(THIRD_PARTY_CHIBICC_A) \ diff --git a/third_party/lua/lua.mk b/third_party/lua/lua.mk index 77dccf531..3247ac2c5 100644 --- a/third_party/lua/lua.mk +++ b/third_party/lua/lua.mk @@ -250,16 +250,6 @@ o/$(MODE)/third_party/lua/lua.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/dbg/third_party/lua/lua.com: \ - o/dbg/third_party/lua/lua.com.dbg \ - o/dbg/third_party/zip/zip.com \ - o/dbg/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/dbg/tool/build/symtab.com \ - -o o/dbg/third_party/lua/.lua/.symtab $< - @$(COMPILE) -AZIP -T$@ o/dbg/third_party/zip/zip.com \ - -9qj $@ o/dbg/third_party/lua/.lua/.symtab - ################################################################################ # luac.com diff --git a/third_party/make/job.c b/third_party/make/job.c index 40a5a0920..54627d3ed 100644 --- a/third_party/make/job.c +++ b/third_party/make/job.c @@ -47,6 +47,24 @@ this program. If not, see . */ #include "libc/sysv/consts/prot.h" #include "libc/sysv/consts/map.h" #include "libc/intrin/kprintf.h" +#include "libc/sysv/consts/o.h" +#include "libc/calls/struct/timeval.h" +#include "libc/x/x.h" +#include "libc/intrin/kprintf.h" +#include "libc/time/time.h" +#include "libc/calls/calls.h" +#include "libc/intrin/kprintf.h" +#include "libc/assert.h" +#include "libc/sysv/consts/pr.h" +#include "libc/calls/struct/bpf.h" +#include "libc/calls/struct/filter.h" +#include "libc/calls/struct/seccomp.h" +#include "libc/calls/struct/filter.h" +#include "libc/sysv/consts/pr.h" +#include "libc/sysv/consts/pr.h" +#include "libc/sysv/consts/audit.h" +#include "libc/sysv/consts/nrlinux.h" +#include "libc/macros.internal.h" #include "third_party/make/dep.h" #define GOTO_SLOW \ @@ -1781,14 +1799,34 @@ child_execute_job (struct childbase *child, int good_stdin, char **argv) ".runit.psk"), "r"); - /* unveil target output directory */ + /* + * unveils target output file + * + * landlock operates per inode so it can't whitelist missing + * paths. so we create the output file manually, and prevent + * creation so that it can't be deleted by the command which + * must truncate when writing its output. + */ if (strlen(c->file->name) < PATH_MAX) { - const char *dir; + int fd, rc, err = errno; strcpy (outpathbuf, c->file->name); - dir = dirname (outpathbuf); - makedirs (dir, 0755); - Unveil (dir, "rwc"); + if (makedirs (dirname (outpathbuf), 0777) == -1) + errno = err; + fd = open (c->file->name, O_RDWR | O_CREAT, 0777); + if (fd != -1) + { + futimens (fd, (struct timespec[2]){0}); + close (fd); + } + else if (errno == EEXIST) + errno = err; + else + OSS (error, NILF, "%s: touch target failed %s", + c->file->name, strerror (errno)); + if (unveil (c->file->name, "rwx") && errno != ENOSYS) + OSS (error, NILF, "%s: unveil target failed %s", + c->file->name, strerror (errno)); } /* unveil target prerequisites */ @@ -1838,7 +1876,7 @@ exec_command (char **argv, char **envp) /* Run the program. */ environ = envp; - execvp (argv[0], argv); + execv (argv[0], argv); if(errno == ENOENT) OSS (error, NILF, "%s: %s", argv[0], strerror (errno)); diff --git a/third_party/make/make.mk b/third_party/make/make.mk index e610324ac..d91b73c87 100644 --- a/third_party/make/make.mk +++ b/third_party/make/make.mk @@ -162,16 +162,6 @@ o/$(MODE)/third_party/make/hash.o: \ OVERRIDE_CFLAGS += \ -O3 -o/$(MODE)/third_party/make/make.com: \ - o/$(MODE)/third_party/make/make.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/third_party/make/.make/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/third_party/make/.make/.symtab - $(THIRD_PARTY_MAKE_OBJS): \ OVERRIDE_CFLAGS += \ -DSTACK_FRAME_UNLIMITED \ diff --git a/third_party/python/python.mk b/third_party/python/python.mk index e8400520b..f31a713bd 100644 --- a/third_party/python/python.mk +++ b/third_party/python/python.mk @@ -4317,16 +4317,6 @@ o/$(MODE)/third_party/python/python.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/$(MODE)/third_party/python/python.com: \ - o/$(MODE)/third_party/python/python.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/third_party/python/.python/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/third_party/python/.python/.symtab - ################################################################################ # FREEZE.COM diff --git a/third_party/quickjs/quickjs.mk b/third_party/quickjs/quickjs.mk index 73883711b..bdaab4cec 100644 --- a/third_party/quickjs/quickjs.mk +++ b/third_party/quickjs/quickjs.mk @@ -148,16 +148,6 @@ o/$(MODE)/third_party/quickjs/qjs.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/$(MODE)/third_party/quickjs/qjs.com: \ - o/$(MODE)/third_party/quickjs/qjs.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/third_party/quickjs/.qjs/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/third_party/quickjs/.qjs/.symtab - o/$(MODE)/third_party/quickjs/qjsc.com.dbg: \ $(THIRD_PARTY_QUICKJS) \ o/$(MODE)/third_party/quickjs/qjsc.o \ diff --git a/third_party/sqlite3/sqlite3.mk b/third_party/sqlite3/sqlite3.mk index 340bc76df..ab94168cc 100644 --- a/third_party/sqlite3/sqlite3.mk +++ b/third_party/sqlite3/sqlite3.mk @@ -78,16 +78,6 @@ o/$(MODE)/third_party/sqlite3/sqlite3.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/$(MODE)/third_party/sqlite3/sqlite3.com: \ - o/$(MODE)/third_party/sqlite3/sqlite3.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/third_party/sqlite3/.sqlite3/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/third_party/sqlite3/.sqlite3/.symtab - $(THIRD_PARTY_SQLITE3_A): \ third_party/sqlite3/ \ $(THIRD_PARTY_SQLITE3_A).pkg \ diff --git a/third_party/tidy/tidy.mk b/third_party/tidy/tidy.mk index a561d1638..5dfafa666 100644 --- a/third_party/tidy/tidy.mk +++ b/third_party/tidy/tidy.mk @@ -54,16 +54,6 @@ o/$(MODE)/third_party/tidy/tidy.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/$(MODE)/third_party/tidy/tidy.com: \ - o/$(MODE)/third_party/tidy/tidy.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/third_party/tidy/.tidy/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/third_party/tidy/.tidy/.symtab - o/$(MODE)/third_party/tidy/.tidyrc.zip.o: third_party/tidy/.tidyrc @$(COMPILE) -AZIPOBJ $(ZIPOBJ) $(ZIPOBJ_FLAGS) -B $(OUTPUT_OPTION) $< diff --git a/third_party/unzip/unix/Makefile b/third_party/unzip/unix/Makefile deleted file mode 100644 index 9f5d99676..000000000 --- a/third_party/unzip/unix/Makefile +++ /dev/null @@ -1,1038 +0,0 @@ -#============================================================================== -# Makefile for UnZip, UnZipSFX and fUnZip: Unix and MS-DOS ("real" makes only) -# Version: 6.1 25 Jul 2010 -#============================================================================== - - -# INSTRUCTIONS (such as they are): -# -# "make generic" Makes UnZip on most systems using "cc". -# "make generic_gcc" Makes UnZip on most systems using "gcc". -# "make list" Lists all supported targets. -# "make help" Advice on which targets to try if problems occur. -# -# CF are flags for the C compiler. LF are flags for the loader. LF2 are more -# flags for the loader, if they need to be at the end of the line instead of at -# the beginning (for example, some libraries). FL and FL2 are corresponding -# flags for fUnZip. LOCAL_UNZIP is a "make" macro that can be used to add -# default C flags to your compile without editing the Makefile (e.g., -# -DDEBUG_STRUC, or -FPi87 on PCs using Microsoft C). -# -# The "generic" and "generic_gcc" targets use the "unix/configure" script to -# probe the compiler and other parts of the environment to adjust the build -# procedure, and to enable or disable some program features. Other (older) -# targets are less well tested, and may need considerable help from the user -# to get optimal results (or any success at all). -# -# The "generic" and "generic_gcc" targets should find bzip2 source code in the -# local ./bzip2 subdirectory, or the user can set the "make" macro IZ_BZIP2 to -# a directory containing suitable bzip2 header and object/shared library files. -# Similarly, to use zlib compress-expand code instead of UnZip's built-in code, -# set the "make" macro IZ_ZLIB to a directory containing suitable zlib header -# and object/shared library files. For example: -# make -f unix/Makefile IZ_BZIP2=../../bzip2/bzip2-1.0.5 \ -# IZ_ZLIB=../../zlib/zlib-1.2.5 generic -# -# Some versions of make do not define the macro "MAKE"; this is rare, but if -# things don't work, try using "make" instead of "$(MAKE)" in your system's -# makerule. Or try adding the following line to your .login file: -# setenv MAKE "make" -# (That never works--makes that are too stupid to define MAKE are also too -# stupid to look in the environment--but try it anyway for kicks. :-) ) -# -# Memcpy and memset are provided for those systems that don't have them; they -# are in fileio.c and will be used if -DZMEM is included in CF. These days -# almost all systems have them. -# -# Be sure to test your new UnZip (and UnZipSFX and fUnZip); successful -# compilation does not always imply a working program. - - -##################### -# MACRO DEFINITIONS # -##################### - -# Defaults most systems use (use "make" macro LOCAL_UNZIP to add compiler -# flags, such as -DDOSWILD). - -# UnZip flags -CC = cc# try using "gcc" target rather than changing this (CC and LD -LD = $(CC)# must match, else "unresolved symbol: ___main" is possible) -AS = as -LOC = $(D_USE_BZ2) $(D_USE_ZLIB) $(LOCAL_UNZIP) -AF = $(LOC) -CFLAGS = -O -CF_NOOPT = -I. -DUNIX $(LOC) -CF = $(CFLAGS) $(CF_NOOPT) -LFLAGS1 = -LF = -o unzip$E $(LFLAGS1) -LF2 = -s - -# UnZipSFX flags -SL = -o unzipsfx$E $(LFLAGS1) -SL2 = $(LF2) - -# fUnZip flags -FL = -o funzip$E $(LFLAGS1) -FL2 = $(LF2) - -# general-purpose stuff -#CP = cp -CP = ln -LN = ln -RM = rm -f -CHMOD = chmod -BINPERMS = 755 -MANPERMS = 644 -STRIP = strip -E = -O = .o -M = unix -SHELL = /bin/sh -MAKEF = -f unix/Makefile - -# Version info for unix/unix.c -HOST_VERSINFO=-DIZ_CC_NAME='\"\$$(CC) \"' -DIZ_OS_NAME='\"`uname -a`\"' - -# defaults for crc32 stuff and system dependent headers -CRCA_O = -OSDEP_H = unix/unxcfg.h -# default for dependency on auto-configure result, is an empty symbol -# so that the static non-autoconfigure targets continue to work -ACONF_DEP = - -# optional inclusion of bzip2 decompression -IZ_OUR_BZIP2_DIR = bzip2 -IZ_BZIP2 = $(IZ_OUR_BZIP2_DIR) -## The following symbols definitions need to be set to activate bzip2 support: -#D_USE_BZ2 = -DUSE_BZIP2 -#L_BZ2 = -lbz2 -#LIBBZ2 = $(IZ_BZIP2)/libbz2.a - -# defaults for unzip's "built-in" bzip2 library compilation -CC_BZ = $(CC) -CFLAGS_BZ = $(CFLAGS) - -# object files -OBJS1 = unzip$O crc32$O $(CRCA_O) crypt$O envargs$O explode$O -OBJS2 = extract$O fileio$O globals$O inflate$O list$O match$O -OBJS3 = process$O ttyio$O ubz2err$O unreduce$O unshrink$O zipinfo$O -OBJS = $(OBJS1) $(OBJS2) $(OBJS3) $M$O -LOBJS = $(OBJS) -OBJSDLL = $(OBJS:.o=.pic.o) api.pic.o -OBJX = unzipsfx$O crc32_$O $(CRCA_O) crypt_$O extract_$O fileio_$O \ - globals_$O inflate_$O match_$O process_$O ttyio_$O ubz2err_$O $M_$O -LOBJX = $(OBJX) -OBJF = funzip$O crc32$O $(CRCA_O) cryptf$O globalsf$O inflatef$O ttyiof$O -#OBJS_OS2 = $(OBJS1:.o=.obj) $(OBJS2:.o=.obj) os2.obj -#OBJF_OS2 = $(OBJF:.o=.obj) -UNZIP_H = unzip.h unzpriv.h globals.h $(OSDEP_H) $(ACONF_DEP) - -# installation -# (probably can change next two to `install' and `install -d' if you have it) -INSTALL = cp -INSTALL_PROGRAM = $(INSTALL) -INSTALL_D = mkdir -p -# on some systems, manext=l and MANDIR=/usr/man/man$(manext) may be appropriate -manext = 1 -prefix = /usr/local -BINDIR = $(prefix)/bin# where to install executables -MANDIR = $(prefix)/man/man$(manext)# where to install man pages -INSTALLEDBIN = $(BINDIR)/funzip$E $(BINDIR)/unzip$E $(BINDIR)/unzipsfx$E \ - $(BINDIR)/zipgrep$E $(BINDIR)/zipinfo$E -INSTALLEDMAN = $(MANDIR)/funzip.$(manext) $(MANDIR)/unzip.$(manext) \ - $(MANDIR)/unzipsfx.$(manext) $(MANDIR)/zipgrep.$(manext) \ - $(MANDIR)/zipinfo.$(manext) - -# Solaris 2.x package stuff: -PKGDIR = IZunzip -VERSION = Version 6.1 - -UNZIPS = unzip$E funzip$E unzipsfx$E -# this is a little ugly...well, OK, it's a lot ugly: -MANS = man/funzip.1 man/unzip.1 man/unzipsfx.1 man/zipgrep.1 man/zipinfo.1 -DOCS = funzip.txt unzip.txt unzipsfx.txt zipgrep.txt zipinfo.txt - -# list of supported systems/targets in this version -SYSTEMG1 = generic generic_gcc generic_pkg generic_gccpkg -SYSTEMG2 = generic1 generic2 generic3 generic_bz2 generic_zlib generic_shlib -SYSTEMS1 = 386i 3Bx 7300 7300_gcc aix aix_rt amdahl amdahl_eft apollo aviion -SYSTEMS2 = bsd bsdi bsdi_noasm bull coherent convex cray cray_opt cyber_sgi -SYSTEMS3 = cygwin dec dnix encore eta freebsd gcc gould hk68 hp hpux -SYSTEMS4 = isc isc_gcc isi linux linux_dos linux_noasm linux_shlib linux_shlibz -SYSTEMS5 = lynx macosx macosx_gcc minix mips mpeix next next10 next2x next3x -SYSTEMS6 = nextfat osf1 pixel ptx pyramid qnxnto realix regulus rs6000 sco -SYSTEMS7 = sco_dos sco_sl sco_x286 sequent sgi solaris solaris_pkg stardent -SYSTEMS8 = stellar sunos3 sunos4 sysv sysv_gcc sysv6300 tahoe ti_sysv ultrix -SYSTEMS9 = vax v7 xenix xos - - -#################### -# DEFAULT HANDLING # -#################### - -# By default, print help on which makefile targets to try. (The SYSTEM -# variable is no longer supported; use "make " instead.) - -help: - @echo "" - @echo " For most users, the best build method is to use the \"make\" target \"generic\"" - @echo " or \"generic_gcc\". (To use "cc", type \"make generic\" or, to use gcc," - @echo " \"make generic_gcc\".) These use the \"unix/configure\" script to probe the" - @echo " compiler and other parts of the environment to adjust the build procedure," - @echo " and to enable or disable some program features. Problems with these targets" - @echo " should be reported to the developers. Other (older) targets are less well" - @echo " tested, and may need considerable help from the user to get optimal results" - @echo " (or any success at all)." - @echo "" - @echo " If \"generic[_gcc]\" fails, then you might try the original generic which is" - @echo " now \"generic1\". Always do \"make clean\" before trying a different target." - @echo "" - @echo " If the compiler complains about \"timezone redefined\", then the \"generic2\"" - @echo " target may work better. If the linker complains about an undefined symbol," - @echo " \"_ftime\", then the \"generic3\" target may work better." - @echo "" - @echo " One of these actions should produce working UnZip programs on most" - @echo " UNIX(-like) systems. If you know a bit more about the system on which you" - @echo " work, then you might try \"make list\" for a list of the system-specific" - @echo " targets supported herein. (Many of them do exactly the same thing, so don't" - @echo " agonize too much over which to pick if two or more sound equally likely.)" - @echo " Also check out the INSTALL file for notes on compiling various targets. As" - @echo " a last resort, feel free to read the numerous comments within the Makefile" - @echo " itself." - @echo "" - -list: - @echo "" - @echo\ - 'Type "make ", where is one of the following:' - @echo "" - @echo " $(SYSTEMG1)" - @echo " $(SYSTEMG2)" - @echo "" - @echo " $(SYSTEMS1)" - @echo " $(SYSTEMS2)" - @echo " $(SYSTEMS3)" - @echo " $(SYSTEMS4)" - @echo " $(SYSTEMS5)" - @echo " $(SYSTEMS6)" - @echo " $(SYSTEMS7)" - @echo " $(SYSTEMS8)" - @echo " $(SYSTEMS9)" -# @echo "" -# @echo\ -# 'Targets for related utilities (ZipInfo and fUnZip) include:' -# @echo "" -# @echo " $(SYS_UTIL1)" -# @echo " $(SYS_UTIL2)" - @echo "" - @echo\ - 'For further (very useful) information, please read the comments in Makefile.' - @echo "" - -generic_msg: - @echo "" - @echo\ - ' Attempting "make generic" now. If this fails for some reason, type' - @echo\ - ' "make help" and/or "make list" for suggestions.' - @echo "" - - -############################################### -# BASIC COMPILE INSTRUCTIONS AND DEPENDENCIES # -############################################### - -# this is for GNU make; comment out and notify zip-bugs if it causes errors -.SUFFIXES: .c .o .obj .pic.o - -# yes, we should be able to use the $O macro to combine these two, but it -# fails on some brain-damaged makes (e.g., AIX's)...no big deal -.c.o: - $(CC) -c $(CF) $*.c - -.c.obj: - $(CC) -c $(CF) $*.c - -.c.pic.o: - $(CC) -c $(CF) -o $@ $*.c - -# this doesn't work...directories are always a pain with implicit rules -#.1.txt: man/$< -# nroff -Tman -man $< | col -b | uniq | \ -# sed 's/Sun Release ..../Info-ZIP /' > $@ - - -# these rules may be specific to Linux (or at least the GNU groff package) -# and are really intended only for the authors' use in creating non-Unix -# documentation files (which are provided with both source and binary -# distributions). We should probably add a ".1.txt" rule for more generic -# systems... - -funzip.txt: man/funzip.1 - nroff -Tascii -man man/funzip.1 | col -bx | uniq | expand > $@ - -unzip.txt: man/unzip.1 - nroff -Tascii -man man/unzip.1 | col -bx | uniq | expand > $@ - -unzipsfx.txt: man/unzipsfx.1 - nroff -Tascii -man man/unzipsfx.1 | col -bx | uniq | expand > $@ - -zipgrep.txt: man/zipgrep.1 - nroff -Tascii -man man/zipgrep.1 | col -bx | uniq | expand > $@ - -zipinfo.txt: man/zipinfo.1 - nroff -Tascii -man man/zipinfo.1 | col -bx | uniq | expand > $@ - - -all: generic_msg generic -unzips: $(UNZIPS) -objs: $(OBJS) -objsdll: $(OBJSDLL) -docs: $(DOCS) -unzipsman: unzips docs -unzipsdocs: unzips docs - - -# EDIT HERE FOR PARALLEL MAKES on Sequent (and others?)--screws up MS-DOS -# make utilities if default: change "unzip$E:" to "unzip$E:&" - -unzip$E: $(OBJS) $(LIBBZ2) # add `&' for parallel makes - $(LD) $(LF) $(LOBJS) $(LF2) - -unzipsfx$E: $(OBJX) # add `&' for parallel makes - $(LD) $(SL) $(LOBJX) $(SL2) - -funzip$E: $(OBJF) # add `&' for parallel makes - $(LD) $(FL) $(OBJF) $(FL2) - -zipinfo$E: unzip$E # `&' is pointless here... - @echo\ - ' This is a Unix-specific target. ZipInfo is not enabled in some MS-DOS' - @echo\ - ' versions of UnZip; if it is in yours, copy unzip.exe to zipinfo.exe' - @echo\ - ' or else invoke as "unzip -Z" (in a batch file, for example).' - $(LN) unzip$E zipinfo$E - -# when the optional bzip2 support is provided (as recommended) by sources -# in the 'bzip2' subdirectory, create/update the library: -$(IZ_OUR_BZIP2_DIR)/libbz2.a: - @echo "Building/updating bzip2 object library..." - ( cd $(IZ_OUR_BZIP2_DIR) ; $(MAKE) -f Makebz2.iz CC="$(CC_BZ)"\ - CFLAGS="$(CFLAGS_BZ)" RM="rm -f" ) - - -crc32$O: crc32.c $(UNZIP_H) zip.h crc32.h -crypt$O: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h -envargs$O: envargs.c $(UNZIP_H) -explode$O: explode.c $(UNZIP_H) -extract$O: extract.c $(UNZIP_H) crc32.h crypt.h -fileio$O: fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h -funzip$O: funzip.c $(UNZIP_H) crc32.h crypt.h ttyio.h -globals$O: globals.c $(UNZIP_H) -inflate$O: inflate.c inflate.h $(UNZIP_H) -list$O: list.c $(UNZIP_H) -match$O: match.c $(UNZIP_H) -process$O: process.c $(UNZIP_H) crc32.h -ttyio$O: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h -ubz2err$O: ubz2err.c $(UNZIP_H) -unreduce$O: unreduce.c $(UNZIP_H) -unshrink$O: unshrink.c $(UNZIP_H) -unzip$O: unzip.c $(UNZIP_H) crypt.h unzvers.h consts.h -zipinfo$O: zipinfo.c $(UNZIP_H) - -# unzipsfx compilation section -unzipsfx$O: unzip.c $(UNZIP_H) crypt.h unzvers.h consts.h - $(CC) -c $(CF) -DSFX -o $@ unzip.c - -crc32_$O: crc32.c $(UNZIP_H) zip.h crc32.h - $(CC) -c $(CF) -DSFX -o $@ crc32.c - -crypt_$O: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h - $(CC) -c $(CF) -DSFX -o $@ crypt.c - -extract_$O: extract.c $(UNZIP_H) crc32.h crypt.h - $(CC) -c $(CF) -DSFX -o $@ extract.c - -fileio_$O: fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h - $(CC) -c $(CF) -DSFX -o $@ fileio.c - -globals_$O: globals.c $(UNZIP_H) - $(CC) -c $(CF) -DSFX -o $@ globals.c - -inflate_$O: inflate.c inflate.h $(UNZIP_H) crypt.h - $(CC) -c $(CF) -DSFX -o $@ inflate.c - -match_$O: match.c $(UNZIP_H) - $(CC) -c $(CF) -DSFX -o $@ match.c - -process_$O: process.c $(UNZIP_H) crc32.h - $(CC) -c $(CF) -DSFX -o $@ process.c - -ttyio_$O: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h - $(CC) -c $(CF) -DSFX -o $@ ttyio.c - -ubz2err_$O: ubz2err.c $(UNZIP_H) - $(CC) -c $(CF) -DSFX -o $@ ubz2err.c - - -# funzip compilation section -cryptf$O: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h - $(CC) -c $(CF) -DFUNZIP -o $@ crypt.c - -globalsf$O: globals.c $(UNZIP_H) - $(CC) -c $(CF) -DFUNZIP -o $@ globals.c - -inflatef$O: inflate.c inflate.h $(UNZIP_H) crypt.h - $(CC) -c $(CF) -DFUNZIP -o $@ inflate.c - -ttyiof$O: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h - $(CC) -c $(CF) -DFUNZIP -o $@ ttyio.c - - -# optional assembler replacements -crc_i86$O: msdos/crc_i86.asm # 16bit only - $(AS) $(AF) msdos/crc_i86.asm $(ASEOL) - -crc_gcc$O: crc_i386.S $(ACONF_DEP) # 32bit, GNU AS - $(AS) $(AF) -x assembler-with-cpp -c -o $@ crc_i386.S - -crc_gcc.pic.o: crc_i386.S $(ACONF_DEP) # 32bit, GNU AS - $(AS) $(AF) -x assembler-with-cpp -c -o $@ crc_i386.S - -crc_sysv$O: crc_i386.S $(ACONF_DEP) # 32bit, SysV AS - $(CC) -E $(AF) crc_i386.S > crc_i386s.s - $(AS) -o $@ crc_i386s.s - $(RM) crc_i386s.s - -msdos$O: msdos/msdos.c $(UNZIP_H) unzvers.h # DOS only - $(CC) -c $(CF) msdos/msdos.c - -msdos_$O: msdos/msdos.c $(UNZIP_H) # DOS unzipsfx - -$(CP) msdos/msdos.c msdos_.c > nul - $(CC) -c $(CF) -DSFX msdos_.c - $(RM) msdos_.c - -#os2$O: os2/os2.c $(UNZIP_H) # OS/2 only -# $(CC) -c $(CF) os2/os2.c - -unix$O: unix/unix.c $(UNZIP_H) unzvers.h # Unix only - $(CC) -c $(CF) unix/unix.c - -unix_$O: unix/unix.c $(UNZIP_H) # Unix unzipsfx - $(CC) -c $(CF) -DSFX -o $@ unix/unix.c - -unix.pic.o: unix/unix.c $(UNZIP_H) unzvers.h # Unix shlib - $(CC) -c $(CF) -o $@ unix/unix.c - - -unix_make: -# @echo\ -# '(Ignore any errors from `make'"' due to the following command; it's harmless.)" - -@2>&1 $(LN) unix/Makefile . > /dev/null || echo > /dev/null - -# this really only works for Unix targets, unless E and O specified on cmd line -clean: - @echo "" - @echo ' This is a Unix-specific target. (Just so you know.)' - @echo "" - -( cd $(IZ_OUR_BZIP2_DIR); $(MAKE) -f Makebz2.iz RM="rm -f" clean ) - rm -f $(UNZIPS) $(OBJS) $(OBJF) $(OBJX) api$O apihelp$O crc_gcc$O \ - crc_sysv$O unzipstb$O crypt_.c extract_.c globals_.c inflate_.c \ - ttyio_.c crc_i386s.s msdos_.c process_.c unix_.c unzipsfx.c - rm -f flags - rm -rf ./$(PKGDIR) - -# Package generation interface (by J.Bush). Originally tested under Sun -# Solaris 2.x. Other SVr4s may be very similar and could possibly use this. -# Note: expects version info to be stored in VERSION macro variable. -# See "README" under ./unix/Packaging -# -svr4package: unzips - @echo "Creating SVR4 package for Unix ..." - -@rm -rf ./$(PKGDIR) ./$(PKGDIR)_`uname -p`.pkg - -@sed -e "s/.VERSION./$(VERSION)/g" \ - -e "s/.PSTAMP./$(LOGNAME)_`date | tr ' ' '_'`/g" \ - -e "s/.ARCH./Solaris_`uname -rp | tr ' ' ','`/g" \ - ./unix/Packaging/pkginfo.in > ./unix/Packaging/pkginfo - -@sed -e "s/.ARCH./`uname -p`/g" \ - ./unix/Packaging/preinstall.in > ./unix/Packaging/preinstall - /usr/bin/pkgmk -d . -b . -r . -f ./unix/Packaging/prototype $(PKGDIR) - /usr/bin/pkgtrans -o -s . $(PKGDIR)_`uname -p`.pkg $(PKGDIR) - @echo " " - @echo "To install, copy $(PKGDIR)_`uname -p`.pkg to the target system, and" - @echo "issue the command (as root): pkgadd -d $(PKGDIR)_`uname -p`.pkg" - @echo " " - -install: $(MANS) - -$(INSTALL_D) $(BINDIR) - $(INSTALL_PROGRAM) $(UNZIPS) $(BINDIR) - $(INSTALL) unix/zipgrep $(BINDIR) - $(RM) $(BINDIR)/zipinfo$E - $(LN) $(BINDIR)/unzip$E $(BINDIR)/zipinfo$E - -$(INSTALL_D) $(MANDIR) - $(INSTALL) man/funzip.1 $(MANDIR)/funzip.$(manext) - $(INSTALL) man/unzip.1 $(MANDIR)/unzip.$(manext) - $(INSTALL) man/unzipsfx.1 $(MANDIR)/unzipsfx.$(manext) - $(INSTALL) man/zipgrep.1 $(MANDIR)/zipgrep.$(manext) - $(INSTALL) man/zipinfo.1 $(MANDIR)/zipinfo.$(manext) - $(CHMOD) $(BINPERMS) $(INSTALLEDBIN) - $(CHMOD) $(MANPERMS) $(INSTALLEDMAN) - -uninstall: - $(RM) $(INSTALLEDBIN) $(INSTALLEDMAN) - -# added 10/28/04 EG -flags: unix/configure - sh unix/configure "${CC}" "${CF_NOOPT}" "${IZ_BZIP2}" "${IZ_ZLIB}" - -# the test zipfile -TESTZIP = testmake.zip - -# test some basic features of the build -test: check - -check: - @echo '##### This is a Unix-specific target. (Just so you know.)' - @echo '##### Make sure unzip, funzip and unzipsfx are compiled and' - @echo '##### in this directory.' - @if test ! -f ./unzip; then \ - echo "##### ERROR: can't find ./unzip"; exit 1; fi - @if test ! -f ./funzip; then \ - echo "##### ERROR: can't find ./funzip"; exit 1; fi - @if test ! -f ./unzipsfx; then \ - echo "##### ERROR: can't find ./unzipsfx"; exit 1; fi -# - @if test ! -f $(TESTZIP); then \ - echo "##### ERROR: can't find test file $(TESTZIP)"; exit 1; fi -# - @echo "##### testing extraction" - @./unzip -bo $(TESTZIP) testmake.zipinfo - @if test ! -f testmake.zipinfo ; then \ - echo "##### ERROR: file extraction from $(TESTZIP) failed"; \ - exit 1; fi -# - @echo '##### testing zipinfo (unzip -Z)' - @./unzip -Z $(TESTZIP) > testmake.unzip-Z - @if diff testmake.unzip-Z testmake.zipinfo; then echo "OK."; else \ - echo "##### WARNING: zipinfo output doesn't match stored version"; \ - echo '##### (If the only difference is the file times, compare your'; \ - echo '##### timezone with the Central European timezone, which is one'; \ - echo '##### hour east of Greenwich but effectively 2 hours east'; \ - echo '##### during summer Daylight Savings Time. The upper two'; \ - echo '##### lines should correspond to your local time when the'; \ - echo '##### files were created, on 19 November 1998 at 10:46pm CET.'; \ - echo '##### If the times are consistent, please ignore this warning.)'; \ - fi - @$(RM) testmake.unzip-Z testmake.zipinfo -# - @echo '##### testing unzip -d exdir option' - @./unzip -bo $(TESTZIP) -d testun notes - @cat testun/notes -# - @echo '##### testing unzip -o and funzip (ignore funzip warning)' - @./unzip -boq $(TESTZIP) notes -d testun - @./funzip < $(TESTZIP) > testun/notes2 - @if diff testun/notes testun/notes2; then true; else \ - echo '##### ERROR: funzip output disagrees with unzip'; fi -# - @echo '##### testing unzipsfx (self-extractor)' - @cat unzipsfx $(TESTZIP) > testsfx - @$(CHMOD) 0700 testsfx - @./testsfx -bo notes - @if diff notes testun/notes; then true; else \ - echo '##### ERROR: unzipsfx file disagrees with unzip'; fi - @$(RM) testsfx notes testun/notes testun/notes2 - @rmdir testun -# - @echo '##### testing complete.' - - -################################ -# INDIVIDUAL MACHINE MAKERULES # -################################ - -#---------------------------------------------------------------------------- -# Generic targets using the configure script to determine configuration. -#---------------------------------------------------------------------------- - -# Well, try MAKE and see. By now everyone may be happy. 10/28/04 EG -generic: flags # now try autoconfigure first - eval $(MAKE) $(MAKEF) unzips ACONF_DEP=flags `cat flags` -# make $(MAKEF) unzips CF="${CF} `cat flags`" - -generic_gcc: - $(MAKE) $(MAKEF) generic CC=gcc IZ_BZIP2="$(IZ_BZIP2)" - -# extensions to perform SVR4 package-creation after compilation -generic_pkg: generic svr4package -generic_gccpkg: generic_gcc svr4package - -#---------------------------------------------------------------------------- -# Old static generic targets (can't assume make utility groks "$(MAKE)") -#---------------------------------------------------------------------------- - -generic1: unzips # first try if unknown - -generic2: unix_make # second try if unknown: hope make is called "make" - make $(MAKEF) unzips CF="$(CF) -DBSD" - -generic3: unix_make # third try if unknown: hope make is called "make" - make $(MAKEF) unzips CF="$(CF) -DSYSV" - -# Generic build including bzip2 decompression support for unzip. -# Requires presence of the bzip2 sources in subdirectory bzip2. - -generic_bz2: unix_make - @echo\ - "This target assumes bzip2 sources are available in subfolder bzip2/." - $(MAKE) $(MAKEF) unzips D_USE_BZ2="-DUSE_BZIP2"\ - L_BZ2="-lbz2" LIBBZ2="$(IZ_OUR_BZIP2_DIR)/libbz2.a" \ - CC_BZ="$(CC)" CFLAGS_BZ="$(CFLAGS)" - -# Generic unzip and funzip target using either shared or static zlib for -# inflate rather than the original UnZip version. (libz was libgz prior -# to 0.94) Need to figure out how to force unzipsfx to use static libz. - -generic_zlib: unix_make - @echo\ - "This target assumes zlib (libz.a or libz.so.*) is already installed." - $(MAKE) unzip funzip CF="$(CF) -DUSE_ZLIB" LF2="-lz $(LF2)" - -# Generic GNU C shared library. This is an example of how to compile UnZip as -# a shared library. (Doing so as a static library would be similar.) See also -# the linux_shlib target. - -generic_shlib: unix_make - @echo\ - 'This target requires GNU C. When done, do "setenv LD_LIBRARY_PATH `pwd`"' - @echo\ - 'or similar in order to test the shared library in place (with ./unzip_shlib ,' - @echo\ - 'which is UnZip linked with the DLL). This target is an example only.' - @echo "" - $(MAKE) objsdll CC=gcc CFLAGS="-O3 -Wall -fPIC -DDLL" - gcc -shared -Wl,-soname,libunzip.so.0 -o libunzip.so.0.4 $(OBJSDLL) - $(RM) libunzip.so.0 libunzip.so - $(LN) -s libunzip.so.0.4 libunzip.so.0 - $(LN) -s libunzip.so.0 libunzip.so - gcc -c -O unzipstb.c - gcc -o unzip_shlib unzipstb.o -L. -lunzip - -#---------------------------------------------------------------------------- -# "Autoconfig" group, aliases for the generic targets using configure: -#---------------------------------------------------------------------------- - -# Solaris: generic, plus generation of installable package. -solaris_pkg: generic_pkg - -# Solaris: forcing usage of GCC, plus generation of installable package. -solaris_gccpkg: generic_gcc_pkg - -#---------------------------------------------------------------------------- -# "Normal" group (BSD vs. SysV may be set in unzip.h via predefined macros): -#---------------------------------------------------------------------------- - -386i: unzips # sun386i, SunOS 4.0.2 -#3Bx: unzips # AT&T 3B2/1000-80; should work on any WE32XXX machine -#aix_rt: unzips # IBM RT 6150 under AIX 2.2.1 -bull: unzips # Bull DPX/2, BOS 2.00.45 (doesn't require -Xk switch) -convex: unzips # Convex C-120 and C-210 (-O is enough; -ext is default) -cray: unzips # Cray-2 and Y-MP, using default (possibly old) compiler -dec: unzips # DEC 5820 (MIPS RISC), test version of Ultrix v4.0 -encore: unzips # Multimax -eta: unzips # ETA-10P*, hybrid SysV with BSD 4.3 enhancements -gould: unzips # Gould PN9000 running UTX/32 2.1Bu01 -hp: unzips # HP 9000 series (68020), 4.3BSD or HP-UX A.B3.10 Ver D -hpux: unzips # (to match zip's makefile entry) -mips: unzips # MIPS M120-5(?), SysV.3 [error in sys/param.h file?] -next10: unzips # NeXT (generic; use next2x or next3x for better opt.) -osf1: unzips # DECstation, including Alpha-based; DEC OSF/1 v1.x -pyr_: unzips # [failsafe target for pyramid target below] -pyr_ucb: unzips # Pyramids running BSD universe by default (see below) -realix: unzips # Modcomp Real/IX (SysV.3); note "gcc" = GLS C, not GNU -sco: unzips # Xenix/386 (tested on 2.3.1); SCO Unix 3.2.0. -sgi: unzips # Silicon Graphics; Irix 3.3.2, 4.0.x, 5.2, etc. -stellar: unzips # gs-2000 -sun: unzips # old target; no good with solaris...use "sunos" now -sunos: unzips # no good with SunOS 3.x...use "sunos3" or "sunos4" now -sunos4: unzips # Sun 3, 4; SunOS 4.x (SOME SYSTEMS ARE SYSTEM V!) -tahoe: unzips # tahoe (CCI Power6/32), 4.3BSD -ultrix: unzips # VAXen, DEC 58x0 (MIPS guts), DECstation 2100; v4.x -vax: unzips # general-purpose VAX target (not counting VMS) - -#---------------------------------------------------------------------------- -# BSD group (for timezone structs [struct timeb]): -#---------------------------------------------------------------------------- - -bsd: _bsd # generic BSD (BSD 4.2 & Ultrix handled in unzip.h) - -_bsd: unix_make - $(MAKE) unzips CF="$(CF) -DBSD" - -#---------------------------------------------------------------------------- -# SysV group (for extern long timezone and ioctl.h instead of sgtty.h): -#---------------------------------------------------------------------------- - -aix_rt: _sysv # IBM RT 6150 under AIX 2.2.1 -aviion: _sysv # Data General AViiONs, DG/UX 4.3x -pyr_att: _sysv # Pyramids running AT&T (SysV) universe by default -stardent: _sysv # Stardent ... -sysv: _sysv # generic System V Unix (Xenix handled in unzip.h) -xos: _sysv # Olivetti LSX-3005..3045, X/OS 2.3 and 2.4 - -_sysv: unix_make - $(MAKE) unzips CF="$(CF) -DSYSV" - -# extension to perform SVR4 package-creation after compilation -_sysvp: _sysv svr4package - -#---------------------------------------------------------------------------- -# Version 7 group (old/obsolescent): -#---------------------------------------------------------------------------- - -pixel: _v7 # Pixel 80, 100 (68000-based, V7/mostly BSD4.1 compat.) -v7: _v7 # generic Unix Version 7 box (prob. only Pixel...) - -_v7: - make $(MAKEF) unzips \ - CF="$(CF) -DV7 -DNO_PARAM_H -DSHORT_NAMES -DBSD -DZMEM -DNO_LCHOWN -DNO_LCHMOD" - -#---------------------------------------------------------------------------- -# "Unique" group (require non-standard options): -#---------------------------------------------------------------------------- - -# AT&T 3B2/1000-80; should work on any WE32XXX machine -3Bx: unix_make - $(MAKE) unzips CF="$(CF) -DCBREAK=2" - -# AT&T 7300 (M68000/SysV.3) (add -DSYSV? -DNO_LIMITS?) -7300: unix_make - $(MAKE) unzips CF="$(CF) -DNO_DIR -DNO_MKDIR -DNO_STRNICMP -DNO_UID_GID -DNO_FCHMOD -DNO_LCHOWN -DNO_LCHMOD -DCBREAK=2" - -7300_gcc: unix_make - $(MAKE) unzips CC=gcc LD=gcc LF2="" CFLAGS="-O2" \ - LOC="-DNO_DIR -DNO_MKDIR -DNO_STDLIB_H -DNO_STRNICMP -DNO_UID_GID -DNO_FCHMOD -DNO_LCHOWN -DNO_LCHMOD -DCBREAK=2 $(LOC)" - $(STRIP) $(UNZIPS) - -# IBM AIX 3.x on an RS/6000: see rs6000 target below -aix: rs6000 - -# Amdahl (IBMish) mainframe, UTS (SysV) 1.2.4, 2.0.1, 3.x -amdahl: unix_make - $(MAKE) unzips CF="$(CF) -DSYSV -DNO_UID_GID -DNO_LCHOWN -DNO_LCHMOD" - -# Amdahl UTS 2.1.4 with "extended file types" filesystem (aarrrggghhhh...) -amdahl_eft: unix_make - $(MAKE) unzips CF="$(CF) -eft -DSYSV -DNO_UID_GID -DNO_LCHOWN -DNO_LCHMOD" - -# Apollo Domain/OS machines (added -D...SOURCE options) [Gordon Fox, 960810] -apollo: unix_make - $(MAKE) unzips CF="$(CF) -D_INCLUDE_BSD_SOURCE -D_INCLUDE_XOPEN_SOURCE -DNO_LCHOWN -DNO_LCHMOD" - -# BSDI BSD/OS on 386 platform, using the assembler replacement for crc32.c -bsdi: unix_make - @echo 'NOTE: use bsdi_noasm target for non-Intel BSD/OS compiles.' - $(MAKE) unzips CC=gcc2 LD=shlicc2 AS=gcc2\ - CFLAGS="-O3 -Wall -DASM_CRC -DBSD" CRCA_O=crc_gcc$O - -# BSDI BSD/OS -bsdi_noasm: unix_make -# @echo 'NOTE: use bsd target for non-Intel BSD/OS compiles.' - $(MAKE) unzips CC=gcc2 LD=shlicc2 AS=gcc2\ - CFLAGS="-O3 -Wall -DBSD" - -# Coherent 3.x/4.x, Mark Williams C. ``For Coherent's CC, it needs either -# -T0 or -T150000 (or bigger) added to the CFLAGS, otherwise the compiler -# runs out of memory and dies in zipinfo.c.'' [Fred "Fredex" Smith, 940719] -coherent: unix_make - $(MAKE) unzips CFLAGS="$(CFLAGS) -T0 -DNO_LCHOWN -DNO_LCHMOD" - -# Cray-2, Y-MP or C90, running Unicos 5.x to 8.x (SysV + BSD enhancements) -# and Standard (ANSI) C compiler 3.0 or later. -cray_opt: unix_make - $(MAKE) unzips CFLAGS="$(CFLAGS) -h scalar3 -h vector3 -DNO_LCHOWN -DNO_LCHMOD" - -# The unzip41 build on a Cyber 910/SGI running Irix v3.3.3 was successful -# with the following change to Makefile: -cyber_sgi: unix_make - $(MAKE) unzips CFLAGS="$(CFLAGS) -I/usr/include/bsd -DNO_LCHOWN -DNO_LCHMOD"\ - LF="-lbsd $(LF)" SL="-lbsd $(SL)" - -# The Cygwin environment on a Win32 system, treated as an UNIX emulator. -# This port does not offer full access to the Windows file system. -# Info-ZIP recommends using "win32/Makefile.gcc" instead. -cygwin: unix_make - $(MAKE) unzips CC=gcc LD=gcc AS=gcc\ - CFLAGS="-O3 -DASM_CRC -DNO_LCHOWN -DNO_LCHMOD"\ - AF="-Di386 $(AF)" CRCA_O=crc_gcc$O\ - E=".exe" CP="cp" LN="ln -s" - -# 680x0, DIAB dnix 5.2/5.3 (a Swedish System V clone) -# -# Options for the dnix cc: -# -X7 = cc is strict ANSI C -# -X9 = warnings if a function is used without a declaration -# -dnix: unix_make - $(MAKE) unzips CFLAGS="$(CFLAGS) -X7 -X9 -DDNIX" - -# FreeBSD on Intel: -freebsd: unix_make - @echo 'NOTE: use bsd target for non-Intel FreeBSD compiles (if any).' - $(MAKE) unzips CC=gcc LD=gcc AS=gcc\ - CFLAGS="-O3 -Wall -DASM_CRC -DBSD"\ - AF="-Di386 $(AF)" CRCA_O=crc_gcc$O - -# Generic BSDish Unix gcc. ``The -O3 only works with later versions of gcc; -# you may have to use -O2 or -O for earlier versions. I have no idea why -# -s causes this bug in gcc.'' [Bug: "nm: unzip: no name list", "collect: -# /usr/bin/nm returned 1 exit status".] If you don't have strip, don't -# worry about it (it just makes the executable smaller and can be replaced -# with "echo" instead). -# -gcc: unix_make - $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-O3" LF2="" - $(STRIP) $(UNZIPS) - -# Heurikon HK68 (68010), UniPlus+ System V 5.0, Green Hills C-68000 -hk68: unix_make - $(MAKE) unzips CC="gcc" LD="gcc"\ - LF="-n $(LF)" SL="-n $(SL)" FL="-n $(FL)"\ - CFLAGS="-ga -X138 -Dlocaltime=localti -Dtimezone=timezon" - -# ISC Unix on 386 platform -isc: unix_make - $(MAKE) unzips LF2="-lc_s $(LF2)" CRCA_O=crc_sysv$O \ - CFLAGS="-O" LOC="-DASM_CRC -DSYSV -DNO_UID_GID -DNEED_PTEM -DNO_LCHOWN -DNO_LCHMOD $(LOC)" \ - AF="-DNO_UNDERLINE -Djecxz=jcxz -DALIGNMENT='.align 16' $(AF)" - -isc_gcc: unix_make - $(MAKE) unzips AS=gcc CC=gcc LD=gcc CRCA_O=crc_gcc$O \ - LF="-shlib $(LF)" SL="-shlib $(SL)" FL="-shlib $(FL)" LF2="" \ - CFLAGS="-O3" LOC="-DSYSV -DASM_CRC -DNO_UID_GID -DNEED_PTEM -DNO_LCHOWN -DNO_LCHMOD $(LOC)" \ - AF="-DNO_UNDERLINE -Djecxz=jcxz -DALIGNMENT='.align 16' $(AF)" - $(STRIP) $(UNZIPS) - -# "ISI machine (68025 CPU)" (based on e-mail from Rob White ; -# no further information). May also need DIRENT defined. -isi: unix_make - $(MAKE) unzips CF="$(CF) -DDECLARE_ERRNO -DNO_LCHOWN -DNO_LCHMOD" - -# Linux on 386 platform, using the assembler replacement for crc32.c. (-O4 and -# -fno-strength-reduce have virtually no effect beyond -O3. Add "-m486 -# -malign-functions=2 -malign-jumps=2 -malign-loops=2" for Pentium [Pro] -# systems.) -linux: unix_make - @echo 'NOTE: use linux_noasm target for non-Intel Linux compiles.' - $(MAKE) unzips CC=gcc LD=gcc AS=gcc\ - CFLAGS="-O3 -Wall -DASM_CRC"\ - AF="-Di386 $(AF)" CRCA_O=crc_gcc$O -# GRR: this echo is pointless; if user gets this far, no difference to install -# @echo 'Be sure to use the install_asm target rather than the install target' - -linux_asm: linux - -# Linux (Posix, approximately SysV): virtually any version since before 0.96, -# for any platform. Change "-O" to "-O3" or whatever, as desired... -linux_noasm: unix_make - $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-O -Wall" - -# Linux with lcc compiler: __inline__ (stat.h) not recognized, and must edit -# /usr/include/gnu/types.h to get rid of "long long" if __LCC__ defined. -O3 -# (or -O2 or -O) is ignored. [GRR 960828: test target only] -# -linux_lcc: unix_make - $(MAKE) unzips CC=lcc LD=lcc CFLAGS="-O3 -Wall -D__inline__= " - -# Linux host with go32 (djgpp) cross-compiler (go32crs.tgz) for 32-bit DOS. -linux_dos: unix_make - $(MAKE) unzips CC=go32gcc LD=go32gcc M=msdos OSDEP_H="msdos/doscfg.h" \ - CFLAGS="-O2 -Wall" -# go32-strip unzip -# Due to limitations of the cross-compiling package, this has to be -# done manually: - @echo Copy $(UNZIPS) to your DOS partition and use coff2exe. - -# Linux ELF shared library (ooo, it's so easy). This is a test target for -# now, and it only makes the UnZip/ZipInfo stuff (not fUnZip or UnZipSFX). -# The version number may eventually change to match the UnZip version. Or -# not. Whatever. Also do "setenv LD_LIBRARY_PATH `pwd`" or similar to test -# the DLL in place (with unzip_shlib, which is UnZip linked with the shared -# library). -# -linux_shlib: unix_make - $(MAKE) objsdll CC=gcc CFLAGS="-O3 -Wall -fPIC"\ - LOC="-DDLL -DASM_CRC $(LOC)"\ - AS=gcc AF="-fPIC -Di386 $(AF)" CRCA_O=crc_gcc$O - gcc -shared -Wl,-soname,libunzip.so.0 -o libunzip.so.0.4 $(OBJSDLL)\ - crc_gcc.pic.o - ln -sf libunzip.so.0.4 libunzip.so.0 - ln -sf libunzip.so.0 libunzip.so - gcc -c -O unzipstb.c - gcc -o unzip_shlib unzipstb.o -L. -lunzip - -# Linux ELF shared library, as above, but using inflate() from zlib (libz.so) -# instead of the original UnZip version. (libz was libgz prior to 0.94) -linux_shlibz: unix_make - $(MAKE) objsdll CC=gcc AS=gcc AF="-fPIC -Di386 $(AF)" CRCA_O=crc_gcc$O\ - CFLAGS="-O3 -Wall -fPIC" LOC="-DDLL -DUSE_ZLIB -DASM_CRC $(LOC)" - gcc -shared -Wl,-soname,libunzip.so.0 -o libunzip.so.0.4 $(OBJSDLL)\ - crc_gcc.pic.o - ln -sf libunzip.so.0.4 libunzip.so.0 - gcc -c -O unzipstb.c - gcc -o unzip unzipstb.o -L. -lunzip -lz - -# LynxOS-x86 2.3.0 and newer, a real-time BSD-like OS; uses gcc. -lynx: unix_make - $(MAKE) unzips CC=gcc CF="$(CF) -DLynx -DLYNX -DBSD -DUNIX" - -# Macintosh MacOS X (Unix-compatible enviroment), using standard compiler -macosx: unix_make - $(MAKE) unzips CFLAGS="-O3 -Wall -DBSD" LF2="" - $(STRIP) $(UNZIPS) - -# Macintosh MacOS X (Unix-compatible enviroment), using gcc -macosx_gcc: unix_make - $(MAKE) unzips CC=gcc CFLAGS="-O3 -Wall -DBSD" LF2="" - $(STRIP) $(UNZIPS) - -# Minix 1.5 PC for the 386. Invoke as is to use default cc, or as "make -# minix CC=gcc" to use gcc. Try "make linux" if you have a working termios.h. -minix: unix_make - $(MAKE) unzips CF="$(CF) -DMINIX -DSHORT_NAMES -DNO_LCHOWN -DNO_LCHMOD" CC=$(CC) LD=$(CC) - -# MPE/iX, the Unix variant for HP 3000 systems. -mpeix: unix_make - $(MAKE) unzips CC=c89\ - CF="$(CF) -DUNIX -D_POSIX_SOURCE -DHAVE_TERMIOS_H -DPASSWD_FROM_STDIN -DNO_PARAM_H -DNO_LCHOWN -DNO_LCHMOD"\ - LF2=-lbsd CP=cp LN="ln -s" - -# NeXT info. -next: - @echo - @echo\ - ' Please pick a specific NeXT target: "make next10" will create a generic' - @echo\ - ' NeXT executable; "make next2x" will create a smaller executable (for' - @echo\ - ' NeXTstep 2.0 and higher); "make next3x" will create a small executable' - @echo\ - ' with significantly better optimization (NeXTstep 3.0 and higher only);' - @echo\ - ' "make nextfat" will create a fat, multi-architecture (NeXT plus Intel)' - @echo\ - ' executable (NeXTstep 3.1 and higher only).' - @echo - -# 68030 BSD 4.3+Mach. NeXT 2.x: make the executable smaller. -next2x: unix_make - $(MAKE) unzips LF2="-object -s" - -# NeXT 3.x: as above, plus better optimization. -next3x: unix_make - $(MAKE) unzips CFLAGS="-O2" LF2="-object -s" - -# NeXT 3.1+: make the executable fat (multi-architecture binary [MAB], -# for "black" [NeXT] and "white" [x86] hardware, so far). -nextfat: unix_make - $(MAKE) unzips CFLAGS="-O2 -arch i386 -arch m68k" \ - LF2="-arch i386 -arch m68k -object -s" - -# IBM OS/390 (formerly MVS) compiled under "OpenEdition" shell -os390: unix_make - set -x; \ - $(MAKE) $(MAKEF) unzips \ - CC=c89 LD="\$$(CC) -Wl,EDIT=NO" \ - CF="$(CF) -DSYSV -DUNIX -DOS390 -DEBCDIC -DNO_PARAM_H \ - -DNO_LCHOWN -DNO_LCHMOD \ - -D_ALL_SOURCE $(HOST_VERSINFO)" LF2="" - -# Sequent Symmetry running Dynix/ptx (sort of SysV.3): needs to link -# with libseq to get symlink(). -ptx: unix_make - $(MAKE) unzips CF="$(CF) -DSYSV -DTERMIO -DPTX -DNO_LCHOWN -DNO_LCHMOD" LF2="$(LF2) -lseq" - -# Pyramid 90X (probably all) under >= OSx4.1, either universe. (This is an -# experimental target! If it fails, use either pyr_ucb or pyr_att instead.) -# The make in the BSD half is too stupid to understand $(MAKE), sigh... -pyramid: unix_make - -make $(MAKEF) pyr_`universe` - -# QNX/Neutrino is "special" because you don't have any native development -# tools yet. Set ARCH to "x86", "ppcbe", "ppcle", "mipsbe", or "mipsle" -# to produce x86, PowerPC (big- or little-endian) and MIPS (big- -# or little-endian) using gcc. [cjh] -qnxnto: unix_make - @if [ "$(ARCH)" = "" ] ; then \ - echo "You didn't set ARCH; I'll assume you meant ARCH=x86..." ; \ - echo "" ; \ - $(MAKE) $(MAKEF) CC="qcc -Vgcc_ntox86" unzips ; \ - else \ - echo "Making unzip for $(ARCH)..." ; \ - echo "" ; \ - $(MAKE) $(MAKEF) CC="qcc -Vgcc_nto$(ARCH)" unzips ; \ - fi - -# REGULUS: 68040-based, "real-time" SysV.3 mutant; uses gcc, with "REGULUS" -# predefined. -regulus: unix_make - $(MAKE) unzips CF="$(CF) -traditional -DSYSV -DNO_MKDIR -DNO_LCHOWN -DNO_LCHMOD" - -# IBM RS/6000 under AIX 3.2 -rs6000: unix_make - $(MAKE) unzips CF="$(CF) -DBSD -D_BSD -DUNIX" LF2="-lbsd" - -# SCO cross compile from Unix to DOS. Tested with Xenix/386 and OpenDeskTop. -# Should work with Xenix/286 as well. (davidsen) Note that you *must* remove -# the Unix objects and executable before doing this! (Piet Plomp: gcc won't -# recognize the -M0 flag that forces 8086 code.) (GRR: may need to reduce -# stack to 0c00h if using 286/small-model code...?) -sco_dos: unix_make - $(MAKE) unzips CFLAGS="-O -dos -M0" M=msdos OSDEP_H="msdos/doscfg.h" \ - LF="-dos -F 2000" LF2="-o unzip.exe" \ - FL="-dos" FL2="-o funzip.exe" SL="-dos" SL2="-o unzipsfx.exe" - -# SCO UNIX with shared libraries and no international support. If you are -# not using a USA-style keyboard and display, you may want to remove -nointl -# to get support. It adds quite a bit to the size of the executable. -sco_sl: unix_make - $(MAKE) unzips LF="$(LF) -nointl" LF2="$(LF2) -lc_s"\ - SL="$(SL) -nointl" FL="$(FL) -nointl" - -# SCO Xenix/286 2.2.3 or later with development system 2.2.1 or later -sco_x286: unix_make - $(MAKE) unzips CF="$(CF) -Mel2 -LARGE -DNO_MKDIR -DNO_LCHOWN -DNO_LCHMOD" \ - LF="$(LF) -Mel2 -LARGE -lx" SL="$(SL) -Mel2 -LARGE" \ - FL="$(FL) -Mel2 -LARGE" - -# Sequent Symmetry with Dynix. (386, but needs -DZMEM) -# This should also work on Balance but I can't test it just yet. -sequent: unix_make - $(MAKE) unzips CF="$(CF) -DBSD -DZMEM -DNO_LCHOWN -DNO_LCHMOD" - -# Sun 2, 3, 4 running SunOS 3.x -sunos3: unix_make - $(MAKE) unzips CF="$(CF) -DNO_UID_GID -DUID_USHORT -DNO_LCHOWN -DNO_LCHMOD" - -# Generic System V + GNU C -sysv_gcc: unix_make - $(MAKE) unzips CC=gcc LD=gcc CFLAGS="-O2 -DSYSV" LF2="" - $(STRIP) $(UNZIPS) - -# AT&T 6300+, System V.2 Unix: run-time out-of-memory error if don't use -Ml; -# also compile-time error if work arrays dimensioned at HSIZE+2 (>32K) -sysv6300: unix_make - $(MAKE) unzips CF="$(CF) -Ml -DSYSV -DNO_LCHOWN -DNO_LCHMOD" LF="$(LF) -Ml"\ - SL="$(SL) -Ml" FL="$(FL) -Ml" - -# Texas Instruments System V.3 (running on HP 9000-1500) -ti_sysv: unix_make - $(MAKE) unzips CF="$(CF) -DSYSV -DNO_UID_GID -DUID_USHORT -DNO_LCHOWN -DNO_LCHMOD" - -# SCO Xenix (Joe Foster 950508: "unzip needs to be linked with -lx [for the -# opendir(), readdir(), telldir(), rewinddir(), and closedir() calls]") -xenix: unix_make - $(MAKE) unzips LF2="$(LF2) -lx" - diff --git a/third_party/zip/fileio.c b/third_party/zip/fileio.c index 771f2142b..84f6c4a85 100644 --- a/third_party/zip/fileio.c +++ b/third_party/zip/fileio.c @@ -22,6 +22,10 @@ #include "libc/stdio/temp.h" #include "libc/time/time.h" #include "libc/time/struct/tm.h" +#include "libc/fmt/fmt.h" +#include "libc/x/x.h" +#include "libc/x/x.h" +#include "libc/runtime/gc.internal.h" #include "libc/limits.h" #ifdef NO_MKTIME @@ -1322,6 +1326,11 @@ int a; /* attributes returned by getfileattr() */ #ifndef VMS /* VMS-specific function is in VMS.C. */ +static char *EnsureDirs(char *path) { + makedirs(gc(xdirname(path)), 0755); + return path; +} + char *tempname(zip) char *zip; /* path name of zip file to generate temp name for */ @@ -1329,6 +1338,13 @@ char *tempname(zip) { char *t = zip; /* malloc'ed space for name (use zip to avoid warning) */ +#ifdef __COSMOPOLITAN__ + t = malloc(PATH_MAX); + snprintf(t, PATH_MAX, "%szip.XXXXXX", kTmpPath); + mkstemp(EnsureDirs(t)); + return t; +#endif + # ifdef CMS_MVS if ((t = malloc(strlen(tempath) + L_tmpnam + 2)) == NULL) return NULL; diff --git a/third_party/zip/zip.c b/third_party/zip/zip.c index b7624f230..d284e5b36 100644 --- a/third_party/zip/zip.c +++ b/third_party/zip/zip.c @@ -35,10 +35,17 @@ #include "libc/stdio/stdio.h" #include "libc/stdio/temp.h" #include "libc/runtime/runtime.h" +#include "libc/runtime/gc.internal.h" +#include "libc/x/x.h" #include "third_party/bzip2/bzlib.h" #define MAXCOM 256 /* Maximum one-line comment size */ +static char *EnsureDirs(char *path) { + makedirs(gc(xdirname(path)), 0755); + return path; +} + /* Local option flags */ #ifndef DELETE #define DELETE 0 @@ -3828,7 +3835,7 @@ char **argv; /* command line tokens */ } strcat(tempzip, "ziXXXXXX"); - if ((yd = mkstemp(tempzip)) == EOF) { + if ((yd = mkstemp(EnsureDirs(gc(xjoinpaths(kTmpPath, tempzip))))) == EOF) { ZIPERR(ZE_TEMP, tempzip); } if ((y = fdopen(yd, FOPW_TMP)) == NULL) { @@ -4831,7 +4838,7 @@ char **argv; /* command line tokens */ } strcat(tempzip, "ziXXXXXX"); - if ((yd = mkstemp(tempzip)) == EOF) { + if ((yd = mkstemp(EnsureDirs(gc(xjoinpaths(kTmpPath, tempzip))))) == EOF) { ZIPERR(ZE_TEMP, tempzip); } if ((y = fdopen(yd, FOPW_TMP)) == NULL) { diff --git a/third_party/zip/zip.mk b/third_party/zip/zip.mk index 98f3d7aa0..832cefee2 100644 --- a/third_party/zip/zip.mk +++ b/third_party/zip/zip.mk @@ -93,6 +93,7 @@ THIRD_PARTY_ZIP_DIRECTDEPS = \ LIBC_SYSV \ LIBC_TIME \ LIBC_UNICODE \ + LIBC_X \ THIRD_PARTY_BZIP2 THIRD_PARTY_ZIP_DEPS := \ diff --git a/tool/build/ar.c b/tool/build/ar.c index 9df2dc982..b691e22bd 100644 --- a/tool/build/ar.c +++ b/tool/build/ar.c @@ -31,6 +31,7 @@ #include "libc/log/check.h" #include "libc/log/log.h" #include "libc/macros.internal.h" +#include "libc/mem/io.h" #include "libc/mem/mem.h" #include "libc/runtime/runtime.h" #include "libc/sock/sock.h" @@ -322,13 +323,9 @@ int main(int argc, char *argv[]) { goto fail; } outsize += (remain = sizes.p[i]); - while ((rc = copy_file_range(fd, 0, outfd, 0, remain, 0)) < remain) { - if (rc <= 0) { - reason = "copy_file_range failed"; - goto fail; - } else { - remain -= rc; - } + if (_copyfd(fd, outfd, remain) == -1) { + reason = "copy_file_range failed"; + goto fail; } close(fd); } diff --git a/tool/build/build.mk b/tool/build/build.mk index 620749c39..58ea370e8 100644 --- a/tool/build/build.mk +++ b/tool/build/build.mk @@ -85,17 +85,6 @@ o/$(MODE)/tool/build/%.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -.PRECIOUS: o/$(MODE)/tool/build/blinkenlights.com -o/$(MODE)/tool/build/blinkenlights.com: \ - o/$(MODE)/tool/build/blinkenlights.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/build/.blinkenlights/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/build/.blinkenlights/.symtab - o/$(MODE)/tool/build/emulator.o: \ OVERRIDE_COPTS += \ -fno-sanitize=pointer-overflow diff --git a/tool/build/compile.c b/tool/build/compile.c index 364ef71ff..4d1ae69e9 100644 --- a/tool/build/compile.c +++ b/tool/build/compile.c @@ -16,7 +16,6 @@ │ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │ │ PERFORMANCE OF THIS SOFTWARE. │ ╚─────────────────────────────────────────────────────────────────────────────*/ -#include "libc/assert.h" #include "libc/bits/bits.h" #include "libc/bits/safemacros.internal.h" #include "libc/calls/calls.h" @@ -38,6 +37,7 @@ #include "libc/log/log.h" #include "libc/macros.internal.h" #include "libc/math.h" +#include "libc/mem/io.h" #include "libc/mem/mem.h" #include "libc/nexgen32e/kcpuids.h" #include "libc/nexgen32e/x86feature.h" @@ -171,6 +171,7 @@ char *target; char *output; char *outpath; char *command; +char *movepath; char *shortened; char *colorflag; char ccpath[PATH_MAX]; @@ -188,6 +189,7 @@ struct timespec signalled; sigset_t mask; sigset_t savemask; char buf[PAGESIZE]; +char tmpout[PATH_MAX]; const char *const kSafeEnv[] = { "ADDR2LINE", // needed by GetAddr2linePath @@ -707,6 +709,24 @@ void ReportResources(void) { appendw(&output, '\n'); } +bool MovePreservingDestinationInode(const char *from, const char *to) { + bool res; + struct stat st; + int fdin, fdout; + if ((fdin = open(from, O_RDONLY)) == -1) { + return false; + } + fstat(fdin, &st); + if ((fdout = creat(to, st.st_mode)) == -1) { + close(fdin); + return false; + } + res = _copyfd(fdin, fdout, -1) != -1; + close(fdin); + close(fdout); + return res; +} + bool IsNativeExecutable(const char *path) { bool res; char buf[4]; @@ -737,6 +757,7 @@ int main(int argc, char *argv[]) { char *s, *p, *q, **envp; mode = firstnonnull(getenv("MODE"), MODE); + ksnprintf(tmpout, sizeof(tmpout), "%scompile.%d", kTmpPath, getpid()); /* * parse prefix arguments @@ -835,18 +856,26 @@ int main(int argc, char *argv[]) { * ingest arguments */ for (i = optind; i < argc; ++i) { + if (!movepath && !outpath && target && !strcmp(target, argv[i])) { + outpath = argv[i]; + AddArg(tmpout); + movepath = target; + MovePreservingDestinationInode(target, tmpout); + continue; + } if (argv[i][0] != '-') { AddArg(argv[i]); continue; } if (startswith(argv[i], "-o")) { if (!strcmp(argv[i], "-o")) { - AddArg(argv[i]); - AddArg((outpath = argv[++i])); + outpath = argv[++i]; } else { - AddArg(argv[i]); outpath = argv[i] + 2; } + AddArg("-o"); + AddArg(tmpout); + movepath = outpath; continue; } if (!iscc) { @@ -1091,6 +1120,19 @@ int main(int argc, char *argv[]) { makedirs(xdirname(target), 0755); touch(target, 0644); } + if (movepath) { + if (!MovePreservingDestinationInode(tmpout, movepath)) { + unlink(tmpout); + exitcode = 90; + appends(&output, "\nfailed to move output file\n"); + appends(&output, tmpout); + appends(&output, "\n"); + appends(&output, movepath); + appends(&output, "\n"); + } else { + unlink(tmpout); + } + } } else { appendw(&output, '\n'); PrintRed(); diff --git a/tool/build/cp.c b/tool/build/cp.c index 1431301f2..91434684a 100644 --- a/tool/build/cp.c +++ b/tool/build/cp.c @@ -23,6 +23,7 @@ #include "libc/fmt/conv.h" #include "libc/fmt/fmt.h" #include "libc/intrin/kprintf.h" +#include "libc/mem/io.h" #include "libc/runtime/gc.h" #include "libc/runtime/runtime.h" #include "libc/stdio/stdio.h" @@ -30,6 +31,7 @@ #include "libc/sysv/consts/at.h" #include "libc/sysv/consts/ex.h" #include "libc/sysv/consts/exit.h" +#include "libc/sysv/consts/o.h" #include "libc/sysv/consts/ok.h" #include "libc/sysv/consts/s.h" #include "libc/x/x.h" @@ -162,6 +164,24 @@ char *Join(const char *a, const char *b) { return dstfile; } +bool MovePreservingDestinationInode(const char *from, const char *to) { + bool res; + struct stat st; + int fdin, fdout; + if ((fdin = open(from, O_RDONLY)) == -1) { + return false; + } + fstat(fdin, &st); + if ((fdout = creat(to, st.st_mode)) == -1) { + close(fdin); + return false; + } + res = _copyfd(fdin, fdout, -1) != -1; + close(fdin); + close(fdout); + return res; +} + void Cp(char *src, char *dst) { ssize_t rc; const char *s; @@ -207,7 +227,7 @@ void Cp(char *src, char *dst) { linkbuf[rc] = 0; if (symlink(linkbuf, dst) == -1) goto OnFail; } else { - if (copyfile(src, dst, flags) == -1) goto OnFail; + if (!MovePreservingDestinationInode(src, dst)) goto OnFail; } return; OnFail: diff --git a/tool/build/lib/persist.c b/tool/build/lib/persist.c index f1acdf9bb..978bf3ec2 100644 --- a/tool/build/lib/persist.c +++ b/tool/build/lib/persist.c @@ -62,9 +62,9 @@ static bool IsOverlappingIov(struct iovec *a, struct iovec *b) { */ void PersistObject(const char *path, size_t align, const struct ObjectParam *obj) { + const char *pad; struct iovec *iov; int i, n, fd, iovlen; - const char *tmp, *pad; long len, size, bytes, filesize; unsigned char *hdr, *p1, *p2, **pp; intptr_t arrayptroffset, arraydataoffset; @@ -79,7 +79,6 @@ void PersistObject(const char *path, size_t align, pad = gc(xcalloc(align, 1)); hdr = gc(xmalloc(obj->size)); iov = gc(xcalloc(iovlen, sizeof(*iov))); - tmp = gc(xasprintf("%s.%d.%s", path, getpid(), "tmp")); bytes = obj->size; iov[0].iov_base = memcpy(hdr, obj->p, obj->size); iov[0].iov_len = bytes; @@ -115,8 +114,7 @@ void PersistObject(const char *path, size_t align, iov[(i + 0) * 2].iov_base, iov[(i + 0) * 2].iov_len, (i + 1) * 2, iov[(i + 1) * 2].iov_base, iov[(i + 1) * 2].iov_len, path); } - CHECK_NE(-1, (fd = open(tmp, O_CREAT | O_WRONLY | O_EXCL, 0644)), "%s", tmp); + CHECK_NE(-1, (fd = creat(path, 0644)), "%s", path); CHECK_EQ(filesize, writev(fd, iov, iovlen)); CHECK_NE(-1, close(fd)); - CHECK_NE(-1, rename(tmp, path), "%s", path); } diff --git a/tool/build/mkdeps.c b/tool/build/mkdeps.c index 00e733bdb..4fb17184e 100644 --- a/tool/build/mkdeps.c +++ b/tool/build/mkdeps.c @@ -425,7 +425,6 @@ void Explore(void) { int main(int argc, char *argv[]) { int i, fd; - char path[PATH_MAX]; ShowCrashReports(); if (argc == 2 && !strcmp(argv[1], "-n")) exit(0); GetOpts(argc, argv); @@ -435,14 +434,12 @@ int main(int argc, char *argv[]) { LoadRelationships(argc, argv); Crunch(); Explore(); - ksnprintf(path, sizeof(path), "%s.%d", out, getpid()); - CHECK_NE(-1, (fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644)), - "open(%#s)", path); + CHECK_NE(-1, (fd = open(out, O_WRONLY | O_CREAT | O_TRUNC, 0644)), + "open(%#s)", out); for (i = 0; i < threads; ++i) { CHECK_NE(-1, xwrite(fd, bouts[i], appendz(bouts[i]).i)); } CHECK_NE(-1, close(fd)); - CHECK_NE(-1, rename(path, out)); for (i = 0; i < threads; ++i) { free(bouts[i]); } diff --git a/tool/build/package.c b/tool/build/package.c index b3e78b3c5..c31c3e4f9 100644 --- a/tool/build/package.c +++ b/tool/build/package.c @@ -141,9 +141,6 @@ struct Package *LoadPackage(const char *path) { pkg->strings.p = (char *)((intptr_t)pkg->strings.p + (intptr_t)pkg); pkg->objects.p = (struct Object *)((intptr_t)pkg->objects.p + (intptr_t)pkg); pkg->symbols.p = (struct Symbol *)((intptr_t)pkg->symbols.p + (intptr_t)pkg); - CHECK(strcmp(path, &pkg->strings.p[pkg->path]) == 0, - "corrupt package: %`'s pkg=%012lx strings=%012lx", path, pkg, - pkg->strings.p); pkg->addr = pkg; pkg->size = st.st_size; CHECK_NE(-1, mprotect(pkg, st.st_size, PROT_READ)); diff --git a/tool/net/net.mk b/tool/net/net.mk index 8b029b55d..95e5d6a71 100644 --- a/tool/net/net.mk +++ b/tool/net/net.mk @@ -104,65 +104,20 @@ o/$(MODE)/tool/net/redbean.com.dbg: \ o/$(MODE)/tool/net/lsqlite3.o \ o/$(MODE)/tool/net/largon2.o \ o/$(MODE)/tool/net/net.pkg \ + o/$(MODE)/tool/net/help.txt.zip.o \ + o/$(MODE)/tool/net/.init.lua.zip.o \ + o/$(MODE)/tool/net/favicon.ico.zip.o \ + o/$(MODE)/tool/net/redbean.png.zip.o \ $(CRT) \ $(APE_NO_MODIFY_SELF) @$(APELINK) -ifneq ($(MODE),tiny) -ifneq ($(MODE),tinylinux) o/$(MODE)/tool/net/redbean.com: \ o/$(MODE)/tool/net/redbean.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com \ - tool/net/net.mk \ - tool/net/help.txt \ - tool/net/.init.lua \ - tool/net/favicon.ico \ - tool/net/redbean.png + o/$(MODE)/tool/build/symtab.com @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/$(MODE)/tool/net/.redbean - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/net/.redbean/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/net/.redbean/.symtab \ - tool/net/help.txt \ - tool/net/.init.lua \ - tool/net/favicon.ico \ - tool/net/redbean.png -endif -endif - -o/tiny/tool/net/redbean.com: \ - o/tiny/tool/net/redbean.com.dbg \ - o/tiny/third_party/zip/zip.com \ - tool/net/net.mk \ - tool/net/tiny/help.txt \ - tool/net/.init.lua \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/tiny/tool/net/.redbean - @$(COMPILE) -AZIP -T$@ o/tiny/third_party/zip/zip.com -9qj $@ \ - tool/net/tiny/help.txt \ - tool/net/.init.lua \ - tool/net/favicon.ico \ - tool/net/redbean.png - -o/tinylinux/tool/net/redbean.com: \ - o/tinylinux/tool/net/redbean.com.dbg \ - o/tinylinux/third_party/zip/zip.com \ - tool/net/net.mk \ - tool/net/tiny/help.txt \ - tool/net/.init.lua \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/tinylinux/tool/net/.redbean - @$(COMPILE) -AZIP -T$@ o/tinylinux/third_party/zip/zip.com -9qj $@ \ - tool/net/tiny/help.txt \ - tool/net/.init.lua \ - tool/net/favicon.ico \ - tool/net/redbean.png + @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com -o $(SYMTAB) $< + @$(COMPILE) -AZIP -T$@ $@ -A $(SYMTAB) # REDBEAN-DEMO.COM # @@ -170,6 +125,7 @@ o/tinylinux/tool/net/redbean.com: \ # bundles a bunch of example code and there's a live of it available # online at http://redbean.justine.lol/ +o/$(MODE)/tool/net/.init.lua.zip.o \ o/$(MODE)/tool/net/demo/.init.lua.zip.o \ o/$(MODE)/tool/net/demo/.reload.lua.zip.o \ o/$(MODE)/tool/net/demo/sql.lua.zip.o \ @@ -196,6 +152,7 @@ o/$(MODE)/tool/net/demo/redbean-form.lua.zip.o \ o/$(MODE)/tool/net/demo/redbean-xhr.lua.zip.o \ o/$(MODE)/tool/net/redbean.png.zip.o \ o/$(MODE)/tool/net/favicon.ico.zip.o \ +o/$(MODE)/tool/net/help.txt.zip.o \ o/$(MODE)/tool/net/demo/404.html.zip.o: \ ZIPOBJ_FLAGS += \ -B @@ -263,49 +220,30 @@ o/$(MODE)/tool/net/redbean-demo.com.dbg: \ o/$(MODE)/tool/net/demo/.lua/mymodule.lua.zip.o \ o/$(MODE)/tool/net/demo/.reload.lua.zip.o \ o/$(MODE)/tool/net/demo/.init.lua.zip.o \ + o/$(MODE)/tool/net/help.txt.zip.o \ $(CRT) \ $(APE_NO_MODIFY_SELF) @$(APELINK) o/$(MODE)/tool/net/redbean-demo.com: \ o/$(MODE)/tool/net/redbean-demo.com.dbg \ - o/$(MODE)/tool/build/symtab.com \ - o/$(MODE)/third_party/zip/zip.com \ - tool/net/help.txt + o/$(MODE)/tool/build/symtab.com @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/$(MODE)/tool/net/.redbean-demo - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/net/.redbean-demo/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/net/.redbean-demo/.symtab \ - tool/net/help.txt + @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com -o $(SYMTAB) $< + @$(COMPILE) -AZIP -T$@ $@ -A $(SYMTAB) # REDBEAN-STATIC.COM # # Passing the -DSTATIC causes Lua and SQLite to be removed. This reduces # the binary size from roughly 1500 kb to 500 kb. It still supports SSL. -o/$(MODE)/tool/net/redbean-static.com: \ - o/$(MODE)/tool/net/redbean-static.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com \ - tool/net/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/$(MODE)/tool/net/.redbean-static - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/net/.redbean-static/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/net/.redbean-static/.symtab \ - tool/net/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - o/$(MODE)/tool/net/redbean-static.com.dbg: \ $(TOOL_NET_DEPS) \ o/$(MODE)/tool/net/redbean-static.o \ o/$(MODE)/tool/net/net.pkg \ + o/$(MODE)/tool/net/favicon.ico.zip.o \ + o/$(MODE)/tool/net/redbean.png.zip.o \ + o/$(MODE)/tool/net/help.txt.zip.o \ $(CRT) \ $(APE_NO_MODIFY_SELF) @$(APELINK) @@ -316,23 +254,6 @@ o/$(MODE)/tool/net/redbean-static.com.dbg: \ # That doesn't mean redbean becomes insecure. It just reduces complexity # in situations where you'd rather have SSL be handled in an edge proxy. -o/$(MODE)/tool/net/redbean-unsecure.com: \ - o/$(MODE)/tool/net/redbean-unsecure.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com \ - tool/net/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/$(MODE)/tool/net/.redbean-unsecure - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/net/.redbean-unsecure/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/net/.redbean-unsecure/.symtab \ - tool/net/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - o/$(MODE)/tool/net/redbean-unsecure.com.dbg: \ $(TOOL_NET_DEPS) \ o/$(MODE)/tool/net/redbean-unsecure.o \ @@ -345,6 +266,9 @@ o/$(MODE)/tool/net/redbean-unsecure.com.dbg: \ o/$(MODE)/tool/net/lsqlite3.o \ o/$(MODE)/tool/net/largon2.o \ o/$(MODE)/tool/net/net.pkg \ + o/$(MODE)/tool/net/favicon.ico.zip.o \ + o/$(MODE)/tool/net/redbean.png.zip.o \ + o/$(MODE)/tool/net/help.txt.zip.o \ $(CRT) \ $(APE_NO_MODIFY_SELF) @$(APELINK) @@ -355,57 +279,13 @@ o/$(MODE)/tool/net/redbean-unsecure.com.dbg: \ # produce 200kb binary that's very similar to redbean as it existed on # Hacker News the day it went viral. -ifneq ($(MODE),tiny) -ifneq ($(MODE),tinylinux) -o/$(MODE)/tool/net/redbean-original.com: \ - o/$(MODE)/tool/net/redbean-original.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com \ - tool/net/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/$(MODE)/tool/net/.redbean-original - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/net/.redbean-original/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/net/.redbean-original/.symtab \ - tool/net/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png -endif -endif - -o/tiny/tool/net/redbean-original.com: \ - o/tiny/tool/net/redbean-original.com.dbg \ - o/tiny/third_party/zip/zip.com \ - tool/net/tiny/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/tiny/tool/net/.redbean-original - @$(COMPILE) -AZIP -T$@ o/tiny/third_party/zip/zip.com -9qj $@ \ - tool/net/tiny/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - -o/tinylinux/tool/net/redbean-original.com: \ - o/tinylinux/tool/net/redbean-original.com.dbg \ - o/tinylinux/third_party/zip/zip.com \ - tool/net/tiny/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/tinylinux/tool/net/.redbean-original - @$(COMPILE) -AZIP -T$@ o/tinylinux/third_party/zip/zip.com -9qj $@ \ - tool/net/tiny/help.txt \ - tool/net/favicon.ico \ - tool/net/redbean.png - o/$(MODE)/tool/net/redbean-original.com.dbg: \ $(TOOL_NET_DEPS) \ o/$(MODE)/tool/net/redbean-original.o \ o/$(MODE)/tool/net/net.pkg \ + o/$(MODE)/tool/net/favicon.ico.zip.o \ + o/$(MODE)/tool/net/redbean.png.zip.o \ + o/$(MODE)/tool/net/help.txt.zip.o \ $(CRT) \ $(APE_NO_MODIFY_SELF) @$(APELINK) diff --git a/tool/plinko/plinko.mk b/tool/plinko/plinko.mk index 00f01cc7a..46b2f8219 100644 --- a/tool/plinko/plinko.mk +++ b/tool/plinko/plinko.mk @@ -46,19 +46,6 @@ o/$(MODE)/tool/plinko/%.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -.PRECIOUS: o/$(MODE)/tool/plinko/plinko.com -o/$(MODE)/tool/plinko/plinko.com: \ - o/$(MODE)/tool/plinko/plinko.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com \ - tool/plinko/plinko.mk - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -AMKDIR -T$@ $(MKDIR) o/$(MODE)/tool/plinko/.redbean - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/plinko/.plinko/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/plinko/.plinko/.symtab - $(TOOL_PLINKO_OBJS): \ $(BUILD_FILES) \ tool/plinko/plinko.mk diff --git a/tool/viz/viz.mk b/tool/viz/viz.mk index adfa80cf8..bdddc25bb 100644 --- a/tool/viz/viz.mk +++ b/tool/viz/viz.mk @@ -82,26 +82,6 @@ o/$(MODE)/tool/viz/printimage.com.dbg: \ $(APE_NO_MODIFY_SELF) @$(APELINK) -o/$(MODE)/tool/viz/printimage.com: \ - o/$(MODE)/tool/viz/printimage.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/viz/.printimage/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/viz/.printimage/.symtab - -o/$(MODE)/tool/viz/printvideo.com: \ - o/$(MODE)/tool/viz/printvideo.com.dbg \ - o/$(MODE)/third_party/zip/zip.com \ - o/$(MODE)/tool/build/symtab.com - @$(COMPILE) -AOBJCOPY -T$@ $(OBJCOPY) -S -O binary $< $@ - @$(COMPILE) -ASYMTAB o/$(MODE)/tool/build/symtab.com \ - -o o/$(MODE)/tool/viz/.printvideo/.symtab $< - @$(COMPILE) -AZIP -T$@ o/$(MODE)/third_party/zip/zip.com -9qj $@ \ - o/$(MODE)/tool/viz/.printvideo/.symtab - o/$(MODE)/tool/viz/derasterize.o: \ OVERRIDE_CFLAGS += \ -DSTACK_FRAME_UNLIMITED \