Commit Graph

3109 Commits

Author SHA1 Message Date
Chris Thrasher
1dcaa9a396 Fix CMake error messages 2022-08-22 11:26:57 +08:00
Chris Thrasher
78d99fe828 Simplify sfml-audio link libraries call 2022-08-22 11:26:57 +08:00
Chris Thrasher
aa82ea132b Set warnings with target_compile_options
The use of target_compile_options makes it easy to append warnings
to a target. The use of generator expressions also more succinctly
handles a few edge cases for compiler bugs and platform-specific
oddities.

This should be easy to read and maintain than the variable-based
solution it replaces.
2022-08-14 14:00:00 +08:00
Chris Thrasher
142ccf57bd Enable compiler warnings for Android 2022-08-12 18:01:36 +02:00
kimci86
863fef0246 Fix broken image URLs in doxygen.css 2022-08-03 23:55:43 +02:00
kimci86
6972463848 Enable doxygen search engine 2022-08-03 23:55:43 +02:00
kimci86
2b11d3ee0f Set mainpage title
The default title with doxygen 1.9.4 is "SFML" instead of "SFML
Documentation" as it was before, so we set the title manually.
2022-08-03 23:55:43 +02:00
kimci86
1b71e3d389 Update doxyfile.in for doxygen 1.9.4
Steps to update doxyfile.in:
- Run `doxygen -u doxyfile.in`
- Put back comments about SFML specific aliases.
- Add quotes around CMake variables for paths as they may be substituted
  with values containing space characters.
2022-08-03 23:55:43 +02:00
Chris Thrasher
a71d60a0c9 Simplify how warnings are ignored on Apple platforms
Within files that are only compiled on Apple platforms, we don't
need that redundant check for __APPLE__ so that got removed. Further,
Clang will recognize GCC pragmas so we don't need both Clang AND GCC
pragmas so I removed the Clang pragmas.

Currently GCC fails to compile this code but if one day in the future
that gets fixed, the deprecation warnings will continue to get ignored.
2022-08-03 23:41:01 +02:00
Chris Thrasher
49fd5887c8 Add tests for SFML/Config.hpp 2022-08-03 23:39:37 +02:00
friendlyanon
e691033954 Require CMake 3.16 for ObjC and ObjC++ sources
Both languages gained native CMake support in 3.16:
https://cmake.org/cmake/help/latest/release/3.16.html#languages
2022-08-03 23:38:17 +02:00
kimci86
80ed37ce9d Fix SoundStream::play to restart the sound if it was played before 2022-08-03 23:36:12 +02:00
Chris Thrasher
a47eb8320a Remove vendored doctest header 2022-07-20 08:56:59 +02:00
Waldegger
308857702e
Add Android dependency binaries for x86_64 and arm64-v8a architectures
* Remove unused libFLAC++.a for all Android architectures
* Enhance GitHub Actions builds

