From 657ea6656489ec1756852d429908acf7e794a530 Mon Sep 17 00:00:00 2001 From: Lin Runze Date: Sun, 19 Nov 2023 16:23:29 +0800 Subject: [PATCH] Init package --- README.en.md | 31 +--------- README.md | 34 ++--------- ghc-rpm-macros-2.5.2.tar.xz | Bin 0 -> 30852 bytes ghc-rpm-macros.spec | 67 ++++++++++++++++++++ using-help-as-doc-packages-suffix.patch | 78 ++++++++++++++++++++++++ 5 files changed, 152 insertions(+), 58 deletions(-) create mode 100644 ghc-rpm-macros-2.5.2.tar.xz create mode 100644 ghc-rpm-macros.spec create mode 100644 using-help-as-doc-packages-suffix.patch diff --git a/README.en.md b/README.en.md index a431533..58fa939 100644 --- a/README.en.md +++ b/README.en.md @@ -1,36 +1,11 @@ # ghc-rpm-macros #### Description + RPM Macros for building packages for GHC #### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - -#### Gitee Feature +Most of Haskell packages rely on these macros for packaging -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +This package comes from the Fedora Haskell SIG diff --git a/README.md b/README.md index ab5d5b6..e703ba7 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,11 @@ # ghc-rpm-macros #### 介绍 -RPM Macros for building packages for GHC -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request +用于打包 GHC 和其他 Haskell 项目的 RPM 宏 +#### 软件架构 -#### 特技 +绝大多数 Haskell 包均依赖该包提供的宏进行打包 -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +该包来自 Fedora Haskell SIG diff --git a/ghc-rpm-macros-2.5.2.tar.xz b/ghc-rpm-macros-2.5.2.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..4b2a7603a2dd451c3afe907f9c34a6a5d36c9438 GIT binary patch literal 30852 zcmV(nK=Qx+H+ooF000E$*0e?f03iVu0001VFXf}+SO0iIT>uvg#)pzxJExDwB@Va` z@$P416eC#6Ard<`FA#VW$!t^feO6|BueUYW zp!}7qsMBFk|L@OT1`9tnrSv)L>fz!}FE`t6VOEa|lX#8`HkPDJwF@$)9w=vU^YLO& z!{WY4&N6l@V45WuTJI>`mO)hTiSGS%unX2{1Ztz z-&ekBIUe0&`n&mSdcHmMT7dACoVS;pAZWAcQebiXyo>aUJ;Hq5$*%M(d}@uwdz`;-ReKF2J!nv2p}-XQ)fG{m|nz6E9qR0GuADr=X1&On&(9D z2(rL*Q50cyj^sf#%UBECr)4OpHG_F!3)6;fQ;r`@Bp4kASQe0SM??j?ZkvTMwHjFg z0DHo{FJWp(i_t>XtDO`aY0GhnRM))`)cg z6I#cD3KKoxrvo4ACmfg_`T^o%;oc!Nxg1+mSO^FsK$}$N=BMQJMj>) zOB{|fjQDyvjDe@EZvLcM9Kk0u{^ z^1_Knm6j?7&B0SO6f;CubEDFf-24l_=~KWS9gBm}8r_Ow;|6A&CrdW7tVYnJq!9#m z5S~_C!hYmT@BuikD+a>d0{84_@B&P<+`uNU^-$Q*vZyrnj_X|vD8{%^jFnob!SUI7 z+OCqh%KdVv5-r2K+L{K{36*$k^wUk<$pmz3;ExSft{FE9`fAmA?1w=>*@|M7<1 zaFtu`h6He}?&K1sAl5JJ<%DvkS`l>=BUu)fuBY6GeMtTulN#S84+m*>H=4Qc=9B{a zj8Fp%hxj^{65xu3AW3N&VyzDOVP6#LmJV<2Kemz=fb%(RXE8~PYbL!eUr*wy=WTr> z;O_29zby!c@NUZmJ?CKPR|sS~SYlb^i|Dy!JM^6<@IgqeB1Q?3uOAV>tUYWXw_(DI zhuzMlyze;}paZ3;=I?tBqZ+c?1;#<^Z{%V`d)9ecE_$!v8kR586-T8h9;HeYgY$6l zQkdJ_3}&!_P~{D zS^BNX`j5ZX4%lsl1Q=T>QxxSiD(N{2%n|fm5yrMiz${9g?Y*Q3h#Usx^k0~dIDmZs zc{nj-KJY4`spowO3l%mSUbXhf2)E}!!`i~W?xkvQoYWQJ3&kG!yQ$^8WpwMpg429_ z39f3V%sqsblH{yq&mJ8V)HJJDfuu+bn$wioJ!fKfv81)O+OKSz(6PQNDk{ziAM=xj z9~FkaH}5XCYxBG#rNXlx@EZfM3b1yPuTdcq(e8bKfW;{)A}GQazewrM zex9IX`-bSFRcc^vJB?}5+KvN2Ksgjg`b6ksSM^mN$<)t`Yl#|(9y~Sfdd4^Q73)-r z`0H8ur6)m&z6fz2zYXNao zV!GfN>#PtJtSLl9u08f~RK7G~&WB^W0bMC3mjYuih_A54*3q3u#1ant?xWQ7^DJQI z?r_FM(rNmzrlGpuPR!h9TV^?NeLF`|D?;Rh11J8urS}WvnYyk{mZI{gB%zwoCeU9k zgjNqts*nBa?h)pR`*Ce*Mxb=lEZ>HiQfk+a%rBdzm#43~nYZ|n_1`iUq6%-MINEx*)wO(69X?;HIYq-Nc%AT+vFTZD?sMg-VTkuAy4Z&2ee_j^2GEe&Z${zY7@ zt+J?c!tWx(+VZ4{ZDV|W$ufc;h;Q;Ovc_V?vwgC;i5ULQT-Oy+(LnN&Vu5tQpf^^> zYE}Jr{n25BHTQ81D+cQ+hIr7cbP}`~Fq?13hiTp7+OaVl?B9RPltkPv0^nInO$U*wfx95M&5~blBk|oyB-9Kd>ZMis=W#nF>B%R>9xpW7yiDsfuu%|M zD+h8X6o(eA^JRk5EQVfdrY8U#inwim?aOp!Eaa=K0JBfv@H?csig$B$|8aUBN@k3_s3 zQ!lZlZitYxeI4(Kjrxns5`DkXum$M@x-ivFd*3u)1cd#m*oTf{PE7G>@reypVpn;kagUI zGszGJ-(|e5duPULa>VzEeAMGtC(Y4MTU_%RCw@KAXB zZrplb^@~!n=b={0sVs*K4`+i@orV@*w#Apb*FO0?`Dc)WCx8I>J2#k0}LZ)b0SHl~E{s9fh6fWUZ{)F6g$oCY-IzW0NO{~O4dd+Po` zS3?TLQ9pUW)+;m#uG?d;KXX1{;_fviXHBB(Uqq-H%L7riea=H~c+9<=xQSO_89{KR zG>^&qXQV2vbS)N&U>*F4-i>6F*SOd46XsvP+US!j2r8PL1ZBF09Ntp&J0d%0csL6> zKYpOP_+OpwGNw9r6x(H!l<6BKnar@G#Wf+f{&BR@%Z5#?!u~-IucHE)kDcE{gMx*r z1hVgw$w6~DJ1^!pIbv`?)t1_8?RQ*Qp7_i*&N*6Jb3_1vn+KPMl^@%jc@F>i(i@Wp z$YyaK~Aw-0jVQ93=cW&xUu zte-$ma~~sl^HY|L&N0v}N;8o*h1|;3)Ml5(9HBL{oSpkZT0GvWi`G20)U}VNa1|lH zwIZ*9eNIg9`l(!v@$%u5wwP(ubbjCMYP=!Uz6n% zdsvHwe?XaCnT%&s@|k%mLSfa2JFJ>_$;5(|3Oo^zBCb-8u|y~E(c6mS;tK!%#ekZP z=s5P}z6Mgp&peO&M}M<0ZY{Q|y1x!!LEXm7PtcN3?xsEOHb8Z#a7~Puw7=w?$k(lfQ$ZbQX;IB)^WlEw6x%d6`96I!n4Rp~4x5X_Ozl`v)Y`cOidgTAT4e&zHyvlXC zsB%9Z)fTKHYfe`7wwDT#B4Dto zK8kRwTZ?BmqQ&fv4RrJ8uG&H+rv`gskQG>8Q!9g+>CT#%AlE^E_sgt>6J44e=jq+B zFphFMT#mo1b@tr`Ar6#tz*S1=B}ljER9oQ5#gP;^q^0XUu6YO)%9-xQ^w#{)U**{ZA#NKNDjQiuV#RU&jV3(}6FdSN818%Yd#gjmY8z$xL8oe^ z;~h05XufNp>?SVKZ<+Iz-_g}m!B*r0*|RA%j@;xzW@5^yc6ygOO=A}5Pe;t%80R0~ z#`~lbBRTVMrL-j?kZs{Vd?6ry>9(%aYZ1Gs8j;8Gk_Xd!9gu-~&*4;NXS8CW1($#2 z2xwcE{|Xle@TbV30Ac)(#0W+%{4@orV>h!{-c-F4;9>`Xm~5)TE#oqMFGA4}#pI}c zYs!^kR4+$@0xq)X%Un8TboK8-g+rzJ@tQqATf}lhV@GHJ})hGFQ+6m0Q%b=^T`5PUEB{F-d5Eh{mpX;aMlcVCgL)P!K#{#gM!Uz zF+K3W^$TDVgLYwIPwabUw}0gLBE(XS8_Ue3+2n+4+A!L4)MPuB@k4bF$OH9V>nInD4LmjVsLa^B5GzHB6tns=_-thKn z*Hx0I0?pwDap4=`ZnAama!i6i!uN2`5t2eS2ssC{H9VrDzI%DR(NVPZokh0h9)Okz z<{?)Gax+;DA|Ld`820xv4R{5F;qbav`{~Whia_>oktUJDEC>Ha0MNnwyoJTC=!J~k zyr*zodVGe+I`(KC`V#edRs^gFfZ-xSf7->%=)FmtCT~%lXCTkY3t>#KG#Vc1867g- z+7`hvXLI^(I5`=9__uK}o_4zH%EDN8R~oaM=N{$9!Pr?W-BfVd5Q=l%3^=>mxhkkq zP*(EJM7ZK=+x$)M2^kRVTs!`4pqhd&WvpVyG1(IuN6u0I{Dl%@ddA6j z$cp;niQ=T85g)R(X{wHH8`k^U3Gf|=mb_AfEvcLO*kPAJwwFQ$C;85k!@2W7`LNq~ zVkM=L%cZPSZM1si^+cIqDJ?IPw0KOD!!rc9Y8`^gbaLkFOdbEEvVr#uvG%2CKz_Mz z08Ne1xD`1=ROWL}ybmOlaI5z=ac~)7y+NwHG(Q^v^$|7V`|sSbew=Hxp%quU)0;f2 z6Dx43^H}3w#6|b#Si(7XEwf)GwMuZmi;!T8qdfjG+h7QgjVgMl7g8-B<)p)dzT20` z0ZD9}7@_o}-{EiQEC1HX|FBJ}i##NvaoK>|s?+F4$jD@AqFzHgX0F8{DCOO9Id%EJ zKc#(pMg6r4K94CSzyiaBbWi>>u5_r}J#$Hd*{A@Ypg)HuDFsKo9e?xZ~$76P)iP8ZbRR#hK zR# zcI&eZ)6)+CR%(`d_HIwBKu}a$5~iK#OFzv-QKhH1Q4dTi$nnUXI5l}n)b&=$3}LsOSyoaD*eY38AP_*0xMcisL)D1iQAYmMS{DMA7a>yh%R=rl zm24?Go;|y;&^H4UOvYYCl$hjE>juG)h&LS#cuQ?n0_ ze)8T|?_YXAPm?$9QE20a8rhNLccewq2GS@Ku4%%ZQ(^Vlr(!|U4<*s7Sd7FGsw*e< z&k&Gv%zXU*^-fy-rBsuZR*e=L(vt+sJqIz?!CT|&zfsx*RC zLijaD4BcQ^t%K-VP5mPrCEnpeqg+O*H&XFnk)S7DS>>SK(knB#l~a#bJNa=PT=l$v zX`b(mXU+P9LGksM<>~`XHz4+5y?3 zQPJ>4@^Md65NX46qSxAHb_w*&as}p{i59Pl3;suLGhjdQHCGR9LG4Cs#->!oja1Y# z(8rED;FwrtRdo+J7+0B?_e;ejB9XE>B}m-Kh{DXd1Hh)WDST^r%_sfpC|nDyKRX1y zF}>P@DLkyRUZ5zUXme2<|L(lgHAykW^>vPR#X&Zbx>})*C!>hS=Sj?m{!w*PYT4O} z6Nd|s3!|v|@$ig9TVR>|&)n|ogw*r@o8pt|>F$W3&_#UE5@G6Mx__@+YK9(=}K0Mv!wrI!;^JT{h;_IwG5&ZNL(fy36b74ot&UC7;4{ zf87ArfSOWvwDE3Xt%`i7{@F9$c4SND#Q!eBFj-S&ChH7Szq<-20-YkL5l{b8cYmH* z8qdC`(L-F(47ks4W@cYlm-$x$;9u^S5{HmakhnvKs?n%HH;JjJFPm;7t66HV$^riCHHl4USp5$8l{f-X{s}@v7dKa##8LAm0GQvG2cSf` zT{UQ9w(rX04Bg9?Lu-i-Qt`AO-b#u1gmi=IN$^F|crmkHm-vbDw2%iv#0xFoh z>OyVS;n*x;0VU%73p?Fk;l%;?jP5gn2ANh)faP)WSx>fszd+G6>M$QEI|(G>^*Fu; zvvb6w1GCF3hJjvMxb=6>Oi|x}3&=WcQb=^J<#@@Pi?UNm2lvuzY_o-R_b@5!h@I_hbq>XWx>1+c& zK(sHpt68d!|NpNuIA-BHC2xOHPD;ge;U6RSqqBGrF`9F1DmSTej*xrOQ8InwG))yH z#p@T>F=~oV>P^Z1Dc)HNnS5H2rQ|*N(3^QGJ#7A|ltxghurFoqF`5zf*k;v(iLfJj z$NgXR$p2o5hU3E*-UDSEXkg==3#wh^?tbz`46ejaxuYaXDBsCa(R7?Ldd+EtnRjWq zza$~Ly7Ux4>c*J##PNp^JlFHqbA(cIHDFfC<0L1-2cG#OSNx6;%&CABW~$^QnrWY_ zFJo89m63L>ZP#y>*W%lhb`a~ZsAZBpAmF1lF#mIzkpHM5tX1Q%`K>@%!3)2UL+rfX zl0ZCuV(<-C%aycbY(%k{*IHoqYP;>*tTt3#S|RY;v$TqT-!Yy2$!)sQ*>XW%b17q7 zL~JOgFNpp6{CAkI#x}9>jUg1zS+44R-<>9;VXs8)8_kN!>&n!Vv`AtU;k7UBE{YCN z%e)yKP|nM7)tTO22{qiTRN;zL)c(h5VvCmjQy@ux48yUZ&jsJb=jQNB9g?_8Z z8D9aV)h~=IhTBrM_-GqTMbd@KL*k7%P3dMiYANY&1V1UW>is$`(s|Je6q4=I&%ht# z(IWOo8iW+bZ*}il2%zvs!{fn|o~S@xHJn(mXO`9e$83vkc{rV1Pg254V09`8ysPR- z7znjWr;-L7@Cs`tB zL0oLtiu}*PAyxdqM0mjdaUT~mFrl`7FX;`q|8A&-oP)4Ov_gA*0QI~3Tw;;-ISj~fa8!e9_GF^(r~Y=I!u=g#7?U*|JP zh4)h?g4*yk8^1#*E64wu^MCAE?lY0d|7PuabBU@24W~o)$W6_AcAhy`VyQ#~1ifuT zGAk}Wal)y>*sS4%+8s{cPIwu`4qT>}V%q-S%5 z0hg6pZXcxa@E`s8yMt+(8b|Xb-M3}=Xr8F~B)w{t8ox&kp|Sjc1H`M4RshM&^cV@1 zI`MxK?320>Hjhqj>aEcdZTu8CdM4vebCYmxwa{9a8?u)ND@WcrqdlkG>?wjWQ!70u ze;)To0CzZ`G(OB_!3G|abVvlXE}dsiCaMGrWb0aJ9j5r;*Zl$IDu(c=$#@6#-Ssd= znI$T;#7vTZk5J1Qos9EazC#ylm4fa3Pj(79g)Of?7MK?f=%Qx7TRCp8WU@qNP$0u( zpEDP1x^Kcm(%CMRpu!&j&jf1KC|h+@>ci)_aN_vD7Rik;%B$((Fj->?BCdZ@O~|(4 z%ET`if{=Tvxw(CsL1f_AX6L?xCu?ioJQW z%~p3K*V#Vaa4zTy!j;?bflz2Kn%&c*7v{u)+?oE|>%#VIiIiy($TakHD5fDNqlUyG zSaJP%ABWYw)El7P!)O2-cfjlkX?x{VQjjlik&s^B{s{|hc6(?;aTCUY#ReK4O`TO|0tow|hk2F-8qx?M zu4ct?#gZxv?C$0R=yFrC+dCH@P9^@O?w@EoxSTji^M(ZmZBNdry1@*ifR(5>NZz2x zVaeTJVn2{>7l;MEshrOufuKyo6dW|OKi0I^M;0VU z`l92|Ft1vvlzc0q?1OPfmHuIT8jgBuq;vsI!i-VH)O2z}LGX!evM4K#^E1qVPu<4M zTYXF>j~I7CAWha44=8@aab2A}nXKtA@m%q~KS#RdN)JQ;bzBSI9HkOp>AJC$RVZ}8d34_lnNaW?AXH|ha!sr>&rDy~q zHKns=;X=|KhM5WRpuhK~UK_?EpkB~h=K)^vc7A_sfAo(VI_SgMr|dIObl^ASJ)B_g zXHbY#44a=5OL|}-@{qIdCmBmbaP5}A)7SVULp5Ent-S>1(c;; z8>ljNkjO;F3Xa!#$z{|*(;j0q{Z2{ohdwBnHNe;W1SmiwFWn|XZ@{YP8M#ep&ikr_$CAL*f8xyI zt_$*-qeW(AI%af1P|Og{7X_jH#axsIvOc%8Beqx?SRjfJZ79HpVVt`sj4+bbIK%OW zBCZMY>YM0|tHPCq!%|ewUj6z^?eaSAWcatL8&4%z>|gxQcl_W&3cPS!BzT=(yT*@7 z9o^`xHum>#%+G-wIN@Iu`>sLMF~;kuE)W1*Efw(HO$sJ*0wF%Q`?6*EkDs#qK;9tOQB#(g8BfTDXS z9dBR!;I}y?1w@T>4f>>N>u!lfY#dF%P#V4^_Y z2-)Rb*)Zo+)?SHyfr^t59tInJEAvV?6cC6N7l?{w$lxEsQ;lHj>m@vp0AMXIiuB6s zThQi3%wvJgmAxZxWbuT02=NN3Tu6>cHU)T$eXj1S6#g_n&3y5&qCGb3@dyDgS&kQs z>av<(*{m$6b&~I+D$8cX;Hzj9_O-Pu{0d<0kNgl_9Pz-%ui<|TeQqek$Nxpn z|MrKT7;7d|H7&79w4quGkk4jSgUe06u{KO6;K~zQ@VG$J8q>6JAb-niE}TYjN(XO@ z-Y|v%7_cQ#vJnk}j{b}!xNASt-$Up(hExB6v0$^CO6zm-#8*AVwkzXxQhqH85|9_j z^p`LeZ9wL3q764!u%5B*v}%L}9~Z!0EGf|SizAcvPM-6I4prvMSLhs9A)=F{G4Hr` zupy3f;R{p~y9=diK2KVfLE!&Sqx*OI6PtlZZqo>7`v~oFf_MZwNhDg4dM$eJE3{Y=t3&#=#-9WmjE%p+;tB@^hA#kU|7^ zw=h(Ou{=^qy3_a`2){?V26XT^eI#D(26@@tDRtOr@NvoHv1;w~-42VsFWHnpU0;XXDY1B#O*?O~Z8mv6y=5B2sZ|$tD-dF1&=S!06$?bYEc1W@2FU6P z$NQL8gLoDkFOE&_R|N4Ej;1cd0~zc}j`}S@MZ6?#5si{iE_cEx5b+By1RuOH(pS!e zBO?chc=>0Vp!vbv3jwwhKroAQF=_fF4Rga8Il~V%CXJa}&rY0D9~YO$Yu&xO4(A&XI$Jk@satOJ`7yI~a@QKN6(Jhmu z@NKsMjcbwKyDK7CTiHpdl$I|(Qrgj>{8XfXRhYq#GWyYiWURNDs=}3Mi7e&eOQx(0 zC7YinH9E^?>kG=0JYcLfzkW%oaDVSwu7T0^#4P``RUeYvj7v4^lT++n-M>CE9{d(< z@~|b$$%{K&8EY}~_np0)I_d0{Qr%y7ll~faeTfF$+B~~fL{5FDsPi8O&KY(ajY<p?C?aI~6W+n@jW`lHi;vJPUazllWo?VU;9f$a_evv9Ai(eWS7U+y1oP zj3l=};8OoJ6E3^`QYzNT2Gn(F!1COp*#-K^N;5UC9J%Orabr?43;-X_B{G@R&a5FV z#s5vaotk0fhXk5zhr#JAS1iKe9qm+s9qD)%K;FJWQx|rlO+edf` z5jI(6vGdd3B^-#d)d|4}IBe98*qu~BW{wEf3yL%)jd*6F5K!K$YZ-du{;uW& zhVGz87TmWgEn3(Bx+%DW>#(E1jWjt#uy!;6G(6rAuHCdUsSkF6Ycwu{jb9w{DdPO& z8QOZTTTD>{QLZ_ta6j0Nw4rk&EnuV1u`q)=)X2PxGv=&s>lc}l+)6Yz!J|tch@=(4 zZeS8y@Jq8|(#b(+AJ1BqCg%4_%J+~jsK=m2fiC!UEq}KBbE`njX?cGjLZ#ad{Vmd&wfa@10qg*B}S{evxhBbSP60d|u``Az>i$CE(00a|>D!SY1 z7KR9waM_4kbK#7QBc|Md-^iV!SXgH@Mb5SmNnpGKR$T{t*>DsTxa4OrtI zM;&5F32*uIga04FY1tzdt=a>}F8i?HxAKGowWMxTf#NYI?doPwq zjf)N#@7jt5XnyBQJjF9I)1U^8q!Ew_OCSCE$kZbrVmFkGw9@YIc7niMRuP3^^wBJ7(zEM-eO2$8 zmXKPX+*j!I7E6@Tz#KOeTw+JhigscPJM=DguMLu!W?Ull+?*bdNhzhZBq}KJo(N_p zXTrLN=|F3-fl{!JIA$`B(VRPM_mU5ZR&NXsXi%hDN`7MEHn`zRoW(prvZLBRtdK-T zznO#&1YgQSCOsob2H%U`!u#l`e~M67Nj3E#?bP-u@e>2EG42jp_YL>( zBN|aex)RCUKT_wygDE=rK2U+;ERLr9(-Mz8F8J?Fu_8BZa+>Q72`Z?T$G;rArP!R_?o*|U z2j6rDI(x&lzw+lxLsUU)Jui98`e9q;Et9`VH*Jnb266T)p2in)M~kO|YFo?7vXm6( zEM7y$Ez@~Ctoggns)i*tt=A{xU_Vb%e3Rq7&uBE=W3+&Y@dPjqx=2=Q^W9_BD4b}# zfIOXWu>@k4UPZ)?mn@7X^ABP!2Q873yhI3l`dX7ZaVnKv zU=C1GyzFdgBiXkY%`Hht(vtaPE0)wg_cOg#-xX|zqR_u|e#X{W6(4-4sWEX`BvbY? zEHT7g_{AwL*y^M}ryP>I7-ST=iGs@D)RFq2z-xm0b}>R70k9JB&Z|D6dY&O$@%Af2Gcf}!bUZZ|EBR3s zA@khm!XI@oDV0d3)3$OxFh+r8*jtxV$+c)unu*m%WVi_maA};8>p4IEOCVB;{ypukO7X8I^3~kQ<`y|R-JNz zU;-CqHRXQq@nvlARpAh=fo3E>Hzc{wa^pYiDsdU*RGlfQsLF^KZLEEvsv8HZ_adcZDFL^UB0KH#rHIIA98&^XhgH&iuOa(G*(DPhS1f z=SOc)lsO`!b6{G68tORQ5JneS^5d5E>P`8@Wd;`9ZY_2)b(vAi{2CL7+74L$_E9b_ z>KGi})PAY*mfFz@b{gVruk1D26V@04#JF)*jP0%xHDm}5sAkVqNTh%;?uT(uEzAeI zAzOq5=pCaOGi}JdVY28k!;7?BZ+7;}aaH01cF8IRU?>y0svsF4d+i^XxsuZx(i$b2$JUV|or+g*udIA+l&`ySdtM8B+hY#Gmd}7$%NS+F3 zTXf?w#}2Iwtw*oGv5njp>W}(`2$P4#uAJc2qrDjsNJ?tyCx-NdZKaY89~Gi22Qn4y z2opHKKCPAJ5;RN-0fHfxp|1d_zJGSopz6Mmlf}FYO1|{u2G$&px}O(*H=x*WPeeVe z`{P@}By@(U8nSO>C1Kq3^ydTYzS3z7dn#@{r!8Z{$f#~{kyYb&5!}Fw4JmU}IaI3qX zufB$Xvm-i9ONd}0UdxvQ>WPKaKeRuU0u9KPmbPkt>JVnOAKMS*lU8hu2prr(y0T5e z^IvO7UJWl3aRD)vUD&<*NFt!EjpL{GY3J9r<+`Dhi4iX>$0a!oUY^l9BC9z3j0Lrz;fq+d#R)ID^YY@HC zQ!KI`r}6LWM)Lp172MYwF2$sardcv08-Zc|eX6OOkX!;<*zXNa=PCZg#G3U?ERcRB zAbOhm*v-g#_)m`rVrQN=>(v+~qZ#`yYdC-otu)JJ*qg3O>(y- zgbb!3bX)4&1B{d6#HL$JY?ydNZqnjdNm_Gshqkv;s)3}#$1<{}9+^g#N!2NQG(mB8|2{>Yk} z;OG%%;P7<}zm79?%)8XO&N*q5kR>t}M$R*V^Y+NFGi6t*c#jH+7R) z!YVfOI&Im|%-0Pa^WFDGr_COxs9rCP>MAT5gn6yMlN-@ApdJOSVc_V?KE$RZA~suB z`~#=W%**O7pGVlod5kx|14$o@uOt6mREL?p zG=XD8!l{!urS84i*>PfKIzIOENeHmw3gNIIr;Us53u zx`rz!J=u`}@z)}5S%u&^V)9P}LHG??d`3~Gy@ScI9BJ*v9{=N={_7z>=DyJJ)g7P2ln*`?hd^Gb-`Mzj zQjJpbJ%jAYFMU~RKSWU|dx&A{yj5!L{S={DY5nFZUj`j?0ef{`@);)Q!?Wbt(-H29 z1hp`lNZuy6hoXFWRlb#<73cH-(a83$uTQU^&^LKZA6!TJlG8zo_U@y%cs<4nI}VnQmhLGSvbhti zbOb3}Z&eCaamqutkZy>!i61}fjW(&e8ZQoZpc2S)WuFDK--M#(AlFms%0k<4V)<)H z;!Ku!Pqc|}Mm#CgMXAy;Rkd$h8TFBCPTK))H6f}8Xg+ijgo<`fmPiw^z__u7zR_N#PaLm^~@GlSykZ>-8794 zix}Auy92HpvE-2JL$l=q7bqSuf z+6!mWvKuB>?|+A4>66{~du|TKrPSuk6L@QyL8rV?+Yk@o(q1VFu8dEShE&|dLmnOv z0$Rsx7fAJ|LB^Sga$+BtH?QowHh&WlCd_?YNxeY=2J;sG$?TP<3i^DLK3Trc$Cly> zKf24oW-o*@*u_&C5M$A`NihK9l8a%k;bJ|T!M9(#N!ojn+U*}m+@jD(vvy{B(Im+A z%B39l-v~-st0V(q_ymNr5uq+x6FG+hI#{L*oMcc*RaxK@lpD4MG77Pk1K8yQLeb06 zztq*>Z#2=ZAam!yOVtsuurBd}Z8|#Er?xi&xfd};D8$b`ybiHOGa3-;uM4?x*}&C- zTW(g}0~9T7{|NhT7Qvp*jj=wfLJdfmv<(INDdUd|JX7tbM5lO;^Kjubt#+{ud1UrdJ94R9%oAlcYZ*Jcg=*e< zkD|-gu;HFF_dBP$eV+h^M$q3%o8`<|T&=DpYbjN=F~~h6NhnWV7`>8YCwL`Dc?>4L zFh)H;VG)~5GqI1nkZ%Wqll6z5V3+r)Dh*}iR;Mk!OiQuglue7a?JZw!(SK)?Cdb_#37}>3@xIA@ho@p%-y{Lz zG_a*NS2eN{mH~9)$#Q+?Lt&luQOjLE)@LlW6L4rV#Fc4+XIpEXA-itGc#U4_>x*f_ zGdo0e^c(;wYy7td+Ys_)OzOK4!?{SByY2u+=siQC8`Xq@1QCa$G&%C4`cruUz>tRc z%g6;89aeOZ<|}!OkaTqieGKcwY>k?3#*t~;EZ@MfLehmfIuF}$Oci?8@7UDW6$naf z>b#@ph2Ba=Jt1JX!aXY55y$`B5(STKnbCn6QToD0d6kba+^5RpJxnc8#KG(Ba*d=2 zk{y{AIiUkAG1dGqZk1&KPwhpf8M)f!i>G-2lfnF0;doK1Bv34PA~L%XW~Epxf}X6rs@8)kCcZ64Gs(;H&i z1_}a}%BC9{XlUDGlvXW!_0^tL_4gve_UmxD-K^ULs&)fF?a20LqBg4}7y1tA!tCF4 zw$u=*Psqd-^{F+qQN&c>)+T zp+CtpBNSOZr4;>>i-$*Cx(ODo;E`7ns#QXi)^{8O2(nT=S=JpJwG=p%)T_qo(*9x= zT#xkZBD*(xqXVqDpX|l5hNu928M{j=;Ul(xj?61!bg-rtKVDG(zQ@JVd9svnVK~~i zO1@@X6h$E|ZYxZ{$gQS>gAhh1U66S7I9h#0J5KJ~mnd6>eo7YOt{|4M%6^lfa=UQA z=4UW(PbSCgc^b+#FtCLM(K0lq!iS7Lq93H>Bzoc6lw@NlVEGa;C)V09S$HKY7fGaj z!Q9m5iopa5C_CL=faSMP8?0Lq3;sq`Wp~q`0x!A@d-s^`jN>aXo|Jqy%I4%sdb!E*3U@hUqz`eUn+IAc3L-4WMh%@w+ zcKbtK&-QdJ*Qz=zpqY1>-yyqvZ0e3iv$NM9Zi))DrAZkz7XQ%j~QgltAb`Fzn z)oYu&RlRLUWj8%O$g0k3{atD1P}@81tH^SMhDv?s$z-T-xlfV%$04kd5symut*E5+ zJ~q^l?#+9=%!YVzwI1YX6h1=|GH`{T3$3#e62Gi6Ehw-tD>}0Nt+Y&DCj|w3Q(|BV}&Uq%rBCooB~)B_$iXDJ%Ogh2J=YE{IlgG@_u{{ z1VaWvE(oSLRn_4F4xZ-M29-mk{lk5~zmirdJI?#*f07R@ea#3;4+PWa;HNKfXqAAT z;+PnC$9;4nS{>bF*{Q$}rQC$rb*i^O*9nJ>sfxl}H|AHL1)w2Y*@lpCD9nsHB5VD4 z8jqwhP&nXl10I~OO8uc_V4{8C!5ZK;o&7U8XKTAx!JA7`q2Zu-=G)^GDKo}yE`YPz z&5*#8Fm$6vEF}3dd$Qq*@5oO*)QRV}ZHs}QU!M?O#Y1p_4)h_Z-+)3b(&6A4fw(tI zpI?FyAC0gCZH!DdS|8o8eT0O8ua&j_?sESKb89h5`)gCq?JC0ukq5ix+?9{4ChgE@lE10QmdM{MbMVs>+oi1oW)T1kYX!eOaoA)mN&8Dxz+ z*Q91)?1|NKuQ();!YpUpN}H5}?X+6jb3!{>O$N;14H}Y0U7prfWJw-XvgzN{L^Jwv zjvB5PQH9Z6+r`@Gu-;yzj`MzZsa2_rkkAL9dE_V`*P>|7@>X}vnq}a|MVpWrExfz5 zoPfCMWxJrDrGS!IWlh(rkK+0x`B9732Jqn(8t9V|D#i&_mn@7^4yxm`&fu5oBg+7) z`T~_7l*QvXE&+GJ2Zy)Ww$ z0K!tddyl@^1LUkZ2it4>D?KSjz;b6Q&}Ei$IEE31oho(p4jVMIph>f_fEC-fQ9;Rf z-)wZlzMTrAf<-RUwj|ZYBEvU{`ag1?t{a6|+=?T*ywMNIOjyS3Nbk9Z(3~vHR3%;C z;h@XniOw!!6Ygv3t4S;mjH3PB>tDphOPOwBtwk?W>fy5Le!vNhOy78E6zgO6_^wp) z?rmD4D>tZr_){aDR|xP#M6X19kpoLp1SVY~T>6+xm#(_rh4xgu@Q07j7dErHq`7N0%>{w_sFaJ2f^dFhOK$iLmjXcuj9G=t{+wS zYMl$ki_1XH(v^zl)p&MHN^OVWhR1inL0NE0D0-LFG)mwB>?yw+cxKGWs5NGwbt*X- z1GO>P=FeTP){ZQgpPqEEC|2^m%(3SFj)Ce)%1SUY+j2`E*@QLQARCPeh{jjNw`nT9 zV(4trJ4!l-=RG|?h_$7=0jpGd%}uk42@fyV^?uvKyg{4U3e*>47j2P2^gF#@W=$rtDqL+39HpzM{vk-L#DZpCYGQ$Fx+ev}~CV zgU^xcFa^4#C(}AzTRWM;XK9-N7KPOmm;tL=mayccD{QJa$C3J>!NY%ptuPH`S-tbwWSts4*2@pN0s&{*(6cFeVdAyY_t%;YlNyZ89-km0pIH#Q;(Jzh$vr2cy2|=ky)5KZ*W@ zcy5nhKpGZGqzM}ehjrE36tuv!Qk`$!T={Xq*k|dn=xkoqynUL&S9LQvl!pOxJDHm+}-( z4C!yN@|f)xR&}@b$e0iBY{pnl>-rPEHUBv6Ir}~1%Gw*Rdp5QPWycICi9xhJ+mu-V z;WJx4q&oqp{S;c?lN45}@E)yprDSHoA=8ZB@l0J|DddpSt-Np7p}$O{iV5VVl6pm`%^jg3wMc2YdhUw(E<(KX&mKVC~fM(}(NNff$B+?7SJPVSfw|agkYq)ikcR15XL0@>h zadb1$g$bCRij6F6O7iixxF3mE*xq1z)=Ri$Qaa9r-6)}nhvP-pZhyyQQSmh z{dqsaAZ8zg5tzsQ!ts3yYNyi&T}IV;^n|o1$!`Qb$Ta@eqF4H>{*r2jJHDOS8+z-7 zajPP71t3_@X42ct*J*E|xTddPN2k%aOcWOrspWulbH5$4S4(f4FG*6dJ zFW&(DAfOgL%9;Stt;jqKmjLy4Ki1B7Qo)!YLwM|4IxV4$v%9rjIP7La^OJszF(-?& za2ttVv)S;ZB(cd(t(63^t=7G@2`E{5PN#BtPfz@PW0OTw1;TB7>5pK{J#NeMFKDUD z<<-A6z^H82T;KR?>%>80SV@&p-rq@p_RSwfwr_p}5VISD<{ZtVic^{Lv72YF}v&BA(SxiVj^$ zhv^FoJs?EBfv{b(`L`5hJ6z;DBLQuJMH|Ds*hIt}GYie^NW*Onr9g+S< z_C~vgn~ud3H>7pHM@1{d`^RvCtjMWD;LT_FZdh-7|DT#_QtA2>ZTb742^Ni?h4)XgWp=X+!5=324;$0TS9P2Onq6s8{=)aH5AC%}@72M&c z8rxE2%rg7Ms1}2ly6vlqjjRoy?U4{hdtB!Bzh~_>{`@&ZxZq4-8%?7}KP>(DuRgE1 zBZ`-qagP5;CE7Y%Q?C%HmD=VARQS6B_l!93$5Mzq00Zw5Q!iUJyRqxY@ui195&4^K z>iKlK@FqPqB0Q{dj-syMAsNG!8G{m1mDpziO&(QqmSFGQwP9})@4-$T3Z$+i)FD#V zQvUQqe*9Jsy5z9RBW5OWD8q!DWv91GdR{)`_D`96qJcx ziBc&kb1g66^9m2k$;B1b;H8R}CYAx&-AlZJ7kbV5;+0hduO1eczs+4y^^19GxOn+! z2-;+~(^{Ma#JLGGgifSemV46AK(iXwLt@F~o$o%gRr_t&ZK}LTtMX$gkb%a`+n3-q zC1F}zzIQBkbhZUo2)*va^FSmh%H$438eD*6g)=|=$(`SlX^hAvT3bC*OwjY;-@Nwomis3QTc!P_fEYVFRgW3Hpm5h3v6W4ysBypmb78LPU{EV{MTYuRf(2;53?R#9k0eW&0)Oac^>r6@w8oDO>% z0MHL~D4FvE#@XOnBK2ZpkJi``qVt+B6Ho+HiN1AUdwNZweQX-Yg!~%wM-ThP_N%LgQajbFYXIl)oaNqB6 z1~Mz=#n|t1eZIDmA=mC`DT(=}>_)4}y;+nvt^E)b5dfsDv^C;1;{g9Ka#W1|6};<5 zO(ml9mN0yA1e!n*j}Cb1l6WV)USix&Rhbxizbi&|h`1S~TWe9p=U_-=I1+?hZoR8s zBL+l;oWlU6ce-G^(wswDtoHWu>wjjSrQ)kN|LhB_t{URp=Ox!8aYukbBSgWaXQf37 zB~~XheELefgeFwIg-P4bGP>InZng}H4OYtvj6$#!bkS4aKTx0mSabr%T+6Gw-R#6V zsf$=4cCk4&dkql|kHJ{|j*HoZSzSlFuB*@LfBCVBD|~AqUHO%wT)`zM;LCZWza=8( zE8*asn)YAPftVLD2*IJ-0)*knrRu52*wYd8UxBkqx|q3_kosu5Ul`ZQ=TxG_r1-O* z<9IdWcyJoWsAdRXU$%Avc?(@|=wz{{h729m2IuJddm|#sIWmXCjQJ0q#~~>2`Scbx zka@QL#2F5#m&)qThW*w{{0x|J=doGLV0>vIg<8MBVZ+ zUVENPX8a2Q{RNcH8L(qX^OM&+fh*J|lF&JxZMQWdOguK1&;lLu{`}22mVwK(Ai3G4 z&S0eMfW18vIo&bh$qJKe3i{>U#6ZNfsXbrji&t~Ej;Tc~`Fr+y!rDK-&?{t6zaMa( z33i~YPFlP?s@MEyvn>yG@Cs{3c%;Xg5Q|zlFZ)@^@du_{Ldt%Gp?(PYQ?<*|hNeup z_IC#OSFBGX#~*~_+{bXZgkXyztMT+i2;w}0n)-)KV`UD=v#xl!wPVQf4xxzu^-Geb zJE_0|F|G6zfJGau5d|;JImr() zqjTK-Lf<0|^2`>9`8X9_uf77f(;P<(u;1?K#|wqNoK%e&>?j>6Zt|8?lkjEihs-00 z%!-W%zY8bFwI-Z=LFKU~6#yF`7Wz=NJkhC5JSMPn%Th{sJ??kqMl+3go%Z}T<^*k} z42^WAcURildC4;;4cA#R(VHV(4M8~{69E`Wo_KmcO0l7$k?S$$p699i-a&+Fq$sy;#$8whx|7)w0ALf~Av*h51O}$Mz!m!Uw6}UKTai?|q3nWGA|- zYX+v@Vs=&vN$|zdjH%;(mZzqb*3ss}=}CPWAiwZSr#$N-3Whl=$lk}FP97SK<)L9? zhEDq=hI?czw7F;%I`Vq0Z$dRsz9ulSC;gc1I7vEL%*UYvjx~J6&2r!4UhMGaiw?{| zyqSu|65pdK zZz!lUMH8NDc-%Y>h9o_uE)rnkds=>;R|S+_p{AfGXiqA_rf*M+pY*dyp( zk@mCB>X}2syl4uh4HHd7w|i9m4#fgr!Cinsuen9lZt-e zP9U@iJVN8rx!#j<-Fr2^t7KiNmcuzN%~=}JR$OEqlLB%L=mKv8sD)mC%rdR z&~>{33qG1(ED6IBUuyBFntId$9^^WnR-v;Qkg+MG3d+6DcF645114U^6*JS zr9{27B?BFim{L))7StoinU1vLuxh(L^y^uVEX@f!}n9+8-_VYA;kmUFHppfuqZx&Pb9 z;Oj}H>G6T+HxsOqwHcbo(^#Z1>((fj!9R&+fIw!Pb~!$y(k)l* zR-B>^R_HWmXzwt4Yv1EFYwj?M7bSzMZ!8yq&qR>+VQbkRA6N1qiKUy1G^4(-?$zMj z!wu?jJbPlRT!@lOMC)kv_vRz|)KfukWa|{Q9T9K`Jm`EFikle!FvUzsKIcXrQ%Q~F74FaW z_Ip0E$9F4v)hph>r*rkjjAuxSr&N?BEDH37#S0Z;YG7G%K3L)31EiO{<`V`}bXS<>=49j)bq8hWBTxD<)t z`H=KnIfORj0$7T3l|3hgzc24dnY`}{opNItoq?U`arhd4t0BmU*EoxVc>*g!t#*F) zR`cJV+Up#!Vx9G#radb5`keMXaLoD|k#cQ|ZS?P@RazLvt+9nYzNebqh3? zZQTtd_&@?2LP`&gulx!}Ebp#JnOB!O6k=A31ar_Z;|LZG}s4$2lZboM|eqeDtZKde!>8hP~}+?~DPZPv9P*0vL7`~G5wS#iG_HnAJ8 znp@+uy;xKg-;+1b#uc<|Zu@`QU=*Y3BfK|Dg$uCPR>l9#GX+qms|ffn_FhRa)Go(9RHQ>h9x!$@mv#C@N)nMp1iB*;%RUIrOtY0Yt+%ynIBn*FoZ2_ZEhTx zKS$?XL+jIzmA-?nGTvy5R@buWK@$`Ztll~0cZs+IQl;U15%ax?&flyC$qvR;NUso% zvvxM6RaUVH$93{9L>zmQTCA7>Cw#DX$-K{#$?UBJ|LNqB#u3Uk8B_Ybo+hZ%5Aqhx zZPPRLk|^W2l-m*BlmeV)^Q8nI9)khk6KjG3In)^*2&N*=Oh~(Gz+lZ|K%V9mZ7}t# z4agxHRrlyUD*v!z-OSe}YiR)j|BctG{T2)1m&n+C*>|CJZ@p)I>ER2{ya9FLpa%nz zTn26o#GQsesPjRbc7@MOaNToXdF*)-{4?F3rN!zlcQcw}CI;JW;7YJ?)coYQuoXhp z4*XeIpGM}emgy+uH$+wdDvTcsO%^U7;P5_>XAxw&vlV%CVUt;D?-K;UxgGZt_*i2D5A;B<6(f|;e!Ul|L0=V~Zq;{fV<&+u&C9=5Y`jf2aTXk67O+y|#UwBc)dO@K+ z?cgs7Q0O|J+5&RnK)PMk*J4lIt-hOH7HvNo%Y0qmOPQCf34;oWWv3JK*t_56F9>)Z zVM#M&WpSfzT(tSo)<5q?bf3diWXpdjc)t-a0x+TSV~7#KMi3N z?|bwKi4>4@)lTjntdl`_NY@vpGP7%2@qlUbgR*hu&P)s2RV5@(E7m)-1=MNd^Xcng zCT{U#Ss#;L0r~0YwS+O*puqQSud)HFE}4?pqhqkpM;)7Y|0;^{8OYXCaErR>(ZgL! z7Mjp4sj>bDFdv^i1mFhhb&xz1#j^uo$ay@|xqYoDKdhK{sWS~Qq%u+I1_2{_1~(uQ;D69nshv7FPlP0z0Qw0^hC zNGn4V{A!fPDtVP@1~IFht^~5K$(-1!sTT#Fd1&t=CY7?ksoz$uq#>DCI-KJvT++TD z2rxuI0B30^%PU>fK5CQjH<=OvW^ZkE2B-&ofcfoY%WTzNg2`a_$s6n^u|CZn_pCwE zC9e#wk~BI0bT>3MPF9s&pf;~y3crYqcTkfrZbCLY<-fpJ5u!?LE~gD7sH82@Tq015 ze|WAi{z9!jy|R!?dDFgYAu%NfxMwqh#VIyt!2DYc{Cy0sWW}aA0HJG>-Q$>`QG@PW zp`c3uIF3D-aitl7*Q5su$fBrov(y4I#Mb@BR#e6sVgggYX%)VlYflcbb2Tp={cP8I z6w0S(1amjDs6rQyGlW33f|hudk%*rtSBm0FNw9u3gfZjVxX{XHP4@u*!CXT`7ny;+4n?E=7vJdtGX! zT@>njh!$x0m8`3GQAqM6$WJz>Hv+J8;cY3PT*8C2l?eBB)XT!by112Bwh zfrimy`?y*09V+J&v+mXT#|32$!|V*~kT9D81>*Muh3iVh+4sjlUtSS(e>2xt#Sb%e z&17`ArO#I&oW1*FhhZe=DU9^XM)^GdS9io|P_RP*bBIVSjh831HCDjGirdrikxOlr zL2GW-5-d`-)ApQ@KnDls1n#{NldJh?La^H_a;$ruFkK7T>nC#qGh0)1JkSOC;!F(i z9|QZ!l+$@vbqw-TE6mVU+@tCEqKp@}nXj0ez}Sor2}MbD8zlhw2pKmRVrcKweh$2E zqD`rMhp_RbX1h%_cDu$N!qgRfS+!plfJt8+*C%mzS%!%XdLYtz?szj%2k;IPKqE^f%KdgJq#bjkr+7Sj! zMkxxtVVEESvQ06?p3LjS-d!iNVw_U|kEB!s{+7NI^=r5zHQb#IY!qJ?Q#Xve+`3U? zzYu0JpNn6HSfKY{QGTd2%?Sz$6pgK;?bv7kp6byC5g-l#e7Cb_wS;1;-7ctWskH?g z>T>eZW`C^mUF=44B_nPXqp5CyEyDadCo7-9s6E-S-IFO970v(zs8v%(YkKLFI zpzy9F6rigzthrPzWV(;aNE7!tPCX|FpooUYf*|aYIkH0^-&JtKh?v|X1Jw~90mK(* z>OK2E;tA%j4nZ?pj1n4vuVt4LKLgU}{f6i|wzAkzrmLl1lBLp~KnRn61f?_bXZ;Uk zX;Aj2Awq*bEVasZZmJNqD|;!xhbKZZ*pT0X_^rfd?}IP+ekpMO*1>lGXu^P8=Ilc( zJdmKeIsLyii05sh*(_iCTJ;(4k^4qMbRz--Nv_L;0(sI!^aWY;sBpfk&WLBz`?gLw3_NWAFyEGthne}|jr3<*Mnb9V zs2^N|I(B1s_Boo7ZY(%|;n0cl3rXwBTl+E!j)&Pb8%Mx3Piq)4XN4Hk^))9RT|U~4 zz*frV--4#e;b+3{^b<<0gD$tJ(3)6Uap#${6@IV?bxCjH-DBJ$rY+wtvC<4zSE3XA z%E~FZSt~)m`0iSiEsFcW3*sn;aaMHaM4F8%x&VkN9|*JzUff3p8?n1_YHBa+gi;`g zaw5hl&s*N}UFlJi7$!v<=#Ftia*J&p!PCJU#ZLA@o4e>>aniLv| zC4X2;sW2;Qw7@(`1~X;Ee#KnOC%LptBQyiC_WsPwpmmlPJQkdek0-CYhX=*|gGHv- z2o~TTm65Rr_>_l=ACzh90YmRU?mRs3T;EjvR$@mjrYM(s>mC7}fx8WTkbkMYH5}jF zT%jHja75W;cdv){WrChcy#}iTgS{OV7%}t&_Le<|4K~j4ZuZITnnnI_l?m1+gaJ(W z$J46L5XS_t{y#yl+MJP!;46k}p#|=7v*k0j66#6!*llEN(L|c^`}4E?S-t$YcAtvB z0D&Lll?BWa{CO>5d#iI@DIhpuP3|3mONH(wnWT938R<%MOP}*a(lspm zBg0Nl6d?>uO&E03wdcXk>cHKxN=Q|>sMZFq*ycm%^Vs%03=wycOWh*JFz3V2xqG3s zCI21~2+p1g(qd*fM~Z6uS8VO0E0Cl;J%dPK$v$@byJB3)73moip5PUGB->-hag=uO)4)j&srNPvqlFdxb$ zV*aC=KvmdsDi@L%?t}^^D2>mqmCSIB?s`}$ZPkyR=KM4fkXzv84a!w|D@GEOG>%)g zYhH=Xct9b+E~dAJEJE@Bf(qVgs;rnlX1Egr<+#0rmEY*oev@$#;kYAM{;&-V%5MaP zJT}CSAw=OKE+rg-7=l=LvD)6jX7QHL^S%ot7)Al@cqtahvwL~1veN+C??LC`RydI;niP_~^Epl|(t?G920}tUFXO|{ zcP@~o8~-ehR&pbBf>vC-am?#lL(NTWI+s$ff0P~UFn$Wb4ch2(QDO4)h?{so3}dAH zoJCL*fJgxpa#YxaS}lrchF~e>RFUy`GW}q~H)@6|?T;ZX{D83+8&^RUEA$3miKb#? zQAX-ZAl4tsbxsc?KX(lVwPJ*19I=hMR(I8vzkK<8I+z+P72?s;i&Ellc_|bAl;otC z6N~eF(0N55IH|DxG`fuk>Sxan7TSn9gZxV!4SELs=e94kpS}*IOa`d*zbEc7yyyNhtx*B5L8l|9 z(AOP@ngAngL^|4#?MUYnXhGB6c#G!akXD-r`@^ZMLoUJiczH_I`Rp&g*KhBzJ+wt} zCISYnmyXQ!&-$ACm-QWKR=f}MKD5M%qmei@e0y;l-v%So^b1If^;5f6M!dr559@jU-uA0?QBfqUOw{+4gyfPH~x3`)#q|HfEN#Afbb(l zv6vVTpoj|nXXSSmaFWER+$xSil?6mRiHQ)8(g?t4^Mp>+LygbL(=kgQB@!P*X|ZR1 zy~}(3g7O3~SzE3}m1$brl&86IW7_B?wK3D1ml*et?25ao61QL81Ym{N< zuj>i$(Yt4Do!wYw0GSW4yo8}BnQ#vH?>@0BDC93Y3byblZllAv)a#;p)w>KQOx*~@ zaH54m^$3ASZ}50Ufp0#ACc}d^x4OzFRe;s^X--ZgD(D;+`gy*sydCjuSE0sa(aTYf zszU31-v)ZXop}c6G02XV%uS0!Twi;Yzd?2R?-&X++k0Nr??pwQSn?c1BO#K4Jj;>C zxUH95G!$QrSN9K)P20?Q1Xw-ux=P)%NS!p+S*W=^>5R{YYEoxu+;^C0s=^rH-ppM) zPn6Wd=%58>G2m|3ID&|9=JSuzn@8}94dH%b52f4PTCX<9*05N3^NnzZ5oUJi(Nt>t z+HMT4IY_+MXBnUe&N%4S)-ZYus#~1B?+M($%5FQ>{mJkH#&QKiKeNMa%Za*Zf#(ip zc$AIyu%qQ14}(|4Q#D1WNk1&2!dx*KOG&M&$pu$lu9RTP+8GDMlqsI=DgkcLzw9CJ zlI=s>Vu?$PY=WrBV!?cAqv8}ubl_^e;o4OVyoHU>W5s|$=&>r%5(&HJ2l$N48VE`n zVtZSGQ~f2?LtZUCVx^Lzzwzfe`y)F{gW$!fBYN^8=$~z&KQ*xUQ14VY!2;tMA|j4P z`2DME=x}Zz8_mAa#D=Wt5)mrl_66J!rClQm{csMv57Se3*X0|0YkrYHf;^2-(&;&j z7F4jdui}dg9lhoEw*Jtf8s*O(CdM`@yY9!~7WP>W-{>*h!SUCVm89M;vVu}^V#aiT zAmdegrJ+DU4&(eFFUlXb%JbOx+xqQfR1K%FkRs*Oe~`MI?XYYjC^EuECEW$jkNsnG z7wQd1sGzN=8C-ET7vfG!SNt)v|I%u7f!~LP>FtU)f@|`QT#FCs`*)dowrh_~+Bz;k z>rn)av$6qvelmBvBz4E14|>_&s~v`{juX?&z_Nd|oP-PUw&NknVJ}S~+5tA~1p3St zU+tU-8HlGo0q1d z^0-3yL1a#vP7_quq>s#_Z)T z?(@MX!pOT6N@k|e@Kg7Uc+=y_GsTfdIs44NEZ`JchQdTLO+GJhsquzb==Pt|wOrAF zIOK$CMt*5L&r4%a#CuA$rOAioX~I-~-!NoAta_M+9oEgz(v~!Mxu06dY&jlqhz$8+)ri-G9l-KdJ7m3JWpY?J-sVPm1=&L#rCEj4UgHH z4)0jihm^`26((dXpPn4~5e~`paE7?Dc>x3X-XyNTjZNM1=H)nCjQa8uvxWR)Cg{SR z=jK~2UvV2j)S;~nuj;~q_K1A5^X`hrsvQ zK!BB%cgwzPzz&(|!7DGxiVm$z1u9m-JDK%MI+DiYP>BIU5-CRjHx^i6jwazUK>Rsv$MS|tn?*085WkD>@AbL&v=D=@Of z7)fX9y*0ZsM5WgbTFbx#-d6~*!k>o6JU;>(4MA79FvI=z`%~A93#KQ1Lcm0--#nS@VWDMOG|?4 zoUYmLr==FCX8_`2KK`mB5Fxl5b}mfakW%KnTPc9s2%b%7jv+%nR1>SiMQ?}-3{M%^ zRh-IUhl|#ZIh91u%c5@6EC@K$mK!F#3GE0At5K4z58O)n=WLHcIEO@*FPxC!WB4SEVwbT z1_5)t1Ub!a8K$iZSO~(gz)2K90HrhR#FAoO7Rd5c38)>bH1)y)EjT{nJW)?4;rT6CmGT`}Y{_>4JGtElCf;i-N(e>S%r?ku4kTQ?w&vA^J-^Oy zqVu%(twPD&ml>MHqhw#SS~Jv3XTm}3ZjrWGvhw-huBJ5Rhx zr>={nH%N+{d*A8p3U?Cb52K`iX^OK+-7)|II%CJ|Oo9&sdLN7ZZDRE)Z#2$3-R`zI z<{s!Z`_y7X`ir^cvP&YOd*lwyXADu@MzxO3WN zF^`sW&Um?JMS*kO+Dg5F{Ix=*v6M1TmRfD*jO|V>ysM2RlgsJWANZVa7_?&(EL-)_ z7Zen%+2-ITj-mSU@|>)VA?iDoc*FHnP@m3vlb*}qw-a?-zXfj;wKG`RJH4ARKlZr> zk%pKd6%NxL=|FGC!{Cos7j=TGDy2oQFJt9xfAMgCV&C^BW<%6xT8NEV zwm;)v;x4*0<(tGlm@wqGIH$j`ja}oMm5CE}|K`IYTzevnQe@o>NpAkhiqUowF%H?3 z1)a$lFeDlBaf_y=%6~a6-E)AiRdBs$Kjh zyTw|j@Pt^lR2tL5uPBS_?Avq~6;k@{&9@iMl57Mt{j=YFa|JR3IpJn@k20HhfGu0h zUw&$Nma}*MsI(l3Y$nUObpOpRW121l$%1(PSf0wKitp9z$X&H-Janq+F3>S7Y3}v7 zK$lvg*h;qTHE$VzTmfw8*0TBZ4iob2;m;XCY{L(lTfz;_&`pmxdLBU9s4qh-mh?@i zLN9q6X-~|Ltc}m(pEohrG(T)+8Vtn3Z0WSWrpe-zbze)!KAS)-S7B_jOLWdm#OEXGxL5lD&^=_+pu_h; zS}1?VeY}Vn#_ZFwH4NNoel2ojiu`scGCh)ELxgP>}Kye-X{W*Av9L?DKzGDjXXypHA;N(BjjyxSB zvV%_-36Ii7KAPtIRvYsuWQ;93a10-=22koPzM&!yBD)1O-w>ElF1aIn5%zwcgLc=O zZePX#nVI8d>5GE?#et;122v`ZiP8aa>a?hS4QFiZ4QVY5up$Id#cap^z)cb zf(LelcACOK2+~-kM1K;oMJV@VE>}*rXnJRJI{*4GvKdk%q&VIF?!8Af5eXsa?cirB zECd$|Izz;@*cK(EDd(*22a zv>+8VsWKPFM0z@T70MwU7&|csdyMlcw{(E{tJn6lyN31WbFs6l*cKn^4uJbw*Z;4& zODa6H;wG%7a7-tT(X#`q01=)q&zQIb z@Ix(b-5(6=P`)#(my{r6<#3CTYr}zO8jrj}0hGKXXVc;tpmwWYwv}qu6?+f}`$+wE zD&INZ`rDVDNN7mapW`!f$-w@*oy4UFZyvBYQl0ssI200dcDZrL~9 literal 0 HcmV?d00001 diff --git a/ghc-rpm-macros.spec b/ghc-rpm-macros.spec new file mode 100644 index 0000000..ae508a3 --- /dev/null +++ b/ghc-rpm-macros.spec @@ -0,0 +1,67 @@ +Name: ghc-rpm-macros +Version: 2.5.2 +Release: 1 +Summary: RPM Macros for building packages for GHC +License: GPL-3.0-or-later +URL: https://src.fedoraproject.org/rpms/ghc-rpm-macros +Source0: %{name}-%{version}.tar.xz +# In openEuler, we use help as documents package's suffix instead of doc. +Patch1: using-help-as-doc-packages-suffix.patch +BuildRequires: xz +Requires: rpm +Requires: chrpath +BuildArch: noarch + +%description +A set of macros for building GHC packages. ghc needs to be installed +in order to make use of these macros. + +%package extra +Summary: Extra RPM macros for building Haskell packages with several libs +Requires: %{name} = %{version}-%{release} + +%description extra +Extra macros used for subpackaging of Haskell libraries, +for example in ghc and haskell-platform. + +%prep +%setup -q +%patch1 -p1 + +%build + +%install +install -p -D -m 0644 macros.ghc %{buildroot}%{_rpmmacrodir}/macros.ghc +install -p -D -m 0644 macros.ghc-extra %{buildroot}/%{_rpmmacrodir}/macros.ghc-extra +install -p -D -m 0644 macros.ghc-suse %{buildroot}/%{_rpmmacrodir}/macros.ghc-suse +install -p -D -m 0755 ghc-deps.sh %{buildroot}/%{_prefix}/lib/rpm/ghc-deps.sh +install -p -D -m 0755 cabal-tweak-dep-ver %{buildroot}/%{_bindir}/cabal-tweak-dep-ver +install -p -D -m 0755 cabal-tweak-drop-dep %{buildroot}/%{_bindir}/cabal-tweak-drop-dep +install -p -D -m 0755 cabal-tweak-flag %{buildroot}/%{_bindir}/cabal-tweak-flag +install -p -D -m 0755 cabal-tweak-remove-upperbound %{buildroot}/%{_bindir}/cabal-tweak-remove-upperbound +install -p -D -m 0755 ghc-pkg-wrapper %{buildroot}/%{_prefix}/lib/rpm/ghc-pkg-wrapper +install -p -D -m 0644 ghc.attr %{buildroot}/%{_prefix}/lib/rpm/fileattrs/ghc.attr +install -p -D -m 0644 Setup.hs %{buildroot}/%{_datadir}/%{name}/Setup.hs + +%files +%doc AUTHORS +%license COPYING +%{_rpmmacrodir}/macros.ghc +%{_rpmmacrodir}/macros.ghc-suse +%{_prefix}/lib/rpm/ghc-deps.sh +%{_bindir}/cabal-tweak-dep-ver +%{_bindir}/cabal-tweak-flag +%{_bindir}/cabal-tweak-drop-dep +%{_bindir}/cabal-tweak-remove-upperbound +%{_prefix}/lib/rpm/ghc-pkg-wrapper +%{_prefix}/lib/rpm/fileattrs/ghc.attr +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/Setup.hs + +%files extra +%{_rpmmacrodir}/macros.ghc-extra + +%changelog +* Tue Jul 25 2023 Lin Runze 2.5.2-1 +- Initial packaging +- Using help suffix instead of doc diff --git a/using-help-as-doc-packages-suffix.patch b/using-help-as-doc-packages-suffix.patch new file mode 100644 index 0000000..b995f9b --- /dev/null +++ b/using-help-as-doc-packages-suffix.patch @@ -0,0 +1,78 @@ +diff -Naur origin/ghc-rpm-macros-2.5.2/macros.ghc ghc-rpm-macros-2.5.2/macros.ghc +--- origin/ghc-rpm-macros-2.5.2/macros.ghc 2023-03-19 08:16:20.000000000 +0800 ++++ ghc-rpm-macros-2.5.2/macros.ghc 2023-09-26 16:30:17.418978816 +0800 +@@ -161,8 +161,8 @@ + exit 1\ + fi\ + %define basepkg %{ghc_prefix}-%{pkgname}\ +-rm -f %{basepkg}.files %{basepkg}-doc.files\ +-touch %{basepkg}.files %{basepkg}-doc.files\ ++rm -f %{basepkg}.files %{basepkg}-help.files\ ++touch %{basepkg}.files %{basepkg}-help.files\ + %if 0%{?1:1}\ + if [ -d "%{buildroot}%{_ghclicensedir}/%{basepkg}" ]; then\ + for i in $(ls %{buildroot}%{_ghclicensedir}/%{basepkg}); do\ +@@ -194,18 +194,18 @@ + %if %{with haddock}\ + haddock_dir=%{ghc_html_libraries_dir}/%{pkgnamever}\ + if [ -d %{buildroot}$haddock_dir ]; then\ +-echo $haddock_dir >> %{basepkg}-doc.files\ ++echo $haddock_dir >> %{basepkg}-help.files\ + %if %{with hadrian}\ + # for < 9.4.1-rc1\ + else\ + haddock_dir=%{ghc_html_libraries_dir}/%{pkgname}\ + if [ -d %{buildroot}$haddock_dir ]; then\ +-echo $haddock_dir >> %{basepkg}-doc.files\ ++echo $haddock_dir >> %{basepkg}-help.files\ + fi\ + %endif\ + fi\ + %endif\ +-for i in %{basepkg}.files %{basepkg}-devel.files %{basepkg}-doc.files %{basepkg}-prof.files; do\ ++for i in %{basepkg}.files %{basepkg}-devel.files %{basepkg}-help.files %{basepkg}-prof.files; do\ + if [ -f "$i" ]; then\ + sed -i -e "s!%{buildroot}!!g" $i\ + fi\ +@@ -217,7 +217,7 @@ + cat %{name}-%1.files >> %{name}-%2.files\ + cat %{name}-%1-devel.files >> %{name}-%2-devel.files\ + %if %{with haddock}\ +-cat %{name}-%1-doc.files >> %{name}-%2-doc.files\ ++cat %{name}-%1-help.files >> %{name}-%2-help.files\ + %endif\ + %if %{with ghc_prof}\ + cat %{name}-%1-prof.files >> %{name}-%2-prof.files\ +diff -Naur origin/ghc-rpm-macros-2.5.2/macros.ghc-extra ghc-rpm-macros-2.5.2/macros.ghc-extra +--- origin/ghc-rpm-macros-2.5.2/macros.ghc-extra 2023-02-02 23:29:52.000000000 +0800 ++++ ghc-rpm-macros-2.5.2/macros.ghc-extra 2023-09-26 10:29:01.799794938 +0800 +@@ -48,16 +48,16 @@ + \ + %if 0%{!-m:1}\ + %if %{with haddock}\ +-%package -n %{basepkg}-doc\ ++%package -n %{basepkg}-help\ + Summary: Haskell %{pkgname} library documentation\ + %{?1:Version: %{pkgver}}\ + %{-l:License: %{-l*}}\ + BuildArch: noarch\ + Requires: %{ghc_prefix}-filesystem\ +-%{?ghc_obsoletes_name:Obsoletes: %{ghc_obsoletes_name}-%{pkgname}-doc < %{pkgver}-%{release}}\ +-Supplements: (%{basepkg}-devel and %{ghc_prefix}-doc)\ ++%{?ghc_obsoletes_name:Obsoletes: %{ghc_obsoletes_name}-%{pkgname}-help < %{pkgver}-%{release}}\ ++Supplements: (%{basepkg}-devel and %{ghc_prefix}-help)\ + \ +-%description -n %{basepkg}-doc\ ++%description -n %{basepkg}-help\ + This package provides the Haskell %{pkgname} library documentation.\ + %endif\ + \ +@@ -81,7 +81,7 @@ + %if 0%{!-m:1}\ + \ + %if %{with haddock}\ +-%files -n %{basepkg}-doc -f %{!-d:%{pkgname}-%{pkgver}/}%{basepkg}-doc.files\ ++%files -n %{basepkg}-help -f %{!-d:%{pkgname}-%{pkgver}/}%{basepkg}-help.files\ + %endif\ + \ + %if %{with ghc_prof}\ -- Gitee