From 847a638e037ea4cc5b36e2ae2808acb1f2a0c2b0 Mon Sep 17 00:00:00 2001 From: Chris Recoskie Date: Wed, 23 Nov 2005 19:19:08 +0000 Subject: [PATCH] crecoski Nov 23, 2005 - MBS support for spaces in resource names --- .../resources/oldTypeProjects/1.2/test12.zip | Bin 3574 -> 3229 bytes .../resources/oldTypeProjects/2.0/test20.zip | Bin 3777 -> 3791 bytes .../resources/oldTypeProjects/2.1/test21.zip | Bin 4261 -> 4546 bytes .../oldTypeProjects/2.1CPP/Test21CXX.zip | Bin 4195 -> 4579 bytes .../test21Projects/linkedLib/linkedLib.zip | Bin 3039 -> 2711 bytes .../multiResConfig/testResCfg.zip | Bin 7104 -> 6431 bytes .../singleFileExe/testSingleExe.zip | Bin 3168 -> 3152 bytes .../test21Projects/twoFileSO/testDoubleSO.zip | Bin 3434 -> 3435 bytes .../CDTFortranTest1/CDTFortranTest1.zip | Bin 3622 -> 3653 bytes .../CDTFortranTest2/CDTFortranTest2.zip | Bin 18017 -> 18677 bytes .../test30Projects/TestATO/TestATO.zip | Bin 3325 -> 3377 bytes .../copyandDeploy/copyandDeploy.zip | Bin 4200 -> 3998 bytes .../test30Projects/deleteFile/deleteFile.zip | Bin 3869 -> 3425 bytes .../test30Projects/linkedLib/linkedLib.zip | Bin 3057 -> 2715 bytes .../multiResConfig/multiResConfig.zip | Bin 7073 -> 6406 bytes .../preAndPostBuildSteps.zip | Bin 4268 -> 3383 bytes .../rcbsBasicTest/rcbsBasicTest.zip | Bin 3484 -> 3468 bytes .../singleFileExe/singleFileExe.zip | Bin 3651 -> 3160 bytes .../test with spaces/test with spaces.zip | Bin 0 -> 4117 bytes .../test30Projects/test30_1/test30_1.zip | Bin 4375 -> 4379 bytes .../test30Projects/test30_2/test30_2.zip | Bin 3522 -> 3595 bytes .../testFileWithNoExtension.zip | Bin 3465 -> 3436 bytes .../testMacroSupportInBuildDefinitions.zip | Bin 2917 -> 2917 bytes .../test30Projects/twoFileSO/twoFileSO.zip | Bin 3401 -> 3399 bytes .../ManagedCommandLineGeneratorTest.java | 8 +- .../tests/ManagedProject30MakefileTests.java | 17 +- .../internal/core/ManagedBuildInfo.java | 35 +- .../core/ManagedCommandLineGenerator.java | 35 +- .../IManagedBuilderMakefileGenerator.java | 2 +- .../gnu/DefaultGCCDependencyCalculator.java | 124 +++-- .../gnu/GnuLinkOutputNameProvider.java | 27 +- .../makegen/gnu/GnuMakefileGenerator.java | 433 ++++++++++++------ .../makegen/gnu/ManagedBuildGnuToolInfo.java | 58 ++- 33 files changed, 547 insertions(+), 192 deletions(-) create mode 100644 build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test with spaces/test with spaces.zip diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/1.2/test12.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/1.2/test12.zip index 0aded75cb7891a1996635330adb16dae358d5e7f..1da3f7f9c7d3ef74fb2cd0475f814fd2c18fd87f 100644 GIT binary patch literal 3229 zcmaKvc|6qlAIHDr2;;2AxpF4gj7Cw)=8Va0FhikSGj67tA(1m8g^;BsM_Na6v=~SD z8KsP)LzLWhWy&pfB**+_YJb0-+1>i%Gmq~d-+4aX$LsTcy}z~=oLmq90C<6|NQ9=q z;pEu?5CD*P0Dun=1vEUph#n!n0bVEvK7cdeHpY;7P+?p^-|3BrL6nuv?{G+q;)*P^ zVA8gT>ELL4@E~d&`X0v7RLAmd=AvM4BJW(Uk-4NyzU8Njr zb2f*7B`Sq^mapFK%>UfywCq?BD=i~y(+|y+4mCd-=njicoSmyPl~N2Y6}E4vbte3oj)nV>yUZv6kNBfc`I7D;7zH%f}ZXsxpSF%g|75boT%zh+#)xz_N2|6 zc2uHau#4W=wt$%^NF!8^=+$ebASN_ncs;`GK;Pa}kS*wrqO%oi=-y`)B_G5?1%9r{;MJ)Z;-(qaDgjJaZ9%04X<(&pOFp7m*KXug{1Qi4MeYy-i8Ke zZs8wh)|96<&nVQkRXOntoJmxjNYeI>8J4_;>8{RxhL^8j5p3e|d4Aulsn{;2 zD&SQduR5~An>W?X@<$Qq&G>Onq1ho}ZJS~>^5|L8A%mBM88f}8ulRYp)CXO(Y1#>X314I1Z z%QPjuFNi}PlJMr|PeNE)Tr)n_)8mKiu{u5AY!L79cCMU~v~z9}ePx=9IuqN+c-$W9 zkM%~syol)|ok_=NBRJ72iVcG+)S4lOhv7#sm9^gS%U5Oc{EX*Qi5&uOoOssU>#V^Ay2m64foMOz ze^1JcICNf2ZE?~%R5j(` o|^|k~7vPaU3W6-hIu&$fN2Injnn?4M-*IGbGHuH1a zsMhtpt5bP*&J{#$Wz(5e0W<0V0JUh`;V%z={xBtAgbDKW33SK%6Apfn00c;1|lbTuF~OI zFpznXU)rfG56|He{BK>McV`@6^KQYd^Zl5s{m~Osig72+gi(!9-PO?X+@ptcTNkLu z4?Ah0vwM^C%r=yNEHruq#jC_W=0!{0B*nN4U5Jk&M7`ll=*B$SedoO~#d>H3tQ3$t zde(4D(vq)8by$~@wTB3zCE3nBnRYVn6rhNUY8MH~Ib`=r$sdDXZZE%k=Sr#%&gf`M zYWFLxAupGlQq9}j9iub@q{^1y&S-VzZqeRtRCq0a+&Y;{pUag;RJ^kSmT^Da=PJR@ zRhzV{MCbjJPd6Jk}$v?RGt2^O(P?q7KSkY78D^k1n-IYW>A$kdcc?AA|~q~x_k26 zXHbHM7WQR-f1#)g}O(u$@Tz^XZHGBpSVQ#E%Lzq{PIFI4eFKP9n)%xk&He zLj~4cE|q}CIdtq7bW`qq77`q#FIT6g<9#~ITPyL=ZkGf?T2OxKY6YT6-~J~(WV9iE zrxf+e_3GrT>tgFVO*Qq)s|l^hzQVv)dtp|`zg}7J)9qM?5we=yH=p`v7 zPnV|#R=cl5XT#Oa1MAh}&_g+Ayc?CAz%RPvJ*##?x5s1c;G`6CaSa$^96he%C!)5X z&4KJw3f})#<@9rdr*8YKDwokZ_V@i4G|fK_&Mx&3cH-W0L}x&Cg@+R@NwDLUrMZdw z4vP#tYPe95Rx>;GY{XSw{Zk|QiLYc=;LDS;622qh{NlQUf=%SB50rj1QI^yKWdz`` z`z}ta+`?+{Y~BjRno?fc^(5aIpa0z4NX^+gwLW^VZCRZ_7^NQj_*USUHtbDPB$84V z)*Sz-?>UdW{E-w|n@W9IJ4_^g%F73*w5Td&8@<+YGZ zd+S}9?F6goGOsW2KZP7@-OYp;TIQ@%1eVxP_ zQ3y@75}J`TL$=Jr^d};QK-BQW;l5m-F2-KQIzWAch;o7MzCkLg5rSYoJcby850ZoH z3W6gA!L}A44sp(JZGD0aJOD7{0kp?5pICN4?yox_Dhy!UD0T+>rohS&Vc02?@qah{ z4u#!k~8LeJpya)jQ1%)N?ApigX literal 3574 zcmZ`*2|QHm8$L3^*t$}r?385)QCYf;%9eFzY$5w##1J!Nne3_?q7ia+h5kfY8jP%= zn+y%gmc--=S+XQ_Bkq~pn&I!x?{{YAobx{K_r1&aypOpND?|VQ01jXkudi}&tPwW= z-a&WJp8$Z8pTDmc+7*|OOvUby5Qy!|_`>VH6jkjX>FTmSZLs`TzyZsl*#Jq;yW!|0 zM7^&vbDZ`~gWaj-t`Ch5)O99^X8vvgJ!Xb6rl2j=LaRFE#K=O7}aw_#y=!NvJpl4 zJ0z2A#`$%z`uYu;()6^h%bvcctQo4~hn?<~|hqbNP7uUR#ymwOtAHZtsYwFca9Q;i96+ba$Z4qc0z{en&4KH;tndmQ;x_+- z=r~yDRNqp=U6fpn#kBkD%y5&7ZVyTJpY;`s(sex<#yuyv6tU>|(cS|dqlOVCP_@5e zNp6dET=wIWqSx<48FnMdLj#GC@0N)YHFxtuTjS<55+&-ZB4yG-yII|gg5EudoXZLm zfC(ZxR@V1?gJpR>dXbna@#MIwaR>^jY9U6D(uYPG$3Ye*Mn!9_+ef%=- z!l3PiVGqiWV%^eq7-3*SfgvD;d8+S5{~G-?kAqs3lGs#EN1u=W>)V}Lco@LgfLtWU zk@AysW>w(gwO|)+*+76V-rp5X-#}542{c-HSL`y&tnxGb33xVFILQ-(>4Yjlb13CI zyW#wHwFK0~9Sf(#9}k6v6@t5#7uI5>CYy62@~2gzj2rL6?j{9} zlaCcgK%|R|nmru^gKZmzIj~LX`p3+kKkLbDdQu>tg`|mVtalZvwp!^bWTY-1uj<6l zwZ+yWI-K&X3=-bTvx{N0l)YXZNV~+%O?=cT$)RT7*88kCTW{I+wp)JK#n7Y{JiMO4 zA#Pi^hEBFfv^Uy00L^sLl>+ruD9e`7E_4C7EapFGC7_6*ZC=Zm= zAC1HNW5t!Vc%TFxC?ltDfjZS(KOjC1%%>JB0MJX##8m-!7dMPQJ*CL=;IS4U(2sSz zH1*WMpw7zDl!sXBqq3YI?;eiLF(4_r8|jG+HoXp~-74Evou+cXK|Cv9rtbN8h+4=X z(L*XMzA;eSvvDBsxfeQRM90vg+LEmp7SCgjymIW`;iC8rIG5(`*!wwn) z5^AjqkPCJ@g_g-DX)~#u3akXAK z_4&lBhQ-melekBRrUA$EzPy$vt5WJvx7H&6nii3WHhwi~jXc=VXRkJQQK14QX;XPx zkRX0rygU zbPjp{D@vGl)$Uy$4ADL=>(fVU7tvME_9pNy!E4xdJ6Yz}j#s!8sp36TXB($4>E1z6 z!&@$foW*2vqtYeTAFvTx{E;pD>da+@O57h`GMv5;Cs$ed`E7(xL;ZSydq&VasZZsK z*&9z<=X!|2*OE--!IJ4?jJnZ>G53+*CI`T}k=X%&6Rew(s~gS*kMVYUW_jL>UM&4L z;iaqPC%Q47oVsV>xyl$mftc#Ln)ZZIirB4@QtT7a0g0p>T@4+qeq$Bz~1YEk8?=8A3`P`-7pgQJwsmxTS zC4~RW=W7}sde%|LQZ;GkrVD8CY~kg?EiWk)7?sqI$j1%r-TAkcg=4<@E1_VnJ(nQS z_tCIJ4fkw9d8{-^&>>=J$wJJ&ioN{P0VD&@-t4JEt?ceW^@=r2(*&r`+j z+40b@Di;}1?A;Z`p@4Yc!I9`>ti21C5;MfgJNcSV-7HtW@vQ?{75*~dx3aMGXU3W8 z?KxSWr2KlJzkIkFWSunStvv7cDY<`Hzy9_5^7!68bzHh1tzkqO;?xR@xe?0_f$!|I zz0d@M16TlY`VaW|Av-rv|E=Bf!j{4F>rDqj)@PM7u-(0F@VU; zKxRe7SbM8dqpLZFi&)Ub4{i6~7FT`Clm{6 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/2.0/test20.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/oldTypeProjects/2.0/test20.zip index 4ea455c5a2f186256070fe0a6aa2a9676e4385d8..c372d2a0b1e53742a8e31f4e2b1195d78f8cf8f4 100644 GIT binary patch delta 3005 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%0D+6$UhpLr|3CtUnf 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 literal 4261 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 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedLib/linkedLib.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/linkedLib/linkedLib.zip index cdb5bbfca62564f5206b613554bc24557269fd3e..8c423b59eb66e72d79bfcf8861af86d389ea3488 100644 GIT binary patch delta 1513 zcmcaFK3&u%z?+#xgn@y9gW=WgMMe=ko9~-4F));HF)(m4h%)FUr<5d>X6B@XhHx@4 zcYG*w0^!gK7KXEtKdU##Gg&fOA$0o{CA{EcWMEhTG=UqcyPzmPD>b?7Z`&XPy%G9Q)*svMs8wJcCkL#PT{%L z&gMW2b2Gxf*Xjz4i}}%yY)|pT=7$krsBtq z&wqZlcjmv)FC^ocrIEF3rqR zagzD3ag@zE?$VQ6Pd+hD^4_58VwV5@&bs=bgrWjgr(CJoiM&%c+_4MQaa!M4GTlcy zNT|hiLQK%+1x&i{F7mE_T(ns}C&=@gLE0trGco*2Vjj!S=uzLgIpko4(QNy*hdwCX zIn3{P-&t4FUTfm*RqUQYMb|?gX9+|#WyXA;A050cD2pY%C+Wnslr>u~p4U-;+QM<2hb`Z-A^R{Z#~#(bDqy1TZMP^1suN2Gs7V-aTCi5UfD-q z-~F7Enj4#HI_KPh$h&5#ks;F0|82kf<7IAWW#GD3?!kL5o_)}K<=8?c>GuAGa(j6F z9x^>mA3(iPDFEAWv z1Tm4aKPx2rhgL8EeGW1NVFqfpM>eAnSP+2Bfahn3DfPe-1k)JQQUKYQz05#k(9A$G z0#{)GF@k|XfZ>4SWncz}7Y+5GvH|E6NRCEz31+E)>=Hp%Bx8#85oH9>G*B6V?k|vO zsL2gv8qmRzFlJ((tjjHK0d@>7?WidW*)h{6=W|OaqiJSk14SG=5HbP-zkvh90{{_= B1wa4* delta 1808 zcmbO(dS6^Kz?+#xgn@y9gW=WYMMi!_2`~5<85kBYF)(lgMfH+XN(zedvr>~wHm_%r zWRwP~`Sv~U&26CEZJ;_1kQ%6h$v>FyDi?WOL5pFw`w%BO%4)2tMKs$9<7#M^ZChzAItzR2- z(C@KW$*FtZUwikf;ruH2E4M3S?s1Q4(&!72Qskc4ny_I=ZBqW1ZH z(ZI92zDRj|?~nBMYTCdt$vf*>#G<3k^LD>kaZ5(fGk)3Tqei{@>-E>qGMk(tDJbLM z^NqdO{7K-#kGyK)laEENvaB|%_iKLOUJ$Zr{}XV`4C`Z0&Bz9s7h2=O6ohomKqahwL-K zC%tbi>bE_2IM&H9I5&$r3g=qz)7{NGFJ$Db#v*oM&FAOs&itSHKC&W2uj=1ao4uQaZKmxL%FjH@-Lz}9?9$J>pJbNpuIcrE z-~Bt~Gb3sw>s~0;^aG}X*FY@Fz%W^!U2L)!yQ!(sgQt(4e)?F#6}Dj$tD$pqZ1bbP zbN4vZFraF`q;pMkAy8`(FrA1pOpfIepM0NPqyBsIf$92+57m$Cd*pLKb%Lz5(JJY- zpFa+9#=5U~n91g&u-zb%=}H@4VRd@pvB+!JLc4ry!;E;?ks)%p$$q?6<+b*>`|x`uKzY2B~v% zoU?b|z2{?|v)R*|%iBr#gla&F=Qh`r-iz*+mOj~E{=_%p(&0-^RjUtV*t|d6lQz#} z=AJiRlR0a+h)Y4Q&bq+RLkA;7pnXM*k-`78DN#3^Lj^R6f=LZiOmTfT)JI$N2 zUi@lZ?d3ltt*W0G7QV>wsl$dQJ*NAMR2Yq>q6?0Enjmi&vy{iEJTeDGb&H zb>?0cP?@ZYt^qAagLOdswVn-}zqQeIpk`uZD-0&ba7jcUtH+kBKsq2cumI~PB)`D( WSb#Sx8%Pxg5WWD0?n6)o#Q*?&37kv- diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/multiResConfig/testResCfg.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/multiResConfig/testResCfg.zip index 5241ddb45c8b0ce215fdece2248af8438960118d..0fd7d9c5caad3cf179d2e212a2ab8c698aacb9bb 100644 GIT binary patch literal 6431 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 O9Q!fC)^hnb5dR10u-Kpg literal 7104 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 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/singleFileExe/testSingleExe.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test21Projects/singleFileExe/testSingleExe.zip index ae5db45fbc764a33f0f7377617822e674a80f07f..bd4783a07d8d0aecd003135c3575711f7f742258 100644 GIT binary patch delta 2382 zcmaJ?3pA8l8y?r07SM#nH3X$&(Ym-@&xDl|&DOj#H; zB_}2#*L0H;jZ2P1E=8u|AjaiC`9Ei^^GECVzu($xeQWLK+56r5dER#q!C%ASM1q*O zA_NA0s3^J-$_ot$5hSd~Z$bAu=$JH? zq*6gxk2$gEBp1=mb*U^A4-50GIS@mIQRt7mKm>V6k!Gol)L9xj82k5qnxJujD zsz05+MCZ|5uP)A{yu9E+*P-RqaD#hK;bNw{0A*RR-b z3Vw;?7TVUY75|GMAx85;qBM1Hbb}3VZlO{;@d)M$ADF=JhCRGc4Aa0;jvN}rM+JsF z8(%2jEN^3)<@|!uQO&YMwm5{#?vyG@we#RNC1DLMGe40r(T`;j8pe;a88*r2de`{U zmOPn^srmk6_Ga~FWyw`>CYw+RDQaY%)&h4ntf!`b0*Er_hQ0{IpP6T=yD^$?+O^d4 z>!=BUD#v07pD4c#rGDQsF#XbSY*Rm{)iX6|_w(RR=cqxUx-5_buVwGJb8x@p1TMg* zA`{=;Cq%m3+66DzhkKIUm5T59)ZI6!e`zY!1Ok}@X&X^k_M1NMfx?_-LhJiM?t2iv0W?b)2d>F3{~BQk z0@2{u00_yVAppYRQPdVI1??3-qHamnfqB(Un;g?2`iht@@d}JD4krYEc=g*nS~;tg z!PWORRbx0<&Qcmuj-wX`wWKve`=VWqkY=s|x=Z1{HcP3!C65)iN%E%SY?oYZ0Sf@W z+lAR9m1z8zbEW=#oeSYTrdOC*kWi+6pAxBA;~1~q4A8ga2kGyJ%2e(?W)fiQp%(F8 z&-=DGDqW3QtZ9efoyK9m7rg0jAs>YWWdw6h+fPDo>S4Yo_l1wuU6DC>JpH4;>ht5% zB4_oIMNX)<$?0F#!+LK$=Y}ndY~n$>mcBpYaVGDYiqkJ>yvQ5=z^Cp{5@XSScXZ$D zNZ!d;s05T;62ot+oDR1tJ*jB0G87jTjWv|Mgj1>Ud^I(5ZLo3X<5G!rVsop+%*A-> zpnPP|GCO5RncomYU{-g(!a3C2=egG&T2v*5$!1>rl!{(L?%8p6upKHuem9}ka;`8C z-U%bF6I)~!@9y=r;2anZO*(j7oWQA^J5x8hz1(H#Op{hCpZ9G#aPH51kpYQs3Di9Z zZ`tmFPsYc5%T%}Jd>;SOLYlVNu>#5nh5Z`iP33~xi->P1E6Z2Z8CUyPosSjUsaeXs zN-dE3TQIS%k)@m}_xBq5uOqY%fwuVkf2_e8614-cTNY;ad>GYw((v?p96`U}}CTK^ZobL(t zyVmhv4JC9xE7U-wWE85_$v6#*e)N-O<20z>UaF}0#e~Dfa*Z3^+p3`iGIL&H^`xD8 zz#HvCFh$13RtIMl!C^}Y@u$-K7{N>=GlCot#4w-*mt7tpjN%lZ-jMkQn0CI|i>^FJ zr|8ZFD=XvqDQCPqIYwOpsOv|^T1r;xvFA(vD7BXse?0XrrlY_}C8Kd(Maka>7{ix2 zI^E&)rM`?txK&8%_IjR2oGTR%_A&n;Knka@D9QG6W*TuYjv;9Di1#jjyDuHz9oniJ z_|J|V*B{8p!cfWwdh#p@`8Mx zYGllS4r$j|Nm#Q0@0Vcm{7C>%A7TQlVfr}3t3n%Wi?)xJhDMZ09jZ$>Jy`P1ZQ(A>i%X4-~kW8nbGD}RW5>|aaK z&zED)0=Aa6|6WF}G%u2YF@wUL?T9sNd(k8n_zd>YGGIR3WT^gtsT5Q#vBBF|* zI{&=9Yun-`P_y-6;2#i9jtDv#u$Bg_zSwJf<7(6V5h-A|T;+u_=qD)t;cJCg z_Jalfb%E&_Y`|LEHt~|{Xdl3mqxl7e82JCZ)!L#|SjTaY$O==^`x(Es0F~C^jiIa# zshz+-m)5EGqXgCipFr2!o*u#Qr!Ya^|Gd{)O;&5=N8AE$<$qNUk)SB?_sLhY7zO3@ IkXj}E2XbJHzW@LL delta 2368 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 delta 1938 zcmaDY^-4-2z?+#xgn@y9gJEa#A|t<|gcp2_3=9jHHk&XjGK#_Eb^zs~)t(%A08}Z! zG`X7PLp?JK7m&liuqJPc(fu>;-l+iDAj}HH#rcMM$(ea23P6T}28dCisZhV$5ZrF+ykk_6P#CgD}JxBfaFZ{LB=fIYt^_6QFuT7=%Dh z{sVND`is2wQ$QyNu}s!uldeDL_t-$dR#@}D!HNZDO)b?bDjF}dc1Lk!ooW;=dgPh( z>c+vc3E$qAPZHT08=&8qvb2Mg5sXxReD)nrFv!;sM zgp7b&j71OqIRBnK{=FuD>ay&P^@?4;G(=WSkaf41{k8MKszhm-B^;`E8uq`xSih|C z!jxJcz9lTNO{)dhyz^-ki%L5&G2`U)RSqi@XO=q^C9pLLFIDO{mAbQfXRWO1Y-Yuq zmu(`~ZTj)&*Pl~mmf~#!2jyIzuaDUAaju5wzJqUa(&h^4?)4Mvj}(YuW1n((>HCF` z7TM&@UUF-#@41tnw=KDS3NOr+{^z}T_Pu$o^#xJhO?zH9)nuo>OgjI=+PLZIq+Oe{ zZ_k>^wQ{Y=Z;2%*WTU3P=nIIHinL|A{{O;CDV z1CP}U_juLUUy!;r%i`1GwgjtfdP~2}&Yiw8ztv?~Qd6tR^WP5^KP!{pCv(8F!a>sZ zpO5^!nts59@fwIl zf!HZEFF7MOu_(J(KR+oeHMyi%FE=}QvOR~1q0xhkeKKk-M~T<6#L5+L9HEh&J7pEYpvT1L|e?%nnGHJpO0 zN)r;(%4f84Hq|mD%CEW<#>AnU)I=unRso= zzwhhL86IoAG@XO*?YlGY&aGQ_x$^GhblIA&#%rkto7TMUU9sirI-aP+%&gc1uMHv# zrgG-b__SbhCiPnn1;6y! zxnisPyjZ(?_hauRSG2XS`TZ@=?6;Z4$1e*fu>b4$d!@SUt z{dIT9s=}(wx`h^%$0r^Me`}ld-db2aXibd9<1IW-%p%<7EiRdSWz$nz=v@^3 z@mSagk-1M6a85{RHtv?#a(;81WAYo9`tMvb)7^!2!(09x)ibpfDz^Lf{f2nlW&UHw zVsh>pyz4r3%*pKRyb#`Yfy+N@_zbK01Lr!`Jb&IkLEy^Vf`cx9?YWO1xA_?u9UO7Z zN^Gm_? zryc5De``S!FQjDCV%lp2Ol5Gu4P+rDUPO%k1g3JCSt>K0F)=V$^KO)Q&*VQp|L>lk z>;c}4Od`Mt#w?{77(k|h03(9}m}X$mOHL^%D9Q(A31p3+B7E`zZjpM3N^@Yc(L+&& zyEsRfZwqu9xNwJ*PN?@?aw{a|*;Vh(ZxIV7`&42Zb>1_=0E<08$s& u(P9q~HK_5&z`zO71&x}YK#icNNh;0ENeS>~Wdq4_0iho-fY?~U@dyCDQNE}E diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/CDTFortranTest1/CDTFortranTest1.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/CDTFortranTest1/CDTFortranTest1.zip index e863ae7b986138ea9236cea05bede991db523d0d..b92612420d922b2bb33e1eed75a9d8ce5979e767 100644 GIT binary patch delta 1958 zcmZ1`b5uqmz?+#xgn0#&vEF)o#t zxi$b*#`avZn-5g=9k&8VOW%2)9Cpi8H0^z4K=~2-vZA{x_JYE4jq! zs&>%Q8*M9Az7e?T;^lYs5Z||Br}bi|t@!y}R&L_l6EBxOWHSD|@qTi;(a$@_OVteW z*RGo($~yUz>Wzg?hjofHT8{`M@p?r&=)F;0Xg~LUDbqr(n?)@Kf1)-rf7|24d7IZf zyJKJTN(F<|@X0Znj??QCzH{{E`8M)iIWwUqa5Cps=7ql!?{S@Mlw|R9*D~7T-mG5o z_Z}O-lnTjLQf*ap9HRMlTufkKT}X=`jjJvi|Tu3$_BNR ztQ6FF{3c2|d&a2^8}B>)X=XO6E?@V0PNUlsjo3eTetp?@Uu|}L?L#Z^@Q632XT;`q z=vCe>7W$J_Hs{`jm+Z6LHVD0HcxJIGPNkHA$!YGwxpS8;O)A|i@#6pQ2FHh{y3w1L zv!48)$&%)rrpcOrtVVN#lTxtY!KRhl(;|PbpYvGAXYUim$b0FZk7~VKRVp>PW%Kt! z!99vx@9UOq?-#tl>U7?*I_9$5!dDT8b2s_qKmPg5@K?dXH>;2A5AbH^@W0D-aUU>^ znX%wbJ@c3X9d`ZQ6Js~e?;uy$Hifi|4cP&E_D>e?;0LBSb`ISOrJBCLr1Bb1a+$2a zEL-o(-Q*z9_MZE&(HjJ*-d{l7L%?#wzp9-H^p*2W*A zuI=d;;(l}NgqER__o+>>b{pKLN}PG9=M~eazHl0wfq2@*zw`dusaDG!nfQLQ0w1$^ z%UiyE_dNc7cRzFdUz%;;WzTmq^;aF_KC>r10{@sdovT>yF4-9{ zL-JkHJhOHWQDQnCB3suqCrA#edQd#a?Llr>Y8K@^5_SM9D{BCqzRI=W+D7VL{V!_GbD{sYU7Mcq#_E&SiL2_E)+tSD(;w|d$3)t=2&-k1OVb^Nt-$(ya~ zvLA+Dd{OhV^qA=|FVg@B&MkWykP+4sQDXfu;W=>$V zp#r_+l#-;<%$yX2KCrgQj=Z8#5T&8OavG$ppeR2pHMs;$p)qn94J`eUz+9kn^swui zya8_fMqr+E408=~ba&Nrvot_A9=W(iHQt()fx*|&(+`WT$rHFm>me=?U<0c1cM0{u zYC3Yp7e;bA1H(d~KBv^YV*+{EnEw9K4Tbmt-GdQlVum=w$6r delta 2049 zcmX>qvrI-jz?+#xgn@y9gTbv)$#{j^dl z)ach1eh2rnpMR}1{dCM0)f)RQX|rTL&Z;@7TX0i-^R#ZJ8EzUcJU!*gSA1;w9Pl>ux3S_$H4gFDNA~aCzc>5V zng_E4&T+b=?l&}dmep7N*Z8vHmc-fYReXz|A1T~tmG1v-`nJ|h51y9ZR@rKKLx-y< zX!|loHSU15FaLY5T~&WBt~p_f5KCpK<0; z=CIVyklD;#RqG!qKP~26pnUMv*$bo@!efOhCQfO3sw8pZ|K^&2?;fYGzp2ki+_YLP z!RU+jvSqKG^H)ahbWp2p+G%ok>gR)%H<~`0{E|Ft{!%BxEp|(n^Q3}8G4pql6Tknl zt*iRj*v4+l{rXz(VQ*;k;OV2MpFWmwg>BfxYUtb?+x+P7+&vC845-Fz@tR_~7pVO* z<75v`*?Mp8CI^w$@64a&^LFUn65H~@&@oVB)&(U2*?h|dd}n%E|Jxahr$y_>{5ZF> z|LDdwmEA(zZ;qYNGHqI(dQ(q6VzC$RvjTC|bq6K`t(n2S`Ng($Jui)$zY~Sn8M!BG zlqlbL_uzH!mH#zI{@u90Mm?+QrSZL2P_8MVlmhAX|kq!Xa18u+H7eZ&7U<<;vnE16L}CgWVZ zCJ&e;#F!_0aLLsl0%nNYOa3SF2$;0Jy6Pr;YWl$is;o9MC)DX|xb@EDcjBS_<=eJ8 zSX3nWTj$?9v!`PIThz@BosNW957n9zO(k> zW2>o6I?Q@ri$#wpF`Mk#m9HYUpxnpsLWgBwoq_5?4G~5&=FW$e^=$SVpA=3qW?g4o zSrf7T+2_J7aW02h@7Nw*etBQ#p@Pb4`I?@^4^rO)^fbElD=iN`?iH&`2wFwg(ri0i}+guXHD32=DR{~=w8Rj{6j~@M5Ja4 zoiJUZvE@nUMW3C1$G3f5IPpgP##b@VSDn8k>r{SW%I$FFYr)@V%$}5gf6C{?lNn!F zmQLH)peUv~@#)0KH=dnrFP2_doVetA{`ZyBRsT$1ecWfqgDiLX<&jT)*hRD?vp{)>KNuJo85Dp#5b*VP3H5Q+bF(xE@J8rEErl5vgdvKd`Wk^eByZ;?W~ZiQ z=A^<5s0Wqs*fKT95Qxp~z;Hn_AwMZAHMyi%FE<-z2FwUVhK7_22qQR{QH&_gFD*(= z1sgH>9WOiF4Ty}x01gv`0YA_TC{0SqEP^`$Eyh9GfB+QX5Fh}gX0W0-0omU_gL|H*mJ}7{Y6{02;P;fy2M57(h zIz249P*M?41I#}VT~0txJBGOiIl2d8qzIH$2Goga-yWb&Uq??rNIGI=1G$A82>XHY I+z7S=0KfCcA^-pY diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/CDTFortranTest2/CDTFortranTest2.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/CDTFortranTest2/CDTFortranTest2.zip index a6ec951580f59e8bed894cf0f9d5faed9b4fefee..c42f9ae35f9ebcd6dae1261c97338a59dea82eac 100644 GIT binary patch literal 18677 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 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/TestATO/TestATO.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/TestATO/TestATO.zip index 06f064520f8fd99daae09a6c5eec501a53c4e15c..a0c5a351486e5a7e6fa2214b91eac97919b41682 100644 GIT binary patch delta 2248 zcmew>xlu|Yz?+#xgnN-j_3RveLnm2JdJ8g8f}o*LGmUVY$qF`c zW=&Q7CXjJrc#RYW$~vXyC1>O&7G)Rf=O$*Sre)@&t_||-zhxj`t1t9FQELKI(BxIN zZmYI1UYgdW+QG82+DUC@L-)qu+mX5dYmX~-Y`FBzMb9&B-t*cDw&ve<@Y=x6vN&t*;>NDbN$0hV6u%!xy?p0tjK~2KCr4#fNvj3N_+qQA zEM#{dtqL!wjSk*@f5vU&3DbrCAIPvU3j55}wm7nWkJs_X{g3(f>3*x$;EvmuJuzkG zwV=QWuU2hio1x=yb=yz9tyY%WYzMVeIX*2a`m|!nLZ{b2sd*oO65-XFJE*|C55z3ki4wUx4K z@42p)E?aMzu6{p*{cPj6wD0kUAIw$uePLH3ZT)m6cZ!k9411Zi^N&sc_%@HnJ#f~! z{ra0*nC7XU&i$i3FK<)ErjG3=)uMBay#7DCCih2rU&2@ANV|52>yF&KqPdl>zuPWN zWY4tmowhmSugt#Pb>9|!kq0H@|3x2n-2rB}5Eh&Xd9o&3pu?`edt&V7`5oj6+oq6~ zu^~HP&;H5c9sJ-_rhB1O(-)Y8UgJq*lUK93)!P;%*h!=%OnS20-IM91#G9p@%d*=Z zek?wuy-O{D-`)6u5Epm2G()wp*u}qJ>%2ZiaUWb26}GeGs+7hE&jx4Laz>Y$#y6d&7T&OVeyU!oNg_+*-#~bu;O^#)-U1W%Y}1 z`go|d{@Z&}Z)=2zjY+$}z3Q2j`I9cb*rV<1w&6odtnZ|&UT>F2FKk`wS#ZNcwWz}3 zf``J6C8rnIRsX-o_*`M@$0rM}$y^AozZdbQA?hKEz#^_mvYQe_wsJe9Ech5yc;jl= zwO%2cfI6{MBPa&Q16v5l<%K9h zJCIe#K3R`Vd~zK(hYGAYft)2#6*F>7Ue6}3gJL|;bmTMy%Bcvz%{lokw}c2Q8%T&7 N2qyz0vx5u70{}rp$e92D delta 2152 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 avdrdZ8|Fi)@K=;!AQ*@V7>HDv=lmObd$BwK delta 2638 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 H!hrt)hiH-g diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedLib/linkedLib.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/linkedLib/linkedLib.zip index 4b4a5ce9e9ddd1435696e4dd79ab78653742552f..ce01ebc6dc1f7951188fa6c46acc7e4a4b5130ac 100644 GIT binary patch delta 1603 zcmew;K3mi#z?+#xgn@y9gJFHoDkF~5Wm7eo7#NOlGB9v5h%)FUr<5d>X6B@XhHx@4 z&(dsk0^!gK7KXEtKdU#NV%KJ}f$84>)bCf6@Pdz#fnfpA3~s3Yf};Ga)Z`Md33GtD zK^SJjMomdZ1E9Wd-}Bzw2D;)lP%j5aAF?KNYbVDt-mm8Zss_5Trob4?fD#}(ol^6X zGjbD)vWxY>b_PwacJ2jYn4Jh8Gv*f<-}5$<*$cE)l!bvo7*%&}Vs>g;W=<;DltT^G z&LEQ@ru?t}zcwf^`?i5V-MWMSAG$GZOT5NbZOk*vMDlFLtfcMDcDy&Ojz^`Ooc#2_ zzrW|oye5_1bzT{-bGLTa`+e{8j4JP+|E^~6dd|w7lUc)G`R{S;0{qCiDA?gAWze7ID^6d%ozOH`RR3-l4HG$ik_SXmR_G;8T7|OBsWlp26 z$(^9zn-m4BxP$ml?wRbxu$`mHD@!P3;ZfmThqJ@p`!&bvEwSyN`A1wVkL6U*<9v?g ziLck>BuME^D~}YZ?eY82zTo{ru}w9hN?WhWsc<^Rn$OK{%w}9xe0b-UW$%`5;W#JZ zI$^J-$Ks2+tbQ)V15);K1@Bb&~vzXTJ`nxB_Zl2#k zuCQ$iX&D=`1NQ8nEZ)J-fNG}An)w#yD$Xx0N=_}-%gx4W$=ZHju0sX_ zt=}8(BreIWW;p2j|G=(5sS;I>Sv|Q6a_bdlYV6&+vE(76)rSYw276{sSGmoX&Y9Bq zM&qQ0CC}%5hdJk}T=`(cyeuGUh7Mzv^X?scf7YJsTAsnh*sfeq_Vf9lJwew*mj8-d zyKc=o?Z5lh-+PhvVd2$d3zekL9uMHZ$F{sc^I;;-yalcoUQ9L4)w#ad`P>m*{nu%p z)f-H@HrMM1cr!AIGvg{Zc)__5=xc@pjUXmcDZ&aVMM5hWfPsZD1GDTvHX{{Snt;rJ z6$qCnJ}JipYvsjHi^so+0bx(A?x-uDU#md4*ZniA9h{IQBCwXnhsGQ&(_g)%x z`I(TYCy^UHyHG0Rt2A%HXelr->*0POn#-WKS47-`+aB`iEj%H2b}geC72w7bVP|Tz z53Nq@3(S^2J1ll^%1+%?!JA0BO6sqI!(xSBi=4hdR;@WjJ3)pc1ea67zI5v-9n3Y9HM<93k|mdWDP$>Tkyjmkp%K>10v-==&aNiPpOt zmz$^RK!*pq2q}a@W}KXnLd?*?2AE?bPtUT2>EKDDm}ae{up*hO*}X=r$9vCDj`1wo zK0P$;bos~ft7OH<5p$t?XrKIY*;!#t&(9nvQ*(m6WX!&FQUAES+xeg?n3L9Wou=FNG#Y%AR5C5 zBh!<+`I=OPqv!ZZacQ(!E?${s=s;p`o}%H9hcA~eSG)1luoQalPXIyKk$Qzj3=#S^#zfGv(~G6)RDdUyw@_~K{nEbzmi4oq^^R9nnm_V}b} zYuZ2uL!4|?_XOwMKsnCcEhy|wdXZdE^tOR~+1_7uswB3@4%U2T@q_1x)bGZ~&|VLS zY-C$f=rQ83-=Y&7_s~I9>6H=>8WJT#?OT<=HO!k*Fq{a(%%6zRmuDJBq8?CG7n%;mgRnJ+KSdVDNDX>O*=ok!-0XLz+4{sNe^=_sf7+f5 znXlp(kyWOY5jNd?Ah7_zrhEP6+k)cK8NR6Ku&%8Q4J6O*+0u-B#^<5Xq)vok(jmHxGM?7d+pAzk88QGw?6UZpPFA diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/multiResConfig/multiResConfig.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/multiResConfig/multiResConfig.zip index 1101a419c65912705845f0686c4ac7818fb63c42..3155d37b6d38ee498e71376a71280db93c0fdb09 100644 GIT binary patch delta 3919 zcmc(hc{o)2AIHbmj3L_$iOCX!EMqBa*`K%wL!l(wAj@cmF>T_6+by!hu`ko0l!`3H zwUbMiZkBSdP}Yk=CTpT{kAA;uM!)X;>-XGqo_Xdx=XrfT-*dk2&--&ex!ONzh~lj{ zIMFZ!be;_%?S_3hO6l?(a&SZ~{qhbG4j3$x4+i@lTKA{t;}Xx|t{5(aFHjh|K)OQA{5Bh|k39+6?XTvAKug zG6B2`tv8dl(=?=MFW9mEK59|fJd5syMv5HiK?~7ck{yO+F1Ul;UI?1DQXk)5S6r1} zR5$WHgKkBp4)z}ciUsJwYDa%`*3@eeQ!FSv=W2&4gW+o2pO6#To+7qiPwwdw(Uj=g zT3Hu->LoELb{gddf3GFpakpIC_&DM2(7`sh1J-U_o!E~Yp`N{F3rM+TjoO4AljW52 zlG!pm-mMGet9G4Bbf?rrSqFl@y9USa>9dBtw}{kRg0c3IfRwEwmM!H@TM&I1^)wqB z=`}dr;8AUq$sZWY?=8cdP~xhPv5*H3w6TxBLrAs_yA$PBYC36(F$44nUdLPr)edS~ zou^Kw7Z7%?EQLtc<^HlaX0-%4dRvt?9DK1~$!qMo!+p3&S{kf4Q-WgaHZC`|EcY_t zG^4J*TJl~Eu#~#2a;BU+ec8Uq!e3v(Qtvu@#v=EG&5ZAOEt!vS_1Or6JXewduapkD zY6*-;VBgLH#SDosy1H>%8qH*XXjGZ^{3yA!{%A+O`TC4lMq1fN4!ji{;ht%H@F`SJ zXE--&|D{Ty3s3=JqgDN(*2REk(}Z-akn-^@3BcDjfZHzdLnQ-8sB}?xSwrCTwsd_c7$p0o#h> z8f7<1#dt?)`Jv(UNe{;=!_4|bB|YhxaFw6c%^ekQWB4sc>2Zp0ekeiHukkUG)*dhH zW#5$>h>C(&3ZYFa4Rme^Dvk@YCt9RB32`Uiu>~$THW~QK%(drCgy!!v>pNTXp?nY*TNm@SEBc*YIf>dZh{M0G1-#+eP|fVV9ytyY zKNV^|tj7N;J}Ak912&WkE0$g#iM>X(y0W$;lA1K0pC8rLwQt5-4Q)}{LOhnA5dVIy zeYwm?YQ{qykr5it&~-AOecQRVm}F4TX)FBJ`AymLQkU)CRZc=jkKN*>L`w5x@2{i# zj`xyw{JdRgPx7vej})HrXc!vmu$+C~940p<7WZ*_aex+kV$<9K`O0B^-` z-gzGJ!XhEs44(tpz;UYjdDBm=^QlDbpR{zVefauKugp1;BAtrUvX?a<82Zd$x1q2| z6TKI=_q4^U0V~-OC26NC8g^e?V)|(wBCwIR({EGZXXTPu0FNQ?PH9L_X zYStFmHWa+3Tq2nQDfs#u1;GKNEI{@2@(acV1{8f`KB%Ak|IG({ao@jVKH!V{{vGp~ zesSObFkdB5GxJa8gTaJB!L4Y3vY{b<02yf{5a#wqQtn*G&4+Zj>KdLCmpN=I-D5l0SCgAqK%|{XoIm6e*40Q zG}~KOvUh4~IAf<*r7Xu{)4F|U0t1oz1TgzW1IOUS;ioFer1&$gM;Xp%+%ZG z?5caHx+$sU+kZiwx*OZm3coZderaB0bg!+jiSdj$DpEP_W}Fh?zB_HcO~d@7(?SvS z$!KG9T@3$`@X}v*(p5!bQVY_Zv;`DsnYT>SeUp^S%Z-RNy@QE=P5sHRxHbTGeNDW2_ zorK8b1bzKu5Ec11 z_HSXbBB;Ct32csK9{hw^Vvj%%z+_{R=f-<&G_uVpn5Pg7ONv*lDJUc=ID_C*+MIy- zBZy^5&tO3vOU#&kN*^ZoNZ=k?6&G3&Q}Yt6eZ?|P&0xf)_7hA2)9006vz zM(|C1d~v9S1N@&KRL|ujx+IZ^xQVa68Yd}=0)TYE()C+V%OW(aWbAGCR*(Y#uC6L4 zqhvXjWkRs*l}`HpK9~@_3cAHPwJh2IGu{>L^XP!p_Hshj+!7#>?vbG@q|FlxrZrq} zOV-=^F&d-z=+~P?JNMcdJ}V^I-M3P?=W8i9Fir^DluK ze4ne?!!^xmLce*$qSd#j>C?G_N{BL-IU4WI?R~pe=Qi2O3*%0&MKzDgr9M4ep;_nK zrM>gNA_Ti`{?ymg;3uP)7b176-Z~IvI15%aO68gsHE9hBNp_$a%QTU;Uxu3z^sLLDBwN_xH^29l0tRddr7u)LFb_|{@4 zeX&z@wrPXgMEaYa+*W>$O)B0IEPc~_y_93QSy|5j@Tx|MV&#~8L~=jC#G2%j1M)>d*-q76y8ntjD+$N-h^GUl(cF$zkD<$$M*)L>OiiQS2l{mTp zU5SYCQ}vwyK}-Ep-Oioq+QkQgOo2x347oB(>CVj;@!^L*bNW!SHw-0A?VKIf`YMhK zVCetT`|H9j0X{plSlf%kJ&1x;O9u;IcJ!#eWx9a4Ssw*hUuCvBdKm10QP zmH+TlG=?)`6n=@oFFmq{qqDm`6w0gbfbSW2GcftVm*2dkj7v>F(mL|Zd{(vY833W+ zhrs~g=1Rjae)#?-3_rh9c)R+j_;~txJCfB@ST+@1X!y3Nl=wV2)$&jf2j3>}sI@CY z6%#_GFZ9N5ex@g%f5X#W(X!RUR|uU>x8c@Lbh2tpiPx!$DqW~?&6nNb=_tbMl;zW` zJ!^BfJ-G9-y!M%M^cPyr^dgsLesXf(o`d~WMDh3A;ss2IF&g!u1DEBqP>Q)m!jU{0 z=wG7WXA-P7B{wK>x+>*qS?)0ai$D0b$aUQOaJs)p$y$TE(CGlrr6| zLv6P;5ca$#JQ7rP>&|TZ6=#Wx!uGi4=K6P;4urbS`N4we48xZ@FOS;pOzd7axlv~L zQ+@(PscI_tLh7MfnAJ@OXSxx=V3Ca$>sbyXzj&cBgU+c&I4ekUz%4>-3&Q(nT! z|NN8-x4SIGTg@V`Vm^%N?eG2Jb?B4kT*qN^CuyP z*jv6we*g5IXL~`Nx-r8Zq360ctc#t&RgAFtuK~iv;f&Nb`P`vx249jwIC#GzVI5kVHf3kE>5yt2?Z|LTqGfmb%Ke18iL{2bi5umG$l3Qh83z&M7g z&>0>5Zx53DaRP;zUjkP@OC0QL5Yf{kzBSBMNOFsNm6X`;sy_^lzbfRj2r_Zz)GPBp z8Q{M;;NFmARzY0Au@bJeqzSFvC1&CSfhOqKrepC@QKcM*MkdbxaY`zyz*GiXp;**I zPdHnwSAHZ@SqMKM5>ctSC;OI6?h7z*SHY$Zi(RRKZ;Yoxs9L*P&XmuUF`5F_8&7DC z(7LGY(mb0ymA16G-|LDW)SUe`BQHvhCDjMb^lD&3#oac%b+}6@U+5vG7-K&ZzUc+) zUrO0ZStvi*K99TmdruLq%{bPslVjfiDl3^B8dfx7j2^wvNrB#^wd(Wmx<-J{zid_L zj5zgV14C`})GPj$49OESS38y!2Px#xMW zkXxzs`@yy2bg90;WJTQNDZ5eEl4-$r!Zf@pM+&APID2b~5)|#G=f%h%4(wuBqI*Zq zpQv?CR@09@{5Z8V>%=2(U1=wsy+O}8-skXK$o%!2%RZ>V^M1{IOgibw{M6Php3)U9 zI@fB8X`{QV_b+^M4qZ$H<^hFNGS_%+%5o)(fp`@kKL;m@H_qL)_-|ER@qe#saAjHl z3snuSEbD)vst>Fz>;JW?nZZPk0v}nM$Xd96Kjwf^1tmeF)pe?CXkwqGJpG(vDeEZYVHjDyw@X{V1i; zMQ$xI$LZFV_erlFs%ra~=p8h3$}GQr08)q=6Et{8&m_F-_n&-CrVeAIN?b>v(~X%MQJ#E`dgo5{d`QRlBz2 zxQk8txtSleUbrDGp$;B6)WzO-l1>BTDRATQML}t6H-arL8`Ol(G|}fDU>IHrN}886 zj`Fl0BoS4A@yb<+k~6F#v=D|b`BIFAYXkhKYQt6(&Q+9?{s9$5^d7QBw!j26j=HYp zfN49Axl0l494S||a`28%2~JN**f#NVltuPO!Q_ZicQMr2W2dd(HAe*qINXRd@TJN> zfgq>0m!Ph$L&^Bz;)%`G>%Ne9`d^OufAO0Qy!XI2T;=7&$G($O6uj%%(i69piS%b9 zebVXDeC-bcW*JA@j^vt+`q_tuHFpWMKE+6eV#$+dRGgyz7`yy|WH7YWxk`wS!uSky zV>P0t_QyO*;iXO`=?cqcC3L;JSD>Gra3`a$-zOP7Joxe<@o9s7^)9Y_%S$6;pBlAI zG-}pqJPxY7SM#P-UAa(8#XYqw^TvQL|IGclTdjH&>HEJ}*bS(6oRZK?<5ZH6j8IT7 zs#JEYl<5*kHB-gTpRWK*-pyBLIMe5m`+7hwv1Db9C}O?d|D8 zcJy6of&H%XqhDVkH4)*>$hYhl7XU!UPh>F-aB)NS+#*UViGMcovJ?cNE)gm0KTo!c z+<*}LxCqILin1}Y54HfXkqQ3p%6%A*m1i>leS-Q9U1ZMWN9L(*OsAO&$V9aSL7q$0 zz@ox4L_u^1EAd$2MSNnPxtKJ}?crIyIDtioif=;plKnhqSz&@_pc>IFi#Yb9f_ZB| zXqmWHh*wNznUB?XfyInt;p!nnF-aTd@B3M`GaW^?Iv%dC6<3Ot(PXQB7>dA=#dM_- zN)X!sXEZN>;GhyQ3=dP_20axMw_@7uhvbnO{HpxYPxh8+sjX6-z#@+i?WOLa}%>u(=u~X z*9He>-!>4a%TxIO(2Z&1%O||w(j-hWZLY1&beePMn~BKpIT;&O{imJ&^}c-4-6NWD zl56TVmVBT4ZujqZZi}z~t#4}<^vPb#mFIHk^Ph=t0~S4F3qIk}$9P86Bb6aI@t(l1 ztDpJVeNL#X4{lMY2>-ymYmXCG^4!;~E%J`y2TIc3yO^JMOilR4F?CgGljxKf;o86; z!6J4itLNLqD!F2mmwZ{Wr0Ls=jg!~)@^v|1kH`;Rcs@7lx3KVK23NI@;uZDD>y4tO z7<_wnQR~~^?RD(;rP`UNtUU2AO6lUNTazwLiI~21Wy5KaklZ_#msf3A8p7eWa*hJO z)o3ui4ic}=C?v4p(H#X|^eNR5Z`G{$`QS8c7 zXVxg1MQod6eqMr?z4pe0SsUlncGmv7fBa(oulC(M?Bd}w-iZ3hTJ0anj1;)F+lZv2jcWrZ1BXUZy%szdbwh@RR?Gq?gUlh+A!Y z_QtoPO$X*3znApO^i!kZ%7~S%COvL_YCbRBH8g9(=c}$<6P>x@xMyEX+ZPV$>esFR zkF1-!V`IH|ZTGtO=9h2gy6F5qx;sJE$Zu=do4#yUH@&5+Qkxz$9dwKSw#M;6zE9Tn zJh9(AMe`m+T#RJP{`*`+>`zc%!q>{m@3t&bWd*v6=IUqu4!E_9wXkIGp4tA_TP%3X z(>2e{zPEeLGtWl*0B?2fA_@L&GS3R6}C+wEn`D=z@Gh+#XI92U9$m7!JdPs+t0gA7)2){7}o%vlPZ^}6@=1;#vK;N#iz z{n_z71~z6)LQXc(rrW|kl}Swd%&vZAtt(@`Wdh60CeKI*#kVI*x|iu( z64DEg5al<1w(-vTD_hV1S!lEKy~g4k_btmZzxGUKzuWq?{Fm$AhMCrirbVk|etO<+ z4&3}~M`S|6oZePG#|00g%Ffl#k~3vnvS!kou$IdJV(ea5 z`OH7>>pz!mKXzq#kdi>h%)?!EA+>sM<%;c@#~^^Yqn-<{z1Tca(gQF(Sj?}aCew%-=3wuwCS{6aP>AahE=K-g4RIxKN8Wy=ldDx01BFPs>c^ zKF2xvscN3z%7yF0W7b#Jw^g+K`0M|x`P12#bB`~vi%fSuI{%wN+hmoA{GV%BL5cRy zYSXnFGT3=Yc12=Ip; z#en>ztjYhm+3V2_K+Y?u2J`^^f#d>2seo<-a(sa@6#_H>qX^lE(j*y39t-ehWdkV# QH58r#quK^o|1&TE02rqA)c^nh delta 3041 zcmaKu3p~^N8^?dUxHJ}W%aT7*N7BsFMfziN>BuF`C6}p&VXYY(xkNvjZZ4r!r(C)z z#X*QjC?V(QYDz`99F)#t`bRjC^V{Uu_;3rE5EgSU)i2D=brFED@pXU+XB9Xu(*#picAbZtj ztqpFx!C&%(Rp`S2pb37H2RDOlp8ah_a5G-*SNt9hM6HqofJH*GpMRKdIBlQ52%SC; zUGmdmxaq994P<`hcry(P1!g1)RTW@RXu(*&$VicO%RFnYhZGJ(AW_hN0bnn)885o{ z{)Q4dXH&z%Xu*MOBayxEP>i;@gU#hc7jk`zlD!raR$qv=TjaU3C<*GxN3=%}&cpFH0$Sd)B7}(}vx)4Za@( zfV`7#=rUe00)3X~X!fk!5Nzp1+;jSKiQK&h4qkcq>6=P>^4sMfnb3oDocq$2>zJ$! z{fXUf`L^#>d-8p)AZfcymn3hi2!G>;Uvh88Ui$6m^9SoTQKdhOK6LQyd>L9+wLj(c zp!Bufw>F*1en!$m$tJ?1`~IM5y}!u73fHAGLBQlVCMkOPx|Z zQejc58TeRWKS{x3RE~XvuQ(by)ZW{3*P6XKZC!#=v$fn*^u)$RoI9g2Q!Hcp`|8hv z>Kd4^0yE`v2$3wG98>`!HP|nRL1EFq*YC!Qh4lkxn)(n_K#v`7YL7q#+=u`G6-je; zxUWBrg=Nr11+s3T)4Cax-fR#AM)kg?HScC{lVcB#D0 zNrtgE{;$@R$+2ToS%&e|h0Yv8?bqy~FxCxl?3Mz*$Hl2O{dWV;m)^TDfrlJybBfEA zDn~=i>w+>nOEzv0lswr*_jvhEMJM~nQ(6V~5Hrm{8GUkWeM)tt&FY#YWSD&0>o$xL z-s5(WBl1qv!EYte)t;0sjS+3&bS2q51&g6&J7=PodOs0Nr~4`#fHMVJixay@{0(Qp z`@z~+bH&nSyt487s)7iT+p(xZ2F_rj*oNz;dxgPYOB^Dpn1AGY?$rHDQzd=_A?lYy zKJWc?m&sbx>2zI`YkCr3>!wvdL1=%m-ReI_xBj`tZJ2v~k=o}MFRnV*(rEg}c+^Yn zUp9H3XzG4wKm0$`VP5W;n25se1xXxRg&%Vc%^nJ?_qRuT{Lz^|mHr?2X{=VCpEv)w@R7 zJ@>Ny`3a0FhGNVis}0n9aCmAs?w92Udf&x9co$k7*DW1$!5GB4c|F&-zvop#4L|$U zWj~$MWeM3Ee!htaX0<6Ap`Mw(LKCmjxxP|YaeCHg^tKif3?gplQ`6&dvKpsd^cWoJ zj{Qgd!HPlB&u4lf@!Jn2WhU|ScTstY_vlK|qslJ)Qvaf1b$OZkW{f9kXj8_@^JAU- zHn#B*1MUQ!bR6{UZ=h;?GNOCOJ8KNIR|(z>_^ik$7JI29qn@wMdy#+Ha_dkIj#Plk z_&wBBj?xyS!7z>EX?OMRC+1HDax%|5ZH+u2D77`n{Lp;FQM<%rb5YXWv&HOtab*vB zerd>=rY?C5RwDRseXCkRKEyrd74Yo`Iv%$6C+uZ@z{i2KvoVw1>LfbQ|$iyhc^$hp+Z}#n5 ztn3Oq!W+uAvtL;^^5BP29;sYfZfAO1ohOGfvbM?_YugiRJ@TX|zsVc((LerT%2WMS zr+DStl*qcE$vNu`0c<>hHrVNom{M*jj3u?K?Lu`FW>0l>03*`BGgG;nO##UD{fJq_<>~&51>jr!;7K z&GW`)hO_*rv)&dsD@=1lad3)<$4nbf74TswpK-2@eceS>vWhhqq@l0JPnJb~mG&8c zX)cZI;+*S2Uu{ymq80L-M4Cqel)H8W4lK<F%?-}3ZU`e>-E){9?QHS%rOskz zC}JBN!U-q-|HDbF3=k0Kkr#arYlb(sLH-3NIR(UNtx%_l$rJIJ@DDFYvPi;}CV8Wa d0|VtHfa16PKR_W*N?O?9a?sNhk~uyi#NUG=WVQeR diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/rcbsBasicTest/rcbsBasicTest.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/rcbsBasicTest/rcbsBasicTest.zip index a063e57f9509413bd6e9c213eab21e6d3590009f..9f9fbc8b7a9692565e31cfc219e47aa4e49ecd9e 100644 GIT binary patch delta 2609 zcmaJ@2T)Vn77fyqNC}p3euzrQVbnT zklu@rE+|D*zElkYqR5NGz(Eeo-_?5`%-t2&n4b%dsBSUM2IrDbk{m3Ax+HtJ ze}zh`vmzAunHQeboO@Ff)KF}rB`Wkz9*FC)Xv^ad=9ges&~t8wYj1?18rdMLYgBv( zJ9CtuZMj{nFpC(W6P6ZxTEe)W1d_&|E_&!;>r~(Xlh40C3K(e5$f@|8Vv&xzk|*A$ zY_0q%6|QS$(XZSK7Z&SW;crE7i0cSPj?)w5#>dZ|r2q$qC!VA+dU(idm20{L*$Eb- z1~Qxt^HQiUFP)pj$u%0)wllaJY~sT$+g$?KzQ_pM>l`I`dT~YJrcf?*vv6*%`eYAw zj=b;bXudhrsHt;8{AWU8_ptpEBGJGQWP7PsI>DrEMxf5#PNY}6N-#9dwBD1F=|3rC z<2iowHg8PyJ?j)V&n~`eSs!83R^1N1X0-rI8zq$!#+Fqh-6edpq#P}+hlX-MU}*Y zxl8XV*{Iq!!vX{wHQ645xzc;au}zo!#|7vwG32+J<4d2%&fn!r%5%hFL>lNriNx?> zA*<;@|GYIHm4A zIx#*}bY?S(MchMgqFF2N)7OV}_A#Sx7KqXeYTa2%VhYK?>$jL-_^i6GrG?fBRYSl~ z(v0q#+hT@33qNGmTUH`&n}g^#6atmIl)NV6x%&*ULCsUL>{Gb3$|%o3>vof4N|Nm> z$vYGmuiY-IRZgQjcq^v(bJ_Qt*9mH2Y8WmSw~+CuiZ{#nI>pqfhojHtZ!D~IQ{qh( zB{fWkwShQD9EV9J#5wu-!pZKW{@otZrF&KVs8jaUvKR=n9wb8VYm8EbbnpYjR9__* zNOBB@xc@6sW6@}fRk<~c@LoYA^6BPfH!bs@{MgDMjspH{qj|EW)#`lpAF=vW@Qm8V z4`5XX(YyBN?SRJ2U+KR*!l%_A9?_wm>mE(%&rw=dU3jA%q%G1YYS|206^A} z!?DD5h9zlc7Kh0rRZ}#NPt)LslqF6BBWOjpQ6t~3(~!Qj`w%36D9QxIBRwW{Ikb&t zb`{!~5a?%-?-(L6FHFqm)G%yP1thE3`I5^GpI2lD@zbv*$Jxx-r0b2(Qn8ed{*Ygk zf!?$hl3%?&3U};7W}#u^U3Ix^2*eSCMZcj-Y7P}!Z=epmG?sxiK*Zy8RF-bjm!X@# z^(_m=mt7N#HXX@ClqTS_PU38!Gv=ENK7mqBK23XfAC9v^5;U#MZ?~ew${`@CX>##V>^$c)+qxO%LB6tR2b~hs>&Aj{8Yg*lL*0XyJJPAPYbOY z9`G3dT?m=Y<~C;)ps3UA-cKj7oXPoPS1P}yFF*shH85@HJni;kDI+QS<`7`Z(F6*d zFuii|oVA2GYm-L~yxb;gAblwE6k$ocp?+F^C@rSeE+UNcNnhM5#oJ4iE9*zNy<7I3m}$&`G~qKD(C8VURrBs zpqhY}s>NK~%01988;N|;>@=Y;v&atyoG_z_X7T?BXRp{Am=9m_unE|#0KU5#NilG8 z-2@P#0v7c+6Z*oL^{UU*H&^SY$p!~6jyEx5#MXAir9u!SFP|h`-cGio0we1?m7%lI zrQ*YD%3Aqo48J^`yFpqlc^lvV)yVQA&(g-LiSLSw--z3LKFGyxXD~&&!#y9E#CW2l3Zzq zlOK?3>q5EZbmr`GSB1a|Va@Q~NYUaAxPg|sv=e$V&SdIz5bqx^d_~?K&(wkN(@(PN zX`WRy{&Jz7?*0`p$WNc@mE zlxQdG{SA8Sgvy_ zVoZIi2)4||Bb2K=*s0N%qIz@0sM_`e#BxBM;Kl_eUY<0I84`roVYOUvGD3NB@5_ ziL)SX{C^3nG#9`Qf$dL4S~BljbWF6Ybae33xA((3S~&ap!yNy;$9|h}?V|z!MKrR$ zGZ6PQ Pz}{TAL_3%Jdky>xI7-#>kxVWmH#}oLNKugM`_` zsLxC-^jFN#D4{o1DT3Li+Y)!!VHl-C~U5B`M-6`%r*@aZbaF?pVWraNe(;ZGn}#f!5T3jqd)g~6TLfm6m{s?L%tF&A z+I96`Uhy~oJjVbZ!x!gqq9zy z4?G_zotWRSeBLv@bomB1mUcy)o_cj8E1oSbX#Q(Ov4&Ml3ZK)k(#gUk*Hg%f>k`i} zOD}L0gM@PND<@|=P3$t8F5Ym99~t(1!cwk{5Y)rD-+HJ$bPpR1&zFP4^5Km6^#EMh zk?-q7=L21>^cw&C4DIxY`yDiVeAic}j_N7@1e>6ki2jTL_>CE8h=>=XLBE3gO|Y4{ zv}J^(GA_HZ`|R!h&ALadqwQ)Q>aVS=T@H;g-w<*)(-W!|jgc6kr=>bn9R*8tTWtHM zyNmVtqjN)-U60Qe*WUT&rp+u#GqkAY3q*T_+dX_awLX9?i{%yV8~d{AOD$(s@rP;H z6T{tQ>ysMkbkiWgiZE=QkzIdB>PrtX*!7QgU7X#jGEHt)OicbR3dLt+jm zz7%lV|O2v5&&u>EI0}iMlYfDz`HnsJy4|v}DGk}LJ9Z|{;=`LbN<|cN@ zVJly%tL;TEVNx$rrc4=^;8qcf8!D@<%PE)a`M_&hF}id_=mZJYV}*-rnN$<%esP>J zSYxD#QWE(?qC@u1&qhq>7Tr@0YMt!KMIar^zlvVDY>;5!E&{>Ej}fViCBln*hh^(> zwHGpV^^uD<53?l<9fnMJ!}kb68CktI@>!QfHw4l43tOF(5n+5zP6HS96pds6A;I}c zrSMqlzG>q~=hw`9qW zZl2zvcmcdCHoJ9?n!I+>3$9`rU)9O|=7g0m#!Mu7Tyh$DrQi^6>NG`FxMOflzIL1{ z6I}sOIz#lS!BUC+t|1P*MI2s<6Z_oXil>VSc4zL3fP0m3<=1r<2vax+7^t1vBbym9 zf!qjLYT?h&ew#+y`Lt8AK1^@s*h7_6`D5W+1MOk6m3<<&TaIeUoT$*5HXZ-Asw$M! zN6QO{`Ea4s&e<#Lcm<=do1&;h?C|g{<9J)U+=Pf@zNSJP@wSC<^gg8tzK&C=y`ZU2 z46;7Kq;@WdV-NM;E`Da*-;oz|wctoYpX>s4I4V9iaT19quABXQEN z2!8=YvmC_aL+tRhRCox2VLD-oaE`lx`p^PiZEfCY)mkA1ybUMk@yLXnZ-_LQ(IB{@ zy=kFB_j9&9r1z@LqUB@Bu@`&VY&Fv!T#7He*GzPiB3=vDkh73EFLl3VytNg2#4Igu zKs}JLIGS(KTjmKPMs7w2;-q^UcQ3L-59*`?#P}RL2m}L>eFenGPP`lhur@TcPm@Iu zf8=CY_s-G``F)CJK2ZoCr?WzR?|G1HpKZMh7~NNS{^mSvzM(rlmL3o}c{@;~R;UH3 z#C2+7IZ)3d($2;L?Ws1ENTYyo3MB&=witf3? zgw04%g`5k<5yoo4%|sU|YZca7wSc#O@h66HZKkpti;EY9Uy+vXC=fQSnRbv!iO;>k zb*5D=AT~PEdQ8hLbbG zTq#Oy>@eVL|EWE z*12u$PTK)a0;;9C3-#|3xPyZN-8;@-f~fV6BL1H5|7qeja%VnnayGxL!uBe*{r;OV zfL(Ok31~Zh0_1Ui_}@F-_9L?iz#uz@bO>2SKu+-&!|urZUj`Hp5U1jTzZbTB~||Cd$d4lWUuT2Y8f#Q1{ywe$Zd=h9HOl diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/singleFileExe/singleFileExe.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/singleFileExe/singleFileExe.zip index f6968935b3190b64bb1c370e56bc6ca310dff6f3..47787cb0b8b03d58ae2f27e1f3b02f6a224e9cfc 100644 GIT binary patch delta 1825 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 bAbk?M2}p^X73@)723`g&W(Edka4-V^|JmMH diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test with spaces/test with spaces.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test with spaces/test with spaces.zip new file mode 100644 index 0000000000000000000000000000000000000000..f78c1d632e831d0533e20c8c74714b738e325d65 GIT binary patch literal 4117 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 Y`u`Fg2BA4l_B=_tvPeWi(UZUZ3w_##_W%F@ literal 0 HcmV?d00001 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test30_1/test30_1.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test30_1/test30_1.zip index 352e9de68c4a5e67702de61f35a1331a8da83b65..eb52f1cd66ca18fcbebd988c2cebd84185ef32b7 100644 GIT binary patch delta 3582 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 U&{Hc30x?mC5VfvTu!E<60W09l=Kufz delta 3611 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 PgaNQ4cM2tB008_4Z-Vq2 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test30_2/test30_2.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/test30_2/test30_2.zip index b52c97b3f639719afad568587daf83c055415673..d4f2235c22532736a1c86479a6d3bacc8652c540 100644 GIT binary patch delta 2158 zcmX>k-7O;#;LXe;!oUH9oaOn(3~;ddDQhL88aoGTEcf&bMg|5yW(EeFYD?IyL25$| zmGo%<)m~@9t#652SKu551 z{4R*FIz@P;8!`(Sp(?H$0dOs zVnBs*xQ%3(*eG2en19QGr!G(BU$goIhFs6(Z*_x~2Q82mVibA6m>E=}!gpuKoz&^x z%m4niRGe~PmejLF0b+X?(6M3vrh*+5o~&VN9|2RYOLN)&8B_q?_^)FRgRX&a4r}O)-|KF&(r#X=t%5vsq4H4;6A89BBX66|s z7%@$qeW`D&7uQnBra-TNQ(dc`sVc zwdD6Rxx;&#-Z>v!H)Dq8M$MP|s{8yn-Z%t`b9{QU{IKYa|MQd&D8CKZwtQ!P{95L_ z^-hjgyPIAVY~+~sui&P7^@cBf-@Nx|+~+gBlxlfc^zW9#5`KGYS>N%lhVPLB5@nz@H4(O|9JK}wthXc&GL^}Tked@MX$1!W`sI5`s|vLR$jI5`g-5ZyR^@{ zo|O1~FU4#I+rf;tm9rc6bbr-aaqr5m(|7l5)c3OX>X!d}^BC)`B#qUV&MPjh?%4F; zq0aHcKXXhznCCs-YNCGWKR7M#-oquV2+RfDthm$ieI|KpZ#|6%PcJbW^*%V`;=K3B zqnJ27u>MNnsi9K9q^O8HIZjq*4s_V{cTbGnJiminVcQhaGB#uf?AbqAyn`QXhVF$@ zO<$n?*SO7Kn7oo%w*G#0vw^_z`^^9N!)xOHH#o|#NprnmwxW@b&GGTtwpEQPWncEk zU*kM|ue#t)?T-01kALhGnu<-BCSy14!0=4o_0}C8g;p$AR1$SlbrvkqV_tQ5-)GAuU;h8vzGuPy`U!#G%AX&Z zZMr;kru<~5j-KgHcYk0#CcW`k=>vD0D(7PM-6eaCH0FN$u=EZ?n7-R1XJ_uqNwOsz zwo#cO&$r56Snz-P`^|f*a(*jBzptM2)L`qgEL)c+(x5U${&%R%4WR$u0Sho3WeNie z1A_>|WPcv9`n7!3&#{O7_|lBF zUb&!>%fXW*tCso%ObpOAFBA<)TIc3%AjT(WKKn*rqfy!2mo@eOB=`9-&%5{GuHVpc$ zX_I11BOj_{J=&=8^xGRgkndN|voAdj^!-+_?-`jyfF6Za3dmIeCr}L#IDknAp_iOe zl2n?RlM>*Kst>t3;6~EGz%ZY2G9#~OJ<`@ z5I__dPmpQ@T@P|~z*djY0b~UOHKiHqB^MN+YeKFWP%U}{(qn{84{{{|4Kt{1MZkPs zl3H96Up!fon_C4I2FS&LFp9(WvrhKlmW3-s&hJ7f3KcmfcXG?X6(VP9Q51#M9FtFS x%fl5Sr+id}+?#vKfOT9{@RMs3iaZ delta 2119 zcmeB{IV9~I;LXg!#Q*}_6HXfaE{L$@0J1@t4TuvB^%9G76%`zVeGPfJKx#$6vLLmO zO9DH@fIPX$ova%5Fqv0C8H422-}RUn7-q0CFbD%xIHl$#XXGXpWf$w`CT6FmW#*)= z4Y{3n%R!*FPxb%d5EZ7?TZ6aePg~*Cu*E|{`L>Nh=%${%ZMv^x%lG1mDHZ)7dJ6PKl|0kCBZzg`If*6 z7v10>$C(}>F5Xv;UU#T`9CLL_>I4ra$+jme3Y}FfPu<*C*7cTiV!=m?Su6{yukYWz z{#B@(s?r+ej)?ldN-J;eU2Lhoe_{FU)l-(J?vv|%zA&|Rlb@5B+hqlt#Xn1LdTh-~ zO_S8p%no%tWGt{X>)cL})@k8_0Zs-jHr*nn+;IyZdi*F>%G{I`A$z%lt#Ns7Yz+uV0q`>L0CGbjNX#G261j zp2EPm*^Ec;+e|1?UhsRx&6j2?)y$gYcCo)_Y0ka)nyJm^#>XPDH}R+S4hZx4Z9SN_ ze%-Uibzv8-ISI?2dtNBPNl1w-&~nIe@WRh`#(1?vCc`#*!0NWsq?hQ zj%N>B9xt?)=51P9U2A@I-p_c{#Al!I=eYzhX~_by5D-tc=aA4We)jYdvr*529vA1m zM;^t*=`kQQfzqY!g;GsFpyJn)CvgPU8$EdX=;^1AC0t<}HnAEyH^(+V`a5@zLk*H9 zk9rPc`QM>3H-VboF)}cS0%@egT%2E8l$=_umz%wI!r81A1A*i38}}R*Ie(X3Expr6PF1xq_ z$J>=M4`TgyG~YRpWb4z=sUZ*Y_E;8%QmV7R_)K@f6 z`1{=RhN=Ir+l#CIZk_XSzqR_sJj>OqAF1jtJ>wd>_f)`xMN^~iu+<$&o}aP)!L_;z zVpGi-_id3sIPCtDdK+`x}~0{Q1X{m){N(3vZR8RRDQjD0uqcdIS*YlZclODT zk>7R({j)8LkdXMj>~i`0cYD|EUVCfVVLk5iUTeb6>H4RC5}7*TV2bS5isTBh2^)*T z@0f?(Uc=kd_*K!n=@Z+W)Va$~7(a39R5-IPV%-|=z;7!Xb{(9t)_BLNjH@p+7UtG} zJO224!7cuZnxo;x{|l^S?99(!-gaH_539cRil4h5KAz9L^=;^^aObr@)_q~s>_6sq z=}_UpIg>?%nxX}YdFNaF6WjE!=ZNJirnL^6r)M13neuA0Jjlb45>cmt!x-pSIN%1d zkfJ}pTMSm}fyzVHSnlZ=z(nH5yiuZ(5ia#$(;cIbLnVD0K&k6Yo3}GsBjiBZE--h- z-3J=X!!%if`MoHziRU}R7L zQ9uAG(F43eda#t`Koy)|buc|T43ih~2&;gq1Z+h+NG-(hOoqufcx1r}LEb{opa_L0 zm?lf|%D_#8XG)+7Q2qh|h=~HslOuWM!3wcuM1;bL%#-Ip6@uJ|NTUp3FCrAqWtn`R zSE3#fUf5z7q@0040Em|W>o1h}Mh!GXgrf)AS)fL}@l|lLL7~)F5UX0+Uvn5kwIy*Z^JzUWVVm`h6of(E$Kxwbn2I diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/testFileWithNoExtension/testFileWithNoExtension.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/testFileWithNoExtension/testFileWithNoExtension.zip index 0a4dc3ae66220a69d11f8bab4f4c36ac058a04c4..959c126f72070160d33a6293b2d38d4587521845 100644 GIT binary patch delta 1332 zcmeB_ej_Cj;LXe;!oUH9Q!4U}8Q@^^ZYFC+8Fr44LnVD0j0_CdnHU&Q)o$dQ&BOuI zxS5GXgpmbg#AGSf00<+GbtZ(t&8AxaKKr(Tz~7kW|LxM8H`;Fg&XX`Hyt7t0*K5+D zUn@^sv%IL}Jx^u&+x_oGivp_jZ??&#Za#yjpn1R=?|KIwyJlG{3jd z>99=Eik2fRVp3De8e(?%xBM%pyWicam3mrm(i88qd^bLGsm4r?x$p2x)Q5ND%3anc zrwY}Vu;%qAlxBNvxnSV@$<^6+g)GNa_3khazB391S}Rv9w3V`1EFG`@^`XrTv6vat z4P*Zty2R@csQHKYp~;qW9c;@UD(%1Ra`E{K9(%T0eo^tOvvnuwSZ_OGxiT**y-|~I zSLxsS)RMbflLY5no21~sYl+;}O(GWApE@NEa(VjAsn@w>wAp#ngtl2t&aZ|3G&@)Q zUNz&r>}So)__OsnN>=a9fBxFI|Hr+fs?(}@5AIp~+NP|wv?-o#`5V)zHUVa>`H^gr zI;~a z?wd|-zWO$4Tb;-K7=dz;FFXO>>>QH}m#os*ZNvY9l-YAVRz0{~kZffiAmA!rBe=wSli7`DeKi`tzu()|_i&y|jz&xIyS>k! zsQmr+zi#i6{?8IC&NWZ03|;HGaBW%T1upO4mps#1ycwfrZa9DS|GN8D0bIw{C4D%t zmg(q)chmc_T7s&39YP9EvU{3&T{FI55aAN6Szq(y+>>sv>MxUi-u`^~kEFZs9<|6a znJxS?T^4^XDBOO~dPdZbPp>|zuZi06v2^NbAv?V(g;8up*;g*IyM?XJ;uV)Zs=D)B z>qb@^S9M7f#z{E^X@Zq0`jTlTY`Z1XHcfwXc8d<@%cILyb5`{njNJ7!@8^p5XL<{b z=QoRA)m~Rre|wUXS4X>W$0LzPt?T)k8dKNqJe0&yj z_J)N92#|^8NHs>?WW)flm@*ZruV-#|zq)&s9f#EvSMhR<19u$Q_ zEFz37AT5)%SOXx8I@XyGhBTXM{l&c54gxiNLjN~RmA&cFx<}cy>)@8sr!6OL1bqsT z-EbpZzWmF(j$8ZRGi}QWpSslJA?vicvv1D4eep%I{B_BLYqqXRnBF~w-_C8RJZY-9$GGEEeNtk3@t#RPxR*U%xp9_xN!2`?^m*TJ?q2Yw zeiz@VN#WOXFRyr(uvzD%=jAA7pJ@xCZr6uLU7cHR+ng{}h@~=^^=H_n3;o8A^L>h^ zaeF-%xjpNpZqS;N?}`y7W(V$DY`Ok_!p?IW$exs>ksc z*v{X-wEVh&M$HS!OnvDn&M9-~zHvf88s`6y_Jdvvm)b;=BJ{GR3*ZccPT!+DWB*1(y~cJDp*| z6+K(#Ig7iX+wC8XSKq(8uYN)5+Ez_AkL8Y<-(DXIZjP9lAkdjL&1S-*1y7imW$T+u zH*G!E{3UE%wy?p8Y5U*3pZ48i*5h=uUlrS;6ytDYi_`ZvT$E zSN}|m+I~;u8|TlHhRS<=K0n$STvn;SWR<|BsObCj_Lpn4 z1vM&)+uK>^5G3^WX+t)M7BD^)1D1f~;Kv`k*bEhX~>=n_4!3M>j9 za7!`rO#aQS6#^<(9(I5B&jgy=1;lJXi~tF&3=Acy#U*;l=yo6{Q(=S#AnPydW%u=MdLMmqQLs5fsB)CfoC>v$=!A0|5B}BX9r! diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/testMacroSupportInBuildDefinitions/testMacroSupportInBuildDefinitions.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/testMacroSupportInBuildDefinitions/testMacroSupportInBuildDefinitions.zip index 1911c0bd888eb37c634b4873de5b75f63b09fc93..18205095c1832441d098cadf4c61f0dfd45e0956 100644 GIT binary patch delta 1723 zcmaDV_EbzFz?+#xgn>NAq%#LngWMB|rWnjRibn|{jVUSwB zpm$yjK(+o%xYbU6!Su79onvnCnr|{P&Yfr`kEIZB0#kujN3F}psZ7BUUJ4{Z5Dxg@9f(S0(QqA z{5Lqt<{hxQ+)<(IZGf|^bhPCYk+9v$)vvFv+huL^<$k$}c0{J<3B_uuXJ2j8+!vp( zJ$#TO&2(qbglUIn*k5Lj`qC8OxR6(ELqUQpqn2;{j^CF*wl}ZbcIgV2qUXM;k6Lus zZJRagQ6BG0-5;AeXRb1Qz_mcxsi1!AbcqE*^H#p@V!gqfaa-(jlr-xhWsSJ>$TNbr z-xln8xy0t{gN{!)Spt4d8PH}eSzM^4sqcIePXBI+V$-}w)dZ&rOblRT@}G{ zm$~MuES*sr8qAO=x?|R@9Us=^EMZ|OI#+P|rsuU6IS*X?pF~#Z79IAB(LL2-uWR#fIa&si+AvYlZx(zQcYiALU@fQsZ5^1ro`wrc{iIvJ>Qu} zwKZoxG(EWSP^aO-#CcXhi=>Y~{c}vx*Inb`Qnx)0YZ9-qXo$|O`TgPloTZib!k+GJ zdd+LmeW=L2FzC%ElWG;|Ytq{)gT;OKF0G&Yq&bc8b=689u1j+Jy4W_{l5AW(we@6V zlbqusQMa%6${d>Kg!+o4KdpLuQm@YPH)DW0(ARCvm!g*eU0aMNt4uCrm#xoYG8C{a zKUhB_>8SI{drMijYH{c`eT(3@`R2v4yJvMyy1c$$zA1_I{3TVL+2;Ai@ArCcufDx} za%rN_%&fE5UaYdRdwXHw^&Zxo+*alpf)+^!4t?6YA^+a~&;XHySYgYCGS+}6->P4) zWYaTLFbGtgVk;@=rN=QrYl3^U=!Wa}>R;_S#4tB!W7NvCze<_=^*_wyWjpL(x-D#* z%Ye*W(_MJUHMRB^BMr4#BTUf97zkaI-J=RrQKQ7t!Wa^j6Qnd>cpO*A$x!WmN zg)Tb&?fUm4caJPnJnwDpdn>JI+UB)ss`sMa&0iGrJ1p>2!a840#b>QwFE#uTd?gVv zVcE*Q`UlBH>RNt%Yi~O)c+uN1?cjvu{LdOvRyXT+zf_f0p0K1^^O0Yfxm&Q%m*we8 zPrl}moA-PAtsu9bx?2TxQncia?s{J|xgfr2&oSMKz4miA2q-R`l3m63WEJxl|C9fi zKnc*>VD9#KU^EypgAyPklL)ZHft8#)1CdHfPGEeY0=?vvlBCkioD_6@$b}|1ik|J0 z`#HtxVdf*3m>ekTJ^+hby@I0rtkmQZbkmVbMo?*r0Q|sAgj}|w>x5=D5pZq;6`cqW zJK3B|P6g&LPaz_3pPhb;j0S7SE- delta 1803 zcmaDV_EbzFz?+#xgn@y9gWukp@1v!fdr85jguH%d%o6hoHc3wr0p0F?4)+I*f- z7*%d=@tSWhfrflxoXo-ev!0oS3&>$$NJ0i#t^Xy+`oG-#Q$k^lvuNQO~VtxM>qcZwyc>oPnqZVIsw})IsI{66Ao4VxwNqK z^|>YcG99ialykU!-Q~nAd-;i5$rH~!M~`@&>Wc*lQjM1_JnR3Jt@zmV{)+7O-`avd z)28WNt1S9o@jv0$ByQi17fg#z-H*7LJb#7izs8RRIcvmZOP7BRm2WWMK&Fey8!wf57#*Y#7jaa$JmuH^Rq(YP`7*NvE(1zgSNOVytgn8oh5)vr4n z%T(?k@m8eA=Gxm+Rjw@6Qgc^xE8Pk4{i2QW0`&7+O&(mqx4s{J$_VDciQY|R`8RH%aixbj=6Z;a`pV1 zr?Z*1Xni>IrOUd?L1XSTi~0Xg#9ey%%XH`8d2e?Asz;4_-3z6fe!wVyJvo^z(9r0? z(??G~eJtS$+pvk%(78Fb`O)9GdmL&QP&KtRUy5D^)Kttk`3sv8W9wvbc7=Mo8ArcY z@YFaK&tH@=0xP*c;*{x^7Y!k(nYNX*&{XAO*dCc-#x2ya>>^E_bJ(HEA-lA4$Yo^raJ%9YuWOrk^FK> z!HaK7#a_R?+Pvh2X)>pF^kaczEPWCiw$y07QC@HJT4ai9#C12m1+knWJFVB-m>v*i zV^Lexx=Bsh=_D&-5NlV)YoTkm>Z4L zvr^NQk}n$qF5kTTWVZR9XQ$XyqqUD6SoQVL{}AcZQyqHE=3VL9Gih1S;&PKUbMgX2 zPe{8g*ZOiJw$|@XYEJYgo8rYP1v>ebw>iU;Haz~Pp|$0`$WjHhTOk5Tfl>OrC-N88 zcQ&$S-mc=dQ|n%olzw}cIfuwz!3#zbMQ?HiU7hFs-9CGB%44=~h4Yur`TXXIoUf~a z#M`H8hY#(NmB})eeARv>FF|W@~|GBS%5fGAM`$WZ{5F1%a;-i%Bl zVCCqgAp-*^&=3${WKfvg%PCP0D=`tpA_D`cd;I2dMvkzEa19|tE(MnfT&!CsDAOj%waZE1cl7o8)o*9Ai zq98>;08#g!6~%)5B#^g?^>VY(y@tq|=teZKp%_t|Us{x$3N~UgA2+)SEKm_S2NHV- sH$<{ee#kBs0I?BQRD<0Nb@Y2+*doV!fHy194WRhsWKaSIv@SSe0mgxdTmS$7 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/twoFileSO/twoFileSO.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/twoFileSO/twoFileSO.zip index db19d13728c38951fc6ef05acf4e6dd5f933fd33..ac24de644a1169241dea6671a3bad7d24109c4a4 100644 GIT binary patch delta 1920 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 VOf0~gl?^1w1%!UU8u%&Li2#P}xRL+> diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedCommandLineGeneratorTest.java b/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedCommandLineGeneratorTest.java index 520301c8f04..56485305269 100644 --- a/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedCommandLineGeneratorTest.java +++ b/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedCommandLineGeneratorTest.java @@ -45,12 +45,12 @@ public class ManagedCommandLineGeneratorTest extends TestCase { private static String INPUTS_VAL = "[inputs]"; private static String[] INPUTS_ARRAY_VAL = INPUTS_VAL.split( "\\s" ); private static String[] commandLineEtalonesForPatterns = { - COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + OUTPUT_VAL + " " + INPUTS_VAL, + COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + "'" + OUTPUT_VAL + "'" + " " + "'" + INPUTS_VAL + "'", COMMAND_VAL, COMMAND_VAL + " " + FLAGS_VAL, COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL, COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL, - COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + OUTPUT_VAL, - COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + OUTPUT_VAL + " " + INPUTS_VAL, - COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + OUTPUT_VAL + " " + "${WRONG_VAR_NAME}" }; + COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + "'" + OUTPUT_VAL + "'", + COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + "'" + OUTPUT_VAL + "'" + " " + "'" + INPUTS_VAL + "'", + COMMAND_VAL + " " + FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + "'" + OUTPUT_VAL + "'" + " " + "${WRONG_VAR_NAME}" }; private static String[] commandLineEtalonesForParameters = { FLAGS_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + OUTPUT_VAL + " " + INPUTS_VAL, COMMAND_VAL + " " + OUTPUT_FLAG_VAL + OUTPUT_PREFIX_VAL + OUTPUT_VAL + " " + INPUTS_VAL, diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java b/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java index 4ebf96f7439..9868711fccd 100644 --- a/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java +++ b/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java @@ -80,6 +80,7 @@ public class ManagedProject30MakefileTests extends TestCase { suite.addTest(new ManagedProject30MakefileTests("CDTFortranTest2")); suite.addTest(new ManagedProject30MakefileTests("TestATO")); suite.addTest(new ManagedProject30MakefileTests("testMacroSupportInBuildDefinitions")); + suite.addTest(new ManagedProject30MakefileTests("testSpaces")); return suite; } @@ -429,6 +430,7 @@ public class ManagedProject30MakefileTests extends TestCase { buildProjects(projects, makefiles); } + /* (non-Javadoc) * tests 3.0 style tool integration: create pre-build and post-build steps and verify that * the proper commands are generated in the makefile which is created by the managedbuild system @@ -596,5 +598,18 @@ public class ManagedProject30MakefileTests extends TestCase { buildProjects(projects, makefiles); } - + /** + * (non-Javadoc) + * tests managed build system with a project which has resources with spaces in their paths + */ + public void testSpaces() + { + IPath[] makefiles = { + Path.fromOSString("makefile"), + Path.fromOSString("objects.mk"), + Path.fromOSString("sources.mk"), + Path.fromOSString("subdir.mk")}; + IProject[] projects = createProjects("test with spaces", null, null, true); + buildProjects(projects, makefiles); + } } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java index cb97f812614..dccf2b1d1fd 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedBuildInfo.java @@ -720,11 +720,36 @@ public class ManagedBuildInfo implements IManagedBuildInfo, IScannerInfo { String cmd = tool.getToolCommand(); //try to resolve the build macros in the tool command try{ - String resolvedCommand = ManagedBuildManager.getBuildMacroProvider().resolveValueToMakefileFormat(cmd, - "", //$NON-NLS-1$ - " ", //$NON-NLS-1$ - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(inputLocation,outputLocation,null,getDefaultConfiguration().getToolChain())); + String resolvedCommand = null; + + if ((inputLocation != null && inputLocation.toString().indexOf(" ") != -1) || //$NON-NLS-1$ + (outputLocation != null && outputLocation.toString().indexOf(" ") != -1) ) //$NON-NLS-1$ + { + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider().resolveValue( + cmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(inputLocation, + outputLocation, null, + getDefaultConfiguration() + .getToolChain())); + } + + else { + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + cmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(inputLocation, + outputLocation, null, + getDefaultConfiguration() + .getToolChain())); + } if((resolvedCommand = resolvedCommand.trim()).length() > 0) cmd = resolvedCommand; diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedCommandLineGenerator.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedCommandLineGenerator.java index 23c26847076..2e17549baf6 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedCommandLineGenerator.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ManagedCommandLineGenerator.java @@ -27,6 +27,7 @@ public class ManagedCommandLineGenerator implements public final String OUT_MACRO = "$@"; //$NON-NLS-1$ public final String SEPARATOR = "/"; //$NON-NLS-1$ public final String SINGLE_QUOTE = "'"; //$NON-NLS-1$ + public final String DOUBLE_QUOTE = "\""; //$NON-NLS-1$ public final String TAB = "\t"; //$NON-NLS-1$ public final String WHITESPACE = " "; //$NON-NLS-1$ public final String WILDCARD = "%"; //$NON-NLS-1$ @@ -89,8 +90,38 @@ public class ManagedCommandLineGenerator implements else if( varName.compareToIgnoreCase( FLAGS_PRM_NAME ) == 0 ) sb.append( stringArrayToString( flags ) ); else if( varName.compareToIgnoreCase( OUTPUT_FLAG_PRM_NAME ) == 0 ) sb.append( outputFlag.trim() ); else if( varName.compareToIgnoreCase( OUTPUT_PREFIX_PRM_NAME ) == 0 ) sb.append( outputPrefix.trim() ); - else if( varName.compareToIgnoreCase( OUTPUT_PRM_NAME ) == 0 ) sb.append( outputName.trim() ); - else if( varName.compareToIgnoreCase( INPUTS_PRM_NAME ) == 0 ) sb.append( stringArrayToString( inputResources ) ); + else if( varName.compareToIgnoreCase( OUTPUT_PRM_NAME ) == 0 ) + { + StringBuffer tempBuffer = new StringBuffer(""); + + if(!outputName.equals("")) //$NON-NLS-1$ + { +// if the output name isn't a variable then quote it + if(outputName.indexOf("$(") != 0) //$NON-NLS-1$ + tempBuffer.append( SINGLE_QUOTE + outputName + SINGLE_QUOTE); + else + tempBuffer.append(outputName); + } + + sb.append(tempBuffer.toString().trim()); + } + else if( varName.compareToIgnoreCase( INPUTS_PRM_NAME ) == 0 ){ + StringBuffer tempBuffer = new StringBuffer(""); //$NON-NLS-1$ + for(int k = 0; k < inputResources.length; k++) + { + if(!inputResources[k].equals("")) //$NON-NLS-1$ + { + // if the input resource isn't a variable then quote it + if(inputResources[k].indexOf("$(") != 0) //$NON-NLS-1$ + tempBuffer.append(SINGLE_QUOTE + inputResources[k] + SINGLE_QUOTE + WHITESPACE); //$NON-NLS-1$ //$NON-NLS-2$ + else + tempBuffer.append(inputResources[k] + WHITESPACE); + } + } + + sb.append(tempBuffer.toString().trim()); + + } else sb.append( VAR_FIRST_CHAR + VAR_SECOND_CHAR + varName + VAR_FINAL_CHAR ); } catch( Exception ex ) { // do nothing for a while diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedBuilderMakefileGenerator.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedBuilderMakefileGenerator.java index b74b8353b24..f44480a861e 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedBuilderMakefileGenerator.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/IManagedBuilderMakefileGenerator.java @@ -52,7 +52,7 @@ public interface IManagedBuilderMakefileGenerator { public final String NEWLINE = System.getProperty("line.separator"); //$NON-NLS-1$ public final String OBJECTS_MAKFILE = "objects.mk"; //$NON-NLS-1$ public final String OUT_MACRO = "$@"; //$NON-NLS-1$ - public final String ROOT = "$(ROOT)"; //$NON-NLS-1$ + public final String ROOT = ".."; //$NON-NLS-1$ public final String SEPARATOR = "/"; //$NON-NLS-1$ public final String SINGLE_QUOTE = "'"; //$NON-NLS-1$ public final String SRCSFILE_NAME = "sources.mk"; //$NON-NLS-1$ diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator.java index 8bb37d4370f..fa13da2ac47 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/DefaultGCCDependencyCalculator.java @@ -86,11 +86,11 @@ public class DefaultGCCDependencyCalculator implements IManagedDependencyGenerat // Calculate the dependency rule // /$(@:%.=%.d) - String depRule = "$(@:%." + //$NON-NLS-1$ + String depRule = "'$(@:%." + //$NON-NLS-1$ outputExtension + "=%." + //$NON-NLS-1$ IManagedBuilderMakefileGenerator.DEP_EXT + - ")"; //$NON-NLS-1$ + ")'"; //$NON-NLS-1$ // Add the rule that will actually create the right format for the dep buffer.append(IManagedBuilderMakefileGenerator.TAB + @@ -122,12 +122,38 @@ public class DefaultGCCDependencyCalculator implements IManagedDependencyGenerat ITool tool = tools[0]; String cmd = tool.getToolCommand(); //try to resolve the build macros in the tool command - try{ - String resolvedCommand = ManagedBuildManager.getBuildMacroProvider().resolveValueToMakefileFormat(cmd, - "", //$NON-NLS-1$ - " ", //$NON-NLS-1$ - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(resource.getLocation(),null,null,info.getDefaultConfiguration().getToolChain())); + try { + String resolvedCommand = null; + + // does the resource have spaces in its name? + if (resource.getProjectRelativePath().toString().indexOf(" ") != -1) { + // use fully qualified strings + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + cmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(resource.getLocation(), + null, null, info + .getDefaultConfiguration() + .getToolChain())); + } else { + // use builder variables + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + cmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(resource.getLocation(), + null, null, info + .getDefaultConfiguration() + .getToolChain())); + } + if((resolvedCommand = resolvedCommand.trim()).length() > 0) cmd = resolvedCommand; @@ -155,12 +181,37 @@ public class DefaultGCCDependencyCalculator implements IManagedDependencyGenerat buildCmd = cmdLInfo.getCommandLine(); // resolve any remaining macros in the command after it has been generated - try{ - String resolvedCommand = ManagedBuildManager.getBuildMacroProvider().resolveValueToMakefileFormat(buildCmd, - EMPTY_STRING, - WHITESPACE, - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(resource.getLocation(), null, null, info.getDefaultConfiguration().getToolChain())); + try { + String resolvedCommand = null; + + // does the resource have spaces in its name? + if (resource.getProjectRelativePath().toString().indexOf(" ") != -1) { + // use fully qualified strings + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + buildCmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(resource.getLocation(), + null, null, info + .getDefaultConfiguration() + .getToolChain())); + } else { + // use builder variables + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + buildCmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(resource.getLocation(), + null, null, info + .getDefaultConfiguration() + .getToolChain())); + } if((resolvedCommand = resolvedCommand.trim()).length() > 0) buildCmd = resolvedCommand; @@ -201,17 +252,37 @@ public class DefaultGCCDependencyCalculator implements IManagedDependencyGenerat // resolve any remaining macros in the command after it has been // generated - try { - String resolvedCommand = ManagedBuildManager - .getBuildMacroProvider().resolveValueToMakefileFormat( - buildCmd, - EMPTY_STRING, - WHITESPACE, - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(resource.getLocation(), - null, null, info - .getDefaultConfiguration() - .getToolChain())); + try { + String resolvedCommand = null; + + // does the resource have spaces in its name? + if (resource.getProjectRelativePath().toString().indexOf(" ") != -1) { + // use fully qualified strings + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + buildCmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(resource.getLocation(), + null, null, info + .getDefaultConfiguration() + .getToolChain())); + } else { + // use builder variables + resolvedCommand = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + buildCmd, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(resource.getLocation(), + null, null, info + .getDefaultConfiguration() + .getToolChain())); + } if ((resolvedCommand = resolvedCommand.trim()).length() > 0) buildCmd = resolvedCommand; @@ -223,8 +294,7 @@ public class DefaultGCCDependencyCalculator implements IManagedDependencyGenerat buildCmd + IManagedBuilderMakefileGenerator.WHITESPACE + ">>" + //$NON-NLS-1$ - IManagedBuilderMakefileGenerator.WHITESPACE + - depRule); + IManagedBuilderMakefileGenerator.WHITESPACE + depRule ); return buffer.toString(); } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuLinkOutputNameProvider.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuLinkOutputNameProvider.java index 48ddcbd7d40..45666c9e048 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuLinkOutputNameProvider.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuLinkOutputNameProvider.java @@ -118,8 +118,32 @@ public class GnuLinkOutputNameProvider implements IManagedOutputNameProvider { } if (config != null) { - + + boolean explicitRuleRequired = false; + + // if any input files have spaces in the name, then we must + // not use builder variables + for(int k = 0; k < primaryInputNames.length; k++) + { + if(primaryInputNames[k].toString().indexOf(" ") != -1) //$NON-NLS-1$ + explicitRuleRequired = true; + } + try { + + if(explicitRuleRequired) + { + outputPrefix = ManagedBuildManager + .getBuildMacroProvider() + .resolveValue( + outputPrefix, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_CONFIGURATION, + config); + } + + else { outputPrefix = ManagedBuildManager .getBuildMacroProvider() .resolveValueToMakefileFormat( @@ -128,6 +152,7 @@ public class GnuLinkOutputNameProvider implements IManagedOutputNameProvider { " ", //$NON-NLS-1$ IBuildMacroProvider.CONTEXT_CONFIGURATION, config); + } } catch (BuildMacroException e) { diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java index 631f1229090..8633f439642 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java @@ -554,6 +554,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { new String(), null); // Add a new status for each of the bad folders + // TODO: fix error message iter = getInvalidDirList().iterator(); while (iter.hasNext()) { status.add(new Status ( @@ -714,6 +715,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { new String(), null); // Add a new status for each of the bad folders + // TODO: fix error message iter = getInvalidDirList().iterator(); while (iter.hasNext()) { status.add(new Status ( @@ -1101,11 +1103,11 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { StringBuffer buffer = new StringBuffer(); // Add the ROOT macro - buffer.append("ROOT := .." + NEWLINE); //$NON-NLS-1$ - buffer.append(NEWLINE); + //buffer.append("ROOT := .." + NEWLINE); //$NON-NLS-1$ + //buffer.append(NEWLINE); // include makefile.init supplementary makefile - buffer.append("-include $(ROOT)" + SEPARATOR + MAKEFILE_INIT + NEWLINE); //$NON-NLS-1$ + buffer.append("-include " + ROOT + SEPARATOR + MAKEFILE_INIT + NEWLINE); //$NON-NLS-1$ buffer.append(NEWLINE); // Get the clean command from the build model @@ -1116,14 +1118,27 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { // Now add the source providers buffer.append(COMMENT_SYMBOL + WHITESPACE + ManagedMakeMessages.getResourceString(SRC_LISTS) + NEWLINE); buffer.append("-include sources.mk" + NEWLINE); //$NON-NLS-1$ - buffer.append("-include $(SUBDIRS:%=%/subdir.mk)" + NEWLINE); //$NON-NLS-1$ + + // add an include for each subdir + buffer.append("-include subdir.mk" + NEWLINE); //$NON-NLS-1$ + + Iterator subDirIterator = getSubdirList().iterator(); + while(subDirIterator.hasNext()) + { + IContainer subDir = (IContainer)subDirIterator.next(); + IPath projectRelativePath = subDir.getProjectRelativePath(); + + if(!projectRelativePath.toString().equals("")) //$NON-NLS-1$ + buffer.append("-include " + escapeWhitespaces(projectRelativePath.toString()) + SEPARATOR + "subdir.mk"+ NEWLINE); //$NON-NLS-1$ + } + buffer.append("-include objects.mk" + NEWLINE); //$NON-NLS-1$ // Include DEPS makefiles if non-empty buffer.append("ifneq ($(strip $(" + DEPS_MACRO + ")),)" + NEWLINE); //$NON-NLS-1$ //$NON-NLS-2$ buffer.append("-include $(" + DEPS_MACRO + ")" + NEWLINE); //$NON-NLS-1$ //$NON-NLS-2$ buffer.append("endif" + NEWLINE + NEWLINE); //$NON-NLS-1$ // Include makefile.defs supplemental makefile - buffer.append("-include $(ROOT)" + SEPARATOR + MAKEFILE_DEFS + NEWLINE); //$NON-NLS-1$ + buffer.append("-include " + ROOT + SEPARATOR + MAKEFILE_DEFS + NEWLINE); //$NON-NLS-1$ return (buffer.append(NEWLINE)); @@ -1364,7 +1379,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { buffer.append(NEWLINE); // Include makefile.targets supplemental makefile - buffer.append("-include $(ROOT)" + SEPARATOR + MAKEFILE_TARGETS + NEWLINE); //$NON-NLS-1$ + buffer.append("-include " + ROOT + SEPARATOR + MAKEFILE_TARGETS + NEWLINE); //$NON-NLS-1$ return buffer; } @@ -1771,7 +1786,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { buffer.append(DOT + WHITESPACE + LINEBREAK); } else { IPath path = container.getProjectRelativePath(); - buffer.append(path.toString() + WHITESPACE + LINEBREAK); + buffer.append(escapeWhitespaces(path.toString()) + WHITESPACE + LINEBREAK); } } @@ -1804,8 +1819,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { IPath moduleRelativePath = module.getProjectRelativePath(); String relativePath = moduleRelativePath.toString(); relativePath += relativePath.length() == 0 ? "" : SEPARATOR; //$NON-NLS-1$ - relativePath = escapeWhitespaces(relativePath); - + // For build macros in the configuration, create a map which will map them // to a string which holds its list of sources. LinkedHashMap buildVarToRuleStringMap = new LinkedHashMap(); @@ -1825,8 +1839,9 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { String macroName = (String)entry.getKey(); addMacroAdditionPrefix(buildVarToRuleStringMap, macroName, "./" + relativePath, false); //$NON-NLS-1$ } + // Create an entry for the DEPS macro - addMacroAdditionPrefix(buildVarToRuleStringMap, DEPS_MACRO, "./" + relativePath, true); //$NON-NLS-1$ + addMacroAdditionPrefix(buildVarToRuleStringMap, DEPS_MACRO, "./" + relativePath, false); //$NON-NLS-1$ // String buffers StringBuffer buffer = new StringBuffer(); // Return buffer @@ -1908,7 +1923,11 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { // If the rule generates a dependency file, add the file to the DEPS variable if (generatedDepFile.length() > 0) { - addMacroAdditionFile(buildVarToRuleStringMap, DEPS_MACRO, generatedDepFile.toString()); + addMacroAdditionFile( + buildVarToRuleStringMap, + DEPS_MACRO, + "./" + (relativePath.equals("") ? relativePath : relativePath + "/") //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + + generatedDepFile.toString()); } // If the generated outputs of this tool are input to another tool, @@ -2022,7 +2041,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { * * This is an example of a pattern rule: * - * /%.: $(ROOT)//%. + * /%.: ..//%. * @echo 'Building file: $<' * @echo 'Invoking tool xxx' * @echo $@ $< @@ -2035,7 +2054,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { * Note that the macros all come from the build model and are * resolved to a real command before writing to the module * makefile, so a real command might look something like: - * source1/%.o: $(ROOT)/source1/%.cpp + * source1/%.o: ../source1/%.cpp * @echo 'Building file: $<' * @echo 'Invoking tool xxx' * @echo g++ -g -O2 -c -I/cygdrive/c/eclipse/workspace/Project/headers -o$@ $< @@ -2098,13 +2117,13 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { enumeratedOutputs.addAll(enumeratedSecondaryOutputs); String primaryOutputName = null; if (enumeratedPrimaryOutputs.size() > 0) { - primaryOutputName = ((IPath)enumeratedPrimaryOutputs.get(0)).toString(); + primaryOutputName = escapeWhitespaces(((IPath)enumeratedPrimaryOutputs.get(0)).toString()); } else { - primaryOutputName = relativePath + fileName + OptDotExt; + primaryOutputName = escapeWhitespaces(relativePath + fileName + OptDotExt); } String otherPrimaryOutputs = EMPTY_STRING; for (int i=1; i 0 || - MacroResolver.getReferencedExplitFileMacros(tool.getToolCommand(),IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(sourceLocation, outputLocation, null, config.getToolChain())).length > 0; + // are referenced, or if the resource contains special characters in its path + boolean needExplicitRuleForFile = containsSpecialCharacters(sourceLocation.toString()) || //$NON-NLS-1$ + MacroResolver.getReferencedExplitFileMacros(tool).length > 0 + || MacroResolver.getReferencedExplitFileMacros(tool + .getToolCommand(), IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, outputLocation, + null, config.getToolChain())).length > 0; //get and resolve command String cmd = tool.getToolCommand(); - try{ - String resolvedCommand = ManagedBuildManager.getBuildMacroProvider().resolveValueToMakefileFormat(cmd, - EMPTY_STRING, - WHITESPACE, - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(sourceLocation, outputLocation, null, info.getDefaultConfiguration().getToolChain())); - if((resolvedCommand = resolvedCommand.trim()).length() > 0) - cmd = resolvedCommand; - - } catch (BuildMacroException e){ - } + + try { + String resolvedCommand = null; + if (!needExplicitRuleForFile) { + resolvedCommand = ManagedBuildManager.getBuildMacroProvider() + .resolveValueToMakefileFormat( + cmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, info + .getDefaultConfiguration() + .getToolChain())); + } else { + // if we need an explicit rule then don't use any builder + // variables, resolve everything + // to explicit strings + resolvedCommand = ManagedBuildManager.getBuildMacroProvider() + .resolveValue( + cmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, info + .getDefaultConfiguration() + .getToolChain())); + } + if ((resolvedCommand = resolvedCommand.trim()).length() > 0) + cmd = resolvedCommand; + + } catch (BuildMacroException e) { + } + + String defaultOutputName = EMPTY_STRING; String primaryDependencyName = EMPTY_STRING; String home = (generatedSource)? DOT : ROOT; @@ -2155,17 +2202,17 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { resourcePath = sourceLocation.toString(); // Need a hardcoded rule, not a pattern rule, as a linked file // can reside in any path - defaultOutputName = relativePath + fileName + OptDotExt; - primaryDependencyName = resourcePath; + defaultOutputName = escapeWhitespaces(relativePath + fileName + OptDotExt); + primaryDependencyName = escapeWhitespaces(resourcePath); patternRule = false; } else { // use the relative path (not really needed to store per se but in the future someone may want this) resourcePath = relativePath; // The rule and command to add to the makefile - if( resConfig != null || fileExplicitMacrosReferenced) { + if( resConfig != null || needExplicitRuleForFile) { // Need a hardcoded rule, not a pattern rule - defaultOutputName = resourcePath + fileName + OptDotExt; - primaryDependencyName = home + SEPARATOR + resourcePath + fileName + DOT + inputExtension; + defaultOutputName = escapeWhitespaces(resourcePath + fileName + OptDotExt); + primaryDependencyName = escapeWhitespaces(home + SEPARATOR + resourcePath + fileName + DOT + inputExtension); patternRule = false; } else { defaultOutputName = relativePath + WILDCARD + OptDotExt; @@ -2186,7 +2233,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { } if (!patternRule) { // Need to reset the primary dependency to be a filename rather than a pattern - primaryDependencyName = home + SEPARATOR + resourcePath + fileName + DOT + inputExtension; + primaryDependencyName = escapeWhitespaces(home + SEPARATOR + resourcePath + fileName + DOT + inputExtension); } } @@ -2230,7 +2277,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { } } } - buildRule += WHITESPACE + addlPath.toString(); + buildRule += WHITESPACE + escapeWhitespaces(addlPath.toString()); } // No duplicates in a makefile. If we already have this rule, don't add it or the commands to build the file @@ -2251,7 +2298,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { String outflag = null; String outputPrefix = null; - if( resConfig != null || fileExplicitMacrosReferenced) { + if( resConfig != null || needExplicitRuleForFile) { buffer.append(TAB + AT + ECHO + WHITESPACE + SINGLE_QUOTE + tool.getAnnouncement() + SINGLE_QUOTE + NEWLINE); outflag = tool.getOutputFlag(); outputPrefix = tool.getOutputPrefix(); @@ -2289,23 +2336,40 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { // resolve any remaining macros in the command after it has been // generated - try { - String resolvedCommand = ManagedBuildManager - .getBuildMacroProvider() - .resolveValueToMakefileFormat( - buildCmd, - EMPTY_STRING, - WHITESPACE, - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(sourceLocation, - outputLocation, null, info - .getDefaultConfiguration() - .getToolChain())); - if ((resolvedCommand = resolvedCommand.trim()).length() > 0) - buildCmd = resolvedCommand; + try { + String resolvedCommand = null; + if (!needExplicitRuleForFile) { + resolvedCommand = ManagedBuildManager.getBuildMacroProvider() + .resolveValueToMakefileFormat( + buildCmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, info + .getDefaultConfiguration() + .getToolChain())); + } else { + // if we need an explicit rule then don't use any builder + // variables, resolve everything + // to explicit strings + resolvedCommand = ManagedBuildManager.getBuildMacroProvider() + .resolveValue( + buildCmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, info + .getDefaultConfiguration() + .getToolChain())); + } - } catch (BuildMacroException e) { - } + if ((resolvedCommand = resolvedCommand.trim()).length() > 0) + buildCmd = resolvedCommand; + + } catch (BuildMacroException e) { + } buffer.append(TAB + AT + ECHO + WHITESPACE + buildCmd + NEWLINE); @@ -2349,23 +2413,40 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { // resolve any remaining macros in the command after it has been // generated - try { - String resolvedCommand = ManagedBuildManager - .getBuildMacroProvider() - .resolveValueToMakefileFormat( - buildCmd, - EMPTY_STRING, - WHITESPACE, - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(sourceLocation, - outputLocation, null, info - .getDefaultConfiguration() - .getToolChain())); - if ((resolvedCommand = resolvedCommand.trim()).length() > 0) - buildCmd = resolvedCommand; + try { + String resolvedCommand = null; + if (!needExplicitRuleForFile) { + resolvedCommand = ManagedBuildManager.getBuildMacroProvider() + .resolveValueToMakefileFormat( + buildCmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, info + .getDefaultConfiguration() + .getToolChain())); + } else { + // if we need an explicit rule then don't use any builder + // variables, resolve everything + // to explicit strings + resolvedCommand = ManagedBuildManager.getBuildMacroProvider() + .resolveValue( + buildCmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, info + .getDefaultConfiguration() + .getToolChain())); + } - } catch (BuildMacroException e) { - } + if ((resolvedCommand = resolvedCommand.trim()).length() > 0) + buildCmd = resolvedCommand; + + } catch (BuildMacroException e) { + } buffer.append(TAB + AT + ECHO + WHITESPACE + buildCmd + NEWLINE); @@ -2384,20 +2465,34 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { // Resolve any macros in the dep command after it has been generated. // Note: do not trim the result because it will strip out necessary tab characters. try { - depCmd = ManagedBuildManager - .getBuildMacroProvider() - .resolveValueToMakefileFormat( - depCmd, - EMPTY_STRING, - WHITESPACE, - IBuildMacroProvider.CONTEXT_FILE, - new FileContextData(sourceLocation, - outputLocation, null, info - .getDefaultConfiguration() - .getToolChain())); - - } catch (BuildMacroException e) { - } + if (!needExplicitRuleForFile) { + depCmd = ManagedBuildManager.getBuildMacroProvider() + .resolveValueToMakefileFormat( + depCmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, + info.getDefaultConfiguration() + .getToolChain())); + } + + else { + depCmd = ManagedBuildManager.getBuildMacroProvider() + .resolveValue( + depCmd, + EMPTY_STRING, + WHITESPACE, + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData(sourceLocation, + outputLocation, null, + info.getDefaultConfiguration() + .getToolChain())); + } + + } catch (BuildMacroException e) { + } buffer.append(depCmd); } @@ -2408,7 +2503,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { buffer.append(TAB + AT + ECHO + WHITESPACE + SINGLE_QUOTE + WHITESPACE + SINGLE_QUOTE + NEWLINE + NEWLINE); } - // Determine if there are calculated dependencies + // Determine if there are calculated dependencies String calculatedDependencies = null; boolean addedDepLines = false; String depLine; @@ -2659,6 +2754,19 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { if (config != null) { try { + + if(containsSpecialCharacters(sourceLocation.toString())) + { + outputPrefix = ManagedBuildManager + .getBuildMacroProvider() + .resolveValue( + outputPrefix, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_CONFIGURATION, + config); + } + else { outputPrefix = ManagedBuildManager .getBuildMacroProvider() .resolveValueToMakefileFormat( @@ -2667,6 +2775,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { " ", //$NON-NLS-1$ IBuildMacroProvider.CONTEXT_CONFIGURATION, config); + } } catch (BuildMacroException e) { @@ -2705,14 +2814,42 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { } for (int j=0; j 0) outputName = resolved; } catch (BuildMacroException e){ @@ -2740,18 +2877,44 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { IPath[] outPaths = nameProvider.getOutputNames(tool, inPaths); for (int j=0; j 0) - outPath = Path.fromOSString(resolved); - } catch (BuildMacroException e){ + String outputName = outPaths[j].toString(); + + + // try to resolve the build macros in the output names + try { + + String resolved = null; + + if (containsSpecialCharacters(sourceLocation.toString())) + { + resolved = ManagedBuildManager + .getBuildMacroProvider() + .resolveValue( + outputName, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData( + sourceLocation, null, + option, tool)); + } + + else { + resolved = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + outputName, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_FILE, + new FileContextData( + sourceLocation, null, + option, tool)); + } + + if ((resolved = resolved.trim()).length() > 0) + outputName = resolved; + } catch (BuildMacroException e) { } // If only a file name is specified, add the relative path of this output directory @@ -2984,6 +3147,11 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { buffer.append(NEWLINE); } + protected boolean containsSpecialCharacters(String path) + { + return path.matches(".*(\\s|[\\{\\}\\(\\)\\$\\@%=;]).*"); + } + /* (non-Javadoc) * Answers the argument with all whitespaces replaced with an escape sequence. * @@ -3012,6 +3180,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { * C_SRCS += \ * ${addprefix $(ROOT)/, \ */ + // TODO fix comment protected void addMacroAdditionPrefix(LinkedHashMap map, String macroName, String relativePath, boolean addPrefix) { // there is no entry in the map, so create a buffer for this macro StringBuffer tempBuffer = new StringBuffer(); @@ -3032,6 +3201,10 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { protected void addMacroAdditionFile(HashMap map, String macroName, String filename) { StringBuffer buffer = new StringBuffer(); buffer.append(map.get(macroName)); + + // escape whitespace in the filename + filename = escapeWhitespaces(filename); + buffer.append(filename + WHITESPACE + LINEBREAK); // re-insert string in the map map.put(macroName, buffer.toString()); @@ -3056,7 +3229,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { if (generatedSource) { srcName = "./" + srcPath.toString(); //$NON-NLS-1$ } else { - srcName = "$(ROOT)/" + srcPath.toString(); //$NON-NLS-1$ + srcName = ROOT + "/" + srcPath.toString(); //$NON-NLS-1$ } } else { if (generatedSource && !sourceLocation.isAbsolute()) { @@ -3102,23 +3275,22 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { String macroString = collectionIterator.next().toString(); // Check if we added any files to the rule // Currently, we do this by comparing the end of the rule buffer to MACRO_ADDITION_PREFIX_SUFFIX - if (!(macroString.endsWith(MACRO_ADDITION_PREFIX_SUFFIX)) && - !(macroString.endsWith(MACRO_ADDITION_ADDPREFIX_SUFFIX))) { + if (!(macroString.endsWith(MACRO_ADDITION_PREFIX_SUFFIX))) { StringBuffer currentBuffer = new StringBuffer(); - // Close off the rule - if (macroString.indexOf(MACRO_ADDITION_ADDPREFIX_HEADER) >= 0) { - currentBuffer.append(macroString + "}" + NEWLINE); //$NON-NLS-1$ - } else { - // Remove the final "/" - if (macroString.endsWith(LINEBREAK)) { - macroString = macroString.substring(0, (macroString.length() - 2)) + NEWLINE; - } - currentBuffer.append(macroString); + + // Remove the final "/" + if (macroString.endsWith(LINEBREAK)) { + macroString = macroString.substring(0, (macroString + .length() - 2)) + + NEWLINE; } + currentBuffer.append(macroString); + currentBuffer.append(NEWLINE); - - // append the contents of the buffer to the master buffer for the whole file - buffer.append(currentBuffer); + + // append the contents of the buffer to the master buffer for + // the whole file + buffer.append(currentBuffer); } } return buffer.append(NEWLINE); @@ -3394,18 +3566,10 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { */ protected void appendBuildSubdirectory(IResource resource) { IContainer container = resource.getParent(); - // If the path contains a space relative to the project, reject it from the build - if (resource.getProjectRelativePath().toString().indexOf(" ") != -1) { //$NON-NLS-1$ - // Only add the container once - if (!getInvalidDirList().contains(container)) { - getInvalidDirList().add(container); - } - } else { // Only add the container once if (!getSubdirList().contains(container)) { - getSubdirList().add(container); + getSubdirList().add(container); } - } } /** @@ -3445,17 +3609,10 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator { */ protected void appendModifiedSubdirectory(IResource resource) { IContainer container = resource.getParent(); - // If the path contains a space relative to the project, reject it from the build - if (resource.getProjectRelativePath().toString().indexOf(" ") != -1) { //$NON-NLS-1$ - // Only add the container once - if (!getInvalidDirList().contains(container)) { - getInvalidDirList().add(container); - } - } else { + if (!getModifiedList().contains(container)) { getModifiedList().add(container); } - } } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/ManagedBuildGnuToolInfo.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/ManagedBuildGnuToolInfo.java index 15e77c02c42..83c097394ed 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/ManagedBuildGnuToolInfo.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/ManagedBuildGnuToolInfo.java @@ -192,18 +192,50 @@ public class ManagedBuildGnuToolInfo implements IManagedBuildGnuToolInfo { inputs = (List)option.getValue(); } for (int j=0; j 0) + String inputName = (String)inputs.get(j); + + + try { + // try to resolve the build macros in the output + // names + + String resolved = null; + + // does the input name contain spaces? + // TODO: support other special characters + if (inputName.indexOf(" ") != -1) //$NON-NLS-1$ + { + // resolve to string + resolved = ManagedBuildManager + .getBuildMacroProvider() + .resolveValue( + inputName, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_OPTION, + new OptionContextData( + option, + config + .getToolChain())); + } else { + + // resolve to makefile variable format + resolved = ManagedBuildManager + .getBuildMacroProvider() + .resolveValueToMakefileFormat( + inputName, + "", //$NON-NLS-1$ + " ", //$NON-NLS-1$ + IBuildMacroProvider.CONTEXT_OPTION, + new OptionContextData( + option, + config + .getToolChain())); + } + + if ((resolved = resolved.trim()).length() > 0) inputName = resolved; - } catch (BuildMacroException e){ + } catch (BuildMacroException e) { } if (primaryInput) { @@ -938,10 +970,10 @@ public class ManagedBuildGnuToolInfo implements IManagedBuildGnuToolInfo { OptDotExt = DOT + tool.getOutputExtension(srcExtensionName); // create rule of the form - // OBJS = $(macroName1: $(ROOT)/%.input1=%.output1) ... $(macroNameN: $(ROOT)/%.inputN=%.outputN) + // OBJS = $(macroName1: ../%.input1=%.output1) ... $(macroNameN: ../%.inputN=%.outputN) StringBuffer objectsBuffer = new StringBuffer(); objectsBuffer.append(IManagedBuilderMakefileGenerator.WHITESPACE + "$(" + macroName + //$NON-NLS-1$ - IManagedBuilderMakefileGenerator.COLON + "$(ROOT)" + //$NON-NLS-1$ + IManagedBuilderMakefileGenerator.COLON + IManagedBuilderMakefileGenerator.ROOT + //$NON-NLS-1$ IManagedBuilderMakefileGenerator.SEPARATOR + IManagedBuilderMakefileGenerator.WILDCARD + DOT + srcExtensionName + "=" + wildcard + OptDotExt + ")" ); //$NON-NLS-1$ //$NON-NLS-2$ return objectsBuffer.toString();