Commit Graph

81 Commits

Author SHA1 Message Date
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