Commit Graph

175 Commits (d4caef5b89266c4244c83c1de7132e319e1c774c)

Author SHA1 Message Date
Anonymous Maarten d3b7308ee7 ci: install pkg-config on Macos runner 2023-02-16 13:59:23 -08:00
Anonymous Maarten 4d8a50912b cmake: no shared SDL libraries for riscos 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 e73151f544 ci: don't upload test directory for ps2 workflow separately 2023-02-01 20:04:47 +01:00
Anonymous Maarten 2afee88c81 ci+haiku: ignore return code of sv force-restart 2023-02-01 19:43:11 +01:00
Anonymous Maarten 72f40cb1f5 ci: restart VM after installing haiku dependencies 2023-01-31 01:59:21 +01: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
Anonymous Maarten 5690dfb65b cmake: don't install Android.mk files for Android 2023-01-31 01:59:21 +01:00
Anonymous Maarten 09e2f83e17 cmake: no more SDL3_* cache variables 2023-01-31 01:59:21 +01:00
Anonymous Maarten ecffa93f39 ci: test vita piglet/pvr gles support
ci: configure gl4es4vita

ci: test gles on pib AND pvr
2023-01-25 00:23:05 +01:00
Anonymous Maarten ec3234ea21 editorconfig: trim trailing spaces from yml's 2023-01-25 00:23:05 +01:00
Anonymous Maarten 0a1479d58c cmake: fix sdl3.pc for Nintendo 3DS + add to test matrix 2023-01-15 17:46:36 +01:00
Anonymous Maarten 9597c482fa ci: add haiku to ci matrix 2023-01-10 02:39:09 +01:00
Anonymous Maarten a486d0e2b2 ci: rename *.yaml -> *.yaml 2023-01-10 02:39:09 +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
Anonymous Maarten 1dce3f9265 ci: RISCOS is a bool 2022-12-01 20:32:47 +01:00
Anonymous Maarten 88b41c47fa ci: do verbose PSP build 2022-12-01 20:32:47 +01: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 34d538bd13 ci: fix typo in arguments of cmake
(aargh, sorry)
2022-11-25 05:07:32 +01:00
Anonymous Maarten 18ef9dcf61 ci: fix arguments for FreeBSD CMake
(sorry)
2022-11-25 04:52:52 +01:00
Anonymous Maarten c9b8559af5 cmake: use option to pass extra check options instead of hardcoding them 2022-11-25 03:15:30 +01:00
Anonymous Maarten b4fc66525c ci: use CMake for building SDL on FreeBSD 2022-11-24 23:34:04 +01:00
Sam Lantinga a635a485bc Re-added WinRT support until we're sure that it's no longer being used 2022-11-23 10:41:43 -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 dc2a3e06e9 removed WinRT support. 2022-11-22 23:36:24 +03:00
Ozkan Sezer 3cccaeba6c removed jack audio remnants. 2022-11-22 20:51:07 +03:00
Ozkan Sezer cdb54ad21e removed arts, esd, fusionsound, nas, paudio, sndio, sunaudio, winmm audio backends. 2022-11-22 19:51:56 +03:00
Ozkan Sezer 8d6fda4810 removed os2 support & support for building SDL with watcom. 2022-11-22 19:18:47 +03:00
Anonymous Maarten ea21628045 ci: replace references to SDL2 with SDL3 2022-11-22 06:45:46 +01:00
Anonymous Maarten 81fd45f723 ci: Disable emscripten build time tests 2022-11-16 15:42:08 +01:00
Anonymous Maarten 2e47016b01 ci: use Ninja generator in hop of accelerating the build 2022-11-16 15:42:08 +01:00
Ozkan Sezer 06492c5981 CI, MSVC: update to use microsoft/setup-msbuild v1.1.3.
Fixes github deprecation warnings
2022-11-16 00:20:28 +03: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
Pierre Wendling e710440f58 Vita: Fix typo in CI CMake command. 2022-10-11 18:49:38 +02:00
Pierre Wendling 4227a0b4f3 Vita: Turn on `SDL_WERROR` in CI. 2022-10-10 22:31:16 -07:00
Pierre Wendling e99b05d6c4 Vita: Install bash in CI.
The wrapper `arm-vita-eabi-pkg-config` fails without it with the error:
`env: can't execute 'bash': No such file or directory`
2022-10-10 22:31:16 -07:00
Pierre Wendling fefd48eb9e PS2: Turn on `SDL_WERROR` in CI. 2022-10-10 22:31:16 -07:00
Pierre Wendling 0472794609 PSP: Turn on `SDL_WERROR` in CI. 2022-10-10 22:31:16 -07:00
Pierre Wendling b737833d3c N3DS: Turn on SDL_WERROR in CI. 2022-10-10 08:50:59 -07:00
Pierre Wendling 655275378d N3DS port (squashed)
A dedicated renderer using Citro3D would likely allow for better
much better graphical performances.
2022-10-10 08:50:59 -07:00
Anonymous Maarten 151c23415e ci: Add SDL_WERROR to a few configurations 2022-10-08 23:41:07 +02:00
Sam Clegg cfab203f91 emscripten: Remove use of EM_ASM from SDL_timer code.
Instead use the native emscripten timer API.

