From 14b56db99efcc651b07b3e4385db15079a153e7c Mon Sep 17 00:00:00 2001 From: Fred Silberberg Date: Fri, 25 Nov 2016 01:15:54 -0500 Subject: [PATCH] Gradle 3.2.1 (#369) Updated to gradle 3.2.1. This also moves all of the task graph listeners for dependency setup to use the gradle model, making it both safer and reducing line count. --- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.jar | Bin 52818 -> 54227 bytes gradle/wrapper/gradle-wrapper.properties | 4 +-- gradlew | 19 +++++++----- hal/build.gradle | 38 +++-------------------- wpilibc/athena.gradle | 27 +++------------- wpilibj/athena.gradle | 10 ++---- 7 files changed, 25 insertions(+), 75 deletions(-) diff --git a/build.gradle b/build.gradle index e5e5db2380..ac2c7e061b 100644 --- a/build.gradle +++ b/build.gradle @@ -62,5 +62,5 @@ apply from: 'cppSettings.gradle' apply from: 'ni-libraries/ni-libraries.gradle' task wrapper(type: Wrapper) { - gradleVersion = '3.0' + gradleVersion = '3.2.1' } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index deedc7fa5e6310eac3148a7dd0b1f069b07364cb..51288f9c2f05faf8d42e1a751a387ca7923882c3 100644 GIT binary patch delta 17093 zcmaL81ymhD(=CbzC%C)2J0!TfySux?A;Bfs!7aGEyGwA_5Zv7@$Rp&t-+%Mpwce~V zYl@y-RlB>ZdwPcI>2&a!LU05HX>bTw5D;i+kPtLjIAO^g;5A`e$HtCuWC(O0)(Ce-AbVgSSRL#2zF+tD^dNLz zBOLhP@o9pWaCFPX|DRb)qtoHlfoOtg&)&$|+2CAV?+@Ac!`N79er~~Fp z{u9;rd#1;In2UW8ZI2|C9cTkdOHY+mUFyR3I1~Ejx2(i%M8-(FfMj3E0nT$-sCK$7 z*j>|jNA^g2Nek|kGy;Od6CCVQd^{{d>_c361cU;w;9zlbkw>|b!nyJE)bEEf+69^4 zd58=p8)F%@tX6pncBN7S=V|;agbxUigxFbKE$)j#np?tCK6zRA44(3D9mM*udk(0;xl~*=@w>yN#1(6`#1;z60)r*J3s7_(R8clxUNY&#Z%0$E z=>?UU=2gF50Xi^lq~@v_{~|hx-Ym4WRKAHZ(E%$O}l4dON#O5 zBjP1c$)T{BU13Iyv~3_g#}4tZ4|m|GaL8Gen^R%M-4LjP&q;Q2ii+ zZH9qRhWzqjfYM^t3c_s{`woSg;}dXVI)$u4wh?PAO;KJ|bvk0?-+)WvJeakiFw|<) z#>7}cCB`IGhP{y^7Wjx`Ww>V=@4VDRvv6G4qFuCyrS05+$VpoX7+ZHGD#QLjq!(M* zt_8Ff9PQ&GX5mka1?Sug0;*NiZl#XePsgh1%jx(E0BqCBiRM<(VJn~&wR^4jNh@t0 zvwl%kaR!Z|q%3ZAE2hZEXFX$5&mJ?XQhu zupJR+)jem*KbuDm70+?n)Vh(|w7M0q zX*`n0@cWa$60V2jQ65pxG1M1PH$~yX!V%pm2}XE=1DHLh40c(aqU0A4jizgGu9qF=F|j z#{2+7vm-D~G}A78T9zuzYX3WJNOkojCk+R2I&PMMvIFk;k2 zegYI*FBN6pxgMCMD(ID6;3Q^_X&-9J`=qW^@a-@CTK_Ggn!wNADauT6BnpNB$*q)kOs>+If-q3;` z@6Y<$|Q#f$_wOo$D3kHy89Keg07P{74k0_rufc+wetY|@$>|&<1 zb=ncQ2K`9#L)$ID`7;EKzR_5P$MSe1JbsonycSe{J&MKMRXCwY13y(6v8`B9QwWTYc=Wj)k(25ExOr0;D}iX=!hNADQ6~|woInYM zB+lb5JOjTE9zwE3ifwmEYw)#DWp)5y^CQU@G&EP_#Yr)yuqY!TmM1r+5?oe5K1Ve$ z91smbT9`BFiIHy5led|wSMg=GeU;#Igp`G0*#sM>j8m^B@k`+{Wt%Y0*AP>?V2hqJ ztsBjqTh%r`s}F0hzg^|OU2R88-shWNN;^6kLlCO^wffWI%ofEvjWNenz@rn;fBUI> z)jb}$(=F^cdQ+1xBzemnGjXcvTicSrXV6AtNH+x+_qbWRmSO(B=I9Dv?quD7!{w21{a?=AH{IL_X zED=Icdd~pmuhSbWsk>8xyxPUr?#L8=Upv8c`hKbc{Onq zM|k<@sw{v^u9D0wXPe7q$YX4B^|K>+vc2l0mpk1+zAonvzvS>uT}V>_l2s`_mTq$m zN(la4I8-g)@+gFmZ3>#d`52<+^pw@x6;zUc#j=87=d-I$-X1EEruj)ez`9cCtH>hQJnTKMh1Up9a%AdPl1jKWKDjwJK zQ$0QlRgW5SlM|7i*2p&lU@*Q!0fnRk$(%_bNyyR)Ygtlk6%@eiK)5ar;C?u+X94{- zJcM8s66PKi&hu0k=dgmQc?d|+@$*On>wbtyJrZkXMzo-ZsbiEMLYNJ8^U13ypnV{x zQti2Y{*u_`I@<`b8@GTgGhW{AAMEk<(p9cxUt3;GU}v){?9LpzK!P_D@jy&;C)u;d>L*#TD@SR73#0um#i6EF>swWPHj6`yv$pX zy0N)myZebh^b!Fx0MLKdKfo^#dw*6wweDEdACUj7eJbJQZkeD!K5%m$zEP6o=r)@!AT_mImnFmMZH*A{ISoq{ZG&Dk-Xu50iQhR=Y(S9W_gPgdo9g6zE<~-}%v=9}9YL zlM3FTa=X%Id6$xzf2!OU`q@NLnr6={pjdE%Zjpt3HzhZBTKa@1p;21&DDSw+W+`)G z#Hf14WmND0*FTHNV^dnP4d-XN$&XGvD(QqQ_~Og`U0}bk)MDdmH<($R4XGAJN#@F)2?fB= zhxLj~9SGbVA3m+#K$TOx^-#F>V!o zFd2&L80(r{o5bJ?d@zL>2<=s+QXBuu6cE2mb2ak>)<~Zd7(_Wfr|Bl>#gp0Z%#%3?N0&nH=BF_j5nctuc;JCu z=-QT(sP35R*_myuKcraBy_L|#kKJg32|sxAt&LJvA1AjUyihT@f_$s#2)m>wa;wjD z--DjbMXXm7zj6!V3$LA;2AC;o)#X45t5kE%`^S3+UM z$ECM-zhcO${H9)#b0rc0cR!evwcxu5H&ruh!ar52syWUt7Ll*te#x;;@>#Nd6h02_ z_rDo~k)H6FN+PvsEY?%uKB=?$30v;SHBijK%5Q*EC|unas#!}04u0gl)oif7>Zxq2 zOzMs?xk{Xf5r9v>tQ1w_9M_sai!gMol&x30-Ik4kDD3SQY~FzaD78b3vh$cuG*cWq zhr9}83iuKr=2ypg?w*YYvl7%wTov2M(x+Hh@L|H$${zyn>$m0hW3Nt+ZdvoBNzW#R=FMyUAu3eUBz7v@B;pw*L z4Bp2yM&oh;o=l={Xfzb%Ea15vmPB8ttUCR;vMYP}gwbpz%OhYtRROsSqu%NRt%?o& zsjQWGx@yBXi?YGt0y8cRVKmE}cnT=664GqgNX}+u;@}nJ!wE-J-$|2y$T|7+J#6_s zlWdW@Mt0_ zLO;?LH?rQB>^dUFzEmO)`HDLQ zM$VzZ!F6Ps`9J3o5Iuj?N37Y8hG3Wj76yAKZa_=>A~_8sxj<3ey?prRc~c9o`~mF! zIdkV#)`bKH0wMqb0>bv^IRj(_g8@EuU;z@8PwY?x(fGmR`%Nt!RjcNuY^{Sz=KY>ghRVNo?|e-ZZ*?P$vQKs_7d%KCs14tsnkLXj#ujc#^7<-S{WHa7#j zJl=u}U`N}M#nx^RnH$o7N#mHWj_oo78yRRfHHK@n6^U)EvfV%weo7&HeB>5p(+4aX zht8QOGttdGE3}>B6F}bt6GEUl9@TUQ@K^ZM5`HjlIdO;isd#CjaB|Q9UB9-jMFX{` ziUq3*=g~+Ts$3#Hcc~T53BGZIe&!N*srSPVOJa3}PdlrpY6ZnBWcs%fJ0+8TFg)&q z&@=yQSG$6RJx8(81_L*D#yJ;8UtoTU8yqi>x(QqtZ1wF7OC$(lX%nzVNA@&WJQ07vX)O*1=8k zmf~QU?=iC;ii9?%AJFc;Fs*f_WZq8*#TvM`_cffecl952#DVhX2D{S8H$l7iTDb| z8U`U}MMV)SB8V|_X+rKGwL3#nZJHe09osEygpyD837+vwjf79E3JMn~g*lKbI z2bHi}Ty(>@#-|3AaFCMcLefVnSf0{BuEZ? zNuigTU~_i9Lcj(stgbnH>!90Jux}3yzr|8PPxuP;R%C4bN?DmZtxLFEH_h+f#KNkU zj?1#*aQo)*Ci4kg?t<_50GmLuQW5$y9?Ei~epV6rY|cHeew!&)*oGATBkcUR15?T# z&mzr)+v0g9;~BBns0`x-?4VPoWLvKOV=VM^5`@i{I)LiwQb|>XZai|~F>V9BS3sii zgEu-uUXqeda-du3qn^E&a)ja?fpREfGo+cX>A2JA)bMEh0X};{9^x-<>JjGNS`%GV zG1DYig-LO|5M-NN9S-Vd>#(tFo2`yqmjNNyd~fZev}<#ztGQ^jydU^#(LJ`=B(?VD z;y%Du2LS)uhoH8Z0?ZOdcbQrR0=EgC25U65Ss0c)n{>7iZS0)icGTvX%(gY59<8bA zdquR+{0lee^K>hB4@$mgxLPt$n06+W2D}ao_K9R>n!W1HL63F;WrUeLrn}_RHO!^^ zSbqJv3%(KPshcs~58-<$QQz^6ULYh|tBmdXM*wMtQrBAZjiESj-d#gK?NW9=nLN%g zX!kF;@I_Z1VRhMMJm>2Vx?!L8BI5Hpc1GP9Bt;4O1azbdAKX(AsA&9@%6VMxx5 zitrE|Y&^GBbByrT8gw_|55;u#!CafU@Wu8cs!2K*M)*8^!NNe@*ANdsv2bDR`HcD$ zuLwB0$-6?>yfDY{tJuQ4&yUjIs0mhgdBW+Oa)hkqDQPM(lpADkE7@p?S_}Wa_GMO& z-)6ahQBHz}V*X})=9jgHZZ9s6U-V~-``oC{8xy1JO;>@cG+_*3Ro(8z_Y^NVTa_Nt zgFiPf{cZeyDbZ1uYFQUo`3)JNnDm-t^1%Y!SGW+ncll?|!NX~ft$vCvbNGwu>ygpp z8+cA#M`MA}lEn<%6fqk&OgBy)_BHlamNWh;D5OJ~yBF*YJPRfX@}55N(z13wtQ+pV znTB+D@Ek063UwxTJWZo%b?fJh#(H5xHQv55OVRb9{q1m?_}egjE^NCrO=G&Y8~Dzv#hN}{2sTDKeZlf4H>mSplcmXil_jO-J-jv@Ba7 zjLE0k3$albk-k;mAEQ0c!USmnFvY#{spXVJjuG2@%qRVe1&vn!GR(!N5cgS?R%Mm_ z(oIAfRY&uCr;H|f(Mm&Kh+>QVlZr5&GVT@rk8L{-d>^IzD>gF1F{Ah|uNi_kW3WOS zA(}%3l^jpWMU>&Ux5m7Y2YeTwe(fTqa0$8v6> zNf~@r_oi4+yiiC-W9P+Doi*Ora9zYj;yGVDYwlZ8S-BIE?@lJuWS%NSAq7J@d)owJ zh`NReYkB=^)r7BIA76qD>j^&0Qs_yscxWJOWR)=#V4j+Fn!;=r_^No3J5Sk^idfu zfLJALOY8fP40{ex?Vn(~|IPT%6H)TaODpN@Z6Q?)$;trv=Y1YX3A*wAUcZeV1BUqL zz5dtZ8Z{OI2*@fnkXV%xkf8zNgSO!Nl3CZviUUQA@sVz^YHpLS~zZ?h^k#-N&^ zPQs*nF;b1x^1{lTpB3(h-E>RE44&;T3QOEp+i4C<{5=cX1-;mhgLX$TzdI^9WH)y$ zoUcDkQ#`ExoFkYH-c>hPYuf^}p8-Yz_mk0U&w3!d{qbM8GOcS2!3sAmj^}^w-nj5fJU|DqkMtEE0#Saq3 z^@h0m^mU0}FmwB?bWxs5f`9KR+&NF7uzDzqn!vv2>&V)O;OQ_S3TOO~{Q@uU>eJt) ze!&U#f}uYX8yC?D1PFC7xOY@+;7$kH4{wNaKegj^kcZfhZ16hWSFmjnx;*86A@-3U zymNgL=tV*}?pNk{k^J2AGqZEi3%OvGT#3n>{la;jIw3+F$$; zTm2%kdD@Y?)$2Z)+SE1tiSp<{ZT@=|i)X8%5LH!{!OV$9-lAn*f(D zvr3oo#Dv-jz>{{11bf|}E4u5%JmT&q0}b(*PFSP<;l4dO#_85Qia9|_p=1k96ebkv;<9r!2N*}?qrMc!- zs}?-4{c9AZIKaeu+`GZsVt~Ojxk`SwurQwzSMF{))5gzkG_j#_xOqI1t$bogIy*Aj zIR0?k7w~1ihMCm!bJAT{tL>Pgmp{nVA_BV>wvr|pGrsiH#?5r+$EA^z@E-p*31-N8hG z3fr&6w|^lWLb{Dao?xb|5dZw{8oDzlgjpC=bQ7tlyk2mraWuayE(k z6z|;_)%2X0CMjLws;aV6r9rl$D~c7zOhS27%B7NmrSf50bL?1Rhc(eYI?1r9qJz`w ztju7f#ALxa-lN;mGr{2-7rF&zK`a$BDOAMnLL{ zZc?!7Qk7ub#3c2Sj|)~twbTuvMHCIGn>>!~)OH_#%JBLBmVKh|8$sg?KcSkb&T>Uh$kQf-Op~>%Oq5q7sOyWu=d<<3H_Yho_|` z7<$nKJbR0@=tkBcb#> zaa#7EIZw&Q)XjVnP1r=MTijv1vHn!29_nQkB~@KbHpgMK!v2gv&!;|t1p?)CWcRsA z`kIPjWjlx*r#qwLO&to3lySL!MD329i9MTnEgpe(A+aP5%;tag++h{GRFX? ztk-x&oTnM{DA~HJ&z2}--t$uF{ihSr+9<-C%jR@p+=85yG;`BXf;23pY%fl073NCg z{Is%{dRN4fXCn87M=&Q0; zJBEd)nibW*z>vlnL@wR!E`h3@|I#b`U9|SZff`#f9!_2i8@HTjEt_F`>sWCJ8em)K z?cQgt12AgvsEZ3y5$b5F@Xg0`r}i^lj!<7kn9EozDuWmqD_Sn_Q)T#}T6q>1^^md# zuA^x4@=vJQTL46El+I>!4ygG3U=1Q$J~{Por4|T zi&w(5Hp$Q|4QzXu`TRuXU73Z6x!;L;t~L1ABlb9+@;8Y&->rK9BDSZr1Jm zn$3c`>UaM8BQ(lNwI{DkZi>~{i$*iP-uRg_BOWFBbkCREGM1U20D(?d*w6`9;OHY8*14%}Wk4|xdZ z&Dp-7Iqh56Y<2FR0tRj?%s;NHolBCB?KL42N2N)&2eIT>6tG)6;LmS)ZF^4Z#Rpt9 zWxd>41WYr|%4khynN0_ajXyLi)EM|%OV)GXwLqM}rZNfxi|sGU zmGj1n)&5YQrg9)WrL2$Vma~%VEUEQJhfJpY$;*RT+!9T}ssYg~9QoCYf% z40=@q<>V?d0EW&0zuNX>isZ}rW2jnJutb)>guKJeZQ|WNzt@Z%DN5u%q>ap}m6Zpo z7=xiQ=mOtYSNV z&K0!(+z;RXc9aUc__8QZpk8PTc^nE+DG&_-XK~ij1JDP>kKTABsC{Xsm>}JCmcN`9 ze4^G{57O^Kzo8R)bQ*wkU{!C7F~T(bHD<9CV7n-t}Vc)*T9I1Ks5gLhPb+6i9LSSyZ?3E3vM++hc@jVW)HGG;8|MH}%6dT4YX@}5@g|Ri+ zr<3ioUC6fWFcu%;eg}0`1AB6K#w};X{v(MYM!;-bIHyvxOjE!KK3tP&)6p|DA9hE5 zKnv{R4OO_^iY%vF@SV=U>Nc2H&u`epwbgoma32hZ7)SM?(6K<64X7g`zmP7r7;hv$_5AysImOdUYm#6DA4Jc85o`?{K96JmOL5tc4I z@9!pfdmJ!}h2-&xFMm*J<1Zp=0cNfVgagDcydkpF>M!oN;T+7tUj(>M@C@ls`6a|V zVE{igzj|JXrw@T$J7BMdpvU{zGaJ2P*{fCmIJ;N+<)d2cbO!(3;1?cjv@_mm+gJM0 zd0F!4+NTry18Reu()|lcEJ8|J=7sPq6f`6MH28~p_%k^uxBdm*k%42CsUHhiJjsB> zn)Ec8&_Su4r*e-rlldfSWwGg$b7{*-1FqsoUh;2n-**>Lq1UJhyU(#7po7k=rV_ld zs=kGp_(uznNHS8!WlJ!{&XQz{D4j`=X$xiG)m8M7uRQm~Rr%77dEsvZ)&o(gR?8RCek=Q?jP;rsxns2w}}5 zhnXPp;(SDqj9L5`Q-$^Mg2EZ7lS01QER1rbMyRHBBKFI+AK%InJptldxb3g{2DQ@i z`uc|X+xpw~j{LK?v+cFn-Hb(&0gR&4=Wf-W`{*_O%tv4E;Wu#N;}qBnlfd&aP%L(U zQ8tt93xJR9VY=v&n?b;oPj3T;V6!n3LBSu+#3qL=2sE<~m`@FRj>dpESZwi4D;4dN{>H?8^U{QMelEGd-X)La{D*t6)hq{V z|M_!|&-U?q6qY4mZ7GdZKG{9CES7J@7Y!iw=c2IoND8Irwi^-8ZNi@zVhf}U=>=?8 z02L16{tb?;-+TS$pI4|a-F6%~adYPK{Z^?bLZMMrxiGTiG*D#uzI)%ZSjq&Uf-Vnz zo7P}qE3Q`gnJa78UcUO>=61?8PiDHPpMAjgO18vEL)vyH!of%A|%fQ ziHoDYU~9G7l$%}bx)ofYn#RFVZoO390kGS`Dd^diuGiI)6^U@2tJ5k#KGGUztN279 zt)Vr#TqYVfxno74PqsRjpC&Vtwq>R+n^YV`>LpuQd~>~TCR@uNn(*S##)%PTZCIdb zhnj|?wAGU@UfXg+WK_pb62I3(ukoG#Lqx%WFMg~^&tiTh2Z@)icu1y1*_=@-JwW># zZqUFM0|@sTEUB3WZ3+X!Ger9*O(1H7ZbQnDHX+iH3~K7P_(`LqT;t)%1e^KuVRK(oZoKqd;s<=q%vFhm(0IPmg=%$l*4NZ>)fp2lIUz@#ZoB5 zL~er11cNFC-LLlT3i>JQE?1aKyEKu<5rR{Ytu)N%%sS@wW9=7FxTd^KG=(-My6Lfw zCBzI?>Avj6N98H)V(@3$wMT~`Jh68JGdLd7sf3IQSoyQv$z*#ED>dQhzyP5LVo8}* zCZ>g4?Nq(F)bqeP0riC(EYsxfh0Nn)w4yy5?H~*5vyeM>Y2#sVWpS{AV&gn5(@L;! z*t#vMm~i&x`Zua|XsPh#``-NW8XOP2HBN2Dzl zwUOT=-;}HsZoEjZyt~=QPb6p%e?tDCq(Hxo7-FN^o@zNR8e@ZN%V{qXZAdgI09>$g z>1U(0JT%s2N-cz6S6vPWIxu&>wI2 z1)@h$mcxIvoiE)oQ>mr%{>u3k4~mEX|jwkMW8dwwOi745JL&>PQNPysE4$~s@rZ;fbY5AOGBXU{Ly25TRn{>n9 zs!dcTOl)^9T{dY6M))D8VDK+8U&`?MRCEth(^m4Gs-UbrZP);wBu35tX4)>NPY+iq zsk)72*Dr3v#Z-m%9c*xUnp~q+U#gte@Mp?&?pkFOffRKL(B)jNLQA6Zsq;CgGdzZN zk~3O#btQ5^^Ya`1(k2&>l-2htS5|UsIfe|zH<2?2gnJx=k*3YQs@PAVBaQY zZfH&lj?h-iFI}HJ6Ds%kVF7}lI*Kk4d~%2NH*u@^3H6Jc;Q|+vR9|2L=rktQp%!+! z%IZNRq8pXPZAqO`MdO(<=%qwL6SO|SVa_XhnziA^VjlqS+h_buJyt58!r`@b`w}0_ zGvx=n4)IiP)ed>KCjFfc`?kkmy%C&b#)-&ttV^i}aaT4$LQ6qH7J8CKdQ^A|sM#7T zu-Q*_Y@`^|M$gG+Mz!Ch!AcR?3*1&?(2-n8B0{b|*-Xd2Onx10d$F3u>U~yR3+RVJg2LRQVZwAic{0V z4)={9bx+G~0`4Z+k*@AhxXPvT+$lyaK}gHh3eO4_^p-L60aExbW_L1DZgipf0)F<$}!h@tI z?$-&xe&N?`fmUQ`(X6gL>f`Z2S_iQ%23_wxHy80ODj~j+L^{O>%T-d9OvMMP&!y*g zDlZ-W)gCrw`BcGLu5i%O3r^XY8%7MX*qqkFD88Q+?zt1b?|~l_;VbuVjGooV^BU81 zb}@#lFiKusLc^Js@FnPP@KaIs5u!*}78HI1l+CO7$rg+~Zh!q&-1aFmGVnw}K3zc2 zX6}fzCGlf=&^8(!GfW}rW~3Z$K)cpxoP~^0)H)+Nb6RQ)bi79nPw=wb4&mhy?5o5M z;T0~;Yv5X+Mx`=T$rHw_%1+}0{%lr7eY8~P-goLJ=Y%zMm#435(%N1!-wG}nH;i8r z00!m*7UpHRifyuEazjhPn<01o^ow6#L zD1Rm|m-6+M+_*4OR-mtRvVH#oynZ5D0!Q=aSjd)C(wyxe;LAA* z@5q6Zm*w-~L(1=j;jN=Xj$iiuGft6&nybRpq*GWY)efJoU6(DFKJ`Urci5JB>)cQ~ z0cB3fQ3rOIvOh538b?O9`aYUUbcZRbOdoGcoTTSv>{nXL_mN6UCwbsBOWx+P_!IIk zlGIGR9ube7Yr4frbB<1t>LWL+1Ezn&|Llz#yf7{7;A>7o7Wlb9U~0^ubNNj~xWym< zS_^BO@44?z*FX^@Y&T;Kpr+mgWhiq zXQgvV{VIrPZ<~ZGHys1h5F<5sbaT_v*t-bjUr2X3b9o!tv+S|gkK}l1CxF&0^uoYV zW=^R%MpjIYIR5!UDb)g2xnZ)A87^lq38lsr1zW4Jrw~$WgXRqI)U9@jbSk!BPm>A9 zo$RcylfUO(2`JN3k6Wt)xBM1pa||pSV8rx>(3%m6@>=TqmYa$>#jdGXSV4eH?`NDWkqY8&Xjq#I3#6u7J3Fiz;sNJM4-j6UgL_aPq#P;XGPeeH&Je(b$0S+0wg|%B zeDWI>wY$Z1(*B6ZZQ75%+cb#;?3cYj!G=N;za`H&Y!!L^UFcC<*3Uz-!qRRdJm1e7!LH^s$IDyIN?67kaJQws+a3NVvKE!ej=2DaS4gc^lw4<@e=TTp9vC*dEV zR(-Bz%WjQ!bTtC5N^+4nvl;zkk6;T4ve%c1Q|Hx~C1$kwq}x&9_Nf83cCno1gkwdp zyNHvK`Ku&nx`QuD*rPXSfAwb2}dos)&t9EA+k^W$T8Z2 zqJ#7{X!oQZ5q&Z3hB?lAuO(oa(LXvz8BPR$eSJ^ zgSF5`8P%Z_o9J6LSzTA{!IX?=qxth`g0M_c5Y<9Xo`L~%MSoe{+E=xum6$NRHaU7*Bv5B$215o~8_&V1=<9Jyu-C8B2tGgYS|Ec| z8%S>m^<%W>)Q?3(iI&?otCrh#WT~qZkNL)9z-1q@d%XB|LicAiuC!aZCf<#$!3V0a4E!CWDdDcj@fxMLIi_8gDJU!EzvLp$i)@R%%!(Ik*&3mz92kR2!ksYZAHQ~hYWeXNCkU>g z){%rX9FIfBtySXPj?ty9%PJh1-S1-1tlrDyi;KXlkG6Rw|ed#y?qJ`pr+XTOpX z9olS%3k$2Ps3|r%#f)o?&G65rEI~30U9F91>eu;^w&8vH+fmbeSY@$&~Aix(BpGM;nXF z=U>6lKP2>wA7aQdI3q+mXyyidLc=KJu8G$(Npe=e%`&ox8m3n0Flqt{GY>C`_3`| z4Z-%4+8lMx+bp#8j&}V?U4B{{QKT+Ixp@c*-p-JjQDC1Z zrqQx&X%t9tWE`pTJWAOzSF3wz#O+3ueF*&HzmA!ryYZ=PWmn#mrE7-CuGcx?>LsvZ zg6RirCm?Ji4&UIdoWyE$&qDSJab3IutC`RM#Auk=7y-I4X6@3Q{)=141aXu68qQFo zuhQDvrr6H(x%x}H!?C3=vlZ^dT#_G;@pI&s&RXzHT&2A@$oO$Rn&S;4GZ0ru8@jRi8UU$;;78R5ycg&tz)W*J!WIDR17+i?|EDh!Ln4e;;fdiivnaOG z?e5d}!!)gN`@aCk6ClEbIb7T=p}#TfUJ*@S!I( z7!fXe|FrQQyal1?zn*aWG#09{UfAj1LTW_1>v66!Ok0)x5F(BIUDlyxjA>gY8vu}H zR@q-u;!q^Yu_;JthwOWmdX0sR#o;qmt01FrpDtnTCjQp{3Zpy7aGSBR+1V{HzPYS| za=x?^^4p5?hc9-yPn25L)#vL@JD0W(^0DKuQ)|j*dPqkSB^SM;MIrnlI@H{v5ub&J zkfg@#PD3&>eyzw4ikjm8SHxwgEeFx z*tonWVPq0_d-Bd?}z8TaXF>BO>lLh3}~0EB88QX`R64JkcV0XTF^LmYU!_SGE5ED zfNJZYbxvddhmS&eHX?AVJr_ggzIyx{MG zLSzxjyO3>32>mWl)lY)HyAx}GzT*c60U3q?0pWdjH#de;o7pV>S2Lm*{I75enEUXq ziEs4!w>H~Vf`8roZurZsmeBOz@2%Lf^S=U|1@JGYUPr>eb_(=D|5jwbO#%FEXD*Pp zo$cQpxE4 z%KwwAH1}qm{vRb`>USj~Rvh5cf9hh;fen%OMVsNj9Md{b-(BZ>GPS7viIle?L->!C z&y4S2oNlal;Q!=3fq)SI1Dt05k5y>kWbfZLe*dcf*2TxvARt8lfT=&fgB4^x0LKZT zfIqtbcJ)8A*FOq@NR< zkf2s?NIamN2mCwR|7U9Zuj@Y{zF_|bmUtgD??8Ri=z=%E{@eNQ2n%w0_pi~9O7sVq zZlg0%2nqsH@HT^S{bSM5`9DOVfSy18*5KsFA6|B@z+WMJ??Lsao(Q9V3WeO?$yQb( z{rAS&d)0D0fE#)Ie+u9IZ5z!|ZoKuF-3Jhm&;R(-_I>w<=}G{c9Q+Fo%CEyTM*#sD zp!we;I>rADOag=+MtQgT8Pno*@Xcb#TeR{2V^swBZgs{I?~m2@)*XK*Y?cN*8Wn%n z{$~dNN1Hq2tzY-f|Mru%hh1{~8=pbs|4n=@ z_YFt_T>SC=I04%A|7pDP(sz>bM!3N6AAem5PhspHzV(UE+bqoYkE_ZG;FnRUcjENu z7GFQS@o9Yvf0lnhS2gbz=^K&%+n8--vMjN0;D9&s|F)4-{X4j07#^r=`tiRp)X-Js zocyLx@;0abtH9Cp9|b7jP#MO5J?xVrT#CQNlJuJr^FMT`Ti+D$fIb7H?>&I<9^aj9 z|F!bl@qgUL{J2i!d$XYY#`9k*8=Y^Vgbh6Fqj delta 15514 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 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c16481e0b7..de7cd3de45 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Mon Aug 22 20:26:07 PDT 2016 +#Thu Nov 24 12:34:01 EST 2016 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-3.2.1-bin.zip diff --git a/gradlew b/gradlew index 9aa616c273..4453ccea33 100755 --- a/gradlew +++ b/gradlew @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh ############################################################################## ## @@ -154,16 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save ( ) { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [[ "$(uname)" == "Darwin" ]] && [[ "$HOME" == "$PWD" ]]; then +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then cd "$(dirname "$0")" fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/hal/build.gradle b/hal/build.gradle index 19e46ff589..dbe93510ec 100644 --- a/hal/build.gradle +++ b/hal/build.gradle @@ -33,26 +33,10 @@ model { } } } - -// HALSim(NativeLibrarySpec) { -// binaries.all { -// if (toolChain in Gcc){ -// cppCompiler.args "-std=c++1y" -// } -// } -// -// sources { -// cpp { -// source { -// srcDirs = ["lib/sim", "lib/shared"] -// includes = ["**/*.cpp"] -// } -// exportedHeaders { -// srcDirs = ["include", "lib/sim", "lib/shared"] -// } -// } -// } -// } + } + tasks { tasks -> + tasks.halZip.dependsOn tasks.HALAthenaSharedLibrary + tasks.athenaRuntimeZip.dependsOn tasks.HALAthenaSharedLibrary } } @@ -96,13 +80,6 @@ task halZip(type: Zip) { exclude 'genlinks.bat' exclude 'libwpi.so' } - - // Add the hal static and shared libraries as a dependency - project(':hal').tasks.whenTaskAdded { task -> - if (task.name.toLowerCase() == 'halathenastaticlibrary' || task.name.toLowerCase() == 'halathenasharedlibrary') { - halZip.dependsOn task - } - } } task athenaRuntimeZip(type: Zip) { @@ -155,13 +132,6 @@ task athenaRuntimeZip(type: Zip) { from (file(wpiUtilSharedLibDebug)) { into 'lib' } - - // Add the hal static and shared libraries as a dependency - project(':hal').tasks.whenTaskAdded { task -> - if (task.name.toLowerCase() == 'halathenastaticlibrary' || task.name.toLowerCase() == 'halathenasharedlibrary') { - athenaRuntimeZip.dependsOn task - } - } } diff --git a/wpilibc/athena.gradle b/wpilibc/athena.gradle index c0269ec637..78df122a3d 100644 --- a/wpilibc/athena.gradle +++ b/wpilibc/athena.gradle @@ -12,6 +12,7 @@ model { targetPlatform 'arm' binaries.all { tasks.withType(CppCompile) { + dependsOn generateCppVersion cppCompiler.args "-DNAMESPACED_WPILIB" addNiLibraryLinks(linker, targetPlatform) addNetworkTablesLibraryLinks(it, linker, targetPlatform) @@ -33,6 +34,9 @@ model { } } } + tasks { tasks -> + tasks.wpilibcZip.dependsOn tasks.wpilibcSharedLibrary + } } task wpilibcZip(type: Zip) { @@ -71,29 +75,6 @@ task wpilibcZip(type: Zip) { } } -// Add the dependency on the wpilib_nonsharedStaticLibrary task to the wpilibc task. Because of the gradle lifecycle, -// this cannot be done purely with dependsOn in the task, as the static library task doesn't exist yet. Same goes for -// the networkTablesStaticLibrary task and the two HAL tasks below -tasks.whenTaskAdded { task -> - if (task.name.toLowerCase() == 'wpilibcsharedlibrary') { - wpilibcZip.dependsOn task - } -} - -// Add the hal static and shared libraries as a dependency -project(':hal').tasks.whenTaskAdded { task -> - if (task.name.toLowerCase() == 'halathenastaticlibrary' || task.name.toLowerCase() == 'halathenasharedlibrary') { - wpilibcZip.dependsOn task - } -} - -// Add the generate version file task as a dependency -tasks.whenTaskAdded { task -> - if (task.name.toLowerCase().startsWith('compilewpilib')) { - task.dependsOn generateCppVersion - } -} - if (checkDoxygen()) { def ntSourcesDependency = project.dependencies.create('edu.wpi.first.wpilib.networktables.cpp:NetworkTables:+:sources@zip') diff --git a/wpilibj/athena.gradle b/wpilibj/athena.gradle index 488c41de8a..4510e042d2 100644 --- a/wpilibj/athena.gradle +++ b/wpilibj/athena.gradle @@ -58,6 +58,9 @@ model { } } } + tasks { + it.wpilibjNativeLibraries.dependsOn it.wpilibJavaJNISharedLibrary + } } // Maven publishing configuration @@ -95,13 +98,6 @@ jar { from sourceSets.shared.output } -tasks.whenTaskAdded { task -> - if (task.name == 'wpilibJavaJNISharedLibrary') { - jar.dependsOn task - wpilibjNativeLibraries.dependsOn task - } -} - task wpilibjSources(type: Jar, dependsOn: classes) { description = 'Creates the sources jar for the maven publishing routine' group = 'WPILib'