From dc0e3ec2a26c0deee8ad5da92fc9fe5c97b68a61 Mon Sep 17 00:00:00 2001 From: lifegpc Date: Tue, 25 Mar 2025 13:59:43 +0800 Subject: [PATCH] add static crt support --- CMakeLists.txt | 6 ++++++ lib/zlib.lib | Bin 116044 -> 115724 bytes 2 files changed, 6 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index f40fcb8..3b9a25e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,6 +9,12 @@ endif() include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include") set(DETOURS_LIB "${CMAKE_CURRENT_SOURCE_DIR}/lib/detours.lib") +option(STATIC_CRT "Use static CRT" OFF) + +if (STATIC_CRT) + #add_link_options(/NODEFAULTLIB:libucrt) + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +endif() set(ENABLE_ICONV OFF CACHE BOOL "Libiconv is not needed.") add_subdirectory(utils) diff --git a/lib/zlib.lib b/lib/zlib.lib index 0b156ef987bc5547ac5dc3e0db23b35083b6937c..3bbe3637b41fe6bfdf4183c1af36fadff4c239fc 100644 GIT binary patch delta 11091 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 delta 11588 zcmbta33yaRwyx@=Z_-I8osg}8kga1n5CYlALI_(V9h68SLL3nyvd2IINeF_{ViO@W zfxrby9C!{2%8Uy#QQ{zCSe~sj%BJJszA!R6prWX(((gZYyE_49=FNL^zwh3A&R^?2 zb*j#(b8FR#fVWl#wDk_i%+1Zn%*$SzG~1rQSUT?PL;w1o(T}n2ckNKd=w7tw-@msi zj9q`*uLu59{@WDB{tvgkduARyf&HIv>k7vI|F`{L7anzj@zJ{f>|Qs9@qc>vLE`Sa zy6(LnG2V5npQZI`->3W7=+zkY2~)q^gmlIZWi!@q24h2OweeTBGM4f!V-tcoTVdtw z#3;^mqd6P1joVY@rhshF$gLrgQc2-7Sg1qht8pETQ@i#|i zu2#1u6f13vF{htezBS2^3bMC9W5sGzqJ=-LPD!-rgMoE`vho9J3!VqnU3eb$rG2RK zBr889(MxIt=m7QpB&!muXUwKom*m8W&UM^hnFxNKUi{`39v2jjIv0aqrSYQ9%Kdd4 z_2OGAPtk8i!n0zlmB&k5zZ?8sb&kcNe;w3&>IREN_nBUO;rk^04%Bl>{TxYU<0cf} zt|sOs=^emEsTs-fO4IDQ*;#k1$KqquIdMU1UGnVq50m5hKz9_fFvlVPNe4qf zc;^{+qp@33AmCg|QmrW!VGDkK=JJHnPh5_&sMyI9mLE}9q}&;{Til*@`1_d7|7L%l z_1v!#pI6VOY*tTh>CygQ*4uT)XcXqSdyI5FtzPMCHquuUFz5Jy->V7z-bw_`Dhcsi zI{BX3g{UEEWBELFQd%Z=wy#N>z$kC+pXv!EBMams`{q()|?|T0W`Uh!HX*fQ<5EY>@hS zx`ofgXh*8UW}1`?l$hhMhSeo?6L~X0+w~$}9cNVc4Jc~AIADj)CqDNrx$Y+mr{1sb z%3Q_Qw-3#l$FJ#dRAyFwPL@wiBV~tk)z7mvHJvKeG<;zYW9QJh`$DC_m|lFomd6{;Yo34W2k@aj(#?(0R*{wWIxd@59AE$oy zM3SE5aa_&JwdyJpCGZ1)LUn1bRY|unR(+GKTpx-au27F5+s1y^Nz{P?Hz@IvywdhJ z@}5ZXNz?fF?xd9T2Nu z;+hgnlu8hkh`IkAz9URg>lVi;ap=VWMeW>{q>wU?L7}HoboVMW_mq4fOO)&S?b8Ik zoP28M%qi{hv)20iy3A^BJ2?BpK1ph4&3e9G9hzlnUpQxbml9BiBl9zJyE?3w9p0;s ztu2=N8cbb{R6kv0(r2KnkE^fMTJ=XTbyC#RwHDNAs_VWSJc4ePl5YBX)LRvGC7iW? zRQI#u>sQgs_r=yt}cVR*e0yAA?Bqb1*jWTlTBg0w!qL9uDbq%P$CKI&PNTGK}k6Rqyg z_4!|iska&%Z%{vau&90Fj%Nbf4?Hp{+$Wn2eh-_EwXNBs4t(^CM>fMYZ4B@znMXF6 z1-bc}nvs3!CuQ@8LbR>PCS_|fir%_4O*b=u#1ei2lPDyNu`jLYAg(*q{pm5vC{XEX zB%&ZE26uiMW54t#8=}laN_e_Vc^KqE7|BcNGG#2-&;c@K3d&3xz}UWla$*OWk#uSx zV^;^tB|!fW_(1j3C#-x0o)^7l{&K5113XEF9omX_-Ta-CQ0K##x-Z_JUiHE1^S zzL>*UpIpf+wqRL4GL)xDwt zG)4a+fp5A1gZdqE#1EDglHDs(hdpi8-9A_)P}_TYa*Ifg+w5_XVs_-Fg{V(!!f zBFtR5v%U7iXSr7~K7Kx|yJEyd=457e%^9=Qi*aiFx7uX(6C;ATMcR2qVDW)%nrlhY zKMk@&edXKu@Ot!cKe!w?w{!)Ongm@0^(c_F0iv@M{zMRR8DOv@4C=l?aY1^l24fA- zsbDR+9ogT4A7h6_8Wd-k2=*1s$Y_z-7j^<}7VC#e+7_Y>bWc?FJa|{A%>5LS{a`kJ zt63Eq+E>9QglW0o2R{^g922hbi6}h?mVQDH*_Gi)Ue^QWpoi1}GFWHDlu&M2H^84? zm6Sp=z&}Ec5DjXYTJ^nESFQm`0OqMX0jLrGY@E6~I#uyTb=D6>;?4ftsP6pX*2=lg z6948-)3QG3mosz^svGVk#bQN7nrsKkE8ItwbOa6^|#|7SahqJ`!9P3}We?eB-ey#qo z2etY=E|(EqS+T(Fb|ahL8!cn~QKE2v(=qkqb6LDm4g0acJ{{&dqYXWr+Ppw22K9YRcNOm`_F5ZMn=YxSxTS9A7jbCTE z&)aLUCF3h&W}$$cRbQ$63IrTPqvH*C6+YWx@6X1Wngu|2Q$n{=sVJ4`Zc5f5D&DPh z7)np1;??;w#Z{6(8C)gF+AEb_?xr!-fz|QVf$pZ#3Dm3|?ItvLHl(_nQk{cjmiMTI z_pYlw(p$Sr&J5}zzN^I++h}Yl33J*~TS|;AHh<5+MW7-w*a{e%4N>LQkXbTGiUtU^5#=lkY`M+fX-jTV_}D;4rI9)8v8=HN4WwPV`i={3 z(=u$BkkFqs+~%1SpHkVeH8WMX_TJaum6zo1Rj(oitpu=9y8hSaF z_%qY8Rp8}7(gwq2D`)g^jwNBN@lN0D$n9!SU3wwX?0$#lUgyHI)b872c6H zIZTsK<1%O2g|xCj=lCC;`yC&U41*7l6r0ywbwg3JJ1087yk?S`E)KQR;A*pjMsFnU zNcIGtLnLK}NVHi*_BK^wn?Y$M-UOx1z+<4a8TbJxO&iXD(&pHYK8)s=voWwT+ui)L zY1yNU1+%3~!gk${@ojdhf4NvtF;4rKhIq%4{;V;)wWOw8j;4D-D#;wzFpmMWlYp2pedBXKE$&KcO<*qZuq4{XC|ZK>-#TAaV(jJuQ;d9bT?>K zJoS%@za)4NzsI{{obtqh?{@~QYP}+?e?O^zanj8bmoEC`);r#LCYnvIA9doV3e&re z-yN{+dUZ|G=7w zXUE<5_RA@P>$o}aID7iX#na~>5s5nfEMG4U>-c>}GMd;Tu_=CmZgH%Tn~fL28F8OH z$G;G92f0}+_2bD#GL!_H7oK;BU4F<&rc%K@-+A>LF=Yrce&feWjbsxE9<_My6*0n} zFEf&zBcyb&VU{@N&u_sBkJ@mJkWcNQ6HE8-m^^aPv@5}rX`&ZkUWCR?yS&Iku|&@; z5zQVr*q3#Ucu~)7b{adn48DYI8i1#_4*DLt!hFa+4UkW*!-sD`KDYsqD(XSCQa{m} z>b*2b$3?5cOG1oX!voN$pL%R+ggB@0R9!R|Yeqn#za;TkT^Sd>Ej&k8$3=w&JI$v9 zcr;%r_66`kx`SN2N?1f7uq&cpAh2AWm=ee{^mS;eO8wjzo9^BJS5?(FOq*R>HMMrm zoZ7in3+n6U&z{>b!W4|+WFO?586nb6~Od*S)Ge}zqFK?PrR$_Pv z{KL?0o%lQzZeBLn9JqBeL$nxF4fuKBKi1qn!zA#R!QUyC!Yh>Qy>QoF)7Wsd^(NR4 zL|F(&^Z*{;y_yGT2t(3C;M>F&B=MKU{t#~EuhYvSo&L8(cqovQ8bWS*5IKHUo*?}{ zeIk%y8gdW4WTZuZ6sTQr6DsKnZjqHLxh~Qo9x-uS#}N~MPG^4;i*Mu}WEu`fCron< zq+xY=9Wpq4&QV6c{pId@?}AFUXGyrnIfPdhT6kps;pWc!le7hw+&$FD%B$Vupc5IGW>rJyyL99qqnzy=Ex&2n0&BPrlEPP$`cs#~jS zTANZ$&CeqVE|%BvfnNrvhCH?RU>RC$sSbNGL&k=w@Q|vI7!l%RV=ZW@ze(H7$`EPk<5)}s-#NM%5d!2lqkMbcjug? zi^Il3h>g=6i(}aYO^%ff(XGW^TVJ0Fsn)}*MWk4gtzdm;!q;DOuWmJKrd1^thMr~Jv3y&4G1ka-b>3vo|N~}kS$_l5|+KE#SFY6 zXg5HYKRO^M8rv&2C-Dcd9`>^ELHuh`PA@+)bn#-lg-7c$rM1i9)nw@6MR+od-bRs{ zjBH25WW00+o!F4fGr~upMNiPXN?J9wEjCJgj4UJmBg-~_`jlxMy>8;$d9Q)l-f)E$ zw8+fM@%+uB5MYcsx1gXanvo!l-PH)j>SdHmBwKkhtlnrVPt(7HA%9=~wm1pu9R1L+ zD8GO_p^&+fF%KRjzOizv5{8ML5TNe;HZFV#q}C7Y4$>oBy=1^+A*g3z+memacqt>m z4=~D@*Bu~hjf@@Ck_@+je;a&nGJ6(XSqSAa*nr*#>-KvY^Dry|`#RX+nsuuHdkd`F zuZgwjw}afHk%vIOuaPG~UeNNBKc_UbNE;|J(hz9>ShI&{hkdER4*}Ml>!GepOwyA&{iwl5DffAz zHCxFzVtm)zN(b^^A43-p_vbe8r~bSkCvMu3Nh zFKW{HO}ZIvVnaGFjOdB+0us86G-W90G{;ISerNAMBoN^=v%Z){;?-oE76Ul+->KAdcp zsrg;h=E?7zWOQ7<+Gxf;4x4uALuCJq1)uifqt2cVX}yiNtyD^ubv9m1`@Xe=caO)I zsrD79i)!f8{BuJja#vuVU*XGTJl*?s>TfimQjC;EGly_doHp^wKwfB1ZmEhyZz(=? zcePHM7_BeJ&9FDdz|IruvXOe> zMTVK3hWyKkaN1_MZ1)fauO-G|_oy!cGS(nvFwte3Mu^kpvIXL8Mm1OssJ1$KX`QWv zb}N~Dogp3&HKvHInLNs#1~H5xmW>4^6Ii1Uqw$y`Q`dpg?Coh#w74iN80w?>6cM0G zCDs>|HfhR1Y58{hurof&9~uV-d@`yD1WDEkKPy4e!lAG*P_$!ISR|&aDiCIIg-I3acYLili+C4gDs_ zk*bc+;*9w1JVB!>$;qJ>5CU|*PN73B>>3V88;b-`({SUn@YF_t9P4t1#XM3*JG4(3 znZsN87;!X*#~5=wI!V5i_#uZEXHr3JFgzW_1RLu6?f~t(y{b%s7cqSh?`N=ji-|`E z@mZFkh>pmqKgd}!4H7{N_;O=kDF1>X?gjZWU?Y-pc~Wq?w;U@HV{>^0|4MAl<$zoa_Pw76^Y922bHTeOo#r1bCy-58wH9v!j{FVepOg1)uXj-*} zstv?i{jdrOAEfo_5ir+&R9HT5jz0uglc68FtquE9-(*-TUd-p;rFe$(O}FDvELODA z{gV#DTaXTFqzuK%osxK?fZt^I28^PjivM`I`asC_0i)w_rTnMkFD;pusrzHahS|S( z14(06C$_8&J^fY1&$nMb-hbh%%QsAZr*&T0(ZmN*gUx%^u84mBn?LpZA!y_aPnG{> zV`bmQkkXyoYI1eYz4h#h*36KIsS|dO`rxq_R`Ypc&R}lNnBKfRf85mMJt=vIHeEh5 zHT{(Tl&yRBKecz**FnX4{`i_ne|^p1$5*y^*P!!568jIkWj|GIag>CzG{U-5E z5n3R(#2-k>J$HX21`Xx+7|9QzJm&O^hsD;RJO!}@;t{|SM~A|drFDU>E?;`QP=>)P ztrA0qA^dcomds2n!Beo&gGBfc1fPAER=Ly1dz;&I1M=G&kd7OWH*T!@T~DSSzUDvi zAkjYLD-UA!AwPJKFduT&gXn!oAlD$Qu%1ti;9}`;o)VdX(G5hRA4?u{TOKV%{(j<> z;rvk8*Z5vaQDo6RGWM0j?@*U~881$bfRA4zE{%XR+eF4l`1tKyO*|DRnnxn#b+H)` z+`;1`d8Xct#%07Sz~lUjn~M3JKu(G8 zkU{Z>Z*?_Oh8LAtNJ`0)8M{Fz{^647GKtte18h_O%dVZdMO=rEu-x)yt{H0=-z)<*VB3=TjDz78L}59Ajy@@!uM z&i3hl2H#6mAW1*K3}Yy^uES3LH#j_{F9Uxs@fLjz$cJT;!5?e!DzI(hd#Z04B2z2l zJWXY2LEC45Hj1@`+T*Vim;>q8@AK5)gdlPAdOo6K`FdU+>l4-I zkN&yxpkvNO@wXTFyWS&H9iQ&vll`udRa9nfMz=Fa0a8|jMeR#mJGbCDFLeY>(|M_V zI_