Co-authored-by: Waldegger <Stefan.Waldegger@users.noreply.github.com>
2022-07-19 08:03:16 +02:00
Chris Thrasher
97537d36b3 Remove unnecessary CMake version checks
Now that the project requires CMake version 3.15, all of these
checks are guaranteed to eveluate one way or the other so they can
be removed.
2022-07-18 12:43:49 +02:00
Chris Thrasher
55a1a2a4c4 Format .m files 2022-07-14 21:47:49 +02:00
Miron Alexandru
dd0f0ff4c6 Update .gitignore for Visual Studio 2022-07-13 15:17:42 +02:00
Chris Thrasher
e2f0feaefc Disable OpenGL deprecation warnings
This was likely transitively included from another header from after
clang-format rearranged some headers, it was no longer present.
2022-07-11 20:04:56 +02:00
Chris Thrasher
87c4213ac6 Add missing headers
Reformatting with clang-format revealed that a few files were missing
some #include and #import statements.
2022-07-11 20:04:56 +02:00
Chris Thrasher
4f52793f7d Run clang-format 2022-07-11 20:04:56 +02:00
metaquarx
88e9f82bee Add '.clang-format' file, CI integration, and formatting exceptions
Co-authored-by: Vittorio Romeo <vittorio.romeo@outlook.com>
Co-authored-by: Chris Thrasher <chrisjthrasher@gmail.com>
Co-authored-by: kimci86 <kimci86@hotmail.fr>
2022-07-11 20:04:56 +02:00
kimci86
faaec51666 Fix compilation on Linux with SFML_OPENGL_ES option 2022-06-29 09:02:29 +02:00
Bambo-Borris
c6f7fcaa2a Add tests for sf::MemoryInputStream 2022-06-28 14:33:21 +02:00
Vittorio Romeo
8c8d97c6c9 IpAddress is always valid 2022-06-28 00:31:12 +02:00
kimci86
6d1e428640 Update glad/egl.h 2022-06-27 20:39:30 +02:00
kimci86
ee8f929bd6 Load EGL with glad to fix crash in sf::priv::eglCheckError on DRM 2022-06-27 20:39:30 +02:00
Chris Thrasher
fd3526f742 Use <> for test utilities includes
SFML convention is to only use "" includes when the header is in
the same directory as the file including it. Because these test
util headers are in a separate directory, it makes more sense to
include them via <>.
2022-06-27 00:22:16 +02:00
Chris Thrasher
4047909725 Remove unnecessary includes 2022-06-27 00:22:16 +02:00
Chris Thrasher
a57640c2c8 Require stringification for all tested types
This ensures that if a printing function is not provided, compilation
fails. This prevents problems where a header is accidentally removed
that was previously providing an operator<< overload or prevents
new tests from being added without print support for all directly
tested types.
2022-06-27 00:22:16 +02:00
Chris Thrasher
3925139f4d Improve test coverage of sf::Rect 2022-06-26 15:47:30 +02:00
Chris Thrasher
b009151e89 Improve test coverage of sf::Color 2022-06-26 15:47:30 +02:00
Chris Thrasher
44d3d63ade Reduce the scope of helper class 2022-06-26 02:14:53 +02:00
Chris Thrasher
0812054e02 Remove trailing whitespace 2022-06-25 21:32:55 +02:00
Vittorio Romeo
8a2aa6397f Explicitly instantiate float vector members in cpp 2022-06-24 18:47:28 +02:00
Vittorio Romeo
a3dd3e02aa Remove unused <string> include from Texture.hpp 2022-06-24 12:59:30 +02:00
kimci86
5098b6c22b Fix eglCheck macro usage for assignments 2022-06-24 09:33:48 +02:00
Chris Thrasher
d7f09c1167 Manually inline sf::IpAddress::resolve
This code is better expressed as a constructor since that's the
only place where it's used.
2022-06-23 20:22:13 +02:00
Chris Thrasher
76223b07a1 Implement sf::IpAddress with std::optional 2022-06-23 20:22:13 +02:00
Chris Thrasher
e4e9b290b1 Add tests for sf::IpAddress 2022-06-23 18:47:23 +02:00
Chris Thrasher
ce9577bbff Upgrade to Doctest v2.4.9
Fixes some linker errors and a compiler error described here:

https://github.com/doctest/doctest/issues/636
2022-06-23 18:47:23 +02:00
Vittorio Romeo
e4c5af63b7 Replace 'TcpSocket::send' local buffer with data member 2022-06-23 18:37:01 +02:00
kimci86
95201a3950 Update Image code example with Vector2u parameters 2022-06-23 18:03:54 +02:00
kimci86
c4790bcb14 Clarify Image::copy implementation 2022-06-23 18:03:54 +02:00
kimci86
618c96339b Fix incorrect cast when parsing FTP connection port 2022-06-23 16:33:06 +02:00
Vittorio Romeo
6cd07a043f 'sf::Image::copy' returns a 'bool' to signal success/failure 2022-06-21 16:40:22 +02:00
Bambo-Borris
91c4a451ef Fix out of bounds read for sf::Image::copy() with bad sourceRect 2022-06-21 15:14:27 +02:00
Bambo-Borris
8b3723a52b Add tests for sf::Image 2022-06-21 15:14:27 +02:00
Chris Thrasher
757cb36d30 Use <random> header 2022-06-16 23:56:39 +02:00
Chris Thrasher
65fef85b30 Simplify how examples are built
CMake doesn't require absolute paths so we can safely remove
SRCROOT and let implicit relative pathing achieve the same result
with less work on our part.
2022-06-16 23:56:39 +02:00
Chris Thrasher
539483d329 Use std::array 2022-06-16 23:56:39 +02:00