Commit graph

209 commits

Author SHA1 Message Date
Sam Lantinga 0fc3574464 Updated copyright for 2024 2024-01-01 13:19:49 -08:00
Sam Lantinga d649f95723 Use GNU sed if available
Fixes update-copyright.sh on macOS, which doesn't support the -b option.

(cherry picked from commit a357021800b4af2b850476bcd87be5648923b847)
2024-01-01 13:18:35 -08:00
Sam Lantinga 4f8dd2d39d Speed up processing of update-copyright.sh
(cherry picked from commit 78ccadd5a22bd60c015598fa0abad92705d5ea0f)
2024-01-01 13:18:35 -08:00
Ozkan Sezer 95a6f986a0 update config.guess and config.sub from mainstream 2023-09-20 14:50:56 +03:00
Ozkan Sezer 53d818e31c updated config.guess and config.sub from mainstream 2023-08-05 14:03:02 +03:00
Ozkan Sezer 45a6ad8e57 wikiheaders.pl: make it work with older perl versions, e.g. 5.10. 2023-03-24 11:56:40 +03:00
Stephen Kitt 3e1d7e6a14 Specify bash for androidbuildlibs.sh
This script relies on string indexes in parameter expansions, which
aren't suppored by /bin/sh (e.g. dash).

Based on a patch by Roflcopter4:
https://github.com/joncampbell123/dosbox-x/pull/3850

Signed-off-by: Stephen Kitt <steve@sk2.org>
(cherry picked from commit bbfd5b3fb2eed8f95919febf3bc0fec4bc605cbe)
2023-03-10 07:38:28 -08:00
Ryan C. Gordon 0a0dfdb2f9
wikiheaders: Sort pages before listing them in README/FrontPage.md.
(cherry picked from commit 99c38268cd1325bb64739217adbeebaae7ae6a84)
2023-02-28 12:29:21 -05:00
Ryan C. Gordon 8572e19327
wikiheaders: Use Windows endlines in the source, Unix in the wiki.
(cherry picked from commit 7745c9b3ae3f2f47e2b3e55399afc5e7b86c0102)
2023-02-28 12:29:16 -05:00
Ryan C. Gordon 462d95ab4d
wikiheaders: ignore wiki's README/FrontPage.md
(cherry picked from commit 6d1e14b7924e45937941a64bcaf751e17b41a8e9)
2023-02-28 11:56:20 -05:00
Ryan C. Gordon a48bb80ea0
wikiheaders: Bridge README files in the docs directory to wiki.
Fixes #6026.

(cherry picked from commit 2506676f34dc9d3e64ab7bbd9c947b8c13364913)
2023-02-28 11:46:46 -05:00
Ryan C. Gordon 37de5d4849
wikiheaders: fixed wikilinks in Markdown code sections.
(cherry picked from commit a4796334550da0963ed957829f41b9499a472d73)
2023-02-27 23:08:55 -05:00
Ryan C. Gordon 171fba320f
wikiheaders: Fix wikilinks inside code sections a little. Not perfect yet.
(cherry picked from commit 5b0351a672701e28c3bfb17d44a458b82e8a4175)
2023-02-24 14:30:34 -05:00
Ryan C. Gordon 858ae9900e
wikiheaders: fixed see-also conversion
(cherry picked from commit d748a454a86d6250b724fe94066eb98fbf4eea05)
2023-02-24 11:46:41 -05:00
Ryan C. Gordon f87f0fe781
wikibridge: Fixes for manpage generation from Markdown format.
(cherry picked from commit 5ff49955ab71121ffbc49eb6a7be69707cbd90f3)
2023-02-24 10:22:28 -05:00
Ryan C. Gordon b3ea81b33f
wikiheaders: Work to make the wiki exist primarily in Markdown format.
This adds a means to mass-convert the whole wiki to Markdown as a one-time
operation, and then some fixes to make --copy-to-headers correctly deal with
Markdown-formatted wiki pages.

