Skip to content

Commit

Permalink
Added README file; removed dubious config lines
Browse files Browse the repository at this point in the history
  • Loading branch information
fay59 committed Oct 3, 2014
1 parent 8bc327a commit cc30045
Showing 2 changed files with 37 additions and 0 deletions.
11 changes: 11 additions & 0 deletions xcode/Capstone.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
@@ -2347,6 +2347,7 @@
DC474E6919DDEA5F00BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474E8A19DDEAA200BCA449 /* Build configuration list for PBXNativeTarget "test_arm" */ = {
isa = XCConfigurationList;
@@ -2355,6 +2356,7 @@
DC474E8C19DDEAA200BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474E9519DDEAA700BCA449 /* Build configuration list for PBXNativeTarget "test_detail" */ = {
isa = XCConfigurationList;
@@ -2363,6 +2365,7 @@
DC474E9719DDEAA700BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474EA019DDEAAC00BCA449 /* Build configuration list for PBXNativeTarget "test_mips" */ = {
isa = XCConfigurationList;
@@ -2371,6 +2374,7 @@
DC474EA219DDEAAC00BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474EAB19DDEAB000BCA449 /* Build configuration list for PBXNativeTarget "test_ppc" */ = {
isa = XCConfigurationList;
@@ -2379,6 +2383,7 @@
DC474EAD19DDEAB000BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474EB619DDEAB700BCA449 /* Build configuration list for PBXNativeTarget "test_skipdata" */ = {
isa = XCConfigurationList;
@@ -2387,6 +2392,7 @@
DC474EB819DDEAB700BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474EC119DDEABC00BCA449 /* Build configuration list for PBXNativeTarget "test_sparc" */ = {
isa = XCConfigurationList;
@@ -2395,6 +2401,7 @@
DC474EC319DDEABC00BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474ECC19DDEAC100BCA449 /* Build configuration list for PBXNativeTarget "test_systemz" */ = {
isa = XCConfigurationList;
@@ -2403,6 +2410,7 @@
DC474ECE19DDEAC100BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474ED719DDEAC600BCA449 /* Build configuration list for PBXNativeTarget "test_x86" */ = {
isa = XCConfigurationList;
@@ -2411,6 +2419,7 @@
DC474ED919DDEAC600BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474EE219DDEACC00BCA449 /* Build configuration list for PBXNativeTarget "test_xcore" */ = {
isa = XCConfigurationList;
@@ -2419,6 +2428,7 @@
DC474EE419DDEACC00BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DC474EEE19DDEAE400BCA449 /* Build configuration list for PBXNativeTarget "test_arm64" */ = {
isa = XCConfigurationList;
@@ -2427,6 +2437,7 @@
DC474EF019DDEAE400BCA449 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
DCFE239D19DDCB4900EF8EA9 /* Build configuration list for PBXProject "Capstone" */ = {
isa = XCConfigurationList;
26 changes: 26 additions & 0 deletions xcode/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
Xcode Project for Capstone
================================================================================

The *Capstone.xcodeproj* project is an Xcode project that mimicks the Visual
Studio solution for Capstone. It embeds nicely into Xcode workspaces. It has 13
targets, two of which are the most likely to be of interest:

* CapstoneStatic, producing `libcapstone.a`, Capstone as a static library;
* CapstoneDynamic, producing `libcapstone.dylib`, Capstone as a shared library;
* test, test_arm, test_arm64, test_detail, test_mips, test_ppc, test_skipdata,
test_sparc, test_systemz, test_xcore, testing all the things.

The project is configured to include all targets and use the system
implementations of `malloc`, `calloc`, `realloc`, `free` and `vsnprintf`. This
can be modified by editing the *Preprocessor Macros* build setting of either
CapstoneStatic or CapstoneDynamic, whichever you plan to use. These settings are
all at the target level: no specific overrides were used at the project level.

### A Word of Warning: Static vs. Shared Library

There is a bug in how Xcode handles static libraries and dynamic libraries of
the same name. Currently, if you integrate the Capstone project in a workspace
and both the static *and* the dynamic libraries are built, if you try to link
against either, you will *always* link against the dynamic one. To work around
this issue, you can avoid building the dynamic library if you don't plan to use
it, or you could change the *Product Name* build setting of either.

0 comments on commit cc30045

Please sign in to comment.