diff --git a/haiku-apps/xaos/patches/xaos-3.4.patchset b/haiku-apps/xaos/patches/xaos-3.4.patchset new file mode 100644 index 000000000..648e56b46 --- /dev/null +++ b/haiku-apps/xaos/patches/xaos-3.4.patchset @@ -0,0 +1,1069 @@ +From aa4a5127a0d1a0b3b81de73eb65d41f9e592e82e Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:06:37 +0300 +Subject: Haiku: add support to configure + + +diff --git a/configure b/configure +index 38ff586..931222d 100644 +--- a/configure ++++ b/configure +@@ -7673,6 +7673,7 @@ case $target_os in + *linux*) CMPLX_O_TARGET=elf;; + *cygwin*) CMPLX_O_TARGET=coff;; + *darwin*) CMPLX_O_TARGET=macho;; ++*haiku*) CMPLX_O_TARGET=elf;; + esac + if test "$win32_driver_test" = yes; then + win32_driver=no +-- +2.2.2 + + +From 7890610393ac8627173cf1552f51095ce72d16d0 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:07:27 +0300 +Subject: Haiku: replace __BEOS__ with __HAIKU__ + + +diff --git a/src/engine/fractal.c b/src/engine/fractal.c +index b89bbac..8d5243e 100644 +--- a/src/engine/fractal.c ++++ b/src/engine/fractal.c +@@ -382,7 +382,7 @@ make_fractalc (CONST int formula, float wi, float he) + { + fractal_context *new_ctxt; + +-#ifndef __BEOS__ ++#ifndef __HAIKU__ + #ifdef __GNUC__ + #ifdef __i386__ + #ifndef NOASSEMBLY +diff --git a/src/include/config/config.autoconf b/src/include/config/config.autoconf +index 8553574..28b8dbf 100644 +--- a/src/include/config/config.autoconf ++++ b/src/include/config/config.autoconf +@@ -2,7 +2,7 @@ + #define CONFIG_H + #define HOMEDIR + +-#ifdef __BEOS__ ++#ifdef __HAIKU__ + #define MAIN_FUNCTION be_main + #ifdef __POWERPC__ + # define SLOWCACHESYNC +-- +2.2.2 + + +From 4ca84e137cc980f8808b28deadd8368c94137700 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:08:40 +0300 +Subject: Haiku: add missing resource file + + +diff --git a/src/ui/ui-drv/BeOS/XaoS.rsrc b/src/ui/ui-drv/BeOS/XaoS.rsrc +new file mode 100644 +index 0000000000000000000000000000000000000000..2fc3f879a4a050d7f4c1738380340bb6434af258 +GIT binary patch +literal 71219 +zcmeFaO>84umgkoppZrQv6qQN5%uNAa#hZmETYyn33GNvj +zq|6{+maS9_{?aziP1iSNb2Z`7cO%_7Tti-@eP^ +z+dpx~I{p8UbpD^>_;2_AA3wT`7MwBYmP5GcmH+gPagfXJACxtP=;=H{6BL1UuDPI{ZrQcpY#8xqpN?$_Mfr+ +zXBzlt8u~?N91|{%`*3FL%P@|Ko4|-M`~^<09mIcq{O|tu +zZ;o{}c>I_D?f?8&Wc(=n>;L6%{{7#CVK^oErKI0?Q}s?NuIJ~^H))(DopFb5e?FeJ +zT6(ZWV(aoaRhphor+t^wEFG89r*bNtFAf8j^xLzPWwzP*_MXzFRAC*KuGrz`@+J=* +zd0zffSEdZVGJ*v*n}aaSangQsep)(R0C*3-3`f8OLXv~ep*U4(r)(X5Ty^;6rL=uo +z!Y@s?F6l>xUf?b~j9-5npbb3v(f0Mz{ItIfAHUpN*jk|q{5A-d;BklCQ^IfSatXg` +z4q%D=9Q`@`M1=g$snFoF4e$v?ie_2&4Zxz5$H)B6@w&kxAe4hs-fynjQFiHpw#Z(?3k6`B=H>p<-ofX@ +zCW +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 +zwO3~FiGv^HUq^nTK<7%>;$W#-NC3mnaWvbpH +zqq8$))OLE(Z?!v@QFT7|R`uR|wdkc@N~gFtpU+>!wTqM8XM1Pcj~woGzuIGL*8!Ll +zgvr0cdmtO-@bg)Lp94@^SAx6vm7yfZ60kW~ckbX8YZ)~T8PXP;H}&!3Nue)YSrzyA7nzx&mZRpv>jaWR@F +zQ_MxoL3sq1sFrHwqFMRn*;B&~mam96D~(1+D)f*s+-|oC1?KQUT4Yx8@u7ncX)jkv +zCmt{4K)HEW74h_O!|eD +z5a$70Ih!&xiTrwISRDzuauS5Q?P_g4!k|vp-e3@{=A$5Z8P>Y3mMHJ}9p^jJUqfj) +z!MoiJeBf8|4>&u9;Ud!_;xVhO+Zk6wnI+Ilhd+(qhKI8(zd(N*@)HL;D{xB$3bV{G +zL>d}=_we%~*?k8|G^n+@%8M*xU=+PPn@=1Woq3T#iLB +zcNlmJzf1()?Z;&#i8jvQlclEEQP?-N?k{ZEPl9ML8Mdfzj^3}t$FOk@;P2?SwkGj# +zJO#J)dKE2azW>|bK9i)+I%JJ(7-$0_-uVrHye_j%HWswI)sf)DDPq+b=nN;0vf5{i +zoU?Kc--gnPGZ}!oQ%#bk;|K8DhA-#fZ7VS6=n{Ma(7+?>Fhu^{9^u>boAGY{@N>qw +zzXQB1N%jj^6unM#|*rWnFcOb6K68Bh@w+QeKemMtkjmW)ma6aEqA5RIt3_&!= +z5O+&D^y4n%mr)y79imCj&YnFfQ6y~;k5=g-LhB~`^_Put8_}0pBVyxDyNks`HYI-M +zJTmYbtA}b@^v*U^sw4c)XJ;UYi`r1r7B}`OLs7Zq{mF)rm4~Ifcye+Zzf73sZ?=6I +zzq|065wr2pmrWTg7paaS9!&5l!N6fX@G$%O%L!QIdP6Z3JD4&@lV=c6&cdG$TXA#M +z4~h0*7=7N1+d!4^E-+y$#?6!3$)2Fx2t<%U2IjR80rH~41-L`S*}62sfMq;v53{)^;ASZ~xitulo@7Xj8OztuIJoP7yE#Nghuy>7Exe|dTu +zCjD`;>YexdqDV=yjHI+Lk=h2p0>AuDd%(RmBfpXgF3>0)$QvyV-g0H3dfi}KexpqB +zJehw15)6jbZo#O(Q|J!SR{cHzo)u*I_2G^qm&ttLN7b5! +zsy4l}3Is@3F0aUBawb)?Wku(7*r2RJaIcORqd!e<(pDB3SKwFRn89@yKhqf*)V6as +z7=YBekbpTFr9IcO;gBsWFvG71eYspdPx*jFD9tyyxPwpOk6d|O_Ed=^VR6BSUbNc2U2n_Hzw +zzWR!u^LceRZS)9%b;AJ1-{if#qPy(+%VmouLoIcRJjXBtIIndMU{LYZ2f>gTTR$Yu!S9fM4e&)F=9be@k?^8}G@xn#?QJ)L5Lhd&LVYiy +zB&{AKy-BUrE_fSoXh8)-T3iROotP0*Ceadrh`~L%9-`rV>@!lpH~_FuzEOvcgqF^_ +zE4jZxI2A;x9}u{1%6f$ve6(CfG!DQVv(nx!xG;_F0Zr)-Hy{jxmWyGhjd}Prn)H}) +zB`Y<1##!q~{^{%LQ$ZdU6x48#1g2=FTf6PQC< +zZ^ej_7JitAMS|^4<+2*hBd;$4d^yPx=NXd2ri@wn_!H>aUBVJ%9f18mh@ZpNL}1=& +z%War!K)4i=pjs#ynmK+s0aCG!&%nQKm^5|^{Jw_FUM4pIapd*gvx58}uh!+I4`F)e +zEqVK+gJBIZype$1@m2FBuZN^fo}p!3B{TiKfm%oCk&{jwhlCsU4pvFK4#OidpDWV0 +zV)2!(zh?ktC~c0_aiULjc&1ZMVgO-3C%;StmgvqMX7HH^ygQ(os}SzVh*+IBCCNWY +zzIHkdf`uKqP)@-{ESUM9F3A$aI;t+`^ixa +zL#og&+}8oWr+dQBFnn2m+3h~tdqzdO8%r_I&+czMjfdfY!I;EvH=9y8MRTZMjoYwH +zbDLvmQ|KWx&L)|{w~F@jinA9~ck$c6hYF^0TfLB<6(X>d%LYDa5Mn2uV31e>zSvI$ +zUpidXHvIcFWjcuJX;N>-t&MzZ9CjMq&mc-YogGBDbCOUY!zClSfd+ZHXQ7rxgVUD) +z*nB1cH~EzC!!vz?N@}l?zJK0%%8j|Ix0?iD89!CU2++`TNK@8K^xeZx0N%l`44;bb +zx@|fC{_JP;KqLaQ0bz$C`8x8$3s`^rcxUIylN~pkrPINr_CnO}Wb(F5f9*+3oYuS= +zx4OCMZ0Z%|dpZr@ta`!0wAW9;uYQ+-yUjL%GC(LAoc8fdHv!NPe29rFhpleh46FTs +z01NKgCe!Dlu8o@&t*?QVeD%F`6g;7sw-^p +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 +z(cFl+BLanAVI?ch&uL%aE5~nqefZ?8SwE +zgun)4U~I^yO>mNWb>wG!yuokJ^t14TgU|6$WJ&bm4mFu$qk5fpFV`J8iyMjn*x9zC +zw?$xm3qSM+W3OSz5F^}MiXXzTIs5Hzf2)~B)!OdUoRX-h2(U#bpUGX(!Qx<1oz&pN +z90y44c>^|`58j?^;Hez$3_HJVB59eQjWal|&YJkObN;kkPltZ5Qm=;ZeVoOszE?|| +zP_XhPCg~{-RT9oGwt^6xO7tgu4LkUkx!pN@PH5>@t@ilw20mn(`KAP~(uVxflpCqe +z76)^?S%HQ(qvs|0r#L^lzM)M;f*uOShO_sYd%vWYf7ZB&>4k0t71_5N@o1O?%%X!p +zn~jS`t%_eVuKB~q +zwF$$bMt|MIubygtPFLR2|njEfS{aj)Lq};mm%Hh +z+=)wdR-ko6Lh#!}4}DFX+Tk<8ce|4_jldOpSr>k3Lp_I28j-@y3n=7Kzi6G*(-lnE +zgZiXjGBGCZg*FKqjOKA2fC}-(m9xDXbHkVn@5k}tXZ2x7Q@F%3ir(LlfKLFd#Z>B;fIg*4t~&{s87m14^^Wq=90)5*vL=E +zy3_8xIrg#^5jod!kGYmuj%_#5H4mI1xd+vW&peWjrNc2}Zt3)^3wP2#w6fyGy; +zVD}t8Yjs-aIk7J<+v{|iz}Kl%0NCLNEr4IvsN4Yqi-lV)eB4#85$1@MPpZ@(TcAbW +z?LeynhKs$BSy#pnm|eQl3E`Q4)M)eWE@3Y_;8$i;qOhRB&o%`2t1V=ur9b1aucL#- +zq?;&G2<@Z<(*zLN`wWe +z!-&fkesu`XrLD0zd*)|u4K@I@u_j@2FNtTjPlD`8lga8tae(?p2HJeB>|Gg;LN=(P +zc-TWjtXXkl)TfeT`DNmsT_ts8a_mi0M19zLNh9DO8?ft;Gao4?^z6ks) +z^dt*2`bNRBvIgMcp%EZcNw;y* +zFO4B>W-!=w0PQ|)(sN);qP1IeD6Ep%N`9G!5TKYs-^4yXYkIh!)_z@(=L$F{!TbBp +zVSBd~qmLGqM&W8?6kQG&<@%MT*4KY1@Wa;ADw|HZxwnhsfqBoumRNTAE`9|9+Xqbf +zEzzIDZ~Kn>zrgSDj@-rhxMhyx??CTRq@JH(&#AK~3&T(2kvkGw8#|^9g$M>qC$1k2 +z2f<)^)F=K$frC=OfbhIiDB|){9OIzZpm1ER0DAnaq_MeZxwihkel)6ezs>mT`_=q;0Ec`0{ +zsmPzjm#ycLc4gi(G;I26`=Z^9_o^!bI|eMRKvYa!{wd%l8>PEzPV%VK!C~tO=&h=^ +z1QNzJ8Qt=4?AW~GR=ZW1_y-F=MwmMN;qcqLD;ao?ddWCX!{jc0_WlPp&|i^E)nMcN +zp~N~sLq)66)S5W$rcLXiR`;yJEJ2Q>N`7VN?Q|w5a?jwfo7Mdx;XjITqb6=4;?4Bw +zy-ur17ncQ64p{4iL|kPQW8!ryJFT5o+sqYybsDyUv6e6v6QHkmyC-iepQc(xk14V( +zAzGv}Iy#r}%%3OC+Mb)ZeYlt7SKL(`5CH=9rSoZlA9M))Jz*68iR^DBtV^AE^5lu^ +zkpey$J2+P}{i~gpp)4iKMGHyS81JceI*gT<(l1+t)qjlr&e<+R;}Wl+J3!nG<(JD7 +zS2S`5EQ&j_8+UehS`Fea>+(@eh2ElsqaU}34>-{ +z=${bsCJU!^*5XAw^v&^9F#5D$w$-;(9vO!zE&k=eB~E3BIMRtb#Fgo0ESdUcnJ7%Q +z8uhh5HXQ6Q1f*2kDak*>&jm(0BhU$eY-_hW^IGw`L#A+@J!@0Y&j5GQ-swYnAN{Zy +z$4%L1t^V-zNtfKqQZ=!PaW>&H)qq^G>K_~& +z48c1I;+H$0+wGGlv0wX0&fL3|_F8ZCQUQcx)vpA7)>0uf;pFXQtx=2LUR>1U5nh|* +zys@s=e;{~^l|DMa2YxbFT;j<6usu_j2Z37yIL9w0z*c`OMdkZ1)5=SZ>D-XC%_$K0 +z%#?8$X}cj!XMuCSlEQUKK3%qM{5Jk=+^kQUjgz>}st5@jM5-LgYjAPVs8)%gqDB3E +zM%oztIemE))zKsu7q!~O+iI;*txp!?N&Hlf{xod~wIs!-1^cpkM;u?&FzlLf{rzk< +z<7M}ffybgqZdu=x9_YdV%;ilFVdbBf=wP1j03r +zn939mnIUdTTA0ax_U8>*S<@rPdp=K9eeT`p7%&ukmNuy6XI#9by++yE0zc#szD#@7 +zUcFi$rL4(Y^>GL@t7CtJ*!R<@7qci)S`XI;&=iY_CDU|ya~${wNq^68zZ_{^A&J!~ +zLpa=@9}OGBl(5Pr^KHmHNf*gl7n<#r?+1ReTnehYse;4QQZ!5Eeg8CVERu8;%o!k^ +z@=cAK#VCA%^kq?`X{e>&jC@&0RJ}KI);oule&~{H=V~~uFg)sMqOSgLc1b_=7(2*U +zzS+R%RCNwl0bq6_Q{*{*%Gw;1{Ue4U!iCm(NrN{+56`9dA{iy&O~~xFDAEMWaL{Yq +zGT@y`u=umyAobTlh!+{~_^c0tM>t)j#mco1DWW4)`QdN=c6dOTx6yZMJ{ +zj}=i5SQwDGeJBua2||ykUi!B}FT&5lVq^+K)pAfD7!yvWn#r_;>DOwdju^%kW +zZkMd@2_mEPG{KdZE)Zs^H(dZicoYo=3C@){qmTM0{4~Fs{@S2NSdoZ0q{I>@)08Y< +z0Q6e8+f=&j6)d0iW#! +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 +zfPYb-qiV<4vnU8x5N)MmZc4u +z#2hOLPutsO_se&PZkE9+L`&+X@*lyGKY^d#uQ)30^w;XJ0(I4otr@IH<-E3!^;GMr +z6Jmm}^j>AR$&}IGjD16tFSJK&c7qV^i@eU+%Uurq$mC1*ehQcuPd5@4eh)v)XO|bH +zP(j4Zwr8h(3BUYGzPGC=7~l6s-MksNnAhg4@mu5Rtuhu@9e&o5_Dn0js5gAyshlt1 +zr^4|B5eBSTaY-zVm6elDC+bDtW|!T23_rSWBz?ASA?6MI-l{6qlSAWf)$bjuZX(-c +zd7(e@do%juwOz)r#lH%)&+wx@c3-~F^4HHpGlJ|$XO*(6?Al{LnN>RqJ>i$ceu3Yl +zQRv^|V62d(riI(wttMf~6&#&45Xzey;*<+Jr(D{Ao`ho9gJ*S#6vc43D1 +z4QraZkBCv@QKUn=t%)^5r`SMa84y +zn=Iln_pluh4{OUzWcVr5(pC491~Fs6J)k8L=*IA4!@ur6ohv=BlV?W+^XI2I$ZiyV +z*&!D*{+0e+%@zxvb-(e3C!-osPuxX+0f?*!&oim%@H2)}KJKS>;w#~YaMd$TY`KG5Fn2*2ykTXZQ(0#yS`RSgrU(Wf;{Ot(`NzJxefB +ze~-D4Bw3!8e%Ye8NMG3fB7{oGZCO@Q6sX^JqSL|YSHoUCA{R&lAEMlCM6!@BPUX4Jf1E0=O-?Zr4dh4Y+jsFbkTYoH%?AYs*PsMU(5rn0vN}a +z?YGRp#I-ZIs84XeO<0(^OVrfk$CG*!FOzvt<*mAxvQKbp$@HW_?87WM@-)vgWyt`) +zenT*le@UDa6(KxnT&uqQEuJ1e!=t6IyZA$a3A0g-L8W}pfgQf|m|^)+a~+0t{{!c$ +z2*h@?Hwcdc|2;nCieLQ{zQktt3F7frX_dtj=jxHq=RLe|+%Y0ZdB*m5g*$q9z~|rw +z`Zw?uF-bH{)vu3U9{csQzDF+^|D8XNM;~JOu)`PfLDy&Di{?Vk-k6um;T_GL*7yO;lmbxgIHG%K858Y>OzM;yCexb) +zpMEm^WMd3O_D~pV!xts0OoNK5;FrEU0vJuf0yQ~!g`OR`13RbjN=DzbOmTmBK;TM3 +z$cz6WnMMOffaHN6_3@m0M+#&a_^Tk)_^wOyAel1ymyJM1D{smtf>VP0h(;j1Lh+J# +z>3MMIjR+v48tJJ9H5mO|%&J<15w*=S`pJUt@)2etOnh9M?;4H}UN +zrlVOz@YcGwAgYKD4XGy<5<`>_tcPslQMi=RxU8?H1~#V^zccm?`Tn?aWlep?06+1S +zz(l`C8qPkVU*a){xFkYg751V9UxLzWOrx7143%*NT6Sra`yaI8}r=5D2+ +zSd8cSS(*Gf)b>WM#k0`WI1lF8M9j?V<;Xfpv%vwndp@OR%W*oN5Yq`=*FfV +z<8cw?BQQkK2!@nH(BUWKveVpTgRWIabVlHiMtb^b8hFzgP2Jm9tww8jhvDkEztXqg +zVR<0Z+lNXza7Q*+scV+t-_xYGP`t^QNEh_HQ5qj_oF#mxmZdd@x2HD&VF{u>1982+ +zT|y37y0u`f4^SFaWQ;W#2D1kEF;^I3oU-IQr-&J#J&-kgT*6NjzOaD&MtqNj??;Lt +zMS~=thEqD7GGNMZYVY8Hamx{g8=oJA|Yo +zMe#uOwDvxMb)yl1JpSSn;Ydq;J}_k5D@+M{O4sC#sz$Dfhm9%<_#A!)n}}0xS-i5t +z#-KOt&!(_0lWmb)l5&iS@;P~HH*X)>$YQHRe57c|cUv{2O;E;M)hE1c26eFn0xggr +zHL0cWgAo)iMq~-|Ik->JYsXpARbi&r-!2tA7cIzwARFku-)9*W +z)jJCM>*|7vV{0$hx5Su8E2sQvW!lo43GSYf{eA&o5 +zZPA|+Lsjj5WFs`lf^@`L&WKKhau6rCh$2?E3<)+evg~{F0m7A!7>t+{MkLq})f);y +zu`tP~?GApNCT~v)3_>6=y!<|S?=NPnTLKbB`hw?b5e$g;OzMcq(}>EC8brED28znG +z(Stg6zqE7O*Tq~7P!J)Xqz(EFVkDC_a!Hbw^a5mN$zX*75#>qd8-FvWh(;w6V77n< +zTW|vfa~gR8k66r()}y2m`xdXL7$RZ9f(ts#0YUS&^?%> +z(<&j$REY1AA#qmz8%GcRVpMH;;jz_~yofvqz1w|%tQCEOf!%a^b4oVE4f%+cpr7>S +z(SX-kS{+T$MR$Owxs6dYE_v +zU&hNikppM}L-=)2Jw1YcZcreYk&6Y3ig3;m6LfI^ORdsi;EjkaAd(iV11ZR|87PE= +zk4h;%if`a%8o@#2YEN9aL+o)<6_u9%f`DugjYAP@N)X)Q7OMsF6Mj!y;cv1%e2 +zoGfl{dIapQ*S%BfQ%yV~k|IKGcsWc?MBoT9hWUorCQz9OuiO$O7vtlM{$$|L$`ojm +zKHR)t&R&G`H>;L^td&4gHPT|X2*PkA+mf^Gzgng5D2B~(0+Sh-DFMt)Fhv|bivWbzfZBf^yu +zApf8e)krqlIpOl3lKJh5(7O*r#*xS34g5lOtW-t70KxspcozaqUkLMtkBNU64i{p+ +z6_I5U0gH3YX{6XO~Qs%pd&M*8MCQxZJH^gB~R^-jJ9(Q6Dft6sjByJnc*A=n2~S +z15|iJ+k=>~FZf0Z8YGPcDw<)nTEVqL`!qK8S$az^c=LT6z6*l@Sl+!_dv9x4T0h3#Th6U78Tou=NmRJuTYDPt +zppRE!{E?r_n2AjsuG?O`4%8csjfh2Pb8fiu-i9APVk7G}IAX2S#kllBUcu|$?t3$G +zY4iWZ((`7wqpCNp_Wh(fq|o#{xy$>$7X0{Q`}^--y|OtcZ>C*=*@H5nGWx)(Ti!{yP +zqj$AQFNpA82bFiY5T;Xf{=4fSxUPEPj{yhEX$;{BzW7x^bewVJ<^TeG^=i7j{yqr) +z^g6hX`SzGq^1F{;j-B>iKmhS_c{O~!9IGL# +z!E$`{`n96nuCB(*<+w8Yc)c8t|89Kw>eba1@Lk0MQH9oibMUH<|L*eg@5al^*H_D{ +ztE<)_+Z@a-$84RZZ`eEI5%C&$aH*URNhM><$m +zDb?HHPnXafC?)SiU=;dl_WBj~e80T9S}rLJXSn$vu4ei*dj%naz&m*7gXLn)6TNV@RQ98aqw;E4@B?a_g$8*C`1sv +zUgp1Te>Dq&>QIN^_ey(VC?b4yZ3oxvVnHfwUR_?=Ew8mDjjPvJ+F!l9CRO<#UxS}r +zx)u#quRm5kE`$GceR>`Ir?>fIx}GOtqeM47c=zM0{kQhZN;EF+Spr}F<2wN4HP_d) +z-n&y*DNal;e|+~Ye)s+L+v>*(g@(C4PJ@rvAFqF}&h{HAaFRFb1*}Mmc?A42{xb5* +z4@8lL@YDUl@;jR?{rz{#*Rs?zT)zHVe_5f}i4&HUOP#Pk8jHQ!QvXY5 +zQ7rjcy9FwFt>WeQxyQ)mweWLdE`PkpC&N#Vp@r^W<_xSWqEZX$2EnZZ_xm@$0bP|j +zD{VOowKs~9t^K)*aG2+IdF2t!oUAJNG3IMIn&`qAd?;ZtuaYCh2l-bTIKi4mPapGU10E&2y|}0 +zpT_SylYiph4gE>Xh^efUt_VgJc@YGV6;;MeQ6R%_oImrb`Ywlp$9_ZY#?qfIi|lb# +z<659xIs9~#Kcs7-k?ftzq2pdds!V?lKi%tuWByDTzhz!1veTimHTr{t$CXPug-~Fm +zPjB`$@lUhF3_f5q^7|?J`wkn%=#LkwtXX+E`YHUfn_u-~WHa~jH{Q^nexhyjQh&Du +zKT0|UzU=0rc3D%+a#G)xe`-eeHo#&5L_xA7V~l|NHF{5sE_Gmz^zRjIUKGKwFd!sm@)D}! +zah08QlB)oQj&Ok=Fwih#l&qS4^LTN*#D3<-Ym>Xh+48}Ro(*|(i@n|zM|90^8V4}0 +z1!a-<)_Y3lzcW)tIloqR*q~K!F`P3ocrE7${Tnye-l<^YVUe>&pNh>Ozea(11w4nKGH(r&T4_00G0rmCb4?Ex$sGg68h?4WqnQZI4#Uw&cp +z8qQo@SN{QfSasH&1%4uIie;qqo9n#j?!BdqHhHO(0+&Rm;c9t(jn^m|j_}cWLq@C& +zKRNSVayU8w!SO--=yzoHp8x_M@~2qK;Cp`SUHrNF=>jiy*Es~g{+0bKY0m8FYr{{h +zmEo5eG`WrD@^v>~Esg$kqaC(wEcUA*ez12-%&nm_}NW# +z$BLVEa8&`nEKy#JSmF1DBvL0Wzi^q;SMP8I1lRp{qC8^(wTnxe$2RBkYxnl9xuK3f +z4T6s`qawq_d}t$#pr_G2C;zfe+#kSCjquvKncw3W(XT81UdiXe*?=?_~ohzlh-s6!2BCB*vF;Zwm5Ht(R=--4PL$S +zejoncj^E;-qoKk$fYb+2?pUsadNQJ8LVNhG7 +z2tVBVV;t+P_6oNlAbYJNmUj>p39wxZ +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 +zoAL@YgM_KX1(`Vl6d_t#0BBOr19%>MdKQg( +zb1NtbnWB*mT&WozsyQeb?>gXe{6s=NIRd0!xDv|`*9)IWs`l&95n}>za<+)9pdEa6 +zL9;zY<$`aV95O_e#>pVe@P%QaC0f@-Q{|H`70*x-B1Nk5o9cMl8|t$UN=Mk{RmP^6 +zV-rp%nmxjl>^5Xpt>dXOYT)&UCj&QTz=t?+^0KlL<5TK*V`7nV@?&cZ40hUe8||r( +z^scsO-WeaaF;o~^9GXe0Er5QH{Z260@gq*>Q@^YsmnPSl&xyhvDSx +zpwd7|!hTtFm#~$1R)Z_HP~*&6$JrDmy~D27h=LU1)U=QGW+a4vnj{DFCbkknh1CQw +zdstW{$Y_d$Gsv?p7OxDW6Td2?f;^?+4jM!%NhlULI{Y~41)te{Zrn(Pfe`Isd;F+r +zh96!8z2taijyo3bASyv0KhlI<{TPCtn>}=fAAUgzKl^$JoB8C^p#7&<`OeJP*=D +zcn+m!M~otk8sH$akcB|B8W)Z$<7$=x$Oer5nw~z8{1J=5yqHXU8qkF&(tN?;rJ5m_ +z(_aZcV_c7)^AhPI1I-&R+Bf|Ck5mX+zrx$4CyHGQ^%;1EpD>d$R(Xz+Oj?AVvpgb0qw +z_jjAqOcNd=6@th=b2(F|bqJ>Q3Y$QRe}MpcBs0 +z6vHZL;*}4AW}h5_O9@MgYMe7?0tmvw!0r;R{4~^pOxXXT*Z4%F=hUAWoWf6CZr}NL +z8rUhjY**hRt9liwKw$`F)#(kZF;`8eC=b94Gxy^G6!R`vST|O3_+bJ{0)i3Z3=3CAu3O?n +z83Ir`*vuHcQrgbz#tNxx-Wpwbl9uDgt`hUYRwmm~ +zK75Ig0Xwq;h#O|W8$)Yr033Atw8kU}Zy&!C)-^k0Cq(w)$P#|It1bbmPg2h~g5%ko +z9xh>^U0fj0pLhpa(EC;hx&SmPf~Lfv1`PObH8!#T!(;> +z7?{_DuvHJsM%B2xf#=~X<2Or=#xur&33DTMfG@fxg#Sv$lZ2WA)|Al3F{UwJ3pJJD +zIiGs@4l9C^;XaILMY1HUAH-(?q&%c|0{m0`DPbZ}%GxfXVX&fyE$0*g=eV>`AAL?M +zAv~m^^CoMABG@k#IPf)arLx-Ok0Wt5131YNy{5(EosA?*2KCwPUilkpVSHd+J(jX^!Px{aXYKm3O$3Nsrv7jlN8 +zac)k3?uJHr#=hFK5I&C|5E+3P0Rzv58qo9qT=+5%ffL?g7v~aIlP5dIB+%4Z=x>M;f!P +znj+?jxezvhXMaX~0*GLJ5Tr|Fw?jaS-u#btNCkem^(Su`$h%T&D95@e +zPT|^ZGjYH~95g2k9q~z$X+1>7qM5N~KnXgxE7%-<4nRzO>;6K7hL7W4Qy?_c0-MN! +zY<#ZJHNzLmBKj0t1LfgD#WjN^aqTqg&zQKK;2mK&j4oDelYtC6qdp7gQj3wHC~%;p +z{mC5Nf$N9&FqzC46m*&(K2yO(>Pe;pA>&C3%amjYWF3l;gXu{%NLz04!f?W~o4KhU +zBYD<^OSU2$-K|~?XQ38gB?&;P1WkZ~u@%XR2|;(yVTV5qfe2Q>=kaqJ&;f73=ia7Q +zz<{Sdt+QZqXu;6YABv1nnc!{&qY>^F1@ktlR)cM&)F$I7Kp$cm;?@Ub95SXrjQK%{ +zbp=Vd_@Yy|D)u3z_yigm=N&a^Ibi*_qP}*A9u&wUYgippnVn1-T4u1oN*h^oh)Rc1 +zp*+xYMnkPvZ%n9Ol@mr31A-{fC!wdv_kkw2P%VbN{9UwLZ**yqVzBIc4E;N<~WP4gfn6dAF^P?!dyjDh8| +z;YnbihB#5zDs9W&Pea1w;1uE0~EaDN1Y3`Smx@LMqe(I0xNOlBPnXyEZewDYCl +zRx3HKFd0KJAW#z@U?7CLCu%|Xu^^?H36LTBkV}U{hdQ0xQ8+Y>nGkFsn~)4?QMwZH +zos!I|vpp^(bO896M8s=J@Za;j0~v?4>9DF1Va^`d_p~uycv2;yDEh-H)~h6?xV<$m +z&h!El<NGx85uCv +z6@~@nIRM4JCHQg+#$KU*l;?z4oc6m!q#2<_E4Pr_M58?@4=vf9 +zGUXhw2`cjCiC)8JTE(h%HWgS(*;I@`U3#LRTorL7IUPpo-RH#e=Ka +z8hk_qqD9hhe>}ICMh+KI0eb)`)I5H+Z~0^*`CL(6i?Odm&`400fW1~;-yC;*-8IvG +z3F{^$>Ew(NOcBsL2``~j+Yq+=5VC)$M0D5H#AGQSmO;ghXOd7}mL3d@J|K(~JPnb_ +zTsBfE`OpFEXN~8gFwyvRn2v;-jL;*58B(7fFLS4W4)sAm7h?+{A?oT1X&HghoR0t? +zhIIwwnhpgdmS(Iomqic11;=B=)CSD+184|yib4=D%v=Kk#EwLsurb?3ZWo`t`C<+% +zGhb9l@L|0;{lP9X;6_+jrDTikV%D$@G54{DfEke`ObC{RZe}>4)>$+d;GcwqM1nZI +zGHFyWtS2P|irEgnVjfwxk)En2M~T_6aYMZ+~FC +z^@&xa^$e}JZVVMw2tOvoKr^bHBE=s%kcfsC3EJ%t&)muS#1c9B<17-j1R(N{L1r3( +z7^Bxx4O6}YvXGHA;&ov}+O4-m7lTRGRZvz^On@wN6SlOW79I}b8Iu86cJMO3LC8xA +zBRLtzBgWP!%W5smBdH&cn8(gY^#~a=nrW@pGvY0*pXP{=_L=GcIftR}lkLJ&7=R}G +ztn+I&oXB^ouiWsSN@>;xyc60IPs2)3N22SC))c57hCG{Sm@r8uO7ziP=sakU5p48; +z)`7s%GZe78#lBFW7in1M@sWuJyH$;Oa|2d9KC81%y}XWQf{Ij?nEZ7pJ*e0>MdVdL12&Ov +z9I{H-0Txh|3FfL9aW&s;-sBezTR%)3)p^fqBwNbl#jn#eSCMfqKMC5 +zA&39NAytaXF8Fy#mRSkO{VYG#vJ_gsUZr1ge^+5~kL4RIj`9MF6RSJt-@IJv<@ocU +z<-+Ux++h7=`Aj+cLc;PH&Z*`jXNU +zmdeVaR7-vuWl=g??AmF)|AjIs^0cRXBM;@D^N{3Qwq1Wt0e2Z0`Ob3n)bB1|ihRy;8#kb-PlYZpxP|?=PE9%XvClwG~!Mh|E_`Egilp|K;`P +zOte&Gagb+U@C>Ew^B!_3d%eI)_G*E(>;(*NXFb1kzGT)F+)d&i&25-QWLe_fa|fmHT%6qurhR?>yQ2YImikcVB=1 +z>60(_A3eUh`O(gU%^yDfY_Ic+oj=?Bh?azp?w9XRrP0mhS)jt$z=``0CzW)u;Qvxcoz|=bn|pd+vF<8=U)%&avIJ +z`@hlP`s}y5o^$_T_viS<<&XYO_vc)y>)AfE^56T9hs(#mdvl}q+OPinF9u)R^M&ti +z=s3S#^(k@vKV7@LvGM$kfBxfV!N1+1Zac4MQEFYg{ULOE@17k&v(+DevVFbsUijpf +z4|gB`A!ql#+WFb;m2ckpW@rELI}i6C?>*Vuf3UItaO3;+XMaTg*L$Du?&tYC4=8R0 +zc>|vdLGJ%DgPudcYeEe +zDH8DaW?pRjlfS%o^ZM-{6*s+o{ibdj^5<`Q>t#2sQO@7=*42w|`Uk~LZ(Uux>4$gj +zysw*H;;-o*?fpA +Date: Fri, 20 Mar 2015 15:12:48 +0300 +Subject: Haiku: add missing includes + + +diff --git a/src/ui/ui-drv/BeOS/XaoSScreenView.cpp b/src/ui/ui-drv/BeOS/XaoSScreenView.cpp +index 3cd91de..0eab984 100644 +--- a/src/ui/ui-drv/BeOS/XaoSScreenView.cpp ++++ b/src/ui/ui-drv/BeOS/XaoSScreenView.cpp +@@ -34,6 +34,7 @@ + #include + #include + #include ++#include + + #include "XaoSScreenView.h" + #include "XaoSEvent.h" +diff --git a/src/ui/ui-drv/BeOS/XaoSView.cpp b/src/ui/ui-drv/BeOS/XaoSView.cpp +index 472b5e4..a5c8b47 100644 +--- a/src/ui/ui-drv/BeOS/XaoSView.cpp ++++ b/src/ui/ui-drv/BeOS/XaoSView.cpp +@@ -34,6 +34,7 @@ + #include + #include + #include ++#include + + #include "XaoSView.h" + #include "XaoSEvent.h" +diff --git a/src/ui/ui-drv/BeOS/be_checkfile.cpp b/src/ui/ui-drv/BeOS/be_checkfile.cpp +index 7e66cb2..e2efa1b 100644 +--- a/src/ui/ui-drv/BeOS/be_checkfile.cpp ++++ b/src/ui/ui-drv/BeOS/be_checkfile.cpp +@@ -64,7 +64,7 @@ int XaoSCheckFile(BPositionIO * inSource) + } + g_calculation_lock.Lock(); + xio_file input=positionio_ropen(inSource); +- uih_registermenus(), ++ uih_registermenus(); + xth_init(0); + xio_init(""); + r=uih_renderimage(NULL, input, NULL, image, 0, NULL, 0 /*output messages */); +diff --git a/src/ui/ui-drv/BeOS/ui_be.cpp b/src/ui/ui-drv/BeOS/ui_be.cpp +index 57882f6..7fe1436 100644 +--- a/src/ui/ui-drv/BeOS/ui_be.cpp ++++ b/src/ui/ui-drv/BeOS/ui_be.cpp +@@ -24,6 +24,7 @@ + + #include + #include ++#include + #include + + #include +@@ -40,6 +41,7 @@ + #include + #include + #include ++#include + + #include "XaoSWindow.h" + #include "XaoSDirectWindow.h" +-- +2.2.2 + + +From 203f66d1669158e089564df2a0d88ccccc764dcf Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:13:31 +0300 +Subject: Haiku: replace mwbres with xres + + +diff --git a/src/ui/ui-drv/BeOS/Makefile.in b/src/ui/ui-drv/BeOS/Makefile.in +index bbcac17..3ad574a 100644 +--- a/src/ui/ui-drv/BeOS/Makefile.in ++++ b/src/ui/ui-drv/BeOS/Makefile.in +@@ -42,7 +42,7 @@ $(TLIB):$(OBJS) + $(RANLIB) $@ + + XaoS.rsrc: XaoS.r XaoSResources SplashScreen +- mwbres -o $@ XaoS.r ++ xres -o $@ + + clean: + rm -f $(TLIB) +-- +2.2.2 + + +From 4d7b16ec12d7c2cd25a4d76b0ea044a70bf40760 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:15:05 +0300 +Subject: Haiku: fix duplicate type qualifiers + + +diff --git a/src/ui/ui-drv/BeOS/XaoSAbstractWindow.h b/src/ui/ui-drv/BeOS/XaoSAbstractWindow.h +index 72af06c..3c55ed9 100644 +--- a/src/ui/ui-drv/BeOS/XaoSAbstractWindow.h ++++ b/src/ui/ui-drv/BeOS/XaoSAbstractWindow.h +@@ -55,7 +55,7 @@ inline XaoSAbstractWindow::~XaoSAbstractWindow () + } + + inline void +-XaoSAbstractWindow::SendEvent (long eventCode, const XaoSEvent & event) const const ++XaoSAbstractWindow::SendEvent (long eventCode, const XaoSEvent & event) const + { + (void) write_port (mEventPort, eventCode, &event, sizeof (XaoSEvent)); + } +diff --git a/src/ui/ui-drv/BeOS/XaoSApplication.h b/src/ui/ui-drv/BeOS/XaoSApplication.h +index 5933051..6521069 100644 +--- a/src/ui/ui-drv/BeOS/XaoSApplication.h ++++ b/src/ui/ui-drv/BeOS/XaoSApplication.h +@@ -60,7 +60,7 @@ private: + }; + + inline int +-XaoSApplication::ExitStatus (void) const const ++XaoSApplication::ExitStatus (void) const + { + return mExitStatus; + } +diff --git a/src/ui/ui-drv/BeOS/XaoSScreenView.h b/src/ui/ui-drv/BeOS/XaoSScreenView.h +index afc11a3..9158c69 100644 +--- a/src/ui/ui-drv/BeOS/XaoSScreenView.h ++++ b/src/ui/ui-drv/BeOS/XaoSScreenView.h +@@ -66,7 +66,7 @@ private: + // Inline functions. + + inline void +-XaoSScreenView::SendEvent (long eventCode, const XaoSEvent & event) const const ++XaoSScreenView::SendEvent (long eventCode, const XaoSEvent & event) const + { + (void) write_port (mEventPort, eventCode, &event, sizeof (XaoSEvent)); + } +diff --git a/src/ui/ui-drv/BeOS/XaoSView.h b/src/ui/ui-drv/BeOS/XaoSView.h +index 16ff1fb..0293b33 100644 +--- a/src/ui/ui-drv/BeOS/XaoSView.h ++++ b/src/ui/ui-drv/BeOS/XaoSView.h +@@ -79,19 +79,19 @@ private: + // Inline functions. + + inline port_id +-XaoSView::EventPort (void) const const ++XaoSView::EventPort (void) const + { + return mEventPort; + } + + inline void +-XaoSView::SendEvent (long eventCode, const XaoSEvent & event) const const ++XaoSView::SendEvent (long eventCode, const XaoSEvent & event) const + { + (void) write_port (mEventPort, eventCode, &event, sizeof (XaoSEvent)); + } + + inline float +-XaoSView::TextHeight (void) const const ++XaoSView::TextHeight (void) const + { + return mFontHeight.ascent + mFontHeight.descent + mFontHeight.leading; + } +-- +2.2.2 + + +From 126762116c74e86dd5e05b4c0e2fdfd3a0836954 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:15:49 +0300 +Subject: Haiku: comment out XaoSMenu::EnableDisable for now as it crashes XaoS + + +diff --git a/src/ui/ui-drv/BeOS/XaoSMenu.cpp b/src/ui/ui-drv/BeOS/XaoSMenu.cpp +index ba830f6..b30fbce 100644 +--- a/src/ui/ui-drv/BeOS/XaoSMenu.cpp ++++ b/src/ui/ui-drv/BeOS/XaoSMenu.cpp +@@ -158,7 +158,7 @@ void XaoSMenu::EnableDisable(CONST menuitem *i) + { + int c=menu->CountItems(),n; + BMenuItem *bi; +- for(n=0;nItemAt(n); + if(!bi->Submenu() && bi->Message()) { +@@ -182,7 +182,7 @@ void XaoSMenu::EnableDisable(CONST menuitem *i) + } + + } +- if(next) next->EnableDisable(i); ++ if(next) next->EnableDisable(i); */ + } + void XaoSMenu::AddToList(XaoSMenu *m) + { +-- +2.2.2 + + +From 6e776ac97be5d7ce357b7ad345376501d06f3f26 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:16:34 +0300 +Subject: Fix png.c for compatibility with libpng >= 1.5 + + +diff --git a/src/util/png.c b/src/util/png.c +index ef2ecb3..26f2e8c 100644 +--- a/src/util/png.c ++++ b/src/util/png.c +@@ -2,6 +2,7 @@ + #ifndef _plan9_ + #include + #ifdef USE_PNG ++#include + #include + #endif + #include +@@ -33,6 +34,7 @@ writepng (FILE * file, CONST struct image *image) + png_structp png_ptr; + png_infop info_ptr; + png_color palette[256]; ++ png_color_8 sig_bit; + volatile unsigned short a = 255; + volatile unsigned char *b = (volatile unsigned char *) &a; + #ifdef _undefined_ +@@ -62,13 +64,16 @@ writepng (FILE * file, CONST struct image *image) + png_destroy_write_struct (&png_ptr, (png_infopp) NULL); + return "No memory to create png info structure"; + } +- if (setjmp (png_ptr->jmpbuf)) ++// if (setjmp (png_ptr->jmpbuf)) ++ if (setjmp(png_jmpbuf(png_ptr))) { ++ + { + png_destroy_write_struct (&png_ptr, &info_ptr); + fclose (file); + return strerror (errno); + } + png_init_io (png_ptr, file); ++#ifdef _undefined_ + png_set_filter (png_ptr, 0, + PNG_FILTER_NONE | PNG_FILTER_SUB | PNG_FILTER_PAETH | + PNG_FILTER_UP | PNG_FILTER_AVG); +@@ -82,21 +87,21 @@ writepng (FILE * file, CONST struct image *image) + png_set_compression_window_bits (png_ptr, 15); + png_set_compression_method (png_ptr, 8); + +- info_ptr->width = image->width; ++/* info_ptr->width = image->width; + info_ptr->height = image->height; +- /*info_ptr->gamma=1.0; */ ++ info_ptr->gamma=1.0; + info_ptr->gamma = 0.5; + info_ptr->valid |= PNG_INFO_gAMA | PNG_INFO_pHYs; + info_ptr->x_pixels_per_unit = (png_uint_32) (100 / image->pixelwidth); + info_ptr->y_pixels_per_unit = (png_uint_32) (100 / image->pixelheight); +- +- ++*/ ++#endif + switch (image->palette->type) + { + case C256: + { + int i; +- info_ptr->color_type = PNG_COLOR_TYPE_PALETTE; ++/* info_ptr->color_type = PNG_COLOR_TYPE_PALETTE; + info_ptr->bit_depth = image->bytesperpixel * 8; + info_ptr->palette = palette; + info_ptr->valid |= PNG_INFO_PLTE; +@@ -105,25 +110,51 @@ writepng (FILE * file, CONST struct image *image) + info_ptr->palette[i].green = image->palette->rgb[i][1], + info_ptr->palette[i].blue = image->palette->rgb[i][2], + info_ptr->num_palette = image->palette->end; ++*/ ++ png_set_IHDR(png_ptr, info_ptr, image->width, image->height, ++ image->bytesperpixel * 8, PNG_COLOR_TYPE_PALETTE, ++ PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, ++ PNG_FILTER_TYPE_DEFAULT); ++ for (i = 0; i < image->palette->end; i++) { ++ palette[i].red = image->palette->rgb[i][0]; ++ palette[i].green = image->palette->rgb[i][1]; ++ palette[i].blue = image->palette->rgb[i][2]; ++ } ++ png_set_PLTE(png_ptr, info_ptr, palette, image->palette->end); + } + break; + case SMALLITER: + case LARGEITER: + case GRAYSCALE: ++/* + info_ptr->color_type = PNG_COLOR_TYPE_GRAY; + info_ptr->bit_depth = image->bytesperpixel * 8; ++*/ ++ png_set_IHDR(png_ptr, info_ptr, image->width, image->height, ++ image->bytesperpixel * 8, PNG_COLOR_TYPE_GRAY, ++ PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, ++ PNG_FILTER_TYPE_DEFAULT); + break; + case TRUECOLOR: + case TRUECOLOR24: + case TRUECOLOR16: +- info_ptr->color_type = PNG_COLOR_TYPE_RGB; ++/* info_ptr->color_type = PNG_COLOR_TYPE_RGB; + info_ptr->bit_depth = 8; + info_ptr->sig_bit.red = 8 - image->palette->info.truec.rprec; + info_ptr->sig_bit.green = 8 - image->palette->info.truec.gprec; + info_ptr->sig_bit.blue = 8 - image->palette->info.truec.bprec; ++*/ ++ png_set_IHDR(png_ptr, info_ptr, image->width, image->height, ++ 8, PNG_COLOR_TYPE_RGB, ++ PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, ++ PNG_FILTER_TYPE_DEFAULT); ++ sig_bit.red = 8 - image->palette->info.truec.rprec; ++ sig_bit.green = 8 - image->palette->info.truec.gprec; ++ sig_bit.blue = 8 - image->palette->info.truec.bprec; ++ png_set_sBIT(png_ptr, info_ptr, &sig_bit); + break; + } +- info_ptr->interlace_type = 0; ++// info_ptr->interlace_type = 0; + #ifdef _undefined_ + png_set_text (png_ptr, info_ptr, comments, + sizeof (comments) / sizeof (png_text)); +@@ -133,7 +164,8 @@ writepng (FILE * file, CONST struct image *image) + /*png_set_filler(png_ptr,0,PNG_FILLER_AFTER); */ + png_set_packing (png_ptr); + if (image->palette->type & (TRUECOLOR | TRUECOLOR24 | TRUECOLOR16)) +- png_set_shift (png_ptr, &(info_ptr->sig_bit)); ++// png_set_shift (png_ptr, &(info_ptr->sig_bit)); ++ png_set_shift(png_ptr, &sig_bit); + if (*b == 255) + png_set_swap (png_ptr); + png_set_bgr (png_ptr); +@@ -198,4 +230,5 @@ writepng (FILE * file, CONST struct image *image) + fclose (file); + return NULL; + } ++} + #endif +-- +2.2.2 + + +From 1c66696b54286c72183b8c5db26b1b94f043c117 Mon Sep 17 00:00:00 2001 +From: Sergei Reznikov +Date: Fri, 20 Mar 2015 15:18:04 +0300 +Subject: Fix multiple definition of globaluih link error + + +diff --git a/src/include/ui.h b/src/include/ui.h +index 04a1ca7..d4e5e98 100644 +--- a/src/include/ui.h ++++ b/src/include/ui.h +@@ -119,7 +119,7 @@ extern "C" + CONST struct gui_driver *gui_driver; + }; + +- struct uih_context *globaluih; ++ extern struct uih_context *globaluih; + #ifdef USE_LOCALEPATH + extern char *localepath; + #endif +diff --git a/src/ui/ui.c b/src/ui/ui.c +index f49ec81..4f202fc 100644 +--- a/src/ui/ui.c ++++ b/src/ui/ui.c +@@ -147,7 +147,7 @@ main_loop (void) + char *sffeform = NULL; + char *sffeinit = NULL; + #endif +- ++ struct uih_context *globaluih; + CONST struct params global_params[] = { + {"-delay", P_NUMBER, &delaytime, + "Delay screen updates (milliseconds)"}, +-- +2.2.2 + diff --git a/haiku-apps/xaos/xaos-3.4.recipe b/haiku-apps/xaos/xaos-3.4.recipe new file mode 100644 index 000000000..21165e86d --- /dev/null +++ b/haiku-apps/xaos/xaos-3.4.recipe @@ -0,0 +1,71 @@ +SUMMARY="Real-time interactive fractal zoomer" +DESCRIPTION=" +XaoS is an interactive fractal zoomer. It allows the user to continuously \ +zoom in or out of a fractal in a fluid, continuous motion. This capability \ +makes XaoS great for exploring fractals, and it’s fun! + +If you don’t know what fractals are, don’t worry. \ +XaoS includes many animated tutorials that make learning about fractals fun \ +and easy. These tutorials are also a great introduction to all of XaoS’s \ +features. + +XaoS can display many different fractal types, including Mandelbrot, \ +Barnsley, Newton, Phoenix, and many more. Fractals can be rendered using \ +various coloring methods and planes for an almost endless variety of images. \ +XaoS also supports switching between Julia and Mandelbrot sets for each formula. + +XaoS currently runs on Windows, Mac OS X, Linux, and other Unix-like systems. \ +Older versions are available for DOS, BeoS, and more. Download a copy for your \ +operating system today. + +XaoS is free software, licensed under the GPL. It was originally written by \ +Thomas Marsh and Jan Hubicka, and it is currently maintained by Zoltan Kovacs \ +and J.B. Langston. Countless other improvements have been contributed by \ +volunteers around the world. You can help improve XaoS, too." +HOMEPAGE="http://xaos.sf.net" +SRC_URI="https://github.com/xaos-project/XaoS/archive/release-$portVersion.zip" +CHECKSUM_SHA256="00ae75ee6ecfb8493286330d1ccadc91e8e915a5867387a2c08a0ff72d59bb24" +ARCHITECTURES="x86_gcc2 ?x86 ?x86_64" +REVISION="1" +LICENSE="GNU GPL v2" +COPYRIGHT="2008 GNU XaoS Contributors" + +PROVIDES=" + xaos + app:XaoS = $portVersion + " + +BUILD_PREREQUIRES=" + haiku_devel + cmd:gcc + cmd:libtoolize + cmd:make + cmd:nasm + " +BUILD_REQUIRES=" + devel:libiconv$secondaryArchSuffix + devel:libintl$secondaryArchSuffix + " + +REQUIRES=" + lib:libiconv$secondaryArchSuffix + lib:libintl$secondaryArchSuffix + " + +SOURCE_DIR="XaoS-release-$portVersion" + +PATCHES="xaos-$portVersion.patchset" + +BUILD() +{ + libtoolize --force --copy --install + LDFLAGS="-lintl -liconv" sh configure + make $jobArgs +} + +INSTALL() +{ + mkdir -p $appsDir + cp bin/xaos $appsDir/XaoS + addAppDeskbarSymlink $appsDir/XaoS +}