Updated the version to 2.2, added support for patch versions and added the changelog.txt

This commit is contained in:
Lukas Dürrenberger 2014-12-02 00:33:13 +01:00
parent 21756145cb
commit 1c46ec7c37
5 changed files with 185 additions and 11 deletions

View File

@ -1,4 +1,3 @@
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
# define a macro that helps defining an option # define a macro that helps defining an option
@ -21,7 +20,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/Config.cmake)
# setup version numbers # setup version numbers
set(VERSION_MAJOR 2) set(VERSION_MAJOR 2)
set(VERSION_MINOR 1) set(VERSION_MINOR 2)
set(VERSION_PATCH 0) set(VERSION_PATCH 0)
# add the SFML header path # add the SFML header path

172
changelog.txt Normal file
View File

@ -0,0 +1,172 @@
SFML 2.2
========
Also available on the website: http://www.sfml-dev.org/changelog.php#sfml-2.2
General
=======
* Support for iOS and Android platform (#410, #440)
* Various documentation corrections (#438, #496, #497, #714)
* Fixed support for compilers on Debian FreeBSD (#380, #578)
* Added support for Visual Studio 2013 and proper support for the TDM builds (#482)
* Fixed CMake problems related to FindSFML and cached variables (#637, #684)
* Switched and enforced LF line endings (#708, #712)
* Updated OpenAL to version 1.15.1 (d077210)
* Made compiler and OS variable names much clearer in CMake files (9b0ed30)
* Re-enabled RPATH feature (e157e7a)
* Slight adjustments to the examples (#737)
* [FreeBSD] Various configuration fixes (#577, #578)
* [Linux] Updated FindSFML.cmake to add UDev to SFML's dependencies (#728, #729, #734, #736)
* [OS X] Fixed incorrect symlink in freetype.framework (#519)
* [OS X] CMake module for correct dependencies (#548)
* [OS X] Fixed SFML target for Xcode (#595, #596)
* [OS X] Updated implementation, mainly reverting to non-ARC (#601)
* [OS X] Fixed memory leaks and dead store (#615)
* [OS X] Improved event handling and performance (#617)
* [OS X] Reduced memory usage (#672, #698)
* [OS X] OS X 10.10 support (#691, #699)
* [OS X] Improve flexibility of dependencies' locations (#713)
* [Windows] Removed the hack that copied external libraries into SFML static libraries (dbf01a7)
System
======
Features
--------
* Added substring and replace functions to sf::String (#21, #355)
* Added toUtfX to sf::String (#501)
* Added fromUtfX functions to set the internal data to a string by converting from another string in a fixed encoding (#196)
* Added modulo operator for sf::Time (#429, #430)
* Added division operator for sf::Time (#453)
Bugfixes
--------
* Ensured a high resolution for sf::sleep (#439, #475)
* [Windows] Fixed stack unalignment by two internal functions (#412)
Window
======
Features
--------
* Added window methods to request and to check focus (#518, #525, #613, #723, #735)
* Provide name, manufacturer ID and product ID via sf::Joystick (#152, #528)
* [FreeBDS] Joystick support (#477)
* [OS X] Improved integration with menus and dock actions (#11)
* [OS X] Support for OpenGL 3.2 (#84)
* [OS X] Improved fullscreen support (#343)
* [OS X] Added support for retina displays (#353, #388)
* [Windows] Removed support for Windows 9x (#469)
* [Windows] Fixed typo in Windows keyboard implementation (#516)
Bugfixes
--------
* sf::Window::create() now also resets framerate limit (#371)
* Fixed OpenGL context leak (#635, #705)
* Fixed various joystick problems (memory leak, accelerometer detected, code refactoring) (#660, #686, #742, #743)
* Optimized sf::Window::waitEvent a bit, no sleep if events are available at first try (ff555d6)
* [Linux] Output error message when XOpenDisplay() fails (#508, #616)
* [Linux] Resize window with setSize when sf::Style::Resize is set (#466)
* [Linux] Fixed broken key repeat on window recreation (#564, #567)
* [OS X] Fixed KeyReleased not being fired in fullscreen mode (#465)
* [OS X] Fixed an issue where disconnecting the keyboard would cause a crash (#467)
* [OS X] Fixed unexpected resizing behavior (#468)
* [OS X] Improved resizing windows (#474)
* [OS X] Fixed memory leak with sf::Window::create() (#484)
* [OS X] Fixed menu shortcuts in fullscreen on OS X (#527)
* [OS X] Improved cursor hiding (#703)
* [OS X] Fixed right click not detected with trackpads (#716, #730)
* [Windows] Fixed joystick POV values (ef1d29b)
* [Windows] Fixed Unicode inconsistency (#635)
* [Windows] Fixed Alt+F4 and mouse clicks issues (#437, #457)
* [Windows] Send MouseButtonReleased event when the mouse is outside of the window (#455, #457)
* [Windows] Fixed sf::Joystick wrong registry usage (#701, #702, #706)
Graphics
========
Features
--------
* Provide more information about the loaded font in sf::Font (#164)
* Implemented a more flexible blending system (#298)
* Added strikethrough text style (#243, #362, #682)
* Slight optimization for sf::Text::setString (#413)
* Added subtraction operator for sf::Color (#114, #145)
* Optimized sf::Image::flipVertically/flipHorizontally (#555)
* Changed sf::Font measurements from int to float to allow better underline drawing (#693)
Bugfixes
--------
* Improved text quality for small and pixelated fonts (#228)
* Yet another fix for Intel GPUs with sf::RenderTexture (#418)
* Removed VTab since it causes issues and doesn't have a use nowadays (#442, #445, #460, #588)
* Fixed broken BDF and PCF font formats (#448)
* Fixed compilation issue with newer versions of GCC for sf::Rect (#458)
* Fixed resetGLStates() not explicitly setting the default polygon mode (#480)
* Fixed division-by-zero in sf::RectangleShape (#499)
* Fixed potential memory leak in sf::Font (#509)
* Updated glext and removed glxext (#511, #583)
* Make sure texture unit 0 is active when resetting sf::RenderTarget states (#523, #591)
* Fixed texture rect computation in fonts (#669)
* Improved rendering of underlined text (#593)
* Avoided repeated output of error messages (#566)
* Fixed text rendered with vertical offset on ascent and font size mismatch (#576)
* Fixed rounding problem for viewports (#598)
* Fixed sf::Shader::isAvailable() possibly breaking context management (#211, #603, #608, #603)
* Fixed sf::Texture::getMaximumSize() possibly breaking context management (#666)
* Fixed various sf::Text rendering issues (#692, #699)
* The texture matrix is now reset in sf::Texture::bind(NULL) (7c4b058)
* [Windows] Fixed DPI scaling causing strange window behavior (#679, #681, #688)
Audio
=====
Features
--------
* Added support for selecting the audio capture device (#220, #470)
* Make sf::SoundRecorder processing frequency configurable (#333)
* Added up vector to sf::Listener (#545)
Bugfixes
--------
* Prevented sf::SoundStream::setPlayingOffset() from restarting playing even when paused (#203, #592)
* Fixed sf::SoundBuffer contents not being able to be updated when still attached to sounds (#354, 367, #390, #589)
* Catch audio format error and prevent division by zero (#529)
* Fixed sf::SoundBuffer returning wrong duration for sounds containing more than ~4.3 million samples (2ff58ed)
* Optimized sf::Listener with a cache (d97e524)
Network
=======
Features
--------
* Added support for PUT and DELETE in sf::Http (#257, #312, #607)
* Added support for chunked HTTP transfers (#296, #337)
* Added support for 64-bit integers in sf::Packet (#710)
* Made sf::Ftp::sendCommand() public (2c5cab5)
Bugfixes
--------
* Checked socket descriptor limit (#153, #628, #683)
* Fixed sf::TcpSocket::connect()'s switching from blocking to non-blocking mode on immediate connection success (#221)
* Fixed FTP download and upload file sizes being limited by available RAM (#565, #590)
* Fixed C++11 compiler warnings for sf::Uint8 (#731, #732)
SFML 2.1
========
Please refer to the release announcement: http://en.sfml-dev.org/forums/index.php?topic=76.msg86454#msg86454
SFML 2.0
========
Please refer to the release announcement: http://en.sfml-dev.org/forums/index.php?topic=76.msg78424#msg78424

View File

@ -42,8 +42,8 @@ macro(sfml_add_library target)
# set the version and soversion of the target (for compatible systems -- mostly Linuxes) # set the version and soversion of the target (for compatible systems -- mostly Linuxes)
# except for Android which strips soversion suffixes # except for Android which strips soversion suffixes
if(NOT SFML_OS_ANDROID) if(NOT SFML_OS_ANDROID)
set_target_properties(${target} PROPERTIES SOVERSION ${VERSION_MAJOR}) set_target_properties(${target} PROPERTIES SOVERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
set_target_properties(${target} PROPERTIES VERSION ${VERSION_MAJOR}.${VERSION_MINOR}) set_target_properties(${target} PROPERTIES VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
endif() endif()
# set the target's folder (for IDEs that support it, e.g. Visual Studio) # set the target's folder (for IDEs that support it, e.g. Visual Studio)

View File

@ -89,15 +89,16 @@ if(SFML_FIND_VERSION AND SFML_INCLUDE_DIR)
set(SFML_CONFIG_HPP_INPUT "${SFML_INCLUDE_DIR}/SFML/Config.hpp") set(SFML_CONFIG_HPP_INPUT "${SFML_INCLUDE_DIR}/SFML/Config.hpp")
endif() endif()
FILE(READ "${SFML_CONFIG_HPP_INPUT}" SFML_CONFIG_HPP_CONTENTS) FILE(READ "${SFML_CONFIG_HPP_INPUT}" SFML_CONFIG_HPP_CONTENTS)
STRING(REGEX MATCH ".*#define SFML_VERSION_MAJOR ([0-9]+).*#define SFML_VERSION_MINOR ([0-9]+).*" SFML_CONFIG_HPP_CONTENTS "${SFML_CONFIG_HPP_CONTENTS}") STRING(REGEX MATCH ".*#define SFML_VERSION_MAJOR ([0-9]+).*#define SFML_VERSION_MINOR ([0-9]+).*#define SFML_VERSION_PATCH ([0-9]+).*" SFML_CONFIG_HPP_CONTENTS "${SFML_CONFIG_HPP_CONTENTS}")
STRING(REGEX REPLACE ".*#define SFML_VERSION_MAJOR ([0-9]+).*" "\\1" SFML_VERSION_MAJOR "${SFML_CONFIG_HPP_CONTENTS}") STRING(REGEX REPLACE ".*#define SFML_VERSION_MAJOR ([0-9]+).*" "\\1" SFML_VERSION_MAJOR "${SFML_CONFIG_HPP_CONTENTS}")
STRING(REGEX REPLACE ".*#define SFML_VERSION_MINOR ([0-9]+).*" "\\1" SFML_VERSION_MINOR "${SFML_CONFIG_HPP_CONTENTS}") STRING(REGEX REPLACE ".*#define SFML_VERSION_MINOR ([0-9]+).*" "\\1" SFML_VERSION_MINOR "${SFML_CONFIG_HPP_CONTENTS}")
math(EXPR SFML_REQUESTED_VERSION "${SFML_FIND_VERSION_MAJOR} * 10 + ${SFML_FIND_VERSION_MINOR}") STRING(REGEX REPLACE ".*#define SFML_VERSION_PATCH ([0-9]+).*" "\\1" SFML_VERSION_PATCH "${SFML_CONFIG_HPP_CONTENTS}")
math(EXPR SFML_REQUESTED_VERSION "${SFML_FIND_VERSION_MAJOR} * 10000 + ${SFML_FIND_VERSION_MINOR} * 100 + ${SFML_FIND_VERSION_PATCH}")
# if we could extract them, compare with the requested version number # if we could extract them, compare with the requested version number
if (SFML_VERSION_MAJOR) if (SFML_VERSION_MAJOR)
# transform version numbers to an integer # transform version numbers to an integer
math(EXPR SFML_VERSION "${SFML_VERSION_MAJOR} * 10 + ${SFML_VERSION_MINOR}") math(EXPR SFML_VERSION "${SFML_VERSION_MAJOR} * 10000 + ${SFML_VERSION_MINOR} * 100 + ${SFML_VERSION_PATCH}")
# compare them # compare them
if(SFML_VERSION LESS SFML_REQUESTED_VERSION) if(SFML_VERSION LESS SFML_REQUESTED_VERSION)
@ -105,10 +106,11 @@ if(SFML_FIND_VERSION AND SFML_INCLUDE_DIR)
endif() endif()
else() else()
# SFML version is < 2.0 # SFML version is < 2.0
if (SFML_REQUESTED_VERSION GREATER 19) if (SFML_REQUESTED_VERSION GREATER 10900)
set(SFML_VERSION_OK FALSE) set(SFML_VERSION_OK FALSE)
set(SFML_VERSION_MAJOR 1) set(SFML_VERSION_MAJOR 1)
set(SFML_VERSION_MINOR x) set(SFML_VERSION_MINOR x)
set(SFML_VERSION_PATCH x)
endif() endif()
endif() endif()
endif() endif()
@ -332,7 +334,7 @@ endif()
# handle errors # handle errors
if(NOT SFML_VERSION_OK) if(NOT SFML_VERSION_OK)
# SFML version not ok # SFML version not ok
set(FIND_SFML_ERROR "SFML found but version too low (requested: ${SFML_FIND_VERSION}, found: ${SFML_VERSION_MAJOR}.${SFML_VERSION_MINOR})") set(FIND_SFML_ERROR "SFML found but version too low (requested: ${SFML_FIND_VERSION}, found: ${SFML_VERSION_MAJOR}.${SFML_VERSION_MINOR}.${SFML_VERSION_PATCH})")
set(SFML_FOUND FALSE) set(SFML_FOUND FALSE)
elseif(SFML_STATIC_LIBRARIES AND FIND_SFML_DEPENDENCIES_NOTFOUND) elseif(SFML_STATIC_LIBRARIES AND FIND_SFML_DEPENDENCIES_NOTFOUND)
set(FIND_SFML_ERROR "SFML found but some of its dependencies are missing (${FIND_SFML_DEPENDENCIES_NOTFOUND})") set(FIND_SFML_ERROR "SFML found but some of its dependencies are missing (${FIND_SFML_DEPENDENCIES_NOTFOUND})")
@ -353,5 +355,5 @@ endif()
# handle success # handle success
if(SFML_FOUND) if(SFML_FOUND)
message(STATUS "Found SFML ${SFML_VERSION_MAJOR}.${SFML_VERSION_MINOR} in ${SFML_INCLUDE_DIR}") message(STATUS "Found SFML ${SFML_VERSION_MAJOR}.${SFML_VERSION_MINOR}.${SFML_VERSION_PATCH} in ${SFML_INCLUDE_DIR}")
endif() endif()

View File

@ -30,7 +30,8 @@
// Define the SFML version // Define the SFML version
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////
#define SFML_VERSION_MAJOR 2 #define SFML_VERSION_MAJOR 2
#define SFML_VERSION_MINOR 1 #define SFML_VERSION_MINOR 2
#define SFML_VERSION_PATCH 0
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////