summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJames Cowgill <james410@cowgill.org.uk>2013-08-23 09:57:55 +0100
committerJames Cowgill <james410@cowgill.org.uk>2013-08-23 09:57:55 +0100
commit9a298ca833d9b6a3425bb30c2e52cf04e34aeb7c (patch)
treed46630a885bcea03bbea036b86c645dc6c55708d /tools
parent0969839d538a385254c6eced9648acc7299876cc (diff)
Imported Upstream version 2.1+dfsg
Diffstat (limited to 'tools')
-rw-r--r--tools/pkg-config/sfml-all.pc.in10
-rw-r--r--tools/pkg-config/sfml-audio.pc.in12
-rw-r--r--tools/pkg-config/sfml-graphics.pc.in12
-rw-r--r--tools/pkg-config/sfml-network.pc.in12
-rw-r--r--tools/pkg-config/sfml-system.pc.in11
-rw-r--r--tools/pkg-config/sfml-window.pc.in12
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.hpp43
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.mm52
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/TemplateIcon.icnsbin0 -> 243806 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/TemplateInfo.plist268
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/cute_image.jpgbin0 -> 142959 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/icon.pngbin0 -> 61926 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/main.cpp91
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/nice_music.oggbin0 -> 153776 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML App.xctemplate/sansation.ttfbin0 -> 28912 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML Base.xctemplate/TemplateInfo.plist116
-rw-r--r--tools/xcode/templates/SFML/SFML Bundle.xctemplate/TemplateInfo.plist132
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateIcon.icnsbin0 -> 243806 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateInfo.plist137
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/cute_image.jpgbin0 -> 142959 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/icon.pngbin0 -> 61926 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/main.cpp89
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/nice_music.oggbin0 -> 153776 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML CLT.xctemplate/sansation.ttfbin0 -> 28912 bytes
-rw-r--r--tools/xcode/templates/SFML/SFML Compiler.xctemplate/TemplateInfo.plist288
-rw-r--r--tools/xcode/templates/SFML/SFML Linker.xctemplate/TemplateInfo.plist363
-rwxr-xr-xtools/xcode/templates/install.sh6
-rw-r--r--tools/xcode/templates/readme.txt134
28 files changed, 1788 insertions, 0 deletions
diff --git a/tools/pkg-config/sfml-all.pc.in b/tools/pkg-config/sfml-all.pc.in
new file mode 100644
index 0000000..dd2d4c3
--- /dev/null
+++ b/tools/pkg-config/sfml-all.pc.in
@@ -0,0 +1,10 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
+includedir=${prefix}/include
+
+Name: SFML-all
+Description: The Simple and Fast Multimedia Library, all modules.
+URL: http://www.sfml-dev.org
+Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+Requires: sfml-system, sfml-window, sfml-graphics, sfml-audio, sfml-network
diff --git a/tools/pkg-config/sfml-audio.pc.in b/tools/pkg-config/sfml-audio.pc.in
new file mode 100644
index 0000000..7456daa
--- /dev/null
+++ b/tools/pkg-config/sfml-audio.pc.in
@@ -0,0 +1,12 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
+includedir=${prefix}/include
+
+Name: SFML-audio
+Description: The Simple and Fast Multimedia Library, audio module.
+URL: http://www.sfml-dev.org
+Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+Requires: sfml-system
+Libs: -L${libdir} -lsfml-audio
+Cflags: -I${includedir}
diff --git a/tools/pkg-config/sfml-graphics.pc.in b/tools/pkg-config/sfml-graphics.pc.in
new file mode 100644
index 0000000..d0a88a1
--- /dev/null
+++ b/tools/pkg-config/sfml-graphics.pc.in
@@ -0,0 +1,12 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
+includedir=${prefix}/include
+
+Name: SFML-graphics
+Description: The Simple and Fast Multimedia Library, graphics module.
+URL: http://www.sfml-dev.org
+Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+Requires: sfml-window
+Libs: -L${libdir} -lsfml-graphics
+Cflags: -I${includedir}
diff --git a/tools/pkg-config/sfml-network.pc.in b/tools/pkg-config/sfml-network.pc.in
new file mode 100644
index 0000000..4381ca0
--- /dev/null
+++ b/tools/pkg-config/sfml-network.pc.in
@@ -0,0 +1,12 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
+includedir=${prefix}/include
+
+Name: SFML-network
+Description: The Simple and Fast Multimedia Library, network module.
+URL: http://www.sfml-dev.org
+Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+Requires: sfml-system
+Libs: -L${libdir} -lsfml-network
+Cflags: -I${includedir}
diff --git a/tools/pkg-config/sfml-system.pc.in b/tools/pkg-config/sfml-system.pc.in
new file mode 100644
index 0000000..647ab53
--- /dev/null
+++ b/tools/pkg-config/sfml-system.pc.in
@@ -0,0 +1,11 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
+includedir=${prefix}/include
+
+Name: SFML-system
+Description: The Simple and Fast Multimedia Library, system module.
+URL: http://www.sfml-dev.org
+Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+Libs: -L${libdir} -lsfml-system
+Cflags: -I${includedir}
diff --git a/tools/pkg-config/sfml-window.pc.in b/tools/pkg-config/sfml-window.pc.in
new file mode 100644
index 0000000..b0266e6
--- /dev/null
+++ b/tools/pkg-config/sfml-window.pc.in
@@ -0,0 +1,12 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib@LIB_SUFFIX@
+includedir=${prefix}/include
+
+Name: SFML-window
+Description: The Simple and Fast Multimedia Library, window module.
+URL: http://www.sfml-dev.org
+Version: @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
+Requires: sfml-system
+Libs: -L${libdir} -lsfml-window
+Cflags: -I${includedir}
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.hpp b/tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.hpp
new file mode 100644
index 0000000..10e8c60
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.hpp
@@ -0,0 +1,43 @@
+////////////////////////////////////////////////////////////
+//
+// SFML - Simple and Fast Multimedia Library
+// Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+// Laurent Gomila (laurent.gom@gmail.com),
+//
+// This software is provided 'as-is', without any express or implied warranty.
+// In no event will the authors be held liable for any damages arising from the use of this software.
+//
+// Permission is granted to anyone to use this software for any purpose,
+// including commercial applications, and to alter it and redistribute it freely,
+// subject to the following restrictions:
+//
+// 1. The origin of this software must not be misrepresented;
+// you must not claim that you wrote the original software.
+// If you use this software in a product, an acknowledgment
+// in the product documentation would be appreciated but is not required.
+//
+// 2. Altered source versions must be plainly marked as such,
+// and must not be misrepresented as being the original software.
+//
+// 3. This notice may not be removed or altered from any source distribution.
+//
+////////////////////////////////////////////////////////////
+
+#ifndef RESOURCE_PATH_HPP
+#define RESOURCE_PATH_HPP
+
+////////////////////////////////////////////////////////////
+// Headers
+////////////////////////////////////////////////////////////
+#include <string>
+
+////////////////////////////////////////////////////////////
+/// \brief Return the path to the resource folder.
+///
+/// \return The path to the resource folder associate
+/// with the main bundle or an empty string is there is no bundle.
+///
+////////////////////////////////////////////////////////////
+std::string resourcePath(void);
+
+#endif
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.mm b/tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.mm
new file mode 100644
index 0000000..30d47c1
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/ResourcePath.mm
@@ -0,0 +1,52 @@
+////////////////////////////////////////////////////////////
+//
+// SFML - Simple and Fast Multimedia Library
+// Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+// Laurent Gomila (laurent.gom@gmail.com),
+//
+// This software is provided 'as-is', without any express or implied warranty.
+// In no event will the authors be held liable for any damages arising from the use of this software.
+//
+// Permission is granted to anyone to use this software for any purpose,
+// including commercial applications, and to alter it and redistribute it freely,
+// subject to the following restrictions:
+//
+// 1. The origin of this software must not be misrepresented;
+// you must not claim that you wrote the original software.
+// If you use this software in a product, an acknowledgment
+// in the product documentation would be appreciated but is not required.
+//
+// 2. Altered source versions must be plainly marked as such,
+// and must not be misrepresented as being the original software.
+//
+// 3. This notice may not be removed or altered from any source distribution.
+//
+////////////////////////////////////////////////////////////
+
+////////////////////////////////////////////////////////////
+// Headers
+////////////////////////////////////////////////////////////
+#include "ResourcePath.hpp"
+#import <Foundation/Foundation.h>
+
+////////////////////////////////////////////////////////////
+std::string resourcePath(void)
+{
+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
+
+ std::string rpath;
+ NSBundle* bundle = [NSBundle mainBundle];
+
+ if (bundle == nil) {
+#ifdef DEBUG
+ NSLog(@"bundle is nil... thus no resources path can be found.");
+#endif
+ } else {
+ NSString* path = [bundle resourcePath];
+ rpath = [path UTF8String] + std::string("/");
+ }
+
+ [pool drain];
+
+ return rpath;
+}
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/TemplateIcon.icns b/tools/xcode/templates/SFML/SFML App.xctemplate/TemplateIcon.icns
new file mode 100644
index 0000000..477431b
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/TemplateIcon.icns
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/TemplateInfo.plist b/tools/xcode/templates/SFML/SFML App.xctemplate/TemplateInfo.plist
new file mode 100644
index 0000000..19033b1
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/TemplateInfo.plist
@@ -0,0 +1,268 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<!--
+SFML - Simple and Fast Multimedia Library
+Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+ Laurent Gomila (laurent.gom@gmail.com),
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+
+2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
+-->
+
+<!--
+ This template can create a SFML 2.0 Bundle Application project.
+ -->
+
+<plist version="1.0">
+ <dict>
+ <!--
+ BASIC INFO
+ -->
+ <key>Identifier</key>
+ <string>org.sfml-dev.app</string>
+
+ <key>Concrete</key>
+ <true />
+
+ <key>Description</key>
+ <string>This template creates a SFML Application Bundle.</string>
+
+ <key>Kind</key>
+ <string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
+
+ <key>Ancestors</key>
+ <array>
+ <string>org.sfml-dev.bundle</string>
+ <string>org.sfml-dev.compiler</string>
+ <string>org.sfml-dev.linker</string>
+ </array>
+
+ <!--
+ FILES
+ -->
+ <key>Nodes</key>
+ <array>
+ <string>ResourcePath.mm</string>
+ <string>ResourcePath.hpp</string>
+ <string>main.cpp</string>
+ <string>cute_image.jpg</string>
+ <string>nice_music.ogg</string>
+ <string>sansation.ttf</string>
+ <string>icon.png</string>
+ </array>
+
+ <!--
+ DEFINITIONS
+ -->
+ <key>Definitions</key>
+ <dict>
+ <!-- RESOURCE PATH -->
+ <key>ResourcePath.mm</key>
+ <dict>
+ <key>Path</key>
+ <string>ResourcePath.mm</string>
+ </dict>
+ <key>ResourcePath.hpp</key>
+ <dict>
+ <key>Path</key>
+ <string>ResourcePath.hpp</string>
+ <key>TargetIndices</key>
+ <array /> <!-- don't copy it to "Resources" ! -->
+ </dict>
+
+ <!-- MAIN -->
+ <key>main.cpp</key>
+ <dict>
+ <key>Path</key>
+ <string>main.cpp</string>
+ </dict>
+
+ <!-- RESOURCES -->
+ <key>cute_image.jpg</key>
+ <dict>
+ <key>Path</key>
+ <string>cute_image.jpg</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+
+ <key>nice_music.ogg</key>
+ <dict>
+ <key>Path</key>
+ <string>nice_music.ogg</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+
+ <key>sansation.ttf</key>
+ <dict>
+ <key>Path</key>
+ <string>sansation.ttf</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+
+ <key>icon.png</key>
+ <dict>
+ <key>Path</key>
+ <string>icon.png</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+ </dict>
+
+ <!--
+ COPY LIBRARY PHASE
+ -->
+ <key>Targets</key>
+ <array>
+ <dict>
+ <key>BuildPhases</key>
+ <array>
+ <dict>
+ <key>Class</key>
+ <string>ShellScript</string>
+
+ <key>ShellPath</key>
+ <string>/bin/sh</string>
+
+ <key>ShellScript</key>
+ <string># This shell script simply copies required sfml dylibs/frameworks into the application bundle frameworks folder.
+# If you're using static libraries (which is not recommended) you should remove this script from your project.
+
+# Are we building a project that uses framework or dylibs ?
+case "$SFML_BINARY_TYPE" in
+ DYLIBS)
+ frameworks="false"
+ ;;
+ *)
+ frameworks="true"
+ ;;
+esac
+
+# Echoes to stderr
+error () # $* message to display
+{
+ echo $* 1>&amp;2
+ exit 2
+}
+
+assert () # $1 is a boolean, $2...N is an error message
+{
+ if [ $# -lt 2 ]
+ then
+ error "Internal error in assert : not enough args"
+ fi
+
+ if [ $1 -ne 0 ]
+ then
+ shift
+ error "$*"
+ fi
+}
+
+force_remove () # $1 is a path
+{
+ test $# -eq 1
+ assert $? "force_remove() requires one parameter"
+ rm -fr "$1"
+ assert $? "couldn't remove $1"
+}
+
+copy () # $1 is a source, $2 is a destination
+{
+ test $# -eq 2
+ assert $? "copy() requires two parameters"
+ ditto "$1" "$2"
+ assert $? "couldn't copy $1 to $2"
+}
+
+require () # $1 is a SFML module like 'system' or 'audio'
+{
+ dest="$BUILT_PRODUCTS_DIR/$PRODUCT_NAME.app/Contents/Frameworks"
+
+ if [ -z "$1" ]
+ then
+ error "require() requires one parameter!"
+ else
+ # clean potentially old stuff
+ force_remove "$dest/libsfml-$1.2.dylib"
+ force_remove "$dest/libsfml-$1-d.2.dylib"
+ force_remove "$dest/sfml-$1.framework"
+
+ # copy SFML libraries
+ if [ "$frameworks" = "true" ]
+ then
+ copy "/Library/Frameworks/sfml-$1.framework" "$dest/sfml-$1.framework"
+ elif [ $CONFIGURATION = "Debug" ] &amp;&amp; [ $SFML_LINK_DYLIBS_SUFFIX_DEBUG != "" ]
+ then
+ copy "/usr/local/lib/libsfml-$1-d.2.dylib" "$dest/libsfml-$1-d.2.dylib"
+ else
+ copy "/usr/local/lib/libsfml-$1.2.dylib" "$dest/libsfml-$1.2.dylib"
+ fi
+
+ if [ "$1" = "audio" ]
+ then
+ # copy sndfile framework too
+ copy "/Library/Frameworks/sndfile.framework" "$dest/sndfile.framework"
+ fi
+
+ if [ "$1" = "graphics" ]
+ then
+ # copy freetype framework too
+ copy "/Library/Frameworks/freetype.framework" "$dest/freetype.framework"
+ fi
+ fi
+}
+
+if [ -n "$SFML_SYSTEM" ]
+then
+ require "system"
+fi
+
+if [ -n "$SFML_AUDIO" ]
+then
+ require "audio"
+fi
+
+if [ -n "$SFML_NETWORK" ]
+then
+ require "network"
+fi
+
+if [ -n "$SFML_WINDOW" ]
+then
+ require "window"
+fi
+
+if [ -n "$SFML_GRAPHICS" ]
+then
+ require "graphics"
+fi
+
+ </string>
+
+ <key>RunOnlyForDeploymentPostprocessing</key>
+ <string>NO</string>
+ </dict>
+ </array>
+ </dict>
+ </array>
+ </dict>
+</plist>
+
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/cute_image.jpg b/tools/xcode/templates/SFML/SFML App.xctemplate/cute_image.jpg
new file mode 100644
index 0000000..20724fa
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/cute_image.jpg
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/icon.png b/tools/xcode/templates/SFML/SFML App.xctemplate/icon.png
new file mode 100644
index 0000000..ef62688
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/icon.png
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/main.cpp b/tools/xcode/templates/SFML/SFML App.xctemplate/main.cpp
new file mode 100644
index 0000000..b1b45ab
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/main.cpp
@@ -0,0 +1,91 @@
+
+//
+// Disclamer:
+// ----------
+//
+// This code will work only if you selected window, graphics and audio.
+//
+// Note that the "Run Script" build phase will copy the required frameworks
+// or dylibs to your application bundle so you can execute it on any OS X
+// computer.
+//
+// Your resource files (images, sounds, fonts, ...) are also copied to your
+// application bundle. To get the path to these resource, use the helper
+// method resourcePath() from ResourcePath.hpp
+//
+
+#include <SFML/Audio.hpp>
+#include <SFML/Graphics.hpp>
+
+// Here is a small helper for you ! Have a look.
+#include "ResourcePath.hpp"
+
+int main(int, char const**)
+{
+ // Create the main window
+ sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");
+
+ // Set the Icon
+ sf::Image icon;
+ if (!icon.loadFromFile(resourcePath() + "icon.png")) {
+ return EXIT_FAILURE;
+ }
+ window.setIcon(icon.getSize().x, icon.getSize().y, icon.getPixelsPtr());
+
+ // Load a sprite to display
+ sf::Texture texture;
+ if (!texture.loadFromFile(resourcePath() + "cute_image.jpg")) {
+ return EXIT_FAILURE;
+ }
+ sf::Sprite sprite(texture);
+
+ // Create a graphical text to display
+ sf::Font font;
+ if (!font.loadFromFile(resourcePath() + "sansation.ttf")) {
+ return EXIT_FAILURE;
+ }
+ sf::Text text("Hello SFML", font, 50);
+ text.setColor(sf::Color::Black);
+
+ // Load a music to play
+ sf::Music music;
+ if (!music.openFromFile(resourcePath() + "nice_music.ogg")) {
+ return EXIT_FAILURE;
+ }
+
+ // Play the music
+ music.play();
+
+ // Start the game loop
+ while (window.isOpen())
+ {
+ // Process events
+ sf::Event event;
+ while (window.pollEvent(event))
+ {
+ // Close window : exit
+ if (event.type == sf::Event::Closed) {
+ window.close();
+ }
+
+ // Espace pressed : exit
+ if (event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Escape) {
+ window.close();
+ }
+ }
+
+ // Clear screen
+ window.clear();
+
+ // Draw the sprite
+ window.draw(sprite);
+
+ // Draw the string
+ window.draw(text);
+
+ // Update the window
+ window.display();
+ }
+
+ return EXIT_SUCCESS;
+}
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/nice_music.ogg b/tools/xcode/templates/SFML/SFML App.xctemplate/nice_music.ogg
new file mode 100644
index 0000000..f764d61
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/nice_music.ogg
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML App.xctemplate/sansation.ttf b/tools/xcode/templates/SFML/SFML App.xctemplate/sansation.ttf
new file mode 100644
index 0000000..d85fbc8
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML App.xctemplate/sansation.ttf
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML Base.xctemplate/TemplateInfo.plist b/tools/xcode/templates/SFML/SFML Base.xctemplate/TemplateInfo.plist
new file mode 100644
index 0000000..13fab2a
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML Base.xctemplate/TemplateInfo.plist
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<!--
+SFML - Simple and Fast Multimedia Library
+Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+ Laurent Gomila (laurent.gom@gmail.com),
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+
+2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
+ -->
+
+<!--
+ This template defines :
+ - the product name
+ - the organization name
+ - the bundle prefix
+ -->
+
+<plist version="1.0">
+ <dict>
+ <!--
+ BASIC INFO
+ -->
+ <key>Identifier</key>
+ <string>org.sfml-dev.base</string>
+
+ <key>Kind</key>
+ <string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
+
+ <key>Platforms</key>
+ <array>
+ <string>com.apple.platform.macosx</string>
+ </array>
+
+ <!--
+ OPTIONS
+ -->
+ <key>Options</key>
+ <array>
+ <dict>
+ <key>Identifier</key>
+ <string>productName</string>
+ <key>Required</key>
+ <true />
+ <key>Name</key>
+ <string>Product Name</string>
+ <key>NotPersisted</key>
+ <true />
+ <key>Description</key>
+ <string>Your new product&apos;s name</string>
+ <key>EmptyReplacement</key>
+ <string>ProductName</string>
+ <key>Type</key>
+ <string>text</string>
+ </dict>
+
+ <dict>
+ <key>Identifier</key>
+ <string>organizationName</string>
+ <key>Name</key>
+ <string>Organization Name</string>
+ <key>Description</key>
+ <string>Your company&apos;s name</string>
+ <key>Type</key>
+ <string>text</string>
+ <key>Default</key>
+ <string>___FULLUSERNAME___</string>
+ </dict>
+
+ <dict>
+ <key>Identifier</key>
+ <string>bundleIdentifierPrefix</string>
+ <key>Required</key>
+ <true />
+ <key>Name</key>
+ <string>Company Identifier</string>
+ <key>Description</key>
+ <string>Your company&apos;s bundle identifier prefix</string>
+ <key>EmptyReplacement</key>
+ <string>com.yourcompany</string>
+ <key>Type</key>
+ <string>text</string>
+ </dict>
+
+ <dict>
+ <key>Identifier</key>
+ <string>bundleIdentifier</string>
+ <key>Name</key>
+ <string>Bundle Identifier</string>
+ <key>NotPersisted</key>
+ <true />
+ <key>Description</key>
+ <string>Your new product&apos;s bundle identifier</string>
+ <key>Default</key>
+ <string>___VARIABLE_bundleIdentifierPrefix:bundleIdentifier___.___VARIABLE_productName:RFC1034Identifier___</string>
+ <key>Type</key>
+ <string>static</string>
+ </dict>
+ </array>
+ </dict>
+</plist>
diff --git a/tools/xcode/templates/SFML/SFML Bundle.xctemplate/TemplateInfo.plist b/tools/xcode/templates/SFML/SFML Bundle.xctemplate/TemplateInfo.plist
new file mode 100644
index 0000000..48138a7
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML Bundle.xctemplate/TemplateInfo.plist
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<!--
+SFML - Simple and Fast Multimedia Library
+Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+ Laurent Gomila (laurent.gom@gmail.com),
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+
+2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
+ -->
+
+<!--
+ This template defines :
+ - the bundle properties (plist)
+ - the target type (.app)
+ - the build phases
+ -->
+
+<plist version="1.0">
+ <dict>
+ <!--
+ BASIC INFO
+ -->
+ <key>Identifier</key>
+ <string>org.sfml-dev.bundle</string>
+
+ <key>Kind</key>
+ <string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
+
+ <key>Ancestors</key>
+ <array>
+ <string>org.sfml-dev.base</string>
+ </array>
+
+ <!--
+ FILES
+ -->
+ <key>Nodes</key>
+ <array>
+ <string>___PACKAGENAME___-Info.plist:Content</string>
+ </array>
+
+ <!--
+ DEFINITIONS
+ -->
+ <key>Definitions</key>
+ <dict>
+ <key>___PACKAGENAME___-Info.plist:Content</key> <!-- TODO add more fields here -->
+ <string>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;!DOCTYPE plist PUBLIC &quot;-//Apple//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&gt;
+&lt;plist version=&quot;1.0&quot;&gt;
+&lt;dict&gt;
+ &lt;key&gt;CFBundleIdentifier&lt;/key&gt;
+ &lt;string&gt;___VARIABLE_bundleIdentifierPrefix:bundleIdentifier___.${PRODUCT_NAME:rfc1034identifier}&lt;/string&gt;
+ &lt;key&gt;CFBundleDevelopmentRegion&lt;/key&gt;
+ &lt;string&gt;en&lt;/string&gt;
+ &lt;key&gt;CFBundleExecutable&lt;/key&gt;
+ &lt;string&gt;${EXECUTABLE_NAME}&lt;/string&gt;
+ &lt;key&gt;CFBundleIconFile&lt;/key&gt;
+ &lt;string&gt;&lt;/string&gt;
+ &lt;key&gt;CFBundleInfoDictionaryVersion&lt;/key&gt;
+ &lt;string&gt;6.0&lt;/string&gt;
+ &lt;key&gt;CFBundleName&lt;/key&gt;
+ &lt;string&gt;${PRODUCT_NAME}&lt;/string&gt;
+ &lt;key&gt;CFBundlePackageType&lt;/key&gt;
+ &lt;string&gt;APPL&lt;/string&gt;
+ &lt;key&gt;CFBundleSignature&lt;/key&gt;
+ &lt;string&gt;????&lt;/string&gt;
+&lt;/dict&gt;
+&lt;/plist&gt;
+</string>
+
+ <key>___PACKAGENAME___-Info.plist</key>
+ <dict>
+ <key>Group</key>
+ <string>Supporting Files</string>
+ <key>TargetIndices</key>
+ <array />
+ <key>SubstituteMacros</key>
+ <true />
+ </dict>
+ </dict>
+
+ <!--
+ TARGET
+ -->
+ <key>Targets</key>
+ <array>
+ <dict>
+ <key>BuildPhases</key>
+ <array>
+ <dict>
+ <key>Class</key>
+ <string>Sources</string>
+ </dict>
+ <dict>
+ <key>Class</key>
+ <string>Frameworks</string>
+ </dict>
+ <dict>
+ <key>Class</key>
+ <string>Resources</string>
+ </dict>
+ </array>
+
+ <key>ProductType</key>
+ <string>com.apple.product-type.application</string>
+
+ <key>SharedSettings</key>
+ <dict>
+ <key>INFOPLIST_FILE</key>
+ <string>___PACKAGENAME___/___PACKAGENAME___-Info.plist</string>
+ </dict>
+ </dict>
+ </array>
+ </dict>
+</plist>
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateIcon.icns b/tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateIcon.icns
new file mode 100644
index 0000000..477431b
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateIcon.icns
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateInfo.plist b/tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateInfo.plist
new file mode 100644
index 0000000..2c481f7
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/TemplateInfo.plist
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<!--
+SFML - Simple and Fast Multimedia Library
+Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+ Laurent Gomila (laurent.gom@gmail.com),
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+
+2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
+-->
+
+<!--
+ This template can create a SFML 2.0 Command Line Tool project.
+ -->
+
+<plist version="1.0">
+ <dict>
+ <!--
+ BASIC INFO
+ -->
+ <key>Identifier</key>
+ <string>org.sfml-dev.clt</string>
+
+ <key>Concrete</key>
+ <true />
+
+ <key>Description</key>
+ <string>This template creates a SFML Command Line Tool.</string>
+
+ <key>Kind</key>
+ <string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
+
+ <key>Ancestors</key>
+ <array>
+ <string>org.sfml-dev.base</string>
+ <string>org.sfml-dev.compiler</string>
+ <string>org.sfml-dev.linker</string>
+ </array>
+
+ <!--
+ FILES
+ -->
+ <key>Nodes</key>
+ <array>
+ <string>main.cpp</string>
+ <string>cute_image.jpg</string>
+ <string>nice_music.ogg</string>
+ <string>sansation.ttf</string>
+ <string>icon.png</string>
+ </array>
+
+ <!--
+ DEFINITIONS
+ -->
+ <key>Definitions</key>
+ <dict>
+ <!-- MAIN -->
+ <key>main.cpp</key>
+ <dict>
+ <key>Path</key>
+ <string>main.cpp</string>
+ </dict>
+
+ <!-- RESOURCES -->
+ <key>cute_image.jpg</key>
+ <dict>
+ <key>Path</key>
+ <string>cute_image.jpg</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+
+ <key>nice_music.ogg</key>
+ <dict>
+ <key>Path</key>
+ <string>nice_music.ogg</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+
+ <key>sansation.ttf</key>
+ <dict>
+ <key>Path</key>
+ <string>sansation.ttf</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+
+ <key>icon.png</key>
+ <dict>
+ <key>Path</key>
+ <string>icon.png</string>
+ <key>Group</key>
+ <string>Resources</string>
+ </dict>
+ </dict>
+
+ <!--
+ TARGET
+ -->
+ <key>Targets</key>
+ <array>
+ <dict>
+ <key>BuildPhases</key>
+ <array>
+ <dict>
+ <key>Class</key>
+ <string>Sources</string>
+ </dict>
+ <dict>
+ <key>Class</key>
+ <string>Frameworks</string>
+ </dict>
+ </array>
+
+ <key>ProductType</key>
+ <string>com.apple.product-type.tool</string>
+ </dict>
+ </array>
+ </dict>
+</plist>
+
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/cute_image.jpg b/tools/xcode/templates/SFML/SFML CLT.xctemplate/cute_image.jpg
new file mode 100644
index 0000000..20724fa
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/cute_image.jpg
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/icon.png b/tools/xcode/templates/SFML/SFML CLT.xctemplate/icon.png
new file mode 100644
index 0000000..ef62688
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/icon.png
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/main.cpp b/tools/xcode/templates/SFML/SFML CLT.xctemplate/main.cpp
new file mode 100644
index 0000000..daeddf0
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/main.cpp
@@ -0,0 +1,89 @@
+
+//
+// Disclamer:
+// ----------
+//
+// This code will work only if you selected window, graphics and audio.
+//
+// In order to load the resources like cute_image.png, you have to set up
+// your target scheme :
+//
+// - Select "Edit Schemeā€¦" in the "Product" menu;
+// - Check the box "use custom working directory";
+// - Fill the text field with the folder path containing your resources;
+// (e.g. your project folder)
+// - Click OK.
+//
+
+#include <SFML/Audio.hpp>
+#include <SFML/Graphics.hpp>
+
+int main(int argc, char const** argv)
+{
+ // Create the main window
+ sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");
+
+ // Set the Icon
+ sf::Image icon;
+ if (!icon.loadFromFile("icon.png")) {
+ return EXIT_FAILURE;
+ }
+ window.setIcon(icon.getSize().x, icon.getSize().y, icon.getPixelsPtr());
+
+ // Load a sprite to display
+ sf::Texture texture;
+ if (!texture.loadFromFile("cute_image.jpg")) {
+ return EXIT_FAILURE;
+ }
+ sf::Sprite sprite(texture);
+
+ // Create a graphical text to display
+ sf::Font font;
+ if (!font.loadFromFile("sansation.ttf")) {
+ return EXIT_FAILURE;
+ }
+ sf::Text text("Hello SFML", font, 50);
+ text.setColor(sf::Color::Black);
+
+ // Load a music to play
+ sf::Music music;
+ if (!music.openFromFile("nice_music.ogg")) {
+ return EXIT_FAILURE;
+ }
+
+ // Play the music
+ music.play();
+
+ // Start the game loop
+ while (window.isOpen())
+ {
+ // Process events
+ sf::Event event;
+ while (window.pollEvent(event))
+ {
+ // Close window : exit
+ if (event.type == sf::Event::Closed) {
+ window.close();
+ }
+
+ // Espace pressed : exit
+ if (event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Escape) {
+ window.close();
+ }
+ }
+
+ // Clear screen
+ window.clear();
+
+ // Draw the sprite
+ window.draw(sprite);
+
+ // Draw the string
+ window.draw(text);
+
+ // Update the window
+ window.display();
+ }
+
+ return EXIT_SUCCESS;
+}
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/nice_music.ogg b/tools/xcode/templates/SFML/SFML CLT.xctemplate/nice_music.ogg
new file mode 100644
index 0000000..f764d61
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/nice_music.ogg
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML CLT.xctemplate/sansation.ttf b/tools/xcode/templates/SFML/SFML CLT.xctemplate/sansation.ttf
new file mode 100644
index 0000000..d85fbc8
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML CLT.xctemplate/sansation.ttf
Binary files differ
diff --git a/tools/xcode/templates/SFML/SFML Compiler.xctemplate/TemplateInfo.plist b/tools/xcode/templates/SFML/SFML Compiler.xctemplate/TemplateInfo.plist
new file mode 100644
index 0000000..fb1e2d6
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML Compiler.xctemplate/TemplateInfo.plist
@@ -0,0 +1,288 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<!--
+SFML - Simple and Fast Multimedia Library
+Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+ Laurent Gomila (laurent.gom@gmail.com),
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+
+2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
+ -->
+
+<!--
+ This template defines :
+ - the compiler & std lib
+ - the supported arch
+ - some other target's settings (e.g. warnings flags)
+ - the search paths
+ -->
+
+<plist version="1.0">
+ <dict>
+ <!--
+ BASIC INFO
+ -->
+ <key>Identifier</key>
+ <string>org.sfml-dev.compiler</string>
+
+ <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++98 with Clang and libstdc++</string>
+
+ <key>NotPersisted</key>
+ <true />
+
+ <key>Type</key>
+ <string>popup</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- Use GCC and libstdc++ -->
+ <key>C++98 with GCC and libstdc++ and target 10.5</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>GCC_VERSION</key>
+ <string>com.apple.compilers.llvmgcc42</string>
+
+ <key>MACOSX_DEPLOYMENT_TARGET</key>
+ <string>10.5</string>
+ </dict>
+ </dict>
+
+ <key>Targets</key>
+ <array>
+ <dict>
+ <key>Frameworks</key>
+ <array>
+ <string>Foundation</string>
+ </array>
+ </dict>
+ </array>
+ </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>
+
+ <dict>
+ <key>Identifier</key>
+ <string>archType</string>
+
+ <key>Name</key>
+ <string>[ADVANCED] Architectures</string>
+
+ <key>Description</key>
+ <string>Choose which architecture(s) you want to support</string>
+
+ <key>Default</key>
+ <string>Universal</string>
+
+ <key>NotPersisted</key>
+ <true />
+
+ <key>Type</key>
+ <string>popup</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- Support 32 + 64 bits -->
+ <key>Universal</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>ARCHS</key>
+ <string>$(ARCHS_STANDARD_32_64_BIT)</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- Support 64 bits -->
+ <key>64 bits</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>ARCHS</key>
+ <string>$(ARCHS_STANDARD_64_BIT)</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- Support 32 bits -->
+ <key>32 bits</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>ARCHS</key>
+ <string>$(ARCHS_STANDARD_32_BIT)</string>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </array>
+
+ <!--
+ SETTINGS
+ -->
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict
+ <!-- PLATFORM -->
+ <key>SUPPORTED_PLATFORMS</key>
+ <string>macosx</string>
+
+ <!-- WARNINGS -->
+ <!-- TODO add more warnings -->
+ <key>GCC_WARN_ABOUT_RETURN_TYPE</key>
+ <string>YES</string>
+ <key>GCC_WARN_UNINITIALIZED_AUTOS</key>
+ <string>YES</string>
+ <key>GCC_WARN_UNUSED_VARIABLE</key>
+ <string>YES</string>
+ <key>CLANG_WARN__DUPLICATE_METHOD_MATCH</key>
+ <string>YES</string>
+ <key>CLANG_WARN_EMPTY_BODY</key>
+ <string>YES</string>
+
+ <!-- SERACH PATHS -->
+ <key>FRAMEWORK_SEARCH_PATHS</key>
+ <string> /Library/Frameworks/ $(inherited) </string>
+
+ <key>HEADER_SEARCH_PATHS</key>
+ <string> /usr/local/include/ $(inherited) </string>
+
+ <key>LIBRARY_SEARCH_PATHS</key>
+ <string> /usr/local/lib/ $(inherited) </string>
+ </dict>
+
+ <key>Configurations</key>
+ <dict>
+ <key>Debug</key>
+ <dict>
+ <key>GCC_OPTIMIZATION_LEVEL</key>
+ <string>0</string>
+
+ <key>GCC_PREPROCESSOR_DEFINITIONS</key>
+ <string>DEBUG=1 $(inherited)</string>
+
+ <!-- ALWAYS compile for all arch. -->
+ <key>ONLY_ACTIVE_ARCH</key>
+ <string>NO</string>
+ </dict>
+
+ <key>Release</key>
+ <dict>
+ <key>COPY_PHASE_STRIP</key>
+ <string>YES</string>
+
+ <!-- ALWAYS compile for all arch. -->
+ <key>ONLY_ACTIVE_ARCH</key>
+ <string>NO</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!--
+ TARGET
+ -->
+ <key>Targets</key>
+ <array>
+ <dict>
+ <key>Name</key>
+ <string>___PACKAGENAME___</string>
+
+ <key>SharedSettings</key>
+ <dict>
+ <key>PRODUCT_NAME</key>
+ <string>$(TARGET_NAME)</string>
+ </dict>
+
+ <key>Configurations</key>
+ <dict>
+ <key>Debug</key>
+ <dict />
+ <key>Release</key>
+ <dict />
+ </dict>
+ </dict>
+ </array>
+ </dict>
+</plist>
diff --git a/tools/xcode/templates/SFML/SFML Linker.xctemplate/TemplateInfo.plist b/tools/xcode/templates/SFML/SFML Linker.xctemplate/TemplateInfo.plist
new file mode 100644
index 0000000..a636d30
--- /dev/null
+++ b/tools/xcode/templates/SFML/SFML Linker.xctemplate/TemplateInfo.plist
@@ -0,0 +1,363 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<!--
+SFML - Simple and Fast Multimedia Library
+Copyright (C) 2007-2013 Marco Antognini (antognini.marco@gmail.com),
+ Laurent Gomila (laurent.gom@gmail.com),
+
+This software is provided 'as-is', without any express or implied warranty.
+In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose,
+including commercial applications, and to alter it and redistribute it freely,
+subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented;
+ you must not claim that you wrote the original software.
+ If you use this software in a product, an acknowledgment
+ in the product documentation would be appreciated but is not required.
+
+2. Altered source versions must be plainly marked as such,
+ and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
+-->
+
+<!--
+ This template defines :
+ - whether the project uses dylibs or frameworks
+ - which modules are used
+ - how the project links against those modules
+ -->
+
+<plist version="1.0">
+ <dict>
+ <!--
+ BASIC INFO
+ -->
+ <key>Identifier</key>
+ <string>org.sfml-dev.linker</string>
+
+ <key>Kind</key>
+ <string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
+
+ <!--
+ OPTIONS
+ -->
+ <key>Options</key>
+ <array>
+ <!-- BINARY TYPE -->
+ <dict>
+ <key>Identifier</key>
+ <string>binaryType</string>
+
+ <key>Name</key>
+ <string>[ADVANCED] SFML binaries</string>
+
+ <key>Description</key>
+ <string>Choose between dylibs and frameworks. If you're not sure, keep the default value.</string>
+
+ <key>Default</key>
+ <string>Frameworks</string>
+
+ <key>NotPersisted</key>
+ <true />
+
+ <key>Type</key>
+ <string>popup</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- Use frameworks -->
+ <key>Frameworks</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_BINARY_TYPE</key>
+ <string>FRAMEWORKS</string>
+
+ <key>SFML_LINK_DYLIBS_SUFFIX</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- Use dylibs -->
+ <key>Dylibs</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_BINARY_TYPE</key>
+ <string>DYLIBS</string>
+
+ <key>SFML_LINK_DYLIBS_SUFFIX</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- Use dylibs (debug) -->
+ <key>Dylibs (debug)</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_BINARY_TYPE</key>
+ <string>DYLIBS</string>
+ </dict>
+
+ <key>Configurations</key>
+ <dict>
+ <key>Debug</key>
+ <dict>
+ <key>SFML_LINK_DYLIBS_SUFFIX</key>
+ <string>-d</string>
+ </dict>
+
+ <key>Release</key>
+ <dict>
+ <key>SFML_LINK_DYLIBS_SUFFIX</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- WINDOW MODULE -->
+ <dict>
+ <key>Identifier</key>
+ <string>windowModule</string>
+
+ <key>Name</key>
+ <string>Use window module</string>
+
+ <key>Description</key>
+ <string>Indicates whether window module should be used or not.</string>
+
+ <key>Type</key>
+ <string>checkbox</string>
+
+ <key>Default</key>
+ <string>true</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- WINDOW MODULE : YES -->
+ <key>true</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_WINDOW</key>
+ <string>$(SFML_LINK_PREFIX)sfml-window$(SFML_LINK_SUFFIX)</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- WINDOW MODULE : NO -->
+ <key>false</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_WINDOW</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- GRAPHICS MODULE -->
+ <dict>
+ <key>Identifier</key>
+ <string>graphicsModule</string>
+
+ <key>Name</key>
+ <string>Use graphics module</string>
+
+ <key>Description</key>
+ <string>Indicates whether graphics module should be used or not.</string>
+
+ <key>RequiredOptions</key>
+ <dict>
+ <key>windowModule</key>
+ <string>true</string>
+ </dict>
+
+ <key>Type</key>
+ <string>checkbox</string>
+
+ <key>Default</key>
+ <string>true</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- GRAPHICS MODULE : YES -->
+ <key>true</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_GRAPHICS</key>
+ <string>$(SFML_LINK_PREFIX)sfml-graphics$(SFML_LINK_SUFFIX)</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- GRAPHICS MODULE : NO -->
+ <key>false</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_GRAPHICS</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- AUDIO MODULE -->
+ <dict>
+ <key>Identifier</key>
+ <string>audioModule</string>
+
+ <key>Name</key>
+ <string>Use audio module</string>
+
+ <key>Description</key>
+ <string>Indicates whether audio module should be used or not.</string>
+
+ <key>Type</key>
+ <string>checkbox</string>
+
+ <key>Default</key>
+ <string>true</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- AUDIO MODULE : YES -->
+ <key>true</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_AUDIO</key>
+ <string>$(SFML_LINK_PREFIX)sfml-audio$(SFML_LINK_SUFFIX)</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- AUDIO MODULE : NO -->
+ <key>false</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_AUDIO</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- NETWORK MODULE -->
+ <dict>
+ <key>Identifier</key>
+ <string>networkModule</string>
+
+ <key>Name</key>
+ <string>Use network module</string>
+
+ <key>Description</key>
+ <string>Indicates whether network module should be used or not.</string>
+
+ <key>Type</key>
+ <string>checkbox</string>
+
+ <key>Default</key>
+ <string>true</string>
+
+ <key>Units</key>
+ <dict>
+ <!-- NETWORK MODULE : YES -->
+ <key>true</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_NETWORK</key>
+ <string>$(SFML_LINK_PREFIX)sfml-network$(SFML_LINK_SUFFIX)</string>
+ </dict>
+ </dict>
+ </dict>
+
+ <!-- NETWORK MODULE : NO -->
+ <key>false</key>
+ <dict>
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <key>SFML_NETWORK</key>
+ <string></string>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </dict>
+ </array>
+
+ <!--
+ SETTINGS
+ -->
+ <key>Project</key>
+ <dict>
+ <key>SharedSettings</key>
+ <dict>
+ <!-- Define some prefixes and suffixes -->
+ <key>SFML_LINK_DYLIBS_PREFIX</key>
+ <string>-l</string>
+
+ <key>SFML_LINK_FRAMEWORKS_PREFIX</key>
+ <string>-framework </string>
+
+ <key>SFML_LINK_FRAMEWORKS_SUFFIX</key>
+ <string></string>
+
+ <key>SFML_LINK_PREFIX</key>
+ <string>$(SFML_LINK_$(SFML_BINARY_TYPE)_PREFIX)</string>
+
+ <key>SFML_LINK_SUFFIX</key>
+ <string>$(SFML_LINK_$(SFML_BINARY_TYPE)_SUFFIX)</string>
+
+ <!-- SFML SYSTEM : always used -->
+ <key>SFML_SYSTEM</key>
+ <string>$(SFML_LINK_PREFIX)sfml-system$(SFML_LINK_SUFFIX)</string>
+
+ <!-- LINKER FLAGS -->
+ <key>OTHER_LDFLAGS</key>
+ <string>$(inherited) $(SFML_SYSTEM) $(SFML_WINDOW) $(SFML_GRAPHICS) $(SFML_AUDIO) $(SFML_NETWORK)</string>
+ </dict>
+ </dict>
+ </dict>
+</plist>
+
diff --git a/tools/xcode/templates/install.sh b/tools/xcode/templates/install.sh
new file mode 100755
index 0000000..ec5ef0a
--- /dev/null
+++ b/tools/xcode/templates/install.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+# Install SFML templates for Xcode 4 into /Library/Developer/Xcode/Templates/
+
+mkdir -p /Library/Developer/Xcode/Templates/
+cp -R "$(dirname $0)/SFML" /Library/Developer/Xcode/Templates/
diff --git a/tools/xcode/templates/readme.txt b/tools/xcode/templates/readme.txt
new file mode 100644
index 0000000..ab28730
--- /dev/null
+++ b/tools/xcode/templates/readme.txt
@@ -0,0 +1,134 @@
+
+XCODE 4 TEMPLATES FOR SFML 2
+============================
+
+These templates help you to easily create a new SFML 2 project for Xcode 4.
+
+
+
+Web Site
+--------
+
+You can find more resources and information on the official web site : http://www.sfml-dev.org/
+
+
+
+Author & License
+----------------
+
+The templates were written by Marco Antognini <antognini.marco@gmail.com> and are provided under the terms of the zlib/png license : http://opensource.org/licenses/zlib-license.php
+
+
+
+Features
+--------
+
+ * You can choose between command line tool or bundle application, the latter will contains all SFML dependancies 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.
+
+
+
+Prerequisites
+-------------
+
+Before installing the template, make sure you have installed :
+
+ - Xcode 4 (the templates were tested with Xcode 4.5.2)
+ - SFML 2, either as framework or dylibs binaries
+
+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 4. If needed checkout this document : http://developer.apple.com/library/ios/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/000-About_Xcode/about.html
+
+
+
+Install
+-------
+
+If you are building SFML from sources you can set CMake's INSTALL_XCODE4_TEMPLATES variable to TRUE to install the templates automatically. Otherwise proceed as follow :
+ 1. Make sure "~/Library/Developer/Xcode/Templates/" folder exists;
+ 2. Copy "SFML" folder into the above folder.
+The 'install.sh' script in the same directory as this readme does that for you.
+
+
+
+Usage
+-----
+
+To use these templates follow these steps :
+
+ 1. open Xcode 4,
+ 2. select "create a new Xcode project" from the "Welcome to Xcode" window or select menus File > New > New Project,
+ 3. select "SFML" subsection under "Mac OS X" on the left,
+ 4. then select either "SFML App", if you want an application bundle, or "SFML CLT", if you prefer a classic Unix executable,
+ 5. fill in the requested information and you're ready to go !
+
+Note : some settings are marked as "[ADVANCED]" in the wizard. If you're not sure what they are, simply keep the default settings. If you get errors later you would probably want to explore their meaning.
+
+
+
+Question & Answer
+-----------------
+
+ * I want to use Xcode 3. Can I use these templates anyway ?
+
+ No, Xcode 3 and 4 don't have the same template system. Therefore these templates won't work with a older version of Xcode.
+
+
+
+ * I'm still using SFML 1.6. Can I use these templates anyway ?
+
+ No, these templates were made for SFML 2 only.
+
+
+
+ * I would like to add/remove a module of SFML from my current project without creating a new project. How can I do that ?
+
+ 1. select your project in the project navigator panel,
+ 2. select your project's target on the main area,
+ 3. go to the "Build Settings" tab,
+ 4. go down to the bottom,
+ 5. set SFML_XXX variable, where XXX is the name of the module to add/remove, to "$(SFML_LINK_PREFIX)sfml-XXX$(SFML_LINK_SUFFIX)" to add it or to "" (nothing) to remove it.
+
+
+
+ * I changed my mind and would like to switch from dylibs to frameworks or vice versa. How can I do that ?
+
+ 1. select your project in the project navigator panel,
+ 2. select your project's target on the main area,
+ 3. go to the "Build Settings" tab,
+ 4. go down to the bottom,
+ 5. set SFML_BINARY_TYPE to either "DYLIBS" or "FRAMEWORKS".
+
+
+
+ * How to use/don't use debug dylibs ?
+
+ You can choose to use or not SFML debug binaries when creating a new project. However, if you have already created your project you can do the following :
+
+ 1. select your project from the project navigator panel,
+ 2. select your project's target on the main area,
+ 3. go to the "Build Settings" tab,
+ 4. go down to the bottom,
+ 5. set SFML_LINK_DYLIBS_SUFFIX_DEBUG to "-d" to use them or to "" (empty string) to use only release binaries.
+
+
+
+ * I want to use the static version of SFML. Is it possible ?
+
+ Short answer : Don't do that!
+
+ We strongly recommend you to use either dylibs or frameworks on Mac OS X. Please refer to Apple documentation for information about static vs shared libraries debate.
+
+ If you really need/want to use static libraries proceed as follow. First, set your project to use dylibs (see above Q & A). Then set SFML_LINK_DYLIBS_SUFFIX to "-s-d" in debug mode and to "-s" in release mode. Finally, remove the script automatically generated by the template (see Build Phases tab).
+
+
+
+ * I get strange linker error about std::string and other STL types. What shall 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.
+
+