I am having issues trying to use MSBuild/Xbuild API for my Xamarin Studio Plugin.
I have a workaraound solution where i DONT use the API at all or the command line DIRECTLY...
I made a plugin the wrapps the Native Xamarin Studo Xbuild process, parses errors and warning for full IDE intergration...
The only thing is with the native xbuild in xamarin studion there is NO WAY to pass parameters to xbuild via code... you still have to manually manage propertygroups in project file directly. But i need a way to get some params to the Duo code build process...
What i did is create a text file in the Output folder called DuoCodeArguments.rsp
this just args like '/license:blahblah \r\n' with CRLF at the end of each line.
Since i cant pass thes evia code... but i can create them in code... you can modify the DuoCode.target to be able to read arguments from file.
I was thinking something like this (although i coud not get to actually read into @DccArgs, but maybe you guys can... or come up with some way of detecting
and using input arguments from and input.rsp file).
Anyways, what do you think of somethink like this somewere in the DuoCode.target:
Update: Bummer ... this wont work either as far as my Xamarin plugin is concerned.
I HAVE to use the Xbuild API... just gotta work out that error when compiling from xbuild api
as apposed to xbuild command line external process.
Any help you guys can give on getting that compiler issue fixed would be GREAT :)
Actually dcc.exe already supports that exactly like csc.exe. dcc accepts ALL csc parameters and more.
You can pass response file using:
Run dcc.exe /? for more details about compiler arguments.
So how would i pass that the the build system as an arg.. is there some "$DuoCodeResponseFile"
I have no access to command line...
I was only going to use this method IF I COULD NOT GET ANY BUILD API TO WORK.
i could at least pass parameters directly to duocode by creating a rsp file before i ran the build from ide using just the native ide with plugin whatsoever...
Was my last resort... But i am not there yet... So far i am using the windows msbuild dlls in my plugin and just using a very limited amount of api calls (just enough to build project with global parameters and manually parse each console logger output line for errors and warnings... not the prettiest solution, but it works)
Besides... the dcc.exe @response_file.rsp approach would wipe out all the other args...
I just wanna append some additional args to <DccArgs> ItemGroup from a $(OutDir)\DuoCodeResponse.rsp file if is exists...
Since i cant pass ANY parameters via the native build system... the .atrgets file would have to check if that file exists and read the rsp items into the existing DccArgs as additional arguments.