Commit Graph

67 Commits (9c2e4f52e6d4894d88f5a130d1e02d31ec4c6221)

Author SHA1 Message Date
Ravbug 2d640d0b59
ci: Add iOS and tvOS CMake GitHub Actions checks (#9465)
- Also add watchos support to CMake (SDL does not support this platform yet)

Co-authored-by: Ravbug <ravbug@users.noreply.github.com>
Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com>
Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
2024-04-08 19:18:28 +02:00
Anonymous Maarten c5794cd911 ci: bump actions version tag 2024-01-26 02:33:20 +01:00
Anonymous Maarten c4ca64deaf ci: do 'brew update' & don't run dependent checks on installed things 2023-11-26 06:01:26 +01:00
Anonymous Maarten 61c39ce848 ci: re-enable Intel compilers on ci 2023-11-09 18:05:15 +01:00
Anonymous Maarten 3abb464f10 ci: disable Intel compilers 2023-10-02 09:13:35 +02:00
Anonymous Maarten 5c1a91a4e1 ci: make sure perl is installed + build docs with MSVC toolchain 2023-09-28 23:32:35 +02:00
Anonymous Maarten a6bc6b882c ci: always upload the artifacts 2023-09-25 18:02:40 +02:00
Anonymous Maarten 2fb266e0a4 ci: run tests in parallel 2023-09-08 09:05:58 -04:00
Anonymous Maarten c2f388fd88 cmake: add SDL_HIDAPI_LIBUSB_SHARED option + test on ci 2023-08-14 19:37:58 +02:00
Anonymous Maarten ea60474c65
cmake: don't build SDL3-static Apple framework 2023-08-01 01:35:57 +00:00
Anonymous Maarten eda2824e6f ci: move 'set -eu' to after source_cmd 2023-07-14 15:00:52 +02:00
Anonymous Maarten e66f4fa71c ci: test with (old) Intel compiler + (new) oneAPI compiler 2023-03-27 06:12:49 +00:00
Anonymous Maarten d3b7308ee7 ci: install pkg-config on Macos runner 2023-02-16 13:59:23 -08:00
Anonymous Maarten e203046a5c cmake+ci: build shared and static libraries on ci 2023-02-16 13:59:23 -08:00
Pierre Wendling fa8fba3812 Add clang-tidy config and CMake/CI support. 2023-02-06 21:02:25 -08:00
Anonymous Maarten 53d434fd24 cmake: add CPack support for creating binary archives 2023-01-31 01:59:21 +01:00
Anonymous Maarten 64c97906c9 ci: fail CMake configuration on warning 2023-01-31 01:59:21 +01:00
Anonymous Maarten d45f0a0566 ci: upload artifacts for main workflow 2023-01-31 01:59:21 +01:00
Anonymous Maarten 13c294eec3 cmake: add support for creating Apple frameworks with CMake 2023-01-31 01:59:21 +01:00
Sam Lantinga 58763b608b Cancel current CI actions when a PR is updated 2022-12-28 13:10:27 -08:00
Sam Lantinga 38de07d9e4 Cancel current CI actions when a PR is updated 2022-12-04 10:05:54 -08:00
Sam Lantinga 39e39f335e Only cancel previous builds when iterating on pull requests 2022-12-04 09:50:51 -08:00
Sam Lantinga f9ad84fd5d Cancel current CI actions when a PR is updated
This should help get build feedback more quickly when someone is iterating on a PR
2022-12-04 09:11:38 -08:00
Sam Lantinga 2af4f74e1c Remove sdl3.m4 and sdl3-config, and document pkg-config as the recommended replacement
Fixes https://github.com/libsdl-org/SDL/issues/6639
2022-11-27 14:11:06 -08:00
Anonymous Maarten c7b5ff81e6 ci: no more need for autoconf and make 2022-11-25 15:37:30 -08:00
Ozkan Sezer 7b21eaddce remove autotools build system
- TODO: update INSTALL.txt to replace the autotools configure
        instructions with cmake.
- TODO: update make build system to provide an equivalent to
        autotools' `make dist` ?
- TODO: update / revise github actions, replace autotools-only
        ones with cmake (e.g.: vmactions.yml for FreeBSD.)

Reference issue: https://github.com/libsdl-org/SDL/issues/6571
2022-11-25 15:37:30 -08:00
Simon McVittie 7ef38beb7e build: Simplify library name
We want the library to come out as libSDL3.so.0 on Unix, or something
similar on other platforms. There's no need to have libSDL3-3.0.so.0,
because next time we intentionally break the API it should become libSDL4
anyway.

Partially implements #5626.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-11-25 12:57:32 -08:00
Anonymous Maarten b9e45ae0bb ci: correctly print install tree of CMake install 2022-11-23 19:18:26 +01:00
Ozkan Sezer 016b757311 reverted jack audio backend removal. 2022-11-23 06:50:20 +03:00
Ozkan Sezer cdb54ad21e removed arts, esd, fusionsound, nas, paudio, sndio, sunaudio, winmm audio backends. 2022-11-22 19:51:56 +03:00
Anonymous Maarten ea21628045 ci: replace references to SDL2 with SDL3 2022-11-22 06:45:46 +01:00
Simon McVittie d4d99e8c29 workflows: Check we can screen-scrape the SDL_REVISION from Linux builds
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-10-22 09:27:10 -07:00
Simon McVittie 4ca5ea5b7e build: Add a mechanism to mark builds with vendor info
Downstream distributors can use this to mark a version with their
preferred version information, like a Linux distribution package version
or the Steam revision it was built to be bundled into, or just to mark
it with the vendor it was built by or the environment it's intended to
be used in.

For instance, in Debian I'd use this by configuring with:

    --enable-vendor-info="${DEB_VENDOR} ${DEB_VERSION}"

to get a SDL_REVISION like:

    release-2.24.1-0-ga1d1946dc (Debian 2.24.1+dfsg-2)

which gives a Debian user enough information to track down the patches
and build-time configuration that were used for package revision 2.

In Autotools and CMake, this is a configure-time option like any other,
and will go into both SDL_REVISION (via SDL_revision.h) and
SDL_GetRevision().

In other build systems (MSVC, Xcode, etc.), defining the
SDL_VENDOR_INFO macro will get it into the output of SDL_GetRevision(),
although not SDL_REVISION.

Resolves: https://github.com/libsdl-org/SDL/issues/6418
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-10-22 09:27:10 -07:00
Pierre Wendling eea9f638e2 CI: Update to actions/checkout@v3. 2022-10-12 16:31:02 -07:00
Anonymous Maarten 151c23415e ci: Add SDL_WERROR to a few configurations 2022-10-08 23:41:07 +02:00
Ryan C. Gordon f648c000bd
build: Fixed some references to renamed test-versioning.sh 2022-09-28 09:37:21 -04:00
Cameron Cawley 6e9a606a8e Add more mingw-w64 build workflows 2022-07-30 14:37:41 -07:00
Cameron Cawley 3bdc10f842 Update the list of required Ubuntu packages, and add Ubuntu 22.04 workflows 2022-07-30 13:07:54 -07:00
Pierre Wendling 36d456797b CI: Fix CMake workflow.
- Add quotes the OSX_ARCHITECTURES list.
- Extract the flag in the matrix.
2022-07-26 23:05:55 +03:00
Pierre Wendling c37c1f7ac3 CI: Make macOS universal build with CMake. 2022-07-26 12:30:14 -07:00
Anonymous Maarten 78a3751659 cmake+ci: fix+test sdl2-config + sdl2.pc for all supported platforms 2022-06-23 14:17:38 +02:00
Cameron Cawley 12f9bcd2f4 Build tests for all CMake platforms on CI 2022-06-15 10:14:25 -07:00
Anonymous Maarten 69df26a0d4 ci: test clang+MinGW on CI 2022-06-14 20:15:34 -07:00
Anonymous Maarten f858d1305a ci: test installed packages using CMake 2022-06-03 12:41:36 -07:00
Simon McVittie 6e6e425e23 workflows: Do the equivalent of Automake `make distcheck`
The official source code release isn't much use unless it contains
everything that users and downstream distributions need to do a
new build, so check that it does.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-09 08:47:02 -07:00
Simon McVittie c244bbc515 workflows: Install and run GNOME-style installed-tests
This is currently only done for the Linux Autotools build. The CMake
build does not add a significant amount of extra test coverage, and
Github Workflows run in an environment where `cmake` and `sudo cmake`
point to different executables, which makes it awkward to install into
/usr/local from CMake.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 18:17:55 -07:00
Simon McVittie ecf1e15fec workflows: Parallelize Linux Autotools and CMake builds
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 18:17:55 -07:00
Simon McVittie dba79ade59 workflows: Run build-time tests
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 18:17:55 -07:00
Simon McVittie a459479769 workflows: Only run `cmake --install` on Unix platforms
The syntax used in this step assumes a Unix shell.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 10:34:21 -07:00
Simon McVittie 79a16da61e workflows: Change how we make CMake verbose
Some CI workers don't seem to understand `cmake -v`, and Windows' shell
doesn't understand `VERBOSE=1 cmake`.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 10:34:21 -07:00