Commit Graph

64 Commits

Author SHA1 Message Date
Marco Antognini
ba1488ec97 Improve flexibility of dependencies locations on OS X
- Replaced @executable_path by @rpath for more flexibility
 - Updated freetype and sndfile libs as follow:

    install_name_tool -id "@rpath/../Frameworks/freetype.framework/Versions/A/freetype" freetype
    install_name_tool -id "@rpath/../Frameworks/sndfile.framework/Versions/A/sndfile" sndfile
2014-10-07 10:46:05 +02:00
Stefan Schindler
f24ca9a840 Source code changes.
* Changed newlines to \n.
* Removed whitespace before colons.
* Fixed several alignments.
2014-10-06 01:18:47 +02:00
Stefan Schindler
e157e7a7a8 Re-enabled RPATH feature.
RPATH is especially useful when running debug builds for testing on *nix
operating systems, because the binaries (e.g. examples) include library
runtime path information. This allows you to skip installing SFML to the
system or adjusting PATH variables/ld config.
2014-08-27 08:11:07 +02:00
Marco Antognini
7ae381533e Improved CMake script
* Instead of configuring Xcode templates directly to /Library the files are first saved in CMAKE_CURRENT_BINARY_DIR
 * This avoid running CMake as root on some systems
2014-05-23 09:52:18 +02:00
Marco Antognini
6c802952fb Added config of Xcode templates according to CMAKE_OSX_ARCHITECTURES 2014-05-23 09:52:18 +02:00
Marco Antognini
ea0364d568 Renamed INSTALL_XCODE4_TEMPLATES to INSTALL_XCODE_TEMPLATES
Templates are compatible with versions 4 and 5 of Xcode.
2014-05-23 09:52:18 +02:00
Marco Antognini
2d08ed684b Removed unnecessary check in cmake regarding the deployment target
* Setting CMAKE_OSX_DEPLOYMENT_TARGET to something implies setting CMAKE_OSX_SYSROOT too
 * The default values are enough for most users
 * If someone is trying to compile SFML with 10.6 SDK it will simply fail later anyway
