Skip to content

Commit

Permalink
Remove C++ dialect & std lib selection from Xcode templates
Browse files Browse the repository at this point in the history
  • Loading branch information
mantognini authored and eXpl0it3r committed Mar 26, 2018
1 parent 949e7ae commit fc02cf0
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 80 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -44,74 +44,6 @@ subject to the following restrictions:
<key>Kind</key>
<string>Xcode.Xcode3.ProjectTemplateUnitKind</string>

<!--
OPTIONS
-->
<key>Options</key>
<array>
<dict>
<key>Identifier</key>
<string>compilerSettingsType</string>

<key>Name</key>
<string>[ADVANCED] C++ Compiler and Standard Library</string>

<key>Description</key>
<string>If you don't know what is it about, use the default value. Note that you'll need a version of SFML compiled with Clang and libc++ to use C++11!</string>

<key>Default</key>
<string>C++11 with Clang and libc++</string>

<key>NotPersisted</key>
<true />

<key>Type</key>
<string>popup</string>

<key>Units</key>
<dict>
<!-- Use Clang and libstdc++ -->
<key>C++98 with Clang and libstdc++</key>
<dict>
<key>Project</key>
<dict>
<key>SharedSettings</key>
<dict>
<key>GCC_VERSION</key>
<string>com.apple.compilers.llvm.clang.1_0</string>

<key>CLANG_CXX_LANGUAGE_STANDARD</key>
<string>c++98</string>

<key>CLANG_CXX_LIBRARY</key>
<string>libstdc++</string>
</dict>
</dict>
</dict>

<!-- Use Clang and libc++ -->
<key>C++11 with Clang and libc++</key>
<dict>
<key>Project</key>
<dict>
<key>SharedSettings</key>
<dict>
<key>GCC_VERSION</key>
<string>com.apple.compilers.llvm.clang.1_0</string>

<key>CLANG_CXX_LANGUAGE_STANDARD</key>
<string>c++0x</string>

<key>CLANG_CXX_LIBRARY</key>
<string>libc++</string>
</dict>
</dict>
</dict>
</dict>
</dict>

</array>

<!--
SETTINGS
-->
Expand All @@ -123,6 +55,16 @@ subject to the following restrictions:
<key>SUPPORTED_PLATFORMS</key>
<string>macosx</string>

<!-- Compiler & std lib -->
<key>GCC_VERSION</key>
<string>com.apple.compilers.llvm.clang.1_0</string>

<key>CLANG_CXX_LANGUAGE_STANDARD</key>
<string>c++11</string>

<key>CLANG_CXX_LIBRARY</key>
<string>libc++</string>

<!-- ARCHITECTURES -->
<key>ARCHS</key>
<string>@XCODE_TEMPLATES_ARCH@</string>
Expand Down
20 changes: 8 additions & 12 deletions tools/xcode/templates/readme.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ Features
* You can choose between command line tool or bundle application, the latter will contains all
SFML dependencies so you can run your app on another computer without manually installing SFML.
* You can choose between using SFML libraries as dylibs or frameworks.
* You can choose your compiler and C++ standard library / dialect.
* You can choose with SFML module you want to use into your project.
* You automatically get a basic example to test SFML right away.

Expand All @@ -38,13 +37,10 @@ Prerequisites

Before installing the template, make sure you have installed:

- Xcode 4 or greater, up to date
- the Command Line Tools
- SFML 2, either as frameworks or dylibs
- Xcode 4 or greater, up to date;
- the Command Line Tools;
- SFML 2, either as frameworks or dylibs, as described in the official tutorials.

There is one constraint on the installation of SFML: the frameworks needs to be installed in
/Library/Frameworks and the dylibs into /usr/local/lib. You don't need both but make sure they are
in the correct folder.

You should also be familiar with Xcode. If needed checkout this document:
http://developer.apple.com/library/ios/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/000-About_Xcode/about.html
Expand Down Expand Up @@ -144,10 +140,10 @@ FAQ

* I get strange linker error about std::string and other STL types. What should I do?

This probably means you're compiling your project against a different implementation of the STL
than SFML. When you created the project, you might have chosen the wrong C++ compiler & standard
library. You can update your project's build settings; more specifically the Compiler for
C/C++/Objective-C, the C++ language Dialect and the C++ Standard Library. You can find more
information in the getting started tutorial for Mac OS X on the official web site.
This probably means you're compiling your project against a different
implementation of the STL than the one used by SFML. You can update your
project build settings to match the settings used to compile SFML; more
specifically the Compiler for C/C++/Objective-C, the C++ language Dialect
and the C++ Standard Library.


0 comments on commit fc02cf0

Please sign in to comment.