(cherry picked from commit 936a51d5cc50afd76e291acd36bcb95513ce8919)
2023-02-24 09:48:37 -05:00
Ryan C. Gordon d5680c5d20
wikiheaders: Allow markdown in the wikipreamble string.
Reference Issue #6568.

(cherry picked from commit a089b2ea19404f6dacd083327e13cae888b58993)
2023-01-26 10:23:21 -05:00
Ryan C. Gordon 1069c8931d
wikiheaders: Add a \threadsafety tag to document threading details.
Reference Issue #7140.

(cherry picked from commit 01cba48d18f9002e5aae66d4b009f5f0195dc8d7)
2023-01-26 10:23:08 -05:00
Ozkan Sezer 880ac537a5 typo fix to config.sub,
from https://lists.gnu.org/archive/html/config-patches/2023-01/msg00001.html
2023-01-21 10:15:02 +03:00
Sam Lantinga 0479df53ca Updated copyright for 2023 2023-01-09 09:48:21 -08:00
Sam Lantinga b8d85c6939 Update for SDL3 coding style (#6717)
I updated .clang-format and ran clang-format 14 over the src and test directories to standardize the code base.

In general I let clang-format have it's way, and added markup to prevent formatting of code that would break or be completely unreadable if formatted.

The script I ran for the src directory is added as build-scripts/clang-format-src.sh

This fixes:
#6592
#6593
#6594

(cherry picked from commit 5750bcb174300011b91d1de20edb288fcca70f8c)
2022-11-30 12:57:41 -08:00
Sam Lantinga 44975d40ef Update SDL info and Xcode marketing version with version update scripts 2022-11-22 09:18:05 -08:00
Sam Lantinga 8ae46a49ea Save the version in VERSION.txt instead of VERSION
Fixes https://github.com/libsdl-org/SDL/issues/6558
2022-11-21 06:57:02 -08:00
Ryan C. Gordon 98dfc9296a
build-scripts/fnsince.pl: Deal with new point-release system.
This ignores 2.x.1 (etc) releases, which prevents it from thinking
the next official non-point-release version is 2.26.1, when it
should be 2.26.0, because it saw the "latest" release is 2.24.1.

This fixes the wiki ending up with imaginary version numbers for
the "this function is available since SDL 2.x.y" sections.

Fixes #6343.
2022-10-25 14:03:32 -04: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
Simon McVittie 2dc788cb9f build: Expand version info in SDL_REVISION and SDL_GetRevision()
Instead of using a URL and git sha1, this uses `git describe` to
describe the version relative to the nearest previous git tag, which
gives a better indication of whether this is a release, a prerelease,
a slightly patched prerelease, or a long way after the last release
during active development.

This serves two purposes: it makes those APIs more informative, and it
also puts this information into the binary in a form that is easy to
screen-scrape using strings(1). For instance, if the bundled version of
SDL in a game has this, we can see at a glance what version it is.

It's also shorter than using the web address of the origin git
repository and the full git commit sha1.

Also write the computed version into a file ./VERSION in `make dist`
tarballs, so that when we build from a tarball on a system that doesn't
have git available, we still get the version details.

For the Perforce code path in showrev.sh, output the version number
followed by the Perforce revision, in a format reminiscent of
`git describe` (with p instead of g to indicate Perforce).

For the code path with no VCS available at all, put a suffix on the
version number to indicate that this is just a guess (we can't know
whether this SDL version is actually a git snapshot or has been
patched locally or similar).

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
Sam Lantinga 5291e5cb76 Added version checking to SDLActivity.java
Make sure the SDL java and C code match when updating SDL in a game.
Right now we're assuming that we only have to make sure release versions match. We can extend the version string with an interface version if we need more fine grained sanity checking.

Fixes https://github.com/libsdl-org/SDL/issues/1540
2022-10-03 17:36:17 -07:00
Anonymous Maarten bac54b3d26 Android: add script for building prefab archive 2022-10-01 22:26:46 -07:00
Ryan C. Gordon f648c000bd
build: Fixed some references to renamed test-versioning.sh 2022-09-28 09:37:21 -04:00
Ryan C. Gordon d843d61cc1
Moved test/versioning.sh to build-scripts/test-versioning.sh
Reference Issue #6171.
2022-09-28 09:09:43 -04:00
Ryan C. Gordon 8e14647759
build-scripts: Added update-version.sh
Fixes #6171.
2022-09-27 22:04:07 -04:00
Ryan C. Gordon 51be30f3cd
emscripten-buildbot.sh: force -s USE_SDL=0
This avoids using Emscripten-provided SDL headers from its own
sysroot instead of the headers in our own include directory!

Reference https://github.com/emscripten-core/emscripten/discussions/17647
2022-08-17 21:39:59 -04:00
Ryan C. Gordon 3a9295e14f
build-scripts: Removed winrtbuild.*, no longer used.
WinRT/UWP is still supported, but you have to use the VS2019
project files, now.

Fixes #5639.
2022-08-09 16:17:28 -04:00
Sam Lantinga f789bc7d5f Updated minimum OS targets on Apple platforms to match supported platforms using Xcode 13 2022-07-26 11:36:01 -07:00
Anonymous Maarten 2fdedd17be Revert 6fa7d62 and 856c99e5 2022-07-23 17:29:45 +02:00
Anonymous Maarten 856c99e583 android: target android-19 by default when building with build-scripts/androidbuildlibs.sh 2022-07-23 16:28:50 +02:00
Ryan C. Gordon bec721f08a audio: Fixed dst pointer on channel conversions that grow in-place. 2022-07-20 18:41:53 -04:00
Ryan C. Gordon 49ec8db5f8 audio: Generate the channel converter code from a program. 2022-07-20 18:41:53 -04:00
Ryan C. Gordon 118a2189fb
build-scripts/wikiheaders.pl: ignore the 'FrontPage' wiki pages. 2022-06-23 16:07:35 -04:00
Ryan C. Gordon 48a232969d
wikiheaders: Strip [[wiki hyperlink]] from See Also fields. 2022-06-19 00:15:41 -04:00
Ryan C. Gordon 83b766174c
build-scripts/wikiheaders.pl: ignore "Category" wiki pages. 2022-06-17 17:35:52 -04:00
Ryan C. Gordon 20c622f090
build-scripts/wikiheaders.pl: Allow a wiki preamble.
This is so we can have everything in SDL_net (etc) start with a
"This is not part of the core SDL API" message.
2022-06-17 14:40:35 -04:00
Sam Lantinga b004133f08 Updated to version 2.23.1 for pre-release checkpoint 2022-06-16 12:50:19 -07:00
Ryan C. Gordon 94f6080895
wikiheaders.pl: changes to make this usable with external projects. 2022-06-15 23:26:24 -04:00
Ozkan Sezer 6bd49fc00c revert mode changes from commit d58d637ac 2022-06-08 21:58:10 +03:00
Sam Lantinga d58d637ac6 Added support for the Qanba Obsidian Arcade Joystick on Linux 2022-06-08 11:07:36 -07:00
Ryan C. Gordon 5968f3d828
gen_audio_resampler_filter.c: Precalculate loop-invariant bessel(beta).
Minor optimization in offline code.
2022-05-26 10:44:01 -04:00
Ozkan Sezer 822cf0b34b updated config.guess from mainstream. 2022-05-26 01:33:32 +03:00
Ryan C. Gordon bed96482fa
wikiheaders.pl: Deal with links better. 2022-05-25 10:42:11 -04:00
Ryan C. Gordon 96a04cb910
wikiheaders.pl: Don't wordwrap truly massive words.
Usually, these are going to be URLs that you don't want to split
across lines.
2022-05-25 09:30:29 -04:00