2014-05-23 09:52:18 +02:00
Marco Antognini
b9f5f19f7c Reverted OS X implementation to non-ARC
* Apparently, there were some leaks not reported as such
 * Support for 32 bits computer is restored
 * Fix memory leak in sfStringToNSString (related to #484)
 * Unapply context when closing the window, freeing memory

The following commits are related to ARC modifications:

 * 42f6e83dfb
 * 6edc4b9518
 * f6c94451fb
 * 324d4a18e7
 * 0d47056132

Commit ac28902b57 is the last one before the introduction of ARC.
2014-05-23 09:52:17 +02:00
Lucas SOLTIC
2e09dd225b Fix build of the SFML target on OS X with Xcode 2014-05-13 00:21:39 +02:00
Dmitry Marakasov
27eadf2a7c Properly handle pkgconfig files on FreeBSD 2014-04-25 17:54:11 +04:00
Marco Antognini
42f6e83dfb Improved cmake warning message
Related to #572
2014-04-20 21:45:22 +02:00
Marco Antognini
6edc4b9518 Improved cmake script: add OS X specific options only on Mac platform 2014-04-20 21:32:05 +02:00
Jonathan De Wachter
565bc69a4e Uniformized the way CMake find and link against external libraries 2014-04-20 12:57:58 +02:00
Jonathan De Wachter
bc46dfb8f5 [Android] Various adjustements 2014-04-20 12:57:11 +02:00
Jonathan De Wachter
f60ab60263 Added SFML_OS_ prefix to IOS and ANDROID variables 2014-04-20 12:57:02 +02:00
Jonathan De Wachter
cc0d982f72 [Android] Wrote a native activity acting as a bootstrap
A current limitation prevents one library from depending on shared libraries.
As we have legal issues here (LGPL wants us to use shared libs of OpenAL-Soft and libsndfile), we're forced to use this homemade native activity which will manually load our shared libraries.
2014-04-20 12:56:42 +02:00
Jonathan De Wachter
60894d1c1a [Android] Rewrote CMake scripts to compile SFML with our new toolchain 2014-04-20 12:56:40 +02:00
Laurent Gomila
ea3a29f150 [iOS] Added install rules to work around a CMake bug that prevented SFML libraries to be installed 2014-04-20 12:53:25 +02:00
Laurent Gomila
c35b48bcea [iOS] Removed support for examples, it was too much trouble and not as robust as true iOS App Xcode projects 2014-04-20 12:53:22 +02:00
Laurent Gomila
ca29498653 [iOS] Removed the install rule of the deleted ios.cmake toolchain file 2014-04-20 12:53:07 +02:00
Jonathan De Wachter
63bbe2c91e Added the Android port 2014-04-20 12:52:04 +02:00
Laurent
e5ee38fc26 Added the iOS port 2014-04-20 12:48:00 +02:00
Marco Antognini
19012c66ea Updated Xcode templates and cmake script
What's new in the templates:
 - Removed support for 32 bits and gcc
 - Removed useless code
 - Removed custom warnings settings – let Xcode decide with its default values
 - Set default target version to CMAKE_OSX_DEPLOYMENT_TARGET

What's new in cmake script:
 - Added cmake options for archs and deployment target
 - Added minimum requirements checking
2014-04-15 20:19:12 +02:00
Marco Antognini
0d47056132 Updated Objective-C implementation to use ARC; removed i386 support 2014-04-15 20:19:09 +02:00
Laurent Gomila
dbf01a775b Removed the hack that copied external libs into SFML static libs, users now have to link them explicitly 2013-10-16 20:47:14 +02:00
Laurent Gomila
9b0ed300b5 Made compiler and OS variable names much clearer in CMake files 2013-10-09 08:01:10 +02:00
Laurent Gomila
93b2152a08 Changed the default value of SFML_INSTALL_PKGCONFIG_FILES to FALSE (the generated pkg-config files contain local paths and thus are not suitable for distribution) 2013-08-04 20:40:10 +02:00
Laurent Gomila
6c1899d0f7 Updated version number 2013-07-21 09:30:08 +02:00
Laurent Gomila
ef78b6d0f3 Organized projects into folders, for IDEs that support it (e.g. Visual Studio) 2013-02-25 19:17:46 +01:00
Marco Antognini
54bc864484 Add freetype.framework and edit CMake accordingly. (Close #241)
Freetype version 2.4.11, build for OS X 10.5 and above as universal
binary (i386 + x86_64)
2013-01-19 16:20:01 +01:00
Marco Antognini
538d49aace Remove a part of CMake script that doesn't work any more.
No attempt to fix this part of the script is made because it change too
often (at each OS release) and no gain would result from a potential
fix.

SDKs are not stored in /Developer anymore with recent versions of Xcode.

Now the users should manually set the following variables :
 - CMAKE_OSX_SYSROOT,
 - CMAKE_OSX_DEPLOYMENT_TARGET,
 - CMAKE_OSX_ARCHITECTURES
2013-01-19 11:38:43 +01:00
Laurent Gomila
eaa5ae9c55 disabled the combination of BUILD_SHARED_LIBS and SFML_USE_STATIC_STD_LIBS in the build files 2012-09-16 20:12:42 +02:00
Laurent Gomila
459bc291f5 Added the SFML_ prefix on all the CMake variables specific to SFML 2012-04-18 19:07:47 +02:00
Laurent Gomila
511032460a The readme.txt file is now installed by the 'install' target 2012-04-08 11:22:36 +02:00
Marco Antognini
ac64a7c995 cmake now install Xcode templates for all users on the system. 2012-01-24 17:28:22 +01:00
John Bartholomew
2ac7653608 Add pkg-config files, optionally installed by CMake on Linux builds.
The modules provided are:

  - sfml-system
  - sfml-graphics
  - sfml-window
  - sfml-audio
  - sfml-network
  - sfml-all (depends on all the above modules)

They are installed to ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/pkgconfig/
which is the standard location for pkg-config files on Linux.

An example use if using autotools:

    # configure.ac
    AC_INIT([sfml-example],[1.0],[example@example.com])
    AM_INIT_AUTOMAKE([foreign])
    AC_PROG_CXX
    PKG_CHECK_MODULES([sfml],
        [sfml-all >= 2.0.0],
        [], [AC_MSG_ERROR([SFML is required])])
    AC_CONFIG_FILES([Makefile])
    AC_OUTPUT

    # Makefile.am
    bin_PROGRAMS = sfml_example
    sfml_example_SOURCES = src/sfml_example.cpp
    sfml_example_CFLAGS = $(sfml_CFLAGS)
    sfml_example_LIBS = $(sfml_LIBS)

An example if using hand-written Makefiles:

    # Makefile
    sfml-example: src/sfml-example.cpp
        g++ `pkg-config --cflags --libs sfml-all` -o $@ $^
2012-01-10 21:08:20 +00:00
Marco Antognini
2720532d63 move xcode/ into tools/ 2012-01-07 15:34:11 +01:00
Laurent Gomila
7a8b32c897 Merge branch 'master' of github.com:LaurentGomila/SFML 2012-01-03 18:03:03 +01:00
Laurent Gomila
91705fe25c The architecture (32/64 bits) is now detected only on Windows 2012-01-03 18:02:18 +01:00
Marco Antognini
de1a4fbeae minor fix in cmake script 2012-01-03 12:35:49 +01:00
Laurent Gomila
88683504ba *Really* solved the last commit problem :) 2012-01-02 07:47:13 +01:00
Laurent Gomila
ab0f84ad3f Solved problem with last commit 2012-01-02 07:45:33 +01:00
Laurent Gomila
9d0a0fe3f2 Improved the definition of options in CMake files, they can now be overriden by a parent CMakeLists.txt 2012-01-01 22:50:44 +01:00
Laurent Gomila
4107505a05 Made CMake files compatible with VC++ 2011, and other minor improvements 2011-12-28 21:39:23 +01:00
Laurent Gomila
d943f22c93 FindSFML.cmake is now installed to the same directory as other SFML files, not to <cmake install>/Modules anymore (admin rights problems) 2011-12-14 19:54:44 +01:00
Marco Antognini
d6c1fda5bd fixed creation of SFML.framework 2011-09-09 15:24:09 +02:00
Marco Antognini
95a0126371 Improved cmake : autodetect available OS X SDK 2011-09-05 18:54:03 +02:00
Marco Antognini
b834787946 Removed dummy.cpp 2011-09-05 18:53:20 +02:00
Marco Antognini
7d919f4344 Fixed frameworks compilation 2011-08-21 20:15:55 +02:00
Marco Antognini
e09db44906 Cmake now is able to build SFML libraries as frameworks (closes #12)
Cmake can now automatically install the Xcode templates
2011-08-20 12:22:39 +02:00