I personally use bin$(Platform) and obj($Platform) in my .mgcb files. Note setting obj is important so the intermediate files between platforms donāt get mixed up.
@James - Note we plan to directly add support for multiple platforms from one MGCB file in the coming months. In the end the Pipeline GUI tool will handle the work of writing all the preprocessor statements needed to do that.
Iāll be incorporating some of the details shared above in my file/process later tonight ā and following up on the GamePad issue for OS X in GitHub.
Iām also going to take a look at the documentation sticky to start compiling a list of all the āstuffā Iāve put together ā like templates and gotchas. During the ādaylight hoursā Iāve been the advocate for TeamCity utilization so Iām eager to apply the knowledge elsewhere as well.
Famous engineer last wordsā¦ āIt Just Worksā.
Iāve just encountered this myself and it seems like a bit of a bug to me. Want to make sure I am not just getting the process wrong here, as I am trying to document this for others.
Right now in Xamarin Studio on MacOS, it seems you have to manually copy the resulting xnb files to the /Resources/Content folder of your generated app, or import each to your Content folder and set itās build action as Content, or it wonāt be copied into the resulting .app and your game will crash.
I am assuming this is not desired behavior, but I have not found a way around it. On Windows with Visual Studio the mgcb file is seen as an external resource and handled properly, so it is the only thing you need to include in your build and it just works. This link does not appear to work on Mac requiring the work around James mentioned, or requiring you to manually include your generated content.
Am I simply doing things wrong, itās quite possible, I donāt often work outside of Visual Studio.
Actually I got it working, but as you said, in a hacky manner. I simply dont want to tell others that this is how you do it on Mac if there is a better way.
Otherwise it seems the best suggestion to users is to have the content pipeline output folder set to the Content folder for MacOSX projects. Which also seems gross. Unless a better way is found I guess I will just advise to add content manually on a Mac.
Iām working on getting the Content .targets files working on the Mac, exactly as they do in VS. Content compiled via the MGCB (which will be done automatically) will be included Automatically. No need to add/edit the csproj.
It am very close to getting the all working. Iām post a link to the PR once its up.