Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebase #224 on top of current main + build tests with CMake #1

Open
wants to merge 18 commits into
base: direction-test
Choose a base branch
from

Conversation

madebr
Copy link

@madebr madebr commented Jun 14, 2022

Hey,

I noticed your pr adding tests to SDL_ttf and saying there having issues with integrating it into CI.
I merged your pr with current main and added a cmake script along the same vein as the one from SDL_image.
(Only the last 2 commits are actual changes)

ci result: https://github.com/madebr/SDL_ttf/actions/runs/2498534048

FYI msys2 does not ship SDL2_test because the cmake script of previous SDL2 releases did not install it.
This has been fixed so after the next SDL2 the tests can be run on msys2 as well.

slouken and others added 18 commits May 25, 2022 11:45
Signed-off-by: Simon McVittie <smcv@collabora.com>
On filesystems with large inode numbers, such as overlayfs, attempting
to stat() a file on a 32-bit system using legacy syscalls can fail
with EOVERFLOW. If we opt-in to more modern "large file support"
syscalls, then source code references to functions like stat() are
transparently replaced with ABIs that support large file sizes and
inode numbers, such as stat64().

In general, SDL_ttf delegates its file I/O to SDL, so it is unaffected
by this issue. However, if we build with the vendored libraries, they
use libc functions like stat(), subjecting them to the EOVERFLOW problem.

Signed-off-by: Simon McVittie <smcv@collabora.com>
This fixes a regression for the py-sdl2 test suite, which exercises
the (now-deprecated) TTF_SetDirection() and TTF_SetScript(), and
expects setting a new global value to have an effect on pre-existing
font objects.

Resolves: libsdl-org#221
Signed-off-by: Simon McVittie <smcv@collabora.com>
- Use 'SDL2TTF_' prefix for all options
- Create SDL2_ttf::SDL2_ttf when building a shared library,
  create SDL2_ttf::SDL2_ttf-static when building a static library
- Use same CMake layout as SDL_image/SDL_mixer
- Create libSDL2_ttfd.so symbolic link (when building debug build type)
- Add PrivateSdlFunctions.cmake script for common functionality between SDL_image/SDL_mixer
- Add FindXXX.cmake scripts for dependencies that don't provide cmake configuration files
- Add CMakeLists.txt + cmake scripts to source distribution (EXTRA_DIST of autotools)
- Test CMake on mingw64 (using system dependencies there)
- Add MacOS CI
- Create symbolic link at build time + install it
- Only install SDL2_ttf.pc when building a shared SDL2_ttf (to avoid overwriting when later installing a static SDL2_tff)
- Allow parallel installation with cmake support of a static and shared SDL2_ttf
- Macos versioning
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants