onevcat / XUPorter

Add files and frameworks to your Xcode project after it is generated by Unity 3D.
http://onevcat.com/2012/12/xuporter/
MIT License
596 stars 241 forks source link

3rd party frameworks headers #53

Open colinamuzo opened 9 years ago

colinamuzo commented 9 years ago

Hi

It is recommended that 3rd party frameworks are added to the "files" section rather than the "frameworks" section. Are entries in the files section handled differently to those in the frameworks section?

When I add my 3rd party frameworks to the files section, the headers in those frameworks are not always found (ie I get "header not found" build errors). The errors seem to come from angle-bracket include lines, rather than quotes.

I had trouble adding accurate folder paths to the "headerpaths" section, so I just added a high level folder with recursion (using "**"). This fixed some of the issues (ie some of the headers were then found), but some were still not found. The frameworks which contain the headers which are still not found use symlinks in their folder structure (which I believe is common in frameworks). Is the use of symlinks a problem?

If, instead of adding the 3rd party frameworks to the files section, I add them to the "frameworks" section, and I copy the frameworks into a folder already on the system search paths (eg "/Applications/Xcode.app/Contents/Developer/Platforms//Developer/SDKs//System/Libraries/Frameworks", then the frameworks are found and there are no such "file not found" errors. I'd rather not take this approach, because I'd like the frameworks to be kept with the project code, rather than polluting the build machine.

Can anyone help me get this working correctly?

The frameworks that I'm using are Google open source, Google plus, Google play games and Tapjoy.

colinamuzo commented 9 years ago

From looking at the XUPorter scripts I can see that the frameworks and files sections are not handled significantly differently. Is it just to do with the location of the frameworks (ie system folders vs user folders), or something?