jerrymarino / xcodecompilationdatabase Goto Github PK
View Code? Open in Web Editor NEWGenerate a Compilation Database from Xcode's build log - nothing more :).
Generate a Compilation Database from Xcode's build log - nothing more :).
First of all: great tool!
The arguments in XCDependencyCommandInvocationRecord.commandLineArguments
are unescaped (e.g. think of path with spaces), however, the command in the compile_commands.json
espects a commandline and thus escaped arguments.
This creates a problem with paths with spaces, which get an invalid entry in the compilation database. As a quick fix, I added the following piece of code to EntriesForCompileCRecord
:
NSMutableArray* escapedCLIArgs = [NSMutableArray arrayWithCapacity:CLIArgs.count];
for(NSString* arg in CLIArgs)
{
NSString* escapedArg = [arg stringByReplacingOccurrencesOfString:@" " withString:@"\\ "];
[escapedCLIArgs addObject:escapedArg];
}
CLIArgs = [escapedCLIArgs copy];
A more robust fix might be more desirable tho. If you're fin with this, please let me know and I'll make a PR
This tool may need some work and testing to work with the latest Xcode releases and betas. See the discussion here for more info jerrymarino/SwiftVimTestHost#1
The point of this ticket is to make it easy for people to create compilation databases from Xcode. Write instructions and add scripts to do this.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.