See https://github.com/emscripten-core/emscripten/issues/17941
2022-09-30 13:41:41 -04:00
Ryan C. Gordon a97d2e6958 GitHub Actions: bump Emscripten version used to build to 2.0.31.
Reference PR #6304.
2022-09-30 10:47:13 -04:00
Ryan C. Gordon f648c000bd
build: Fixed some references to renamed test-versioning.sh 2022-09-28 09:37:21 -04:00
Francisco Javier Trujillo Mata 46f95a7a5f Create dummy PS2 Video driver 2022-08-02 11:40:31 -07: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
Cameron Cawley adb3e1a21d Add FreeBSD builds to GitHub Actions 2022-07-30 09:23:50 -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 f86ec47f86 ci: don't use ANDROID_NDK_HOME environment variable in Android workflow 2022-07-25 15:08:33 +02:00
Anonymous Maarten 2fdedd17be Revert 6fa7d62 and 856c99e5 2022-07-23 17:29:45 +02:00
Anonymous Maarten 832754b970 ci: install SDL when built as a subproject 2022-07-23 15:43:06 +02:00
Anonymous Maarten 6fa7d62408 ci: use android-ndk r25 (LTS) on CI 2022-07-23 15:31:35 +02:00
Francisco Javier Trujillo Mata 1f3ae75228 Add ps2_drivers dependency
Fix CI
2022-06-27 00:32:43 -07:00
hsdk123 bd49696133
cmake: use CMAKE_CURRENT_BINARY_DIR instead of CMAKE_BINARY_DIR (#5834)
* Update install directory to match generated

https://github.com/libsdl-org/SDL/blob/main/CMakeLists.txt#L3122
Sets `SDL2Config.cmake` to `CMAKE_BINARY_DIR`, whereas the install file tries to find it from a different location.

* cmake: use CMAKE_CURRENT_BINARY_DIR instead of CMAKE_BINARY_DIR

* ci: test SDL included as a cmake subproject

Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com>
2022-06-23 14:18:44 +02:00
Anonymous Maarten 78a3751659 cmake+ci: fix+test sdl2-config + sdl2.pc for all supported platforms 2022-06-23 14:17:38 +02:00
Francisco Javier Trujillo Mata 52f8d0357a Add PS2 CI config 2022-06-15 15:15:26 -07:00
Anonymous Maarten 86f50ae7d7 ci: Test cmake build script on Android
android
2022-06-15 11:11:49 -07: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
Charlie Birks e201f338d7 ci: enable CMake test for Emscripten 2022-06-08 08:09:46 -07:00
Anonymous Maarten f858d1305a ci: test installed packages using CMake 2022-06-03 12:41:36 -07:00
Ozkan Sezer aeeccb5d16 CI, OpenWatcom: remove workaround now that setup-watcom is fixed. 2022-05-23 00:24:40 +03:00
Cameron Cawley 1a1cc8028b Use a tagged version of OpenWatcom in CI builds 2022-05-21 18:28:56 +03:00
Cameron Cawley aa51a9791a Run tests with OpenWatcom on CI 2022-05-19 20:11:10 +03:00
Cameron Cawley 9dfa000bc0 Initial support for building for Windows with OpenWatcom 2022-05-19 20:11:10 +03: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
Cameron Cawley 9ef6885743 Fix MSVC ARM32 builds 2022-05-08 18:21:02 +03:00
Frank Richter b352b78345 Add 'static VCRT' cases to MSVC build matrix 2022-05-07 08:10:52 -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
Simon McVittie 4da47601be workflows: Remove redundant `cmake --build`
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 10:34:21 -07:00
Simon McVittie 2a8297e427 workflows: Add a test to assert that all the version numbers agree
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 09:55:35 -07:00
Simon McVittie 50bc013695 workflows: Tell CMake and Makefile.in to show compiler command-lines
This is usually desirable for batch processing: it lets us see exactly
what is happening in the logs.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 09:55:35 -07:00
Simon McVittie 85a77fb5fa workflows: List files installed by CMake
This lets us compare them with Autotools more easily.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 08:34:35 -07:00
Simon McVittie 90da399bbb workflows: Add a workflow to exercise the Autotools build on Linux
This builds the tests, but does not run them (for now).

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-04 08:34:35 -07:00
Ozkan Sezer 55a4e1d336 CI: update os2.yml to use open-watcom/setup-watcom
also remove os2-buildbot.sh -- not needed anymore.
2022-04-14 10:10:02 +03:00
Cameron Cawley b7f8117d40 Build the standalone MSVC projects with GitHub Actions 2022-02-28 09:04:33 -08:00
Cameron Cawley 550b8377bc Combine the MSVC and UWP workflows 2022-02-28 09:04:33 -08:00
Ravbug 2005dd9595
UWP build (#5299)
* Add UWP-x64 action

* Fix formatting

* Fix missing -
2022-02-02 14:06:52 -08:00
pionere 0af391cbe9 build with Release config on push and pull_request 2022-01-28 20:40:19 -05:00
Ryan C. Gordon 30f895a5f3
Update os2.yml
Specify the WATCOM environment variable in the "run" command line directly, so the home directory gets correct shell expansion.
2022-01-03 21:55:10 -05:00
Ryan C. Gordon 1d918a283c
Update os2.yml
Whoops, forgot the `-R` on the chmod command.
2022-01-03 21:52:47 -05:00