mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-05-03 06:40:15 +02:00
Compare commits
302 Commits
release-3.
...
release-3.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c9a6709bd2 | ||
|
|
25816bea41 | ||
|
|
e0f6e96da0 | ||
|
|
57de46ae7e | ||
|
|
59693c8996 | ||
|
|
f0efffc093 | ||
|
|
1b41cd759c | ||
|
|
d42a1402e8 | ||
|
|
5c44678d55 | ||
|
|
0638fd58ce | ||
|
|
cb662b6730 | ||
|
|
e874c7515e | ||
|
|
2ba797576b | ||
|
|
180b454d61 | ||
|
|
6ce7ae77b1 | ||
|
|
abbaf95cf0 | ||
|
|
1081b70951 | ||
|
|
4f51f956ad | ||
|
|
b076f4b590 | ||
|
|
91180f8cb4 | ||
|
|
99aa859362 | ||
|
|
31267feb03 | ||
|
|
6a5bac72cb | ||
|
|
2ed5062950 | ||
|
|
0b0b02c5a1 | ||
|
|
28c71368a1 | ||
|
|
25bd4285ab | ||
|
|
180171cad6 | ||
|
|
bc3eeecf7f | ||
|
|
9178d14519 | ||
|
|
6cd35f5b72 | ||
|
|
72d5eb0ecb | ||
|
|
5cf924420d | ||
|
|
290574e6f6 | ||
|
|
d9db975b4b | ||
|
|
e5c0e5efa7 | ||
|
|
26a1aae098 | ||
|
|
ab114490fc | ||
|
|
9546c54286 | ||
|
|
4d3cdb70b5 | ||
|
|
a66816a72f | ||
|
|
c925f72562 | ||
|
|
ef97329f41 | ||
|
|
195f709eda | ||
|
|
eb57d94ec5 | ||
|
|
d6212ae839 | ||
|
|
b494897b3d | ||
|
|
559d4415eb | ||
|
|
49e9134774 | ||
|
|
9571b0ece8 | ||
|
|
b55cfaf90b | ||
|
|
509168856f | ||
|
|
24fa2722c3 | ||
|
|
142700f909 | ||
|
|
f3611681df | ||
|
|
7f0a5d6a10 | ||
|
|
2001cc15d5 | ||
|
|
8d604353a5 | ||
|
|
8410e11ecb | ||
|
|
9f8161bf4a | ||
|
|
c038d6f7f8 | ||
|
|
2fff37fffc | ||
|
|
6feb86be71 | ||
|
|
ed22220bc6 | ||
|
|
219cb1a59d | ||
|
|
71bd25a893 | ||
|
|
01ef4c46a1 | ||
|
|
64f728ec48 | ||
|
|
ba10adf1fb | ||
|
|
c18aa99358 | ||
|
|
3498412611 | ||
|
|
8c1b3ff210 | ||
|
|
1870052af6 | ||
|
|
3b1e3d5176 | ||
|
|
cdf26c6e97 | ||
|
|
9f1a1405a6 | ||
|
|
6e97d8d1b3 | ||
|
|
9d9a24d325 | ||
|
|
0897f4a7d1 | ||
|
|
5aec645191 | ||
|
|
07c33068f3 | ||
|
|
d684e5d57e | ||
|
|
219500d95c | ||
|
|
810addf7ae | ||
|
|
4ef077ca52 | ||
|
|
7d2275c4dc | ||
|
|
cbd8917047 | ||
|
|
c98a19401c | ||
|
|
434836c480 | ||
|
|
50d02ad732 | ||
|
|
5ac37a8ffc | ||
|
|
7dd2915475 | ||
|
|
0ae1ddee17 | ||
|
|
db4c7e47f1 | ||
|
|
362445460e | ||
|
|
de5cb9db23 | ||
|
|
418eab29eb | ||
|
|
2f3d242183 | ||
|
|
4ad6d18203 | ||
|
|
cd4a4f8a9f | ||
|
|
a96e72da02 | ||
|
|
337f012de2 | ||
|
|
3c29b620e4 | ||
|
|
579fc161f0 | ||
|
|
22e968af4e | ||
|
|
e37e96cfff | ||
|
|
56c76c20a0 | ||
|
|
efd812c399 | ||
|
|
b2b92bbe25 | ||
|
|
a29c67ac94 | ||
|
|
f88e0aaac0 | ||
|
|
29a4a4a5d1 | ||
|
|
01000c73b0 | ||
|
|
1a5d1dfef0 | ||
|
|
2c38143834 | ||
|
|
c56a1c664c | ||
|
|
41cae64580 | ||
|
|
c6dd2662c3 | ||
|
|
f48027cf12 | ||
|
|
fabbc8d183 | ||
|
|
a142e5ef7d | ||
|
|
825c0c7691 | ||
|
|
dc30a00a26 | ||
|
|
5a05ef01ad | ||
|
|
0237997e4d | ||
|
|
4f90432a49 | ||
|
|
0cd6942bfc | ||
|
|
1beb6fdedf | ||
|
|
3b4472ecf7 | ||
|
|
faed8b620c | ||
|
|
982b778e45 | ||
|
|
3a8f1cb7c5 | ||
|
|
3c2d7ecdd6 | ||
|
|
0834f1d6ce | ||
|
|
6ce446b768 | ||
|
|
e045edb567 | ||
|
|
6cd14660cf | ||
|
|
f5ac58c9f4 | ||
|
|
c1779ca4a5 | ||
|
|
6d8309f72e | ||
|
|
cf95db46a7 | ||
|
|
b8abfeb7f3 | ||
|
|
014e24e1a8 | ||
|
|
e42071a47c | ||
|
|
1543f523b7 | ||
|
|
f2d0e965fc | ||
|
|
f782278d20 | ||
|
|
3b17d08eb2 | ||
|
|
18d367afd2 | ||
|
|
9a4faf9ab9 | ||
|
|
cb0ba020d4 | ||
|
|
f705e2f9f7 | ||
|
|
e76bffa183 | ||
|
|
a4e19dc567 | ||
|
|
4e1282617a | ||
|
|
f102ff16a2 | ||
|
|
50935a9d41 | ||
|
|
a1dde664d1 | ||
|
|
ba5325fba1 | ||
|
|
e225a10ea8 | ||
|
|
c4fba75a12 | ||
|
|
5b052e6f8c | ||
|
|
d89c3489f8 | ||
|
|
a447863e4f | ||
|
|
34db21cea8 | ||
|
|
943226edc1 | ||
|
|
281494676a | ||
|
|
413b55deb7 | ||
|
|
8222513f63 | ||
|
|
2dd20ce8e7 | ||
|
|
d308df6d62 | ||
|
|
f51b88e6b5 | ||
|
|
7cb0fa5c56 | ||
|
|
976c92a2fb | ||
|
|
15db51d7ff | ||
|
|
4aa4e6a18e | ||
|
|
0759f22a91 | ||
|
|
02036ee643 | ||
|
|
9109e05f3f | ||
|
|
2103451d00 | ||
|
|
b6db091d60 | ||
|
|
9827653c38 | ||
|
|
877399b2b2 | ||
|
|
3f059376ac | ||
|
|
30a6d01cc5 | ||
|
|
b6fb47aa70 | ||
|
|
7ecae856e5 | ||
|
|
5db7694f22 | ||
|
|
366294e1c5 | ||
|
|
4d966ff546 | ||
|
|
6b665066f0 | ||
|
|
519011f271 | ||
|
|
5c224a3221 | ||
|
|
4b8c38e7ba | ||
|
|
16f6c1058c | ||
|
|
7939309520 | ||
|
|
cec6073085 | ||
|
|
a9f121f3f7 | ||
|
|
361218ce15 | ||
|
|
04dcfada00 | ||
|
|
d73ad0ef18 | ||
|
|
a1b888f622 | ||
|
|
d6267afcb9 | ||
|
|
b8325be9cf | ||
|
|
e77ef86f09 | ||
|
|
951ba597ed | ||
|
|
ab5e178dab | ||
|
|
04dace6c75 | ||
|
|
013918cd83 | ||
|
|
996466e855 | ||
|
|
61e7878ac0 | ||
|
|
c067cb4e7d | ||
|
|
38697dd812 | ||
|
|
f03572335a | ||
|
|
d8837edfa2 | ||
|
|
e5f8043037 | ||
|
|
134b57f6f5 | ||
|
|
072e760197 | ||
|
|
d37a3e2a71 | ||
|
|
ed8e7e85f0 | ||
|
|
eb9faad124 | ||
|
|
3ed80843fe | ||
|
|
4029521a63 | ||
|
|
f971a59746 | ||
|
|
5836266bfb | ||
|
|
ed893bde04 | ||
|
|
a934a36a18 | ||
|
|
59857acd08 | ||
|
|
8129b637f3 | ||
|
|
9e1675671d | ||
|
|
d39d951f89 | ||
|
|
10ed6f49a9 | ||
|
|
c2c848a752 | ||
|
|
8b191c3ca6 | ||
|
|
06a412cd68 | ||
|
|
b74609d5f3 | ||
|
|
d8756582f9 | ||
|
|
ff90984dc3 | ||
|
|
81952f9f96 | ||
|
|
d0122ff624 | ||
|
|
7a36aa37aa | ||
|
|
464cb0ab6e | ||
|
|
ac21e3ef3f | ||
|
|
a5b51669fb | ||
|
|
0ac030549b | ||
|
|
6f1afe7084 | ||
|
|
6302589829 | ||
|
|
3225d31679 | ||
|
|
ae05ab280d | ||
|
|
51a6cb2cf5 | ||
|
|
daf468e141 | ||
|
|
cd673c8254 | ||
|
|
3f13c0b36d | ||
|
|
3e34720851 | ||
|
|
0799237d74 | ||
|
|
53f64e40c4 | ||
|
|
a530df20b2 | ||
|
|
b958189c92 | ||
|
|
341f910835 | ||
|
|
84dff407d4 | ||
|
|
21e6c5814c | ||
|
|
776f0a685c | ||
|
|
9f32fafe21 | ||
|
|
74b3b8e9e3 | ||
|
|
fa4a9ba74e | ||
|
|
9a6f8a2512 | ||
|
|
1173bc2dde | ||
|
|
ada55bd887 | ||
|
|
fe97cff7d1 | ||
|
|
8cdeb1a35a | ||
|
|
7c82171a85 | ||
|
|
2d2085c80b | ||
|
|
03a4eea0ef | ||
|
|
fec3e2cd45 | ||
|
|
2aec1c2ef6 | ||
|
|
b32cd4f84b | ||
|
|
550bdc658a | ||
|
|
d75ba9c2d2 | ||
|
|
2477f7f982 | ||
|
|
e454d7d4be | ||
|
|
cd8bffb2dd | ||
|
|
9646e3cc1b | ||
|
|
1a2362ebf1 | ||
|
|
f6864924f7 | ||
|
|
6b3dafa4d3 | ||
|
|
5c0c5d2816 | ||
|
|
de11dd3d60 | ||
|
|
ac09af2600 | ||
|
|
26d1afa29c | ||
|
|
6aab3b9da8 | ||
|
|
d959719a3d | ||
|
|
5a7b17fec5 | ||
|
|
1d6bb62870 | ||
|
|
0c3603d893 | ||
|
|
38a5bca892 | ||
|
|
70a289076a | ||
|
|
1d0ecf982f | ||
|
|
18d93d11e1 | ||
|
|
110a832f5c | ||
|
|
6a9e970880 | ||
|
|
4e3058ce82 | ||
|
|
bc6307a872 |
102
.github/actions/setup-ngage-sdk/action.yml
vendored
102
.github/actions/setup-ngage-sdk/action.yml
vendored
@@ -1,102 +0,0 @@
|
|||||||
name: 'Setup Nonka N-Gage SDK'
|
|
||||||
description: 'Download and setup Nokia N-Gage SDK'
|
|
||||||
inputs:
|
|
||||||
path:
|
|
||||||
description: 'Installation path'
|
|
||||||
default: 'default'
|
|
||||||
runs:
|
|
||||||
using: 'composite'
|
|
||||||
steps:
|
|
||||||
- uses: actions/setup-python@v5
|
|
||||||
with:
|
|
||||||
python-version: '3.x'
|
|
||||||
- name: 'Verify platform'
|
|
||||||
id: calc
|
|
||||||
shell: sh
|
|
||||||
run: |
|
|
||||||
case "${{ runner.os }}-${{ runner.arch }}" in
|
|
||||||
"Windows-X86" | "Windows-X64")
|
|
||||||
echo "ok!"
|
|
||||||
echo "cache-key=ngage-sdk-windows" >> ${GITHUB_OUTPUT}
|
|
||||||
default_install_path="C:/ngagesdk"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unsupported ${{ runner.os }}-${{ runner.arch }}"
|
|
||||||
exit 1;
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
install_path="${{ inputs.path }}"
|
|
||||||
if [ "x$install_path" = "xdefault" ]; then
|
|
||||||
install_path="$default_install_path"
|
|
||||||
fi
|
|
||||||
echo "install-path=$install_path" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
toolchain_repo="https://github.com/ngagesdk/ngage-toolchain"
|
|
||||||
toolchain_branch="main"
|
|
||||||
echo "toolchain-repo=${toolchain_repo}" >> ${GITHUB_OUTPUT}
|
|
||||||
echo "toolchain-branch=${toolchain_branch}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
sdk_repo="https://github.com/ngagesdk/sdk"
|
|
||||||
sdk_branch="main"
|
|
||||||
echo "sdk-repo=${sdk_repo}" >> ${GITHUB_OUTPUT}
|
|
||||||
echo "sdk-branch=${sdk_branch}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
tools_repo="https://github.com/ngagesdk/tools"
|
|
||||||
tools_branch="main"
|
|
||||||
echo "tools-repo=${tools_repo}" >> ${GITHUB_OUTPUT}
|
|
||||||
echo "tools-branch=${tools_branch}" >> ${GITHUB_OUTPUT}
|
|
||||||
|
|
||||||
extras_repo="https://github.com/ngagesdk/extras"
|
|
||||||
extras_branch="main"
|
|
||||||
echo "extras-repo=${extras_repo}" >> ${GITHUB_OUTPUT}
|
|
||||||
echo "extras-branch=${extras_branch}" >> ${GITHUB_OUTPUT}
|
|
||||||
# - name: 'Restore cached ${{ steps.calc.outputs.archive }}'
|
|
||||||
# id: cache-restore
|
|
||||||
# uses: actions/cache/restore@v4
|
|
||||||
# with:
|
|
||||||
# path: '${{ runner.temp }}'
|
|
||||||
# key: ${{ steps.calc.outputs.cache-key }}
|
|
||||||
- name: 'Download N-Gage SDK'
|
|
||||||
# if: ${{ !steps.cache-restore.outputs.cache-hit || steps.cache-restore.outputs.cache-hit == 'false' }}
|
|
||||||
shell: pwsh
|
|
||||||
run: |
|
|
||||||
|
|
||||||
Invoke-WebRequest "${{ steps.calc.outputs.toolchain-repo }}/archive/refs/heads/${{ steps.calc.outputs.toolchain-branch }}.zip" -OutFile "${{ runner.temp }}/ngage-toolchain.zip"
|
|
||||||
Invoke-WebRequest "${{ steps.calc.outputs.sdk-repo }}/archive/refs/heads/${{ steps.calc.outputs.sdk-branch }}.zip" -OutFile "${{ runner.temp }}/sdk.zip"
|
|
||||||
Invoke-WebRequest "${{ steps.calc.outputs.tools-repo }}/archive/refs/heads/${{ steps.calc.outputs.tools-branch }}.zip" -OutFile "${{ runner.temp }}/tools.zip"
|
|
||||||
Invoke-WebRequest "${{ steps.calc.outputs.extras-repo }}/archive/refs/heads/${{ steps.calc.outputs.extras-branch }}.zip" -OutFile "${{ runner.temp }}/extras.zip"
|
|
||||||
|
|
||||||
# - name: 'Cache ${{ steps.calc.outputs.archive }}'
|
|
||||||
# if: ${{ !steps.cache-restore.outputs.cache-hit || steps.cache-restore.outputs.cache-hit == 'false' }}
|
|
||||||
# uses: actions/cache/save@v4
|
|
||||||
# with:
|
|
||||||
# path: |
|
|
||||||
# ${{ runner.temp }}/apps.zip
|
|
||||||
# ${{ runner.temp }}/sdk.zip
|
|
||||||
# ${{ runner.temp }}/tools.zip
|
|
||||||
# key: ${{ steps.calc.outputs.cache-key }}
|
|
||||||
- name: 'Extract N-Gage SDK'
|
|
||||||
shell: pwsh
|
|
||||||
run: |
|
|
||||||
New-Item -ItemType Directory -Path "${{ steps.calc.outputs.install-path }}" -Force
|
|
||||||
|
|
||||||
New-Item -ItemType Directory -Path "${{ runner.temp }}/ngage-toolchain-temp" -Force
|
|
||||||
7z "-o${{ runner.temp }}/ngage-toolchain-temp" x "${{ runner.temp }}/ngage-toolchain.zip"
|
|
||||||
Move-Item -Path "${{ runner.temp }}/ngage-toolchain-temp/ngage-toolchain-${{ steps.calc.outputs.toolchain-branch }}/*" -Destination "${{ steps.calc.outputs.install-path }}"
|
|
||||||
|
|
||||||
7z "-o${{ steps.calc.outputs.install-path }}/sdk" x "${{ runner.temp }}/sdk.zip"
|
|
||||||
Move-Item -Path "${{ steps.calc.outputs.install-path }}/sdk/sdk-${{ steps.calc.outputs.sdk-branch }}" -Destination "${{ steps.calc.outputs.install-path }}/sdk/sdk"
|
|
||||||
|
|
||||||
7z "-o${{ steps.calc.outputs.install-path }}/sdk" x "${{ runner.temp }}/tools.zip"
|
|
||||||
Move-Item -Path "${{ steps.calc.outputs.install-path }}/sdk/tools-${{ steps.calc.outputs.tools-branch }}" -Destination "${{ steps.calc.outputs.install-path }}/sdk/tools"
|
|
||||||
|
|
||||||
7z "-o${{ steps.calc.outputs.install-path }}/sdk" x "${{ runner.temp }}/extras.zip"
|
|
||||||
Move-Item -Path "${{ steps.calc.outputs.install-path }}/sdk/extras-${{ steps.calc.outputs.extras-branch }}" -Destination "${{ steps.calc.outputs.install-path }}/sdk/extras"
|
|
||||||
- name: 'Set output variables'
|
|
||||||
id: final
|
|
||||||
shell: sh
|
|
||||||
run: |
|
|
||||||
echo "${{ steps.calc.outputs.install-path }}/sdk/sdk/6.1/Shared/EPOC32/gcc/bin" >> $GITHUB_PATH
|
|
||||||
echo "${{ steps.calc.outputs.install-path }}/sdk/sdk/6.1/Shared/EPOC32/ngagesdk/bin" >> $GITHUB_PATH
|
|
||||||
echo "NGAGESDK=${{ steps.calc.outputs.install-path }}" >> $GITHUB_ENV
|
|
||||||
echo "CMAKE_TOOLCHAIN_FILE=${{ steps.calc.outputs.install-path }}/cmake/ngage-toolchain.cmake" >> $GITHUB_ENV
|
|
||||||
133
.github/workflows/create-test-plan.py
vendored
133
.github/workflows/create-test-plan.py
vendored
@@ -20,6 +20,7 @@ class AppleArch(Enum):
|
|||||||
class MsvcArch(Enum):
|
class MsvcArch(Enum):
|
||||||
X86 = "x86"
|
X86 = "x86"
|
||||||
X64 = "x64"
|
X64 = "x64"
|
||||||
|
Arm32 = "arm"
|
||||||
Arm64 = "arm64"
|
Arm64 = "arm64"
|
||||||
|
|
||||||
|
|
||||||
@@ -30,9 +31,7 @@ class JobOs(Enum):
|
|||||||
Ubuntu22_04 = "ubuntu-22.04"
|
Ubuntu22_04 = "ubuntu-22.04"
|
||||||
Ubuntu24_04 = "ubuntu-24.04"
|
Ubuntu24_04 = "ubuntu-24.04"
|
||||||
Ubuntu24_04_arm = "ubuntu-24.04-arm"
|
Ubuntu24_04_arm = "ubuntu-24.04-arm"
|
||||||
Macos14 = "macos-14" # macOS Sonoma (2023)
|
Macos13 = "macos-13"
|
||||||
Macos15 = "macos-15" # macOS Sequoia (2024)
|
|
||||||
Macos26 = "macos-26" # macOS Tahoe (2025)
|
|
||||||
|
|
||||||
|
|
||||||
class SdlPlatform(Enum):
|
class SdlPlatform(Enum):
|
||||||
@@ -55,8 +54,6 @@ class SdlPlatform(Enum):
|
|||||||
Riscos = "riscos"
|
Riscos = "riscos"
|
||||||
FreeBSD = "freebsd"
|
FreeBSD = "freebsd"
|
||||||
NetBSD = "netbsd"
|
NetBSD = "netbsd"
|
||||||
OpenBSD = "openbsd"
|
|
||||||
NGage = "ngage"
|
|
||||||
|
|
||||||
|
|
||||||
class Msys2Platform(Enum):
|
class Msys2Platform(Enum):
|
||||||
@@ -100,7 +97,6 @@ class JobSpec:
|
|||||||
clang_cl: bool = False
|
clang_cl: bool = False
|
||||||
gdk: bool = False
|
gdk: bool = False
|
||||||
vita_gles: Optional[VitaGLES] = None
|
vita_gles: Optional[VitaGLES] = None
|
||||||
more_hard_deps: bool = False
|
|
||||||
|
|
||||||
|
|
||||||
JOB_SPECS = {
|
JOB_SPECS = {
|
||||||
@@ -112,20 +108,16 @@ JOB_SPECS = {
|
|||||||
"msvc-x86": JobSpec(name="Windows (MSVC, x86)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-x86", msvc_arch=MsvcArch.X86, msvc_project="VisualC/SDL.sln", ),
|
"msvc-x86": JobSpec(name="Windows (MSVC, x86)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-x86", msvc_arch=MsvcArch.X86, msvc_project="VisualC/SDL.sln", ),
|
||||||
"msvc-clang-x64": JobSpec(name="Windows (MSVC, clang-cl x64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-clang-cl-x64", msvc_arch=MsvcArch.X64, clang_cl=True, ),
|
"msvc-clang-x64": JobSpec(name="Windows (MSVC, clang-cl x64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-clang-cl-x64", msvc_arch=MsvcArch.X64, clang_cl=True, ),
|
||||||
"msvc-clang-x86": JobSpec(name="Windows (MSVC, clang-cl x86)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-clang-cl-x86", msvc_arch=MsvcArch.X86, clang_cl=True, ),
|
"msvc-clang-x86": JobSpec(name="Windows (MSVC, clang-cl x86)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-clang-cl-x86", msvc_arch=MsvcArch.X86, clang_cl=True, ),
|
||||||
|
"msvc-arm32": JobSpec(name="Windows (MSVC, ARM)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-arm32", msvc_arch=MsvcArch.Arm32, ),
|
||||||
"msvc-arm64": JobSpec(name="Windows (MSVC, ARM64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-arm64", msvc_arch=MsvcArch.Arm64, ),
|
"msvc-arm64": JobSpec(name="Windows (MSVC, ARM64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-arm64", msvc_arch=MsvcArch.Arm64, ),
|
||||||
"msvc-gdk-x64": JobSpec(name="GDK (MSVC, x64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-GDK", msvc_arch=MsvcArch.X64, msvc_project="VisualC-GDK/SDL.sln", gdk=True, no_cmake=True, ),
|
"msvc-gdk-x64": JobSpec(name="GDK (MSVC, x64)", os=JobOs.WindowsLatest, platform=SdlPlatform.Msvc, artifact="SDL-VC-GDK", msvc_arch=MsvcArch.X64, msvc_project="VisualC-GDK/SDL.sln", gdk=True, no_cmake=True, ),
|
||||||
"ubuntu-22.04": JobSpec(name="Ubuntu 22.04", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04", ),
|
"ubuntu-22.04": JobSpec(name="Ubuntu 22.04", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04", ),
|
||||||
"ubuntu-latest": JobSpec(name="Ubuntu (latest)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Linux, artifact="SDL-ubuntu-latest", ),
|
|
||||||
"ubuntu-24.04-arm64": JobSpec(name="Ubuntu 24.04 (ARM64)", os=JobOs.Ubuntu24_04_arm, platform=SdlPlatform.Linux, artifact="SDL-ubuntu24.04-arm64", ),
|
"ubuntu-24.04-arm64": JobSpec(name="Ubuntu 24.04 (ARM64)", os=JobOs.Ubuntu24_04_arm, platform=SdlPlatform.Linux, artifact="SDL-ubuntu24.04-arm64", ),
|
||||||
"steamrt3": JobSpec(name="Steam Linux Runtime 3.0 (x86_64)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Linux, artifact="SDL-steamrt3", container="registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest" ),
|
"steamrt-sniper": JobSpec(name="Steam Linux Runtime (Sniper)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Linux, artifact="SDL-slrsniper", container="registry.gitlab.steamos.cloud/steamrt/sniper/sdk:beta", ),
|
||||||
"steamrt3-arm64": JobSpec(name="Steam Linux Runtime 3.0 (arm64)", os=JobOs.Ubuntu24_04_arm, platform=SdlPlatform.Linux, artifact="SDL-steamrt3-arm64", container="registry.gitlab.steamos.cloud/steamrt/sniper/sdk/arm64:latest" ),
|
|
||||||
"steamrt4": JobSpec(name="Steam Linux Runtime 4.0 (x86_64)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Linux, artifact="SDL-steamrt4", container="registry.gitlab.steamos.cloud/steamrt/steamrt4/sdk:latest", more_hard_deps = True, ),
|
|
||||||
"steamrt4-arm64": JobSpec(name="Steam Linux Runtime 4.0 (arm64)", os=JobOs.Ubuntu24_04_arm, platform=SdlPlatform.Linux, artifact="SDL-steamrt4-arm64", container="registry.gitlab.steamos.cloud/steamrt/steamrt4/sdk/arm64:latest", more_hard_deps = True, ),
|
|
||||||
"ubuntu-intel-icx": JobSpec(name="Ubuntu 22.04 (Intel oneAPI)", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04-oneapi", intel=IntelCompiler.Icx, ),
|
"ubuntu-intel-icx": JobSpec(name="Ubuntu 22.04 (Intel oneAPI)", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04-oneapi", intel=IntelCompiler.Icx, ),
|
||||||
"ubuntu-intel-icc": JobSpec(name="Ubuntu 22.04 (Intel Compiler)", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04-icc", intel=IntelCompiler.Icc, ),
|
"ubuntu-intel-icc": JobSpec(name="Ubuntu 22.04 (Intel Compiler)", os=JobOs.Ubuntu22_04, platform=SdlPlatform.Linux, artifact="SDL-ubuntu22.04-icc", intel=IntelCompiler.Icc, ),
|
||||||
"macos-framework-x64": JobSpec(name="MacOS (Framework) (x64)", os=JobOs.Macos14, platform=SdlPlatform.MacOS, artifact="SDL-macos-framework", apple_framework=True, apple_archs={AppleArch.Aarch64, AppleArch.X86_64, }, xcode=True, ),
|
"macos-framework-x64": JobSpec(name="MacOS (Framework) (x64)", os=JobOs.Macos13, platform=SdlPlatform.MacOS, artifact="SDL-macos-framework", apple_framework=True, apple_archs={AppleArch.Aarch64, AppleArch.X86_64, }, xcode=True, ),
|
||||||
"macos-framework-arm64": JobSpec(name="MacOS (Framework) (arm64)", os=JobOs.MacosLatest, platform=SdlPlatform.MacOS, artifact=None, apple_framework=True, apple_archs={AppleArch.Aarch64, AppleArch.X86_64, }, ),
|
"macos-framework-arm64": JobSpec(name="MacOS (Framework) (arm64)", os=JobOs.MacosLatest, platform=SdlPlatform.MacOS, artifact=None, apple_framework=True, apple_archs={AppleArch.Aarch64, AppleArch.X86_64, }, ),
|
||||||
"macos-26-framework-arm64": JobSpec(name="MacOS 26 (Framework) (arm64)",os=JobOs.Macos26, platform=SdlPlatform.MacOS, artifact=None, apple_framework=True, apple_archs={AppleArch.Aarch64, AppleArch.X86_64, }, ),
|
|
||||||
"macos-gnu-arm64": JobSpec(name="MacOS (GNU prefix)", os=JobOs.MacosLatest, platform=SdlPlatform.MacOS, artifact="SDL-macos-arm64-gnu", apple_framework=False, apple_archs={AppleArch.Aarch64, }, ),
|
"macos-gnu-arm64": JobSpec(name="MacOS (GNU prefix)", os=JobOs.MacosLatest, platform=SdlPlatform.MacOS, artifact="SDL-macos-arm64-gnu", apple_framework=False, apple_archs={AppleArch.Aarch64, }, ),
|
||||||
"ios": JobSpec(name="iOS (CMake & xcode)", os=JobOs.MacosLatest, platform=SdlPlatform.Ios, artifact="SDL-ios-arm64", xcode=True, ),
|
"ios": JobSpec(name="iOS (CMake & xcode)", os=JobOs.MacosLatest, platform=SdlPlatform.Ios, artifact="SDL-ios-arm64", xcode=True, ),
|
||||||
"tvos": JobSpec(name="tvOS (CMake & xcode)", os=JobOs.MacosLatest, platform=SdlPlatform.Tvos, artifact="SDL-tvos-arm64", xcode=True, ),
|
"tvos": JobSpec(name="tvOS (CMake & xcode)", os=JobOs.MacosLatest, platform=SdlPlatform.Tvos, artifact="SDL-tvos-arm64", xcode=True, ),
|
||||||
@@ -145,14 +137,12 @@ JOB_SPECS = {
|
|||||||
"vita-pvr": JobSpec(name="Sony PlayStation Vita (GLES w/ PVR_PSP2)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Vita, artifact="SDL-vita-pvr", container="vitasdk/vitasdk:latest", vita_gles=VitaGLES.Pvr, ),
|
"vita-pvr": JobSpec(name="Sony PlayStation Vita (GLES w/ PVR_PSP2)", os=JobOs.UbuntuLatest, platform=SdlPlatform.Vita, artifact="SDL-vita-pvr", container="vitasdk/vitasdk:latest", vita_gles=VitaGLES.Pvr, ),
|
||||||
"riscos": JobSpec(name="RISC OS", os=JobOs.UbuntuLatest, platform=SdlPlatform.Riscos, artifact="SDL-riscos", container="riscosdotinfo/riscos-gccsdk-4.7:latest", ),
|
"riscos": JobSpec(name="RISC OS", os=JobOs.UbuntuLatest, platform=SdlPlatform.Riscos, artifact="SDL-riscos", container="riscosdotinfo/riscos-gccsdk-4.7:latest", ),
|
||||||
"netbsd": JobSpec(name="NetBSD", os=JobOs.UbuntuLatest, platform=SdlPlatform.NetBSD, artifact="SDL-netbsd-x64", ),
|
"netbsd": JobSpec(name="NetBSD", os=JobOs.UbuntuLatest, platform=SdlPlatform.NetBSD, artifact="SDL-netbsd-x64", ),
|
||||||
"openbsd": JobSpec(name="OpenBSD", os=JobOs.UbuntuLatest, platform=SdlPlatform.OpenBSD, artifact="SDL-openbsd-x64", ),
|
|
||||||
"freebsd": JobSpec(name="FreeBSD", os=JobOs.UbuntuLatest, platform=SdlPlatform.FreeBSD, artifact="SDL-freebsd-x64", ),
|
"freebsd": JobSpec(name="FreeBSD", os=JobOs.UbuntuLatest, platform=SdlPlatform.FreeBSD, artifact="SDL-freebsd-x64", ),
|
||||||
"ngage": JobSpec(name="N-Gage", os=JobOs.WindowsLatest, platform=SdlPlatform.NGage, artifact="SDL-ngage", ),
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class StaticLibType(Enum):
|
class StaticLibType(Enum):
|
||||||
STATIC_LIB = "SDL3-static.lib"
|
MSVC = "SDL3-static.lib"
|
||||||
A = "libSDL3.a"
|
A = "libSDL3.a"
|
||||||
|
|
||||||
|
|
||||||
@@ -184,7 +174,6 @@ class JobDetails:
|
|||||||
brew_packages: list[str] = dataclasses.field(default_factory=list)
|
brew_packages: list[str] = dataclasses.field(default_factory=list)
|
||||||
cmake_toolchain_file: str = ""
|
cmake_toolchain_file: str = ""
|
||||||
cmake_arguments: list[str] = dataclasses.field(default_factory=list)
|
cmake_arguments: list[str] = dataclasses.field(default_factory=list)
|
||||||
cmake_generator: str = "Ninja"
|
|
||||||
cmake_build_arguments: list[str] = dataclasses.field(default_factory=list)
|
cmake_build_arguments: list[str] = dataclasses.field(default_factory=list)
|
||||||
clang_tidy: bool = True
|
clang_tidy: bool = True
|
||||||
cppflags: list[str] = dataclasses.field(default_factory=list)
|
cppflags: list[str] = dataclasses.field(default_factory=list)
|
||||||
@@ -212,7 +201,8 @@ class JobDetails:
|
|||||||
minidump: bool = False
|
minidump: bool = False
|
||||||
intel: bool = False
|
intel: bool = False
|
||||||
msys2_msystem: str = ""
|
msys2_msystem: str = ""
|
||||||
msys2_packages: list[str] = dataclasses.field(default_factory=list)
|
msys2_env: str = ""
|
||||||
|
msys2_no_perl: bool = False
|
||||||
werror: bool = True
|
werror: bool = True
|
||||||
msvc_vcvars_arch: str = ""
|
msvc_vcvars_arch: str = ""
|
||||||
msvc_vcvars_sdk: str = ""
|
msvc_vcvars_sdk: str = ""
|
||||||
@@ -232,8 +222,6 @@ class JobDetails:
|
|||||||
check_sources: bool = False
|
check_sources: bool = False
|
||||||
setup_python: bool = False
|
setup_python: bool = False
|
||||||
pypi_packages: list[str] = dataclasses.field(default_factory=list)
|
pypi_packages: list[str] = dataclasses.field(default_factory=list)
|
||||||
setup_gage_sdk_path: str = ""
|
|
||||||
binutils_strings: str = "strings"
|
|
||||||
|
|
||||||
def to_workflow(self, enable_artifacts: bool) -> dict[str, str|bool]:
|
def to_workflow(self, enable_artifacts: bool) -> dict[str, str|bool]:
|
||||||
data = {
|
data = {
|
||||||
@@ -247,7 +235,8 @@ class JobDetails:
|
|||||||
"enable-artifacts": enable_artifacts,
|
"enable-artifacts": enable_artifacts,
|
||||||
"shell": self.shell,
|
"shell": self.shell,
|
||||||
"msys2-msystem": self.msys2_msystem,
|
"msys2-msystem": self.msys2_msystem,
|
||||||
"msys2-packages": my_shlex_join(self.msys2_packages),
|
"msys2-env": self.msys2_env,
|
||||||
|
"msys2-no-perl": self.msys2_no_perl,
|
||||||
"android-ndk": self.android_ndk,
|
"android-ndk": self.android_ndk,
|
||||||
"java": self.java,
|
"java": self.java,
|
||||||
"intel": self.intel,
|
"intel": self.intel,
|
||||||
@@ -266,7 +255,6 @@ class JobDetails:
|
|||||||
"cflags": my_shlex_join(self.cppflags + self.cflags),
|
"cflags": my_shlex_join(self.cppflags + self.cflags),
|
||||||
"cxxflags": my_shlex_join(self.cppflags + self.cxxflags),
|
"cxxflags": my_shlex_join(self.cppflags + self.cxxflags),
|
||||||
"ldflags": my_shlex_join(self.ldflags),
|
"ldflags": my_shlex_join(self.ldflags),
|
||||||
"cmake-generator": self.cmake_generator,
|
|
||||||
"cmake-toolchain-file": self.cmake_toolchain_file,
|
"cmake-toolchain-file": self.cmake_toolchain_file,
|
||||||
"clang-tidy": self.clang_tidy,
|
"clang-tidy": self.clang_tidy,
|
||||||
"cmake-arguments": my_shlex_join(self.cmake_arguments),
|
"cmake-arguments": my_shlex_join(self.cmake_arguments),
|
||||||
@@ -301,8 +289,6 @@ class JobDetails:
|
|||||||
"check-sources": self.check_sources,
|
"check-sources": self.check_sources,
|
||||||
"setup-python": self.setup_python,
|
"setup-python": self.setup_python,
|
||||||
"pypi-packages": my_shlex_join(self.pypi_packages),
|
"pypi-packages": my_shlex_join(self.pypi_packages),
|
||||||
"setup-ngage-sdk-path": self.setup_gage_sdk_path,
|
|
||||||
"binutils-strings": self.binutils_strings,
|
|
||||||
}
|
}
|
||||||
return {k: v for k, v in data.items() if v != ""}
|
return {k: v for k, v in data.items() if v != ""}
|
||||||
|
|
||||||
@@ -378,7 +364,7 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
job.msvc_project_flags.append("-p:TreatWarningsAsError=true")
|
job.msvc_project_flags.append("-p:TreatWarningsAsError=true")
|
||||||
job.test_pkg_config = False
|
job.test_pkg_config = False
|
||||||
job.shared_lib = SharedLibType.WIN32
|
job.shared_lib = SharedLibType.WIN32
|
||||||
job.static_lib = StaticLibType.STATIC_LIB
|
job.static_lib = StaticLibType.MSVC
|
||||||
job.cmake_arguments.extend((
|
job.cmake_arguments.extend((
|
||||||
"-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=ProgramDatabase",
|
"-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=ProgramDatabase",
|
||||||
"-DCMAKE_EXE_LINKER_FLAGS=-DEBUG",
|
"-DCMAKE_EXE_LINKER_FLAGS=-DEBUG",
|
||||||
@@ -395,11 +381,9 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
match spec.msvc_arch:
|
match spec.msvc_arch:
|
||||||
case MsvcArch.X86:
|
case MsvcArch.X86:
|
||||||
job.cflags.append("/clang:-m32")
|
job.cflags.append("/clang:-m32")
|
||||||
job.cxxflags.append("/clang:-m32")
|
|
||||||
job.ldflags.append("/MACHINE:X86")
|
job.ldflags.append("/MACHINE:X86")
|
||||||
case MsvcArch.X64:
|
case MsvcArch.X64:
|
||||||
job.cflags.append("/clang:-m64")
|
job.cflags.append("/clang:-m64")
|
||||||
job.cxxflags.append("/clang:-m64")
|
|
||||||
job.ldflags.append("/MACHINE:X64")
|
job.ldflags.append("/MACHINE:X64")
|
||||||
case _:
|
case _:
|
||||||
raise ValueError(f"Unsupported clang-cl architecture (arch={spec.msvc_arch})")
|
raise ValueError(f"Unsupported clang-cl architecture (arch={spec.msvc_arch})")
|
||||||
@@ -419,6 +403,10 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
job.msvc_vcvars_arch = "x64_x86"
|
job.msvc_vcvars_arch = "x64_x86"
|
||||||
case MsvcArch.X64:
|
case MsvcArch.X64:
|
||||||
job.msvc_vcvars_arch = "x64"
|
job.msvc_vcvars_arch = "x64"
|
||||||
|
case MsvcArch.Arm32:
|
||||||
|
job.msvc_vcvars_arch = "x64_arm"
|
||||||
|
job.msvc_vcvars_sdk = "10.0.22621.0" # 10.0.26100.0 dropped ARM32 um and ucrt libraries
|
||||||
|
job.run_tests = False
|
||||||
case MsvcArch.Arm64:
|
case MsvcArch.Arm64:
|
||||||
job.msvc_vcvars_arch = "x64_arm64"
|
job.msvc_vcvars_arch = "x64_arm64"
|
||||||
job.run_tests = False
|
job.run_tests = False
|
||||||
@@ -449,7 +437,6 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
"libxfixes-dev",
|
"libxfixes-dev",
|
||||||
"libxi-dev",
|
"libxi-dev",
|
||||||
"libxss-dev",
|
"libxss-dev",
|
||||||
"libxtst-dev",
|
|
||||||
"libwayland-dev",
|
"libwayland-dev",
|
||||||
"libxkbcommon-dev",
|
"libxkbcommon-dev",
|
||||||
"libdrm-dev",
|
"libdrm-dev",
|
||||||
@@ -461,19 +448,10 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
"libibus-1.0-dev",
|
"libibus-1.0-dev",
|
||||||
"libudev-dev",
|
"libudev-dev",
|
||||||
"fcitx-libs-dev",
|
"fcitx-libs-dev",
|
||||||
"libfribidi-dev",
|
|
||||||
# testffmpeg
|
|
||||||
"libavcodec-dev",
|
|
||||||
"libavfilter-dev",
|
|
||||||
"libavutil-dev",
|
|
||||||
"libswresample-dev",
|
|
||||||
"libswscale-dev",
|
|
||||||
))
|
))
|
||||||
match = re.match(r"ubuntu-(?P<year>[0-9]+)\.(?P<month>[0-9]+|latest).*", spec.os.value)
|
match = re.match(r"ubuntu-(?P<year>[0-9]+)\.(?P<month>[0-9]+).*", spec.os.value)
|
||||||
ubuntu_ge_22 = True
|
ubuntu_year, ubuntu_month = [int(match["year"]), int(match["month"])]
|
||||||
if match and match["month"] != "latest":
|
if ubuntu_year >= 22:
|
||||||
ubuntu_year, ubuntu_month = [int(match["year"]), int(match["month"])]
|
|
||||||
ubuntu_ge_22 = ubuntu_year >= 22
|
|
||||||
job.apt_packages.extend(("libpipewire-0.3-dev", "libdecor-0-dev"))
|
job.apt_packages.extend(("libpipewire-0.3-dev", "libdecor-0-dev"))
|
||||||
job.apt_packages.extend((
|
job.apt_packages.extend((
|
||||||
"libunwind-dev", # For SDL_test memory tracking
|
"libunwind-dev", # For SDL_test memory tracking
|
||||||
@@ -485,19 +463,6 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
job.shared_lib = SharedLibType.SO_0
|
job.shared_lib = SharedLibType.SO_0
|
||||||
job.static_lib = StaticLibType.A
|
job.static_lib = StaticLibType.A
|
||||||
fpic = True
|
fpic = True
|
||||||
if spec.more_hard_deps:
|
|
||||||
# Some distros prefer to make important dependencies
|
|
||||||
# mandatory, so that SDL won't start up but lack expected
|
|
||||||
# functionality if they're missing
|
|
||||||
job.cmake_arguments.extend([
|
|
||||||
"-DSDL_ALSA_SHARED=OFF",
|
|
||||||
"-DSDL_FRIBIDI_SHARED=OFF",
|
|
||||||
"-DSDL_HIDAPI_LIBUSB_SHARED=OFF",
|
|
||||||
"-DSDL_PULSEAUDIO_SHARED=OFF",
|
|
||||||
"-DSDL_X11_SHARED=OFF",
|
|
||||||
"-DSDL_WAYLAND_LIBDECOR_SHARED=OFF",
|
|
||||||
"-DSDL_WAYLAND_SHARED=OFF",
|
|
||||||
])
|
|
||||||
case SdlPlatform.Ios | SdlPlatform.Tvos:
|
case SdlPlatform.Ios | SdlPlatform.Tvos:
|
||||||
job.brew_packages.extend([
|
job.brew_packages.extend([
|
||||||
"ccache",
|
"ccache",
|
||||||
@@ -544,19 +509,14 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13",
|
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13",
|
||||||
"-DCLANG_TIDY_BINARY=$(brew --prefix llvm)/bin/clang-tidy",
|
"-DCLANG_TIDY_BINARY=$(brew --prefix llvm)/bin/clang-tidy",
|
||||||
))
|
))
|
||||||
job.brew_packages.extend((
|
|
||||||
# Brew provides a single architecture (aarch64), so it's not usable for fat libraries
|
|
||||||
"ffmpeg", # testffmpeg
|
|
||||||
))
|
|
||||||
job.shared_lib = SharedLibType.DYLIB
|
job.shared_lib = SharedLibType.DYLIB
|
||||||
job.static_lib = StaticLibType.A
|
job.static_lib = StaticLibType.A
|
||||||
job.ccache = True
|
job.ccache = True
|
||||||
job.apt_packages = []
|
job.apt_packages = []
|
||||||
job.brew_packages.extend((
|
job.brew_packages.extend((
|
||||||
|
"ccache",
|
||||||
"ninja",
|
"ninja",
|
||||||
))
|
))
|
||||||
if job.ccache:
|
|
||||||
job.brew_packages.append("ccache")
|
|
||||||
if job.clang_tidy:
|
if job.clang_tidy:
|
||||||
job.brew_packages.append("llvm")
|
job.brew_packages.append("llvm")
|
||||||
if spec.xcode:
|
if spec.xcode:
|
||||||
@@ -590,10 +550,6 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
"testmultiaudio-apk",
|
"testmultiaudio-apk",
|
||||||
"testsprite-apk",
|
"testsprite-apk",
|
||||||
]
|
]
|
||||||
|
|
||||||
# -fPIC is required after updating NDK from 21 to 28
|
|
||||||
job.cflags.append("-fPIC")
|
|
||||||
job.cxxflags.append("-fPIC")
|
|
||||||
case SdlPlatform.Emscripten:
|
case SdlPlatform.Emscripten:
|
||||||
job.clang_tidy = False # clang-tidy does not understand -gsource-map
|
job.clang_tidy = False # clang-tidy does not understand -gsource-map
|
||||||
job.shared = False
|
job.shared = False
|
||||||
@@ -686,7 +642,7 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
job.cmake_arguments.extend((
|
job.cmake_arguments.extend((
|
||||||
f"-DCMAKE_C_COMPILER={job.cc}",
|
f"-DCMAKE_C_COMPILER={job.cc}",
|
||||||
f"-DCMAKE_CXX_COMPILER={job.cxx}",
|
f"-DCMAKE_CXX_COMPILER={job.cxx}",
|
||||||
"-DCMAKE_SYSTEM_NAME=Haiku",
|
"-DSDL_UNIX_CONSOLE_BUILD=ON",
|
||||||
))
|
))
|
||||||
job.shared_lib = SharedLibType.SO_0
|
job.shared_lib = SharedLibType.SO_0
|
||||||
job.static_lib = StaticLibType.A
|
job.static_lib = StaticLibType.A
|
||||||
@@ -719,42 +675,28 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
job.shared_lib = SharedLibType.SO_0
|
job.shared_lib = SharedLibType.SO_0
|
||||||
job.static_lib = StaticLibType.A
|
job.static_lib = StaticLibType.A
|
||||||
case SdlPlatform.N3ds:
|
case SdlPlatform.N3ds:
|
||||||
job.cmake_generator = "Unix Makefiles"
|
job.ccache = True
|
||||||
job.cmake_build_arguments.append("-j$(nproc)")
|
|
||||||
job.ccache = False
|
|
||||||
job.shared = False
|
job.shared = False
|
||||||
job.apt_packages = []
|
job.apt_packages = ["ccache", "ninja-build", "binutils"]
|
||||||
job.clang_tidy = False
|
job.clang_tidy = False
|
||||||
job.run_tests = False
|
job.run_tests = False
|
||||||
job.cc_from_cmake = True
|
job.cc_from_cmake = True
|
||||||
job.cmake_toolchain_file = "${DEVKITPRO}/cmake/3DS.cmake"
|
job.cmake_toolchain_file = "${DEVKITPRO}/cmake/3DS.cmake"
|
||||||
job.binutils_strings = "/opt/devkitpro/devkitARM/bin/arm-none-eabi-strings"
|
|
||||||
job.static_lib = StaticLibType.A
|
job.static_lib = StaticLibType.A
|
||||||
case SdlPlatform.Msys2:
|
case SdlPlatform.Msys2:
|
||||||
job.ccache = True
|
job.ccache = True
|
||||||
job.shell = "msys2 {0}"
|
job.shell = "msys2 {0}"
|
||||||
assert spec.msys2_platform
|
assert spec.msys2_platform
|
||||||
job.msys2_msystem = spec.msys2_platform.value
|
job.msys2_msystem = spec.msys2_platform.value
|
||||||
job.shared_lib = SharedLibType.WIN32
|
job.msys2_env = {
|
||||||
job.static_lib = StaticLibType.A
|
|
||||||
msys2_env = {
|
|
||||||
"mingw32": "mingw-w64-i686",
|
"mingw32": "mingw-w64-i686",
|
||||||
"mingw64": "mingw-w64-x86_64",
|
"mingw64": "mingw-w64-x86_64",
|
||||||
"clang64": "mingw-w64-clang-x86_64",
|
"clang64": "mingw-w64-clang-x86_64",
|
||||||
"ucrt64": "mingw-w64-ucrt-x86_64",
|
"ucrt64": "mingw-w64-ucrt-x86_64",
|
||||||
}[spec.msys2_platform.value]
|
}[spec.msys2_platform.value]
|
||||||
job.msys2_packages.extend([
|
job.msys2_no_perl = spec.msys2_platform in (Msys2Platform.Mingw32, )
|
||||||
f"{msys2_env}-cc",
|
job.shared_lib = SharedLibType.WIN32
|
||||||
f"{msys2_env}-cmake",
|
job.static_lib = StaticLibType.A
|
||||||
f"{msys2_env}-ffmpeg",
|
|
||||||
f"{msys2_env}-ninja",
|
|
||||||
f"{msys2_env}-pkg-config",
|
|
||||||
])
|
|
||||||
if spec.msys2_platform not in (Msys2Platform.Mingw32, ):
|
|
||||||
job.msys2_packages.append(f"{msys2_env}-perl")
|
|
||||||
job.msys2_packages.append(f"{msys2_env}-clang-tools-extra")
|
|
||||||
if job.ccache:
|
|
||||||
job.msys2_packages.append(f"{msys2_env}-ccache")
|
|
||||||
case SdlPlatform.Riscos:
|
case SdlPlatform.Riscos:
|
||||||
job.ccache = False # FIXME: enable when container gets upgrade
|
job.ccache = False # FIXME: enable when container gets upgrade
|
||||||
# FIXME: Enable SDL_WERROR
|
# FIXME: Enable SDL_WERROR
|
||||||
@@ -771,7 +713,7 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
))
|
))
|
||||||
job.cmake_toolchain_file = "/home/riscos/env/toolchain-riscos.cmake"
|
job.cmake_toolchain_file = "/home/riscos/env/toolchain-riscos.cmake"
|
||||||
job.static_lib = StaticLibType.A
|
job.static_lib = StaticLibType.A
|
||||||
case SdlPlatform.FreeBSD | SdlPlatform.NetBSD | SdlPlatform.OpenBSD:
|
case SdlPlatform.FreeBSD | SdlPlatform.NetBSD:
|
||||||
job.cpactions = True
|
job.cpactions = True
|
||||||
job.no_cmake = True
|
job.no_cmake = True
|
||||||
job.run_tests = False
|
job.run_tests = False
|
||||||
@@ -781,7 +723,7 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
match spec.platform:
|
match spec.platform:
|
||||||
case SdlPlatform.FreeBSD:
|
case SdlPlatform.FreeBSD:
|
||||||
job.cpactions_os = "freebsd"
|
job.cpactions_os = "freebsd"
|
||||||
job.cpactions_version = "14.3"
|
job.cpactions_version = "14.2"
|
||||||
job.cpactions_arch = "x86-64"
|
job.cpactions_arch = "x86-64"
|
||||||
job.cpactions_setup_cmd = "sudo pkg update"
|
job.cpactions_setup_cmd = "sudo pkg update"
|
||||||
job.cpactions_install_cmd = "sudo pkg install -y cmake ninja pkgconf libXcursor libXext libXinerama libXi libXfixes libXrandr libXScrnSaver libXxf86vm wayland wayland-protocols libxkbcommon mesa-libs libglvnd evdev-proto libinotify alsa-lib jackit pipewire pulseaudio sndio dbus zh-fcitx ibus libudev-devd"
|
job.cpactions_install_cmd = "sudo pkg install -y cmake ninja pkgconf libXcursor libXext libXinerama libXi libXfixes libXrandr libXScrnSaver libXxf86vm wayland wayland-protocols libxkbcommon mesa-libs libglvnd evdev-proto libinotify alsa-lib jackit pipewire pulseaudio sndio dbus zh-fcitx ibus libudev-devd"
|
||||||
@@ -795,25 +737,6 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
|
|||||||
job.cpactions_arch = "x86-64"
|
job.cpactions_arch = "x86-64"
|
||||||
job.cpactions_setup_cmd = "export PATH=\"/usr/pkg/sbin:/usr/pkg/bin:/sbin:$PATH\"; export PKG_CONFIG_PATH=\"/usr/pkg/lib/pkgconfig\";export PKG_PATH=\"https://cdn.netBSD.org/pub/pkgsrc/packages/NetBSD/$(uname -p)/$(uname -r|cut -f \"1 2\" -d.)/All/\";echo \"PKG_PATH=$PKG_PATH\";echo \"uname -a -> \"$(uname -a)\"\";sudo -E sysctl -w security.pax.aslr.enabled=0;sudo -E sysctl -w security.pax.aslr.global=0;sudo -E pkgin clean;sudo -E pkgin update"
|
job.cpactions_setup_cmd = "export PATH=\"/usr/pkg/sbin:/usr/pkg/bin:/sbin:$PATH\"; export PKG_CONFIG_PATH=\"/usr/pkg/lib/pkgconfig\";export PKG_PATH=\"https://cdn.netBSD.org/pub/pkgsrc/packages/NetBSD/$(uname -p)/$(uname -r|cut -f \"1 2\" -d.)/All/\";echo \"PKG_PATH=$PKG_PATH\";echo \"uname -a -> \"$(uname -a)\"\";sudo -E sysctl -w security.pax.aslr.enabled=0;sudo -E sysctl -w security.pax.aslr.global=0;sudo -E pkgin clean;sudo -E pkgin update"
|
||||||
job.cpactions_install_cmd = "sudo -E pkgin -y install cmake dbus pkgconf ninja-build pulseaudio libxkbcommon wayland wayland-protocols libinotify libusb1"
|
job.cpactions_install_cmd = "sudo -E pkgin -y install cmake dbus pkgconf ninja-build pulseaudio libxkbcommon wayland wayland-protocols libinotify libusb1"
|
||||||
case SdlPlatform.OpenBSD:
|
|
||||||
job.cpactions_os = "openbsd"
|
|
||||||
job.cpactions_version = "7.7"
|
|
||||||
job.cpactions_arch = "x86-64"
|
|
||||||
job.cpactions_setup_cmd = "sudo pkg_add -u"
|
|
||||||
job.cpactions_install_cmd = "sudo pkg_add cmake ninja pkgconf wayland wayland-protocols libxkbcommon libinotify pulseaudio dbus ibus"
|
|
||||||
case SdlPlatform.NGage:
|
|
||||||
build_parallel = False
|
|
||||||
job.cmake_build_type = "Release"
|
|
||||||
job.setup_ninja = True
|
|
||||||
job.static_lib = StaticLibType.STATIC_LIB
|
|
||||||
job.shared_lib = None
|
|
||||||
job.clang_tidy = False
|
|
||||||
job.werror = False # FIXME: enable SDL_WERROR
|
|
||||||
job.shared = False
|
|
||||||
job.run_tests = False
|
|
||||||
job.setup_gage_sdk_path = "C:/ngagesdk"
|
|
||||||
job.cmake_toolchain_file = "C:/ngagesdk/cmake/ngage-toolchain.cmake"
|
|
||||||
job.test_pkg_config = False
|
|
||||||
case _:
|
case _:
|
||||||
raise ValueError(f"Unsupported platform={spec.platform}")
|
raise ValueError(f"Unsupported platform={spec.platform}")
|
||||||
|
|
||||||
|
|||||||
34
.github/workflows/generic.yml
vendored
34
.github/workflows/generic.yml
vendored
@@ -27,7 +27,14 @@ jobs:
|
|||||||
uses: msys2/setup-msys2@v2
|
uses: msys2/setup-msys2@v2
|
||||||
with:
|
with:
|
||||||
msystem: ${{ matrix.platform.msys2-msystem }}
|
msystem: ${{ matrix.platform.msys2-msystem }}
|
||||||
install: ${{ matrix.platform.msys2-packages }}
|
install: >-
|
||||||
|
${{ matrix.platform.msys2-env }}-cc
|
||||||
|
${{ matrix.platform.msys2-env }}-cmake
|
||||||
|
${{ matrix.platform.msys2-env }}-ninja
|
||||||
|
${{ (!matrix.platform.msys2-no-perl && format('{0}-perl', matrix.platform.msys2-env)) || '' }}
|
||||||
|
${{ matrix.platform.msys2-env }}-pkg-config
|
||||||
|
${{ matrix.platform.msys2-env }}-clang-tools-extra
|
||||||
|
${{ (matrix.platform.ccache && format('{0}-ccache', matrix.platform.msys2-env)) || '' }}
|
||||||
- name: 'About this job'
|
- name: 'About this job'
|
||||||
run: |
|
run: |
|
||||||
echo "key=${{ matrix.platform.key }}"
|
echo "key=${{ matrix.platform.key }}"
|
||||||
@@ -68,8 +75,8 @@ jobs:
|
|||||||
if: ${{ matrix.platform.android-ndk }}
|
if: ${{ matrix.platform.android-ndk }}
|
||||||
id: setup-ndk
|
id: setup-ndk
|
||||||
with:
|
with:
|
||||||
local-cache: false
|
local-cache: true
|
||||||
ndk-version: r28c
|
ndk-version: r21e
|
||||||
- name: 'Configure Android NDK variables'
|
- name: 'Configure Android NDK variables'
|
||||||
if: ${{ matrix.platform.android-ndk }}
|
if: ${{ matrix.platform.android-ndk }}
|
||||||
shell: sh
|
shell: sh
|
||||||
@@ -86,11 +93,6 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
arch: ${{ matrix.platform.msvc-vcvars-arch }}
|
arch: ${{ matrix.platform.msvc-vcvars-arch }}
|
||||||
sdk: ${{ matrix.platform.msvc-vcvars-sdk }}
|
sdk: ${{ matrix.platform.msvc-vcvars-sdk }}
|
||||||
- name: 'Set up Nokia N-Gage SDK'
|
|
||||||
uses: ./.github/actions/setup-ngage-sdk
|
|
||||||
if: ${{ matrix.platform.setup-ngage-sdk-path != '' }}
|
|
||||||
with:
|
|
||||||
path: '${{ matrix.platform.setup-ngage-sdk-path }}'
|
|
||||||
- name: 'Set up Windows GDK Desktop'
|
- name: 'Set up Windows GDK Desktop'
|
||||||
uses: ./.github/actions/setup-gdk-desktop
|
uses: ./.github/actions/setup-gdk-desktop
|
||||||
if: ${{ matrix.platform.setup-gdk-folder != '' }}
|
if: ${{ matrix.platform.setup-gdk-folder != '' }}
|
||||||
@@ -199,7 +201,7 @@ jobs:
|
|||||||
#shell: ${{ matrix.platform.shell }}
|
#shell: ${{ matrix.platform.shell }}
|
||||||
run: |
|
run: |
|
||||||
${{ matrix.platform.source-cmd }}
|
${{ matrix.platform.source-cmd }}
|
||||||
${{ matrix.platform.cmake-config-emulator }} cmake -S . -B build -G "${{ matrix.platform.cmake-generator }}" \
|
${{ matrix.platform.cmake-config-emulator }} cmake -S . -B build -GNinja \
|
||||||
-Wdeprecated -Wdev -Werror \
|
-Wdeprecated -Wdev -Werror \
|
||||||
${{ matrix.platform.cmake-toolchain-file != '' && format('-DCMAKE_TOOLCHAIN_FILE={0}', matrix.platform.cmake-toolchain-file) || '' }} \
|
${{ matrix.platform.cmake-toolchain-file != '' && format('-DCMAKE_TOOLCHAIN_FILE={0}', matrix.platform.cmake-toolchain-file) || '' }} \
|
||||||
-DSDL_WERROR=${{ matrix.platform.werror }} \
|
-DSDL_WERROR=${{ matrix.platform.werror }} \
|
||||||
@@ -230,9 +232,9 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
echo "This should show us the SDL_REVISION"
|
echo "This should show us the SDL_REVISION"
|
||||||
echo "Shared library:"
|
echo "Shared library:"
|
||||||
${{ (matrix.platform.shared-lib && format('{0} build/{1} | grep "Github Workflow"', matrix.platform.binutils-strings, matrix.platform.shared-lib)) || 'echo "<Shared library not supported by platform>"' }}
|
${{ (matrix.platform.shared-lib && format('strings build/{0} | grep "Github Workflow"', matrix.platform.shared-lib)) || 'echo "<Shared library not supported by platform>"' }}
|
||||||
echo "Static library:"
|
echo "Static library:"
|
||||||
${{ (matrix.platform.static-lib && format('{0} build/{1} | grep "Github Workflow"', matrix.platform.binutils-strings, matrix.platform.static-lib)) || 'echo "<Static library not supported by platform>"' }}
|
${{ (matrix.platform.static-lib && format('strings build/{0} | grep "Github Workflow"', matrix.platform.static-lib)) || 'echo "<Static library not supported by platform>"' }}
|
||||||
- name: 'Run build-time tests (CMake)'
|
- name: 'Run build-time tests (CMake)'
|
||||||
id: tests
|
id: tests
|
||||||
if: ${{ !matrix.platform.no-cmake && matrix.platform.run-tests }}
|
if: ${{ !matrix.platform.no-cmake && matrix.platform.run-tests }}
|
||||||
@@ -319,7 +321,7 @@ jobs:
|
|||||||
- name: 'Build (cross-platform-actions, BSD)'
|
- name: 'Build (cross-platform-actions, BSD)'
|
||||||
id: cpactions
|
id: cpactions
|
||||||
if: ${{ matrix.platform.cpactions }}
|
if: ${{ matrix.platform.cpactions }}
|
||||||
uses: cross-platform-actions/action@v0.29.0
|
uses: cross-platform-actions/action@v0.27.0
|
||||||
with:
|
with:
|
||||||
operating_system: '${{ matrix.platform.cpactions-os }}'
|
operating_system: '${{ matrix.platform.cpactions-os }}'
|
||||||
architecture: '${{ matrix.platform.cpactions-arch }}'
|
architecture: '${{ matrix.platform.cpactions-arch }}'
|
||||||
@@ -404,14 +406,6 @@ jobs:
|
|||||||
build-scripts/test-versioning.sh
|
build-scripts/test-versioning.sh
|
||||||
python build-scripts/check_android_jni.py
|
python build-scripts/check_android_jni.py
|
||||||
python build-scripts/check_stdlib_usage.py
|
python build-scripts/check_stdlib_usage.py
|
||||||
- name: 'Verify alignment of Android test apks'
|
|
||||||
if: ${{ matrix.platform.android-ndk && !matrix.platform.no-cmake }}
|
|
||||||
run: |
|
|
||||||
find ./ -iname '*.apk' | xargs -L1 ./build-scripts/check_elf_alignment.sh
|
|
||||||
- name: 'Verify alignment of Android .so files'
|
|
||||||
if: ${{ matrix.platform.android-ndk && !matrix.platform.no-cmake }}
|
|
||||||
run: |
|
|
||||||
find ./ -iname '*.so' | xargs -L1 ./build-scripts/check_elf_alignment.sh
|
|
||||||
- name: 'Upload binary package'
|
- name: 'Upload binary package'
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
if: ${{ always() && matrix.platform.artifact != '' && (steps.package.outcome == 'success' || steps.cpactions.outcome == 'success') && (matrix.platform.enable-artifacts || steps.tests.outcome == 'failure') }}
|
if: ${{ always() && matrix.platform.artifact != '' && (steps.package.outcome == 'success' || steps.cpactions.outcome == 'success') && (matrix.platform.enable-artifacts || steps.tests.outcome == 'failure') }}
|
||||||
|
|||||||
82
.github/workflows/release.yml
vendored
82
.github/workflows/release.yml
vendored
@@ -91,21 +91,13 @@ jobs:
|
|||||||
sudo apt-get install -y \
|
sudo apt-get install -y \
|
||||||
gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev libjack-dev libsndio-dev \
|
gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev libjack-dev libsndio-dev \
|
||||||
libusb-1.0-0-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev \
|
libusb-1.0-0-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev \
|
||||||
libxss-dev libxtst-dev libwayland-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev \
|
libxss-dev libwayland-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev \
|
||||||
libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev
|
libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev
|
||||||
- name: 'CMake (configure + build + tests + examples)'
|
- name: 'CMake (configure + build + tests + examples)'
|
||||||
run: |
|
run: |
|
||||||
set -e
|
|
||||||
cmake -S ${{ steps.tar.outputs.path }} -B /tmp/build -DSDL_TEST_LIBRARY=TRUE -DSDL_TESTS=TRUE -DSDL_EXAMPLES=TRUE
|
cmake -S ${{ steps.tar.outputs.path }} -B /tmp/build -DSDL_TEST_LIBRARY=TRUE -DSDL_TESTS=TRUE -DSDL_EXAMPLES=TRUE
|
||||||
cmake --build /tmp/build --verbose
|
cmake --build /tmp/build --verbose
|
||||||
ctest --test-dir /tmp/build --no-tests=error --output-on-failure
|
ctest --test-dir /tmp/build --no-tests=error --output-on-failure
|
||||||
- name: 'Verify SDL_REVISION contains SDL-'
|
|
||||||
run: |
|
|
||||||
set -e
|
|
||||||
if test "x$(strings /tmp/build/libSDL3.so.0 | grep SDL- | wc -l)" != x1; then
|
|
||||||
echo "SDL- string not found: must be present in SDL_REVISION"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
dmg:
|
dmg:
|
||||||
needs: [src]
|
needs: [src]
|
||||||
@@ -212,22 +204,10 @@ jobs:
|
|||||||
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}" \
|
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}" \
|
||||||
-DCMAKE_SYSTEM_NAME=iOS \
|
-DCMAKE_SYSTEM_NAME=iOS \
|
||||||
-DCMAKE_OSX_ARCHITECTURES="arm64" \
|
-DCMAKE_OSX_ARCHITECTURES="arm64" \
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
||||||
-Werror=dev \
|
-Werror=dev \
|
||||||
-B build_ios
|
-B build_ios
|
||||||
cmake --build build_ios --config Release --verbose
|
cmake --build build_ios --config Release --verbose
|
||||||
|
|
||||||
cmake -S "${{ steps.src.outputs.path }}/cmake/test" \
|
|
||||||
-DTEST_FULL=FALSE \
|
|
||||||
-DTEST_STATIC=FALSE \
|
|
||||||
-DTEST_TEST=FALSE \
|
|
||||||
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}/SDL3.xcframework/ios-arm64" \
|
|
||||||
-DCMAKE_SYSTEM_NAME=iOS \
|
|
||||||
-DCMAKE_OSX_ARCHITECTURES="arm64" \
|
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
|
||||||
-Werror=dev \
|
|
||||||
-B build_ios2
|
|
||||||
cmake --build build_ios2 --config Release --verbose
|
|
||||||
- name: 'CMake (configure + build) tvOS'
|
- name: 'CMake (configure + build) tvOS'
|
||||||
run: |
|
run: |
|
||||||
cmake -S "${{ steps.src.outputs.path }}/cmake/test" \
|
cmake -S "${{ steps.src.outputs.path }}/cmake/test" \
|
||||||
@@ -237,22 +217,10 @@ jobs:
|
|||||||
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}" \
|
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}" \
|
||||||
-DCMAKE_SYSTEM_NAME=tvOS \
|
-DCMAKE_SYSTEM_NAME=tvOS \
|
||||||
-DCMAKE_OSX_ARCHITECTURES="arm64" \
|
-DCMAKE_OSX_ARCHITECTURES="arm64" \
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
||||||
-Werror=dev \
|
-Werror=dev \
|
||||||
-B build_tvos
|
-B build_tvos
|
||||||
cmake --build build_tvos --config Release --verbose
|
cmake --build build_tvos --config Release --verbose
|
||||||
|
|
||||||
cmake -S "${{ steps.src.outputs.path }}/cmake/test" \
|
|
||||||
-DTEST_FULL=FALSE \
|
|
||||||
-DTEST_STATIC=FALSE \
|
|
||||||
-DTEST_TEST=FALSE \
|
|
||||||
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}/SDL3.xcframework/tvos-arm64" \
|
|
||||||
-DCMAKE_SYSTEM_NAME=tvOS \
|
|
||||||
-DCMAKE_OSX_ARCHITECTURES="arm64" \
|
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
|
||||||
-Werror=dev \
|
|
||||||
-B build_tvos2
|
|
||||||
cmake --build build_tvos2 --config Release --verbose
|
|
||||||
- name: 'CMake (configure + build) iOS simulator'
|
- name: 'CMake (configure + build) iOS simulator'
|
||||||
run: |
|
run: |
|
||||||
sysroot=$(xcodebuild -version -sdk iphonesimulator Path)
|
sysroot=$(xcodebuild -version -sdk iphonesimulator Path)
|
||||||
@@ -269,19 +237,6 @@ jobs:
|
|||||||
-Werror=dev \
|
-Werror=dev \
|
||||||
-B build_ios_simulator
|
-B build_ios_simulator
|
||||||
cmake --build build_ios_simulator --config Release --verbose
|
cmake --build build_ios_simulator --config Release --verbose
|
||||||
|
|
||||||
cmake -S "${{ steps.src.outputs.path }}/cmake/test" \
|
|
||||||
-DTEST_FULL=FALSE \
|
|
||||||
-DTEST_STATIC=FALSE \
|
|
||||||
-DTEST_TEST=FALSE \
|
|
||||||
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}/SDL3.xcframework/ios-arm64_x86_64-simulator" \
|
|
||||||
-DCMAKE_SYSTEM_NAME=iOS \
|
|
||||||
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" \
|
|
||||||
-DCMAKE_OSX_SYSROOT="${sysroot}" \
|
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
|
||||||
-Werror=dev \
|
|
||||||
-B build_ios_simulator2
|
|
||||||
cmake --build build_ios_simulator2 --config Release --verbose
|
|
||||||
- name: 'CMake (configure + build) tvOS simulator'
|
- name: 'CMake (configure + build) tvOS simulator'
|
||||||
run: |
|
run: |
|
||||||
sysroot=$(xcodebuild -version -sdk appletvsimulator Path)
|
sysroot=$(xcodebuild -version -sdk appletvsimulator Path)
|
||||||
@@ -299,22 +254,9 @@ jobs:
|
|||||||
-B build_tvos_simulator
|
-B build_tvos_simulator
|
||||||
cmake --build build_tvos_simulator --config Release --verbose
|
cmake --build build_tvos_simulator --config Release --verbose
|
||||||
|
|
||||||
cmake -S "${{ steps.src.outputs.path }}/cmake/test" \
|
|
||||||
-DTEST_FULL=FALSE \
|
|
||||||
-DTEST_STATIC=FALSE \
|
|
||||||
-DTEST_TEST=FALSE \
|
|
||||||
-DCMAKE_PREFIX_PATH="${{ steps.mount.outputs.mount_point }}/SDL3.xcframework/tvos-arm64_x86_64-simulator" \
|
|
||||||
-DCMAKE_SYSTEM_NAME=tvOS \
|
|
||||||
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" \
|
|
||||||
-DCMAKE_OSX_SYSROOT="${sysroot}" \
|
|
||||||
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
|
||||||
-Werror=dev \
|
|
||||||
-B build_tvos_simulator2
|
|
||||||
cmake --build build_tvos_simulator2 --config Release --verbose
|
|
||||||
|
|
||||||
msvc:
|
msvc:
|
||||||
needs: [src]
|
needs: [src]
|
||||||
runs-on: windows-2025
|
runs-on: windows-2019
|
||||||
outputs:
|
outputs:
|
||||||
VC-x86: ${{ steps.releaser.outputs.VC-x86 }}
|
VC-x86: ${{ steps.releaser.outputs.VC-x86 }}
|
||||||
VC-x64: ${{ steps.releaser.outputs.VC-x64 }}
|
VC-x64: ${{ steps.releaser.outputs.VC-x64 }}
|
||||||
@@ -590,11 +532,10 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
sparse-checkout: 'build-scripts/build-release.py'
|
sparse-checkout: 'build-scripts/build-release.py'
|
||||||
- name: 'Setup Android NDK'
|
- name: 'Setup Android NDK'
|
||||||
id: setup-ndk
|
|
||||||
uses: nttld/setup-ndk@v1
|
uses: nttld/setup-ndk@v1
|
||||||
with:
|
with:
|
||||||
local-cache: false
|
local-cache: true
|
||||||
ndk-version: r28c
|
ndk-version: r21e
|
||||||
- name: 'Setup Java JDK'
|
- name: 'Setup Java JDK'
|
||||||
uses: actions/setup-java@v4
|
uses: actions/setup-java@v4
|
||||||
with:
|
with:
|
||||||
@@ -620,8 +561,6 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
python build-scripts/build-release.py \
|
python build-scripts/build-release.py \
|
||||||
--actions android \
|
--actions android \
|
||||||
--android-api 21 \
|
|
||||||
--android-ndk-home "${{ steps.setup-ndk.outputs.ndk-path }}" \
|
|
||||||
--commit ${{ inputs.commit }} \
|
--commit ${{ inputs.commit }} \
|
||||||
--root "${{ steps.tar.outputs.path }}" \
|
--root "${{ steps.tar.outputs.path }}" \
|
||||||
--github \
|
--github \
|
||||||
@@ -668,14 +607,8 @@ jobs:
|
|||||||
python "${{ needs.src.outputs.project }}-${{ needs.src.outputs.version }}.aar" -o /tmp/SDL3-android
|
python "${{ needs.src.outputs.project }}-${{ needs.src.outputs.version }}.aar" -o /tmp/SDL3-android
|
||||||
echo "prefix=/tmp/SDL3-android" >>$GITHUB_OUTPUT
|
echo "prefix=/tmp/SDL3-android" >>$GITHUB_OUTPUT
|
||||||
echo "sdl3-aar=/tmp/${{ needs.src.outputs.project }}-${{ needs.src.outputs.version }}.aar" >>$GITHUB_OUTPUT
|
echo "sdl3-aar=/tmp/${{ needs.src.outputs.project }}-${{ needs.src.outputs.version }}.aar" >>$GITHUB_OUTPUT
|
||||||
- name: 'Verify alignment of libSDL3.so (arm64-v8a/x86_64)'
|
|
||||||
run: |
|
|
||||||
set -e
|
|
||||||
${{ steps.src.outputs.path }}/build-scripts/check_elf_alignment.sh ${{ steps.sdk.outputs.prefix }}/lib/arm64-v8a/libSDL3.so
|
|
||||||
${{ steps.src.outputs.path }}/build-scripts/check_elf_alignment.sh ${{ steps.sdk.outputs.prefix }}/lib/x86_64/libSDL3.so
|
|
||||||
- name: 'CMake (configure + build) x86, x64, arm32, arm64'
|
- name: 'CMake (configure + build) x86, x64, arm32, arm64'
|
||||||
run: |
|
run: |
|
||||||
set -e
|
|
||||||
android_abis="x86 x86_64 armeabi-v7a arm64-v8a"
|
android_abis="x86 x86_64 armeabi-v7a arm64-v8a"
|
||||||
for android_abi in ${android_abis}; do
|
for android_abi in ${android_abis}; do
|
||||||
echo "Configuring ${android_abi}..."
|
echo "Configuring ${android_abi}..."
|
||||||
@@ -685,7 +618,6 @@ jobs:
|
|||||||
-DTEST_TEST=TRUE \
|
-DTEST_TEST=TRUE \
|
||||||
-DCMAKE_PREFIX_PATH="${{ steps.sdk.outputs.prefix }}" \
|
-DCMAKE_PREFIX_PATH="${{ steps.sdk.outputs.prefix }}" \
|
||||||
-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake \
|
-DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake \
|
||||||
-DANDROID_USE_LEGACY_TOOLCHAIN=0 \
|
|
||||||
-DANDROID_ABI=${android_abi} \
|
-DANDROID_ABI=${android_abi} \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-B "${android_abi}"
|
-B "${android_abi}"
|
||||||
|
|||||||
25
.gitignore
vendored
25
.gitignore
vendored
@@ -50,7 +50,6 @@ compile_commands.json
|
|||||||
*.pc
|
*.pc
|
||||||
test/*.test
|
test/*.test
|
||||||
wayland-generated-protocols
|
wayland-generated-protocols
|
||||||
CMakeSettings.json
|
|
||||||
|
|
||||||
# for CLion
|
# for CLion
|
||||||
.idea
|
.idea
|
||||||
@@ -77,23 +76,28 @@ Release
|
|||||||
*.ncb
|
*.ncb
|
||||||
*.suo
|
*.suo
|
||||||
*.sdf
|
*.sdf
|
||||||
|
VisualC/tests/gamepadmap/axis.bmp
|
||||||
|
VisualC/tests/gamepadmap/button.bmp
|
||||||
|
VisualC/tests/gamepadmap/gamepadmap.bmp
|
||||||
|
VisualC/tests/gamepadmap/gamepadmap_back.bmp
|
||||||
VisualC/tests/loopwave/sample.wav
|
VisualC/tests/loopwave/sample.wav
|
||||||
VisualC/tests/testautomation/*.bmp
|
VisualC/tests/testautomation/*.bmp
|
||||||
VisualC/tests/testautomation/*.png
|
VisualC/tests/testgamepad/axis.bmp
|
||||||
VisualC/tests/testcontroller/*.png
|
VisualC/tests/testgamepad/button.bmp
|
||||||
|
VisualC/tests/testgamepad/gamepadmap.bmp
|
||||||
|
VisualC/tests/testgamepad/gamepadmap_back.bmp
|
||||||
VisualC/tests/testoverlay/moose.dat
|
VisualC/tests/testoverlay/moose.dat
|
||||||
VisualC/tests/testrendertarget/icon.png
|
VisualC/tests/testrendertarget/icon.bmp
|
||||||
VisualC/tests/testrendertarget/sample.png
|
VisualC/tests/testrendertarget/sample.bmp
|
||||||
VisualC/tests/testscale/icon.png
|
VisualC/tests/testscale/icon.bmp
|
||||||
VisualC/tests/testscale/sample.png
|
VisualC/tests/testscale/sample.bmp
|
||||||
VisualC/tests/testsprite/icon.png
|
VisualC/tests/testsprite/icon.bmp
|
||||||
VisualC/tests/testyuv/testyuv.png
|
VisualC/tests/testyuv/testyuv.bmp
|
||||||
VisualC-GDK/**/Layout
|
VisualC-GDK/**/Layout
|
||||||
src/render/direct3d12/D3D12_*_One.h
|
src/render/direct3d12/D3D12_*_One.h
|
||||||
src/render/direct3d12/D3D12_*_Series.h
|
src/render/direct3d12/D3D12_*_Series.h
|
||||||
src/gpu/d3d12/D3D12_*_One.h
|
src/gpu/d3d12/D3D12_*_One.h
|
||||||
src/gpu/d3d12/D3D12_*_Series.h
|
src/gpu/d3d12/D3D12_*_Series.h
|
||||||
out/
|
|
||||||
|
|
||||||
# for Android
|
# for Android
|
||||||
android-project/local.properties
|
android-project/local.properties
|
||||||
@@ -156,6 +160,7 @@ test/testshader
|
|||||||
test/testshape
|
test/testshape
|
||||||
test/testsprite
|
test/testsprite
|
||||||
test/testspriteminimal
|
test/testspriteminimal
|
||||||
|
test/teststreaming
|
||||||
test/testsurround
|
test/testsurround
|
||||||
test/testthread
|
test/testthread
|
||||||
test/testtimer
|
test/testtimer
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ versionfname = include/SDL3/SDL_version.h
|
|||||||
versionmajorregex = \A\#define\s+SDL_MAJOR_VERSION\s+(\d+)\Z
|
versionmajorregex = \A\#define\s+SDL_MAJOR_VERSION\s+(\d+)\Z
|
||||||
versionminorregex = \A\#define\s+SDL_MINOR_VERSION\s+(\d+)\Z
|
versionminorregex = \A\#define\s+SDL_MINOR_VERSION\s+(\d+)\Z
|
||||||
versionmicroregex = \A\#define\s+SDL_MICRO_VERSION\s+(\d+)\Z
|
versionmicroregex = \A\#define\s+SDL_MICRO_VERSION\s+(\d+)\Z
|
||||||
apipropertyregex = \A\s*\#\s*define\s+SDL_PROP_
|
|
||||||
selectheaderregex = \ASDL.*?\.h\Z
|
selectheaderregex = \ASDL.*?\.h\Z
|
||||||
projecturl = https://libsdl.org/
|
projecturl = https://libsdl.org/
|
||||||
wikiurl = https://wiki.libsdl.org
|
wikiurl = https://wiki.libsdl.org
|
||||||
@@ -26,16 +25,8 @@ manpagesymbolfilterregex = \A[US]int\d+\Z
|
|||||||
headercategoryeval = s/\ASDL_test_?.*?\.h\Z//; s/\ASDL_?(.*?)\.h\Z/$1/; ucfirst();
|
headercategoryeval = s/\ASDL_test_?.*?\.h\Z//; s/\ASDL_?(.*?)\.h\Z/$1/; ucfirst();
|
||||||
|
|
||||||
quickrefenabled = 1
|
quickrefenabled = 1
|
||||||
quickrefcategoryorder = Init,Hints,Error,Version,Properties,Log,Video,Events,Keyboard,Mouse,Touch,Gamepad,Joystick,Haptic,Audio,Time,Timer,Render,SharedObject,Thread,Mutex,Atomic,Filesystem,IOStream,AsyncIO,Storage,Pixels,Surface,Blendmode,Rect,Camera,Clipboard,Dialog,Tray,Messagebox,GPU,Vulkan,Metal,Platform,Power,Sensor,Process,Bits,Endian,Assert,CPUInfo,Intrinsics,Locale,System,Misc,GUID,Main,Stdinc
|
quickrefcategoryorder = Init,Hints,Error,Version,Properties,Log,Video,Events,Keyboard,Mouse,Touch,Gamepad,Joystick,Haptic,Audio,Time,Timer,Render,SharedObject,Thread,Mutex,Atomic,Filesystem,IOStream,AsyncIO,Storage,Pixels,Surface,Blendmode,Rect,Camera,Clipboard,Dialog,GPU,Messagebox,Vulkan,Metal,Platform,Power,Sensor,Process,Bits,Endian,Assert,CPUInfo,Intrinsics,Locale,System,Misc,GUID,Main,Stdinc
|
||||||
quickreftitle = SDL3 API Quick Reference
|
quickreftitle = SDL3 API Quick Reference
|
||||||
quickrefurl = https://libsdl.org/
|
quickrefurl = https://libsdl.org/
|
||||||
quickrefdesc = The latest version of this document can be found at https://wiki.libsdl.org/SDL3/QuickReference
|
quickrefdesc = The latest version of this document can be found at https://wiki.libsdl.org/SDL3/QuickReference
|
||||||
quickrefmacroregex = \A(SDL_PLATFORM_.*|SDL_.*_INTRINSICS|SDL_Atomic...Ref|SDL_assert.*?|SDL_COMPILE_TIME_ASSERT|SDL_arraysize|SDL_Swap[BL]E\d\d|SDL_[a-z]+_cast)\Z
|
quickrefmacroregex = \A(SDL_PLATFORM_.*|SDL_.*_INTRINSICS|SDL_Atomic...Ref|SDL_assert.*?|SDL_COMPILE_TIME_ASSERT|SDL_arraysize|SDL_Swap[BL]E\d\d|SDL_[a-z]+_cast)\Z
|
||||||
|
|
||||||
envvarenabled = 1
|
|
||||||
envvartitle = SDL3 Environment Variables
|
|
||||||
envvardesc = SDL3 can be controlled by the user, externally, with environment variables. They are all operate exactly like the [hints you can get and set programmatically](CategoryHints), but named without the `_HINT` part (so `"SDL_HINT_A"` would be environment variable `"SDL_A"`).\n\nThis list matches the latest in SDL3's revision control.
|
|
||||||
envvarsymregex = \ASDL_HINT_(.*)\Z
|
|
||||||
envvarsymreplace = SDL_$1
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
30
Android.mk
30
Android.mk
@@ -42,7 +42,6 @@ LOCAL_SRC_FILES := \
|
|||||||
$(wildcard $(LOCAL_PATH)/src/haptic/*.c) \
|
$(wildcard $(LOCAL_PATH)/src/haptic/*.c) \
|
||||||
$(wildcard $(LOCAL_PATH)/src/haptic/android/*.c) \
|
$(wildcard $(LOCAL_PATH)/src/haptic/android/*.c) \
|
||||||
$(wildcard $(LOCAL_PATH)/src/haptic/dummy/*.c) \
|
$(wildcard $(LOCAL_PATH)/src/haptic/dummy/*.c) \
|
||||||
$(wildcard $(LOCAL_PATH)/src/haptic/hidapi/*.c) \
|
|
||||||
$(wildcard $(LOCAL_PATH)/src/hidapi/*.c) \
|
$(wildcard $(LOCAL_PATH)/src/hidapi/*.c) \
|
||||||
$(wildcard $(LOCAL_PATH)/src/hidapi/android/*.cpp) \
|
$(wildcard $(LOCAL_PATH)/src/hidapi/android/*.cpp) \
|
||||||
$(wildcard $(LOCAL_PATH)/src/joystick/*.c) \
|
$(wildcard $(LOCAL_PATH)/src/joystick/*.c) \
|
||||||
@@ -112,6 +111,8 @@ ifeq ($(NDK_DEBUG),1)
|
|||||||
cmd-strip :=
|
cmd-strip :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
LOCAL_STATIC_LIBRARIES := cpufeatures
|
||||||
|
|
||||||
include $(BUILD_SHARED_LIBRARY)
|
include $(BUILD_SHARED_LIBRARY)
|
||||||
|
|
||||||
|
|
||||||
@@ -121,12 +122,6 @@ include $(BUILD_SHARED_LIBRARY)
|
|||||||
#
|
#
|
||||||
###########################
|
###########################
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
|
||||||
|
|
||||||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include $(LOCAL_PATH)/src
|
|
||||||
|
|
||||||
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
|
|
||||||
|
|
||||||
LOCAL_MODULE := SDL3_test
|
LOCAL_MODULE := SDL3_test
|
||||||
|
|
||||||
LOCAL_MODULE_FILENAME := libSDL3_test
|
LOCAL_MODULE_FILENAME := libSDL3_test
|
||||||
@@ -143,3 +138,24 @@ LOCAL_EXPORT_LDLIBS :=
|
|||||||
|
|
||||||
include $(BUILD_STATIC_LIBRARY)
|
include $(BUILD_STATIC_LIBRARY)
|
||||||
|
|
||||||
|
|
||||||
|
###########################
|
||||||
|
#
|
||||||
|
# SDL static library
|
||||||
|
#
|
||||||
|
###########################
|
||||||
|
|
||||||
|
LOCAL_MODULE := SDL3_static
|
||||||
|
|
||||||
|
LOCAL_MODULE_FILENAME := libSDL3
|
||||||
|
|
||||||
|
LOCAL_LDLIBS :=
|
||||||
|
|
||||||
|
LOCAL_LDFLAGS :=
|
||||||
|
|
||||||
|
LOCAL_EXPORT_LDLIBS := -ldl -lGLESv1_CM -lGLESv2 -llog -landroid
|
||||||
|
|
||||||
|
include $(BUILD_STATIC_LIBRARY)
|
||||||
|
|
||||||
|
$(call import-module,android/cpufeatures)
|
||||||
|
|
||||||
|
|||||||
1025
CMakeLists.txt
1025
CMakeLists.txt
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
|||||||
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
|||||||
@@ -326,25 +326,23 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_camera.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_assert.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_assert.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_audio.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_audio.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_bits.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_bits.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_camera.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_copying.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_copying.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dialog.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dlopennote.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_egl.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_egl.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_endian.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_endian.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_error.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_error.h" />
|
||||||
@@ -354,11 +352,9 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_guid.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_guid.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hints.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_hints.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_init.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_intrin.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_keyboard.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_keyboard.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_keycode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_keycode.h" />
|
||||||
@@ -366,13 +362,11 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_locale.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_locale.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_log.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_log.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_main.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main_impl.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_metal.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_metal.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_misc.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_misc.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_oldnames.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl_glext.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl_glext.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengles.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengles.h" />
|
||||||
@@ -391,6 +385,7 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_rect.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_rect.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_render.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_render.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_revision.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_revision.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_sensor.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_sensor.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h" />
|
||||||
@@ -412,7 +407,7 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_timer.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_timer.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_touch.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_touch.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_tray.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_types.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_version.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_version.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_video.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_video.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_vulkan.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_vulkan.h" />
|
||||||
@@ -429,7 +424,6 @@
|
|||||||
<ClInclude Include="..\..\src\camera\SDL_camera_c.h" />
|
<ClInclude Include="..\..\src\camera\SDL_camera_c.h" />
|
||||||
<ClInclude Include="..\..\src\camera\SDL_syscamera.h" />
|
<ClInclude Include="..\..\src\camera\SDL_syscamera.h" />
|
||||||
<ClInclude Include="..\..\src\core\gdk\SDL_gdk.h" />
|
<ClInclude Include="..\..\src\core\gdk\SDL_gdk.h" />
|
||||||
<ClInclude Include="..\..\src\core\SDL_core_unsupported.h" />
|
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_gameinput.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_gameinput.h" />
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_hid.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_hid.h" />
|
||||||
@@ -460,16 +454,13 @@
|
|||||||
<ClInclude Include="..\..\src\io\SDL_sysasyncio.h" />
|
<ClInclude Include="..\..\src\io\SDL_sysasyncio.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_hidapihaptic.h" />
|
|
||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_c.h" />
|
|
||||||
<ClInclude Include="..\..\src\hidapi\hidapi\hidapi.h" />
|
<ClInclude Include="..\..\src\hidapi\hidapi\hidapi.h" />
|
||||||
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\controller_type.h" />
|
<ClInclude Include="..\..\src\joystick\controller_type.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h" />
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_report_descriptor.h" />
|
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_gamepad_c.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_gamepad_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_gamepad_db.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_gamepad_db.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
||||||
@@ -505,6 +496,7 @@
|
|||||||
<ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
||||||
|
<ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_triangle.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_triangle.h" />
|
||||||
<ClInclude Include="..\..\src\SDL_assert_c.h" />
|
<ClInclude Include="..\..\src\SDL_assert_c.h" />
|
||||||
<ClInclude Include="..\..\src\SDL_error_c.h" />
|
<ClInclude Include="..\..\src\SDL_error_c.h" />
|
||||||
@@ -604,11 +596,9 @@
|
|||||||
<ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_rotate.h" />
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_stb_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_stb_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_surface_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_surface_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
<ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_video_unsupported.h" />
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\windows\SDL_msctf.h" />
|
<ClInclude Include="..\..\src\video\windows\SDL_msctf.h" />
|
||||||
@@ -653,7 +643,7 @@
|
|||||||
<ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
<ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
||||||
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
||||||
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c" />
|
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.cpp"/>
|
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.c"/>
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_hid.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_hid.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_immdevice.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_immdevice.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
|
||||||
@@ -713,39 +703,28 @@
|
|||||||
<LanguageStandard Condition="'$(Configuration)|$(Platform)'=='Release|Gaming.Xbox.Scarlett.x64'">stdcpp17</LanguageStandard>
|
<LanguageStandard Condition="'$(Configuration)|$(Platform)'=='Release|Gaming.Xbox.Scarlett.x64'">stdcpp17</LanguageStandard>
|
||||||
<LanguageStandard Condition="'$(Configuration)|$(Platform)'=='Release|Gaming.Xbox.XboxOne.x64'">stdcpp17</LanguageStandard>
|
<LanguageStandard Condition="'$(Configuration)|$(Platform)'=='Release|Gaming.Xbox.XboxOne.x64'">stdcpp17</LanguageStandard>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic.c" />
|
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_lg4ff.c" />
|
|
||||||
<ClCompile Include="..\..\src\hidapi\SDL_hidapi.c" />
|
<ClCompile Include="..\..\src\hidapi\SDL_hidapi.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\controller_type.c" />
|
<ClCompile Include="..\..\src\joystick\controller_type.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c" />
|
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.cpp" />
|
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_8bitdo.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_flydigi.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gip.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps5.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps5.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_sinput.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_hori.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_hori.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steamdeck.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steamdeck.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_triton.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch2.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_lg4ff.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_zuiki.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_report_descriptor.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_gamepad.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_gamepad.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_steam_virtual_gamepad.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_steam_virtual_gamepad.c" />
|
||||||
@@ -777,7 +756,6 @@
|
|||||||
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
|
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
|
||||||
<ClCompile Include="..\..\src\locale\SDL_locale.c" />
|
<ClCompile Include="..\..\src\locale\SDL_locale.c" />
|
||||||
<ClCompile Include="..\..\src\locale\windows\SDL_syslocale.c" />
|
<ClCompile Include="..\..\src\locale\windows\SDL_syslocale.c" />
|
||||||
<ClCompile Include="..\..\src\misc\SDL_libusb.c" />
|
|
||||||
<ClCompile Include="..\..\src\misc\SDL_url.c" />
|
<ClCompile Include="..\..\src\misc\SDL_url.c" />
|
||||||
<ClCompile Include="..\..\src\misc\windows\SDL_sysurl.c" />
|
<ClCompile Include="..\..\src\misc\windows\SDL_sysurl.c" />
|
||||||
<ClCompile Include="..\..\src\power\SDL_power.c" />
|
<ClCompile Include="..\..\src\power\SDL_power.c" />
|
||||||
@@ -803,6 +781,7 @@
|
|||||||
<ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
|
<ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
|
||||||
<ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
<ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
||||||
<ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
<ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
||||||
|
<ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_render.c" />
|
<ClCompile Include="..\..\src\render\SDL_render.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_render_unsupported.c" />
|
<ClCompile Include="..\..\src\render\SDL_render_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
<ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
||||||
@@ -812,6 +791,7 @@
|
|||||||
<ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
|
||||||
|
<ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_triangle.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_triangle.c" />
|
||||||
<ClCompile Include="..\..\src\render\vulkan\SDL_render_vulkan.c" />
|
<ClCompile Include="..\..\src\render\vulkan\SDL_render_vulkan.c" />
|
||||||
<ClCompile Include="..\..\src\render\vulkan\SDL_shaders_vulkan.c" />
|
<ClCompile Include="..\..\src\render\vulkan\SDL_shaders_vulkan.c" />
|
||||||
@@ -893,7 +873,6 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_pixels.c" />
|
<ClCompile Include="..\..\src\video\SDL_pixels.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_rect.c" />
|
<ClCompile Include="..\..\src\video\SDL_rect.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
|
<ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_rotate.c" />
|
|
||||||
<ClCompile Include="..\..\src\video\SDL_stb.c" />
|
<ClCompile Include="..\..\src\video\SDL_stb.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
<ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_surface.c" />
|
<ClCompile Include="..\..\src\video\SDL_surface.c" />
|
||||||
@@ -901,11 +880,12 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_video_unsupported.c" />
|
<ClCompile Include="..\..\src\video\SDL_video_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
<ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
<ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
||||||
|
<ClCompile Include="..\..\src\video\windows\SDL_surface_utils.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.cpp" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
<ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
<ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
||||||
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
||||||
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c" />
|
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.cpp" />
|
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_hid.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_hid.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_immdevice.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_immdevice.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
|
||||||
@@ -56,39 +56,28 @@
|
|||||||
<ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
|
<ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
|
||||||
<ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" />
|
<ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" />
|
||||||
<ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" />
|
<ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" />
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic.c" />
|
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_lg4ff.c" />
|
|
||||||
<ClCompile Include="..\..\src\hidapi\SDL_hidapi.c" />
|
<ClCompile Include="..\..\src\hidapi\SDL_hidapi.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\controller_type.c" />
|
<ClCompile Include="..\..\src\joystick\controller_type.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c" />
|
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.cpp" />
|
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_8bitdo.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_flydigi.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gip.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps5.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps5.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_sinput.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_hori.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_hori.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steamdeck.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steamdeck.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_triton.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch2.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_lg4ff.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_zuiki.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_report_descriptor.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_gamepad.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_gamepad.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_steam_virtual_gamepad.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_steam_virtual_gamepad.c" />
|
||||||
@@ -102,7 +91,6 @@
|
|||||||
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
|
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
|
||||||
<ClCompile Include="..\..\src\locale\SDL_locale.c" />
|
<ClCompile Include="..\..\src\locale\SDL_locale.c" />
|
||||||
<ClCompile Include="..\..\src\locale\windows\SDL_syslocale.c" />
|
<ClCompile Include="..\..\src\locale\windows\SDL_syslocale.c" />
|
||||||
<ClCompile Include="..\..\src\misc\SDL_libusb.c" />
|
|
||||||
<ClCompile Include="..\..\src\misc\SDL_url.c" />
|
<ClCompile Include="..\..\src\misc\SDL_url.c" />
|
||||||
<ClCompile Include="..\..\src\misc\windows\SDL_sysurl.c" />
|
<ClCompile Include="..\..\src\misc\windows\SDL_sysurl.c" />
|
||||||
<ClCompile Include="..\..\src\power\SDL_power.c" />
|
<ClCompile Include="..\..\src\power\SDL_power.c" />
|
||||||
@@ -120,6 +108,7 @@
|
|||||||
<ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
|
<ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
|
||||||
<ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
<ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
||||||
<ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
<ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
||||||
|
<ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_render.c" />
|
<ClCompile Include="..\..\src\render\SDL_render.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_render_unsupported.c" />
|
<ClCompile Include="..\..\src\render\SDL_render_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
<ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
||||||
@@ -129,6 +118,7 @@
|
|||||||
<ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
|
||||||
|
<ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_triangle.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_triangle.c" />
|
||||||
<ClCompile Include="..\..\src\SDL.c" />
|
<ClCompile Include="..\..\src\SDL.c" />
|
||||||
<ClCompile Include="..\..\src\SDL_assert.c" />
|
<ClCompile Include="..\..\src\SDL_assert.c" />
|
||||||
@@ -187,7 +177,6 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_pixels.c" />
|
<ClCompile Include="..\..\src\video\SDL_pixels.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_rect.c" />
|
<ClCompile Include="..\..\src\video\SDL_rect.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
|
<ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_rotate.c" />
|
|
||||||
<ClCompile Include="..\..\src\video\SDL_stb.c" />
|
<ClCompile Include="..\..\src\video\SDL_stb.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
<ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_surface.c" />
|
<ClCompile Include="..\..\src\video\SDL_surface.c" />
|
||||||
@@ -195,11 +184,12 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_video_unsupported.c" />
|
<ClCompile Include="..\..\src\video\SDL_video_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
<ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
<ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
||||||
|
<ClCompile Include="..\..\src\video\windows\SDL_surface_utils.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.cpp" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
|
||||||
@@ -239,21 +229,17 @@
|
|||||||
<ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb_std.c" />
|
<ClCompile Include="..\..\src\video\yuv2rgb\yuv_rgb_std.c" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_assert.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_assert.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_audio.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_audio.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_bits.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_bits.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_camera.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_copying.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_copying.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dialog.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dlopennote.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_egl.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_egl.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_endian.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_endian.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_error.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_error.h" />
|
||||||
@@ -263,11 +249,8 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_guid.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_guid.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hints.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_hints.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_init.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_intrin.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_keyboard.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_keyboard.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_keycode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_keycode.h" />
|
||||||
@@ -275,13 +258,11 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_locale.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_locale.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_log.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_log.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_main.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main_impl.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_metal.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_metal.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_misc.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_misc.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_oldnames.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl_glext.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl_glext.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengles.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengles.h" />
|
||||||
@@ -300,10 +281,10 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_rect.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_rect.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_render.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_render.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_revision.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_revision.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_sensor.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_sensor.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_storage.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_surface.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_surface.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_system.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_system.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_test.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_test.h" />
|
||||||
@@ -318,10 +299,9 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_test_md5.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_test_md5.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_test_memory.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_test_memory.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_thread.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_thread.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_timer.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_timer.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_touch.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_touch.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_tray.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_types.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_version.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_version.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_video.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_video.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_vulkan.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_vulkan.h" />
|
||||||
@@ -342,7 +322,6 @@
|
|||||||
<ClInclude Include="..\..\src\core\windows\SDL_immdevice.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_immdevice.h" />
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_xinput.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_xinput.h" />
|
||||||
<ClInclude Include="..\..\src\core\SDL_core_unsupported.h" />
|
|
||||||
<ClInclude Include="..\..\src\cpuinfo\SDL_cpuinfo_c.h" />
|
<ClInclude Include="..\..\src\cpuinfo\SDL_cpuinfo_c.h" />
|
||||||
<ClInclude Include="..\..\src\dynapi\SDL_dynapi.h" />
|
<ClInclude Include="..\..\src\dynapi\SDL_dynapi.h" />
|
||||||
<ClInclude Include="..\..\src\dynapi\SDL_dynapi_overrides.h" />
|
<ClInclude Include="..\..\src\dynapi\SDL_dynapi_overrides.h" />
|
||||||
@@ -364,16 +343,13 @@
|
|||||||
<ClInclude Include="..\..\src\gpu\SDL_sysgpu.h" />
|
<ClInclude Include="..\..\src\gpu\SDL_sysgpu.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_hidapihaptic.h" />
|
|
||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_c.h" />
|
|
||||||
<ClInclude Include="..\..\src\hidapi\hidapi\hidapi.h" />
|
<ClInclude Include="..\..\src\hidapi\hidapi\hidapi.h" />
|
||||||
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\controller_type.h" />
|
<ClInclude Include="..\..\src\joystick\controller_type.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h" />
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_report_descriptor.h" />
|
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_gamepad_c.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_gamepad_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_gamepad_db.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_gamepad_db.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
||||||
@@ -409,6 +385,7 @@
|
|||||||
<ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
||||||
|
<ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_triangle.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_triangle.h" />
|
||||||
<ClInclude Include="..\..\src\SDL_assert_c.h" />
|
<ClInclude Include="..\..\src\SDL_assert_c.h" />
|
||||||
<ClInclude Include="..\..\src\SDL_error_c.h" />
|
<ClInclude Include="..\..\src\SDL_error_c.h" />
|
||||||
@@ -462,11 +439,9 @@
|
|||||||
<ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_rotate.h" />
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_stb_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_stb_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_surface_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_surface_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
<ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_video_unsupported.h" />
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\windows\SDL_msctf.h" />
|
<ClInclude Include="..\..\src\video\windows\SDL_msctf.h" />
|
||||||
|
|||||||
@@ -192,12 +192,10 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\..\src\test\SDL_test_internal.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\src\test\SDL_test_assert.c" />
|
<ClCompile Include="..\..\src\test\SDL_test_assert.c" />
|
||||||
<ClCompile Include="..\..\src\test\SDL_test_common.c" />
|
<ClCompile Include="..\..\src\test\SDL_test_common.c" />
|
||||||
|
|||||||
@@ -268,6 +268,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -56,7 +56,8 @@ static struct
|
|||||||
static SDL_AudioStream *stream;
|
static SDL_AudioStream *stream;
|
||||||
|
|
||||||
/* Call this instead of exit(), so we can clean up SDL: atexit() is evil. */
|
/* Call this instead of exit(), so we can clean up SDL: atexit() is evil. */
|
||||||
static void quit(int rc)
|
static void
|
||||||
|
quit(int rc)
|
||||||
{
|
{
|
||||||
SDL_free(sprites);
|
SDL_free(sprites);
|
||||||
SDL_DestroyAudioStream(stream);
|
SDL_DestroyAudioStream(stream);
|
||||||
@@ -79,7 +80,8 @@ static int fillerup(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void UserLoggedIn(XUserHandle user)
|
void
|
||||||
|
UserLoggedIn(XUserHandle user)
|
||||||
{
|
{
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
char gamertag[128];
|
char gamertag[128];
|
||||||
@@ -94,7 +96,8 @@ static void UserLoggedIn(XUserHandle user)
|
|||||||
XUserCloseHandle(user);
|
XUserCloseHandle(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void AddUserUICallback(XAsyncBlock *asyncBlock)
|
void
|
||||||
|
AddUserUICallback(XAsyncBlock *asyncBlock)
|
||||||
{
|
{
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
XUserHandle user = NULL;
|
XUserHandle user = NULL;
|
||||||
@@ -120,7 +123,8 @@ static void AddUserUICallback(XAsyncBlock *asyncBlock)
|
|||||||
delete asyncBlock;
|
delete asyncBlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void AddUserUI()
|
void
|
||||||
|
AddUserUI()
|
||||||
{
|
{
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
XAsyncBlock *asyncBlock = new XAsyncBlock;
|
XAsyncBlock *asyncBlock = new XAsyncBlock;
|
||||||
@@ -137,7 +141,8 @@ static void AddUserUI()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void AddUserSilentCallback(XAsyncBlock *asyncBlock)
|
void
|
||||||
|
AddUserSilentCallback(XAsyncBlock *asyncBlock)
|
||||||
{
|
{
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
XUserHandle user = NULL;
|
XUserHandle user = NULL;
|
||||||
@@ -163,7 +168,8 @@ static void AddUserSilentCallback(XAsyncBlock *asyncBlock)
|
|||||||
delete asyncBlock;
|
delete asyncBlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void AddUserSilent()
|
void
|
||||||
|
AddUserSilent()
|
||||||
{
|
{
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
XAsyncBlock *asyncBlock = new XAsyncBlock;
|
XAsyncBlock *asyncBlock = new XAsyncBlock;
|
||||||
@@ -180,27 +186,30 @@ static void AddUserSilent()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool LoadSprite(const char *file)
|
int
|
||||||
|
LoadSprite(const char *file)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < state->num_windows; ++i) {
|
for (i = 0; i < state->num_windows; ++i) {
|
||||||
/* This does the SDL_LoadBMP step repeatedly, but that's OK for test code. */
|
/* This does the SDL_LoadBMP step repeatedly, but that's OK for test code. */
|
||||||
sprites[i] = LoadTexture(state->renderers[i], file, true);
|
sprites[i] = LoadTexture(state->renderers[i], file, true, &sprite_w, &sprite_h);
|
||||||
if (!sprites[i]) {
|
if (!sprites[i]) {
|
||||||
return false;
|
return -1;
|
||||||
|
}
|
||||||
|
if (!SDL_SetTextureBlendMode(sprites[i], blendMode)) {
|
||||||
|
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't set blend mode: %s", SDL_GetError());
|
||||||
|
SDL_DestroyTexture(sprites[i]);
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
sprite_w = sprites[i]->w;
|
|
||||||
sprite_h = sprites[i]->h;
|
|
||||||
|
|
||||||
SDL_SetTextureBlendMode(sprites[i], blendMode);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* We're ready to roll. :) */
|
/* We're ready to roll. :) */
|
||||||
return true;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DrawSprites(SDL_Renderer * renderer, SDL_Texture * sprite)
|
void
|
||||||
|
DrawSprites(SDL_Renderer * renderer, SDL_Texture * sprite)
|
||||||
{
|
{
|
||||||
SDL_Rect viewport;
|
SDL_Rect viewport;
|
||||||
SDL_FRect temp;
|
SDL_FRect temp;
|
||||||
@@ -291,8 +300,10 @@ static void DrawSprites(SDL_Renderer * renderer, SDL_Texture * sprite)
|
|||||||
SDL_RenderPresent(renderer);
|
SDL_RenderPresent(renderer);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void update()
|
void
|
||||||
|
loop()
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
SDL_Event event;
|
SDL_Event event;
|
||||||
|
|
||||||
/* Check for events */
|
/* Check for events */
|
||||||
@@ -309,39 +320,21 @@ static void update()
|
|||||||
SDLTest_CommonEvent(state, &event, &done);
|
SDLTest_CommonEvent(state, &event, &done);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
fillerup();
|
|
||||||
}
|
|
||||||
|
|
||||||
static void draw()
|
|
||||||
{
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < state->num_windows; ++i) {
|
for (i = 0; i < state->num_windows; ++i) {
|
||||||
if (state->windows[i] == NULL) {
|
if (state->windows[i] == NULL) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
DrawSprites(state->renderers[i], sprites[i]);
|
DrawSprites(state->renderers[i], sprites[i]);
|
||||||
}
|
}
|
||||||
|
fillerup();
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool SDLCALL GDKEventWatch(void* userdata, SDL_Event* event)
|
int
|
||||||
{
|
main(int argc, char *argv[])
|
||||||
bool *suppressdraw = (bool *)userdata;
|
|
||||||
SDL_assert(suppressdraw != NULL);
|
|
||||||
if (event->type == SDL_EVENT_DID_ENTER_BACKGROUND) {
|
|
||||||
*suppressdraw = true;
|
|
||||||
SDL_GDKSuspendComplete();
|
|
||||||
} else if (event->type == SDL_EVENT_WILL_ENTER_FOREGROUND) {
|
|
||||||
*suppressdraw = false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
const char *icon = "icon.png";
|
const char *icon = "icon.bmp";
|
||||||
char *soundname = NULL;
|
char *soundname = NULL;
|
||||||
bool suppressdraw = false;
|
|
||||||
|
|
||||||
/* Initialize parameters */
|
/* Initialize parameters */
|
||||||
num_sprites = NUM_SPRITES;
|
num_sprites = NUM_SPRITES;
|
||||||
@@ -408,9 +401,6 @@ int main(int argc, char *argv[])
|
|||||||
quit(2);
|
quit(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* By this point the renderers are made, so we can now add this watcher */
|
|
||||||
SDL_AddEventWatch(GDKEventWatch, &suppressdraw);
|
|
||||||
|
|
||||||
/* Create the windows, initialize the renderers, and load the textures */
|
/* Create the windows, initialize the renderers, and load the textures */
|
||||||
sprites =
|
sprites =
|
||||||
(SDL_Texture **) SDL_malloc(state->num_windows * sizeof(*sprites));
|
(SDL_Texture **) SDL_malloc(state->num_windows * sizeof(*sprites));
|
||||||
@@ -423,7 +413,7 @@ int main(int argc, char *argv[])
|
|||||||
SDL_SetRenderDrawColor(renderer, 0xA0, 0xA0, 0xA0, 0xFF);
|
SDL_SetRenderDrawColor(renderer, 0xA0, 0xA0, 0xA0, 0xFF);
|
||||||
SDL_RenderClear(renderer);
|
SDL_RenderClear(renderer);
|
||||||
}
|
}
|
||||||
if (!LoadSprite(icon)) {
|
if (LoadSprite(icon) < 0) {
|
||||||
quit(2);
|
quit(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -462,10 +452,7 @@ int main(int argc, char *argv[])
|
|||||||
AddUserSilent();
|
AddUserSilent();
|
||||||
|
|
||||||
while (!done) {
|
while (!done) {
|
||||||
update();
|
loop();
|
||||||
if (!suppressdraw) {
|
|
||||||
draw();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
quit(0);
|
quit(0);
|
||||||
|
|||||||
@@ -292,6 +292,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -310,7 +311,7 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CopyFileToFolders Include="..\..\..\test\icon.png">
|
<CopyFileToFolders Include="..\..\..\test\icon.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Desktop.x64'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Desktop.x64'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.Scarlett.x64'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.Scarlett.x64'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.XboxOne.x64'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.XboxOne.x64'">Copying %(Filename)%(Extension)</Message>
|
||||||
|
|||||||
@@ -292,6 +292,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -310,7 +311,7 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CopyFileToFolders Include="..\..\..\test\icon.png">
|
<CopyFileToFolders Include="..\..\..\test\icon.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Desktop.x64'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Desktop.x64'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.Scarlett.x64'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.Scarlett.x64'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.XboxOne.x64'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Gaming.Xbox.XboxOne.x64'">Copying %(Filename)%(Extension)</Message>
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "camera", "camera", "{AAEC83
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-read-and-draw", "examples\camera\01-read-and-draw\01-read-and-draw.vcxproj", "{510ACF0C-4012-4216-98EF-E4F155DE33CE}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-read-and-draw", "examples\camera\01-read-and-draw\01-read-and-draw.vcxproj", "{510ACF0C-4012-4216-98EF-E4F155DE33CE}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{D1BF59F6-22DC-493B-BDEB-451A50DA793D}"
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "game", "game", "{D1BF59F6-22DC-493B-BDEB-451A50DA793D}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-snake", "examples\demo\01-snake\01-snake.vcxproj", "{7820969A-5B7B-4046-BB0A-82905D457FC5}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-snake", "examples\demo\01-snake\01-snake.vcxproj", "{7820969A-5B7B-4046-BB0A-82905D457FC5}"
|
||||||
EndProject
|
EndProject
|
||||||
@@ -115,24 +115,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02-woodeneye-008", "example
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03-infinite-monkeys", "examples\demo\03-infinite-monkeys\03-infinite-monkeys.vcxproj", "{75AEE75A-C016-4497-960B-D767B822237D}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03-infinite-monkeys", "examples\demo\03-infinite-monkeys\03-infinite-monkeys.vcxproj", "{75AEE75A-C016-4497-960B-D767B822237D}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "19-affine-textures", "examples\renderer\19-affine-textures\19-affine-textures.vcxproj", "{E21C50BF-54B4-434C-AA24-9A6469553987}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "04-multiple-streams", "examples\audio\04-multiple-streams\04-multiple-streams.vcxproj", "{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}"
|
|
||||||
EndProject
|
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "asyncio", "asyncio", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
|
|
||||||
EndProject
|
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "input", "input", "{8DEAE483-FDE7-463F-9FD5-F597BBAED1F9}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-load-bitmaps", "examples\asyncio\01-load-bitmaps\01-load-bitmaps.vcxproj", "{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "04-bytepusher", "examples\demo\04-bytepusher\04-bytepusher.vcxproj", "{3DB9B219-769E-43AC-8B8B-319DB6045DCF}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-joystick-polling", "examples\input\01-joystick-polling\01-joystick-polling.vcxproj", "{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02-joystick-events", "examples\input\02-joystick-events\02-joystick-events.vcxproj", "{FCBDF2B2-1129-49AE-9406-3F219E65CA89}"
|
|
||||||
EndProject
|
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testsoftwaretransparent", "tests\testsoftwaretransparent\testsoftwaretransparent.vcxproj", "{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}"
|
|
||||||
EndProject
|
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Win32 = Debug|Win32
|
Debug|Win32 = Debug|Win32
|
||||||
@@ -533,62 +515,6 @@ Global
|
|||||||
{75AEE75A-C016-4497-960B-D767B822237D}.Release|Win32.Build.0 = Release|Win32
|
{75AEE75A-C016-4497-960B-D767B822237D}.Release|Win32.Build.0 = Release|Win32
|
||||||
{75AEE75A-C016-4497-960B-D767B822237D}.Release|x64.ActiveCfg = Release|x64
|
{75AEE75A-C016-4497-960B-D767B822237D}.Release|x64.ActiveCfg = Release|x64
|
||||||
{75AEE75A-C016-4497-960B-D767B822237D}.Release|x64.Build.0 = Release|x64
|
{75AEE75A-C016-4497-960B-D767B822237D}.Release|x64.Build.0 = Release|x64
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987}.Release|x64.Build.0 = Release|x64
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}.Release|x64.Build.0 = Release|x64
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}.Release|x64.Build.0 = Release|x64
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF}.Release|x64.Build.0 = Release|x64
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}.Release|x64.Build.0 = Release|x64
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89}.Release|x64.Build.0 = Release|x64
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Debug|Win32.ActiveCfg = Debug|Win32
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Debug|Win32.Build.0 = Debug|Win32
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Debug|x64.ActiveCfg = Debug|x64
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Debug|x64.Build.0 = Debug|x64
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Release|Win32.ActiveCfg = Release|Win32
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Release|Win32.Build.0 = Release|Win32
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Release|x64.ActiveCfg = Release|x64
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}.Release|x64.Build.0 = Release|x64
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
@@ -646,15 +572,6 @@ Global
|
|||||||
{608C6C67-7766-471F-BBFF-8B00086039AF} = {1B61A1B7-92DE-4C37-9151-D2928D6449AB}
|
{608C6C67-7766-471F-BBFF-8B00086039AF} = {1B61A1B7-92DE-4C37-9151-D2928D6449AB}
|
||||||
{A3F601E0-B54C-4DD8-8A97-FDEF7624EE60} = {D1BF59F6-22DC-493B-BDEB-451A50DA793D}
|
{A3F601E0-B54C-4DD8-8A97-FDEF7624EE60} = {D1BF59F6-22DC-493B-BDEB-451A50DA793D}
|
||||||
{75AEE75A-C016-4497-960B-D767B822237D} = {D1BF59F6-22DC-493B-BDEB-451A50DA793D}
|
{75AEE75A-C016-4497-960B-D767B822237D} = {D1BF59F6-22DC-493B-BDEB-451A50DA793D}
|
||||||
{E21C50BF-54B4-434C-AA24-9A6469553987} = {F91DDAF0-B74F-4516-A1A9-42ED8DFCBF6A}
|
|
||||||
{7117A55C-BE4E-41DB-A4FC-4070E35A8B28} = {1B61A1B7-92DE-4C37-9151-D2928D6449AB}
|
|
||||||
{02EA681E-C7D8-13C7-8484-4AC65E1B71E8} = {1498F0CD-F4DA-4847-9CB2-FB18D48061D5}
|
|
||||||
{8DEAE483-FDE7-463F-9FD5-F597BBAED1F9} = {1498F0CD-F4DA-4847-9CB2-FB18D48061D5}
|
|
||||||
{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
|
||||||
{3DB9B219-769E-43AC-8B8B-319DB6045DCF} = {D1BF59F6-22DC-493B-BDEB-451A50DA793D}
|
|
||||||
{B3852DB7-E925-4026-8B9D-D2272EFEFF3C} = {8DEAE483-FDE7-463F-9FD5-F597BBAED1F9}
|
|
||||||
{FCBDF2B2-1129-49AE-9406-3F219E65CA89} = {8DEAE483-FDE7-463F-9FD5-F597BBAED1F9}
|
|
||||||
{D91C45E2-274E-4C0F-89C7-9986F9A7E85A} = {D69D5741-611F-4E14-8541-1FEE94F50B5A}
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
SolutionGuid = {C320C9F2-1A8F-41D7-B02B-6338F872BCAD}
|
SolutionGuid = {C320C9F2-1A8F-41D7-B02B-6338F872BCAD}
|
||||||
|
|||||||
@@ -82,16 +82,16 @@
|
|||||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;$(LibraryPath)</LibraryPath>
|
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;$(LibraryPath)</LibraryPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<IncludePath>$(ProjectDir)/../../src;$(ProjectDir)/../../src/core/windows;$(IncludePath)</IncludePath>
|
<IncludePath>$(ProjectDir)/../../src;$(IncludePath)</IncludePath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
<IncludePath>$(ProjectDir)/../../src;$(ProjectDir)/../../src/core/windows;$(IncludePath)</IncludePath>
|
<IncludePath>$(ProjectDir)/../../src;$(IncludePath)</IncludePath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<IncludePath>$(ProjectDir)/../../src;$(ProjectDir)/../../src/core/windows;$(IncludePath)</IncludePath>
|
<IncludePath>$(ProjectDir)/../../src;$(IncludePath)</IncludePath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
<IncludePath>$(ProjectDir)/../../src;$(ProjectDir)/../../src/core/windows;$(IncludePath)</IncludePath>
|
<IncludePath>$(ProjectDir)/../../src;$(IncludePath)</IncludePath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<PreBuildEvent>
|
<PreBuildEvent>
|
||||||
@@ -239,25 +239,23 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_camera.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_assert.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_assert.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_audio.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_audio.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_bits.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_bits.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_camera.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_copying.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_copying.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dialog.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dlopennote.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_egl.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_egl.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_endian.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_endian.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_error.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_error.h" />
|
||||||
@@ -267,11 +265,9 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_guid.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_guid.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hints.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_hints.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_init.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_intrin.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_keyboard.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_keyboard.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_keycode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_keycode.h" />
|
||||||
@@ -279,13 +275,11 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_locale.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_locale.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_log.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_log.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_main.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main_impl.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_metal.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_metal.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_misc.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_misc.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_oldnames.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl_glext.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl_glext.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengles.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_opengles.h" />
|
||||||
@@ -304,6 +298,7 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_rect.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_rect.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_render.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_render.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_revision.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_revision.h" />
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_sensor.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_sensor.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h" />
|
||||||
@@ -325,7 +320,6 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_timer.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_timer.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_touch.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_touch.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_tray.h" />
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_version.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_version.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_video.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_video.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_vulkan.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_vulkan.h" />
|
||||||
@@ -341,7 +335,6 @@
|
|||||||
<ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" />
|
<ClInclude Include="..\..\src\audio\wasapi\SDL_wasapi.h" />
|
||||||
<ClInclude Include="..\..\src\camera\SDL_camera_c.h" />
|
<ClInclude Include="..\..\src\camera\SDL_camera_c.h" />
|
||||||
<ClInclude Include="..\..\src\camera\SDL_syscamera.h" />
|
<ClInclude Include="..\..\src\camera\SDL_syscamera.h" />
|
||||||
<ClInclude Include="..\..\src\core\SDL_core_unsupported.h" />
|
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_directx.h" />
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_gameinput.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_gameinput.h" />
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_hid.h" />
|
<ClInclude Include="..\..\src\core\windows\SDL_hid.h" />
|
||||||
@@ -374,16 +367,13 @@
|
|||||||
<ClInclude Include="..\..\src\io\SDL_sysasyncio.h" />
|
<ClInclude Include="..\..\src\io\SDL_sysasyncio.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_hidapihaptic.h" />
|
|
||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\windows\SDL_dinputhaptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h" />
|
||||||
<ClInclude Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_c.h" />
|
|
||||||
<ClInclude Include="..\..\src\hidapi\hidapi\hidapi.h" />
|
<ClInclude Include="..\..\src\hidapi\hidapi\hidapi.h" />
|
||||||
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\controller_type.h" />
|
<ClInclude Include="..\..\src\joystick\controller_type.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h" />
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_report_descriptor.h" />
|
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_gamepad_c.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_gamepad_c.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_gamepad_db.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_gamepad_db.h" />
|
||||||
<ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
<ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
|
||||||
@@ -418,6 +408,7 @@
|
|||||||
<ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
|
||||||
|
<ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_triangle.h" />
|
<ClInclude Include="..\..\src\render\software\SDL_triangle.h" />
|
||||||
<ClInclude Include="..\..\src\render\vulkan\SDL_shaders_vulkan.h" />
|
<ClInclude Include="..\..\src\render\vulkan\SDL_shaders_vulkan.h" />
|
||||||
<ClInclude Include="..\..\src\SDL_assert_c.h" />
|
<ClInclude Include="..\..\src\SDL_assert_c.h" />
|
||||||
@@ -431,16 +422,6 @@
|
|||||||
<ClCompile Include="..\..\src\camera\dummy\SDL_camera_dummy.c" />
|
<ClCompile Include="..\..\src\camera\dummy\SDL_camera_dummy.c" />
|
||||||
<ClCompile Include="..\..\src\camera\mediafoundation\SDL_camera_mediafoundation.c" />
|
<ClCompile Include="..\..\src\camera\mediafoundation\SDL_camera_mediafoundation.c" />
|
||||||
<ClCompile Include="..\..\src\camera\SDL_camera.c" />
|
<ClCompile Include="..\..\src\camera\SDL_camera.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\pch_cpp.cpp">
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
|
|
||||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\dialog\SDL_dialog.c" />
|
<ClCompile Include="..\..\src\dialog\SDL_dialog.c" />
|
||||||
<ClCompile Include="..\..\src\dialog\SDL_dialog_utils.c" />
|
<ClCompile Include="..\..\src\dialog\SDL_dialog_utils.c" />
|
||||||
<ClCompile Include="..\..\src\filesystem\SDL_filesystem.c" />
|
<ClCompile Include="..\..\src\filesystem\SDL_filesystem.c" />
|
||||||
@@ -513,11 +494,9 @@
|
|||||||
<ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_rect_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_rotate.h" />
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_stb_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_stb_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_surface_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_surface_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
<ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_video_unsupported.h" />
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h" />
|
||||||
<ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
<ClInclude Include="..\..\src\video\SDL_yuv_c.h" />
|
||||||
<ClInclude Include="..\..\src\video\windows\SDL_msctf.h" />
|
<ClInclude Include="..\..\src\video\windows\SDL_msctf.h" />
|
||||||
@@ -562,12 +541,7 @@
|
|||||||
<ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
<ClCompile Include="..\..\src\audio\SDL_wave.c" />
|
||||||
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
||||||
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c" />
|
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.cpp">
|
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.c" />
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_hid.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_hid.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_immdevice.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_immdevice.c" />
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
|
<ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
|
||||||
@@ -599,44 +573,28 @@
|
|||||||
<ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
|
<ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
|
||||||
<ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" />
|
<ClCompile Include="..\..\src\haptic\windows\SDL_dinputhaptic.c" />
|
||||||
<ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" />
|
<ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c" />
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic.c" />
|
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_lg4ff.c" />
|
|
||||||
<ClCompile Include="..\..\src\hidapi\SDL_hidapi.c" />
|
<ClCompile Include="..\..\src\hidapi\SDL_hidapi.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\controller_type.c" />
|
<ClCompile Include="..\..\src\joystick\controller_type.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c" />
|
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.cpp">
|
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.c" />
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_8bitdo.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_flydigi.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gip.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps5.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps5.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_sinput.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_hori.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_hori.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_triton.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steamdeck.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steamdeck.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch2.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360w.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_lg4ff.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_zuiki.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_report_descriptor.c" />
|
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_gamepad.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_gamepad.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\SDL_steam_virtual_gamepad.c" />
|
<ClCompile Include="..\..\src\joystick\SDL_steam_virtual_gamepad.c" />
|
||||||
@@ -650,7 +608,6 @@
|
|||||||
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
|
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
|
||||||
<ClCompile Include="..\..\src\locale\SDL_locale.c" />
|
<ClCompile Include="..\..\src\locale\SDL_locale.c" />
|
||||||
<ClCompile Include="..\..\src\locale\windows\SDL_syslocale.c" />
|
<ClCompile Include="..\..\src\locale\windows\SDL_syslocale.c" />
|
||||||
<ClCompile Include="..\..\src\misc\SDL_libusb.c" />
|
|
||||||
<ClCompile Include="..\..\src\misc\SDL_url.c" />
|
<ClCompile Include="..\..\src\misc\SDL_url.c" />
|
||||||
<ClCompile Include="..\..\src\misc\windows\SDL_sysurl.c" />
|
<ClCompile Include="..\..\src\misc\windows\SDL_sysurl.c" />
|
||||||
<ClCompile Include="..\..\src\power\SDL_power.c" />
|
<ClCompile Include="..\..\src\power\SDL_power.c" />
|
||||||
@@ -670,6 +627,7 @@
|
|||||||
<ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
|
<ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
|
||||||
<ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
<ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
|
||||||
<ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
<ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
|
||||||
|
<ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_render.c" />
|
<ClCompile Include="..\..\src\render\SDL_render.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_render_unsupported.c" />
|
<ClCompile Include="..\..\src\render\SDL_render_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
<ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
|
||||||
@@ -679,6 +637,7 @@
|
|||||||
<ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
|
||||||
|
<ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_triangle.c" />
|
<ClCompile Include="..\..\src\render\software\SDL_triangle.c" />
|
||||||
<ClCompile Include="..\..\src\SDL.c" />
|
<ClCompile Include="..\..\src\SDL.c" />
|
||||||
<ClCompile Include="..\..\src\SDL_assert.c" />
|
<ClCompile Include="..\..\src\SDL_assert.c" />
|
||||||
@@ -749,7 +708,6 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_pixels.c" />
|
<ClCompile Include="..\..\src\video\SDL_pixels.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_rect.c" />
|
<ClCompile Include="..\..\src\video\SDL_rect.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
|
<ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_rotate.c" />
|
|
||||||
<ClCompile Include="..\..\src\video\SDL_stb.c" />
|
<ClCompile Include="..\..\src\video\SDL_stb.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
<ClCompile Include="..\..\src\video\SDL_stretch.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_surface.c" />
|
<ClCompile Include="..\..\src\video\SDL_surface.c" />
|
||||||
@@ -757,16 +715,12 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_video_unsupported.c" />
|
<ClCompile Include="..\..\src\video\SDL_video_unsupported.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
<ClCompile Include="..\..\src\video\SDL_vulkan_utils.c" />
|
||||||
<ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
<ClCompile Include="..\..\src\video\SDL_yuv.c" />
|
||||||
|
<ClCompile Include="..\..\src\video\windows\SDL_surface_utils.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.cpp">
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.c" />
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
<PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)$(TargetName)_cpp.pch</PrecompiledHeaderOutputFile>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
|
||||||
|
|||||||
@@ -82,9 +82,6 @@
|
|||||||
<Filter Include="haptic\windows">
|
<Filter Include="haptic\windows">
|
||||||
<UniqueIdentifier>{ebc2fca3-3c26-45e3-815e-3e0581d5e226}</UniqueIdentifier>
|
<UniqueIdentifier>{ebc2fca3-3c26-45e3-815e-3e0581d5e226}</UniqueIdentifier>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter Include="haptic\hidapi">
|
|
||||||
<UniqueIdentifier>{06DB01C0-65B5-4DE7-8ADC-C0B0CA3A1E69}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="haptic\dummy">
|
<Filter Include="haptic\dummy">
|
||||||
<UniqueIdentifier>{47c445a2-7014-4e15-9660-7c89a27dddcf}</UniqueIdentifier>
|
<UniqueIdentifier>{47c445a2-7014-4e15-9660-7c89a27dddcf}</UniqueIdentifier>
|
||||||
</Filter>
|
</Filter>
|
||||||
@@ -222,51 +219,42 @@
|
|||||||
</Filter>
|
</Filter>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h">
|
||||||
|
<Filter>API Headers</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_camera.h">
|
||||||
|
<Filter>API Headers</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h">
|
||||||
|
<Filter>API Headers</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL.h">
|
<ClInclude Include="..\..\include\SDL3\SDL.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_assert.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_assert.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_atomic.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_audio.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_audio.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_begin_code.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_bits.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_bits.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_blendmode.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_camera.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_clipboard.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_close_code.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_copying.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_copying.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_cpuinfo.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dialog.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_dlopennote.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_egl.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_egl.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -285,28 +273,19 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_gamepad.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_gamepad.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_gpu.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_guid.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_guid.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_haptic.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_hints.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_hints.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_init.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_hidapi.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_intrin.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_asyncio.h">
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h">
|
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_joystick.h">
|
||||||
@@ -330,27 +309,15 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_main.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_main.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_main_impl.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_messagebox.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_metal.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_misc.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_mouse.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_mutex.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_oldnames.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_opengl.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -405,6 +372,9 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_revision.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_revision.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\include\SDL3\SDL_iostream.h">
|
||||||
|
<Filter>API Headers</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_scancode.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -414,9 +384,6 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_stdinc.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_storage.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_surface.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_surface.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -453,24 +420,15 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_test_md5.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_test_md5.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_test_memory.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_thread.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_thread.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_time.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_timer.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_timer.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_touch.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_touch.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_tray.h">
|
|
||||||
<Filter>API Headers</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_version.h">
|
<ClInclude Include="..\..\include\SDL3\SDL_version.h">
|
||||||
<Filter>API Headers</Filter>
|
<Filter>API Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -528,9 +486,6 @@
|
|||||||
<ClInclude Include="..\..\src\audio\SDL_audioresample.h">
|
<ClInclude Include="..\..\src\audio\SDL_audioresample.h">
|
||||||
<Filter>audio</Filter>
|
<Filter>audio</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClCompile Include="..\..\src\core\SDL_core_unsupported.h">
|
|
||||||
<Filter>core</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClInclude Include="..\..\src\core\windows\SDL_directx.h">
|
<ClInclude Include="..\..\src\core\windows\SDL_directx.h">
|
||||||
<Filter>core\windows</Filter>
|
<Filter>core\windows</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -579,6 +534,9 @@
|
|||||||
<ClInclude Include="..\..\src\events\SDL_events_c.h">
|
<ClInclude Include="..\..\src\events\SDL_events_c.h">
|
||||||
<Filter>events</Filter>
|
<Filter>events</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\events\SDL_eventfilter_c.h">
|
||||||
|
<Filter>events</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\events\SDL_keyboard_c.h">
|
<ClInclude Include="..\..\src\events\SDL_keyboard_c.h">
|
||||||
<Filter>events</Filter>
|
<Filter>events</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -606,9 +564,6 @@
|
|||||||
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h">
|
<ClInclude Include="..\..\src\haptic\SDL_syshaptic.h">
|
||||||
<Filter>haptic</Filter>
|
<Filter>haptic</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_hidapihaptic.h">
|
|
||||||
<Filter>haptic</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h">
|
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h">
|
||||||
<Filter>haptic</Filter>
|
<Filter>haptic</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -666,18 +621,12 @@
|
|||||||
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h">
|
<ClInclude Include="..\..\src\haptic\windows\SDL_windowshaptic_c.h">
|
||||||
<Filter>haptic\windows</Filter>
|
<Filter>haptic\windows</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_c.h">
|
|
||||||
<Filter>haptic\hidapi</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h">
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapijoystick_c.h">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h">
|
<ClInclude Include="..\..\src\joystick\hidapi\SDL_hidapi_rumble.h">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\joystick\hidapi\SDL_report_descriptor.h">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h">
|
<ClInclude Include="..\..\src\joystick\windows\SDL_dinputjoystick_c.h">
|
||||||
<Filter>joystick\windows</Filter>
|
<Filter>joystick\windows</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -696,9 +645,6 @@
|
|||||||
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h">
|
<ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\video\SDL_rotate.h">
|
|
||||||
<Filter>video</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\video\SDL_surface_c.h">
|
<ClInclude Include="..\..\src\video\SDL_surface_c.h">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -732,15 +678,12 @@
|
|||||||
<ClInclude Include="..\..\src\video\SDL_stb_c.h">
|
<ClInclude Include="..\..\src\video\SDL_stb_c.h">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\video\SDL_video_unsupported.h">
|
<ClInclude Include="..\..\src\video\SDL_yuv_c.h">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h">
|
<ClInclude Include="..\..\src\video\SDL_vulkan_internal.h">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\video\SDL_yuv_c.h">
|
|
||||||
<Filter>video</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h">
|
<ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h">
|
||||||
<Filter>video\dummy</Filter>
|
<Filter>video\dummy</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -891,6 +834,9 @@
|
|||||||
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h">
|
<ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h">
|
||||||
<Filter>render\software</Filter>
|
<Filter>render\software</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\src\render\software\SDL_rotate.h">
|
||||||
|
<Filter>render\software</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\src\render\software\SDL_triangle.h">
|
<ClInclude Include="..\..\src\render\software\SDL_triangle.h">
|
||||||
<Filter>render\software</Filter>
|
<Filter>render\software</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
@@ -1007,7 +953,6 @@
|
|||||||
<ClInclude Include="..\..\include\SDL3\SDL_storage.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_storage.h" />
|
||||||
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
<ClInclude Include="..\..\include\SDL3\SDL_time.h" />
|
||||||
<ClInclude Include="..\..\src\events\SDL_categories_c.h" />
|
<ClInclude Include="..\..\src\events\SDL_categories_c.h" />
|
||||||
<ClInclude Include="..\..\src\events\SDL_eventwatch_c.h" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
||||||
@@ -1095,7 +1040,7 @@
|
|||||||
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c">
|
<ClCompile Include="..\..\src\core\SDL_core_unsupported.c">
|
||||||
<Filter>core</Filter>
|
<Filter>core</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.cpp">
|
<ClCompile Include="..\..\src\core\windows\SDL_gameinput.c">
|
||||||
<Filter>core\windows</Filter>
|
<Filter>core\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\core\windows\SDL_hid.c">
|
<ClCompile Include="..\..\src\core\windows\SDL_hid.c">
|
||||||
@@ -1134,6 +1079,9 @@
|
|||||||
<ClCompile Include="..\..\src\events\SDL_events.c">
|
<ClCompile Include="..\..\src\events\SDL_events.c">
|
||||||
<Filter>events</Filter>
|
<Filter>events</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\events\SDL_eventfilter.c">
|
||||||
|
<Filter>events</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\events\SDL_keyboard.c">
|
<ClCompile Include="..\..\src\events\SDL_keyboard.c">
|
||||||
<Filter>events</Filter>
|
<Filter>events</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1185,9 +1133,6 @@
|
|||||||
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c">
|
<ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c">
|
||||||
<Filter>loadso\windows</Filter>
|
<Filter>loadso\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\misc\SDL_libusb.c">
|
|
||||||
<Filter>misc</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\misc\SDL_url.c">
|
<ClCompile Include="..\..\src\misc\SDL_url.c">
|
||||||
<Filter>misc</Filter>
|
<Filter>misc</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1218,36 +1163,21 @@
|
|||||||
<ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c">
|
<ClCompile Include="..\..\src\haptic\windows\SDL_windowshaptic.c">
|
||||||
<Filter>haptic\windows</Filter>
|
<Filter>haptic\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic.c">
|
|
||||||
<Filter>haptic\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\haptic\hidapi\SDL_hidapihaptic_lg4ff.c">
|
|
||||||
<Filter>haptic\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\haptic\dummy\SDL_syshaptic.c">
|
<ClCompile Include="..\..\src\haptic\dummy\SDL_syshaptic.c">
|
||||||
<Filter>haptic\dummy</Filter>
|
<Filter>haptic\dummy</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c">
|
<ClCompile Include="..\..\src\joystick\dummy\SDL_sysjoystick.c">
|
||||||
<Filter>joystick\dummy</Filter>
|
<Filter>joystick\dummy</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.cpp">
|
<ClCompile Include="..\..\src\joystick\gdk\SDL_gameinputjoystick.c">
|
||||||
<Filter>joystick\gdk</Filter>
|
<Filter>joystick\gdk</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_8bitdo.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_flydigi.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_combined.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gamecube.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_gip.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1266,9 +1196,6 @@
|
|||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_shield.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_sinput.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1284,9 +1211,6 @@
|
|||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch2.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1299,18 +1223,9 @@
|
|||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_lg4ff.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_zuiki.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c">
|
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapijoystick.c">
|
||||||
<Filter>joystick\hidapi</Filter>
|
<Filter>joystick\hidapi</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_report_descriptor.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\joystick\windows\SDL_dinputjoystick.c">
|
<ClCompile Include="..\..\src\joystick\windows\SDL_dinputjoystick.c">
|
||||||
<Filter>joystick\windows</Filter>
|
<Filter>joystick\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1386,9 +1301,6 @@
|
|||||||
<ClCompile Include="..\..\src\video\SDL_rect.c">
|
<ClCompile Include="..\..\src\video\SDL_rect.c">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\video\SDL_rotate.c">
|
|
||||||
<Filter>video</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\video\SDL_stb.c">
|
<ClCompile Include="..\..\src\video\SDL_stb.c">
|
||||||
<Filter>video</Filter>
|
<Filter>video</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1419,6 +1331,9 @@
|
|||||||
<ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c">
|
<ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c">
|
||||||
<Filter>video\dummy</Filter>
|
<Filter>video\dummy</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\video\windows\SDL_surface_utils.c">
|
||||||
|
<Filter>video\windows</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c">
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c">
|
||||||
<Filter>video\windows</Filter>
|
<Filter>video\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1431,7 +1346,7 @@
|
|||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c">
|
<ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c">
|
||||||
<Filter>video\windows</Filter>
|
<Filter>video\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.cpp">
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsgameinput.c">
|
||||||
<Filter>video\windows</Filter>
|
<Filter>video\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c">
|
<ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c">
|
||||||
@@ -1545,6 +1460,9 @@
|
|||||||
<ClCompile Include="..\..\src\sensor\windows\SDL_windowssensor.c">
|
<ClCompile Include="..\..\src\sensor\windows\SDL_windowssensor.c">
|
||||||
<Filter>sensor\windows</Filter>
|
<Filter>sensor\windows</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\render\SDL_d3dmath.c">
|
||||||
|
<Filter>render</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\render\SDL_render.c">
|
<ClCompile Include="..\..\src\render\SDL_render.c">
|
||||||
<Filter>render</Filter>
|
<Filter>render</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1596,6 +1514,9 @@
|
|||||||
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c">
|
<ClCompile Include="..\..\src\render\software\SDL_render_sw.c">
|
||||||
<Filter>render\software</Filter>
|
<Filter>render\software</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\render\software\SDL_rotate.c">
|
||||||
|
<Filter>render\software</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\render\software\SDL_triangle.c">
|
<ClCompile Include="..\..\src\render\software\SDL_triangle.c">
|
||||||
<Filter>render\software</Filter>
|
<Filter>render\software</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -1664,15 +1585,11 @@
|
|||||||
<ClCompile Include="..\..\src\storage\generic\SDL_genericstorage.c" />
|
<ClCompile Include="..\..\src\storage\generic\SDL_genericstorage.c" />
|
||||||
<ClCompile Include="..\..\src\storage\steam\SDL_steamstorage.c" />
|
<ClCompile Include="..\..\src\storage\steam\SDL_steamstorage.c" />
|
||||||
<ClCompile Include="..\..\src\storage\SDL_storage.c" />
|
<ClCompile Include="..\..\src\storage\SDL_storage.c" />
|
||||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam_triton.c">
|
|
||||||
<Filter>joystick\hidapi</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\..\src\events\SDL_eventwatch.c" />
|
|
||||||
<ClCompile Include="..\..\src\core\windows\pch_cpp.cpp">
|
|
||||||
<Filter>core\windows</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="..\..\src\core\windows\version.rc" />
|
<ResourceCompile Include="..\..\src\core\windows\version.rc" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<MASM Include="..\..\src\stdlib\SDL_mslibc_x64.masm" />
|
||||||
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -158,12 +158,10 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\..\src\test\SDL_test_internal.h" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\src\test\SDL_test_assert.c" />
|
<ClCompile Include="..\..\src\test\SDL_test_assert.c" />
|
||||||
<ClCompile Include="..\..\src\test\SDL_test_common.c" />
|
<ClCompile Include="..\..\src\test\SDL_test_common.c" />
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{6A2BFA8B-C027-400D-A18B-3E9E1CC4DDD0}</ProjectGuid>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="$(SolutionDir)\..\examples\asyncio\01-load-bitmaps\README.txt" />
|
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\asyncio\01-load-bitmaps\load-bitmaps.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
</Project>
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{7117A55C-BE4E-41DB-A4FC-4070E35A8B28}</ProjectGuid>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="$(SolutionDir)\..\examples\audio\04-multiple-streams\README.txt" />
|
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\audio\04-multiple-streams\multiple-streams.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
</Project>
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{3DB9B219-769E-43AC-8B8B-319DB6045DCF}</ProjectGuid>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="$(SolutionDir)\..\examples\demo\04-bytepusher\README.txt" />
|
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\demo\04-bytepusher\bytepusher.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
</Project>
|
|
||||||
@@ -47,8 +47,7 @@ def main():
|
|||||||
for category in path.iterdir():
|
for category in path.iterdir():
|
||||||
if category.is_dir():
|
if category.is_dir():
|
||||||
for example in category.iterdir():
|
for example in category.iterdir():
|
||||||
if example.is_dir():
|
generate(category.name, example.name, get_c_source_filename(example))
|
||||||
generate(category.name, example.name, get_c_source_filename(example))
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{B3852DB7-E925-4026-8B9D-D2272EFEFF3C}</ProjectGuid>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="$(SolutionDir)\..\examples\input\01-joystick-polling\README.txt" />
|
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\input\01-joystick-polling\joystick-polling.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
</Project>
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{FCBDF2B2-1129-49AE-9406-3F219E65CA89}</ProjectGuid>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="$(SolutionDir)\..\examples\input\02-joystick-events\README.txt" />
|
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\input\02-joystick-events\joystick-events.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
</Project>
|
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\06-textures\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\06-textures\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\06-textures\textures.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\06-textures\textures.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\08-rotating-textures\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\08-rotating-textures\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\08-rotating-textures\rotating-textures.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\08-rotating-textures\rotating-textures.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\10-geometry\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\10-geometry\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\10-geometry\geometry.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\10-geometry\geometry.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\11-color-mods\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\11-color-mods\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\11-color-mods\color-mods.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\11-color-mods\color-mods.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\14-viewport\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\14-viewport\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\14-viewport\viewport.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\14-viewport\viewport.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\15-cliprect\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\15-cliprect\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\15-cliprect\cliprect.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\15-cliprect\cliprect.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\17-read-pixels\README.txt" />
|
<None Include="$(SolutionDir)\..\examples\renderer\17-read-pixels\README.txt" />
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\17-read-pixels\read-pixels.c" />
|
<ClCompile Include="$(SolutionDir)\..\examples\renderer\17-read-pixels\read-pixels.c" />
|
||||||
<Content Include="$(SolutionDir)\..\test\sample.png" CopyToOutputDirectory="PreserveNewest" />
|
<Content Include="$(SolutionDir)\..\test\sample.bmp" CopyToOutputDirectory="PreserveNewest" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{E21C50BF-54B4-434C-AA24-9A6469553987}</ProjectGuid>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="$(SolutionDir)\..\examples\renderer\19-affine-textures\README.txt" />
|
|
||||||
<ClCompile Include="$(SolutionDir)\..\examples\renderer\19-affine-textures\affine-textures.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
</Project>
|
|
||||||
@@ -189,6 +189,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -189,6 +189,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -187,6 +187,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -195,6 +195,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -201,7 +202,7 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuild Include="..\..\..\test\icon.png">
|
<CustomBuild Include="..\..\..\test\icon.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
||||||
</Command>
|
</Command>
|
||||||
@@ -219,7 +220,7 @@
|
|||||||
</Command>
|
</Command>
|
||||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
||||||
</CustomBuild>
|
</CustomBuild>
|
||||||
<CustomBuild Include="..\..\..\test\sample.png">
|
<CustomBuild Include="..\..\..\test\sample.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
||||||
</Command>
|
</Command>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -201,7 +202,7 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuild Include="..\..\..\test\icon.png">
|
<CustomBuild Include="..\..\..\test\icon.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
||||||
</Command>
|
</Command>
|
||||||
@@ -219,7 +220,7 @@
|
|||||||
</Command>
|
</Command>
|
||||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)\%(Filename)%(Extension);%(Outputs)</Outputs>
|
||||||
</CustomBuild>
|
</CustomBuild>
|
||||||
<CustomBuild Include="..\..\..\test\sample.png">
|
<CustomBuild Include="..\..\..\test\sample.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
||||||
</Command>
|
</Command>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -1,209 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<ItemGroup Label="ProjectConfigurations">
|
|
||||||
<ProjectConfiguration Include="Debug|Win32">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Debug|x64">
|
|
||||||
<Configuration>Debug</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|Win32">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>Win32</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
<ProjectConfiguration Include="Release|x64">
|
|
||||||
<Configuration>Release</Configuration>
|
|
||||||
<Platform>x64</Platform>
|
|
||||||
</ProjectConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<PropertyGroup Label="Globals">
|
|
||||||
<ProjectGuid>{D91C45E2-274E-4C0F-89C7-9986F9A7E85A}</ProjectGuid>
|
|
||||||
<RootNamespace>testsoftwaretransparent</RootNamespace>
|
|
||||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<PlatformToolset Condition="'$(VisualStudioVersion)' != '10.0'">$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<PlatformToolset Condition="'$(VisualStudioVersion)' != '10.0'">$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<PlatformToolset Condition="'$(VisualStudioVersion)' != '10.0'">$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
|
||||||
<PlatformToolset Condition="'$(VisualStudioVersion)' != '10.0'">$(DefaultPlatformToolset)</PlatformToolset>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
|
||||||
<ImportGroup Label="ExtensionSettings">
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
|
||||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
|
||||||
</ImportGroup>
|
|
||||||
<PropertyGroup Label="UserMacros" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
|
|
||||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
|
||||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
|
|
||||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
|
||||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
|
||||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
|
||||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
|
||||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
|
||||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
|
||||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
|
||||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
|
||||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
|
||||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
|
||||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
|
||||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
|
||||||
<Midl>
|
|
||||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
|
||||||
<TargetEnvironment>Win32</TargetEnvironment>
|
|
||||||
<TypeLibraryName>.\Release/testsoftwaretransparent.tlb</TypeLibraryName>
|
|
||||||
</Midl>
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<Culture>0x0409</Culture>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
|
||||||
<Midl>
|
|
||||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
|
||||||
<TargetEnvironment>X64</TargetEnvironment>
|
|
||||||
<TypeLibraryName>.\Release/testsoftwaretransparent.tlb</TypeLibraryName>
|
|
||||||
</Midl>
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<Culture>0x0409</Culture>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
|
||||||
<Midl>
|
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
|
||||||
<TargetEnvironment>Win32</TargetEnvironment>
|
|
||||||
<TypeLibraryName>.\Debug/testsoftwaretransparent.tlb</TypeLibraryName>
|
|
||||||
</Midl>
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<Culture>0x0409</Culture>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
|
||||||
<Midl>
|
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
|
||||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
|
||||||
<TargetEnvironment>X64</TargetEnvironment>
|
|
||||||
<TypeLibraryName>.\Debug/testsoftwaretransparent.tlb</TypeLibraryName>
|
|
||||||
</Midl>
|
|
||||||
<ClCompile>
|
|
||||||
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
|
||||||
<Optimization>Disabled</Optimization>
|
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)/../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
|
||||||
<AdditionalUsingDirectories>%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
|
||||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
|
||||||
<WarningLevel>Level3</WarningLevel>
|
|
||||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
|
||||||
</ClCompile>
|
|
||||||
<ResourceCompile>
|
|
||||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
|
||||||
<Culture>0x0409</Culture>
|
|
||||||
</ResourceCompile>
|
|
||||||
<Link>
|
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
|
||||||
<SubSystem>Windows</SubSystem>
|
|
||||||
</Link>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
|
||||||
<ClCompile>
|
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
|
||||||
</ClCompile>
|
|
||||||
</ItemDefinitionGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\..\SDL\SDL.vcxproj">
|
|
||||||
<Project>{81ce8daf-ebb2-4761-8e45-b71abcca8c68}</Project>
|
|
||||||
<Private>false</Private>
|
|
||||||
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
|
||||||
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
|
||||||
</ProjectReference>
|
|
||||||
<ProjectReference Include="..\..\SDL_test\SDL_test.vcxproj">
|
|
||||||
<Project>{da956fd3-e143-46f2-9fe5-c77bebc56b1a}</Project>
|
|
||||||
<Private>false</Private>
|
|
||||||
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
|
||||||
<ReferenceOutputAssembly>true</ReferenceOutputAssembly>
|
|
||||||
</ProjectReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ClCompile Include="..\..\..\test\testsoftwaretransparent.c" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
|
||||||
<ImportGroup Label="ExtensionTargets">
|
|
||||||
</ImportGroup>
|
|
||||||
</Project>
|
|
||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -201,7 +202,7 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuild Include="..\..\..\test\icon.png">
|
<CustomBuild Include="..\..\..\test\icon.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
||||||
</Command>
|
</Command>
|
||||||
|
|||||||
@@ -189,6 +189,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|||||||
@@ -183,6 +183,7 @@
|
|||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
<ItemDefinitionGroup Condition="'$(TreatWarningsAsError)'!=''">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
|
<AdditionalOptions>%(AdditionalOptions) /utf-8</AdditionalOptions>
|
||||||
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
<TreatWarningAsError>$(TreatWarningsAsError)</TreatWarningAsError>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -201,7 +202,7 @@
|
|||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<CustomBuild Include="..\..\..\test\testyuv.png">
|
<CustomBuild Include="..\..\..\test\testyuv.bmp">
|
||||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Copying %(Filename)%(Extension)</Message>
|
||||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">copy "%(FullPath)" "$(ProjectDir)\"
|
||||||
</Command>
|
</Command>
|
||||||
|
|||||||
118
WhatsNew.txt
118
WhatsNew.txt
@@ -1,134 +1,16 @@
|
|||||||
|
|
||||||
This is a list of major changes in SDL's version history.
|
This is a list of major changes in SDL's version history.
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
3.4.0:
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
|
|
||||||
General:
|
|
||||||
* Added SDL_CreateAnimatedCursor() to create animated color cursors
|
|
||||||
* Added SDL_HINT_MOUSE_DPI_SCALE_CURSORS to automatically scale cursors based on the display scale
|
|
||||||
* Added SDL_SetWindowProgressState(), SDL_SetWindowProgressValue(), SDL_GetWindowProgressState(), and SDL_GetWindowProgressValue() to show progress in the window's taskbar icon on Windows and Linux
|
|
||||||
* Added GPU device creation properties to enable the GPU API on older hardware if you're not using these features:
|
|
||||||
- SDL_PROP_GPU_DEVICE_CREATE_FEATURE_CLIP_DISTANCE_BOOLEAN
|
|
||||||
- SDL_PROP_GPU_DEVICE_CREATE_FEATURE_DEPTH_CLAMPING_BOOLEAN
|
|
||||||
- SDL_PROP_GPU_DEVICE_CREATE_FEATURE_INDIRECT_DRAW_FIRST_INSTANCE_BOOLEAN
|
|
||||||
- SDL_PROP_GPU_DEVICE_CREATE_FEATURE_ANISOTROPY_BOOLEAN
|
|
||||||
- SDL_PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN
|
|
||||||
* Added SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER to enable configuring Vulkan features when creating a GPU device
|
|
||||||
* Added SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN to allow requiring Vulkan hardware acceleration when creating a GPU device
|
|
||||||
* Added SDL_GetGPUDeviceProperties() to query information from a GPU device:
|
|
||||||
- SDL_PROP_GPU_DEVICE_NAME_STRING
|
|
||||||
- SDL_PROP_GPU_DEVICE_DRIVER_NAME_STRING
|
|
||||||
- SDL_PROP_GPU_DEVICE_DRIVER_VERSION_STRING
|
|
||||||
- SDL_PROP_GPU_DEVICE_DRIVER_INFO_STRING
|
|
||||||
* Added SDL_GetPixelFormatFromGPUTextureFormat() and SDL_GetGPUTextureFormatFromPixelFormat()
|
|
||||||
* Added SDL_CreateGPURenderer() and SDL_GetGPURendererDevice() to create a 2D renderer for use with GPU rendering.
|
|
||||||
* Added SDL_CreateGPURenderState(), SDL_SetGPURenderStateFragmentUniforms(), SDL_SetGPURenderState(), and SDL_DestroyGPURenderState() to use fragment shaders with a GPU 2D renderer
|
|
||||||
* Added SDL_PROP_TEXTURE_CREATE_GPU_TEXTURE_POINTER to create a 2D texture from an existing GPU texture
|
|
||||||
* Added SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER to get the GPU texture from a 2D texture when using the GPU 2D renderer
|
|
||||||
* Added support for YUV textures and HDR colorspaces to the GPU 2D renderer
|
|
||||||
* Added support for textures with palettes, and SDL_GetTexturePalette() and SDL_SetTexturePalette() to interact with them
|
|
||||||
* Added SDL_RenderTexture9GridTiled() to do tiled instead of stretched 9-grid texture rendering
|
|
||||||
* Added SDL_GetDefaultTextureScaleMode() and SDL_SetDefaultTextureScaleMode() to set the texture scale mode for new textures
|
|
||||||
* Added SDL_GetRenderTextureAddressMode() and SDL_SetRenderTextureAddressMode() to change the texture addressing mode
|
|
||||||
* Added SDL_TEXTURE_ADDRESS_WRAP to allow wrapping of textures if the renderer has SDL_PROP_RENDERER_TEXTURE_WRAPPING_BOOLEAN set
|
|
||||||
* The default YUV colorspace is BT.601 limited range, for compatibility with SDL2
|
|
||||||
* Added SDL_SCALEMODE_PIXELART as an improved scaling algorithm for pixel art without introducing blurring
|
|
||||||
* Added SDL_FLIP_HORIZONTAL_AND_VERTICAL to flip a surface both horizontally and vertically
|
|
||||||
* Added SDL_LoadPNG(), SDL_LoadPNG_IO(), SDL_SavePNG(), and SDL_SavePNG_IO() to load and save PNG images
|
|
||||||
* Added SDL_LoadSurface() and SDL_LoadSurface_IO() to detect BMP and PNG formats and load them as surfaces
|
|
||||||
* Added SDL_PROP_SURFACE_ROTATION_FLOAT to indicate the rotation needed to display camera images upright
|
|
||||||
* Added SDL_RotateSurface() to create a rotated copy of a surface
|
|
||||||
* SDL_EVENT_WINDOW_EXPOSED now sets data1 to true if it is sent during live resizing
|
|
||||||
* Added SDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED, which is sent when the usable desktop bounds change
|
|
||||||
* Added SDL_EVENT_SCREEN_KEYBOARD_SHOWN, which is sent when the on-screen keyboard has been shown
|
|
||||||
* Added SDL_EVENT_SCREEN_KEYBOARD_HIDDEN, which is sent when the on-screen keyboard has been hidden
|
|
||||||
* Added pinch gesture events: SDL_EVENT_PINCH_BEGIN, SDL_EVENT_PINCH_UPDATE, SDL_EVENT_PINCH_END
|
|
||||||
* SDL_EVENT_AUDIO_DEVICE_ADDED will be sent during initialization for each audio device
|
|
||||||
* SDL_GetCameraPermissionState() returns SDL_CameraPermissionState instead of int
|
|
||||||
* Added SDL_PutAudioStreamDataNoCopy() to do more efficient audio stream processing in some cases
|
|
||||||
* Added SDL_PutAudioStreamPlanarData() to add planar audio data instead of interleaved data to an audio stream
|
|
||||||
* Added SDL_HINT_AUDIO_DEVICE_RAW_STREAM to signal that the OS shouldn't do further audio processing, useful for applications that handle noise canceling, etc.
|
|
||||||
* Added SDL_PROP_AUDIOSTREAM_AUTO_CLEANUP_BOOLEAN to allow streams that persist beyond the audio subsystem lifetime.
|
|
||||||
* Added enhanced support for 8BitDo controllers
|
|
||||||
* Added enhanced support for FlyDigi controllers
|
|
||||||
* Added enhanced support for Hand Held Legend SInput controllers
|
|
||||||
* Added support for wired Nintendo Switch 2 controllers when built with libusb
|
|
||||||
* Added SDL_hid_get_properties() to associate SDL properties with HID devices
|
|
||||||
* Added SDL_PROP_HIDAPI_LIBUSB_DEVICE_HANDLE_POINTER to query the libusb handle from an SDL_hid_device, if it's been opened with libusb
|
|
||||||
* Added SDL_SetRelativeMouseTransform() to add custom mouse input transformation
|
|
||||||
* Added SDL_GetPenDeviceType() to determine whether a pen is on the screen or on a separate touchpad
|
|
||||||
* SDL_HINT_MAIN_CALLBACK_RATE may be set to a floating point callback rate
|
|
||||||
* Added SDL_GetEventDescription() to get an English description of an event, suitable for logging
|
|
||||||
* Added SDL_PROP_IOSTREAM_MEMORY_FREE_FUNC_POINTER to allow custom freeing of the memory used by SDL_IOFromMem() and SDL_IOFromConstMem()
|
|
||||||
* Added SDL_PROP_PROCESS_CREATE_WORKING_DIRECTORY_STRING to set the working directory for new processes
|
|
||||||
* Added verbose log output when the DEBUG_INVOCATION environment variable is set to "1"
|
|
||||||
* Added SDL_AddAtomicU32()
|
|
||||||
* Added SDL_GetSystemPageSize() to get the system page size
|
|
||||||
* Added SDL_ALIGNED() to signal that data should have a specific alignment
|
|
||||||
|
|
||||||
Windows:
|
|
||||||
* Added SDL_HINT_RENDER_DIRECT3D11_WARP to enable D3D11 software rasterization
|
|
||||||
* Using SDL_InsertGPUDebugLabel(), SDL_PushGPUDebugGroup(), and SDL_PopGPUDebugGroup() requires WinPixEventRuntime.dll to be in your PATH or in the same directory as your executable
|
|
||||||
* Added SDL_PROP_DISPLAY_WINDOWS_HMONITOR_POINTER so you can query the HMONITOR associated with a display
|
|
||||||
* SDL_HINT_AUDIO_DEVICE_STREAM_ROLE is used by the WASAPI audio driver to set the audio stream category
|
|
||||||
* Added SDL_HINT_AUDIO_DEVICE_RAW_STREAM to signal whether the OS audio driver should do additional signal processing
|
|
||||||
* Added SDL_HINT_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS to allow disabling some system hotkeys when in raw input mode
|
|
||||||
* SDL_HINT_WINDOWS_GAMEINPUT is disabled by default
|
|
||||||
|
|
||||||
macOS:
|
|
||||||
* Added SDL_HINT_MAC_PRESS_AND_HOLD to control whether holding down a key will repeat the pressed key or open the accents menu
|
|
||||||
|
|
||||||
Linux:
|
|
||||||
* Added atomic support for KMSDRM
|
|
||||||
* Added SDL_HINT_KMSDRM_ATOMIC to control whether KMSDRM will use atomic functionality
|
|
||||||
* Added SDL_PROP_DISPLAY_WAYLAND_WL_OUTPUT_POINTER so you can query the wl_output associated with a display
|
|
||||||
|
|
||||||
Emscripten:
|
|
||||||
* Added SDL_WINDOW_FILL_DOCUMENT to indicate that windows expand to fill the whole browser window
|
|
||||||
* Added SDL_SetWindowFillDocument() to change whether windows expand to fill the whole browser window
|
|
||||||
* Added SDL_PROP_WINDOW_CREATE_EMSCRIPTEN_CANVAS_ID_STRING to allow setting the SDL canvas ID, and SDL_PROP_WINDOW_EMSCRIPTEN_CANVAS_ID_STRING to query it on existing windows
|
|
||||||
* Added SDL_PROP_WINDOW_CREATE_EMSCRIPTEN_KEYBOARD_ELEMENT_STRING to specify where keyboard input is bound, and SDL_PROP_WINDOW_EMSCRIPTEN_KEYBOARD_ELEMENT_STRING to query it on existing windows
|
|
||||||
|
|
||||||
iOS:
|
|
||||||
* SDL now supports window scenes, fixing the warning "CLIENT OF UIKIT REQUIRES UPDATE"
|
|
||||||
* Added SDL_PROP_WINDOW_CREATE_WINDOWSCENE_POINTER to specify the window scene for a window
|
|
||||||
|
|
||||||
visionOS:
|
|
||||||
* The default refresh rate has been increased to 90Hz
|
|
||||||
* SDL_SetWindowSize() changes the size of the window on Vision Pro headsets
|
|
||||||
|
|
||||||
PlayStation 2:
|
|
||||||
* Added the following hints to control the display parameters: SDL_HINT_PS2_GS_WIDTH, SDL_HINT_PS2_GS_HEIGHT, SDL_HINT_PS2_GS_PROGRESSIVE, SDL_HINT_PS2_GS_MODE
|
|
||||||
|
|
||||||
Note: On Unix platforms SDL provides ELF notes describing its non-mandatory library dependencies in the format described by https://systemd.io/ELF_DLOPEN_METADATA/. Some of these libraries are quite important, so distribution vendors who package SDL should parse the ELF notes and consider generating dependencies at the packaging level, for example by using https://github.com/systemd/package-notes. Other libraries and games can add similar ELF notes to describe their own dependencies by using the SDL_ELF_NOTE_DLOPEN macro.
|
|
||||||
|
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
3.2.22:
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
* SDL_HINT_JOYSTICK_WGI is disabled by default
|
|
||||||
|
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
3.2.16:
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
* SDL_HINT_JOYSTICK_RAWINPUT is disabled by default
|
|
||||||
|
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
3.2.10:
|
3.2.10:
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
* Added SDL_HINT_VIDEO_X11_EXTERNAL_WINDOW_INPUT to control whether XSelectInput() should be called on external windows to enable input events.
|
* Added SDL_HINT_VIDEO_X11_EXTERNAL_WINDOW_INPUT to control whether XSelectInput() should be called on external windows to enable input events.
|
||||||
|
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
3.2.4:
|
3.2.4:
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
* Added SDL_StretchSurface()
|
* Added SDL_StretchSurface()
|
||||||
|
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
3.2.0:
|
3.2.0:
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -19,10 +19,10 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>FMWK</string>
|
<string>FMWK</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>3.4.4</string>
|
<string>3.2.16</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>SDLX</string>
|
<string>SDLX</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>3.4.4</string>
|
<string>3.2.16</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
archiveVersion = 1;
|
archiveVersion = 1;
|
||||||
classes = {
|
classes = {
|
||||||
};
|
};
|
||||||
objectVersion = 55;
|
objectVersion = 54;
|
||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXAggregateTarget section */
|
/* Begin PBXAggregateTarget section */
|
||||||
@@ -54,7 +54,6 @@
|
|||||||
00CFA89D106B4BA100758660 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00CFA89C106B4BA100758660 /* ForceFeedback.framework */; platformFilters = (macos, ); };
|
00CFA89D106B4BA100758660 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00CFA89C106B4BA100758660 /* ForceFeedback.framework */; platformFilters = (macos, ); };
|
||||||
00D0D08410675DD9004B05EF /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00D0D08310675DD9004B05EF /* CoreFoundation.framework */; platformFilters = (ios, maccatalyst, macos, tvos, ); settings = {ATTRIBUTES = (Required, ); }; };
|
00D0D08410675DD9004B05EF /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00D0D08310675DD9004B05EF /* CoreFoundation.framework */; platformFilters = (ios, maccatalyst, macos, tvos, ); settings = {ATTRIBUTES = (Required, ); }; };
|
||||||
00D0D0D810675E46004B05EF /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317C10858E15000B2BC32 /* Carbon.framework */; platformFilters = (macos, ); };
|
00D0D0D810675E46004B05EF /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317C10858E15000B2BC32 /* Carbon.framework */; platformFilters = (macos, ); };
|
||||||
02D6A1C228A84B8F00A7F002 /* SDL_hidapi_sinput.c in Sources */ = {isa = PBXBuildFile; fileRef = 02D6A1C128A84B8F00A7F001 /* SDL_hidapi_sinput.c */; };
|
|
||||||
1485C3312BBA4AF30063985B /* UniformTypeIdentifiers.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1485C32F2BBA4A0C0063985B /* UniformTypeIdentifiers.framework */; platformFilters = (maccatalyst, macos, ); settings = {ATTRIBUTES = (Weak, ); }; };
|
1485C3312BBA4AF30063985B /* UniformTypeIdentifiers.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1485C32F2BBA4A0C0063985B /* UniformTypeIdentifiers.framework */; platformFilters = (maccatalyst, macos, ); settings = {ATTRIBUTES = (Weak, ); }; };
|
||||||
557D0CFA254586CA003913E3 /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F37DC5F225350EBC0002E6F7 /* CoreHaptics.framework */; platformFilters = (ios, maccatalyst, macos, tvos, ); settings = {ATTRIBUTES = (Weak, ); }; };
|
557D0CFA254586CA003913E3 /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F37DC5F225350EBC0002E6F7 /* CoreHaptics.framework */; platformFilters = (ios, maccatalyst, macos, tvos, ); settings = {ATTRIBUTES = (Weak, ); }; };
|
||||||
557D0CFB254586D7003913E3 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A75FDABD23E28B6200529352 /* GameController.framework */; settings = {ATTRIBUTES = (Required, ); }; };
|
557D0CFB254586D7003913E3 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A75FDABD23E28B6200529352 /* GameController.framework */; settings = {ATTRIBUTES = (Required, ); }; };
|
||||||
@@ -67,16 +66,11 @@
|
|||||||
566E26D8246274CC00718109 /* SDL_locale.c in Sources */ = {isa = PBXBuildFile; fileRef = 566E26CD246274CB00718109 /* SDL_locale.c */; };
|
566E26D8246274CC00718109 /* SDL_locale.c in Sources */ = {isa = PBXBuildFile; fileRef = 566E26CD246274CB00718109 /* SDL_locale.c */; };
|
||||||
566E26E1246274CC00718109 /* SDL_syslocale.h in Headers */ = {isa = PBXBuildFile; fileRef = 566E26CE246274CC00718109 /* SDL_syslocale.h */; };
|
566E26E1246274CC00718109 /* SDL_syslocale.h in Headers */ = {isa = PBXBuildFile; fileRef = 566E26CE246274CC00718109 /* SDL_syslocale.h */; };
|
||||||
56A2373329F9C113003CCA5F /* SDL_sysrwlock.c in Sources */ = {isa = PBXBuildFile; fileRef = 56A2373229F9C113003CCA5F /* SDL_sysrwlock.c */; };
|
56A2373329F9C113003CCA5F /* SDL_sysrwlock.c in Sources */ = {isa = PBXBuildFile; fileRef = 56A2373229F9C113003CCA5F /* SDL_sysrwlock.c */; };
|
||||||
63124A422E5C357500A53610 /* SDL_hidapi_zuiki.c in Sources */ = {isa = PBXBuildFile; fileRef = 63124A412E5C357500A53610 /* SDL_hidapi_zuiki.c */; };
|
|
||||||
6312C66D2B42341400A7BB00 /* SDL_murmur3.c in Sources */ = {isa = PBXBuildFile; fileRef = 6312C66C2B42341400A7BB00 /* SDL_murmur3.c */; };
|
6312C66D2B42341400A7BB00 /* SDL_murmur3.c in Sources */ = {isa = PBXBuildFile; fileRef = 6312C66C2B42341400A7BB00 /* SDL_murmur3.c */; };
|
||||||
63134A252A7902FD0021E9A6 /* SDL_pen_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 63134A232A7902FD0021E9A6 /* SDL_pen_c.h */; };
|
63134A252A7902FD0021E9A6 /* SDL_pen_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 63134A232A7902FD0021E9A6 /* SDL_pen_c.h */; };
|
||||||
63134A262A7902FD0021E9A6 /* SDL_pen.c in Sources */ = {isa = PBXBuildFile; fileRef = 63134A242A7902FD0021E9A6 /* SDL_pen.c */; };
|
63134A262A7902FD0021E9A6 /* SDL_pen.c in Sources */ = {isa = PBXBuildFile; fileRef = 63134A242A7902FD0021E9A6 /* SDL_pen.c */; };
|
||||||
75E0915A241EA924004729E1 /* SDL_virtualjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = 75E09158241EA924004729E1 /* SDL_virtualjoystick.c */; };
|
75E0915A241EA924004729E1 /* SDL_virtualjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = 75E09158241EA924004729E1 /* SDL_virtualjoystick.c */; };
|
||||||
75E09163241EA924004729E1 /* SDL_virtualjoystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 75E09159241EA924004729E1 /* SDL_virtualjoystick_c.h */; };
|
75E09163241EA924004729E1 /* SDL_virtualjoystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 75E09159241EA924004729E1 /* SDL_virtualjoystick_c.h */; };
|
||||||
89E5801E2D03602200DAF6D3 /* SDL_hidapi_lg4ff.c in Sources */ = {isa = PBXBuildFile; fileRef = 89E5801D2D03602200DAF6D3 /* SDL_hidapi_lg4ff.c */; };
|
|
||||||
89E580232D03606400DAF6D3 /* SDL_hidapihaptic.c in Sources */ = {isa = PBXBuildFile; fileRef = 89E5801F2D03606400DAF6D3 /* SDL_hidapihaptic.c */; };
|
|
||||||
89E580242D03606400DAF6D3 /* SDL_hidapihaptic_lg4ff.c in Sources */ = {isa = PBXBuildFile; fileRef = 89E580212D03606400DAF6D3 /* SDL_hidapihaptic_lg4ff.c */; };
|
|
||||||
89E580252D03606400DAF6D3 /* SDL_hidapihaptic_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 89E580202D03606400DAF6D3 /* SDL_hidapihaptic_c.h */; };
|
|
||||||
9846B07C287A9020000C35C8 /* SDL_hidapi_shield.c in Sources */ = {isa = PBXBuildFile; fileRef = 9846B07B287A9020000C35C8 /* SDL_hidapi_shield.c */; };
|
9846B07C287A9020000C35C8 /* SDL_hidapi_shield.c in Sources */ = {isa = PBXBuildFile; fileRef = 9846B07B287A9020000C35C8 /* SDL_hidapi_shield.c */; };
|
||||||
A1626A3E2617006A003F1973 /* SDL_triangle.c in Sources */ = {isa = PBXBuildFile; fileRef = A1626A3D2617006A003F1973 /* SDL_triangle.c */; };
|
A1626A3E2617006A003F1973 /* SDL_triangle.c in Sources */ = {isa = PBXBuildFile; fileRef = A1626A3D2617006A003F1973 /* SDL_triangle.c */; };
|
||||||
A1626A522617008D003F1973 /* SDL_triangle.h in Headers */ = {isa = PBXBuildFile; fileRef = A1626A512617008C003F1973 /* SDL_triangle.h */; };
|
A1626A522617008D003F1973 /* SDL_triangle.h in Headers */ = {isa = PBXBuildFile; fileRef = A1626A512617008C003F1973 /* SDL_triangle.h */; };
|
||||||
@@ -230,7 +224,6 @@
|
|||||||
A7D8B54523E2514300DCD162 /* SDL_hidapijoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C423E2513E00DCD162 /* SDL_hidapijoystick.c */; };
|
A7D8B54523E2514300DCD162 /* SDL_hidapijoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C423E2513E00DCD162 /* SDL_hidapijoystick.c */; };
|
||||||
A7D8B54B23E2514300DCD162 /* SDL_hidapi_xboxone.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */; };
|
A7D8B54B23E2514300DCD162 /* SDL_hidapi_xboxone.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */; };
|
||||||
A7D8B55123E2514300DCD162 /* SDL_hidapi_switch.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */; };
|
A7D8B55123E2514300DCD162 /* SDL_hidapi_switch.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */; };
|
||||||
A7D8B55123E2514300DCD163 /* SDL_hidapi_switch2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C623E2513E00DCD163 /* SDL_hidapi_switch2.c */; };
|
|
||||||
A7D8B55723E2514300DCD162 /* SDL_hidapijoystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A7C723E2513E00DCD162 /* SDL_hidapijoystick_c.h */; };
|
A7D8B55723E2514300DCD162 /* SDL_hidapijoystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A7C723E2513E00DCD162 /* SDL_hidapijoystick_c.h */; };
|
||||||
A7D8B55D23E2514300DCD162 /* SDL_hidapi_xbox360w.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */; };
|
A7D8B55D23E2514300DCD162 /* SDL_hidapi_xbox360w.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */; };
|
||||||
A7D8B56323E2514300DCD162 /* SDL_hidapi_gamecube.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */; };
|
A7D8B56323E2514300DCD162 /* SDL_hidapi_gamecube.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */; };
|
||||||
@@ -288,6 +281,7 @@
|
|||||||
A7D8B9E323E2514400DCD162 /* SDL_drawline.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8F123E2514000DCD162 /* SDL_drawline.c */; };
|
A7D8B9E323E2514400DCD162 /* SDL_drawline.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8F123E2514000DCD162 /* SDL_drawline.c */; };
|
||||||
A7D8B9E923E2514400DCD162 /* SDL_blendline.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F223E2514000DCD162 /* SDL_blendline.h */; };
|
A7D8B9E923E2514400DCD162 /* SDL_blendline.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F223E2514000DCD162 /* SDL_blendline.h */; };
|
||||||
A7D8B9EF23E2514400DCD162 /* SDL_drawpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F323E2514000DCD162 /* SDL_drawpoint.h */; };
|
A7D8B9EF23E2514400DCD162 /* SDL_drawpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F323E2514000DCD162 /* SDL_drawpoint.h */; };
|
||||||
|
A7D8B9F523E2514400DCD162 /* SDL_rotate.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8F423E2514000DCD162 /* SDL_rotate.c */; };
|
||||||
A7D8B9FB23E2514400DCD162 /* SDL_render_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F523E2514000DCD162 /* SDL_render_sw_c.h */; };
|
A7D8B9FB23E2514400DCD162 /* SDL_render_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F523E2514000DCD162 /* SDL_render_sw_c.h */; };
|
||||||
A7D8BA0123E2514400DCD162 /* SDL_blendfillrect.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F623E2514000DCD162 /* SDL_blendfillrect.h */; };
|
A7D8BA0123E2514400DCD162 /* SDL_blendfillrect.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F623E2514000DCD162 /* SDL_blendfillrect.h */; };
|
||||||
A7D8BA0723E2514400DCD162 /* SDL_drawline.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F723E2514000DCD162 /* SDL_drawline.h */; };
|
A7D8BA0723E2514400DCD162 /* SDL_drawline.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8F723E2514000DCD162 /* SDL_drawline.h */; };
|
||||||
@@ -297,6 +291,8 @@
|
|||||||
A7D8BA1F23E2514400DCD162 /* SDL_blendline.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FB23E2514000DCD162 /* SDL_blendline.c */; };
|
A7D8BA1F23E2514400DCD162 /* SDL_blendline.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FB23E2514000DCD162 /* SDL_blendline.c */; };
|
||||||
A7D8BA2523E2514400DCD162 /* SDL_drawpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FC23E2514000DCD162 /* SDL_drawpoint.c */; };
|
A7D8BA2523E2514400DCD162 /* SDL_drawpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FC23E2514000DCD162 /* SDL_drawpoint.c */; };
|
||||||
A7D8BA2B23E2514400DCD162 /* SDL_blendfillrect.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FD23E2514000DCD162 /* SDL_blendfillrect.c */; };
|
A7D8BA2B23E2514400DCD162 /* SDL_blendfillrect.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FD23E2514000DCD162 /* SDL_blendfillrect.c */; };
|
||||||
|
A7D8BA3123E2514400DCD162 /* SDL_rotate.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8FE23E2514000DCD162 /* SDL_rotate.h */; };
|
||||||
|
A7D8BA3723E2514400DCD162 /* SDL_d3dmath.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A8FF23E2514000DCD162 /* SDL_d3dmath.c */; };
|
||||||
A7D8BA4923E2514400DCD162 /* SDL_render_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A90423E2514000DCD162 /* SDL_render_gles2.c */; };
|
A7D8BA4923E2514400DCD162 /* SDL_render_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A90423E2514000DCD162 /* SDL_render_gles2.c */; };
|
||||||
A7D8BA4F23E2514400DCD162 /* SDL_shaders_gles2.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A90523E2514000DCD162 /* SDL_shaders_gles2.h */; };
|
A7D8BA4F23E2514400DCD162 /* SDL_shaders_gles2.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A90523E2514000DCD162 /* SDL_shaders_gles2.h */; };
|
||||||
A7D8BA5523E2514400DCD162 /* SDL_gles2funcs.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A90623E2514000DCD162 /* SDL_gles2funcs.h */; };
|
A7D8BA5523E2514400DCD162 /* SDL_gles2funcs.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A90623E2514000DCD162 /* SDL_gles2funcs.h */; };
|
||||||
@@ -388,7 +384,6 @@
|
|||||||
F32DDAD42AB795A30041EAA5 /* SDL_audioresample.c in Sources */ = {isa = PBXBuildFile; fileRef = F32DDACE2AB795A30041EAA5 /* SDL_audioresample.c */; };
|
F32DDAD42AB795A30041EAA5 /* SDL_audioresample.c in Sources */ = {isa = PBXBuildFile; fileRef = F32DDACE2AB795A30041EAA5 /* SDL_audioresample.c */; };
|
||||||
F338A1182D1B37D8007CDFDF /* SDL_tray.m in Sources */ = {isa = PBXBuildFile; fileRef = F338A1172D1B37D8007CDFDF /* SDL_tray.m */; };
|
F338A1182D1B37D8007CDFDF /* SDL_tray.m in Sources */ = {isa = PBXBuildFile; fileRef = F338A1172D1B37D8007CDFDF /* SDL_tray.m */; };
|
||||||
F338A11A2D1B37E4007CDFDF /* SDL_tray.c in Sources */ = {isa = PBXBuildFile; fileRef = F338A1192D1B37E4007CDFDF /* SDL_tray.c */; };
|
F338A11A2D1B37E4007CDFDF /* SDL_tray.c in Sources */ = {isa = PBXBuildFile; fileRef = F338A1192D1B37E4007CDFDF /* SDL_tray.c */; };
|
||||||
F3395BA82D9A5971007246C8 /* SDL_hidapi_8bitdo.c in Sources */ = {isa = PBXBuildFile; fileRef = F3395BA72D9A5971007246C8 /* SDL_hidapi_8bitdo.c */; };
|
|
||||||
F34400342D40217A003F26D7 /* LICENSE.txt in Resources */ = {isa = PBXBuildFile; fileRef = F373DA182D388A1E002158FA /* LICENSE.txt */; };
|
F34400342D40217A003F26D7 /* LICENSE.txt in Resources */ = {isa = PBXBuildFile; fileRef = F373DA182D388A1E002158FA /* LICENSE.txt */; };
|
||||||
F34400362D40217A003F26D7 /* README.md in Resources */ = {isa = PBXBuildFile; fileRef = F373DA192D388A1E002158FA /* README.md */; };
|
F34400362D40217A003F26D7 /* README.md in Resources */ = {isa = PBXBuildFile; fileRef = F373DA192D388A1E002158FA /* README.md */; };
|
||||||
F344003D2D4022E1003F26D7 /* INSTALL.md in Resources */ = {isa = PBXBuildFile; fileRef = F344003C2D4022E1003F26D7 /* INSTALL.md */; };
|
F344003D2D4022E1003F26D7 /* INSTALL.md in Resources */ = {isa = PBXBuildFile; fileRef = F344003C2D4022E1003F26D7 /* INSTALL.md */; };
|
||||||
@@ -414,8 +409,6 @@
|
|||||||
F386F6F02884663E001840AA /* SDL_utils_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F386F6E52884663E001840AA /* SDL_utils_c.h */; };
|
F386F6F02884663E001840AA /* SDL_utils_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F386F6E52884663E001840AA /* SDL_utils_c.h */; };
|
||||||
F386F6F92884663E001840AA /* SDL_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = F386F6E62884663E001840AA /* SDL_utils.c */; };
|
F386F6F92884663E001840AA /* SDL_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = F386F6E62884663E001840AA /* SDL_utils.c */; };
|
||||||
F388C95528B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
F388C95528B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||||
F38C72492CEEB1DE000B0A90 /* SDL_hidapi_steam_triton.c in Sources */ = {isa = PBXBuildFile; fileRef = F38C72482CEEB1DE000B0A90 /* SDL_hidapi_steam_triton.c */; };
|
|
||||||
F39344CE2E99771B0056986F /* SDL_dlopennote.h in Headers */ = {isa = PBXBuildFile; fileRef = F39344CD2E99771B0056986F /* SDL_dlopennote.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
|
||||||
F395BF6525633B2400942BFF /* SDL_crc32.c in Sources */ = {isa = PBXBuildFile; fileRef = F395BF6425633B2400942BFF /* SDL_crc32.c */; };
|
F395BF6525633B2400942BFF /* SDL_crc32.c in Sources */ = {isa = PBXBuildFile; fileRef = F395BF6425633B2400942BFF /* SDL_crc32.c */; };
|
||||||
F395C1932569C68F00942BFF /* SDL_iokitjoystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F395C1912569C68E00942BFF /* SDL_iokitjoystick_c.h */; };
|
F395C1932569C68F00942BFF /* SDL_iokitjoystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F395C1912569C68E00942BFF /* SDL_iokitjoystick_c.h */; };
|
||||||
F395C19C2569C68F00942BFF /* SDL_iokitjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = F395C1922569C68E00942BFF /* SDL_iokitjoystick.c */; };
|
F395C19C2569C68F00942BFF /* SDL_iokitjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = F395C1922569C68E00942BFF /* SDL_iokitjoystick.c */; };
|
||||||
@@ -440,7 +433,6 @@
|
|||||||
F3B439532C935C2C00792030 /* SDL_posixprocess.c in Sources */ = {isa = PBXBuildFile; fileRef = F3B439522C935C2C00792030 /* SDL_posixprocess.c */; };
|
F3B439532C935C2C00792030 /* SDL_posixprocess.c in Sources */ = {isa = PBXBuildFile; fileRef = F3B439522C935C2C00792030 /* SDL_posixprocess.c */; };
|
||||||
F3B439562C937DAB00792030 /* SDL_process.c in Sources */ = {isa = PBXBuildFile; fileRef = F3B439542C937DAB00792030 /* SDL_process.c */; };
|
F3B439562C937DAB00792030 /* SDL_process.c in Sources */ = {isa = PBXBuildFile; fileRef = F3B439542C937DAB00792030 /* SDL_process.c */; };
|
||||||
F3B439572C937DAB00792030 /* SDL_sysprocess.h in Headers */ = {isa = PBXBuildFile; fileRef = F3B439552C937DAB00792030 /* SDL_sysprocess.h */; };
|
F3B439572C937DAB00792030 /* SDL_sysprocess.h in Headers */ = {isa = PBXBuildFile; fileRef = F3B439552C937DAB00792030 /* SDL_sysprocess.h */; };
|
||||||
F3B6B80A2DC3EA54004954FD /* SDL_hidapi_gip.c in Sources */ = {isa = PBXBuildFile; fileRef = F3B6B8092DC3EA54004954FD /* SDL_hidapi_gip.c */; };
|
|
||||||
F3C1BD752D1F1A3000846529 /* SDL_tray_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C1BD742D1F1A3000846529 /* SDL_tray_utils.c */; };
|
F3C1BD752D1F1A3000846529 /* SDL_tray_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C1BD742D1F1A3000846529 /* SDL_tray_utils.c */; };
|
||||||
F3C1BD762D1F1A3000846529 /* SDL_tray_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = F3C1BD732D1F1A3000846529 /* SDL_tray_utils.h */; };
|
F3C1BD762D1F1A3000846529 /* SDL_tray_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = F3C1BD732D1F1A3000846529 /* SDL_tray_utils.h */; };
|
||||||
F3C2CB222C5DDDB2004D7998 /* SDL_categories_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3C2CB202C5DDDB2004D7998 /* SDL_categories_c.h */; };
|
F3C2CB222C5DDDB2004D7998 /* SDL_categories_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3C2CB202C5DDDB2004D7998 /* SDL_categories_c.h */; };
|
||||||
@@ -522,18 +514,10 @@
|
|||||||
F3D60A8328C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
F3D60A8328C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||||
F3D8BDFC2D6D2C7000B22FA1 /* SDL_eventwatch_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3D8BDFB2D6D2C7000B22FA1 /* SDL_eventwatch_c.h */; };
|
F3D8BDFC2D6D2C7000B22FA1 /* SDL_eventwatch_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3D8BDFB2D6D2C7000B22FA1 /* SDL_eventwatch_c.h */; };
|
||||||
F3D8BDFD2D6D2C7000B22FA1 /* SDL_eventwatch.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D8BDFA2D6D2C7000B22FA1 /* SDL_eventwatch.c */; };
|
F3D8BDFD2D6D2C7000B22FA1 /* SDL_eventwatch.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D8BDFA2D6D2C7000B22FA1 /* SDL_eventwatch.c */; };
|
||||||
F3DB66342EA9ACC300568044 /* SDL_rotate.c in Sources */ = {isa = PBXBuildFile; fileRef = F3DB66332EA9ACC300568044 /* SDL_rotate.c */; };
|
|
||||||
F3DB66352EA9ACC300568044 /* SDL_rotate.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DB66322EA9ACC300568044 /* SDL_rotate.h */; };
|
|
||||||
F3DC38C92E5FC60300CD73DE /* SDL_libusb.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DC38C72E5FC60300CD73DE /* SDL_libusb.h */; };
|
|
||||||
F3DC38CA2E5FC60300CD73DE /* SDL_libusb.c in Sources */ = {isa = PBXBuildFile; fileRef = F3DC38C82E5FC60300CD73DE /* SDL_libusb.c */; };
|
|
||||||
F3DDCC562AFD42B600B0842B /* SDL_clipboard_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DDCC4D2AFD42B500B0842B /* SDL_clipboard_c.h */; };
|
F3DDCC562AFD42B600B0842B /* SDL_clipboard_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DDCC4D2AFD42B500B0842B /* SDL_clipboard_c.h */; };
|
||||||
F3DDCC5B2AFD42B600B0842B /* SDL_video_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DDCC522AFD42B600B0842B /* SDL_video_c.h */; };
|
F3DDCC5B2AFD42B600B0842B /* SDL_video_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DDCC522AFD42B600B0842B /* SDL_video_c.h */; };
|
||||||
F3DDCC5D2AFD42B600B0842B /* SDL_rect_impl.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DDCC542AFD42B600B0842B /* SDL_rect_impl.h */; };
|
F3DDCC5D2AFD42B600B0842B /* SDL_rect_impl.h in Headers */ = {isa = PBXBuildFile; fileRef = F3DDCC542AFD42B600B0842B /* SDL_rect_impl.h */; };
|
||||||
F3E5A6EB2AD5E0E600293D83 /* SDL_properties.c in Sources */ = {isa = PBXBuildFile; fileRef = F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */; };
|
F3E5A6EB2AD5E0E600293D83 /* SDL_properties.c in Sources */ = {isa = PBXBuildFile; fileRef = F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */; };
|
||||||
F3E6C3932EE9F20000A6B39E /* SDL_report_descriptor.c in Sources */ = {isa = PBXBuildFile; fileRef = F3E6C3922EE9F20000A6B39E /* SDL_report_descriptor.c */; };
|
|
||||||
F3E6C3942EE9F20000A6B39E /* SDL_hidapi_flydigi.h in Headers */ = {isa = PBXBuildFile; fileRef = F3E6C38F2EE9F20000A6B39E /* SDL_hidapi_flydigi.h */; };
|
|
||||||
F3E6C3952EE9F20000A6B39E /* SDL_hidapi_sinput.h in Headers */ = {isa = PBXBuildFile; fileRef = F3E6C3902EE9F20000A6B39E /* SDL_hidapi_sinput.h */; };
|
|
||||||
F3E6C3962EE9F20000A6B39E /* SDL_report_descriptor.h in Headers */ = {isa = PBXBuildFile; fileRef = F3E6C3912EE9F20000A6B39E /* SDL_report_descriptor.h */; };
|
|
||||||
F3EFA5ED2D5AB97300BCF22F /* SDL_stb_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EFA5EA2D5AB97300BCF22F /* SDL_stb_c.h */; };
|
F3EFA5ED2D5AB97300BCF22F /* SDL_stb_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EFA5EA2D5AB97300BCF22F /* SDL_stb_c.h */; };
|
||||||
F3EFA5EE2D5AB97300BCF22F /* stb_image.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EFA5EC2D5AB97300BCF22F /* stb_image.h */; };
|
F3EFA5EE2D5AB97300BCF22F /* stb_image.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EFA5EC2D5AB97300BCF22F /* stb_image.h */; };
|
||||||
F3EFA5EF2D5AB97300BCF22F /* SDL_surface_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EFA5EB2D5AB97300BCF22F /* SDL_surface_c.h */; };
|
F3EFA5EF2D5AB97300BCF22F /* SDL_surface_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EFA5EB2D5AB97300BCF22F /* SDL_surface_c.h */; };
|
||||||
@@ -551,7 +535,6 @@
|
|||||||
F3FA5A232B59ACE000FEAD97 /* yuv_rgb_lsx.c in Sources */ = {isa = PBXBuildFile; fileRef = F3FA5A1A2B59ACE000FEAD97 /* yuv_rgb_lsx.c */; };
|
F3FA5A232B59ACE000FEAD97 /* yuv_rgb_lsx.c in Sources */ = {isa = PBXBuildFile; fileRef = F3FA5A1A2B59ACE000FEAD97 /* yuv_rgb_lsx.c */; };
|
||||||
F3FA5A242B59ACE000FEAD97 /* yuv_rgb_lsx.h in Headers */ = {isa = PBXBuildFile; fileRef = F3FA5A1B2B59ACE000FEAD97 /* yuv_rgb_lsx.h */; };
|
F3FA5A242B59ACE000FEAD97 /* yuv_rgb_lsx.h in Headers */ = {isa = PBXBuildFile; fileRef = F3FA5A1B2B59ACE000FEAD97 /* yuv_rgb_lsx.h */; };
|
||||||
F3FA5A252B59ACE000FEAD97 /* yuv_rgb_common.h in Headers */ = {isa = PBXBuildFile; fileRef = F3FA5A1C2B59ACE000FEAD97 /* yuv_rgb_common.h */; };
|
F3FA5A252B59ACE000FEAD97 /* yuv_rgb_common.h in Headers */ = {isa = PBXBuildFile; fileRef = F3FA5A1C2B59ACE000FEAD97 /* yuv_rgb_common.h */; };
|
||||||
F3FBB1082DDF93AB0000F99F /* SDL_hidapi_flydigi.c in Sources */ = {isa = PBXBuildFile; fileRef = F3395BA72D9A5971007246C9 /* SDL_hidapi_flydigi.c */; };
|
|
||||||
F3FD042E2C9B755700824C4C /* SDL_hidapi_nintendo.h in Headers */ = {isa = PBXBuildFile; fileRef = F3FD042C2C9B755700824C4C /* SDL_hidapi_nintendo.h */; };
|
F3FD042E2C9B755700824C4C /* SDL_hidapi_nintendo.h in Headers */ = {isa = PBXBuildFile; fileRef = F3FD042C2C9B755700824C4C /* SDL_hidapi_nintendo.h */; };
|
||||||
F3FD042F2C9B755700824C4C /* SDL_hidapi_steam_hori.c in Sources */ = {isa = PBXBuildFile; fileRef = F3FD042D2C9B755700824C4C /* SDL_hidapi_steam_hori.c */; };
|
F3FD042F2C9B755700824C4C /* SDL_hidapi_steam_hori.c in Sources */ = {isa = PBXBuildFile; fileRef = F3FD042D2C9B755700824C4C /* SDL_hidapi_steam_hori.c */; };
|
||||||
FA73671D19A540EF004122E4 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA73671C19A540EF004122E4 /* CoreVideo.framework */; platformFilters = (ios, maccatalyst, macos, tvos, ); settings = {ATTRIBUTES = (Required, ); }; };
|
FA73671D19A540EF004122E4 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA73671C19A540EF004122E4 /* CoreVideo.framework */; platformFilters = (ios, maccatalyst, macos, tvos, ); settings = {ATTRIBUTES = (Required, ); }; };
|
||||||
@@ -610,7 +593,6 @@
|
|||||||
007317C10858E15000B2BC32 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
|
007317C10858E15000B2BC32 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
|
||||||
00CFA89C106B4BA100758660 /* ForceFeedback.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ForceFeedback.framework; path = System/Library/Frameworks/ForceFeedback.framework; sourceTree = SDKROOT; };
|
00CFA89C106B4BA100758660 /* ForceFeedback.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ForceFeedback.framework; path = System/Library/Frameworks/ForceFeedback.framework; sourceTree = SDKROOT; };
|
||||||
00D0D08310675DD9004B05EF /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };
|
00D0D08310675DD9004B05EF /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };
|
||||||
02D6A1C128A84B8F00A7F001 /* SDL_hidapi_sinput.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_sinput.c; sourceTree = "<group>"; };
|
|
||||||
1485C32F2BBA4A0C0063985B /* UniformTypeIdentifiers.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniformTypeIdentifiers.framework; path = System/Library/Frameworks/UniformTypeIdentifiers.framework; sourceTree = SDKROOT; };
|
1485C32F2BBA4A0C0063985B /* UniformTypeIdentifiers.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniformTypeIdentifiers.framework; path = System/Library/Frameworks/UniformTypeIdentifiers.framework; sourceTree = SDKROOT; };
|
||||||
5616CA49252BB2A5005D5928 /* SDL_url.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_url.c; sourceTree = "<group>"; };
|
5616CA49252BB2A5005D5928 /* SDL_url.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_url.c; sourceTree = "<group>"; };
|
||||||
5616CA4A252BB2A6005D5928 /* SDL_sysurl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysurl.h; sourceTree = "<group>"; };
|
5616CA4A252BB2A6005D5928 /* SDL_sysurl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysurl.h; sourceTree = "<group>"; };
|
||||||
@@ -621,16 +603,11 @@
|
|||||||
566E26CD246274CB00718109 /* SDL_locale.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_locale.c; path = locale/SDL_locale.c; sourceTree = "<group>"; };
|
566E26CD246274CB00718109 /* SDL_locale.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_locale.c; path = locale/SDL_locale.c; sourceTree = "<group>"; };
|
||||||
566E26CE246274CC00718109 /* SDL_syslocale.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_syslocale.h; path = locale/SDL_syslocale.h; sourceTree = "<group>"; };
|
566E26CE246274CC00718109 /* SDL_syslocale.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_syslocale.h; path = locale/SDL_syslocale.h; sourceTree = "<group>"; };
|
||||||
56A2373229F9C113003CCA5F /* SDL_sysrwlock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysrwlock.c; sourceTree = "<group>"; };
|
56A2373229F9C113003CCA5F /* SDL_sysrwlock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysrwlock.c; sourceTree = "<group>"; };
|
||||||
63124A412E5C357500A53610 /* SDL_hidapi_zuiki.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_zuiki.c; sourceTree = "<group>"; };
|
|
||||||
6312C66C2B42341400A7BB00 /* SDL_murmur3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_murmur3.c; sourceTree = "<group>"; };
|
6312C66C2B42341400A7BB00 /* SDL_murmur3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_murmur3.c; sourceTree = "<group>"; };
|
||||||
63134A232A7902FD0021E9A6 /* SDL_pen_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_pen_c.h; sourceTree = "<group>"; };
|
63134A232A7902FD0021E9A6 /* SDL_pen_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_pen_c.h; sourceTree = "<group>"; };
|
||||||
63134A242A7902FD0021E9A6 /* SDL_pen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_pen.c; sourceTree = "<group>"; };
|
63134A242A7902FD0021E9A6 /* SDL_pen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_pen.c; sourceTree = "<group>"; };
|
||||||
75E09158241EA924004729E1 /* SDL_virtualjoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_virtualjoystick.c; sourceTree = "<group>"; };
|
75E09158241EA924004729E1 /* SDL_virtualjoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_virtualjoystick.c; sourceTree = "<group>"; };
|
||||||
75E09159241EA924004729E1 /* SDL_virtualjoystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_virtualjoystick_c.h; sourceTree = "<group>"; };
|
75E09159241EA924004729E1 /* SDL_virtualjoystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_virtualjoystick_c.h; sourceTree = "<group>"; };
|
||||||
89E5801D2D03602200DAF6D3 /* SDL_hidapi_lg4ff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_lg4ff.c; sourceTree = "<group>"; };
|
|
||||||
89E5801F2D03606400DAF6D3 /* SDL_hidapihaptic.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapihaptic.c; sourceTree = "<group>"; };
|
|
||||||
89E580202D03606400DAF6D3 /* SDL_hidapihaptic_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_hidapihaptic_c.h; sourceTree = "<group>"; };
|
|
||||||
89E580212D03606400DAF6D3 /* SDL_hidapihaptic_lg4ff.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapihaptic_lg4ff.c; sourceTree = "<group>"; };
|
|
||||||
9846B07B287A9020000C35C8 /* SDL_hidapi_shield.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_shield.c; sourceTree = "<group>"; };
|
9846B07B287A9020000C35C8 /* SDL_hidapi_shield.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_shield.c; sourceTree = "<group>"; };
|
||||||
A1626A3D2617006A003F1973 /* SDL_triangle.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_triangle.c; sourceTree = "<group>"; };
|
A1626A3D2617006A003F1973 /* SDL_triangle.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_triangle.c; sourceTree = "<group>"; };
|
||||||
A1626A512617008C003F1973 /* SDL_triangle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_triangle.h; sourceTree = "<group>"; };
|
A1626A512617008C003F1973 /* SDL_triangle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_triangle.h; sourceTree = "<group>"; };
|
||||||
@@ -823,7 +800,6 @@
|
|||||||
A7D8A7C423E2513E00DCD162 /* SDL_hidapijoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapijoystick.c; sourceTree = "<group>"; };
|
A7D8A7C423E2513E00DCD162 /* SDL_hidapijoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapijoystick.c; sourceTree = "<group>"; };
|
||||||
A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_xboxone.c; sourceTree = "<group>"; };
|
A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_xboxone.c; sourceTree = "<group>"; };
|
||||||
A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_switch.c; sourceTree = "<group>"; };
|
A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_switch.c; sourceTree = "<group>"; };
|
||||||
A7D8A7C623E2513E00DCD163 /* SDL_hidapi_switch2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_switch2.c; sourceTree = "<group>"; };
|
|
||||||
A7D8A7C723E2513E00DCD162 /* SDL_hidapijoystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_hidapijoystick_c.h; sourceTree = "<group>"; };
|
A7D8A7C723E2513E00DCD162 /* SDL_hidapijoystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_hidapijoystick_c.h; sourceTree = "<group>"; };
|
||||||
A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_xbox360w.c; sourceTree = "<group>"; };
|
A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_xbox360w.c; sourceTree = "<group>"; };
|
||||||
A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_gamecube.c; sourceTree = "<group>"; };
|
A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_gamecube.c; sourceTree = "<group>"; };
|
||||||
@@ -882,6 +858,7 @@
|
|||||||
A7D8A8F123E2514000DCD162 /* SDL_drawline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawline.c; sourceTree = "<group>"; };
|
A7D8A8F123E2514000DCD162 /* SDL_drawline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawline.c; sourceTree = "<group>"; };
|
||||||
A7D8A8F223E2514000DCD162 /* SDL_blendline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendline.h; sourceTree = "<group>"; };
|
A7D8A8F223E2514000DCD162 /* SDL_blendline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendline.h; sourceTree = "<group>"; };
|
||||||
A7D8A8F323E2514000DCD162 /* SDL_drawpoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawpoint.h; sourceTree = "<group>"; };
|
A7D8A8F323E2514000DCD162 /* SDL_drawpoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawpoint.h; sourceTree = "<group>"; };
|
||||||
|
A7D8A8F423E2514000DCD162 /* SDL_rotate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_rotate.c; sourceTree = "<group>"; };
|
||||||
A7D8A8F523E2514000DCD162 /* SDL_render_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_render_sw_c.h; sourceTree = "<group>"; };
|
A7D8A8F523E2514000DCD162 /* SDL_render_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_render_sw_c.h; sourceTree = "<group>"; };
|
||||||
A7D8A8F623E2514000DCD162 /* SDL_blendfillrect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendfillrect.h; sourceTree = "<group>"; };
|
A7D8A8F623E2514000DCD162 /* SDL_blendfillrect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendfillrect.h; sourceTree = "<group>"; };
|
||||||
A7D8A8F723E2514000DCD162 /* SDL_drawline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawline.h; sourceTree = "<group>"; };
|
A7D8A8F723E2514000DCD162 /* SDL_drawline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawline.h; sourceTree = "<group>"; };
|
||||||
@@ -891,6 +868,8 @@
|
|||||||
A7D8A8FB23E2514000DCD162 /* SDL_blendline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendline.c; sourceTree = "<group>"; };
|
A7D8A8FB23E2514000DCD162 /* SDL_blendline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendline.c; sourceTree = "<group>"; };
|
||||||
A7D8A8FC23E2514000DCD162 /* SDL_drawpoint.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawpoint.c; sourceTree = "<group>"; };
|
A7D8A8FC23E2514000DCD162 /* SDL_drawpoint.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawpoint.c; sourceTree = "<group>"; };
|
||||||
A7D8A8FD23E2514000DCD162 /* SDL_blendfillrect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendfillrect.c; sourceTree = "<group>"; };
|
A7D8A8FD23E2514000DCD162 /* SDL_blendfillrect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendfillrect.c; sourceTree = "<group>"; };
|
||||||
|
A7D8A8FE23E2514000DCD162 /* SDL_rotate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rotate.h; sourceTree = "<group>"; };
|
||||||
|
A7D8A8FF23E2514000DCD162 /* SDL_d3dmath.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_d3dmath.c; sourceTree = "<group>"; };
|
||||||
A7D8A90423E2514000DCD162 /* SDL_render_gles2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gles2.c; sourceTree = "<group>"; };
|
A7D8A90423E2514000DCD162 /* SDL_render_gles2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gles2.c; sourceTree = "<group>"; };
|
||||||
A7D8A90523E2514000DCD162 /* SDL_shaders_gles2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_gles2.h; sourceTree = "<group>"; };
|
A7D8A90523E2514000DCD162 /* SDL_shaders_gles2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_gles2.h; sourceTree = "<group>"; };
|
||||||
A7D8A90623E2514000DCD162 /* SDL_gles2funcs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gles2funcs.h; sourceTree = "<group>"; };
|
A7D8A90623E2514000DCD162 /* SDL_gles2funcs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gles2funcs.h; sourceTree = "<group>"; };
|
||||||
@@ -959,8 +938,6 @@
|
|||||||
F32DDACE2AB795A30041EAA5 /* SDL_audioresample.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audioresample.c; sourceTree = "<group>"; };
|
F32DDACE2AB795A30041EAA5 /* SDL_audioresample.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audioresample.c; sourceTree = "<group>"; };
|
||||||
F338A1172D1B37D8007CDFDF /* SDL_tray.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SDL_tray.m; sourceTree = "<group>"; };
|
F338A1172D1B37D8007CDFDF /* SDL_tray.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SDL_tray.m; sourceTree = "<group>"; };
|
||||||
F338A1192D1B37E4007CDFDF /* SDL_tray.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_tray.c; sourceTree = "<group>"; };
|
F338A1192D1B37E4007CDFDF /* SDL_tray.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_tray.c; sourceTree = "<group>"; };
|
||||||
F3395BA72D9A5971007246C8 /* SDL_hidapi_8bitdo.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_8bitdo.c; sourceTree = "<group>"; };
|
|
||||||
F3395BA72D9A5971007246C9 /* SDL_hidapi_flydigi.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_flydigi.c; sourceTree = "<group>"; };
|
|
||||||
F344003C2D4022E1003F26D7 /* INSTALL.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = INSTALL.md; sourceTree = "<group>"; };
|
F344003C2D4022E1003F26D7 /* INSTALL.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = INSTALL.md; sourceTree = "<group>"; };
|
||||||
F362B9152B3349E200D30B94 /* controller_list.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = controller_list.h; sourceTree = "<group>"; };
|
F362B9152B3349E200D30B94 /* controller_list.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = controller_list.h; sourceTree = "<group>"; };
|
||||||
F362B9162B3349E200D30B94 /* SDL_gamepad_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gamepad_c.h; sourceTree = "<group>"; };
|
F362B9162B3349E200D30B94 /* SDL_gamepad_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gamepad_c.h; sourceTree = "<group>"; };
|
||||||
@@ -1002,8 +979,6 @@
|
|||||||
F386F6E52884663E001840AA /* SDL_utils_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_utils_c.h; sourceTree = "<group>"; };
|
F386F6E52884663E001840AA /* SDL_utils_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_utils_c.h; sourceTree = "<group>"; };
|
||||||
F386F6E62884663E001840AA /* SDL_utils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_utils.c; sourceTree = "<group>"; };
|
F386F6E62884663E001840AA /* SDL_utils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_utils.c; sourceTree = "<group>"; };
|
||||||
F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_ps3.c; sourceTree = "<group>"; };
|
F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_ps3.c; sourceTree = "<group>"; };
|
||||||
F38C72482CEEB1DE000B0A90 /* SDL_hidapi_steam_triton.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_steam_triton.c; sourceTree = "<group>"; };
|
|
||||||
F39344CD2E99771B0056986F /* SDL_dlopennote.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_dlopennote.h; sourceTree = "<group>"; };
|
|
||||||
F395BF6425633B2400942BFF /* SDL_crc32.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_crc32.c; sourceTree = "<group>"; };
|
F395BF6425633B2400942BFF /* SDL_crc32.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_crc32.c; sourceTree = "<group>"; };
|
||||||
F395C1912569C68E00942BFF /* SDL_iokitjoystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_iokitjoystick_c.h; sourceTree = "<group>"; };
|
F395C1912569C68E00942BFF /* SDL_iokitjoystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_iokitjoystick_c.h; sourceTree = "<group>"; };
|
||||||
F395C1922569C68E00942BFF /* SDL_iokitjoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_iokitjoystick.c; sourceTree = "<group>"; };
|
F395C1922569C68E00942BFF /* SDL_iokitjoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_iokitjoystick.c; sourceTree = "<group>"; };
|
||||||
@@ -1027,7 +1002,6 @@
|
|||||||
F3B439522C935C2C00792030 /* SDL_posixprocess.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_posixprocess.c; sourceTree = "<group>"; };
|
F3B439522C935C2C00792030 /* SDL_posixprocess.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_posixprocess.c; sourceTree = "<group>"; };
|
||||||
F3B439542C937DAB00792030 /* SDL_process.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_process.c; sourceTree = "<group>"; };
|
F3B439542C937DAB00792030 /* SDL_process.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_process.c; sourceTree = "<group>"; };
|
||||||
F3B439552C937DAB00792030 /* SDL_sysprocess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysprocess.h; sourceTree = "<group>"; };
|
F3B439552C937DAB00792030 /* SDL_sysprocess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysprocess.h; sourceTree = "<group>"; };
|
||||||
F3B6B8092DC3EA54004954FD /* SDL_hidapi_gip.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_gip.c; sourceTree = "<group>"; };
|
|
||||||
F3C1BD732D1F1A3000846529 /* SDL_tray_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_tray_utils.h; sourceTree = "<group>"; };
|
F3C1BD732D1F1A3000846529 /* SDL_tray_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_tray_utils.h; sourceTree = "<group>"; };
|
||||||
F3C1BD742D1F1A3000846529 /* SDL_tray_utils.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_tray_utils.c; sourceTree = "<group>"; };
|
F3C1BD742D1F1A3000846529 /* SDL_tray_utils.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_tray_utils.c; sourceTree = "<group>"; };
|
||||||
F3C2CB202C5DDDB2004D7998 /* SDL_categories_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_categories_c.h; sourceTree = "<group>"; };
|
F3C2CB202C5DDDB2004D7998 /* SDL_categories_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_categories_c.h; sourceTree = "<group>"; };
|
||||||
@@ -1109,18 +1083,10 @@
|
|||||||
F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_wii.c; sourceTree = "<group>"; };
|
F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_wii.c; sourceTree = "<group>"; };
|
||||||
F3D8BDFA2D6D2C7000B22FA1 /* SDL_eventwatch.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_eventwatch.c; sourceTree = "<group>"; };
|
F3D8BDFA2D6D2C7000B22FA1 /* SDL_eventwatch.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_eventwatch.c; sourceTree = "<group>"; };
|
||||||
F3D8BDFB2D6D2C7000B22FA1 /* SDL_eventwatch_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_eventwatch_c.h; sourceTree = "<group>"; };
|
F3D8BDFB2D6D2C7000B22FA1 /* SDL_eventwatch_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_eventwatch_c.h; sourceTree = "<group>"; };
|
||||||
F3DB66322EA9ACC300568044 /* SDL_rotate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_rotate.h; sourceTree = "<group>"; };
|
|
||||||
F3DB66332EA9ACC300568044 /* SDL_rotate.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_rotate.c; sourceTree = "<group>"; };
|
|
||||||
F3DC38C72E5FC60300CD73DE /* SDL_libusb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_libusb.h; sourceTree = "<group>"; };
|
|
||||||
F3DC38C82E5FC60300CD73DE /* SDL_libusb.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_libusb.c; sourceTree = "<group>"; };
|
|
||||||
F3DDCC4D2AFD42B500B0842B /* SDL_clipboard_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_clipboard_c.h; sourceTree = "<group>"; };
|
F3DDCC4D2AFD42B500B0842B /* SDL_clipboard_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_clipboard_c.h; sourceTree = "<group>"; };
|
||||||
F3DDCC522AFD42B600B0842B /* SDL_video_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_video_c.h; sourceTree = "<group>"; };
|
F3DDCC522AFD42B600B0842B /* SDL_video_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_video_c.h; sourceTree = "<group>"; };
|
||||||
F3DDCC542AFD42B600B0842B /* SDL_rect_impl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rect_impl.h; sourceTree = "<group>"; };
|
F3DDCC542AFD42B600B0842B /* SDL_rect_impl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rect_impl.h; sourceTree = "<group>"; };
|
||||||
F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_properties.c; sourceTree = "<group>"; };
|
F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_properties.c; sourceTree = "<group>"; };
|
||||||
F3E6C38F2EE9F20000A6B39E /* SDL_hidapi_flydigi.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_hidapi_flydigi.h; sourceTree = "<group>"; };
|
|
||||||
F3E6C3902EE9F20000A6B39E /* SDL_hidapi_sinput.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_hidapi_sinput.h; sourceTree = "<group>"; };
|
|
||||||
F3E6C3912EE9F20000A6B39E /* SDL_report_descriptor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_report_descriptor.h; sourceTree = "<group>"; };
|
|
||||||
F3E6C3922EE9F20000A6B39E /* SDL_report_descriptor.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_report_descriptor.c; sourceTree = "<group>"; };
|
|
||||||
F3EFA5E92D5AB97300BCF22F /* SDL_stb.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_stb.c; sourceTree = "<group>"; };
|
F3EFA5E92D5AB97300BCF22F /* SDL_stb.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_stb.c; sourceTree = "<group>"; };
|
||||||
F3EFA5EA2D5AB97300BCF22F /* SDL_stb_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_stb_c.h; sourceTree = "<group>"; };
|
F3EFA5EA2D5AB97300BCF22F /* SDL_stb_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_stb_c.h; sourceTree = "<group>"; };
|
||||||
F3EFA5EB2D5AB97300BCF22F /* SDL_surface_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_surface_c.h; sourceTree = "<group>"; };
|
F3EFA5EB2D5AB97300BCF22F /* SDL_surface_c.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_surface_c.h; sourceTree = "<group>"; };
|
||||||
@@ -1277,7 +1243,6 @@
|
|||||||
F3D46A8B2D20625800D9CBDF /* SDL_copying.h */,
|
F3D46A8B2D20625800D9CBDF /* SDL_copying.h */,
|
||||||
F3D46A8C2D20625800D9CBDF /* SDL_cpuinfo.h */,
|
F3D46A8C2D20625800D9CBDF /* SDL_cpuinfo.h */,
|
||||||
F3D46A8D2D20625800D9CBDF /* SDL_dialog.h */,
|
F3D46A8D2D20625800D9CBDF /* SDL_dialog.h */,
|
||||||
F39344CD2E99771B0056986F /* SDL_dlopennote.h */,
|
|
||||||
F3D46A8E2D20625800D9CBDF /* SDL_egl.h */,
|
F3D46A8E2D20625800D9CBDF /* SDL_egl.h */,
|
||||||
F3D46A8F2D20625800D9CBDF /* SDL_endian.h */,
|
F3D46A8F2D20625800D9CBDF /* SDL_endian.h */,
|
||||||
F3D46A902D20625800D9CBDF /* SDL_error.h */,
|
F3D46A902D20625800D9CBDF /* SDL_error.h */,
|
||||||
@@ -1431,8 +1396,6 @@
|
|||||||
children = (
|
children = (
|
||||||
F3ADAB8C2576F08500A6B1D9 /* ios */,
|
F3ADAB8C2576F08500A6B1D9 /* ios */,
|
||||||
5616CA48252BB285005D5928 /* macos */,
|
5616CA48252BB285005D5928 /* macos */,
|
||||||
F3DC38C72E5FC60300CD73DE /* SDL_libusb.h */,
|
|
||||||
F3DC38C82E5FC60300CD73DE /* SDL_libusb.c */,
|
|
||||||
5616CA4A252BB2A6005D5928 /* SDL_sysurl.h */,
|
5616CA4A252BB2A6005D5928 /* SDL_sysurl.h */,
|
||||||
5616CA49252BB2A5005D5928 /* SDL_url.c */,
|
5616CA49252BB2A5005D5928 /* SDL_url.c */,
|
||||||
);
|
);
|
||||||
@@ -1514,16 +1477,6 @@
|
|||||||
path = virtual;
|
path = virtual;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
89E580222D03606400DAF6D3 /* hidapi */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
89E5801F2D03606400DAF6D3 /* SDL_hidapihaptic.c */,
|
|
||||||
89E580202D03606400DAF6D3 /* SDL_hidapihaptic_c.h */,
|
|
||||||
89E580212D03606400DAF6D3 /* SDL_hidapihaptic_lg4ff.c */,
|
|
||||||
);
|
|
||||||
path = hidapi;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
A75FDAA423E2790500529352 /* ios */ = {
|
A75FDAA423E2790500529352 /* ios */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -1582,7 +1535,6 @@
|
|||||||
A7D8A5C223E2513D00DCD162 /* haptic */ = {
|
A7D8A5C223E2513D00DCD162 /* haptic */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
89E580222D03606400DAF6D3 /* hidapi */,
|
|
||||||
A7D8A5CD23E2513D00DCD162 /* darwin */,
|
A7D8A5CD23E2513D00DCD162 /* darwin */,
|
||||||
A7D8A5C323E2513D00DCD162 /* dummy */,
|
A7D8A5C323E2513D00DCD162 /* dummy */,
|
||||||
A7D8A5C623E2513D00DCD162 /* SDL_haptic_c.h */,
|
A7D8A5C623E2513D00DCD162 /* SDL_haptic_c.h */,
|
||||||
@@ -1671,8 +1623,6 @@
|
|||||||
F3DDCC542AFD42B600B0842B /* SDL_rect_impl.h */,
|
F3DDCC542AFD42B600B0842B /* SDL_rect_impl.h */,
|
||||||
A7D8A61523E2513D00DCD162 /* SDL_RLEaccel.c */,
|
A7D8A61523E2513D00DCD162 /* SDL_RLEaccel.c */,
|
||||||
A7D8A76723E2513E00DCD162 /* SDL_RLEaccel_c.h */,
|
A7D8A76723E2513E00DCD162 /* SDL_RLEaccel_c.h */,
|
||||||
F3DB66322EA9ACC300568044 /* SDL_rotate.h */,
|
|
||||||
F3DB66332EA9ACC300568044 /* SDL_rotate.c */,
|
|
||||||
F3EFA5E92D5AB97300BCF22F /* SDL_stb.c */,
|
F3EFA5E92D5AB97300BCF22F /* SDL_stb.c */,
|
||||||
F3EFA5EA2D5AB97300BCF22F /* SDL_stb_c.h */,
|
F3EFA5EA2D5AB97300BCF22F /* SDL_stb_c.h */,
|
||||||
A7D8A60323E2513D00DCD162 /* SDL_stretch.c */,
|
A7D8A60323E2513D00DCD162 /* SDL_stretch.c */,
|
||||||
@@ -1954,13 +1904,8 @@
|
|||||||
A7D8A7BE23E2513E00DCD162 /* hidapi */ = {
|
A7D8A7BE23E2513E00DCD162 /* hidapi */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F3395BA72D9A5971007246C8 /* SDL_hidapi_8bitdo.c */,
|
|
||||||
F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */,
|
F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */,
|
||||||
F3E6C38F2EE9F20000A6B39E /* SDL_hidapi_flydigi.h */,
|
|
||||||
F3395BA72D9A5971007246C9 /* SDL_hidapi_flydigi.c */,
|
|
||||||
A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */,
|
A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */,
|
||||||
F3B6B8092DC3EA54004954FD /* SDL_hidapi_gip.c */,
|
|
||||||
89E5801D2D03602200DAF6D3 /* SDL_hidapi_lg4ff.c */,
|
|
||||||
F3F07D59269640160074468B /* SDL_hidapi_luna.c */,
|
F3F07D59269640160074468B /* SDL_hidapi_luna.c */,
|
||||||
F3FD042C2C9B755700824C4C /* SDL_hidapi_nintendo.h */,
|
F3FD042C2C9B755700824C4C /* SDL_hidapi_nintendo.h */,
|
||||||
F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */,
|
F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */,
|
||||||
@@ -1969,24 +1914,17 @@
|
|||||||
A75FDBC323EA380300529352 /* SDL_hidapi_rumble.h */,
|
A75FDBC323EA380300529352 /* SDL_hidapi_rumble.h */,
|
||||||
A75FDBC423EA380300529352 /* SDL_hidapi_rumble.c */,
|
A75FDBC423EA380300529352 /* SDL_hidapi_rumble.c */,
|
||||||
9846B07B287A9020000C35C8 /* SDL_hidapi_shield.c */,
|
9846B07B287A9020000C35C8 /* SDL_hidapi_shield.c */,
|
||||||
F3E6C3902EE9F20000A6B39E /* SDL_hidapi_sinput.h */,
|
|
||||||
02D6A1C128A84B8F00A7F001 /* SDL_hidapi_sinput.c */,
|
|
||||||
F3984CCF25BCC92800374F43 /* SDL_hidapi_stadia.c */,
|
F3984CCF25BCC92800374F43 /* SDL_hidapi_stadia.c */,
|
||||||
A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */,
|
A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */,
|
||||||
F3FD042D2C9B755700824C4C /* SDL_hidapi_steam_hori.c */,
|
F3FD042D2C9B755700824C4C /* SDL_hidapi_steam_hori.c */,
|
||||||
F38C72482CEEB1DE000B0A90 /* SDL_hidapi_steam_triton.c */,
|
|
||||||
A797456F2B2E9D39009D224A /* SDL_hidapi_steamdeck.c */,
|
A797456F2B2E9D39009D224A /* SDL_hidapi_steamdeck.c */,
|
||||||
A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */,
|
A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */,
|
||||||
A7D8A7C623E2513E00DCD163 /* SDL_hidapi_switch2.c */,
|
|
||||||
F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */,
|
F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */,
|
||||||
A7D8A7C223E2513E00DCD162 /* SDL_hidapi_xbox360.c */,
|
A7D8A7C223E2513E00DCD162 /* SDL_hidapi_xbox360.c */,
|
||||||
A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */,
|
A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */,
|
||||||
A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */,
|
A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */,
|
||||||
63124A412E5C357500A53610 /* SDL_hidapi_zuiki.c */,
|
|
||||||
A7D8A7C423E2513E00DCD162 /* SDL_hidapijoystick.c */,
|
A7D8A7C423E2513E00DCD162 /* SDL_hidapijoystick.c */,
|
||||||
A7D8A7C723E2513E00DCD162 /* SDL_hidapijoystick_c.h */,
|
A7D8A7C723E2513E00DCD162 /* SDL_hidapijoystick_c.h */,
|
||||||
F3E6C3912EE9F20000A6B39E /* SDL_report_descriptor.h */,
|
|
||||||
F3E6C3922EE9F20000A6B39E /* SDL_report_descriptor.c */,
|
|
||||||
);
|
);
|
||||||
path = hidapi;
|
path = hidapi;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -2197,6 +2135,7 @@
|
|||||||
A7D8A90C23E2514000DCD162 /* opengl */,
|
A7D8A90C23E2514000DCD162 /* opengl */,
|
||||||
A7D8A90323E2514000DCD162 /* opengles2 */,
|
A7D8A90323E2514000DCD162 /* opengles2 */,
|
||||||
A7D8A8EF23E2514000DCD162 /* software */,
|
A7D8A8EF23E2514000DCD162 /* software */,
|
||||||
|
A7D8A8FF23E2514000DCD162 /* SDL_d3dmath.c */,
|
||||||
A7D8A8DC23E2514000DCD162 /* SDL_d3dmath.h */,
|
A7D8A8DC23E2514000DCD162 /* SDL_d3dmath.h */,
|
||||||
A7D8A8DB23E2514000DCD162 /* SDL_render.c */,
|
A7D8A8DB23E2514000DCD162 /* SDL_render.c */,
|
||||||
E4F7981D2AD8D86A00669F54 /* SDL_render_unsupported.c */,
|
E4F7981D2AD8D86A00669F54 /* SDL_render_unsupported.c */,
|
||||||
@@ -2237,6 +2176,8 @@
|
|||||||
A7D8A8F323E2514000DCD162 /* SDL_drawpoint.h */,
|
A7D8A8F323E2514000DCD162 /* SDL_drawpoint.h */,
|
||||||
A7D8A8F523E2514000DCD162 /* SDL_render_sw_c.h */,
|
A7D8A8F523E2514000DCD162 /* SDL_render_sw_c.h */,
|
||||||
A7D8A8F923E2514000DCD162 /* SDL_render_sw.c */,
|
A7D8A8F923E2514000DCD162 /* SDL_render_sw.c */,
|
||||||
|
A7D8A8F423E2514000DCD162 /* SDL_rotate.c */,
|
||||||
|
A7D8A8FE23E2514000DCD162 /* SDL_rotate.h */,
|
||||||
);
|
);
|
||||||
path = software;
|
path = software;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -2547,7 +2488,6 @@
|
|||||||
A7D8AEEE23E2514100DCD162 /* SDL_cocoaopengles.h in Headers */,
|
A7D8AEEE23E2514100DCD162 /* SDL_cocoaopengles.h in Headers */,
|
||||||
F3D46ACA2D20625800D9CBDF /* SDL_storage.h in Headers */,
|
F3D46ACA2D20625800D9CBDF /* SDL_storage.h in Headers */,
|
||||||
F3D46ACB2D20625800D9CBDF /* SDL_sensor.h in Headers */,
|
F3D46ACB2D20625800D9CBDF /* SDL_sensor.h in Headers */,
|
||||||
F3DB66352EA9ACC300568044 /* SDL_rotate.h in Headers */,
|
|
||||||
F3D46ACC2D20625800D9CBDF /* SDL_properties.h in Headers */,
|
F3D46ACC2D20625800D9CBDF /* SDL_properties.h in Headers */,
|
||||||
F3D46ACD2D20625800D9CBDF /* SDL_bits.h in Headers */,
|
F3D46ACD2D20625800D9CBDF /* SDL_bits.h in Headers */,
|
||||||
F3D46ACE2D20625800D9CBDF /* SDL_keyboard.h in Headers */,
|
F3D46ACE2D20625800D9CBDF /* SDL_keyboard.h in Headers */,
|
||||||
@@ -2566,9 +2506,6 @@
|
|||||||
F3D46ADB2D20625800D9CBDF /* SDL_pen.h in Headers */,
|
F3D46ADB2D20625800D9CBDF /* SDL_pen.h in Headers */,
|
||||||
F3D46ADC2D20625800D9CBDF /* SDL_render.h in Headers */,
|
F3D46ADC2D20625800D9CBDF /* SDL_render.h in Headers */,
|
||||||
F3D46ADD2D20625800D9CBDF /* SDL_assert.h in Headers */,
|
F3D46ADD2D20625800D9CBDF /* SDL_assert.h in Headers */,
|
||||||
F3E6C3942EE9F20000A6B39E /* SDL_hidapi_flydigi.h in Headers */,
|
|
||||||
F3E6C3952EE9F20000A6B39E /* SDL_hidapi_sinput.h in Headers */,
|
|
||||||
F3E6C3962EE9F20000A6B39E /* SDL_report_descriptor.h in Headers */,
|
|
||||||
F3D46ADE2D20625800D9CBDF /* SDL_atomic.h in Headers */,
|
F3D46ADE2D20625800D9CBDF /* SDL_atomic.h in Headers */,
|
||||||
F3D46ADF2D20625800D9CBDF /* SDL_begin_code.h in Headers */,
|
F3D46ADF2D20625800D9CBDF /* SDL_begin_code.h in Headers */,
|
||||||
F3D46AE02D20625800D9CBDF /* SDL_log.h in Headers */,
|
F3D46AE02D20625800D9CBDF /* SDL_log.h in Headers */,
|
||||||
@@ -2680,7 +2617,6 @@
|
|||||||
F37E18642BAA40670098C111 /* SDL_time_c.h in Headers */,
|
F37E18642BAA40670098C111 /* SDL_time_c.h in Headers */,
|
||||||
F31013C82C24E98200FBE946 /* SDL_keymap_c.h in Headers */,
|
F31013C82C24E98200FBE946 /* SDL_keymap_c.h in Headers */,
|
||||||
63134A252A7902FD0021E9A6 /* SDL_pen_c.h in Headers */,
|
63134A252A7902FD0021E9A6 /* SDL_pen_c.h in Headers */,
|
||||||
89E580252D03606400DAF6D3 /* SDL_hidapihaptic_c.h in Headers */,
|
|
||||||
F36C34312C0F876500991150 /* SDL_offscreenvulkan.h in Headers */,
|
F36C34312C0F876500991150 /* SDL_offscreenvulkan.h in Headers */,
|
||||||
A7D8B2C023E2514200DCD162 /* SDL_pixels_c.h in Headers */,
|
A7D8B2C023E2514200DCD162 /* SDL_pixels_c.h in Headers */,
|
||||||
F37E18622BAA40090098C111 /* SDL_sysfilesystem.h in Headers */,
|
F37E18622BAA40090098C111 /* SDL_sysfilesystem.h in Headers */,
|
||||||
@@ -2688,6 +2624,7 @@
|
|||||||
F3DDCC5D2AFD42B600B0842B /* SDL_rect_impl.h in Headers */,
|
F3DDCC5D2AFD42B600B0842B /* SDL_rect_impl.h in Headers */,
|
||||||
A7D8B9FB23E2514400DCD162 /* SDL_render_sw_c.h in Headers */,
|
A7D8B9FB23E2514400DCD162 /* SDL_render_sw_c.h in Headers */,
|
||||||
E4F257972C81903800FCEAFC /* SDL_sysgpu.h in Headers */,
|
E4F257972C81903800FCEAFC /* SDL_sysgpu.h in Headers */,
|
||||||
|
A7D8BA3123E2514400DCD162 /* SDL_rotate.h in Headers */,
|
||||||
A7D8A98D23E2514000DCD162 /* SDL_sensor_c.h in Headers */,
|
A7D8A98D23E2514000DCD162 /* SDL_sensor_c.h in Headers */,
|
||||||
A7D8BA7323E2514400DCD162 /* SDL_shaders_gl.h in Headers */,
|
A7D8BA7323E2514400DCD162 /* SDL_shaders_gl.h in Headers */,
|
||||||
A7D8BA4F23E2514400DCD162 /* SDL_shaders_gles2.h in Headers */,
|
A7D8BA4F23E2514400DCD162 /* SDL_shaders_gles2.h in Headers */,
|
||||||
@@ -2775,10 +2712,8 @@
|
|||||||
A7D8B28A23E2514200DCD162 /* vulkan_xlib_xrandr.h in Headers */,
|
A7D8B28A23E2514200DCD162 /* vulkan_xlib_xrandr.h in Headers */,
|
||||||
A7D8B3D423E2514300DCD162 /* yuv_rgb.h in Headers */,
|
A7D8B3D423E2514300DCD162 /* yuv_rgb.h in Headers */,
|
||||||
F3FA5A252B59ACE000FEAD97 /* yuv_rgb_common.h in Headers */,
|
F3FA5A252B59ACE000FEAD97 /* yuv_rgb_common.h in Headers */,
|
||||||
F39344CE2E99771B0056986F /* SDL_dlopennote.h in Headers */,
|
|
||||||
F3FA5A1D2B59ACE000FEAD97 /* yuv_rgb_internal.h in Headers */,
|
F3FA5A1D2B59ACE000FEAD97 /* yuv_rgb_internal.h in Headers */,
|
||||||
F3D8BDFC2D6D2C7000B22FA1 /* SDL_eventwatch_c.h in Headers */,
|
F3D8BDFC2D6D2C7000B22FA1 /* SDL_eventwatch_c.h in Headers */,
|
||||||
F3DC38C92E5FC60300CD73DE /* SDL_libusb.h in Headers */,
|
|
||||||
F3FA5A242B59ACE000FEAD97 /* yuv_rgb_lsx.h in Headers */,
|
F3FA5A242B59ACE000FEAD97 /* yuv_rgb_lsx.h in Headers */,
|
||||||
F3FA5A1E2B59ACE000FEAD97 /* yuv_rgb_lsx_func.h in Headers */,
|
F3FA5A1E2B59ACE000FEAD97 /* yuv_rgb_lsx_func.h in Headers */,
|
||||||
F3FA5A1F2B59ACE000FEAD97 /* yuv_rgb_sse.h in Headers */,
|
F3FA5A1F2B59ACE000FEAD97 /* yuv_rgb_sse.h in Headers */,
|
||||||
@@ -2898,7 +2833,7 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
shellPath = /bin/sh;
|
shellPath = /bin/sh;
|
||||||
shellScript = "# Build an xcframework with both device and simulator files for all platforms.\n# Adapted from an answer in\n# https://developer.apple.com/forums/thread/666335?answerId=685927022#685927022\n\nif [ \"$XCODE_VERSION_ACTUAL\" -lt 1100 ]\nthen\n echo \"error: Building an xcframework requires Xcode 11 minimum.\"\n exit 1\nfi\n\nFRAMEWORK_NAME=\"SDL3\"\nPROJECT_NAME=\"SDL\"\nSCHEME=\"SDL3\"\n\nMACOS_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-macosx.xcarchive\"\nIOS_SIMULATOR_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphonesimulator.xcarchive\"\nIOS_DEVICE_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphoneos.xcarchive\"\nTVOS_SIMULATOR_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-appletvsimulator.xcarchive\"\nTVOS_DEVICE_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-appletvos.xcarchive\"\n\nOUTPUT_DIR=\"./build/\"\n\n# macOS\nxcodebuild archive \\\n ONLY_ACTIVE_ARCH=NO \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${MACOS_ARCHIVE_PATH} \\\n -destination 'generic/platform=macOS,name=Any Mac' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n \n# iOS simulator\nxcodebuild archive \\\n ONLY_ACTIVE_ARCH=NO \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${IOS_SIMULATOR_ARCHIVE_PATH} \\\n -destination 'generic/platform=iOS Simulator' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# iOS device\nxcodebuild archive \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${IOS_DEVICE_ARCHIVE_PATH} \\\n -destination 'generic/platform=iOS' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# tvOS simulator\nxcodebuild archive \\\n ONLY_ACTIVE_ARCH=NO \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${TVOS_SIMULATOR_ARCHIVE_PATH} \\\n -destination 'generic/platform=tvOS Simulator' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# tvOS device\nxcodebuild archive \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${TVOS_DEVICE_ARCHIVE_PATH} \\\n -destination 'generic/platform=tvOS' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# Clean-up any existing instance of this xcframework from the Products directory\nrm -rf \"${OUTPUT_DIR}${FRAMEWORK_NAME}.xcframework\"\n\n# Create final xcframework\nxcodebuild -create-xcframework \\\n -framework \"${MACOS_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -debug-symbols \"${MACOS_ARCHIVE_PATH}\"/dSYMs/$FRAMEWORK_NAME.framework.dSYM \\\n -framework \"${IOS_DEVICE_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -debug-symbols \"${IOS_DEVICE_ARCHIVE_PATH}\"/dSYMs/$FRAMEWORK_NAME.framework.dSYM \\\n -framework \"${IOS_SIMULATOR_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -framework \"${TVOS_DEVICE_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -debug-symbols \"${TVOS_DEVICE_ARCHIVE_PATH}\"/dSYMs/$FRAMEWORK_NAME.framework.dSYM \\\n -framework \"${TVOS_SIMULATOR_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -output ${OUTPUT_DIR}/${FRAMEWORK_NAME}.xcframework\n\n# Ensure git doesn't pick up on our Products folder. \nrm -rf ${OUTPUT_DIR}/.gitignore\necho \"*\" >> ${OUTPUT_DIR}/.gitignore\n";
|
shellScript = "# Build an xcframework with both device and simulator files for all platforms.\n# Adapted from an answer in\n# https://developer.apple.com/forums/thread/666335?answerId=685927022#685927022\n\nif [ \"$XCODE_VERSION_ACTUAL\" -lt 1100 ]\nthen\n echo \"error: Building an xcframework requires Xcode 11 minimum.\"\n exit 1\nfi\n\nFRAMEWORK_NAME=\"SDL3\"\nPROJECT_NAME=\"SDL\"\nSCHEME=\"SDL3\"\n\nMACOS_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-macosx.xcarchive\"\nIOS_SIMULATOR_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphonesimulator.xcarchive\"\nIOS_DEVICE_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphoneos.xcarchive\"\nTVOS_SIMULATOR_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-appletvsimulator.xcarchive\"\nTVOS_DEVICE_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-appletvos.xcarchive\"\n\nOUTPUT_DIR=\"./build/\"\n\n# macOS\nxcodebuild archive \\\n ONLY_ACTIVE_ARCH=NO \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${MACOS_ARCHIVE_PATH} \\\n -destination 'generic/platform=macOS,name=Any Mac' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n \n# iOS simulator\nxcodebuild archive \\\n ONLY_ACTIVE_ARCH=NO \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${IOS_SIMULATOR_ARCHIVE_PATH} \\\n -destination 'generic/platform=iOS Simulator' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# iOS device\nxcodebuild archive \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${IOS_DEVICE_ARCHIVE_PATH} \\\n -destination 'generic/platform=iOS' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# tvOS simulator\nxcodebuild archive \\\n ONLY_ACTIVE_ARCH=NO \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${TVOS_SIMULATOR_ARCHIVE_PATH} \\\n -destination 'generic/platform=tvOS Simulator' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# tvOS device\nxcodebuild archive \\\n -scheme \"${SCHEME}\" \\\n -project \"${PROJECT_NAME}.xcodeproj\" \\\n -archivePath ${TVOS_DEVICE_ARCHIVE_PATH} \\\n -destination 'generic/platform=tvOS' \\\n BUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n SKIP_INSTALL=NO || exit $?\n\n# Clean-up any existing instance of this xcframework from the Products directory\nrm -rf \"${OUTPUT_DIR}${FRAMEWORK_NAME}.xcframework\"\n\n# Create final xcframework\nxcodebuild -create-xcframework \\\n -framework \"${MACOS_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -framework \"${IOS_DEVICE_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -framework \"${IOS_SIMULATOR_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -framework \"${TVOS_DEVICE_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -framework \"${TVOS_SIMULATOR_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n -output ${OUTPUT_DIR}/${FRAMEWORK_NAME}.xcframework\n\n# Ensure git doesn't pick up on our Products folder. \nrm -rf ${OUTPUT_DIR}/.gitignore\necho \"*\" >> ${OUTPUT_DIR}/.gitignore\n";
|
||||||
};
|
};
|
||||||
/* End PBXShellScriptBuildPhase section */
|
/* End PBXShellScriptBuildPhase section */
|
||||||
|
|
||||||
@@ -2912,7 +2847,6 @@
|
|||||||
A7D8B62F23E2514300DCD162 /* SDL_sysfilesystem.m in Sources */,
|
A7D8B62F23E2514300DCD162 /* SDL_sysfilesystem.m in Sources */,
|
||||||
A7D8B41C23E2514300DCD162 /* SDL_systls.c in Sources */,
|
A7D8B41C23E2514300DCD162 /* SDL_systls.c in Sources */,
|
||||||
9846B07C287A9020000C35C8 /* SDL_hidapi_shield.c in Sources */,
|
9846B07C287A9020000C35C8 /* SDL_hidapi_shield.c in Sources */,
|
||||||
02D6A1C228A84B8F00A7F002 /* SDL_hidapi_sinput.c in Sources */,
|
|
||||||
F31013C72C24E98200FBE946 /* SDL_keymap.c in Sources */,
|
F31013C72C24E98200FBE946 /* SDL_keymap.c in Sources */,
|
||||||
F3A9AE992C8A13C100AAC390 /* SDL_render_gpu.c in Sources */,
|
F3A9AE992C8A13C100AAC390 /* SDL_render_gpu.c in Sources */,
|
||||||
A7D8BBD923E2574800DCD162 /* SDL_uikitmessagebox.m in Sources */,
|
A7D8BBD923E2574800DCD162 /* SDL_uikitmessagebox.m in Sources */,
|
||||||
@@ -2930,6 +2864,7 @@
|
|||||||
A7D8AEC423E2514100DCD162 /* SDL_cocoaevents.m in Sources */,
|
A7D8AEC423E2514100DCD162 /* SDL_cocoaevents.m in Sources */,
|
||||||
E479118F2BA9555500CE3B7F /* SDL_genericstorage.c in Sources */,
|
E479118F2BA9555500CE3B7F /* SDL_genericstorage.c in Sources */,
|
||||||
A7D8B86623E2514400DCD162 /* SDL_audiocvt.c in Sources */,
|
A7D8B86623E2514400DCD162 /* SDL_audiocvt.c in Sources */,
|
||||||
|
A7D8B9F523E2514400DCD162 /* SDL_rotate.c in Sources */,
|
||||||
A7D8BBE323E2574800DCD162 /* SDL_uikitvideo.m in Sources */,
|
A7D8BBE323E2574800DCD162 /* SDL_uikitvideo.m in Sources */,
|
||||||
F338A1182D1B37D8007CDFDF /* SDL_tray.m in Sources */,
|
F338A1182D1B37D8007CDFDF /* SDL_tray.m in Sources */,
|
||||||
5616CA4E252BB2A6005D5928 /* SDL_sysurl.m in Sources */,
|
5616CA4E252BB2A6005D5928 /* SDL_sysurl.m in Sources */,
|
||||||
@@ -2938,7 +2873,6 @@
|
|||||||
F3C1BD752D1F1A3000846529 /* SDL_tray_utils.c in Sources */,
|
F3C1BD752D1F1A3000846529 /* SDL_tray_utils.c in Sources */,
|
||||||
F382071D284F362F004DD584 /* SDL_guid.c in Sources */,
|
F382071D284F362F004DD584 /* SDL_guid.c in Sources */,
|
||||||
A7D8BB8D23E2514500DCD162 /* SDL_touch.c in Sources */,
|
A7D8BB8D23E2514500DCD162 /* SDL_touch.c in Sources */,
|
||||||
F3E6C3932EE9F20000A6B39E /* SDL_report_descriptor.c in Sources */,
|
|
||||||
F31A92D228D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
F31A92D228D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||||
A1626A3E2617006A003F1973 /* SDL_triangle.c in Sources */,
|
A1626A3E2617006A003F1973 /* SDL_triangle.c in Sources */,
|
||||||
A7D8B3F223E2514300DCD162 /* SDL_thread.c in Sources */,
|
A7D8B3F223E2514300DCD162 /* SDL_thread.c in Sources */,
|
||||||
@@ -2958,7 +2892,6 @@
|
|||||||
E4F257962C81903800FCEAFC /* SDL_gpu.c in Sources */,
|
E4F257962C81903800FCEAFC /* SDL_gpu.c in Sources */,
|
||||||
F3D60A8328C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
F3D60A8328C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||||
A7D8B9DD23E2514400DCD162 /* SDL_blendpoint.c in Sources */,
|
A7D8B9DD23E2514400DCD162 /* SDL_blendpoint.c in Sources */,
|
||||||
F3DB66342EA9ACC300568044 /* SDL_rotate.c in Sources */,
|
|
||||||
A7D8B4EE23E2514300DCD162 /* SDL_gamepad.c in Sources */,
|
A7D8B4EE23E2514300DCD162 /* SDL_gamepad.c in Sources */,
|
||||||
E4A568B62AF763940062EEC4 /* SDL_sysmain_callbacks.c in Sources */,
|
E4A568B62AF763940062EEC4 /* SDL_sysmain_callbacks.c in Sources */,
|
||||||
F316ABD82B5C3185002EF551 /* SDL_memset.c in Sources */,
|
F316ABD82B5C3185002EF551 /* SDL_memset.c in Sources */,
|
||||||
@@ -2970,9 +2903,8 @@
|
|||||||
A7D8BBE723E2574800DCD162 /* SDL_uikitviewcontroller.m in Sources */,
|
A7D8BBE723E2574800DCD162 /* SDL_uikitviewcontroller.m in Sources */,
|
||||||
A7D8ADF223E2514100DCD162 /* SDL_blit_A.c in Sources */,
|
A7D8ADF223E2514100DCD162 /* SDL_blit_A.c in Sources */,
|
||||||
A7D8BBDD23E2574800DCD162 /* SDL_uikitmodes.m in Sources */,
|
A7D8BBDD23E2574800DCD162 /* SDL_uikitmodes.m in Sources */,
|
||||||
|
A7D8BA3723E2514400DCD162 /* SDL_d3dmath.c in Sources */,
|
||||||
F3A9AE9C2C8A13C100AAC390 /* SDL_pipeline_gpu.c in Sources */,
|
F3A9AE9C2C8A13C100AAC390 /* SDL_pipeline_gpu.c in Sources */,
|
||||||
89E580232D03606400DAF6D3 /* SDL_hidapihaptic.c in Sources */,
|
|
||||||
89E580242D03606400DAF6D3 /* SDL_hidapihaptic_lg4ff.c in Sources */,
|
|
||||||
75E0915A241EA924004729E1 /* SDL_virtualjoystick.c in Sources */,
|
75E0915A241EA924004729E1 /* SDL_virtualjoystick.c in Sources */,
|
||||||
F338A11A2D1B37E4007CDFDF /* SDL_tray.c in Sources */,
|
F338A11A2D1B37E4007CDFDF /* SDL_tray.c in Sources */,
|
||||||
A7D8ABEB23E2514100DCD162 /* SDL_nullvideo.c in Sources */,
|
A7D8ABEB23E2514100DCD162 /* SDL_nullvideo.c in Sources */,
|
||||||
@@ -3028,14 +2960,12 @@
|
|||||||
F316ABD92B5C3185002EF551 /* SDL_memcpy.c in Sources */,
|
F316ABD92B5C3185002EF551 /* SDL_memcpy.c in Sources */,
|
||||||
A7D8B97A23E2514400DCD162 /* SDL_render.c in Sources */,
|
A7D8B97A23E2514400DCD162 /* SDL_render.c in Sources */,
|
||||||
A7D8ABD323E2514100DCD162 /* SDL_stretch.c in Sources */,
|
A7D8ABD323E2514100DCD162 /* SDL_stretch.c in Sources */,
|
||||||
F38C72492CEEB1DE000B0A90 /* SDL_hidapi_steam_triton.c in Sources */,
|
|
||||||
A7D8AC3923E2514100DCD162 /* SDL_blit_copy.c in Sources */,
|
A7D8AC3923E2514100DCD162 /* SDL_blit_copy.c in Sources */,
|
||||||
A7D8B5CF23E2514300DCD162 /* SDL_syspower.m in Sources */,
|
A7D8B5CF23E2514300DCD162 /* SDL_syspower.m in Sources */,
|
||||||
F3B439512C935C2400792030 /* SDL_dummyprocess.c in Sources */,
|
F3B439512C935C2400792030 /* SDL_dummyprocess.c in Sources */,
|
||||||
A7D8B76423E2514300DCD162 /* SDL_mixer.c in Sources */,
|
A7D8B76423E2514300DCD162 /* SDL_mixer.c in Sources */,
|
||||||
A7D8BB5723E2514500DCD162 /* SDL_events.c in Sources */,
|
A7D8BB5723E2514500DCD162 /* SDL_events.c in Sources */,
|
||||||
A7D8ADE623E2514100DCD162 /* SDL_blit_0.c in Sources */,
|
A7D8ADE623E2514100DCD162 /* SDL_blit_0.c in Sources */,
|
||||||
89E5801E2D03602200DAF6D3 /* SDL_hidapi_lg4ff.c in Sources */,
|
|
||||||
A7D8B8A823E2514400DCD162 /* SDL_diskaudio.c in Sources */,
|
A7D8B8A823E2514400DCD162 /* SDL_diskaudio.c in Sources */,
|
||||||
56A2373329F9C113003CCA5F /* SDL_sysrwlock.c in Sources */,
|
56A2373329F9C113003CCA5F /* SDL_sysrwlock.c in Sources */,
|
||||||
F3A9AE9A2C8A13C100AAC390 /* SDL_shaders_gpu.c in Sources */,
|
F3A9AE9A2C8A13C100AAC390 /* SDL_shaders_gpu.c in Sources */,
|
||||||
@@ -3072,7 +3002,6 @@
|
|||||||
F3FA5A222B59ACE000FEAD97 /* yuv_rgb_sse.c in Sources */,
|
F3FA5A222B59ACE000FEAD97 /* yuv_rgb_sse.c in Sources */,
|
||||||
F3C2CB232C5DDDB2004D7998 /* SDL_categories.c in Sources */,
|
F3C2CB232C5DDDB2004D7998 /* SDL_categories.c in Sources */,
|
||||||
A7D8B55123E2514300DCD162 /* SDL_hidapi_switch.c in Sources */,
|
A7D8B55123E2514300DCD162 /* SDL_hidapi_switch.c in Sources */,
|
||||||
A7D8B55123E2514300DCD163 /* SDL_hidapi_switch2.c in Sources */,
|
|
||||||
A7D8B96223E2514400DCD162 /* SDL_strtokr.c in Sources */,
|
A7D8B96223E2514400DCD162 /* SDL_strtokr.c in Sources */,
|
||||||
A7D8BB7523E2514500DCD162 /* SDL_clipboardevents.c in Sources */,
|
A7D8BB7523E2514500DCD162 /* SDL_clipboardevents.c in Sources */,
|
||||||
E4F798202AD8D87F00669F54 /* SDL_video_unsupported.c in Sources */,
|
E4F798202AD8D87F00669F54 /* SDL_video_unsupported.c in Sources */,
|
||||||
@@ -3100,7 +3029,6 @@
|
|||||||
A7D8BA5B23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
A7D8BA5B23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
||||||
A7D8B14023E2514200DCD162 /* SDL_blit_1.c in Sources */,
|
A7D8B14023E2514200DCD162 /* SDL_blit_1.c in Sources */,
|
||||||
A7D8BBDB23E2574800DCD162 /* SDL_uikitmetalview.m in Sources */,
|
A7D8BBDB23E2574800DCD162 /* SDL_uikitmetalview.m in Sources */,
|
||||||
F3B6B80A2DC3EA54004954FD /* SDL_hidapi_gip.c in Sources */,
|
|
||||||
A7D8BB1523E2514500DCD162 /* SDL_mouse.c in Sources */,
|
A7D8BB1523E2514500DCD162 /* SDL_mouse.c in Sources */,
|
||||||
F395C19C2569C68F00942BFF /* SDL_iokitjoystick.c in Sources */,
|
F395C19C2569C68F00942BFF /* SDL_iokitjoystick.c in Sources */,
|
||||||
A7D8B4B223E2514300DCD162 /* SDL_sysjoystick.c in Sources */,
|
A7D8B4B223E2514300DCD162 /* SDL_sysjoystick.c in Sources */,
|
||||||
@@ -3123,15 +3051,12 @@
|
|||||||
000028F8113A53F4333E0000 /* SDL_main_callbacks.c in Sources */,
|
000028F8113A53F4333E0000 /* SDL_main_callbacks.c in Sources */,
|
||||||
000098E9DAA43EF6FF7F0000 /* SDL_camera.c in Sources */,
|
000098E9DAA43EF6FF7F0000 /* SDL_camera.c in Sources */,
|
||||||
F310138E2C1F2CB700FBE946 /* SDL_random.c in Sources */,
|
F310138E2C1F2CB700FBE946 /* SDL_random.c in Sources */,
|
||||||
F3395BA82D9A5971007246C8 /* SDL_hidapi_8bitdo.c in Sources */,
|
|
||||||
00001B2471F503DD3C1B0000 /* SDL_camera_dummy.c in Sources */,
|
00001B2471F503DD3C1B0000 /* SDL_camera_dummy.c in Sources */,
|
||||||
00002B20A48E055EB0350000 /* SDL_camera_coremedia.m in Sources */,
|
00002B20A48E055EB0350000 /* SDL_camera_coremedia.m in Sources */,
|
||||||
000080903BC03006F24E0000 /* SDL_filesystem.c in Sources */,
|
000080903BC03006F24E0000 /* SDL_filesystem.c in Sources */,
|
||||||
F3FBB1082DDF93AB0000F99F /* SDL_hidapi_flydigi.c in Sources */,
|
|
||||||
0000481D255AF155B42C0000 /* SDL_sysfsops.c in Sources */,
|
0000481D255AF155B42C0000 /* SDL_sysfsops.c in Sources */,
|
||||||
0000494CC93F3E624D3C0000 /* SDL_systime.c in Sources */,
|
0000494CC93F3E624D3C0000 /* SDL_systime.c in Sources */,
|
||||||
000095FA1BDE436CF3AF0000 /* SDL_time.c in Sources */,
|
000095FA1BDE436CF3AF0000 /* SDL_time.c in Sources */,
|
||||||
F3DC38CA2E5FC60300CD73DE /* SDL_libusb.c in Sources */,
|
|
||||||
0000140640E77F73F1DF0000 /* SDL_dialog_utils.c in Sources */,
|
0000140640E77F73F1DF0000 /* SDL_dialog_utils.c in Sources */,
|
||||||
0000D5B526B85DE7AB1C0000 /* SDL_cocoapen.m in Sources */,
|
0000D5B526B85DE7AB1C0000 /* SDL_cocoapen.m in Sources */,
|
||||||
6312C66D2B42341400A7BB00 /* SDL_murmur3.c in Sources */,
|
6312C66D2B42341400A7BB00 /* SDL_murmur3.c in Sources */,
|
||||||
@@ -3139,7 +3064,6 @@
|
|||||||
00004D0B73767647AD550000 /* SDL_asyncio_generic.c in Sources */,
|
00004D0B73767647AD550000 /* SDL_asyncio_generic.c in Sources */,
|
||||||
0000A03C0F32C43816F40000 /* SDL_asyncio_windows_ioring.c in Sources */,
|
0000A03C0F32C43816F40000 /* SDL_asyncio_windows_ioring.c in Sources */,
|
||||||
0000A877C7DB9FA935FC0000 /* SDL_uikitpen.m in Sources */,
|
0000A877C7DB9FA935FC0000 /* SDL_uikitpen.m in Sources */,
|
||||||
63124A422E5C357500A53610 /* SDL_hidapi_zuiki.c in Sources */,
|
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -3161,8 +3085,8 @@
|
|||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CLANG_ENABLE_OBJC_ARC = YES;
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
DEPLOYMENT_POSTPROCESSING = YES;
|
DEPLOYMENT_POSTPROCESSING = YES;
|
||||||
DYLIB_COMPATIBILITY_VERSION = 401.0.0;
|
DYLIB_COMPATIBILITY_VERSION = 201.0.0;
|
||||||
DYLIB_CURRENT_VERSION = 401.4.0;
|
DYLIB_CURRENT_VERSION = 201.16.0;
|
||||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
GCC_ALTIVEC_EXTENSIONS = YES;
|
GCC_ALTIVEC_EXTENSIONS = YES;
|
||||||
@@ -3197,7 +3121,7 @@
|
|||||||
"@loader_path/Frameworks",
|
"@loader_path/Frameworks",
|
||||||
);
|
);
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.13;
|
MACOSX_DEPLOYMENT_TARGET = 10.13;
|
||||||
MARKETING_VERSION = 3.4.4;
|
MARKETING_VERSION = 3.2.16;
|
||||||
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL3;
|
PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL3;
|
||||||
PRODUCT_NAME = SDL3;
|
PRODUCT_NAME = SDL3;
|
||||||
@@ -3205,7 +3129,7 @@
|
|||||||
SUPPORTED_PLATFORMS = "xrsimulator xros macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
SUPPORTED_PLATFORMS = "xrsimulator xros macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = YES;
|
||||||
TVOS_DEPLOYMENT_TARGET = 11.0;
|
TVOS_DEPLOYMENT_TARGET = 11.0;
|
||||||
XROS_DEPLOYMENT_TARGET = 1.3;
|
XROS_DEPLOYMENT_TARGET = 1.0;
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
@@ -3214,8 +3138,6 @@
|
|||||||
baseConfigurationReference = F3F7BE3B2CBD79D200C984AF /* config.xcconfig */;
|
baseConfigurationReference = F3F7BE3B2CBD79D200C984AF /* config.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CLANG_LINK_OBJC_RUNTIME = NO;
|
CLANG_LINK_OBJC_RUNTIME = NO;
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
|
||||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
|
||||||
OTHER_LDFLAGS = "-liconv";
|
OTHER_LDFLAGS = "-liconv";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = YES;
|
||||||
};
|
};
|
||||||
@@ -3227,8 +3149,8 @@
|
|||||||
ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES;
|
ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CLANG_ENABLE_OBJC_ARC = YES;
|
CLANG_ENABLE_OBJC_ARC = YES;
|
||||||
DYLIB_COMPATIBILITY_VERSION = 401.0.0;
|
DYLIB_COMPATIBILITY_VERSION = 201.0.0;
|
||||||
DYLIB_CURRENT_VERSION = 401.4.0;
|
DYLIB_CURRENT_VERSION = 201.16.0;
|
||||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
ENABLE_TESTABILITY = YES;
|
ENABLE_TESTABILITY = YES;
|
||||||
@@ -3260,7 +3182,7 @@
|
|||||||
"@loader_path/Frameworks",
|
"@loader_path/Frameworks",
|
||||||
);
|
);
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.13;
|
MACOSX_DEPLOYMENT_TARGET = 10.13;
|
||||||
MARKETING_VERSION = 3.4.4;
|
MARKETING_VERSION = 3.2.16;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL3;
|
PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL3;
|
||||||
@@ -3269,7 +3191,7 @@
|
|||||||
SUPPORTED_PLATFORMS = "xrsimulator xros macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
SUPPORTED_PLATFORMS = "xrsimulator xros macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = YES;
|
||||||
TVOS_DEPLOYMENT_TARGET = 11.0;
|
TVOS_DEPLOYMENT_TARGET = 11.0;
|
||||||
XROS_DEPLOYMENT_TARGET = 1.3;
|
XROS_DEPLOYMENT_TARGET = 1.0;
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
@@ -3278,8 +3200,6 @@
|
|||||||
baseConfigurationReference = F3F7BE3B2CBD79D200C984AF /* config.xcconfig */;
|
baseConfigurationReference = F3F7BE3B2CBD79D200C984AF /* config.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CLANG_LINK_OBJC_RUNTIME = NO;
|
CLANG_LINK_OBJC_RUNTIME = NO;
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
|
||||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
|
||||||
OTHER_LDFLAGS = "-liconv";
|
OTHER_LDFLAGS = "-liconv";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = YES;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Title SDL 3.4.4
|
Title SDL 3.2.16
|
||||||
Version 1
|
Version 1
|
||||||
Description SDL Library for macOS (http://www.libsdl.org)
|
Description SDL Library for macOS (http://www.libsdl.org)
|
||||||
DefaultLocation /Library/Frameworks
|
DefaultLocation /Library/Frameworks
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
# SDL3 CMake configuration file:
|
# SDL3 CMake configuration file:
|
||||||
# This file is meant to be placed in Resources/CMake of a SDL3 framework for macOS,
|
# This file is meant to be placed in Resources/CMake of a SDL3 framework
|
||||||
# or in the CMake directory of a SDL3 framework for iOS / tvOS / visionOS.
|
|
||||||
|
|
||||||
# INTERFACE_LINK_OPTIONS needs CMake 3.12
|
# INTERFACE_LINK_OPTIONS needs CMake 3.12
|
||||||
cmake_minimum_required(VERSION 3.12...4.0)
|
cmake_minimum_required(VERSION 3.12)
|
||||||
|
|
||||||
include(FeatureSummary)
|
include(FeatureSummary)
|
||||||
set_package_properties(SDL3 PROPERTIES
|
set_package_properties(SDL3 PROPERTIES
|
||||||
@@ -32,31 +31,16 @@ endmacro()
|
|||||||
|
|
||||||
set(SDL3_FOUND TRUE)
|
set(SDL3_FOUND TRUE)
|
||||||
|
|
||||||
# Compute the installation prefix relative to this file:
|
# Compute the installation prefix relative to this file.
|
||||||
# search upwards for the .framework directory
|
set(_sdl3_framework_path "${CMAKE_CURRENT_LIST_DIR}") # > /SDL3.framework/Resources/CMake/
|
||||||
set(_current_path "${CMAKE_CURRENT_LIST_DIR}")
|
get_filename_component(_sdl3_framework_path "${_sdl3_framework_path}" REALPATH) # > /SDL3.framework/Versions/Current/Resources/CMake
|
||||||
get_filename_component(_current_path "${_current_path}" REALPATH)
|
get_filename_component(_sdl3_framework_path "${_sdl3_framework_path}" REALPATH) # > /SDL3.framework/Versions/A/Resources/CMake/
|
||||||
set(_sdl3_framework_path "")
|
get_filename_component(_sdl3_framework_path "${_sdl3_framework_path}" PATH) # > /SDL3.framework/Versions/A/Resources/
|
||||||
|
get_filename_component(_sdl3_framework_path "${_sdl3_framework_path}" PATH) # > /SDL3.framework/Versions/A/
|
||||||
|
get_filename_component(_sdl3_framework_path "${_sdl3_framework_path}" PATH) # > /SDL3.framework/Versions/
|
||||||
|
get_filename_component(_sdl3_framework_path "${_sdl3_framework_path}" PATH) # > /SDL3.framework/
|
||||||
|
get_filename_component(_sdl3_framework_parent_path "${_sdl3_framework_path}" PATH) # > /
|
||||||
|
|
||||||
while(NOT _sdl3_framework_path)
|
|
||||||
if(IS_DIRECTORY "${_current_path}" AND "${_current_path}" MATCHES "/SDL3\\.framework$")
|
|
||||||
set(_sdl3_framework_path "${_current_path}")
|
|
||||||
break()
|
|
||||||
endif()
|
|
||||||
get_filename_component(_next_current_path "${_current_path}" DIRECTORY)
|
|
||||||
if("${_current_path}" STREQUAL "${_next_current_path}")
|
|
||||||
break()
|
|
||||||
endif()
|
|
||||||
set(_current_path "${_next_current_path}")
|
|
||||||
endwhile()
|
|
||||||
unset(_current_path)
|
|
||||||
unset(_next_current_path)
|
|
||||||
|
|
||||||
if(NOT _sdl3_framework_path)
|
|
||||||
message(FATAL_ERROR "Could not find SDL3.framework root from ${CMAKE_CURRENT_LIST_DIR}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
get_filename_component(_sdl3_framework_parent_path "${_sdl3_framework_path}" PATH)
|
|
||||||
|
|
||||||
# All targets are created, even when some might not be requested though COMPONENTS.
|
# All targets are created, even when some might not be requested though COMPONENTS.
|
||||||
# This is done for compatibility with CMake generated SDL3-target.cmake files.
|
# This is done for compatibility with CMake generated SDL3-target.cmake files.
|
||||||
|
|||||||
@@ -1,26 +1,16 @@
|
|||||||
# based on the files generated by CMake's write_basic_package_version_file
|
# based on the files generated by CMake's write_basic_package_version_file
|
||||||
|
|
||||||
# SDL CMake version configuration file:
|
# SDL CMake version configuration file:
|
||||||
# This file is meant to be placed in Resources/CMake of a SDL3 framework for macOS,
|
# This file is meant to be placed in Resources/CMake of a SDL3 framework
|
||||||
# or in the CMake directory of a SDL3 framework for iOS / tvOS / visionOS.
|
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.12...4.0)
|
cmake_minimum_required(VERSION 3.12)
|
||||||
|
|
||||||
# Find SDL_version.h
|
if(NOT EXISTS "${CMAKE_CURRENT_LIST_DIR}/../../Headers/SDL_version.h")
|
||||||
set(_sdl_version_h_path "")
|
message(AUTHOR_WARNING "Could not find SDL_version.h. This script is meant to be placed in the Resources/CMake directory of SDL2.framework")
|
||||||
if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/../../Headers/SDL_version.h")
|
|
||||||
set(_sdl_version_h_path "${CMAKE_CURRENT_LIST_DIR}/../../Headers/SDL_version.h")
|
|
||||||
elseif(EXISTS "${CMAKE_CURRENT_LIST_DIR}/../Headers/SDL_version.h")
|
|
||||||
set(_sdl_version_h_path "${CMAKE_CURRENT_LIST_DIR}/../Headers/SDL_version.h")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT _sdl_version_h_path)
|
|
||||||
message(AUTHOR_WARNING "Could not find SDL_version.h. This script is meant to be placed in the Resources/CMake directory or the CMake directory of SDL3.framework.")
|
|
||||||
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
|
||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
file(READ "${_sdl_version_h_path}" _sdl_version_h)
|
file(READ "${CMAKE_CURRENT_LIST_DIR}/../../Headers/SDL_version.h" _sdl_version_h)
|
||||||
string(REGEX MATCH "#define[ \t]+SDL_MAJOR_VERSION[ \t]+([0-9]+)" _sdl_major_re "${_sdl_version_h}")
|
string(REGEX MATCH "#define[ \t]+SDL_MAJOR_VERSION[ \t]+([0-9]+)" _sdl_major_re "${_sdl_version_h}")
|
||||||
set(_sdl_major "${CMAKE_MATCH_1}")
|
set(_sdl_major "${CMAKE_MATCH_1}")
|
||||||
string(REGEX MATCH "#define[ \t]+SDL_MINOR_VERSION[ \t]+([0-9]+)" _sdl_minor_re "${_sdl_version_h}")
|
string(REGEX MATCH "#define[ \t]+SDL_MINOR_VERSION[ \t]+([0-9]+)" _sdl_minor_re "${_sdl_version_h}")
|
||||||
@@ -31,12 +21,9 @@ if(_sdl_major_re AND _sdl_minor_re AND _sdl_micro_re)
|
|||||||
set(PACKAGE_VERSION "${_sdl_major}.${_sdl_minor}.${_sdl_micro}")
|
set(PACKAGE_VERSION "${_sdl_major}.${_sdl_minor}.${_sdl_micro}")
|
||||||
else()
|
else()
|
||||||
message(AUTHOR_WARNING "Could not extract version from SDL_version.h.")
|
message(AUTHOR_WARNING "Could not extract version from SDL_version.h.")
|
||||||
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
|
||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
unset(_sdl_version_h)
|
|
||||||
unset(_sdl_version_h_path)
|
|
||||||
unset(_sdl_major_re)
|
unset(_sdl_major_re)
|
||||||
unset(_sdl_major)
|
unset(_sdl_major)
|
||||||
unset(_sdl_minor_re)
|
unset(_sdl_minor_re)
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ set(_sdl3_version_h "${_sdl3_framework}/Headers/SDL_version.h")
|
|||||||
|
|
||||||
if(NOT EXISTS "${_sdl3_version_h}")
|
if(NOT EXISTS "${_sdl3_version_h}")
|
||||||
message(AUTHOR_WARNING "Cannot not find ${_sdl3_framework}. This script is meant to be placed in share/cmake/SDL3, next to SDL3.xcframework")
|
message(AUTHOR_WARNING "Cannot not find ${_sdl3_framework}. This script is meant to be placed in share/cmake/SDL3, next to SDL3.xcframework")
|
||||||
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
|
||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -37,7 +36,6 @@ if(_sdl_major_re AND _sdl_minor_re AND _sdl_micro_re)
|
|||||||
set(PACKAGE_VERSION "${_sdl_major}.${_sdl_minor}.${_sdl_micro}")
|
set(PACKAGE_VERSION "${_sdl_major}.${_sdl_minor}.${_sdl_micro}")
|
||||||
else()
|
else()
|
||||||
message(AUTHOR_WARNING "Could not extract version from SDL_version.h.")
|
message(AUTHOR_WARNING "Could not extract version from SDL_version.h.")
|
||||||
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
|
||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
F35E56E72983133F00A43A5F /* PBXTargetDependency */,
|
F35E56E72983133F00A43A5F /* PBXTargetDependency */,
|
||||||
DB0F490517CA5249008798C5 /* PBXTargetDependency */,
|
DB0F490517CA5249008798C5 /* PBXTargetDependency */,
|
||||||
DB0F490717CA5249008798C5 /* PBXTargetDependency */,
|
DB0F490717CA5249008798C5 /* PBXTargetDependency */,
|
||||||
|
DB166E9816A1D7CF00A1396C /* PBXTargetDependency */,
|
||||||
DB166E9616A1D7CD00A1396C /* PBXTargetDependency */,
|
DB166E9616A1D7CD00A1396C /* PBXTargetDependency */,
|
||||||
DB166E6C16A1D72000A1396C /* PBXTargetDependency */,
|
DB166E6C16A1D72000A1396C /* PBXTargetDependency */,
|
||||||
DB166E5616A1D6B800A1396C /* PBXTargetDependency */,
|
DB166E5616A1D6B800A1396C /* PBXTargetDependency */,
|
||||||
@@ -87,6 +88,7 @@
|
|||||||
00794EF009D23739003FC8A1 /* utf8.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6309D20839003FC8A1 /* utf8.txt */; };
|
00794EF009D23739003FC8A1 /* utf8.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6309D20839003FC8A1 /* utf8.txt */; };
|
||||||
00794EF709D237DE003FC8A1 /* moose.dat in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5E09D20839003FC8A1 /* moose.dat */; };
|
00794EF709D237DE003FC8A1 /* moose.dat in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5E09D20839003FC8A1 /* moose.dat */; };
|
||||||
453774A5120915E3002F0F45 /* testshape.c in Sources */ = {isa = PBXBuildFile; fileRef = 453774A4120915E3002F0F45 /* testshape.c */; };
|
453774A5120915E3002F0F45 /* testshape.c in Sources */ = {isa = PBXBuildFile; fileRef = 453774A4120915E3002F0F45 /* testshape.c */; };
|
||||||
|
66E88E8B203B778F0004D44E /* testyuv_cvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 66E88E8A203B778F0004D44E /* testyuv_cvt.c */; };
|
||||||
A1A8594E2BC72FC20045DD6C /* testautomation_properties.c in Sources */ = {isa = PBXBuildFile; fileRef = A1A859482BC72FC20045DD6C /* testautomation_properties.c */; };
|
A1A8594E2BC72FC20045DD6C /* testautomation_properties.c in Sources */ = {isa = PBXBuildFile; fileRef = A1A859482BC72FC20045DD6C /* testautomation_properties.c */; };
|
||||||
A1A859502BC72FC20045DD6C /* testautomation_subsystems.c in Sources */ = {isa = PBXBuildFile; fileRef = A1A859492BC72FC20045DD6C /* testautomation_subsystems.c */; };
|
A1A859502BC72FC20045DD6C /* testautomation_subsystems.c in Sources */ = {isa = PBXBuildFile; fileRef = A1A859492BC72FC20045DD6C /* testautomation_subsystems.c */; };
|
||||||
A1A859522BC72FC20045DD6C /* testautomation_log.c in Sources */ = {isa = PBXBuildFile; fileRef = A1A8594A2BC72FC20045DD6C /* testautomation_log.c */; };
|
A1A859522BC72FC20045DD6C /* testautomation_log.c in Sources */ = {isa = PBXBuildFile; fileRef = A1A8594A2BC72FC20045DD6C /* testautomation_log.c */; };
|
||||||
@@ -115,21 +117,23 @@
|
|||||||
DB166D9F16A1D1A500A1396C /* SDL_test_log.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166D9016A1D1A500A1396C /* SDL_test_log.c */; };
|
DB166D9F16A1D1A500A1396C /* SDL_test_log.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166D9016A1D1A500A1396C /* SDL_test_log.c */; };
|
||||||
DB166DA016A1D1A500A1396C /* SDL_test_md5.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166D9116A1D1A500A1396C /* SDL_test_md5.c */; };
|
DB166DA016A1D1A500A1396C /* SDL_test_md5.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166D9116A1D1A500A1396C /* SDL_test_md5.c */; };
|
||||||
DB166DD716A1D37800A1396C /* testmessage.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CBD16A1C74100A1396C /* testmessage.c */; };
|
DB166DD716A1D37800A1396C /* testmessage.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CBD16A1C74100A1396C /* testmessage.c */; };
|
||||||
DB166DDB16A1D42F00A1396C /* icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
DB166DDB16A1D42F00A1396C /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
DB166DF016A1D52500A1396C /* testrelative.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CBF16A1C74100A1396C /* testrelative.c */; };
|
DB166DF016A1D52500A1396C /* testrelative.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CBF16A1C74100A1396C /* testrelative.c */; };
|
||||||
DB166E0716A1D59400A1396C /* testrendercopyex.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC016A1C74100A1396C /* testrendercopyex.c */; };
|
DB166E0716A1D59400A1396C /* testrendercopyex.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC016A1C74100A1396C /* testrendercopyex.c */; };
|
||||||
DB166E1E16A1D5C300A1396C /* testrendertarget.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC116A1C74100A1396C /* testrendertarget.c */; };
|
DB166E1E16A1D5C300A1396C /* testrendertarget.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC116A1C74100A1396C /* testrendertarget.c */; };
|
||||||
DB166E2216A1D5EC00A1396C /* sample.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.png */; };
|
DB166E2216A1D5EC00A1396C /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; };
|
||||||
DB166E2316A1D60B00A1396C /* icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
DB166E2316A1D60B00A1396C /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
DB166E2516A1D61900A1396C /* icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
DB166E2516A1D61900A1396C /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
DB166E2616A1D61900A1396C /* sample.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.png */; };
|
DB166E2616A1D61900A1396C /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; };
|
||||||
DB166E3C16A1D66500A1396C /* testrumble.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC216A1C74100A1396C /* testrumble.c */; };
|
DB166E3C16A1D66500A1396C /* testrumble.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC216A1C74100A1396C /* testrumble.c */; };
|
||||||
DB166E4D16A1D69000A1396C /* icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
DB166E4D16A1D69000A1396C /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
DB166E4E16A1D69000A1396C /* sample.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.png */; };
|
DB166E4E16A1D69000A1396C /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; };
|
||||||
DB166E5416A1D6A300A1396C /* testscale.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC316A1C74100A1396C /* testscale.c */; };
|
DB166E5416A1D6A300A1396C /* testscale.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC316A1C74100A1396C /* testscale.c */; };
|
||||||
DB166E6A16A1D70C00A1396C /* testshader.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC416A1C74100A1396C /* testshader.c */; };
|
DB166E6A16A1D70C00A1396C /* testshader.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC416A1C74100A1396C /* testshader.c */; };
|
||||||
DB166E9316A1D7BC00A1396C /* testspriteminimal.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC516A1C74100A1396C /* testspriteminimal.c */; };
|
DB166E9316A1D7BC00A1396C /* testspriteminimal.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC516A1C74100A1396C /* testspriteminimal.c */; };
|
||||||
DB166E9C16A1D80900A1396C /* icon.png in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
DB166E9416A1D7C700A1396C /* teststreaming.c in Sources */ = {isa = PBXBuildFile; fileRef = DB166CC616A1C74100A1396C /* teststreaming.c */; };
|
||||||
|
DB166E9A16A1D7F700A1396C /* moose.dat in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5E09D20839003FC8A1 /* moose.dat */; };
|
||||||
|
DB166E9C16A1D80900A1396C /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
DB445EFB18184BB600B306B0 /* testdropfile.c in Sources */ = {isa = PBXBuildFile; fileRef = DB445EFA18184BB600B306B0 /* testdropfile.c */; };
|
DB445EFB18184BB600B306B0 /* testdropfile.c in Sources */ = {isa = PBXBuildFile; fileRef = DB445EFA18184BB600B306B0 /* testdropfile.c */; };
|
||||||
DB89958418A19B130092407C /* testhotplug.c in Sources */ = {isa = PBXBuildFile; fileRef = DB89958318A19B130092407C /* testhotplug.c */; };
|
DB89958418A19B130092407C /* testhotplug.c in Sources */ = {isa = PBXBuildFile; fileRef = DB89958318A19B130092407C /* testhotplug.c */; };
|
||||||
F35E56CF2983130F00A43A5F /* testautomation_main.c in Sources */ = {isa = PBXBuildFile; fileRef = F35E56B62983130A00A43A5F /* testautomation_main.c */; };
|
F35E56CF2983130F00A43A5F /* testautomation_main.c in Sources */ = {isa = PBXBuildFile; fileRef = F35E56B62983130A00A43A5F /* testautomation_main.c */; };
|
||||||
@@ -158,7 +162,6 @@
|
|||||||
F36C34232C0F85DB00991150 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F36C34232C0F85DB00991150 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F36C342D2C0F869B00991150 /* testcamera.c in Sources */ = {isa = PBXBuildFile; fileRef = F36C342C2C0F869B00991150 /* testcamera.c */; };
|
F36C342D2C0F869B00991150 /* testcamera.c in Sources */ = {isa = PBXBuildFile; fileRef = F36C342C2C0F869B00991150 /* testcamera.c */; };
|
||||||
F36C342E2C0F869B00991150 /* testcamera.c in Sources */ = {isa = PBXBuildFile; fileRef = F36C342C2C0F869B00991150 /* testcamera.c */; };
|
F36C342E2C0F869B00991150 /* testcamera.c in Sources */ = {isa = PBXBuildFile; fileRef = F36C342C2C0F869B00991150 /* testcamera.c */; };
|
||||||
F38908B72E81276900CE01D5 /* testautomation_blit.c in Sources */ = {isa = PBXBuildFile; fileRef = F38908B42E81276900CE01D5 /* testautomation_blit.c */; };
|
|
||||||
F399C64E2A78929400C86979 /* gamepadutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F399C6492A78929400C86979 /* gamepadutils.c */; };
|
F399C64E2A78929400C86979 /* gamepadutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F399C6492A78929400C86979 /* gamepadutils.c */; };
|
||||||
F399C64F2A78929400C86979 /* gamepadutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F399C6492A78929400C86979 /* gamepadutils.c */; };
|
F399C64F2A78929400C86979 /* gamepadutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F399C6492A78929400C86979 /* gamepadutils.c */; };
|
||||||
F399C6512A7892D800C86979 /* testautomation_intrinsics.c in Sources */ = {isa = PBXBuildFile; fileRef = F399C6502A7892D800C86979 /* testautomation_intrinsics.c */; };
|
F399C6512A7892D800C86979 /* testautomation_intrinsics.c in Sources */ = {isa = PBXBuildFile; fileRef = F399C6502A7892D800C86979 /* testautomation_intrinsics.c */; };
|
||||||
@@ -179,12 +182,13 @@
|
|||||||
F3C17C8228E4112900E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
F3C17C8228E4112900E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
||||||
F3C17C8328E4124400E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
F3C17C8328E4124400E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
||||||
F3C17C8428E4126400E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
F3C17C8428E4126400E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
||||||
|
F3C17C8528E4127D00E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
||||||
F3C17CEB28E4177600E1A26D /* testgeometry.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17CD628E416AC00E1A26D /* testgeometry.c */; };
|
F3C17CEB28E4177600E1A26D /* testgeometry.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17CD628E416AC00E1A26D /* testgeometry.c */; };
|
||||||
F3C17CEC28E417EB00E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
F3C17CEC28E417EB00E1A26D /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
||||||
F3C17D3928E424B800E1A26D /* sample.wav in Resources */ = {isa = PBXBuildFile; fileRef = 00794E6209D20839003FC8A1 /* sample.wav */; };
|
F3C17D3928E424B800E1A26D /* sample.wav in Resources */ = {isa = PBXBuildFile; fileRef = 00794E6209D20839003FC8A1 /* sample.wav */; };
|
||||||
F3C17D3B28E4252900E1A26D /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
F3C17D3B28E4252900E1A26D /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
F3C2CAC62C5C8BD6004D7998 /* unifont-15.1.05.hex in Resources */ = {isa = PBXBuildFile; fileRef = F3C2CAC52C5C8BD6004D7998 /* unifont-15.1.05.hex */; };
|
F3C2CAC62C5C8BD6004D7998 /* unifont-15.1.05.hex in Resources */ = {isa = PBXBuildFile; fileRef = F3C2CAC52C5C8BD6004D7998 /* unifont-15.1.05.hex */; };
|
||||||
F3C2CB072C5D3FB2004D7998 /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.png */; };
|
F3C2CB072C5D3FB2004D7998 /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; };
|
||||||
F3CB56892A7895F800766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
F3CB56892A7895F800766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
F3CB568A2A7895F800766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F3CB568A2A7895F800766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F3CB568C2A7896BF00766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
F3CB568C2A7896BF00766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
@@ -263,6 +267,8 @@
|
|||||||
F3CB56FB2A78983200766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F3CB56FB2A78983200766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F3CB56FD2A78983C00766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
F3CB56FD2A78983C00766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
F3CB56FE2A78983C00766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F3CB56FE2A78983C00766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
|
F3CB57002A78984300766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
|
F3CB57012A78984300766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F3CB57032A78984A00766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
F3CB57032A78984A00766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
F3CB57042A78984A00766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F3CB57042A78984A00766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F3CB57062A78985400766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
F3CB57062A78985400766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
@@ -273,12 +279,6 @@
|
|||||||
F3CB570D2A78986000766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F3CB570D2A78986000766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F3CB570F2A78986700766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
F3CB570F2A78986700766177 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
||||||
F3CB57102A78986700766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
F3CB57102A78986700766177 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||||
F3DB65DF2E9DA90000568044 /* testutils.c in Sources */ = {isa = PBXBuildFile; fileRef = F3C17C7328E40ADE00E1A26D /* testutils.c */; };
|
|
||||||
F3DB65E12E9DA90000568044 /* SDL3.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; };
|
|
||||||
F3DB65E52E9DA90000568044 /* SDL3.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL3.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
|
||||||
F3DB65EE2E9DA95D00568044 /* testyuv.png in Resources */ = {isa = PBXBuildFile; fileRef = F3DB65ED2E9DA95D00568044 /* testyuv.png */; };
|
|
||||||
F3DB65F12E9DA98E00568044 /* testyuv.c in Sources */ = {isa = PBXBuildFile; fileRef = F3DB65EF2E9DA98E00568044 /* testyuv.c */; };
|
|
||||||
F3DB65F22E9DA9B400568044 /* testyuv_cvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 66E88E8A203B778F0004D44E /* testyuv_cvt.c */; };
|
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXContainerItemProxy section */
|
/* Begin PBXContainerItemProxy section */
|
||||||
@@ -569,6 +569,13 @@
|
|||||||
remoteGlobalIDString = DB166E6D16A1D78400A1396C;
|
remoteGlobalIDString = DB166E6D16A1D78400A1396C;
|
||||||
remoteInfo = testspriteminimal;
|
remoteInfo = testspriteminimal;
|
||||||
};
|
};
|
||||||
|
DB166E9716A1D7CF00A1396C /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
|
||||||
|
proxyType = 1;
|
||||||
|
remoteGlobalIDString = DB166E8016A1D78C00A1396C;
|
||||||
|
remoteInfo = teststreaming;
|
||||||
|
};
|
||||||
F35E56E62983133F00A43A5F /* PBXContainerItemProxy */ = {
|
F35E56E62983133F00A43A5F /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
|
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
|
||||||
@@ -636,7 +643,7 @@
|
|||||||
dstPath = "";
|
dstPath = "";
|
||||||
dstSubfolderSpec = 7;
|
dstSubfolderSpec = 7;
|
||||||
files = (
|
files = (
|
||||||
DB166DDB16A1D42F00A1396C /* icon.png in CopyFiles */,
|
DB166DDB16A1D42F00A1396C /* icon.bmp in CopyFiles */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -646,8 +653,8 @@
|
|||||||
dstPath = "";
|
dstPath = "";
|
||||||
dstSubfolderSpec = 7;
|
dstSubfolderSpec = 7;
|
||||||
files = (
|
files = (
|
||||||
DB166E2316A1D60B00A1396C /* icon.png in CopyFiles */,
|
DB166E2316A1D60B00A1396C /* icon.bmp in CopyFiles */,
|
||||||
DB166E2216A1D5EC00A1396C /* sample.png in CopyFiles */,
|
DB166E2216A1D5EC00A1396C /* sample.bmp in CopyFiles */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -657,8 +664,8 @@
|
|||||||
dstPath = "";
|
dstPath = "";
|
||||||
dstSubfolderSpec = 7;
|
dstSubfolderSpec = 7;
|
||||||
files = (
|
files = (
|
||||||
DB166E2516A1D61900A1396C /* icon.png in CopyFiles */,
|
DB166E2516A1D61900A1396C /* icon.bmp in CopyFiles */,
|
||||||
DB166E2616A1D61900A1396C /* sample.png in CopyFiles */,
|
DB166E2616A1D61900A1396C /* sample.bmp in CopyFiles */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -668,8 +675,18 @@
|
|||||||
dstPath = "";
|
dstPath = "";
|
||||||
dstSubfolderSpec = 7;
|
dstSubfolderSpec = 7;
|
||||||
files = (
|
files = (
|
||||||
DB166E4D16A1D69000A1396C /* icon.png in CopyFiles */,
|
DB166E4D16A1D69000A1396C /* icon.bmp in CopyFiles */,
|
||||||
DB166E4E16A1D69000A1396C /* sample.png in CopyFiles */,
|
DB166E4E16A1D69000A1396C /* sample.bmp in CopyFiles */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
DB166E9916A1D7EE00A1396C /* CopyFiles */ = {
|
||||||
|
isa = PBXCopyFilesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
dstPath = "";
|
||||||
|
dstSubfolderSpec = 7;
|
||||||
|
files = (
|
||||||
|
DB166E9A16A1D7F700A1396C /* moose.dat in CopyFiles */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -679,7 +696,7 @@
|
|||||||
dstPath = "";
|
dstPath = "";
|
||||||
dstSubfolderSpec = 7;
|
dstSubfolderSpec = 7;
|
||||||
files = (
|
files = (
|
||||||
DB166E9C16A1D80900A1396C /* icon.png in CopyFiles */,
|
DB166E9C16A1D80900A1396C /* icon.bmp in CopyFiles */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -1143,6 +1160,17 @@
|
|||||||
name = "Embed Frameworks";
|
name = "Embed Frameworks";
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
|
F3CB57022A78984300766177 /* Embed Frameworks */ = {
|
||||||
|
isa = PBXCopyFilesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
dstPath = "";
|
||||||
|
dstSubfolderSpec = 10;
|
||||||
|
files = (
|
||||||
|
F3CB57012A78984300766177 /* SDL3.framework in Embed Frameworks */,
|
||||||
|
);
|
||||||
|
name = "Embed Frameworks";
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
F3CB57052A78984A00766177 /* Embed Frameworks */ = {
|
F3CB57052A78984A00766177 /* Embed Frameworks */ = {
|
||||||
isa = PBXCopyFilesBuildPhase;
|
isa = PBXCopyFilesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -1198,17 +1226,6 @@
|
|||||||
name = "Embed Frameworks";
|
name = "Embed Frameworks";
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
F3DB65E42E9DA90000568044 /* Embed Frameworks */ = {
|
|
||||||
isa = PBXCopyFilesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
dstPath = "";
|
|
||||||
dstSubfolderSpec = 10;
|
|
||||||
files = (
|
|
||||||
F3DB65E52E9DA90000568044 /* SDL3.framework in Embed Frameworks */,
|
|
||||||
);
|
|
||||||
name = "Embed Frameworks";
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXCopyFilesBuildPhase section */
|
/* End PBXCopyFilesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
@@ -1252,9 +1269,10 @@
|
|||||||
002F346A09CA204F00EBEB88 /* testplatform.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testplatform.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
002F346A09CA204F00EBEB88 /* testplatform.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testplatform.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
002F346F09CA20A600EBEB88 /* testplatform.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = testplatform.c; sourceTree = "<group>"; };
|
002F346F09CA20A600EBEB88 /* testplatform.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = testplatform.c; sourceTree = "<group>"; };
|
||||||
003FA63A093FFD41000C53B3 /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../SDL/SDL.xcodeproj; sourceTree = SOURCE_ROOT; };
|
003FA63A093FFD41000C53B3 /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../SDL/SDL.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||||
00794E5D09D20839003FC8A1 /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = "<group>"; };
|
00794E5D09D20839003FC8A1 /* icon.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = icon.bmp; sourceTree = "<group>"; };
|
||||||
00794E5E09D20839003FC8A1 /* moose.dat */ = {isa = PBXFileReference; lastKnownFileType = file; path = moose.dat; sourceTree = "<group>"; };
|
00794E5E09D20839003FC8A1 /* moose.dat */ = {isa = PBXFileReference; lastKnownFileType = file; path = moose.dat; sourceTree = "<group>"; };
|
||||||
00794E6109D20839003FC8A1 /* sample.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = sample.png; sourceTree = "<group>"; };
|
00794E5F09D20839003FC8A1 /* picture.xbm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = picture.xbm; sourceTree = "<group>"; };
|
||||||
|
00794E6109D20839003FC8A1 /* sample.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = sample.bmp; sourceTree = "<group>"; };
|
||||||
00794E6209D20839003FC8A1 /* sample.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = sample.wav; sourceTree = "<group>"; };
|
00794E6209D20839003FC8A1 /* sample.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = sample.wav; sourceTree = "<group>"; };
|
||||||
00794E6309D20839003FC8A1 /* utf8.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = utf8.txt; sourceTree = "<group>"; };
|
00794E6309D20839003FC8A1 /* utf8.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = utf8.txt; sourceTree = "<group>"; };
|
||||||
083E4872006D84C97F000001 /* loopwave.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = loopwave.c; sourceTree = "<group>"; };
|
083E4872006D84C97F000001 /* loopwave.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = loopwave.c; sourceTree = "<group>"; };
|
||||||
@@ -1300,6 +1318,7 @@
|
|||||||
DB166CC316A1C74100A1396C /* testscale.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testscale.c; sourceTree = "<group>"; };
|
DB166CC316A1C74100A1396C /* testscale.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testscale.c; sourceTree = "<group>"; };
|
||||||
DB166CC416A1C74100A1396C /* testshader.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testshader.c; sourceTree = "<group>"; };
|
DB166CC416A1C74100A1396C /* testshader.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testshader.c; sourceTree = "<group>"; };
|
||||||
DB166CC516A1C74100A1396C /* testspriteminimal.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testspriteminimal.c; sourceTree = "<group>"; };
|
DB166CC516A1C74100A1396C /* testspriteminimal.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testspriteminimal.c; sourceTree = "<group>"; };
|
||||||
|
DB166CC616A1C74100A1396C /* teststreaming.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = teststreaming.c; sourceTree = "<group>"; };
|
||||||
DB166D7F16A1D12400A1396C /* libSDL3_test.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL3_test.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
DB166D7F16A1D12400A1396C /* libSDL3_test.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL3_test.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DB166D8416A1D1A500A1396C /* SDL_test_assert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_assert.c; sourceTree = "<group>"; };
|
DB166D8416A1D1A500A1396C /* SDL_test_assert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_assert.c; sourceTree = "<group>"; };
|
||||||
DB166D8516A1D1A500A1396C /* SDL_test_common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_common.c; sourceTree = "<group>"; };
|
DB166D8516A1D1A500A1396C /* SDL_test_common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_common.c; sourceTree = "<group>"; };
|
||||||
@@ -1318,6 +1337,7 @@
|
|||||||
DB166E5216A1D69000A1396C /* testscale.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testscale.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DB166E5216A1D69000A1396C /* testscale.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testscale.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DB166E6816A1D6F300A1396C /* testshader.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testshader.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DB166E6816A1D6F300A1396C /* testshader.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testshader.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DB166E7E16A1D78400A1396C /* testspriteminimal.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testspriteminimal.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DB166E7E16A1D78400A1396C /* testspriteminimal.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testspriteminimal.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
DB166E9116A1D78C00A1396C /* teststreaming.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = teststreaming.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DB445EF818184B7000B306B0 /* testdropfile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testdropfile.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DB445EF818184B7000B306B0 /* testdropfile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testdropfile.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DB445EFA18184BB600B306B0 /* testdropfile.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testdropfile.c; sourceTree = "<group>"; };
|
DB445EFA18184BB600B306B0 /* testdropfile.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testdropfile.c; sourceTree = "<group>"; };
|
||||||
DB89957E18A19ABA0092407C /* testhotplug.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testhotplug.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
DB89957E18A19ABA0092407C /* testhotplug.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testhotplug.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
@@ -1347,9 +1367,6 @@
|
|||||||
F35E56CD2983130F00A43A5F /* testautomation_mouse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testautomation_mouse.c; sourceTree = "<group>"; };
|
F35E56CD2983130F00A43A5F /* testautomation_mouse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testautomation_mouse.c; sourceTree = "<group>"; };
|
||||||
F36C34272C0F85DB00991150 /* testcamera.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testcamera.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
F36C34272C0F85DB00991150 /* testcamera.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testcamera.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
F36C342C2C0F869B00991150 /* testcamera.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testcamera.c; sourceTree = "<group>"; };
|
F36C342C2C0F869B00991150 /* testcamera.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testcamera.c; sourceTree = "<group>"; };
|
||||||
F38908B42E81276900CE01D5 /* testautomation_blit.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testautomation_blit.c; sourceTree = "<group>"; };
|
|
||||||
F38908B52E81276900CE01D5 /* testautomation_images.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = testautomation_images.h; sourceTree = "<group>"; };
|
|
||||||
F38908B62E81276900CE01D5 /* testautomation_suites.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = testautomation_suites.h; sourceTree = "<group>"; };
|
|
||||||
F399C6492A78929400C86979 /* gamepadutils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gamepadutils.c; sourceTree = "<group>"; };
|
F399C6492A78929400C86979 /* gamepadutils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gamepadutils.c; sourceTree = "<group>"; };
|
||||||
F399C6502A7892D800C86979 /* testautomation_intrinsics.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testautomation_intrinsics.c; sourceTree = "<group>"; };
|
F399C6502A7892D800C86979 /* testautomation_intrinsics.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testautomation_intrinsics.c; sourceTree = "<group>"; };
|
||||||
F399C6542A78933000C86979 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
|
F399C6542A78933000C86979 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
|
||||||
@@ -1360,10 +1377,6 @@
|
|||||||
F3C17CD628E416AC00E1A26D /* testgeometry.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testgeometry.c; sourceTree = "<group>"; };
|
F3C17CD628E416AC00E1A26D /* testgeometry.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = testgeometry.c; sourceTree = "<group>"; };
|
||||||
F3C17CDC28E416CF00E1A26D /* testgeometry.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgeometry.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
F3C17CDC28E416CF00E1A26D /* testgeometry.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgeometry.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
F3C2CAC52C5C8BD6004D7998 /* unifont-15.1.05.hex */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "unifont-15.1.05.hex"; sourceTree = "<group>"; };
|
F3C2CAC52C5C8BD6004D7998 /* unifont-15.1.05.hex */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "unifont-15.1.05.hex"; sourceTree = "<group>"; };
|
||||||
F3DB65E92E9DA90000568044 /* testyuv.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testyuv.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
F3DB65ED2E9DA95D00568044 /* testyuv.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = testyuv.png; sourceTree = "<group>"; };
|
|
||||||
F3DB65EF2E9DA98E00568044 /* testyuv.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = testyuv.c; sourceTree = "<group>"; };
|
|
||||||
F3DB65F02E9DA98E00568044 /* testyuv_cvt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = testyuv_cvt.h; sourceTree = "<group>"; };
|
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
@@ -1695,6 +1708,14 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
|
DB166E8316A1D78C00A1396C /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
F3CB57002A78984300766177 /* SDL3.framework in Frameworks */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DB445EE918184B7000B306B0 /* Frameworks */ = {
|
DB445EE918184B7000B306B0 /* Frameworks */ = {
|
||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -1743,14 +1764,6 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
F3DB65E02E9DA90000568044 /* Frameworks */ = {
|
|
||||||
isa = PBXFrameworksBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
F3DB65E12E9DA90000568044 /* SDL3.framework in Frameworks */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
@@ -1765,10 +1778,10 @@
|
|||||||
00794E4609D207B4003FC8A1 /* Resources */ = {
|
00794E4609D207B4003FC8A1 /* Resources */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F3DB65ED2E9DA95D00568044 /* testyuv.png */,
|
00794E5D09D20839003FC8A1 /* icon.bmp */,
|
||||||
00794E5D09D20839003FC8A1 /* icon.png */,
|
|
||||||
00794E5E09D20839003FC8A1 /* moose.dat */,
|
00794E5E09D20839003FC8A1 /* moose.dat */,
|
||||||
00794E6109D20839003FC8A1 /* sample.png */,
|
00794E5F09D20839003FC8A1 /* picture.xbm */,
|
||||||
|
00794E6109D20839003FC8A1 /* sample.bmp */,
|
||||||
00794E6209D20839003FC8A1 /* sample.wav */,
|
00794E6209D20839003FC8A1 /* sample.wav */,
|
||||||
F3C2CAC52C5C8BD6004D7998 /* unifont-15.1.05.hex */,
|
F3C2CAC52C5C8BD6004D7998 /* unifont-15.1.05.hex */,
|
||||||
00794E6309D20839003FC8A1 /* utf8.txt */,
|
00794E6309D20839003FC8A1 /* utf8.txt */,
|
||||||
@@ -1802,12 +1815,10 @@
|
|||||||
001795B01074222D00F5D044 /* testaudioinfo.c */,
|
001795B01074222D00F5D044 /* testaudioinfo.c */,
|
||||||
F35E56CC2983130F00A43A5F /* testautomation.c */,
|
F35E56CC2983130F00A43A5F /* testautomation.c */,
|
||||||
F35E56C42983130D00A43A5F /* testautomation_audio.c */,
|
F35E56C42983130D00A43A5F /* testautomation_audio.c */,
|
||||||
F38908B42E81276900CE01D5 /* testautomation_blit.c */,
|
|
||||||
F35E56BC2983130B00A43A5F /* testautomation_clipboard.c */,
|
F35E56BC2983130B00A43A5F /* testautomation_clipboard.c */,
|
||||||
F35E56BB2983130B00A43A5F /* testautomation_events.c */,
|
F35E56BB2983130B00A43A5F /* testautomation_events.c */,
|
||||||
F35E56C92983130E00A43A5F /* testautomation_guid.c */,
|
F35E56C92983130E00A43A5F /* testautomation_guid.c */,
|
||||||
F35E56B72983130A00A43A5F /* testautomation_hints.c */,
|
F35E56B72983130A00A43A5F /* testautomation_hints.c */,
|
||||||
F38908B52E81276900CE01D5 /* testautomation_images.h */,
|
|
||||||
F35E56BF2983130C00A43A5F /* testautomation_images.c */,
|
F35E56BF2983130C00A43A5F /* testautomation_images.c */,
|
||||||
F399C6502A7892D800C86979 /* testautomation_intrinsics.c */,
|
F399C6502A7892D800C86979 /* testautomation_intrinsics.c */,
|
||||||
F35E56B92983130B00A43A5F /* testautomation_iostream.c */,
|
F35E56B92983130B00A43A5F /* testautomation_iostream.c */,
|
||||||
@@ -1825,7 +1836,6 @@
|
|||||||
F35E56C82983130E00A43A5F /* testautomation_sdltest.c */,
|
F35E56C82983130E00A43A5F /* testautomation_sdltest.c */,
|
||||||
F35E56BE2983130C00A43A5F /* testautomation_stdlib.c */,
|
F35E56BE2983130C00A43A5F /* testautomation_stdlib.c */,
|
||||||
A1A859492BC72FC20045DD6C /* testautomation_subsystems.c */,
|
A1A859492BC72FC20045DD6C /* testautomation_subsystems.c */,
|
||||||
F38908B62E81276900CE01D5 /* testautomation_suites.h */,
|
|
||||||
F35E56CB2983130F00A43A5F /* testautomation_surface.c */,
|
F35E56CB2983130F00A43A5F /* testautomation_surface.c */,
|
||||||
A1A8594B2BC72FC20045DD6C /* testautomation_time.c */,
|
A1A8594B2BC72FC20045DD6C /* testautomation_time.c */,
|
||||||
F35E56BD2983130B00A43A5F /* testautomation_timer.c */,
|
F35E56BD2983130B00A43A5F /* testautomation_timer.c */,
|
||||||
@@ -1870,13 +1880,12 @@
|
|||||||
453774A4120915E3002F0F45 /* testshape.c */,
|
453774A4120915E3002F0F45 /* testshape.c */,
|
||||||
0017991910743F5300F5D044 /* testsprite.c */,
|
0017991910743F5300F5D044 /* testsprite.c */,
|
||||||
DB166CC516A1C74100A1396C /* testspriteminimal.c */,
|
DB166CC516A1C74100A1396C /* testspriteminimal.c */,
|
||||||
|
DB166CC616A1C74100A1396C /* teststreaming.c */,
|
||||||
092D6D58FFB311A97F000001 /* testthread.c */,
|
092D6D58FFB311A97F000001 /* testthread.c */,
|
||||||
083E4880006D86A17F000001 /* testtimer.c */,
|
083E4880006D86A17F000001 /* testtimer.c */,
|
||||||
F3C17C7328E40ADE00E1A26D /* testutils.c */,
|
F3C17C7328E40ADE00E1A26D /* testutils.c */,
|
||||||
083E4882006D86A17F000001 /* testver.c */,
|
083E4882006D86A17F000001 /* testver.c */,
|
||||||
0017993B10743FEF00F5D044 /* testwm.c */,
|
0017993B10743FEF00F5D044 /* testwm.c */,
|
||||||
F3DB65EF2E9DA98E00568044 /* testyuv.c */,
|
|
||||||
F3DB65F02E9DA98E00568044 /* testyuv_cvt.h */,
|
|
||||||
66E88E8A203B778F0004D44E /* testyuv_cvt.c */,
|
66E88E8A203B778F0004D44E /* testyuv_cvt.c */,
|
||||||
083E4887006D86A17F000001 /* torturethread.c */,
|
083E4887006D86A17F000001 /* torturethread.c */,
|
||||||
);
|
);
|
||||||
@@ -1926,6 +1935,7 @@
|
|||||||
DB166E5216A1D69000A1396C /* testscale.app */,
|
DB166E5216A1D69000A1396C /* testscale.app */,
|
||||||
DB166E6816A1D6F300A1396C /* testshader.app */,
|
DB166E6816A1D6F300A1396C /* testshader.app */,
|
||||||
DB166E7E16A1D78400A1396C /* testspriteminimal.app */,
|
DB166E7E16A1D78400A1396C /* testspriteminimal.app */,
|
||||||
|
DB166E9116A1D78C00A1396C /* teststreaming.app */,
|
||||||
DB0F48EC17CA51E5008798C5 /* testdrawchessboard.app */,
|
DB0F48EC17CA51E5008798C5 /* testdrawchessboard.app */,
|
||||||
DB0F490117CA5212008798C5 /* testfilesystem.app */,
|
DB0F490117CA5212008798C5 /* testfilesystem.app */,
|
||||||
DB89957E18A19ABA0092407C /* testhotplug.app */,
|
DB89957E18A19ABA0092407C /* testhotplug.app */,
|
||||||
@@ -1934,7 +1944,6 @@
|
|||||||
F35E56AA298312CB00A43A5F /* testautomation.app */,
|
F35E56AA298312CB00A43A5F /* testautomation.app */,
|
||||||
F36C34272C0F85DB00991150 /* testcamera.app */,
|
F36C34272C0F85DB00991150 /* testcamera.app */,
|
||||||
F3B7FD6A2D73FC630086D1D0 /* testpen.app */,
|
F3B7FD6A2D73FC630086D1D0 /* testpen.app */,
|
||||||
F3DB65E92E9DA90000568044 /* testyuv.app */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -1991,6 +2000,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testatomic;
|
name = testatomic;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 0017958C10741F7900F5D044 /* testatomic.app */;
|
productReference = 0017958C10741F7900F5D044 /* testatomic.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2007,6 +2017,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testaudioinfo;
|
name = testaudioinfo;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001795AD107421BF00F5D044 /* testaudioinfo.app */;
|
productReference = 001795AD107421BF00F5D044 /* testaudioinfo.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2023,6 +2034,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testgl;
|
name = testgl;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 0017972110742F3200F5D044 /* testgl.app */;
|
productReference = 0017972110742F3200F5D044 /* testgl.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2039,6 +2051,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testhaptic;
|
name = testhaptic;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 00179748107430D600F5D044 /* testhaptic.app */;
|
productReference = 00179748107430D600F5D044 /* testhaptic.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2055,6 +2068,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testdraw;
|
name = testdraw;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 0017976E107431B300F5D044 /* testdraw.app */;
|
productReference = 0017976E107431B300F5D044 /* testdraw.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2072,6 +2086,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testime;
|
name = testime;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 0017978E107432AE00F5D044 /* testime.app */;
|
productReference = 0017978E107432AE00F5D044 /* testime.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2088,6 +2103,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testintersections;
|
name = testintersections;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001797AE1074334C00F5D044 /* testintersections.app */;
|
productReference = 001797AE1074334C00F5D044 /* testintersections.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2104,6 +2120,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testloadso;
|
name = testloadso;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001797D0107433C600F5D044 /* testloadso.app */;
|
productReference = 001797D0107433C600F5D044 /* testloadso.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2121,6 +2138,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testmultiaudio;
|
name = testmultiaudio;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001798121074355200F5D044 /* testmultiaudio.app */;
|
productReference = 001798121074355200F5D044 /* testmultiaudio.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2138,6 +2156,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testnative;
|
name = testnative;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001798941074392D00F5D044 /* testnative.app */;
|
productReference = 001798941074392D00F5D044 /* testnative.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2154,6 +2173,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testpower;
|
name = testpower;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001798B5107439DF00F5D044 /* testpower.app */;
|
productReference = 001798B5107439DF00F5D044 /* testpower.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2170,6 +2190,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testresample;
|
name = testresample;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 001798F210743BEC00F5D044 /* testresample.app */;
|
productReference = 001798F210743BEC00F5D044 /* testresample.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2187,6 +2208,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testsprite;
|
name = testsprite;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 0017991610743F1000F5D044 /* testsprite.app */;
|
productReference = 0017991610743F1000F5D044 /* testsprite.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2203,6 +2225,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testwm;
|
name = testwm;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 0017993810743FB700F5D044 /* testwm.app */;
|
productReference = 0017993810743FB700F5D044 /* testwm.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2219,6 +2242,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testfile;
|
name = testfile;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 002F341209CA1BFF00EBEB88 /* testfile.app */;
|
productReference = 002F341209CA1BFF00EBEB88 /* testfile.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2236,6 +2260,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testiconv;
|
name = testiconv;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 002F343109CA1F0300EBEB88 /* testiconv.app */;
|
productReference = 002F343109CA1F0300EBEB88 /* testiconv.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2253,6 +2278,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testoverlay;
|
name = testoverlay;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 002F344D09CA1FB300EBEB88 /* testoverlay.app */;
|
productReference = 002F344D09CA1FB300EBEB88 /* testoverlay.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2269,6 +2295,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testplatform;
|
name = testplatform;
|
||||||
|
productName = testalpha;
|
||||||
productReference = 002F346A09CA204F00EBEB88 /* testplatform.app */;
|
productReference = 002F346A09CA204F00EBEB88 /* testplatform.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2491,6 +2518,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testdrawchessboard;
|
name = testdrawchessboard;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB0F48EC17CA51E5008798C5 /* testdrawchessboard.app */;
|
productReference = DB0F48EC17CA51E5008798C5 /* testdrawchessboard.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2507,6 +2535,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testfilesystem;
|
name = testfilesystem;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB0F490117CA5212008798C5 /* testfilesystem.app */;
|
productReference = DB0F490117CA5212008798C5 /* testfilesystem.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2540,6 +2569,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testmessage;
|
name = testmessage;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB166DD516A1D36A00A1396C /* testmessage.app */;
|
productReference = DB166DD516A1D36A00A1396C /* testmessage.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2556,6 +2586,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testrelative;
|
name = testrelative;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB166DEE16A1D50C00A1396C /* testrelative.app */;
|
productReference = DB166DEE16A1D50C00A1396C /* testrelative.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2573,6 +2604,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testrendercopyex;
|
name = testrendercopyex;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB166E0516A1D57C00A1396C /* testrendercopyex.app */;
|
productReference = DB166E0516A1D57C00A1396C /* testrendercopyex.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2590,6 +2622,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testrendertarget;
|
name = testrendertarget;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB166E1C16A1D5AD00A1396C /* testrendertarget.app */;
|
productReference = DB166E1C16A1D5AD00A1396C /* testrendertarget.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2606,6 +2639,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testrumble;
|
name = testrumble;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB166E3816A1D64D00A1396C /* testrumble.app */;
|
productReference = DB166E3816A1D64D00A1396C /* testrumble.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2623,6 +2657,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testscale;
|
name = testscale;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB166E5216A1D69000A1396C /* testscale.app */;
|
productReference = DB166E5216A1D69000A1396C /* testscale.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2661,6 +2696,24 @@
|
|||||||
productReference = DB166E7E16A1D78400A1396C /* testspriteminimal.app */;
|
productReference = DB166E7E16A1D78400A1396C /* testspriteminimal.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
|
DB166E8016A1D78C00A1396C /* teststreaming */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = DB166E8E16A1D78C00A1396C /* Build configuration list for PBXNativeTarget "teststreaming" */;
|
||||||
|
buildPhases = (
|
||||||
|
DB166E8116A1D78C00A1396C /* Sources */,
|
||||||
|
DB166E8316A1D78C00A1396C /* Frameworks */,
|
||||||
|
DB166E9916A1D7EE00A1396C /* CopyFiles */,
|
||||||
|
F3CB57022A78984300766177 /* Embed Frameworks */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = teststreaming;
|
||||||
|
productName = teststreaming;
|
||||||
|
productReference = DB166E9116A1D78C00A1396C /* teststreaming.app */;
|
||||||
|
productType = "com.apple.product-type.application";
|
||||||
|
};
|
||||||
DB445EE618184B7000B306B0 /* testdropfile */ = {
|
DB445EE618184B7000B306B0 /* testdropfile */ = {
|
||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = DB445EF518184B7000B306B0 /* Build configuration list for PBXNativeTarget "testdropfile" */;
|
buildConfigurationList = DB445EF518184B7000B306B0 /* Build configuration list for PBXNativeTarget "testdropfile" */;
|
||||||
@@ -2691,6 +2744,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testhotplug;
|
name = testhotplug;
|
||||||
|
productName = testalpha;
|
||||||
productReference = DB89957E18A19ABA0092407C /* testhotplug.app */;
|
productReference = DB89957E18A19ABA0092407C /* testhotplug.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2707,6 +2761,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testautomation;
|
name = testautomation;
|
||||||
|
productName = testalpha;
|
||||||
productReference = F35E56AA298312CB00A43A5F /* testautomation.app */;
|
productReference = F35E56AA298312CB00A43A5F /* testautomation.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2723,6 +2778,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testcamera;
|
name = testcamera;
|
||||||
|
productName = testalpha;
|
||||||
productReference = F36C34272C0F85DB00991150 /* testcamera.app */;
|
productReference = F36C34272C0F85DB00991150 /* testcamera.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2739,6 +2795,7 @@
|
|||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = testpen;
|
name = testpen;
|
||||||
|
productName = testalpha;
|
||||||
productReference = F3B7FD6A2D73FC630086D1D0 /* testpen.app */;
|
productReference = F3B7FD6A2D73FC630086D1D0 /* testpen.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
@@ -2759,23 +2816,6 @@
|
|||||||
productReference = F3C17CDC28E416CF00E1A26D /* testgeometry.app */;
|
productReference = F3C17CDC28E416CF00E1A26D /* testgeometry.app */;
|
||||||
productType = "com.apple.product-type.application";
|
productType = "com.apple.product-type.application";
|
||||||
};
|
};
|
||||||
F3DB65DC2E9DA90000568044 /* testyuv */ = {
|
|
||||||
isa = PBXNativeTarget;
|
|
||||||
buildConfigurationList = F3DB65E62E9DA90000568044 /* Build configuration list for PBXNativeTarget "testyuv" */;
|
|
||||||
buildPhases = (
|
|
||||||
F3DB65DD2E9DA90000568044 /* Sources */,
|
|
||||||
F3DB65E02E9DA90000568044 /* Frameworks */,
|
|
||||||
F3DB65E22E9DA90000568044 /* Resources */,
|
|
||||||
F3DB65E42E9DA90000568044 /* Embed Frameworks */,
|
|
||||||
);
|
|
||||||
buildRules = (
|
|
||||||
);
|
|
||||||
dependencies = (
|
|
||||||
);
|
|
||||||
name = testyuv;
|
|
||||||
productReference = F3DB65E92E9DA90000568044 /* testyuv.app */;
|
|
||||||
productType = "com.apple.product-type.application";
|
|
||||||
};
|
|
||||||
/* End PBXNativeTarget section */
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
/* Begin PBXProject section */
|
/* Begin PBXProject section */
|
||||||
@@ -2905,6 +2945,9 @@
|
|||||||
DB166E6D16A1D78400A1396C = {
|
DB166E6D16A1D78400A1396C = {
|
||||||
ProvisioningStyle = Automatic;
|
ProvisioningStyle = Automatic;
|
||||||
};
|
};
|
||||||
|
DB166E8016A1D78C00A1396C = {
|
||||||
|
ProvisioningStyle = Automatic;
|
||||||
|
};
|
||||||
DB445EE618184B7000B306B0 = {
|
DB445EE618184B7000B306B0 = {
|
||||||
ProvisioningStyle = Automatic;
|
ProvisioningStyle = Automatic;
|
||||||
};
|
};
|
||||||
@@ -2985,11 +3028,11 @@
|
|||||||
4537749112091504002F0F45 /* testshape */,
|
4537749112091504002F0F45 /* testshape */,
|
||||||
001798FE10743F1000F5D044 /* testsprite */,
|
001798FE10743F1000F5D044 /* testsprite */,
|
||||||
DB166E6D16A1D78400A1396C /* testspriteminimal */,
|
DB166E6D16A1D78400A1396C /* testspriteminimal */,
|
||||||
|
DB166E8016A1D78C00A1396C /* teststreaming */,
|
||||||
BEC567230761D90400A33029 /* testthread */,
|
BEC567230761D90400A33029 /* testthread */,
|
||||||
BEC5678D0761D90500A33029 /* testtimer */,
|
BEC5678D0761D90500A33029 /* testtimer */,
|
||||||
BEC567A70761D90500A33029 /* testversion */,
|
BEC567A70761D90500A33029 /* testversion */,
|
||||||
0017992010743FB700F5D044 /* testwm */,
|
0017992010743FB700F5D044 /* testwm */,
|
||||||
F3DB65DC2E9DA90000568044 /* testyuv */,
|
|
||||||
BEC567EA0761D90600A33029 /* torturethread */,
|
BEC567EA0761D90600A33029 /* torturethread */,
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
@@ -3018,7 +3061,7 @@
|
|||||||
isa = PBXResourcesBuildPhase;
|
isa = PBXResourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
F3C17D3B28E4252900E1A26D /* icon.png in Resources */,
|
F3C17D3B28E4252900E1A26D /* icon.bmp in Resources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@@ -3026,19 +3069,11 @@
|
|||||||
isa = PBXResourcesBuildPhase;
|
isa = PBXResourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
F3C2CB072C5D3FB2004D7998 /* icon.png in Resources */,
|
F3C2CB072C5D3FB2004D7998 /* icon.bmp in Resources */,
|
||||||
F3C2CAC62C5C8BD6004D7998 /* unifont-15.1.05.hex in Resources */,
|
F3C2CAC62C5C8BD6004D7998 /* unifont-15.1.05.hex in Resources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
F3DB65E22E9DA90000568044 /* Resources */ = {
|
|
||||||
isa = PBXResourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
F3DB65EE2E9DA95D00568044 /* testyuv.png in Resources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXResourcesBuildPhase section */
|
/* End PBXResourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
@@ -3181,6 +3216,7 @@
|
|||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
002F345409CA202000EBEB88 /* testoverlay.c in Sources */,
|
002F345409CA202000EBEB88 /* testoverlay.c in Sources */,
|
||||||
|
66E88E8B203B778F0004D44E /* testyuv_cvt.c in Sources */,
|
||||||
F3C17C7F28E4101000E1A26D /* testutils.c in Sources */,
|
F3C17C7F28E4101000E1A26D /* testutils.c in Sources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
@@ -3396,6 +3432,15 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
|
DB166E8116A1D78C00A1396C /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
DB166E9416A1D7C700A1396C /* teststreaming.c in Sources */,
|
||||||
|
F3C17C8528E4127D00E1A26D /* testutils.c in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
DB445EE718184B7000B306B0 /* Sources */ = {
|
DB445EE718184B7000B306B0 /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -3433,7 +3478,6 @@
|
|||||||
F35E56DE2983130F00A43A5F /* testautomation_joystick.c in Sources */,
|
F35E56DE2983130F00A43A5F /* testautomation_joystick.c in Sources */,
|
||||||
F35E56D82983130F00A43A5F /* testautomation_images.c in Sources */,
|
F35E56D82983130F00A43A5F /* testautomation_images.c in Sources */,
|
||||||
F35E56DC2983130F00A43A5F /* testautomation_audio.c in Sources */,
|
F35E56DC2983130F00A43A5F /* testautomation_audio.c in Sources */,
|
||||||
F38908B72E81276900CE01D5 /* testautomation_blit.c in Sources */,
|
|
||||||
F35E56D32983130F00A43A5F /* testautomation_math.c in Sources */,
|
F35E56D32983130F00A43A5F /* testautomation_math.c in Sources */,
|
||||||
F35E56E02983130F00A43A5F /* testautomation_sdltest.c in Sources */,
|
F35E56E02983130F00A43A5F /* testautomation_sdltest.c in Sources */,
|
||||||
F35E56D42983130F00A43A5F /* testautomation_events.c in Sources */,
|
F35E56D42983130F00A43A5F /* testautomation_events.c in Sources */,
|
||||||
@@ -3472,16 +3516,6 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
F3DB65DD2E9DA90000568044 /* Sources */ = {
|
|
||||||
isa = PBXSourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
F3DB65DF2E9DA90000568044 /* testutils.c in Sources */,
|
|
||||||
F3DB65F22E9DA9B400568044 /* testyuv_cvt.c in Sources */,
|
|
||||||
F3DB65F12E9DA98E00568044 /* testyuv.c in Sources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXTargetDependency section */
|
/* Begin PBXTargetDependency section */
|
||||||
@@ -3691,6 +3725,11 @@
|
|||||||
target = DB166E6D16A1D78400A1396C /* testspriteminimal */;
|
target = DB166E6D16A1D78400A1396C /* testspriteminimal */;
|
||||||
targetProxy = DB166E9516A1D7CD00A1396C /* PBXContainerItemProxy */;
|
targetProxy = DB166E9516A1D7CD00A1396C /* PBXContainerItemProxy */;
|
||||||
};
|
};
|
||||||
|
DB166E9816A1D7CF00A1396C /* PBXTargetDependency */ = {
|
||||||
|
isa = PBXTargetDependency;
|
||||||
|
target = DB166E8016A1D78C00A1396C /* teststreaming */;
|
||||||
|
targetProxy = DB166E9716A1D7CF00A1396C /* PBXContainerItemProxy */;
|
||||||
|
};
|
||||||
F35E56E72983133F00A43A5F /* PBXTargetDependency */ = {
|
F35E56E72983133F00A43A5F /* PBXTargetDependency */ = {
|
||||||
isa = PBXTargetDependency;
|
isa = PBXTargetDependency;
|
||||||
target = F35E56A2298312CB00A43A5F /* testautomation */;
|
target = F35E56A2298312CB00A43A5F /* testautomation */;
|
||||||
@@ -4014,7 +4053,7 @@
|
|||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
HEADER_SEARCH_PATHS = ../../include;
|
HEADER_SEARCH_PATHS = ../../include;
|
||||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
|
||||||
"LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks";
|
"LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks";
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.9;
|
MACOSX_DEPLOYMENT_TARGET = 10.9;
|
||||||
@@ -4022,11 +4061,10 @@
|
|||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = "org.libsdl.$(PRODUCT_NAME)";
|
PRODUCT_BUNDLE_IDENTIFIER = "org.libsdl.$(PRODUCT_NAME)";
|
||||||
SUPPORTED_PLATFORMS = "xrsimulator xros macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
SUPPORTED_PLATFORMS = "macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2,3";
|
TARGETED_DEVICE_FAMILY = "1,2,3";
|
||||||
TVOS_DEPLOYMENT_TARGET = 11.0;
|
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||||
XROS_DEPLOYMENT_TARGET = 1.3;
|
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
@@ -4189,18 +4227,17 @@
|
|||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
HEADER_SEARCH_PATHS = ../../include;
|
HEADER_SEARCH_PATHS = ../../include;
|
||||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
|
||||||
"LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks";
|
"LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks";
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.9;
|
MACOSX_DEPLOYMENT_TARGET = 10.9;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = "org.libsdl.$(PRODUCT_NAME)";
|
PRODUCT_BUNDLE_IDENTIFIER = "org.libsdl.$(PRODUCT_NAME)";
|
||||||
SUPPORTED_PLATFORMS = "xrsimulator xros macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
SUPPORTED_PLATFORMS = "macosx iphonesimulator iphoneos appletvsimulator appletvos";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2,3";
|
TARGETED_DEVICE_FAMILY = "1,2,3";
|
||||||
TVOS_DEPLOYMENT_TARGET = 11.0;
|
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||||
XROS_DEPLOYMENT_TARGET = 1.3;
|
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
@@ -4439,6 +4476,7 @@
|
|||||||
ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES;
|
ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES;
|
||||||
EXECUTABLE_PREFIX = lib;
|
EXECUTABLE_PREFIX = lib;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
SUPPORTED_PLATFORMS = "watchsimulator watchos macosx iphonesimulator iphoneos driverkit appletvsimulator appletvos";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = YES;
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
@@ -4449,6 +4487,7 @@
|
|||||||
ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES;
|
ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES;
|
||||||
EXECUTABLE_PREFIX = lib;
|
EXECUTABLE_PREFIX = lib;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
SUPPORTED_PLATFORMS = "watchsimulator watchos macosx iphonesimulator iphoneos driverkit appletvsimulator appletvos";
|
||||||
SUPPORTS_MACCATALYST = YES;
|
SUPPORTS_MACCATALYST = YES;
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
@@ -4613,6 +4652,26 @@
|
|||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
|
DB166E8F16A1D78C00A1396C /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
PRODUCT_NAME = teststreaming;
|
||||||
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
DB166E9016A1D78C00A1396C /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
|
PRODUCT_NAME = teststreaming;
|
||||||
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
DB445EF618184B7000B306B0 /* Debug */ = {
|
DB445EF618184B7000B306B0 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
@@ -4697,25 +4756,6 @@
|
|||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
F37E49E22EB5250B00E508F7 /* Debug */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
COPY_PHASE_STRIP = NO;
|
|
||||||
GCC_DYNAMIC_NO_PIC = NO;
|
|
||||||
GCC_OPTIMIZATION_LEVEL = 0;
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
};
|
|
||||||
name = Debug;
|
|
||||||
};
|
|
||||||
F37E49E32EB5250B00E508F7 /* Release */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
COPY_PHASE_STRIP = YES;
|
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
};
|
|
||||||
name = Release;
|
|
||||||
};
|
|
||||||
F3B7FD682D73FC630086D1D0 /* Debug */ = {
|
F3B7FD682D73FC630086D1D0 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
@@ -5146,6 +5186,15 @@
|
|||||||
defaultConfigurationIsVisible = 0;
|
defaultConfigurationIsVisible = 0;
|
||||||
defaultConfigurationName = Debug;
|
defaultConfigurationName = Debug;
|
||||||
};
|
};
|
||||||
|
DB166E8E16A1D78C00A1396C /* Build configuration list for PBXNativeTarget "teststreaming" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
DB166E8F16A1D78C00A1396C /* Debug */,
|
||||||
|
DB166E9016A1D78C00A1396C /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Debug;
|
||||||
|
};
|
||||||
DB445EF518184B7000B306B0 /* Build configuration list for PBXNativeTarget "testdropfile" */ = {
|
DB445EF518184B7000B306B0 /* Build configuration list for PBXNativeTarget "testdropfile" */ = {
|
||||||
isa = XCConfigurationList;
|
isa = XCConfigurationList;
|
||||||
buildConfigurations = (
|
buildConfigurations = (
|
||||||
@@ -5200,15 +5249,6 @@
|
|||||||
defaultConfigurationIsVisible = 0;
|
defaultConfigurationIsVisible = 0;
|
||||||
defaultConfigurationName = Debug;
|
defaultConfigurationName = Debug;
|
||||||
};
|
};
|
||||||
F3DB65E62E9DA90000568044 /* Build configuration list for PBXNativeTarget "testyuv" */ = {
|
|
||||||
isa = XCConfigurationList;
|
|
||||||
buildConfigurations = (
|
|
||||||
F37E49E22EB5250B00E508F7 /* Debug */,
|
|
||||||
F37E49E32EB5250B00E508F7 /* Release */,
|
|
||||||
);
|
|
||||||
defaultConfigurationIsVisible = 0;
|
|
||||||
defaultConfigurationName = Debug;
|
|
||||||
};
|
|
||||||
/* End XCConfigurationList section */
|
/* End XCConfigurationList section */
|
||||||
};
|
};
|
||||||
rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
|
rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
|
||||||
|
|||||||
@@ -10,7 +10,5 @@
|
|||||||
// This allows you to set DEVELOPMENT_TEAM for all targets, for example.
|
// This allows you to set DEVELOPMENT_TEAM for all targets, for example.
|
||||||
#include? "build.xcconfig"
|
#include? "build.xcconfig"
|
||||||
|
|
||||||
INFOPLIST_FILE = test-Info.plist
|
|
||||||
|
|
||||||
CONFIG_FRAMEWORK_LDFLAGS = -lSDL3_test
|
CONFIG_FRAMEWORK_LDFLAGS = -lSDL3_test
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
||||||
<plist version="1.0">
|
|
||||||
<dict>
|
|
||||||
<key>UILaunchScreen</key>
|
|
||||||
<dict>
|
|
||||||
<key>UIColorName</key>
|
|
||||||
<string></string>
|
|
||||||
<key>UIImageName</key>
|
|
||||||
<string></string>
|
|
||||||
</dict>
|
|
||||||
<key>UISupportedInterfaceOrientations</key>
|
|
||||||
<array>
|
|
||||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
|
||||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
|
||||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
|
||||||
</array>
|
|
||||||
</dict>
|
|
||||||
</plist>
|
|
||||||
@@ -7,7 +7,6 @@ def buildWithCMake = project.hasProperty('BUILD_WITH_CMAKE');
|
|||||||
android {
|
android {
|
||||||
namespace = "org.libsdl.app"
|
namespace = "org.libsdl.app"
|
||||||
compileSdkVersion 35
|
compileSdkVersion 35
|
||||||
ndkVersion = "28.2.13676358"
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
minSdkVersion 21
|
minSdkVersion 21
|
||||||
targetSdkVersion 35
|
targetSdkVersion 35
|
||||||
|
|||||||
@@ -7,4 +7,4 @@
|
|||||||
APP_ABI := armeabi-v7a arm64-v8a x86 x86_64
|
APP_ABI := armeabi-v7a arm64-v8a x86 x86_64
|
||||||
|
|
||||||
# Min runtime API level
|
# Min runtime API level
|
||||||
APP_PLATFORM=android-21
|
APP_PLATFORM=android-16
|
||||||
|
|||||||
@@ -3,7 +3,24 @@ cmake_minimum_required(VERSION 3.6)
|
|||||||
project(my_app)
|
project(my_app)
|
||||||
|
|
||||||
if(NOT TARGET SDL3::SDL3)
|
if(NOT TARGET SDL3::SDL3)
|
||||||
find_package(SDL3 CONFIG REQUIRED)
|
find_package(SDL3 CONFIG)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT TARGET SDL3::SDL3)
|
||||||
|
find_library(SDL3_LIBRARY NAMES "SDL3")
|
||||||
|
find_path(SDL3_INCLUDE_DIR NAMES "SDL3/SDL.h")
|
||||||
|
add_library(SDL3::SDL3 UNKNOWN IMPORTED)
|
||||||
|
set_property(TARGET SDL3::SDL3 PROPERTY IMPORTED_LOCATION "${SDL3_LIBRARY}")
|
||||||
|
set_property(TARGET SDL3::SDL3 PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${SDL3_INCLUDE_DIR}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT TARGET SDL3::SDL3)
|
||||||
|
message(FATAL_ERROR "Cannot find SDL3.
|
||||||
|
|
||||||
|
Possible ways to fix this:
|
||||||
|
- Use a SDL3 Android aar archive, and configure gradle to use it: prefab is required.
|
||||||
|
- Add add_subdirectory(path/to/SDL) to your CMake script, and make sure a vendored SDL is present there.
|
||||||
|
")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(main SHARED
|
add_library(main SHARED
|
||||||
|
|||||||
5
android-project/app/proguard-rules.pro
vendored
5
android-project/app/proguard-rules.pro
vendored
@@ -23,18 +23,20 @@
|
|||||||
void clipboardSetText(java.lang.String);
|
void clipboardSetText(java.lang.String);
|
||||||
int createCustomCursor(int[], int, int, int, int);
|
int createCustomCursor(int[], int, int, int, int);
|
||||||
void destroyCustomCursor(int);
|
void destroyCustomCursor(int);
|
||||||
android.app.Activity getContext();
|
android.content.Context getContext();
|
||||||
boolean getManifestEnvironmentVariables();
|
boolean getManifestEnvironmentVariables();
|
||||||
android.view.Surface getNativeSurface();
|
android.view.Surface getNativeSurface();
|
||||||
void initTouch();
|
void initTouch();
|
||||||
boolean isAndroidTV();
|
boolean isAndroidTV();
|
||||||
boolean isChromebook();
|
boolean isChromebook();
|
||||||
boolean isDeXMode();
|
boolean isDeXMode();
|
||||||
|
boolean isScreenKeyboardShown();
|
||||||
boolean isTablet();
|
boolean isTablet();
|
||||||
void manualBackButton();
|
void manualBackButton();
|
||||||
int messageboxShowMessageBox(int, java.lang.String, java.lang.String, int[], int[], java.lang.String[], int[]);
|
int messageboxShowMessageBox(int, java.lang.String, java.lang.String, int[], int[], java.lang.String[], int[]);
|
||||||
void minimizeWindow();
|
void minimizeWindow();
|
||||||
boolean openURL(java.lang.String);
|
boolean openURL(java.lang.String);
|
||||||
|
void onNativePen(int, int, int , float , float , float);
|
||||||
void requestPermission(java.lang.String, int);
|
void requestPermission(java.lang.String, int);
|
||||||
boolean showToast(java.lang.String, int, int, int, int);
|
boolean showToast(java.lang.String, int, int, int, int);
|
||||||
boolean sendMessage(int, int);
|
boolean sendMessage(int, int);
|
||||||
@@ -69,7 +71,6 @@
|
|||||||
|
|
||||||
-keep,includedescriptorclasses,allowoptimization class org.libsdl.app.SDLControllerManager {
|
-keep,includedescriptorclasses,allowoptimization class org.libsdl.app.SDLControllerManager {
|
||||||
void pollInputDevices();
|
void pollInputDevices();
|
||||||
void joystickSetLED(int, int, int, int);
|
|
||||||
void pollHapticDevices();
|
void pollHapticDevices();
|
||||||
void hapticRun(int, float, int);
|
void hapticRun(int, float, int);
|
||||||
void hapticRumble(int, float, float, int);
|
void hapticRumble(int, float, float, int);
|
||||||
|
|||||||
@@ -71,7 +71,6 @@
|
|||||||
android:icon="@mipmap/ic_launcher"
|
android:icon="@mipmap/ic_launcher"
|
||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
android:theme="@style/AppTheme"
|
android:theme="@style/AppTheme"
|
||||||
android:enableOnBackInvokedCallback="false"
|
|
||||||
android:hardwareAccelerated="true" >
|
android:hardwareAccelerated="true" >
|
||||||
|
|
||||||
<!-- Example of setting SDL hints from AndroidManifest.xml:
|
<!-- Example of setting SDL hints from AndroidManifest.xml:
|
||||||
|
|||||||
@@ -44,9 +44,9 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
|
|
||||||
private static final int CHROMEBOOK_CONNECTION_CHECK_INTERVAL = 10000;
|
private static final int CHROMEBOOK_CONNECTION_CHECK_INTERVAL = 10000;
|
||||||
|
|
||||||
static final UUID steamControllerService = UUID.fromString("100F6C32-1735-4313-B402-38567131E5F3");
|
static public final UUID steamControllerService = UUID.fromString("100F6C32-1735-4313-B402-38567131E5F3");
|
||||||
static final UUID inputCharacteristic = UUID.fromString("100F6C33-1735-4313-B402-38567131E5F3");
|
static public final UUID inputCharacteristic = UUID.fromString("100F6C33-1735-4313-B402-38567131E5F3");
|
||||||
static final UUID reportCharacteristic = UUID.fromString("100F6C34-1735-4313-B402-38567131E5F3");
|
static public final UUID reportCharacteristic = UUID.fromString("100F6C34-1735-4313-B402-38567131E5F3");
|
||||||
static private final byte[] enterValveMode = new byte[] { (byte)0xC0, (byte)0x87, 0x03, 0x08, 0x07, 0x00 };
|
static private final byte[] enterValveMode = new byte[] { (byte)0xC0, (byte)0x87, 0x03, 0x08, 0x07, 0x00 };
|
||||||
|
|
||||||
static class GattOperation {
|
static class GattOperation {
|
||||||
@@ -156,12 +156,12 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
HIDDeviceBLESteamController(HIDDeviceManager manager, BluetoothDevice device) {
|
public HIDDeviceBLESteamController(HIDDeviceManager manager, BluetoothDevice device) {
|
||||||
mManager = manager;
|
mManager = manager;
|
||||||
mDevice = device;
|
mDevice = device;
|
||||||
mDeviceId = mManager.getDeviceIDForIdentifier(getIdentifier());
|
mDeviceId = mManager.getDeviceIDForIdentifier(getIdentifier());
|
||||||
mIsRegistered = false;
|
mIsRegistered = false;
|
||||||
mIsChromebook = SDLActivity.isChromebook();
|
mIsChromebook = mManager.getContext().getPackageManager().hasSystemFeature("org.chromium.arc.device_management");
|
||||||
mOperations = new LinkedList<GattOperation>();
|
mOperations = new LinkedList<GattOperation>();
|
||||||
mHandler = new Handler(Looper.getMainLooper());
|
mHandler = new Handler(Looper.getMainLooper());
|
||||||
|
|
||||||
@@ -169,17 +169,17 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
// final HIDDeviceBLESteamController finalThis = this;
|
// final HIDDeviceBLESteamController finalThis = this;
|
||||||
// mHandler.postDelayed(new Runnable() {
|
// mHandler.postDelayed(new Runnable() {
|
||||||
// @Override
|
// @Override
|
||||||
// void run() {
|
// public void run() {
|
||||||
// finalThis.checkConnectionForChromebookIssue();
|
// finalThis.checkConnectionForChromebookIssue();
|
||||||
// }
|
// }
|
||||||
// }, CHROMEBOOK_CONNECTION_CHECK_INTERVAL);
|
// }, CHROMEBOOK_CONNECTION_CHECK_INTERVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
String getIdentifier() {
|
public String getIdentifier() {
|
||||||
return String.format("SteamController.%s", mDevice.getAddress());
|
return String.format("SteamController.%s", mDevice.getAddress());
|
||||||
}
|
}
|
||||||
|
|
||||||
BluetoothGatt getGatt() {
|
public BluetoothGatt getGatt() {
|
||||||
return mGatt;
|
return mGatt;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -219,7 +219,7 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
return btManager.getConnectionState(mDevice, BluetoothProfile.GATT);
|
return btManager.getConnectionState(mDevice, BluetoothProfile.GATT);
|
||||||
}
|
}
|
||||||
|
|
||||||
void reconnect() {
|
public void reconnect() {
|
||||||
|
|
||||||
if (getConnectionState() != BluetoothProfile.STATE_CONNECTED) {
|
if (getConnectionState() != BluetoothProfile.STATE_CONNECTED) {
|
||||||
mGatt.disconnect();
|
mGatt.disconnect();
|
||||||
@@ -401,12 +401,12 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
queueGattOperation(op);
|
queueGattOperation(op);
|
||||||
}
|
}
|
||||||
|
|
||||||
void writeCharacteristic(UUID uuid, byte[] value) {
|
public void writeCharacteristic(UUID uuid, byte[] value) {
|
||||||
GattOperation op = HIDDeviceBLESteamController.GattOperation.writeCharacteristic(mGatt, uuid, value);
|
GattOperation op = HIDDeviceBLESteamController.GattOperation.writeCharacteristic(mGatt, uuid, value);
|
||||||
queueGattOperation(op);
|
queueGattOperation(op);
|
||||||
}
|
}
|
||||||
|
|
||||||
void readCharacteristic(UUID uuid) {
|
public void readCharacteristic(UUID uuid) {
|
||||||
GattOperation op = HIDDeviceBLESteamController.GattOperation.readCharacteristic(mGatt, uuid);
|
GattOperation op = HIDDeviceBLESteamController.GattOperation.readCharacteristic(mGatt, uuid);
|
||||||
queueGattOperation(op);
|
queueGattOperation(op);
|
||||||
}
|
}
|
||||||
@@ -415,7 +415,6 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
////////////// BluetoothGattCallback overridden methods
|
////////////// BluetoothGattCallback overridden methods
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onConnectionStateChange(BluetoothGatt g, int status, int newState) {
|
public void onConnectionStateChange(BluetoothGatt g, int status, int newState) {
|
||||||
//Log.v(TAG, "onConnectionStateChange status=" + status + " newState=" + newState);
|
//Log.v(TAG, "onConnectionStateChange status=" + status + " newState=" + newState);
|
||||||
mIsReconnecting = false;
|
mIsReconnecting = false;
|
||||||
@@ -438,7 +437,6 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
// Disconnection is handled in SteamLink using the ACTION_ACL_DISCONNECTED Intent.
|
// Disconnection is handled in SteamLink using the ACTION_ACL_DISCONNECTED Intent.
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onServicesDiscovered(BluetoothGatt gatt, int status) {
|
public void onServicesDiscovered(BluetoothGatt gatt, int status) {
|
||||||
//Log.v(TAG, "onServicesDiscovered status=" + status);
|
//Log.v(TAG, "onServicesDiscovered status=" + status);
|
||||||
if (status == 0) {
|
if (status == 0) {
|
||||||
@@ -455,7 +453,6 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
|
public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
|
||||||
//Log.v(TAG, "onCharacteristicRead status=" + status + " uuid=" + characteristic.getUuid());
|
//Log.v(TAG, "onCharacteristicRead status=" + status + " uuid=" + characteristic.getUuid());
|
||||||
|
|
||||||
@@ -466,7 +463,6 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
finishCurrentGattOperation();
|
finishCurrentGattOperation();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
|
public void onCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
|
||||||
//Log.v(TAG, "onCharacteristicWrite status=" + status + " uuid=" + characteristic.getUuid());
|
//Log.v(TAG, "onCharacteristicWrite status=" + status + " uuid=" + characteristic.getUuid());
|
||||||
|
|
||||||
@@ -482,7 +478,6 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
finishCurrentGattOperation();
|
finishCurrentGattOperation();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) {
|
public void onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) {
|
||||||
// Enable this for verbose logging of controller input reports
|
// Enable this for verbose logging of controller input reports
|
||||||
//Log.v(TAG, "onCharacteristicChanged uuid=" + characteristic.getUuid() + " data=" + HexDump.dumpHexString(characteristic.getValue()));
|
//Log.v(TAG, "onCharacteristicChanged uuid=" + characteristic.getUuid() + " data=" + HexDump.dumpHexString(characteristic.getValue()));
|
||||||
@@ -492,12 +487,10 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDescriptorRead(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {
|
public void onDescriptorRead(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {
|
||||||
//Log.v(TAG, "onDescriptorRead status=" + status);
|
//Log.v(TAG, "onDescriptorRead status=" + status);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDescriptorWrite(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {
|
public void onDescriptorWrite(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {
|
||||||
BluetoothGattCharacteristic chr = descriptor.getCharacteristic();
|
BluetoothGattCharacteristic chr = descriptor.getCharacteristic();
|
||||||
//Log.v(TAG, "onDescriptorWrite status=" + status + " uuid=" + chr.getUuid() + " descriptor=" + descriptor.getUuid());
|
//Log.v(TAG, "onDescriptorWrite status=" + status + " uuid=" + chr.getUuid() + " descriptor=" + descriptor.getUuid());
|
||||||
@@ -515,17 +508,14 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
|||||||
finishCurrentGattOperation();
|
finishCurrentGattOperation();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onReliableWriteCompleted(BluetoothGatt gatt, int status) {
|
public void onReliableWriteCompleted(BluetoothGatt gatt, int status) {
|
||||||
//Log.v(TAG, "onReliableWriteCompleted status=" + status);
|
//Log.v(TAG, "onReliableWriteCompleted status=" + status);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {
|
public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {
|
||||||
//Log.v(TAG, "onReadRemoteRssi status=" + status);
|
//Log.v(TAG, "onReadRemoteRssi status=" + status);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onMtuChanged(BluetoothGatt gatt, int mtu, int status) {
|
public void onMtuChanged(BluetoothGatt gatt, int mtu, int status) {
|
||||||
//Log.v(TAG, "onMtuChanged status=" + status);
|
//Log.v(TAG, "onMtuChanged status=" + status);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class HIDDeviceManager {
|
|||||||
private static HIDDeviceManager sManager;
|
private static HIDDeviceManager sManager;
|
||||||
private static int sManagerRefCount = 0;
|
private static int sManagerRefCount = 0;
|
||||||
|
|
||||||
static public HIDDeviceManager acquire(Context context) {
|
public static HIDDeviceManager acquire(Context context) {
|
||||||
if (sManagerRefCount == 0) {
|
if (sManagerRefCount == 0) {
|
||||||
sManager = new HIDDeviceManager(context);
|
sManager = new HIDDeviceManager(context);
|
||||||
}
|
}
|
||||||
@@ -40,7 +40,7 @@ public class HIDDeviceManager {
|
|||||||
return sManager;
|
return sManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
static public void release(HIDDeviceManager manager) {
|
public static void release(HIDDeviceManager manager) {
|
||||||
if (manager == sManager) {
|
if (manager == sManager) {
|
||||||
--sManagerRefCount;
|
--sManagerRefCount;
|
||||||
if (sManagerRefCount == 0) {
|
if (sManagerRefCount == 0) {
|
||||||
@@ -108,12 +108,12 @@ public class HIDDeviceManager {
|
|||||||
HIDDeviceRegisterCallback();
|
HIDDeviceRegisterCallback();
|
||||||
|
|
||||||
mSharedPreferences = mContext.getSharedPreferences("hidapi", Context.MODE_PRIVATE);
|
mSharedPreferences = mContext.getSharedPreferences("hidapi", Context.MODE_PRIVATE);
|
||||||
mIsChromebook = SDLActivity.isChromebook();
|
mIsChromebook = mContext.getPackageManager().hasSystemFeature("org.chromium.arc.device_management");
|
||||||
|
|
||||||
// if (shouldClear) {
|
// if (shouldClear) {
|
||||||
// SharedPreferences.Editor spedit = mSharedPreferences.edit();
|
// SharedPreferences.Editor spedit = mSharedPreferences.edit();
|
||||||
// spedit.clear();
|
// spedit.clear();
|
||||||
// spedit.apply();
|
// spedit.commit();
|
||||||
// }
|
// }
|
||||||
// else
|
// else
|
||||||
{
|
{
|
||||||
@@ -121,11 +121,11 @@ public class HIDDeviceManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Context getContext() {
|
public Context getContext() {
|
||||||
return mContext;
|
return mContext;
|
||||||
}
|
}
|
||||||
|
|
||||||
int getDeviceIDForIdentifier(String identifier) {
|
public int getDeviceIDForIdentifier(String identifier) {
|
||||||
SharedPreferences.Editor spedit = mSharedPreferences.edit();
|
SharedPreferences.Editor spedit = mSharedPreferences.edit();
|
||||||
|
|
||||||
int result = mSharedPreferences.getInt(identifier, 0);
|
int result = mSharedPreferences.getInt(identifier, 0);
|
||||||
@@ -135,7 +135,7 @@ public class HIDDeviceManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
spedit.putInt(identifier, result);
|
spedit.putInt(identifier, result);
|
||||||
spedit.apply();
|
spedit.commit();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -193,7 +193,7 @@ public class HIDDeviceManager {
|
|||||||
filter.addAction(UsbManager.ACTION_USB_DEVICE_ATTACHED);
|
filter.addAction(UsbManager.ACTION_USB_DEVICE_ATTACHED);
|
||||||
filter.addAction(UsbManager.ACTION_USB_DEVICE_DETACHED);
|
filter.addAction(UsbManager.ACTION_USB_DEVICE_DETACHED);
|
||||||
filter.addAction(HIDDeviceManager.ACTION_USB_PERMISSION);
|
filter.addAction(HIDDeviceManager.ACTION_USB_PERMISSION);
|
||||||
if (Build.VERSION.SDK_INT >= 33) { /* Android 13.0 (TIRAMISU) */
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
mContext.registerReceiver(mUsbBroadcast, filter, Context.RECEIVER_EXPORTED);
|
mContext.registerReceiver(mUsbBroadcast, filter, Context.RECEIVER_EXPORTED);
|
||||||
} else {
|
} else {
|
||||||
mContext.registerReceiver(mUsbBroadcast, filter);
|
mContext.registerReceiver(mUsbBroadcast, filter);
|
||||||
@@ -256,7 +256,6 @@ public class HIDDeviceManager {
|
|||||||
0x24c6, // PowerA
|
0x24c6, // PowerA
|
||||||
0x2c22, // Qanba
|
0x2c22, // Qanba
|
||||||
0x2dc8, // 8BitDo
|
0x2dc8, // 8BitDo
|
||||||
0x37d7, // Flydigi
|
|
||||||
0x9886, // ASTRO Gaming
|
0x9886, // ASTRO Gaming
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -289,13 +288,9 @@ public class HIDDeviceManager {
|
|||||||
0x1532, // Razer Wildcat
|
0x1532, // Razer Wildcat
|
||||||
0x20d6, // PowerA
|
0x20d6, // PowerA
|
||||||
0x24c6, // PowerA
|
0x24c6, // PowerA
|
||||||
0x294b, // Snakebyte
|
|
||||||
0x2dc8, // 8BitDo
|
0x2dc8, // 8BitDo
|
||||||
0x2e24, // Hyperkin
|
0x2e24, // Hyperkin
|
||||||
0x2e95, // SCUF
|
|
||||||
0x3285, // Nacon
|
|
||||||
0x3537, // GameSir
|
0x3537, // GameSir
|
||||||
0x366c, // ByoWave
|
|
||||||
};
|
};
|
||||||
|
|
||||||
if (usbInterface.getId() == 0 &&
|
if (usbInterface.getId() == 0 &&
|
||||||
@@ -381,7 +376,7 @@ public class HIDDeviceManager {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE)) {
|
if (!mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE) || (Build.VERSION.SDK_INT < 18 /* Android 4.3 (JELLY_BEAN_MR2) */)) {
|
||||||
Log.d(TAG, "Couldn't initialize Bluetooth, this version of Android does not support Bluetooth LE");
|
Log.d(TAG, "Couldn't initialize Bluetooth, this version of Android does not support Bluetooth LE");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -413,7 +408,7 @@ public class HIDDeviceManager {
|
|||||||
IntentFilter filter = new IntentFilter();
|
IntentFilter filter = new IntentFilter();
|
||||||
filter.addAction(BluetoothDevice.ACTION_ACL_CONNECTED);
|
filter.addAction(BluetoothDevice.ACTION_ACL_CONNECTED);
|
||||||
filter.addAction(BluetoothDevice.ACTION_ACL_DISCONNECTED);
|
filter.addAction(BluetoothDevice.ACTION_ACL_DISCONNECTED);
|
||||||
if (Build.VERSION.SDK_INT >= 33) { /* Android 13.0 (TIRAMISU) */
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
mContext.registerReceiver(mBluetoothBroadcast, filter, Context.RECEIVER_EXPORTED);
|
mContext.registerReceiver(mBluetoothBroadcast, filter, Context.RECEIVER_EXPORTED);
|
||||||
} else {
|
} else {
|
||||||
mContext.registerReceiver(mBluetoothBroadcast, filter);
|
mContext.registerReceiver(mBluetoothBroadcast, filter);
|
||||||
@@ -444,7 +439,7 @@ public class HIDDeviceManager {
|
|||||||
// Chromebooks do not pass along ACTION_ACL_CONNECTED / ACTION_ACL_DISCONNECTED properly.
|
// Chromebooks do not pass along ACTION_ACL_CONNECTED / ACTION_ACL_DISCONNECTED properly.
|
||||||
// This function provides a sort of dummy version of that, watching for changes in the
|
// This function provides a sort of dummy version of that, watching for changes in the
|
||||||
// connected devices and attempting to add controllers as things change.
|
// connected devices and attempting to add controllers as things change.
|
||||||
void chromebookConnectionHandler() {
|
public void chromebookConnectionHandler() {
|
||||||
if (!mIsChromebook) {
|
if (!mIsChromebook) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -483,7 +478,7 @@ public class HIDDeviceManager {
|
|||||||
}, 10000);
|
}, 10000);
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean connectBluetoothDevice(BluetoothDevice bluetoothDevice) {
|
public boolean connectBluetoothDevice(BluetoothDevice bluetoothDevice) {
|
||||||
Log.v(TAG, "connectBluetoothDevice device=" + bluetoothDevice);
|
Log.v(TAG, "connectBluetoothDevice device=" + bluetoothDevice);
|
||||||
synchronized (this) {
|
synchronized (this) {
|
||||||
if (mBluetoothDevices.containsKey(bluetoothDevice)) {
|
if (mBluetoothDevices.containsKey(bluetoothDevice)) {
|
||||||
@@ -504,7 +499,7 @@ public class HIDDeviceManager {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void disconnectBluetoothDevice(BluetoothDevice bluetoothDevice) {
|
public void disconnectBluetoothDevice(BluetoothDevice bluetoothDevice) {
|
||||||
synchronized (this) {
|
synchronized (this) {
|
||||||
HIDDeviceBLESteamController device = mBluetoothDevices.get(bluetoothDevice);
|
HIDDeviceBLESteamController device = mBluetoothDevices.get(bluetoothDevice);
|
||||||
if (device == null)
|
if (device == null)
|
||||||
@@ -518,7 +513,7 @@ public class HIDDeviceManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean isSteamController(BluetoothDevice bluetoothDevice) {
|
public boolean isSteamController(BluetoothDevice bluetoothDevice) {
|
||||||
// Sanity check. If you pass in a null device, by definition it is never a Steam Controller.
|
// Sanity check. If you pass in a null device, by definition it is never a Steam Controller.
|
||||||
if (bluetoothDevice == null) {
|
if (bluetoothDevice == null) {
|
||||||
return false;
|
return false;
|
||||||
@@ -572,7 +567,7 @@ public class HIDDeviceManager {
|
|||||||
////////// JNI interface functions
|
////////// JNI interface functions
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
boolean initialize(boolean usb, boolean bluetooth) {
|
public boolean initialize(boolean usb, boolean bluetooth) {
|
||||||
Log.v(TAG, "initialize(" + usb + ", " + bluetooth + ")");
|
Log.v(TAG, "initialize(" + usb + ", " + bluetooth + ")");
|
||||||
|
|
||||||
if (usb) {
|
if (usb) {
|
||||||
@@ -584,7 +579,7 @@ public class HIDDeviceManager {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean openDevice(int deviceID) {
|
public boolean openDevice(int deviceID) {
|
||||||
Log.v(TAG, "openDevice deviceID=" + deviceID);
|
Log.v(TAG, "openDevice deviceID=" + deviceID);
|
||||||
HIDDevice device = getDevice(deviceID);
|
HIDDevice device = getDevice(deviceID);
|
||||||
if (device == null) {
|
if (device == null) {
|
||||||
@@ -604,10 +599,13 @@ public class HIDDeviceManager {
|
|||||||
} else {
|
} else {
|
||||||
flags = 0;
|
flags = 0;
|
||||||
}
|
}
|
||||||
|
if (Build.VERSION.SDK_INT >= 33 /* Android 14.0 (U) */) {
|
||||||
Intent intent = new Intent(HIDDeviceManager.ACTION_USB_PERMISSION);
|
Intent intent = new Intent(HIDDeviceManager.ACTION_USB_PERMISSION);
|
||||||
intent.setPackage(mContext.getPackageName());
|
intent.setPackage(mContext.getPackageName());
|
||||||
mUsbManager.requestPermission(usbDevice, PendingIntent.getBroadcast(mContext, 0, intent, flags));
|
mUsbManager.requestPermission(usbDevice, PendingIntent.getBroadcast(mContext, 0, intent, flags));
|
||||||
|
} else {
|
||||||
|
mUsbManager.requestPermission(usbDevice, PendingIntent.getBroadcast(mContext, 0, new Intent(HIDDeviceManager.ACTION_USB_PERMISSION), flags));
|
||||||
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
Log.v(TAG, "Couldn't request permission for USB device " + usbDevice);
|
Log.v(TAG, "Couldn't request permission for USB device " + usbDevice);
|
||||||
HIDDeviceOpenResult(deviceID, false);
|
HIDDeviceOpenResult(deviceID, false);
|
||||||
@@ -623,7 +621,7 @@ public class HIDDeviceManager {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
int writeReport(int deviceID, byte[] report, boolean feature) {
|
public int writeReport(int deviceID, byte[] report, boolean feature) {
|
||||||
try {
|
try {
|
||||||
//Log.v(TAG, "writeReport deviceID=" + deviceID + " length=" + report.length);
|
//Log.v(TAG, "writeReport deviceID=" + deviceID + " length=" + report.length);
|
||||||
HIDDevice device;
|
HIDDevice device;
|
||||||
@@ -640,7 +638,7 @@ public class HIDDeviceManager {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean readReport(int deviceID, byte[] report, boolean feature) {
|
public boolean readReport(int deviceID, byte[] report, boolean feature) {
|
||||||
try {
|
try {
|
||||||
//Log.v(TAG, "readReport deviceID=" + deviceID);
|
//Log.v(TAG, "readReport deviceID=" + deviceID);
|
||||||
HIDDevice device;
|
HIDDevice device;
|
||||||
@@ -657,7 +655,7 @@ public class HIDDeviceManager {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void closeDevice(int deviceID) {
|
public void closeDevice(int deviceID) {
|
||||||
try {
|
try {
|
||||||
Log.v(TAG, "closeDevice deviceID=" + deviceID);
|
Log.v(TAG, "closeDevice deviceID=" + deviceID);
|
||||||
HIDDevice device;
|
HIDDevice device;
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import android.hardware.usb.*;
|
|||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Locale;
|
|
||||||
|
|
||||||
class HIDDeviceUSB implements HIDDevice {
|
class HIDDeviceUSB implements HIDDevice {
|
||||||
|
|
||||||
@@ -31,8 +30,8 @@ class HIDDeviceUSB implements HIDDevice {
|
|||||||
mRunning = false;
|
mRunning = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
String getIdentifier() {
|
public String getIdentifier() {
|
||||||
return String.format(Locale.ENGLISH, "%s/%x/%x/%d", mDevice.getDeviceName(), mDevice.getVendorId(), mDevice.getProductId(), mInterfaceIndex);
|
return String.format("%s/%x/%x/%d", mDevice.getDeviceName(), mDevice.getVendorId(), mDevice.getProductId(), mInterfaceIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -53,11 +52,13 @@ class HIDDeviceUSB implements HIDDevice {
|
|||||||
@Override
|
@Override
|
||||||
public String getSerialNumber() {
|
public String getSerialNumber() {
|
||||||
String result = null;
|
String result = null;
|
||||||
try {
|
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||||
result = mDevice.getSerialNumber();
|
try {
|
||||||
}
|
result = mDevice.getSerialNumber();
|
||||||
catch (SecurityException exception) {
|
}
|
||||||
//Log.w(TAG, "App permissions mean we cannot get serial number for device " + getDeviceName() + " message: " + exception.getMessage());
|
catch (SecurityException exception) {
|
||||||
|
//Log.w(TAG, "App permissions mean we cannot get serial number for device " + getDeviceName() + " message: " + exception.getMessage());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (result == null) {
|
if (result == null) {
|
||||||
result = "";
|
result = "";
|
||||||
@@ -72,8 +73,10 @@ class HIDDeviceUSB implements HIDDevice {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getManufacturerName() {
|
public String getManufacturerName() {
|
||||||
String result;
|
String result = null;
|
||||||
result = mDevice.getManufacturerName();
|
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||||
|
result = mDevice.getManufacturerName();
|
||||||
|
}
|
||||||
if (result == null) {
|
if (result == null) {
|
||||||
result = String.format("%x", getVendorId());
|
result = String.format("%x", getVendorId());
|
||||||
}
|
}
|
||||||
@@ -82,8 +85,10 @@ class HIDDeviceUSB implements HIDDevice {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getProductName() {
|
public String getProductName() {
|
||||||
String result;
|
String result = null;
|
||||||
result = mDevice.getProductName();
|
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||||
|
result = mDevice.getProductName();
|
||||||
|
}
|
||||||
if (result == null) {
|
if (result == null) {
|
||||||
result = String.format("%x", getProductId());
|
result = String.format("%x", getProductId());
|
||||||
}
|
}
|
||||||
@@ -95,7 +100,7 @@ class HIDDeviceUSB implements HIDDevice {
|
|||||||
return mDevice;
|
return mDevice;
|
||||||
}
|
}
|
||||||
|
|
||||||
String getDeviceName() {
|
public String getDeviceName() {
|
||||||
return getManufacturerName() + " " + getProductName() + "(0x" + String.format("%x", getVendorId()) + "/0x" + String.format("%x", getProductId()) + ")";
|
return getManufacturerName() + " " + getProductName() + "(0x" + String.format("%x", getVendorId()) + "/0x" + String.format("%x", getProductId()) + ")";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package org.libsdl.app;
|
package org.libsdl.app;
|
||||||
|
|
||||||
import android.app.Activity;
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
|
import java.lang.Class;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -12,14 +12,14 @@ public class SDL {
|
|||||||
|
|
||||||
// This function should be called first and sets up the native code
|
// This function should be called first and sets up the native code
|
||||||
// so it can call into the Java classes
|
// so it can call into the Java classes
|
||||||
static public void setupJNI() {
|
public static void setupJNI() {
|
||||||
SDLActivity.nativeSetupJNI();
|
SDLActivity.nativeSetupJNI();
|
||||||
SDLAudioManager.nativeSetupJNI();
|
SDLAudioManager.nativeSetupJNI();
|
||||||
SDLControllerManager.nativeSetupJNI();
|
SDLControllerManager.nativeSetupJNI();
|
||||||
}
|
}
|
||||||
|
|
||||||
// This function should be called each time the activity is started
|
// This function should be called each time the activity is started
|
||||||
static public void initialize() {
|
public static void initialize() {
|
||||||
setContext(null);
|
setContext(null);
|
||||||
|
|
||||||
SDLActivity.initialize();
|
SDLActivity.initialize();
|
||||||
@@ -28,20 +28,20 @@ public class SDL {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// This function stores the current activity (SDL or not)
|
// This function stores the current activity (SDL or not)
|
||||||
static public void setContext(Activity context) {
|
public static void setContext(Context context) {
|
||||||
SDLAudioManager.setContext(context);
|
SDLAudioManager.setContext(context);
|
||||||
mContext = context;
|
mContext = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
static public Activity getContext() {
|
public static Context getContext() {
|
||||||
return mContext;
|
return mContext;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void loadLibrary(String libraryName) throws UnsatisfiedLinkError, SecurityException, NullPointerException {
|
public static void loadLibrary(String libraryName) throws UnsatisfiedLinkError, SecurityException, NullPointerException {
|
||||||
loadLibrary(libraryName, mContext);
|
loadLibrary(libraryName, mContext);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void loadLibrary(String libraryName, Context context) throws UnsatisfiedLinkError, SecurityException, NullPointerException {
|
public static void loadLibrary(String libraryName, Context context) throws UnsatisfiedLinkError, SecurityException, NullPointerException {
|
||||||
|
|
||||||
if (libraryName == null) {
|
if (libraryName == null) {
|
||||||
throw new NullPointerException("No library name provided.");
|
throw new NullPointerException("No library name provided.");
|
||||||
@@ -86,5 +86,5 @@ public class SDL {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected static Activity mContext;
|
protected static Context mContext;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,8 +60,8 @@ import java.util.Locale;
|
|||||||
public class SDLActivity extends Activity implements View.OnSystemUiVisibilityChangeListener {
|
public class SDLActivity extends Activity implements View.OnSystemUiVisibilityChangeListener {
|
||||||
private static final String TAG = "SDL";
|
private static final String TAG = "SDL";
|
||||||
private static final int SDL_MAJOR_VERSION = 3;
|
private static final int SDL_MAJOR_VERSION = 3;
|
||||||
private static final int SDL_MINOR_VERSION = 4;
|
private static final int SDL_MINOR_VERSION = 2;
|
||||||
private static final int SDL_MICRO_VERSION = 4;
|
private static final int SDL_MICRO_VERSION = 16;
|
||||||
/*
|
/*
|
||||||
// Display InputType.SOURCE/CLASS of events and devices
|
// Display InputType.SOURCE/CLASS of events and devices
|
||||||
//
|
//
|
||||||
@@ -107,9 +107,11 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
if ((s & tst) == tst) src += " GAMEPAD";
|
if ((s & tst) == tst) src += " GAMEPAD";
|
||||||
s2 &= ~tst;
|
s2 &= ~tst;
|
||||||
|
|
||||||
tst = InputDevice.SOURCE_HDMI;
|
if (Build.VERSION.SDK_INT >= 21) {
|
||||||
if ((s & tst) == tst) src += " HDMI";
|
tst = InputDevice.SOURCE_HDMI;
|
||||||
s2 &= ~tst;
|
if ((s & tst) == tst) src += " HDMI";
|
||||||
|
s2 &= ~tst;
|
||||||
|
}
|
||||||
|
|
||||||
tst = InputDevice.SOURCE_JOYSTICK;
|
tst = InputDevice.SOURCE_JOYSTICK;
|
||||||
if ((s & tst) == tst) src += " JOYSTICK";
|
if ((s & tst) == tst) src += " JOYSTICK";
|
||||||
@@ -144,9 +146,11 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
if ((s & tst) == tst) src += " TOUCHSCREEN";
|
if ((s & tst) == tst) src += " TOUCHSCREEN";
|
||||||
s2 &= ~tst;
|
s2 &= ~tst;
|
||||||
|
|
||||||
tst = InputDevice.SOURCE_TOUCH_NAVIGATION;
|
if (Build.VERSION.SDK_INT >= 18) {
|
||||||
if ((s & tst) == tst) src += " TOUCH_NAVIGATION";
|
tst = InputDevice.SOURCE_TOUCH_NAVIGATION;
|
||||||
s2 &= ~tst;
|
if ((s & tst) == tst) src += " TOUCH_NAVIGATION";
|
||||||
|
s2 &= ~tst;
|
||||||
|
}
|
||||||
|
|
||||||
tst = InputDevice.SOURCE_TRACKBALL;
|
tst = InputDevice.SOURCE_TRACKBALL;
|
||||||
if ((s & tst) == tst) src += " TRACKBALL";
|
if ((s & tst) == tst) src += " TRACKBALL";
|
||||||
@@ -215,6 +219,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
protected static SDLActivity mSingleton;
|
protected static SDLActivity mSingleton;
|
||||||
protected static SDLSurface mSurface;
|
protected static SDLSurface mSurface;
|
||||||
protected static SDLDummyEdit mTextEdit;
|
protected static SDLDummyEdit mTextEdit;
|
||||||
|
protected static boolean mScreenKeyboardShown;
|
||||||
protected static ViewGroup mLayout;
|
protected static ViewGroup mLayout;
|
||||||
protected static SDLClipboardHandler mClipboardHandler;
|
protected static SDLClipboardHandler mClipboardHandler;
|
||||||
protected static Hashtable<Integer, PointerIcon> mCursors;
|
protected static Hashtable<Integer, PointerIcon> mCursors;
|
||||||
@@ -229,11 +234,9 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
private static SDLFileDialogState mFileDialogState = null;
|
private static SDLFileDialogState mFileDialogState = null;
|
||||||
protected static boolean mDispatchingKeyEvent = false;
|
protected static boolean mDispatchingKeyEvent = false;
|
||||||
|
|
||||||
public static SDLGenericMotionListener_API14 getMotionListener() {
|
protected static SDLGenericMotionListener_API14 getMotionListener() {
|
||||||
if (mMotionListener == null) {
|
if (mMotionListener == null) {
|
||||||
if (Build.VERSION.SDK_INT >= 29 /* Android 10 (Q) */) {
|
if (Build.VERSION.SDK_INT >= 26 /* Android 8.0 (O) */) {
|
||||||
mMotionListener = new SDLGenericMotionListener_API29();
|
|
||||||
} else if (Build.VERSION.SDK_INT >= 26 /* Android 8.0 (O) */) {
|
|
||||||
mMotionListener = new SDLGenericMotionListener_API26();
|
mMotionListener = new SDLGenericMotionListener_API26();
|
||||||
} else if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
} else if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||||
mMotionListener = new SDLGenericMotionListener_API24();
|
mMotionListener = new SDLGenericMotionListener_API24();
|
||||||
@@ -895,7 +898,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
protected static class SDLCommandHandler extends Handler {
|
protected static class SDLCommandHandler extends Handler {
|
||||||
@Override
|
@Override
|
||||||
public void handleMessage(Message msg) {
|
public void handleMessage(Message msg) {
|
||||||
Context context = getContext();
|
Context context = SDL.getContext();
|
||||||
if (context == null) {
|
if (context == null) {
|
||||||
Log.e(TAG, "error handling message, getContext() returned null");
|
Log.e(TAG, "error handling message, getContext() returned null");
|
||||||
return;
|
return;
|
||||||
@@ -909,37 +912,39 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case COMMAND_CHANGE_WINDOW_STYLE:
|
case COMMAND_CHANGE_WINDOW_STYLE:
|
||||||
if (context instanceof Activity) {
|
if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) {
|
||||||
Window window = ((Activity) context).getWindow();
|
if (context instanceof Activity) {
|
||||||
if (window != null) {
|
Window window = ((Activity) context).getWindow();
|
||||||
if ((msg.obj instanceof Integer) && ((Integer) msg.obj != 0)) {
|
if (window != null) {
|
||||||
int flags = View.SYSTEM_UI_FLAG_FULLSCREEN |
|
if ((msg.obj instanceof Integer) && ((Integer) msg.obj != 0)) {
|
||||||
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
|
int flags = View.SYSTEM_UI_FLAG_FULLSCREEN |
|
||||||
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY |
|
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
|
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY |
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
|
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.INVISIBLE;
|
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
|
||||||
window.getDecorView().setSystemUiVisibility(flags);
|
View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.INVISIBLE;
|
||||||
window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
window.getDecorView().setSystemUiVisibility(flags);
|
||||||
window.clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
|
window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
||||||
SDLActivity.mFullscreenModeActive = true;
|
window.clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
|
||||||
} else {
|
SDLActivity.mFullscreenModeActive = true;
|
||||||
int flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_VISIBLE;
|
} else {
|
||||||
window.getDecorView().setSystemUiVisibility(flags);
|
int flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_VISIBLE;
|
||||||
window.addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
|
window.getDecorView().setSystemUiVisibility(flags);
|
||||||
window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
window.addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
|
||||||
SDLActivity.mFullscreenModeActive = false;
|
window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
||||||
}
|
SDLActivity.mFullscreenModeActive = false;
|
||||||
if (Build.VERSION.SDK_INT >= 30 /* Android 11 (R) */) {
|
}
|
||||||
window.getAttributes().layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
|
if (Build.VERSION.SDK_INT >= 28 /* Android 9 (Pie) */) {
|
||||||
}
|
window.getAttributes().layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
|
||||||
if (Build.VERSION.SDK_INT >= 30 /* Android 11 (R) */ &&
|
}
|
||||||
Build.VERSION.SDK_INT < 35 /* Android 15 */) {
|
if (Build.VERSION.SDK_INT >= 30 /* Android 11 (R) */ &&
|
||||||
SDLActivity.onNativeInsetsChanged(0, 0, 0, 0);
|
Build.VERSION.SDK_INT < 35 /* Android 15 */) {
|
||||||
|
SDLActivity.onNativeInsetsChanged(0, 0, 0, 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
Log.e(TAG, "error handling message, getContext() returned no Activity");
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
Log.e(TAG, "error handling message, getContext() returned no Activity");
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case COMMAND_TEXTEDIT_HIDE:
|
case COMMAND_TEXTEDIT_HIDE:
|
||||||
@@ -952,7 +957,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
|
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
|
||||||
imm.hideSoftInputFromWindow(mTextEdit.getWindowToken(), 0);
|
imm.hideSoftInputFromWindow(mTextEdit.getWindowToken(), 0);
|
||||||
|
|
||||||
onNativeScreenKeyboardHidden();
|
mScreenKeyboardShown = false;
|
||||||
|
|
||||||
mSurface.requestFocus();
|
mSurface.requestFocus();
|
||||||
}
|
}
|
||||||
@@ -989,51 +994,53 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
msg.obj = data;
|
msg.obj = data;
|
||||||
boolean result = commandHandler.sendMessage(msg);
|
boolean result = commandHandler.sendMessage(msg);
|
||||||
|
|
||||||
if (command == COMMAND_CHANGE_WINDOW_STYLE) {
|
if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) {
|
||||||
// Ensure we don't return until the resize has actually happened,
|
if (command == COMMAND_CHANGE_WINDOW_STYLE) {
|
||||||
// or 500ms have passed.
|
// Ensure we don't return until the resize has actually happened,
|
||||||
|
// or 500ms have passed.
|
||||||
|
|
||||||
boolean bShouldWait = false;
|
boolean bShouldWait = false;
|
||||||
|
|
||||||
if (data instanceof Integer) {
|
if (data instanceof Integer) {
|
||||||
// Let's figure out if we're already laid out fullscreen or not.
|
// Let's figure out if we're already laid out fullscreen or not.
|
||||||
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
|
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
|
||||||
DisplayMetrics realMetrics = new DisplayMetrics();
|
DisplayMetrics realMetrics = new DisplayMetrics();
|
||||||
display.getRealMetrics(realMetrics);
|
display.getRealMetrics(realMetrics);
|
||||||
|
|
||||||
boolean bFullscreenLayout = ((realMetrics.widthPixels == mSurface.getWidth()) &&
|
boolean bFullscreenLayout = ((realMetrics.widthPixels == mSurface.getWidth()) &&
|
||||||
(realMetrics.heightPixels == mSurface.getHeight()));
|
(realMetrics.heightPixels == mSurface.getHeight()));
|
||||||
|
|
||||||
if ((Integer) data == 1) {
|
if ((Integer) data == 1) {
|
||||||
// If we aren't laid out fullscreen or actively in fullscreen mode already, we're going
|
// If we aren't laid out fullscreen or actively in fullscreen mode already, we're going
|
||||||
// to change size and should wait for surfaceChanged() before we return, so the size
|
// to change size and should wait for surfaceChanged() before we return, so the size
|
||||||
// is right back in native code. If we're already laid out fullscreen, though, we're
|
// is right back in native code. If we're already laid out fullscreen, though, we're
|
||||||
// not going to change size even if we change decor modes, so we shouldn't wait for
|
// not going to change size even if we change decor modes, so we shouldn't wait for
|
||||||
// surfaceChanged() -- which may not even happen -- and should return immediately.
|
// surfaceChanged() -- which may not even happen -- and should return immediately.
|
||||||
bShouldWait = !bFullscreenLayout;
|
bShouldWait = !bFullscreenLayout;
|
||||||
} else {
|
} else {
|
||||||
// If we're laid out fullscreen (even if the status bar and nav bar are present),
|
// If we're laid out fullscreen (even if the status bar and nav bar are present),
|
||||||
// or are actively in fullscreen, we're going to change size and should wait for
|
// or are actively in fullscreen, we're going to change size and should wait for
|
||||||
// surfaceChanged before we return, so the size is right back in native code.
|
// surfaceChanged before we return, so the size is right back in native code.
|
||||||
bShouldWait = bFullscreenLayout;
|
bShouldWait = bFullscreenLayout;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (bShouldWait && (getContext() != null)) {
|
if (bShouldWait && (SDLActivity.getContext() != null)) {
|
||||||
// We'll wait for the surfaceChanged() method, which will notify us
|
// We'll wait for the surfaceChanged() method, which will notify us
|
||||||
// when called. That way, we know our current size is really the
|
// when called. That way, we know our current size is really the
|
||||||
// size we need, instead of grabbing a size that's still got
|
// size we need, instead of grabbing a size that's still got
|
||||||
// the navigation and/or status bars before they're hidden.
|
// the navigation and/or status bars before they're hidden.
|
||||||
//
|
//
|
||||||
// We'll wait for up to half a second, because some devices
|
// We'll wait for up to half a second, because some devices
|
||||||
// take a surprisingly long time for the surface resize, but
|
// take a surprisingly long time for the surface resize, but
|
||||||
// then we'll just give up and return.
|
// then we'll just give up and return.
|
||||||
//
|
//
|
||||||
synchronized (getContext()) {
|
synchronized (SDLActivity.getContext()) {
|
||||||
try {
|
try {
|
||||||
getContext().wait(500);
|
SDLActivity.getContext().wait(500);
|
||||||
} catch (InterruptedException ie) {
|
} catch (InterruptedException ie) {
|
||||||
ie.printStackTrace();
|
ie.printStackTrace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1044,7 +1051,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
|
|
||||||
// C functions we call
|
// C functions we call
|
||||||
public static native String nativeGetVersion();
|
public static native String nativeGetVersion();
|
||||||
public static native void nativeSetupJNI();
|
public static native int nativeSetupJNI();
|
||||||
public static native void nativeInitMainThread();
|
public static native void nativeInitMainThread();
|
||||||
public static native void nativeCleanupMainThread();
|
public static native void nativeCleanupMainThread();
|
||||||
public static native int nativeRunMain(String library, String function, Object arguments);
|
public static native int nativeRunMain(String library, String function, Object arguments);
|
||||||
@@ -1065,14 +1072,12 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
public static native void onNativeTouch(int touchDevId, int pointerFingerId,
|
public static native void onNativeTouch(int touchDevId, int pointerFingerId,
|
||||||
int action, float x,
|
int action, float x,
|
||||||
float y, float p);
|
float y, float p);
|
||||||
public static native void onNativePen(int penId, int device_type, int button, int action, float x, float y, float p);
|
public static native void onNativePen(int penId, int button, int action, float x, float y, float p);
|
||||||
public static native void onNativeAccel(float x, float y, float z);
|
public static native void onNativeAccel(float x, float y, float z);
|
||||||
public static native void onNativeClipboardChanged();
|
public static native void onNativeClipboardChanged();
|
||||||
public static native void onNativeSurfaceCreated();
|
public static native void onNativeSurfaceCreated();
|
||||||
public static native void onNativeSurfaceChanged();
|
public static native void onNativeSurfaceChanged();
|
||||||
public static native void onNativeSurfaceDestroyed();
|
public static native void onNativeSurfaceDestroyed();
|
||||||
public static native void onNativeScreenKeyboardShown();
|
|
||||||
public static native void onNativeScreenKeyboardHidden();
|
|
||||||
public static native String nativeGetHint(String name);
|
public static native String nativeGetHint(String name);
|
||||||
public static native boolean nativeGetHintBoolean(String name, boolean default_value);
|
public static native boolean nativeGetHintBoolean(String name, boolean default_value);
|
||||||
public static native void nativeSetenv(String name, String value);
|
public static native void nativeSetenv(String name, String value);
|
||||||
@@ -1086,9 +1091,6 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
public static native boolean nativeAllowRecreateActivity();
|
public static native boolean nativeAllowRecreateActivity();
|
||||||
public static native int nativeCheckSDLThreadCounter();
|
public static native int nativeCheckSDLThreadCounter();
|
||||||
public static native void onNativeFileDialog(int requestCode, String[] filelist, int filter);
|
public static native void onNativeFileDialog(int requestCode, String[] filelist, int filter);
|
||||||
public static native void onNativePinchStart();
|
|
||||||
public static native void onNativePinchUpdate(float scale);
|
|
||||||
public static native void onNativePinchEnd();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
@@ -1126,11 +1128,6 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
int orientation_landscape = -1;
|
int orientation_landscape = -1;
|
||||||
int orientation_portrait = -1;
|
int orientation_portrait = -1;
|
||||||
|
|
||||||
if (w <= 1 || h <= 1) {
|
|
||||||
// Invalid width/height, ignore this request
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* If set, hint "explicitly controls which UI orientations are allowed". */
|
/* If set, hint "explicitly controls which UI orientations are allowed". */
|
||||||
if (hint.contains("LandscapeRight") && hint.contains("LandscapeLeft")) {
|
if (hint.contains("LandscapeRight") && hint.contains("LandscapeLeft")) {
|
||||||
orientation_landscape = ActivityInfo.SCREEN_ORIENTATION_USER_LANDSCAPE;
|
orientation_landscape = ActivityInfo.SCREEN_ORIENTATION_USER_LANDSCAPE;
|
||||||
@@ -1211,6 +1208,24 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This method is called by SDL using JNI.
|
||||||
|
*/
|
||||||
|
public static boolean isScreenKeyboardShown()
|
||||||
|
{
|
||||||
|
if (mTextEdit == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!mScreenKeyboardShown) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
InputMethodManager imm = (InputMethodManager) SDL.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
|
||||||
|
return imm.isAcceptingText();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
@@ -1255,7 +1270,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
public static Activity getContext() {
|
public static Context getContext() {
|
||||||
return SDL.getContext();
|
return SDL.getContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1270,10 +1285,10 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
if (Build.MANUFACTURER.equals("MINIX") && Build.MODEL.equals("NEO-U1")) {
|
if (Build.MANUFACTURER.equals("MINIX") && Build.MODEL.equals("NEO-U1")) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (Build.MANUFACTURER.equals("Amlogic") &&
|
if (Build.MANUFACTURER.equals("Amlogic") && Build.MODEL.equals("X96-W")) {
|
||||||
(Build.MODEL.startsWith("TV") ||
|
return true;
|
||||||
Build.MODEL.equals("X96-W") ||
|
}
|
||||||
Build.MODEL.equals("A95X-R1"))) {
|
if (Build.MANUFACTURER.equals("Amlogic") && Build.MODEL.startsWith("TV")) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -1316,17 +1331,10 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
public static boolean isChromebook() {
|
public static boolean isChromebook() {
|
||||||
// https://stackoverflow.com/questions/39784415/how-to-detect-programmatically-if-android-app-is-running-in-chrome-book-or-in
|
if (getContext() == null) {
|
||||||
if (getContext() != null) {
|
return false;
|
||||||
if (getContext().getPackageManager().hasSystemFeature("org.chromium.arc")
|
|
||||||
|| getContext().getPackageManager().hasSystemFeature("org.chromium.arc.device_management")) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
return getContext().getPackageManager().hasSystemFeature("org.chromium.arc.device_management");
|
||||||
// Running on AVD emulator
|
|
||||||
boolean isChromebookEmulator = (Build.MODEL != null && Build.MODEL.startsWith("sdk_gpc_"));
|
|
||||||
return isChromebookEmulator;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1416,7 +1424,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
params.topMargin = y;
|
params.topMargin = y;
|
||||||
|
|
||||||
if (mTextEdit == null) {
|
if (mTextEdit == null) {
|
||||||
mTextEdit = new SDLDummyEdit(getContext());
|
mTextEdit = new SDLDummyEdit(SDL.getContext());
|
||||||
|
|
||||||
mLayout.addView(mTextEdit, params);
|
mLayout.addView(mTextEdit, params);
|
||||||
} else {
|
} else {
|
||||||
@@ -1427,12 +1435,10 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
mTextEdit.setVisibility(View.VISIBLE);
|
mTextEdit.setVisibility(View.VISIBLE);
|
||||||
mTextEdit.requestFocus();
|
mTextEdit.requestFocus();
|
||||||
|
|
||||||
InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
|
InputMethodManager imm = (InputMethodManager) SDL.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
|
||||||
imm.showSoftInput(mTextEdit, 0);
|
imm.showSoftInput(mTextEdit, 0);
|
||||||
|
|
||||||
if (imm.isAcceptingText()) {
|
mScreenKeyboardShown = true;
|
||||||
onNativeScreenKeyboardShown();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1761,14 +1767,16 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
private final Runnable rehideSystemUi = new Runnable() {
|
private final Runnable rehideSystemUi = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
int flags = View.SYSTEM_UI_FLAG_FULLSCREEN |
|
if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) {
|
||||||
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
|
int flags = View.SYSTEM_UI_FLAG_FULLSCREEN |
|
||||||
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY |
|
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
|
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY |
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
|
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.INVISIBLE;
|
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
|
||||||
|
View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.INVISIBLE;
|
||||||
|
|
||||||
SDLActivity.this.getWindow().getDecorView().setSystemUiVisibility(flags);
|
SDLActivity.this.getWindow().getDecorView().setSystemUiVisibility(flags);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1923,7 +1931,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
}
|
}
|
||||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||||
try {
|
try {
|
||||||
mSurface.setPointerIcon(PointerIcon.getSystemIcon(getContext(), cursor_type));
|
mSurface.setPointerIcon(PointerIcon.getSystemIcon(SDL.getContext(), cursor_type));
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -1963,9 +1971,12 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||||||
Intent i = new Intent(Intent.ACTION_VIEW);
|
Intent i = new Intent(Intent.ACTION_VIEW);
|
||||||
i.setData(Uri.parse(url));
|
i.setData(Uri.parse(url));
|
||||||
|
|
||||||
int flags = Intent.FLAG_ACTIVITY_NO_HISTORY
|
int flags = Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_MULTIPLE_TASK;
|
||||||
| Intent.FLAG_ACTIVITY_MULTIPLE_TASK
|
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||||
| Intent.FLAG_ACTIVITY_NEW_DOCUMENT;
|
flags |= Intent.FLAG_ACTIVITY_NEW_DOCUMENT;
|
||||||
|
} else {
|
||||||
|
flags |= Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET;
|
||||||
|
}
|
||||||
i.addFlags(flags);
|
i.addFlags(flags);
|
||||||
|
|
||||||
mSingleton.startActivity(i);
|
mSingleton.startActivity(i);
|
||||||
@@ -2185,11 +2196,7 @@ class SDLClipboardHandler implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean clipboardHasText() {
|
public boolean clipboardHasText() {
|
||||||
if (Build.VERSION.SDK_INT >= 28 /* Android 9 (P) */) {
|
return mClipMgr.hasPrimaryClip();
|
||||||
return mClipMgr.hasPrimaryClip();
|
|
||||||
} else {
|
|
||||||
return mClipMgr.hasText();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String clipboardGetText() {
|
public String clipboardGetText() {
|
||||||
@@ -2207,19 +2214,10 @@ class SDLClipboardHandler implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void clipboardSetText(String string) {
|
public void clipboardSetText(String string) {
|
||||||
mClipMgr.removePrimaryClipChangedListener(this);
|
mClipMgr.removePrimaryClipChangedListener(this);
|
||||||
if (string.isEmpty()) {
|
ClipData clip = ClipData.newPlainText(null, string);
|
||||||
if (Build.VERSION.SDK_INT >= 28 /* Android 9 (P) */) {
|
mClipMgr.setPrimaryClip(clip);
|
||||||
mClipMgr.clearPrimaryClip();
|
mClipMgr.addPrimaryClipChangedListener(this);
|
||||||
} else {
|
|
||||||
ClipData clip = ClipData.newPlainText(null, "");
|
|
||||||
mClipMgr.setPrimaryClip(clip);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
ClipData clip = ClipData.newPlainText(null, string);
|
|
||||||
mClipMgr.setPrimaryClip(clip);
|
|
||||||
}
|
|
||||||
mClipMgr.addPrimaryClipChangedListener(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -10,14 +10,14 @@ import android.util.Log;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
class SDLAudioManager {
|
public class SDLAudioManager {
|
||||||
protected static final String TAG = "SDLAudio";
|
protected static final String TAG = "SDLAudio";
|
||||||
|
|
||||||
protected static Context mContext;
|
protected static Context mContext;
|
||||||
|
|
||||||
private static AudioDeviceCallback mAudioDeviceCallback;
|
private static AudioDeviceCallback mAudioDeviceCallback;
|
||||||
|
|
||||||
static void initialize() {
|
public static void initialize() {
|
||||||
mAudioDeviceCallback = null;
|
mAudioDeviceCallback = null;
|
||||||
|
|
||||||
if(Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */)
|
if(Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */)
|
||||||
@@ -26,25 +26,25 @@ class SDLAudioManager {
|
|||||||
@Override
|
@Override
|
||||||
public void onAudioDevicesAdded(AudioDeviceInfo[] addedDevices) {
|
public void onAudioDevicesAdded(AudioDeviceInfo[] addedDevices) {
|
||||||
for (AudioDeviceInfo deviceInfo : addedDevices) {
|
for (AudioDeviceInfo deviceInfo : addedDevices) {
|
||||||
nativeAddAudioDevice(deviceInfo.isSink(), deviceInfo.getProductName().toString(), deviceInfo.getId());
|
addAudioDevice(deviceInfo.isSink(), deviceInfo.getProductName().toString(), deviceInfo.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onAudioDevicesRemoved(AudioDeviceInfo[] removedDevices) {
|
public void onAudioDevicesRemoved(AudioDeviceInfo[] removedDevices) {
|
||||||
for (AudioDeviceInfo deviceInfo : removedDevices) {
|
for (AudioDeviceInfo deviceInfo : removedDevices) {
|
||||||
nativeRemoveAudioDevice(deviceInfo.isSink(), deviceInfo.getId());
|
removeAudioDevice(deviceInfo.isSink(), deviceInfo.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void setContext(Context context) {
|
public static void setContext(Context context) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void release(Context context) {
|
public static void release(Context context) {
|
||||||
// no-op atm
|
// no-op atm
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ class SDLAudioManager {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void registerAudioDeviceCallback() {
|
public static void registerAudioDeviceCallback() {
|
||||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||||
// get an initial list now, before hotplug callbacks fire.
|
// get an initial list now, before hotplug callbacks fire.
|
||||||
@@ -82,16 +82,16 @@ class SDLAudioManager {
|
|||||||
if (dev.getType() == AudioDeviceInfo.TYPE_TELEPHONY) {
|
if (dev.getType() == AudioDeviceInfo.TYPE_TELEPHONY) {
|
||||||
continue; // Device cannot be opened
|
continue; // Device cannot be opened
|
||||||
}
|
}
|
||||||
nativeAddAudioDevice(dev.isSink(), dev.getProductName().toString(), dev.getId());
|
addAudioDevice(dev.isSink(), dev.getProductName().toString(), dev.getId());
|
||||||
}
|
}
|
||||||
for (AudioDeviceInfo dev : audioManager.getDevices(AudioManager.GET_DEVICES_INPUTS)) {
|
for (AudioDeviceInfo dev : audioManager.getDevices(AudioManager.GET_DEVICES_INPUTS)) {
|
||||||
nativeAddAudioDevice(dev.isSink(), dev.getProductName().toString(), dev.getId());
|
addAudioDevice(dev.isSink(), dev.getProductName().toString(), dev.getId());
|
||||||
}
|
}
|
||||||
audioManager.registerAudioDeviceCallback(mAudioDeviceCallback, null);
|
audioManager.registerAudioDeviceCallback(mAudioDeviceCallback, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void unregisterAudioDeviceCallback() {
|
public static void unregisterAudioDeviceCallback() {
|
||||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||||
audioManager.unregisterAudioDeviceCallback(mAudioDeviceCallback);
|
audioManager.unregisterAudioDeviceCallback(mAudioDeviceCallback);
|
||||||
@@ -99,7 +99,7 @@ class SDLAudioManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** This method is called by SDL using JNI. */
|
/** This method is called by SDL using JNI. */
|
||||||
static void audioSetThreadPriority(boolean recording, int device_id) {
|
public static void audioSetThreadPriority(boolean recording, int device_id) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
/* Set thread name */
|
/* Set thread name */
|
||||||
@@ -117,10 +117,10 @@ class SDLAudioManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static native void nativeSetupJNI();
|
public static native int nativeSetupJNI();
|
||||||
|
|
||||||
static native void nativeRemoveAudioDevice(boolean recording, int deviceId);
|
public static native void removeAudioDevice(boolean recording, int deviceId);
|
||||||
|
|
||||||
static native void nativeAddAudioDevice(boolean recording, String name, int deviceId);
|
public static native void addAudioDevice(boolean recording, String name, int deviceId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,11 +6,6 @@ import java.util.Comparator;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.hardware.lights.Light;
|
|
||||||
import android.hardware.lights.LightsRequest;
|
|
||||||
import android.hardware.lights.LightsManager;
|
|
||||||
import android.hardware.lights.LightState;
|
|
||||||
import android.graphics.Color;
|
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.VibrationEffect;
|
import android.os.VibrationEffect;
|
||||||
import android.os.Vibrator;
|
import android.os.Vibrator;
|
||||||
@@ -25,20 +20,20 @@ import android.view.View;
|
|||||||
public class SDLControllerManager
|
public class SDLControllerManager
|
||||||
{
|
{
|
||||||
|
|
||||||
static native void nativeSetupJNI();
|
public static native int nativeSetupJNI();
|
||||||
|
|
||||||
static native void nativeAddJoystick(int device_id, String name, String desc,
|
public static native void nativeAddJoystick(int device_id, String name, String desc,
|
||||||
int vendor_id, int product_id,
|
int vendor_id, int product_id,
|
||||||
int button_mask,
|
int button_mask,
|
||||||
int naxes, int axis_mask, int nhats, boolean can_rumble, boolean has_rgb_led);
|
int naxes, int axis_mask, int nhats, boolean can_rumble);
|
||||||
static native void nativeRemoveJoystick(int device_id);
|
public static native void nativeRemoveJoystick(int device_id);
|
||||||
static native void nativeAddHaptic(int device_id, String name);
|
public static native void nativeAddHaptic(int device_id, String name);
|
||||||
static native void nativeRemoveHaptic(int device_id);
|
public static native void nativeRemoveHaptic(int device_id);
|
||||||
static public native boolean onNativePadDown(int device_id, int keycode);
|
public static native boolean onNativePadDown(int device_id, int keycode);
|
||||||
static public native boolean onNativePadUp(int device_id, int keycode);
|
public static native boolean onNativePadUp(int device_id, int keycode);
|
||||||
static native void onNativeJoy(int device_id, int axis,
|
public static native void onNativeJoy(int device_id, int axis,
|
||||||
float value);
|
float value);
|
||||||
static native void onNativeHat(int device_id, int hat_id,
|
public static native void onNativeHat(int device_id, int hat_id,
|
||||||
int x, int y);
|
int x, int y);
|
||||||
|
|
||||||
protected static SDLJoystickHandler mJoystickHandler;
|
protected static SDLJoystickHandler mJoystickHandler;
|
||||||
@@ -46,9 +41,13 @@ public class SDLControllerManager
|
|||||||
|
|
||||||
private static final String TAG = "SDLControllerManager";
|
private static final String TAG = "SDLControllerManager";
|
||||||
|
|
||||||
static void initialize() {
|
public static void initialize() {
|
||||||
if (mJoystickHandler == null) {
|
if (mJoystickHandler == null) {
|
||||||
mJoystickHandler = new SDLJoystickHandler();
|
if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) {
|
||||||
|
mJoystickHandler = new SDLJoystickHandler_API19();
|
||||||
|
} else {
|
||||||
|
mJoystickHandler = new SDLJoystickHandler_API16();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mHapticHandler == null) {
|
if (mHapticHandler == null) {
|
||||||
@@ -63,55 +62,48 @@ public class SDLControllerManager
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Joystick glue code, just a series of stubs that redirect to the SDLJoystickHandler instance
|
// Joystick glue code, just a series of stubs that redirect to the SDLJoystickHandler instance
|
||||||
static public boolean handleJoystickMotionEvent(MotionEvent event) {
|
public static boolean handleJoystickMotionEvent(MotionEvent event) {
|
||||||
return mJoystickHandler.handleMotionEvent(event);
|
return mJoystickHandler.handleMotionEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
static void pollInputDevices() {
|
public static void pollInputDevices() {
|
||||||
mJoystickHandler.pollInputDevices();
|
mJoystickHandler.pollInputDevices();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
static void joystickSetLED(int device_id, int red, int green, int blue) {
|
public static void pollHapticDevices() {
|
||||||
mJoystickHandler.setLED(device_id, red, green, blue);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This method is called by SDL using JNI.
|
|
||||||
*/
|
|
||||||
static void pollHapticDevices() {
|
|
||||||
mHapticHandler.pollHapticDevices();
|
mHapticHandler.pollHapticDevices();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
static void hapticRun(int device_id, float intensity, int length) {
|
public static void hapticRun(int device_id, float intensity, int length) {
|
||||||
mHapticHandler.run(device_id, intensity, length);
|
mHapticHandler.run(device_id, intensity, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
static void hapticRumble(int device_id, float low_frequency_intensity, float high_frequency_intensity, int length) {
|
public static void hapticRumble(int device_id, float low_frequency_intensity, float high_frequency_intensity, int length) {
|
||||||
mHapticHandler.rumble(device_id, low_frequency_intensity, high_frequency_intensity, length);
|
mHapticHandler.rumble(device_id, low_frequency_intensity, high_frequency_intensity, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called by SDL using JNI.
|
* This method is called by SDL using JNI.
|
||||||
*/
|
*/
|
||||||
static void hapticStop(int device_id)
|
public static void hapticStop(int device_id)
|
||||||
{
|
{
|
||||||
mHapticHandler.stop(device_id);
|
mHapticHandler.stop(device_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if a given device is considered a possible SDL joystick
|
// Check if a given device is considered a possible SDL joystick
|
||||||
static public boolean isDeviceSDLJoystick(int deviceId) {
|
public static boolean isDeviceSDLJoystick(int deviceId) {
|
||||||
InputDevice device = InputDevice.getDevice(deviceId);
|
InputDevice device = InputDevice.getDevice(deviceId);
|
||||||
// We cannot use InputDevice.isVirtual before API 16, so let's accept
|
// We cannot use InputDevice.isVirtual before API 16, so let's accept
|
||||||
// only nonnegative device ids (VIRTUAL_KEYBOARD equals -1)
|
// only nonnegative device ids (VIRTUAL_KEYBOARD equals -1)
|
||||||
@@ -141,18 +133,33 @@ public class SDLControllerManager
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Actual joystick functionality available for API >= 19 devices */
|
|
||||||
class SDLJoystickHandler {
|
class SDLJoystickHandler {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handles given MotionEvent.
|
||||||
|
* @param event the event to be handled.
|
||||||
|
* @return if given event was processed.
|
||||||
|
*/
|
||||||
|
public boolean handleMotionEvent(MotionEvent event) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handles adding and removing of input devices.
|
||||||
|
*/
|
||||||
|
public void pollInputDevices() {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Actual joystick functionality available for API >= 12 devices */
|
||||||
|
class SDLJoystickHandler_API16 extends SDLJoystickHandler {
|
||||||
|
|
||||||
static class SDLJoystick {
|
static class SDLJoystick {
|
||||||
int device_id;
|
public int device_id;
|
||||||
String name;
|
public String name;
|
||||||
String desc;
|
public String desc;
|
||||||
ArrayList<InputDevice.MotionRange> axes;
|
public ArrayList<InputDevice.MotionRange> axes;
|
||||||
ArrayList<InputDevice.MotionRange> hats;
|
public ArrayList<InputDevice.MotionRange> hats;
|
||||||
ArrayList<Light> lights;
|
|
||||||
LightsManager.LightsSession lightsSession;
|
|
||||||
}
|
}
|
||||||
static class RangeComparator implements Comparator<InputDevice.MotionRange> {
|
static class RangeComparator implements Comparator<InputDevice.MotionRange> {
|
||||||
@Override
|
@Override
|
||||||
@@ -203,15 +210,13 @@ class SDLJoystickHandler {
|
|||||||
|
|
||||||
private final ArrayList<SDLJoystick> mJoysticks;
|
private final ArrayList<SDLJoystick> mJoysticks;
|
||||||
|
|
||||||
SDLJoystickHandler() {
|
public SDLJoystickHandler_API16() {
|
||||||
|
|
||||||
mJoysticks = new ArrayList<SDLJoystick>();
|
mJoysticks = new ArrayList<SDLJoystick>();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@Override
|
||||||
* Handles adding and removing of input devices.
|
public void pollInputDevices() {
|
||||||
*/
|
|
||||||
synchronized void pollInputDevices() {
|
|
||||||
int[] deviceIds = InputDevice.getDeviceIds();
|
int[] deviceIds = InputDevice.getDeviceIds();
|
||||||
|
|
||||||
for (int device_id : deviceIds) {
|
for (int device_id : deviceIds) {
|
||||||
@@ -225,7 +230,6 @@ class SDLJoystickHandler {
|
|||||||
joystick.desc = getJoystickDescriptor(joystickDevice);
|
joystick.desc = getJoystickDescriptor(joystickDevice);
|
||||||
joystick.axes = new ArrayList<InputDevice.MotionRange>();
|
joystick.axes = new ArrayList<InputDevice.MotionRange>();
|
||||||
joystick.hats = new ArrayList<InputDevice.MotionRange>();
|
joystick.hats = new ArrayList<InputDevice.MotionRange>();
|
||||||
joystick.lights = new ArrayList<Light>();
|
|
||||||
|
|
||||||
List<InputDevice.MotionRange> ranges = joystickDevice.getMotionRanges();
|
List<InputDevice.MotionRange> ranges = joystickDevice.getMotionRanges();
|
||||||
Collections.sort(ranges, new RangeComparator());
|
Collections.sort(ranges, new RangeComparator());
|
||||||
@@ -240,30 +244,18 @@ class SDLJoystickHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
boolean can_rumble = false;
|
boolean can_rumble = false;
|
||||||
boolean has_rgb_led = false;
|
|
||||||
if (Build.VERSION.SDK_INT >= 31 /* Android 12.0 (S) */) {
|
if (Build.VERSION.SDK_INT >= 31 /* Android 12.0 (S) */) {
|
||||||
VibratorManager vibratorManager = joystickDevice.getVibratorManager();
|
VibratorManager manager = joystickDevice.getVibratorManager();
|
||||||
int[] vibrators = vibratorManager.getVibratorIds();
|
int[] vibrators = manager.getVibratorIds();
|
||||||
if (vibrators.length > 0) {
|
if (vibrators.length > 0) {
|
||||||
can_rumble = true;
|
can_rumble = true;
|
||||||
}
|
}
|
||||||
LightsManager lightsManager = joystickDevice.getLightsManager();
|
|
||||||
List<Light> lights = lightsManager.getLights();
|
|
||||||
for (Light light : lights) {
|
|
||||||
if (light.hasRgbControl()) {
|
|
||||||
joystick.lights.add(light);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!joystick.lights.isEmpty()) {
|
|
||||||
joystick.lightsSession = lightsManager.openSession();
|
|
||||||
has_rgb_led = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
mJoysticks.add(joystick);
|
mJoysticks.add(joystick);
|
||||||
SDLControllerManager.nativeAddJoystick(joystick.device_id, joystick.name, joystick.desc,
|
SDLControllerManager.nativeAddJoystick(joystick.device_id, joystick.name, joystick.desc,
|
||||||
getVendorId(joystickDevice), getProductId(joystickDevice),
|
getVendorId(joystickDevice), getProductId(joystickDevice),
|
||||||
getButtonMask(joystickDevice), joystick.axes.size(), getAxisMask(joystick.axes), joystick.hats.size()/2, can_rumble, has_rgb_led);
|
getButtonMask(joystickDevice), joystick.axes.size(), getAxisMask(joystick.axes), joystick.hats.size()/2, can_rumble);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -289,16 +281,6 @@ class SDLJoystickHandler {
|
|||||||
SDLControllerManager.nativeRemoveJoystick(device_id);
|
SDLControllerManager.nativeRemoveJoystick(device_id);
|
||||||
for (int i = 0; i < mJoysticks.size(); i++) {
|
for (int i = 0; i < mJoysticks.size(); i++) {
|
||||||
if (mJoysticks.get(i).device_id == device_id) {
|
if (mJoysticks.get(i).device_id == device_id) {
|
||||||
if (Build.VERSION.SDK_INT >= 31 /* Android 12.0 (S) */) {
|
|
||||||
if (mJoysticks.get(i).lightsSession != null) {
|
|
||||||
try {
|
|
||||||
mJoysticks.get(i).lightsSession.close();
|
|
||||||
} catch (Exception e) {
|
|
||||||
// Session may already be unregistered when device disconnects
|
|
||||||
}
|
|
||||||
mJoysticks.get(i).lightsSession = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mJoysticks.remove(i);
|
mJoysticks.remove(i);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -307,7 +289,7 @@ class SDLJoystickHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized protected SDLJoystick getJoystick(int device_id) {
|
protected SDLJoystick getJoystick(int device_id) {
|
||||||
for (SDLJoystick joystick : mJoysticks) {
|
for (SDLJoystick joystick : mJoysticks) {
|
||||||
if (joystick.device_id == device_id) {
|
if (joystick.device_id == device_id) {
|
||||||
return joystick;
|
return joystick;
|
||||||
@@ -316,12 +298,8 @@ class SDLJoystickHandler {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@Override
|
||||||
* Handles given MotionEvent.
|
public boolean handleMotionEvent(MotionEvent event) {
|
||||||
* @param event the event to be handled.
|
|
||||||
* @return if given event was processed.
|
|
||||||
*/
|
|
||||||
boolean handleMotionEvent(MotionEvent event) {
|
|
||||||
int actionPointerIndex = event.getActionIndex();
|
int actionPointerIndex = event.getActionIndex();
|
||||||
int action = event.getActionMasked();
|
int action = event.getActionMasked();
|
||||||
if (action == MotionEvent.ACTION_MOVE) {
|
if (action == MotionEvent.ACTION_MOVE) {
|
||||||
@@ -343,7 +321,7 @@ class SDLJoystickHandler {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
String getJoystickDescriptor(InputDevice joystickDevice) {
|
public String getJoystickDescriptor(InputDevice joystickDevice) {
|
||||||
String desc = joystickDevice.getDescriptor();
|
String desc = joystickDevice.getDescriptor();
|
||||||
|
|
||||||
if (desc != null && !desc.isEmpty()) {
|
if (desc != null && !desc.isEmpty()) {
|
||||||
@@ -352,16 +330,34 @@ class SDLJoystickHandler {
|
|||||||
|
|
||||||
return joystickDevice.getName();
|
return joystickDevice.getName();
|
||||||
}
|
}
|
||||||
|
public int getProductId(InputDevice joystickDevice) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
public int getVendorId(InputDevice joystickDevice) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
public int getAxisMask(List<InputDevice.MotionRange> ranges) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
public int getButtonMask(InputDevice joystickDevice) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int getProductId(InputDevice joystickDevice) {
|
class SDLJoystickHandler_API19 extends SDLJoystickHandler_API16 {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getProductId(InputDevice joystickDevice) {
|
||||||
return joystickDevice.getProductId();
|
return joystickDevice.getProductId();
|
||||||
}
|
}
|
||||||
|
|
||||||
int getVendorId(InputDevice joystickDevice) {
|
@Override
|
||||||
|
public int getVendorId(InputDevice joystickDevice) {
|
||||||
return joystickDevice.getVendorId();
|
return joystickDevice.getVendorId();
|
||||||
}
|
}
|
||||||
|
|
||||||
int getAxisMask(List<InputDevice.MotionRange> ranges) {
|
@Override
|
||||||
|
public int getAxisMask(List<InputDevice.MotionRange> ranges) {
|
||||||
// For compatibility, keep computing the axis mask like before,
|
// For compatibility, keep computing the axis mask like before,
|
||||||
// only really distinguishing 2, 4 and 6 axes.
|
// only really distinguishing 2, 4 and 6 axes.
|
||||||
int axis_mask = 0;
|
int axis_mask = 0;
|
||||||
@@ -397,7 +393,8 @@ class SDLJoystickHandler {
|
|||||||
return axis_mask;
|
return axis_mask;
|
||||||
}
|
}
|
||||||
|
|
||||||
int getButtonMask(InputDevice joystickDevice) {
|
@Override
|
||||||
|
public int getButtonMask(InputDevice joystickDevice) {
|
||||||
int button_mask = 0;
|
int button_mask = 0;
|
||||||
int[] keys = new int[] {
|
int[] keys = new int[] {
|
||||||
KeyEvent.KEYCODE_BUTTON_A,
|
KeyEvent.KEYCODE_BUTTON_A,
|
||||||
@@ -490,29 +487,11 @@ class SDLJoystickHandler {
|
|||||||
}
|
}
|
||||||
return button_mask;
|
return button_mask;
|
||||||
}
|
}
|
||||||
|
|
||||||
void setLED(int device_id, int red, int green, int blue) {
|
|
||||||
if (Build.VERSION.SDK_INT < 31 /* Android 12.0 (S) */) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
SDLJoystick joystick = getJoystick(device_id);
|
|
||||||
if (joystick == null || joystick.lights.isEmpty()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
LightsRequest.Builder lightsRequest = new LightsRequest.Builder();
|
|
||||||
LightState lightState = new LightState.Builder().setColor(Color.rgb(red, green, blue)).build();
|
|
||||||
for (Light light : joystick.lights) {
|
|
||||||
if (light.hasRgbControl()) {
|
|
||||||
lightsRequest.addLight(light, lightState);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
joystick.lightsSession.requestLights(lightsRequest.build());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class SDLHapticHandler_API31 extends SDLHapticHandler {
|
class SDLHapticHandler_API31 extends SDLHapticHandler {
|
||||||
@Override
|
@Override
|
||||||
void run(int device_id, float intensity, int length) {
|
public void run(int device_id, float intensity, int length) {
|
||||||
SDLHaptic haptic = getHaptic(device_id);
|
SDLHaptic haptic = getHaptic(device_id);
|
||||||
if (haptic != null) {
|
if (haptic != null) {
|
||||||
vibrate(haptic.vib, intensity, length);
|
vibrate(haptic.vib, intensity, length);
|
||||||
@@ -520,17 +499,12 @@ class SDLHapticHandler_API31 extends SDLHapticHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
void rumble(int device_id, float low_frequency_intensity, float high_frequency_intensity, int length) {
|
public void rumble(int device_id, float low_frequency_intensity, float high_frequency_intensity, int length) {
|
||||||
InputDevice device = InputDevice.getDevice(device_id);
|
InputDevice device = InputDevice.getDevice(device_id);
|
||||||
if (device == null) {
|
if (device == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT < 31 /* Android 12.0 (S) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
VibratorManager manager = device.getVibratorManager();
|
VibratorManager manager = device.getVibratorManager();
|
||||||
int[] vibrators = manager.getVibratorIds();
|
int[] vibrators = manager.getVibratorIds();
|
||||||
if (vibrators.length >= 2) {
|
if (vibrators.length >= 2) {
|
||||||
@@ -543,12 +517,6 @@ class SDLHapticHandler_API31 extends SDLHapticHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void vibrate(Vibrator vibrator, float intensity, int length) {
|
private void vibrate(Vibrator vibrator, float intensity, int length) {
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT < 31 /* Android 12.0 (S) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (intensity == 0.0f) {
|
if (intensity == 0.0f) {
|
||||||
vibrator.cancel();
|
vibrator.cancel();
|
||||||
return;
|
return;
|
||||||
@@ -575,13 +543,7 @@ class SDLHapticHandler_API31 extends SDLHapticHandler {
|
|||||||
|
|
||||||
class SDLHapticHandler_API26 extends SDLHapticHandler {
|
class SDLHapticHandler_API26 extends SDLHapticHandler {
|
||||||
@Override
|
@Override
|
||||||
void run(int device_id, float intensity, int length) {
|
public void run(int device_id, float intensity, int length) {
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT < 26 /* Android 8.0 (O) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
SDLHaptic haptic = getHaptic(device_id);
|
SDLHaptic haptic = getHaptic(device_id);
|
||||||
if (haptic != null) {
|
if (haptic != null) {
|
||||||
if (intensity == 0.0f) {
|
if (intensity == 0.0f) {
|
||||||
@@ -613,36 +575,36 @@ class SDLHapticHandler_API26 extends SDLHapticHandler {
|
|||||||
class SDLHapticHandler {
|
class SDLHapticHandler {
|
||||||
|
|
||||||
static class SDLHaptic {
|
static class SDLHaptic {
|
||||||
int device_id;
|
public int device_id;
|
||||||
String name;
|
public String name;
|
||||||
Vibrator vib;
|
public Vibrator vib;
|
||||||
}
|
}
|
||||||
|
|
||||||
private final ArrayList<SDLHaptic> mHaptics;
|
private final ArrayList<SDLHaptic> mHaptics;
|
||||||
|
|
||||||
SDLHapticHandler() {
|
public SDLHapticHandler() {
|
||||||
mHaptics = new ArrayList<SDLHaptic>();
|
mHaptics = new ArrayList<SDLHaptic>();
|
||||||
}
|
}
|
||||||
|
|
||||||
void run(int device_id, float intensity, int length) {
|
public void run(int device_id, float intensity, int length) {
|
||||||
SDLHaptic haptic = getHaptic(device_id);
|
SDLHaptic haptic = getHaptic(device_id);
|
||||||
if (haptic != null) {
|
if (haptic != null) {
|
||||||
haptic.vib.vibrate(length);
|
haptic.vib.vibrate(length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void rumble(int device_id, float low_frequency_intensity, float high_frequency_intensity, int length) {
|
public void rumble(int device_id, float low_frequency_intensity, float high_frequency_intensity, int length) {
|
||||||
// Not supported in older APIs
|
// Not supported in older APIs
|
||||||
}
|
}
|
||||||
|
|
||||||
void stop(int device_id) {
|
public void stop(int device_id) {
|
||||||
SDLHaptic haptic = getHaptic(device_id);
|
SDLHaptic haptic = getHaptic(device_id);
|
||||||
if (haptic != null) {
|
if (haptic != null) {
|
||||||
haptic.vib.cancel();
|
haptic.vib.cancel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized void pollHapticDevices() {
|
public void pollHapticDevices() {
|
||||||
|
|
||||||
final int deviceId_VIBRATOR_SERVICE = 999999;
|
final int deviceId_VIBRATOR_SERVICE = 999999;
|
||||||
boolean hasVibratorService = false;
|
boolean hasVibratorService = false;
|
||||||
@@ -690,7 +652,7 @@ class SDLHapticHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized protected SDLHaptic getHaptic(int device_id) {
|
protected SDLHaptic getHaptic(int device_id) {
|
||||||
for (SDLHaptic haptic : mHaptics) {
|
for (SDLHaptic haptic : mHaptics) {
|
||||||
if (haptic.device_id == device_id) {
|
if (haptic.device_id == device_id) {
|
||||||
return haptic;
|
return haptic;
|
||||||
@@ -701,10 +663,6 @@ class SDLHapticHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class SDLGenericMotionListener_API14 implements View.OnGenericMotionListener {
|
class SDLGenericMotionListener_API14 implements View.OnGenericMotionListener {
|
||||||
protected static final int SDL_PEN_DEVICE_TYPE_UNKNOWN = 0;
|
|
||||||
protected static final int SDL_PEN_DEVICE_TYPE_DIRECT = 1;
|
|
||||||
protected static final int SDL_PEN_DEVICE_TYPE_INDIRECT = 2;
|
|
||||||
|
|
||||||
// Generic Motion (mouse hover, joystick...) events go here
|
// Generic Motion (mouse hover, joystick...) events go here
|
||||||
@Override
|
@Override
|
||||||
public boolean onGenericMotion(View v, MotionEvent event) {
|
public boolean onGenericMotion(View v, MotionEvent event) {
|
||||||
@@ -755,11 +713,8 @@ class SDLGenericMotionListener_API14 implements View.OnGenericMotionListener {
|
|||||||
|
|
||||||
// BUTTON_STYLUS_PRIMARY is 2^5, so shift by 4, and apply SDL_PEN_INPUT_DOWN/SDL_PEN_INPUT_ERASER_TIP
|
// BUTTON_STYLUS_PRIMARY is 2^5, so shift by 4, and apply SDL_PEN_INPUT_DOWN/SDL_PEN_INPUT_ERASER_TIP
|
||||||
int buttons = (event.getButtonState() >> 4) | (1 << (toolType == MotionEvent.TOOL_TYPE_STYLUS ? 0 : 30));
|
int buttons = (event.getButtonState() >> 4) | (1 << (toolType == MotionEvent.TOOL_TYPE_STYLUS ? 0 : 30));
|
||||||
if ((event.getButtonState() & MotionEvent.BUTTON_TERTIARY) != 0) {
|
|
||||||
buttons |= 0x08;
|
|
||||||
}
|
|
||||||
|
|
||||||
SDLActivity.onNativePen(event.getPointerId(i), getPenDeviceType(event.getDevice()), buttons, action, x, y, p);
|
SDLActivity.onNativePen(event.getPointerId(i), buttons, action, x, y, p);
|
||||||
consumed = true;
|
consumed = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -769,37 +724,34 @@ class SDLGenericMotionListener_API14 implements View.OnGenericMotionListener {
|
|||||||
return consumed;
|
return consumed;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean supportsRelativeMouse() {
|
public boolean supportsRelativeMouse() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean inRelativeMode() {
|
public boolean inRelativeMode() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean setRelativeMouseEnabled(boolean enabled) {
|
public boolean setRelativeMouseEnabled(boolean enabled) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void reclaimRelativeMouseModeIfNeeded() {
|
public void reclaimRelativeMouseModeIfNeeded() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean checkRelativeEvent(MotionEvent event) {
|
public boolean checkRelativeEvent(MotionEvent event) {
|
||||||
return inRelativeMode();
|
return inRelativeMode();
|
||||||
}
|
}
|
||||||
|
|
||||||
float getEventX(MotionEvent event, int pointerIndex) {
|
public float getEventX(MotionEvent event, int pointerIndex) {
|
||||||
return event.getX(pointerIndex);
|
return event.getX(pointerIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
float getEventY(MotionEvent event, int pointerIndex) {
|
public float getEventY(MotionEvent event, int pointerIndex) {
|
||||||
return event.getY(pointerIndex);
|
return event.getY(pointerIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
int getPenDeviceType(InputDevice penDevice) {
|
|
||||||
return SDL_PEN_DEVICE_TYPE_UNKNOWN;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class SDLGenericMotionListener_API24 extends SDLGenericMotionListener_API14 {
|
class SDLGenericMotionListener_API24 extends SDLGenericMotionListener_API14 {
|
||||||
@@ -808,28 +760,23 @@ class SDLGenericMotionListener_API24 extends SDLGenericMotionListener_API14 {
|
|||||||
private boolean mRelativeModeEnabled;
|
private boolean mRelativeModeEnabled;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean supportsRelativeMouse() {
|
public boolean supportsRelativeMouse() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean inRelativeMode() {
|
public boolean inRelativeMode() {
|
||||||
return mRelativeModeEnabled;
|
return mRelativeModeEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean setRelativeMouseEnabled(boolean enabled) {
|
public boolean setRelativeMouseEnabled(boolean enabled) {
|
||||||
mRelativeModeEnabled = enabled;
|
mRelativeModeEnabled = enabled;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
float getEventX(MotionEvent event, int pointerIndex) {
|
public float getEventX(MotionEvent event, int pointerIndex) {
|
||||||
if (Build.VERSION.SDK_INT < 24 /* Android 7.0 (N) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mRelativeModeEnabled && event.getToolType(pointerIndex) == MotionEvent.TOOL_TYPE_MOUSE) {
|
if (mRelativeModeEnabled && event.getToolType(pointerIndex) == MotionEvent.TOOL_TYPE_MOUSE) {
|
||||||
return event.getAxisValue(MotionEvent.AXIS_RELATIVE_X, pointerIndex);
|
return event.getAxisValue(MotionEvent.AXIS_RELATIVE_X, pointerIndex);
|
||||||
} else {
|
} else {
|
||||||
@@ -838,12 +785,7 @@ class SDLGenericMotionListener_API24 extends SDLGenericMotionListener_API14 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
float getEventY(MotionEvent event, int pointerIndex) {
|
public float getEventY(MotionEvent event, int pointerIndex) {
|
||||||
if (Build.VERSION.SDK_INT < 24 /* Android 7.0 (N) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mRelativeModeEnabled && event.getToolType(pointerIndex) == MotionEvent.TOOL_TYPE_MOUSE) {
|
if (mRelativeModeEnabled && event.getToolType(pointerIndex) == MotionEvent.TOOL_TYPE_MOUSE) {
|
||||||
return event.getAxisValue(MotionEvent.AXIS_RELATIVE_Y, pointerIndex);
|
return event.getAxisValue(MotionEvent.AXIS_RELATIVE_Y, pointerIndex);
|
||||||
} else {
|
} else {
|
||||||
@@ -857,23 +799,17 @@ class SDLGenericMotionListener_API26 extends SDLGenericMotionListener_API24 {
|
|||||||
private boolean mRelativeModeEnabled;
|
private boolean mRelativeModeEnabled;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean supportsRelativeMouse() {
|
public boolean supportsRelativeMouse() {
|
||||||
return (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */);
|
return (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean inRelativeMode() {
|
public boolean inRelativeMode() {
|
||||||
return mRelativeModeEnabled;
|
return mRelativeModeEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean setRelativeMouseEnabled(boolean enabled) {
|
public boolean setRelativeMouseEnabled(boolean enabled) {
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT < 26 /* Android 8.0 (O) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */) {
|
if (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */) {
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
SDLActivity.getContentView().requestPointerCapture();
|
SDLActivity.getContentView().requestPointerCapture();
|
||||||
@@ -888,48 +824,26 @@ class SDLGenericMotionListener_API26 extends SDLGenericMotionListener_API24 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
void reclaimRelativeMouseModeIfNeeded() {
|
public void reclaimRelativeMouseModeIfNeeded() {
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT < 26 /* Android 8.0 (O) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mRelativeModeEnabled && !SDLActivity.isDeXMode()) {
|
if (mRelativeModeEnabled && !SDLActivity.isDeXMode()) {
|
||||||
SDLActivity.getContentView().requestPointerCapture();
|
SDLActivity.getContentView().requestPointerCapture();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean checkRelativeEvent(MotionEvent event) {
|
public boolean checkRelativeEvent(MotionEvent event) {
|
||||||
if (Build.VERSION.SDK_INT < 26 /* Android 8.0 (O) */) {
|
|
||||||
/* Silence 'lint' warning */
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return event.getSource() == InputDevice.SOURCE_MOUSE_RELATIVE;
|
return event.getSource() == InputDevice.SOURCE_MOUSE_RELATIVE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
float getEventX(MotionEvent event, int pointerIndex) {
|
public float getEventX(MotionEvent event, int pointerIndex) {
|
||||||
// Relative mouse in capture mode will only have relative for X/Y
|
// Relative mouse in capture mode will only have relative for X/Y
|
||||||
return event.getX(pointerIndex);
|
return event.getX(pointerIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
float getEventY(MotionEvent event, int pointerIndex) {
|
public float getEventY(MotionEvent event, int pointerIndex) {
|
||||||
// Relative mouse in capture mode will only have relative for X/Y
|
// Relative mouse in capture mode will only have relative for X/Y
|
||||||
return event.getY(pointerIndex);
|
return event.getY(pointerIndex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class SDLGenericMotionListener_API29 extends SDLGenericMotionListener_API26 {
|
|
||||||
@Override
|
|
||||||
int getPenDeviceType(InputDevice penDevice)
|
|
||||||
{
|
|
||||||
if (penDevice == null) {
|
|
||||||
return SDL_PEN_DEVICE_TYPE_UNKNOWN;
|
|
||||||
}
|
|
||||||
|
|
||||||
return penDevice.isExternal() ? SDL_PEN_DEVICE_TYPE_INDIRECT : SDL_PEN_DEVICE_TYPE_DIRECT;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -14,14 +14,14 @@ public class SDLDummyEdit extends View implements View.OnKeyListener
|
|||||||
InputConnection ic;
|
InputConnection ic;
|
||||||
int input_type;
|
int input_type;
|
||||||
|
|
||||||
SDLDummyEdit(Context context) {
|
public SDLDummyEdit(Context context) {
|
||||||
super(context);
|
super(context);
|
||||||
setFocusableInTouchMode(true);
|
setFocusableInTouchMode(true);
|
||||||
setFocusable(true);
|
setFocusable(true);
|
||||||
setOnKeyListener(this);
|
setOnKeyListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setInputType(int input_type) {
|
public void setInputType(int input_type) {
|
||||||
this.input_type = input_type;
|
this.input_type = input_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ import android.view.*;
|
|||||||
import android.view.inputmethod.BaseInputConnection;
|
import android.view.inputmethod.BaseInputConnection;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
|
|
||||||
class SDLInputConnection extends BaseInputConnection
|
public class SDLInputConnection extends BaseInputConnection
|
||||||
{
|
{
|
||||||
protected EditText mEditText;
|
protected EditText mEditText;
|
||||||
protected String mCommittedText = "";
|
protected String mCommittedText = "";
|
||||||
|
|
||||||
SDLInputConnection(View targetView, boolean fullEditor) {
|
public SDLInputConnection(View targetView, boolean fullEditor) {
|
||||||
super(targetView, fullEditor);
|
super(targetView, fullEditor);
|
||||||
mEditText = new EditText(SDL.getContext());
|
mEditText = new EditText(SDL.getContext());
|
||||||
}
|
}
|
||||||
@@ -65,15 +65,17 @@ class SDLInputConnection extends BaseInputConnection
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean deleteSurroundingText(int beforeLength, int afterLength) {
|
public boolean deleteSurroundingText(int beforeLength, int afterLength) {
|
||||||
// Workaround to capture backspace key. Ref: http://stackoverflow.com/questions>/14560344/android-backspace-in-webview-baseinputconnection
|
if (Build.VERSION.SDK_INT <= 29 /* Android 10.0 (Q) */) {
|
||||||
// and https://bugzilla.libsdl.org/show_bug.cgi?id=2265
|
// Workaround to capture backspace key. Ref: http://stackoverflow.com/questions>/14560344/android-backspace-in-webview-baseinputconnection
|
||||||
if (beforeLength > 0 && afterLength == 0) {
|
// and https://bugzilla.libsdl.org/show_bug.cgi?id=2265
|
||||||
// backspace(s)
|
if (beforeLength > 0 && afterLength == 0) {
|
||||||
while (beforeLength-- > 0) {
|
// backspace(s)
|
||||||
nativeGenerateScancodeForUnichar('\b');
|
while (beforeLength-- > 0) {
|
||||||
}
|
nativeGenerateScancodeForUnichar('\b');
|
||||||
return true;
|
}
|
||||||
}
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!super.deleteSurroundingText(beforeLength, afterLength)) {
|
if (!super.deleteSurroundingText(beforeLength, afterLength)) {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ import android.view.Display;
|
|||||||
import android.view.InputDevice;
|
import android.view.InputDevice;
|
||||||
import android.view.KeyEvent;
|
import android.view.KeyEvent;
|
||||||
import android.view.MotionEvent;
|
import android.view.MotionEvent;
|
||||||
import android.view.PointerIcon;
|
|
||||||
import android.view.Surface;
|
import android.view.Surface;
|
||||||
import android.view.SurfaceHolder;
|
import android.view.SurfaceHolder;
|
||||||
import android.view.SurfaceView;
|
import android.view.SurfaceView;
|
||||||
@@ -23,7 +22,6 @@ import android.view.View;
|
|||||||
import android.view.WindowInsets;
|
import android.view.WindowInsets;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
|
|
||||||
import android.view.ScaleGestureDetector;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
SDLSurface. This is what we draw on, so we need to know when it's created
|
SDLSurface. This is what we draw on, so we need to know when it's created
|
||||||
@@ -32,8 +30,7 @@ import android.view.ScaleGestureDetector;
|
|||||||
Because of this, that's where we set up the SDL thread
|
Because of this, that's where we set up the SDL thread
|
||||||
*/
|
*/
|
||||||
public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
||||||
View.OnApplyWindowInsetsListener, View.OnKeyListener, View.OnTouchListener,
|
View.OnApplyWindowInsetsListener, View.OnKeyListener, View.OnTouchListener, SensorEventListener {
|
||||||
SensorEventListener, ScaleGestureDetector.OnScaleGestureListener {
|
|
||||||
|
|
||||||
// Sensors
|
// Sensors
|
||||||
protected SensorManager mSensorManager;
|
protected SensorManager mSensorManager;
|
||||||
@@ -43,18 +40,13 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
protected float mWidth, mHeight;
|
protected float mWidth, mHeight;
|
||||||
|
|
||||||
// Is SurfaceView ready for rendering
|
// Is SurfaceView ready for rendering
|
||||||
protected boolean mIsSurfaceReady;
|
public boolean mIsSurfaceReady;
|
||||||
|
|
||||||
// Pinch events
|
|
||||||
private final ScaleGestureDetector scaleGestureDetector;
|
|
||||||
|
|
||||||
// Startup
|
// Startup
|
||||||
protected SDLSurface(Context context) {
|
public SDLSurface(Context context) {
|
||||||
super(context);
|
super(context);
|
||||||
getHolder().addCallback(this);
|
getHolder().addCallback(this);
|
||||||
|
|
||||||
scaleGestureDetector = new ScaleGestureDetector(context, this);
|
|
||||||
|
|
||||||
setFocusable(true);
|
setFocusable(true);
|
||||||
setFocusableInTouchMode(true);
|
setFocusableInTouchMode(true);
|
||||||
requestFocus();
|
requestFocus();
|
||||||
@@ -74,11 +66,11 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
mIsSurfaceReady = false;
|
mIsSurfaceReady = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void handlePause() {
|
public void handlePause() {
|
||||||
enableSensor(Sensor.TYPE_ACCELEROMETER, false);
|
enableSensor(Sensor.TYPE_ACCELEROMETER, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void handleResume() {
|
public void handleResume() {
|
||||||
setFocusable(true);
|
setFocusable(true);
|
||||||
setFocusableInTouchMode(true);
|
setFocusableInTouchMode(true);
|
||||||
requestFocus();
|
requestFocus();
|
||||||
@@ -88,7 +80,7 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
enableSensor(Sensor.TYPE_ACCELEROMETER, true);
|
enableSensor(Sensor.TYPE_ACCELEROMETER, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected Surface getNativeSurface() {
|
public Surface getNativeSurface() {
|
||||||
return getHolder().getSurface();
|
return getHolder().getSurface();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -129,12 +121,14 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
float density = 1.0f;
|
float density = 1.0f;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
DisplayMetrics realMetrics = new DisplayMetrics();
|
if (Build.VERSION.SDK_INT >= 17 /* Android 4.2 (JELLY_BEAN_MR1) */) {
|
||||||
mDisplay.getRealMetrics( realMetrics );
|
DisplayMetrics realMetrics = new DisplayMetrics();
|
||||||
nDeviceWidth = realMetrics.widthPixels;
|
mDisplay.getRealMetrics( realMetrics );
|
||||||
nDeviceHeight = realMetrics.heightPixels;
|
nDeviceWidth = realMetrics.widthPixels;
|
||||||
// Use densityDpi instead of density to more closely match what the UI scale is
|
nDeviceHeight = realMetrics.heightPixels;
|
||||||
density = (float)realMetrics.densityDpi / 160.0f;
|
// Use densityDpi instead of density to more closely match what the UI scale is
|
||||||
|
density = (float)realMetrics.densityDpi / 160.0f;
|
||||||
|
}
|
||||||
} catch(Exception ignored) {
|
} catch(Exception ignored) {
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -280,11 +274,8 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
|
|
||||||
// BUTTON_STYLUS_PRIMARY is 2^5, so shift by 4, and apply SDL_PEN_INPUT_DOWN/SDL_PEN_INPUT_ERASER_TIP
|
// BUTTON_STYLUS_PRIMARY is 2^5, so shift by 4, and apply SDL_PEN_INPUT_DOWN/SDL_PEN_INPUT_ERASER_TIP
|
||||||
int buttonState = (event.getButtonState() >> 4) | (1 << (toolType == MotionEvent.TOOL_TYPE_STYLUS ? 0 : 30));
|
int buttonState = (event.getButtonState() >> 4) | (1 << (toolType == MotionEvent.TOOL_TYPE_STYLUS ? 0 : 30));
|
||||||
if ((event.getButtonState() & MotionEvent.BUTTON_TERTIARY) != 0) {
|
|
||||||
buttonState |= 0x08;
|
|
||||||
}
|
|
||||||
|
|
||||||
SDLActivity.onNativePen(pointerId, SDLActivity.getMotionListener().getPenDeviceType(event.getDevice()), buttonState, action, x, y, p);
|
SDLActivity.onNativePen(pointerId, buttonState, action, x, y, p);
|
||||||
} else { // MotionEvent.TOOL_TYPE_FINGER or MotionEvent.TOOL_TYPE_UNKNOWN
|
} else { // MotionEvent.TOOL_TYPE_FINGER or MotionEvent.TOOL_TYPE_UNKNOWN
|
||||||
pointerId = event.getPointerId(i);
|
pointerId = event.getPointerId(i);
|
||||||
x = getNormalizedX(event.getX(i));
|
x = getNormalizedX(event.getX(i));
|
||||||
@@ -304,13 +295,11 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
break;
|
break;
|
||||||
} while (++i < pointerCount);
|
} while (++i < pointerCount);
|
||||||
|
|
||||||
scaleGestureDetector.onTouchEvent(event);
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sensor events
|
// Sensor events
|
||||||
protected void enableSensor(int sensortype, boolean enabled) {
|
public void enableSensor(int sensortype, boolean enabled) {
|
||||||
// TODO: This uses getDefaultSensor - what if we have >1 accels?
|
// TODO: This uses getDefaultSensor - what if we have >1 accels?
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
mSensorManager.registerListener(this,
|
mSensorManager.registerListener(this,
|
||||||
@@ -373,18 +362,7 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prevent android internal NullPointerException (https://github.com/libsdl-org/SDL/issues/13306)
|
|
||||||
@Override
|
|
||||||
public PointerIcon onResolvePointerIcon(MotionEvent event, int pointerIndex) {
|
|
||||||
try {
|
|
||||||
return super.onResolvePointerIcon(event, pointerIndex);
|
|
||||||
} catch (NullPointerException e) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Captured pointer events for API 26.
|
// Captured pointer events for API 26.
|
||||||
@Override
|
|
||||||
public boolean onCapturedPointerEvent(MotionEvent event)
|
public boolean onCapturedPointerEvent(MotionEvent event)
|
||||||
{
|
{
|
||||||
int action = event.getActionMasked();
|
int action = event.getActionMasked();
|
||||||
@@ -427,23 +405,4 @@ public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onScale(ScaleGestureDetector detector) {
|
|
||||||
float scale = detector.getScaleFactor();
|
|
||||||
SDLActivity.onNativePinchUpdate(scale);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onScaleBegin(ScaleGestureDetector detector) {
|
|
||||||
SDLActivity.onNativePinchStart();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onScaleEnd(ScaleGestureDetector detector) {
|
|
||||||
SDLActivity.onNativePinchEnd();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ expression e;
|
|||||||
@@
|
@@
|
||||||
- SDL_JoystickGetDevicePlayerIndex(e)
|
- SDL_JoystickGetDevicePlayerIndex(e)
|
||||||
+ /* FIXME MIGRATION: check for valid instance */
|
+ /* FIXME MIGRATION: check for valid instance */
|
||||||
+ SDL_GetJoystickPlayerIndexForID(GetJoystickInstanceFromIndex(e))
|
+ SDL_GetJoystickInstancePlayerIndex(GetJoystickInstanceFromIndex(e))
|
||||||
|
|
||||||
@@
|
@@
|
||||||
expression e;
|
expression e;
|
||||||
@@ -130,7 +130,7 @@ expression e;
|
|||||||
@@
|
@@
|
||||||
- SDL_JoystickPathForIndex(e)
|
- SDL_JoystickPathForIndex(e)
|
||||||
+ /* FIXME MIGRATION: check for valid instance */
|
+ /* FIXME MIGRATION: check for valid instance */
|
||||||
+ SDL_GetJoystickPathForID(GetJoystickInstanceFromIndex(e))
|
+ SDL_GetJoystickInstancePath(GetJoystickInstanceFromIndex(e))
|
||||||
|
|
||||||
@@
|
@@
|
||||||
expression e;
|
expression e;
|
||||||
@@ -144,28 +144,28 @@ expression e;
|
|||||||
@@
|
@@
|
||||||
- SDL_GameControllerMappingForDeviceIndex(e)
|
- SDL_GameControllerMappingForDeviceIndex(e)
|
||||||
+ /* FIXME MIGRATION: check for valid instance */
|
+ /* FIXME MIGRATION: check for valid instance */
|
||||||
+ SDL_GetGamepadMappingForID(GetJoystickInstanceFromIndex(e))
|
+ SDL_GetGamepadInstanceMapping(GetJoystickInstanceFromIndex(e))
|
||||||
|
|
||||||
@@
|
@@
|
||||||
expression e;
|
expression e;
|
||||||
@@
|
@@
|
||||||
- SDL_GameControllerNameForIndex(e)
|
- SDL_GameControllerNameForIndex(e)
|
||||||
+ /* FIXME MIGRATION: check for valid instance */
|
+ /* FIXME MIGRATION: check for valid instance */
|
||||||
+ SDL_GetGamepadNameForID(GetJoystickInstanceFromIndex(e))
|
+ SDL_GetGamepadInstanceName(GetJoystickInstanceFromIndex(e))
|
||||||
|
|
||||||
@@
|
@@
|
||||||
expression e;
|
expression e;
|
||||||
@@
|
@@
|
||||||
- SDL_GameControllerPathForIndex(e)
|
- SDL_GameControllerPathForIndex(e)
|
||||||
+ /* FIXME MIGRATION: check for valid instance */
|
+ /* FIXME MIGRATION: check for valid instance */
|
||||||
+ SDL_GetGamepadPathForID(GetJoystickInstanceFromIndex(e))
|
+ SDL_GetGamepadInstancePath(GetJoystickInstanceFromIndex(e))
|
||||||
|
|
||||||
@@
|
@@
|
||||||
expression e;
|
expression e;
|
||||||
@@
|
@@
|
||||||
- SDL_GameControllerTypeForIndex(e)
|
- SDL_GameControllerTypeForIndex(e)
|
||||||
+ /* FIXME MIGRATION: check for valid instance */
|
+ /* FIXME MIGRATION: check for valid instance */
|
||||||
+ SDL_GetGamepadTypeForID(GetJoystickInstanceFromIndex(e))
|
+ SDL_GetGamepadInstanceType(GetJoystickInstanceFromIndex(e))
|
||||||
|
|
||||||
|
|
||||||
// SDL_Has3DNow() has been removed; there is no replacement.
|
// SDL_Has3DNow() has been removed; there is no replacement.
|
||||||
|
|||||||
@@ -267,12 +267,8 @@ class Archiver:
|
|||||||
|
|
||||||
def close(self):
|
def close(self):
|
||||||
# Archiver is intentionally made invalid after this function
|
# Archiver is intentionally made invalid after this function
|
||||||
for zf in self._zip_files:
|
|
||||||
zf.close()
|
|
||||||
del self._zip_files
|
del self._zip_files
|
||||||
self._zip_files = None
|
self._zip_files = None
|
||||||
for tf in self._tar_files:
|
|
||||||
tf.close()
|
|
||||||
del self._tar_files
|
del self._tar_files
|
||||||
self._tar_files = None
|
self._tar_files = None
|
||||||
|
|
||||||
@@ -546,7 +542,6 @@ class AndroidApiVersion:
|
|||||||
def __repr__(self) -> str:
|
def __repr__(self) -> str:
|
||||||
return f"<{self.name} ({'.'.join(str(v) for v in self.ints)})>"
|
return f"<{self.name} ({'.'.join(str(v) for v in self.ints)})>"
|
||||||
|
|
||||||
ANDROID_ABI_EXTRA_LINK_OPTIONS = {}
|
|
||||||
|
|
||||||
class Releaser:
|
class Releaser:
|
||||||
def __init__(self, release_info: dict, commit: str, revision: str, root: Path, dist_path: Path, section_printer: SectionPrinter, executer: Executer, cmake_generator: str, deps_path: Path, overwrite: bool, github: bool, fast: bool):
|
def __init__(self, release_info: dict, commit: str, revision: str, root: Path, dist_path: Path, section_printer: SectionPrinter, executer: Executer, cmake_generator: str, deps_path: Path, overwrite: bool, github: bool, fast: bool):
|
||||||
@@ -1018,7 +1013,6 @@ class Releaser:
|
|||||||
android_devel_file_tree = ArchiveFileTree()
|
android_devel_file_tree = ArchiveFileTree()
|
||||||
|
|
||||||
for android_abi in android_abis:
|
for android_abi in android_abis:
|
||||||
extra_link_options = ANDROID_ABI_EXTRA_LINK_OPTIONS.get(android_abi, "")
|
|
||||||
with self.section_printer.group(f"Building for Android {android_api} {android_abi}"):
|
with self.section_printer.group(f"Building for Android {android_api} {android_abi}"):
|
||||||
build_dir = self.root / "build-android" / f"{android_abi}-build"
|
build_dir = self.root / "build-android" / f"{android_abi}-build"
|
||||||
install_dir = self.root / "install-android" / f"{android_abi}-install"
|
install_dir = self.root / "install-android" / f"{android_abi}-install"
|
||||||
@@ -1029,12 +1023,8 @@ class Releaser:
|
|||||||
"cmake",
|
"cmake",
|
||||||
"-S", str(self.root),
|
"-S", str(self.root),
|
||||||
"-B", str(build_dir),
|
"-B", str(build_dir),
|
||||||
# NDK 21e does not support -ffile-prefix-map
|
f'''-DCMAKE_C_FLAGS="-ffile-prefix-map={self.root}=/src/{self.project}"''',
|
||||||
# f'''-DCMAKE_C_FLAGS="-ffile-prefix-map={self.root}=/src/{self.project}"''',
|
f'''-DCMAKE_CXX_FLAGS="-ffile-prefix-map={self.root}=/src/{self.project}"''',
|
||||||
# f'''-DCMAKE_CXX_FLAGS="-ffile-prefix-map={self.root}=/src/{self.project}"''',
|
|
||||||
f"-DANDROID_USE_LEGACY_TOOLCHAIN=0",
|
|
||||||
f"-DCMAKE_EXE_LINKER_FLAGS={extra_link_options}",
|
|
||||||
f"-DCMAKE_SHARED_LINKER_FLAGS={extra_link_options}",
|
|
||||||
f"-DCMAKE_TOOLCHAIN_FILE={cmake_toolchain_file}",
|
f"-DCMAKE_TOOLCHAIN_FILE={cmake_toolchain_file}",
|
||||||
f"-DCMAKE_PREFIX_PATH={str(android_deps_path)}",
|
f"-DCMAKE_PREFIX_PATH={str(android_deps_path)}",
|
||||||
f"-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=BOTH",
|
f"-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=BOTH",
|
||||||
@@ -1131,7 +1121,8 @@ class Releaser:
|
|||||||
for dep, depinfo in self.release_info.get("dependencies", {}).items():
|
for dep, depinfo in self.release_info.get("dependencies", {}).items():
|
||||||
startswith = depinfo["startswith"]
|
startswith = depinfo["startswith"]
|
||||||
dep_repo = depinfo["repo"]
|
dep_repo = depinfo["repo"]
|
||||||
dep_string_data = self.executer.check_output(["gh", "-R", dep_repo, "release", "list", "--exclude-drafts", "--exclude-pre-releases", "--json", "name,createdAt,tagName", "--jq", f'[.[]|select(.name|startswith("{startswith}"))]|max_by(.createdAt)']).strip()
|
# FIXME: dropped "--exclude-pre-releases"
|
||||||
|
dep_string_data = self.executer.check_output(["gh", "-R", dep_repo, "release", "list", "--exclude-drafts", "--json", "name,createdAt,tagName", "--jq", f'[.[]|select(.name|startswith("{startswith}"))]|max_by(.createdAt)']).strip()
|
||||||
dep_data = json.loads(dep_string_data)
|
dep_data = json.loads(dep_string_data)
|
||||||
dep_tag = dep_data["tagName"]
|
dep_tag = dep_data["tagName"]
|
||||||
dep_version = dep_data["name"]
|
dep_version = dep_data["name"]
|
||||||
@@ -1521,7 +1512,7 @@ def main(argv=None) -> int:
|
|||||||
if args.android_home is None or not Path(args.android_home).is_dir():
|
if args.android_home is None or not Path(args.android_home).is_dir():
|
||||||
parser.error("Invalid $ANDROID_HOME or --android-home: must be a directory containing the Android SDK")
|
parser.error("Invalid $ANDROID_HOME or --android-home: must be a directory containing the Android SDK")
|
||||||
if args.android_ndk_home is None or not Path(args.android_ndk_home).is_dir():
|
if args.android_ndk_home is None or not Path(args.android_ndk_home).is_dir():
|
||||||
parser.error("Invalid $ANDROID_NDK_HOME or --android-ndk-home: must be a directory containing the Android NDK")
|
parser.error("Invalid $ANDROID_NDK_HOME or --android_ndk_home: must be a directory containing the Android NDK")
|
||||||
if args.android_api is None:
|
if args.android_api is None:
|
||||||
with section_printer.group("Detect Android APIS"):
|
with section_printer.group("Detect Android APIS"):
|
||||||
args.android_api = releaser._detect_android_api(android_home=args.android_home)
|
args.android_api = releaser._detect_android_api(android_home=args.android_home)
|
||||||
@@ -1539,7 +1530,7 @@ def main(argv=None) -> int:
|
|||||||
parser.error("Invalid --android-api, and/or could not be detected")
|
parser.error("Invalid --android-api, and/or could not be detected")
|
||||||
android_api_path = Path(args.android_home) / f"platforms/{args.android_api.name}"
|
android_api_path = Path(args.android_home) / f"platforms/{args.android_api.name}"
|
||||||
if not android_api_path.is_dir():
|
if not android_api_path.is_dir():
|
||||||
logger.warning(f"Android API directory does not exist ({android_api_path})")
|
parser.error(f"Android API directory does not exist ({android_api_path})")
|
||||||
with section_printer.group("Android arguments"):
|
with section_printer.group("Android arguments"):
|
||||||
print(f"android_home = {args.android_home}")
|
print(f"android_home = {args.android_home}")
|
||||||
print(f"android_ndk_home = {args.android_ndk_home}")
|
print(f"android_ndk_home = {args.android_ndk_home}")
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
# Simple DirectMedia Layer
|
# Simple DirectMedia Layer
|
||||||
# Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
# Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
#
|
#
|
||||||
# This software is provided 'as-is', without any express or implied
|
# This software is provided 'as-is', without any express or implied
|
||||||
# warranty. In no event will the authors be held liable for any damages
|
# warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -187,11 +187,6 @@ sub handle_example_dir {
|
|||||||
$description =~ s/\s+\Z//;
|
$description =~ s/\s+\Z//;
|
||||||
}
|
}
|
||||||
|
|
||||||
my $short_description = "$description";
|
|
||||||
$short_description =~ s/\<br\/\>\n.*//gms;
|
|
||||||
$short_description =~ s/\A\s+//;
|
|
||||||
$short_description =~ s/\s+\Z//;
|
|
||||||
|
|
||||||
do_mkdir($dst);
|
do_mkdir($dst);
|
||||||
do_copy($jssrc, $jsdst);
|
do_copy($jssrc, $jsdst);
|
||||||
do_copy($wasmsrc, $wasmdst);
|
do_copy($wasmsrc, $wasmdst);
|
||||||
@@ -227,7 +222,7 @@ sub handle_example_dir {
|
|||||||
|
|
||||||
my $other_examples_html = "<ul>";
|
my $other_examples_html = "<ul>";
|
||||||
foreach my $example (get_examples_for_category($category)) {
|
foreach my $example (get_examples_for_category($category)) {
|
||||||
$other_examples_html .= "<li><a href='/$project/$category/$example/'>$category/$example</a></li>";
|
$other_examples_html .= "<li><a href='/$project/$category/$example'>$category/$example</a></li>";
|
||||||
}
|
}
|
||||||
$other_examples_html .= "</ul>";
|
$other_examples_html .= "</ul>";
|
||||||
|
|
||||||
@@ -243,7 +238,6 @@ sub handle_example_dir {
|
|||||||
s/\@example_name\@/$example/g;
|
s/\@example_name\@/$example/g;
|
||||||
s/\@javascript_file\@/$jsfname/g;
|
s/\@javascript_file\@/$jsfname/g;
|
||||||
s/\@htmlified_source_code\@/$htmlified_source_code/g;
|
s/\@htmlified_source_code\@/$htmlified_source_code/g;
|
||||||
s/\@short_description\@/$short_description/g;
|
|
||||||
s/\@description\@/$description/g;
|
s/\@description\@/$description/g;
|
||||||
s/\@preview_image\@/$preview_image/g;
|
s/\@preview_image\@/$preview_image/g;
|
||||||
s/\@other_examples_html\@/$other_examples_html/g;
|
s/\@other_examples_html\@/$other_examples_html/g;
|
||||||
@@ -274,7 +268,6 @@ sub generate_example_thumbnail {
|
|||||||
my $project = shift;
|
my $project = shift;
|
||||||
my $category = shift;
|
my $category = shift;
|
||||||
my $example = shift;
|
my $example = shift;
|
||||||
my $preloadhtmlref = shift;
|
|
||||||
|
|
||||||
my $example_no_num = "$example";
|
my $example_no_num = "$example";
|
||||||
$example_no_num =~ s/\A\d+\-//;
|
$example_no_num =~ s/\A\d+\-//;
|
||||||
@@ -284,14 +277,12 @@ sub generate_example_thumbnail {
|
|||||||
my $example_mouseover_html = '';
|
my $example_mouseover_html = '';
|
||||||
if ( -f "$examples_dir/$category/$example/onmouseover.webp" ) {
|
if ( -f "$examples_dir/$category/$example/onmouseover.webp" ) {
|
||||||
$example_mouseover_html = "onmouseover=\"this.src='/$project/$category/$example/onmouseover.webp'\" onmouseout=\"this.src='$example_image_url';\"";
|
$example_mouseover_html = "onmouseover=\"this.src='/$project/$category/$example/onmouseover.webp'\" onmouseout=\"this.src='$example_image_url';\"";
|
||||||
$$preloadhtmlref .= " <link rel='preload' as='image' href='/$project/$category/$example/onmouseover.webp'>\n";
|
|
||||||
} elsif ( -f "$examples_dir/$category/onmouseover.webp" ) {
|
} elsif ( -f "$examples_dir/$category/onmouseover.webp" ) {
|
||||||
$example_mouseover_html = "onmouseover=\"this.src='/$project/$category/onmouseover.webp'\" onmouseout=\"this.src='$example_image_url';\"";
|
$example_mouseover_html = "onmouseover=\"this.src='/$project/$category/onmouseover.webp'\" onmouseout=\"this.src='$example_image_url';\"";
|
||||||
$$preloadhtmlref .= " <link rel='preload' as='image' href='/$project/$category/onmouseover.webp'>\n";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return "
|
return "
|
||||||
<a href='/$project/$category/$example/'>
|
<a href='/$project/$category/$example'>
|
||||||
<div>
|
<div>
|
||||||
<img src='$example_image_url' $example_mouseover_html />
|
<img src='$example_image_url' $example_mouseover_html />
|
||||||
<div>$example_no_num</div>
|
<div>$example_no_num</div>
|
||||||
@@ -303,11 +294,10 @@ sub generate_example_thumbnail {
|
|||||||
sub generate_example_thumbnails_for_category {
|
sub generate_example_thumbnails_for_category {
|
||||||
my $project = shift;
|
my $project = shift;
|
||||||
my $category = shift;
|
my $category = shift;
|
||||||
my $preloadhtmlref = shift;
|
|
||||||
my @examples = get_examples_for_category($category);
|
my @examples = get_examples_for_category($category);
|
||||||
my $retval = '';
|
my $retval = '';
|
||||||
foreach my $example (@examples) {
|
foreach my $example (@examples) {
|
||||||
$retval .= generate_example_thumbnail($project, $category, $example, $preloadhtmlref);
|
$retval .= generate_example_thumbnail($project, $category, $example);
|
||||||
}
|
}
|
||||||
return $retval;
|
return $retval;
|
||||||
}
|
}
|
||||||
@@ -329,8 +319,7 @@ sub handle_category_dir {
|
|||||||
|
|
||||||
closedir($dh);
|
closedir($dh);
|
||||||
|
|
||||||
my $preloadhtml = '';
|
my $examples_list_html = generate_example_thumbnails_for_category($project, $category);
|
||||||
my $examples_list_html = generate_example_thumbnails_for_category($project, $category, \$preloadhtml);
|
|
||||||
|
|
||||||
my $dst = "$output_dir/$category";
|
my $dst = "$output_dir/$category";
|
||||||
|
|
||||||
@@ -350,7 +339,6 @@ sub handle_category_dir {
|
|||||||
s/\@project_name\@/$project/g;
|
s/\@project_name\@/$project/g;
|
||||||
s/\@category_name\@/$category/g;
|
s/\@category_name\@/$category/g;
|
||||||
s/\@category_description\@/$category_description/g;
|
s/\@category_description\@/$category_description/g;
|
||||||
s/\@preload_images_html\@/$preloadhtml/g;
|
|
||||||
s/\@examples_list_html\@/$examples_list_html/g;
|
s/\@examples_list_html\@/$examples_list_html/g;
|
||||||
s/\@preview_image\@/$preview_image/g;
|
s/\@preview_image\@/$preview_image/g;
|
||||||
$html .= $_;
|
$html .= $_;
|
||||||
@@ -402,13 +390,12 @@ while (readdir($dh)) {
|
|||||||
closedir($dh);
|
closedir($dh);
|
||||||
|
|
||||||
# write homepage
|
# write homepage
|
||||||
my $homepage_list_html = '';
|
my $homepage_list_html = "";
|
||||||
my $homepage_preloadhtml = '';
|
|
||||||
foreach my $category (get_categories()) {
|
foreach my $category (get_categories()) {
|
||||||
my $category_description = get_category_description($category);
|
my $category_description = get_category_description($category);
|
||||||
$homepage_list_html .= "<h2>$category_description</h2>";
|
$homepage_list_html .= "<h2>$category_description</h2>";
|
||||||
$homepage_list_html .= "<div class='list'>";
|
$homepage_list_html .= "<div class='list'>";
|
||||||
$homepage_list_html .= generate_example_thumbnails_for_category($project, $category, \$homepage_preloadhtml);
|
$homepage_list_html .= generate_example_thumbnails_for_category($project, $category);
|
||||||
$homepage_list_html .= "</div>";
|
$homepage_list_html .= "</div>";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -421,7 +408,6 @@ while (<$htmltemplate>) {
|
|||||||
s/\@project_name\@/$project/g;
|
s/\@project_name\@/$project/g;
|
||||||
s/\@homepage_list_html\@/$homepage_list_html/g;
|
s/\@homepage_list_html\@/$homepage_list_html/g;
|
||||||
s/\@preview_image\@/$preview_image/g;
|
s/\@preview_image\@/$preview_image/g;
|
||||||
s/\@preload_images_html\@/$homepage_preloadhtml/g;
|
|
||||||
$html .= $_;
|
$html .= $_;
|
||||||
}
|
}
|
||||||
close($htmltemplate);
|
close($htmltemplate);
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
import dataclasses
|
import dataclasses
|
||||||
|
|||||||
@@ -1,127 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
progname="${0##*/}"
|
|
||||||
progname="${progname%.sh}"
|
|
||||||
|
|
||||||
# usage: check_elf_alignment.sh [path to *.so files|path to *.apk]
|
|
||||||
|
|
||||||
cleanup_trap() {
|
|
||||||
if [ -n "${tmp}" -a -d "${tmp}" ]; then
|
|
||||||
rm -rf ${tmp}
|
|
||||||
fi
|
|
||||||
exit $1
|
|
||||||
}
|
|
||||||
|
|
||||||
usage() {
|
|
||||||
echo "Host side script to check the ELF alignment of shared libraries."
|
|
||||||
echo "Shared libraries are reported ALIGNED when their ELF regions are"
|
|
||||||
echo "16 KB or 64 KB aligned. Otherwise they are reported as UNALIGNED."
|
|
||||||
echo
|
|
||||||
echo "Usage: ${progname} [input-path|input-APK|input-APEX]"
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ ${#} -ne 1 ]; then
|
|
||||||
usage
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
case ${1} in
|
|
||||||
--help | -h | -\?)
|
|
||||||
usage
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
|
|
||||||
*)
|
|
||||||
dir="${1}"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if ! [ -f "${dir}" -o -d "${dir}" ]; then
|
|
||||||
echo "Invalid file: ${dir}" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "${dir}" == *.apk ]]; then
|
|
||||||
trap 'cleanup_trap' EXIT
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Recursively analyzing $dir"
|
|
||||||
echo
|
|
||||||
|
|
||||||
if { zipalign --help 2>&1 | grep -q "\-P <pagesize_kb>"; }; then
|
|
||||||
echo "=== APK zip-alignment ==="
|
|
||||||
zipalign -v -c -P 16 4 "${dir}" | egrep 'lib/arm64-v8a|lib/x86_64|Verification'
|
|
||||||
echo "========================="
|
|
||||||
else
|
|
||||||
echo "NOTICE: Zip alignment check requires build-tools version 35.0.0-rc3 or higher."
|
|
||||||
echo " You can install the latest build-tools by running the below command"
|
|
||||||
echo " and updating your \$PATH:"
|
|
||||||
echo
|
|
||||||
echo " sdkmanager \"build-tools;35.0.0-rc3\""
|
|
||||||
fi
|
|
||||||
|
|
||||||
dir_filename=$(basename "${dir}")
|
|
||||||
tmp=$(mktemp -d -t "${dir_filename%.apk}_out_XXXXX")
|
|
||||||
unzip "${dir}" lib/* -d "${tmp}" >/dev/null 2>&1
|
|
||||||
dir="${tmp}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "${dir}" == *.apex ]]; then
|
|
||||||
trap 'cleanup_trap' EXIT
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Recursively analyzing $dir"
|
|
||||||
echo
|
|
||||||
|
|
||||||
dir_filename=$(basename "${dir}")
|
|
||||||
tmp=$(mktemp -d -t "${dir_filename%.apex}_out_XXXXX")
|
|
||||||
deapexer extract "${dir}" "${tmp}" || { echo "Failed to deapex." && exit 1; }
|
|
||||||
dir="${tmp}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
RED="\e[31m"
|
|
||||||
GREEN="\e[32m"
|
|
||||||
ENDCOLOR="\e[0m"
|
|
||||||
|
|
||||||
unaligned_libs=()
|
|
||||||
unaligned_critical_libs=()
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "=== ELF alignment ==="
|
|
||||||
|
|
||||||
matches="$(find "${dir}" -type f)"
|
|
||||||
IFS=$'\n'
|
|
||||||
for match in $matches; do
|
|
||||||
# We could recursively call this script or rewrite it to though.
|
|
||||||
[[ "${match}" == *".apk" ]] && echo "WARNING: doesn't recursively inspect .apk file: ${match}"
|
|
||||||
[[ "${match}" == *".apex" ]] && echo "WARNING: doesn't recursively inspect .apex file: ${match}"
|
|
||||||
|
|
||||||
[[ $(file "${match}") == *"ELF"* ]] || continue
|
|
||||||
|
|
||||||
res="$(objdump -p "${match}" | grep LOAD | awk '{ print $NF }' | head -1)"
|
|
||||||
if [[ $res =~ 2\*\*(1[4-9]|[2-9][0-9]|[1-9][0-9]{2,}) ]]; then
|
|
||||||
echo -e "${match}: ${GREEN}ALIGNED${ENDCOLOR} ($res)"
|
|
||||||
else
|
|
||||||
unaligned_libs+=("${match}")
|
|
||||||
# Check if this is a critical architecture (arm64-v8a or x86_64)
|
|
||||||
if [[ "${match}" == *"arm64-v8a"* ]] || [[ "${match}" == *"x86_64"* ]]; then
|
|
||||||
unaligned_critical_libs+=("${match}")
|
|
||||||
echo -e "${match}: ${RED}UNALIGNED${ENDCOLOR} ($res)"
|
|
||||||
else
|
|
||||||
echo -e "${match}: UNALIGNED ($res)"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ ${#unaligned_libs[@]} -gt 0 ]; then
|
|
||||||
echo -e "Found ${#unaligned_libs[@]} unaligned libs (only arm64-v8a/x86_64 libs need to be aligned).${ENDCOLOR}"
|
|
||||||
fi
|
|
||||||
echo "====================="
|
|
||||||
|
|
||||||
# Exit with appropriate code: 1 if critical unaligned libs found, 0 otherwise
|
|
||||||
if [ ${#unaligned_critical_libs[@]} -gt 0 ]; then
|
|
||||||
echo -e "${RED}Found ${#unaligned_critical_libs[@]} critical unaligned libs.${ENDCOLOR}"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo -e "${GREEN}ELF Verification Successful${ENDCOLOR}"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
#
|
#
|
||||||
# Simple DirectMedia Layer
|
# Simple DirectMedia Layer
|
||||||
# Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
# Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
#
|
#
|
||||||
# This software is provided 'as-is', without any express or implied
|
# This software is provided 'as-is', without any express or implied
|
||||||
# warranty. In no event will the authors be held liable for any damages
|
# warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -29,7 +29,7 @@ import sys
|
|||||||
|
|
||||||
SDL_ROOT = pathlib.Path(__file__).resolve().parents[1]
|
SDL_ROOT = pathlib.Path(__file__).resolve().parents[1]
|
||||||
|
|
||||||
STDLIB_SYMBOLS = (
|
STDLIB_SYMBOLS = [
|
||||||
'abs',
|
'abs',
|
||||||
'acos',
|
'acos',
|
||||||
'acosf',
|
'acosf',
|
||||||
@@ -147,8 +147,8 @@ STDLIB_SYMBOLS = (
|
|||||||
'wcsncasecmp',
|
'wcsncasecmp',
|
||||||
'wcsncmp',
|
'wcsncmp',
|
||||||
'wcsstr',
|
'wcsstr',
|
||||||
)
|
]
|
||||||
RE_STDLIB_SYMBOL = re.compile(rf"(?<!->)\b(?P<symbol>{'|'.join(STDLIB_SYMBOLS)})\b\(")
|
RE_STDLIB_SYMBOL = re.compile(rf"\b(?P<symbol>{'|'.join(STDLIB_SYMBOLS)})\b\(")
|
||||||
|
|
||||||
|
|
||||||
def find_symbols_in_file(file: pathlib.Path) -> int:
|
def find_symbols_in_file(file: pathlib.Path) -> int:
|
||||||
@@ -161,7 +161,6 @@ def find_symbols_in_file(file: pathlib.Path) -> int:
|
|||||||
"src/libm",
|
"src/libm",
|
||||||
"src/hidapi",
|
"src/hidapi",
|
||||||
"src/video/khronos",
|
"src/video/khronos",
|
||||||
"src/video/miniz.h",
|
|
||||||
"src/video/stb_image.h",
|
"src/video/stb_image.h",
|
||||||
"include/SDL3",
|
"include/SDL3",
|
||||||
"build-scripts/gen_audio_resampler_filter.c",
|
"build-scripts/gen_audio_resampler_filter.c",
|
||||||
@@ -220,19 +219,13 @@ def find_symbols_in_file(file: pathlib.Path) -> int:
|
|||||||
line_comment += line[pos_line_comment:]
|
line_comment += line[pos_line_comment:]
|
||||||
line = line[:pos_line_comment]
|
line = line[:pos_line_comment]
|
||||||
|
|
||||||
if matches := tuple(RE_STDLIB_SYMBOL.finditer(line)):
|
if m := RE_STDLIB_SYMBOL.match(line):
|
||||||
text_string = " or ".join(f"SDL_{m.group(1)}" for m in matches)
|
override_string = f"This should NOT be SDL_{m['symbol']}()"
|
||||||
first_quote = line.find("\"")
|
if override_string not in line_comment:
|
||||||
last_quote = line.rfind("\"")
|
print(f"{filename}:{line_i}")
|
||||||
first_occurrence = min(m.span()[0] for m in matches)
|
print(f" {line}")
|
||||||
last_occurrence = max(m.span()[1] for m in matches)
|
print(f"")
|
||||||
if first_quote == -1 or not (first_quote < first_occurrence and last_quote > last_occurrence):
|
match_count += 1
|
||||||
override_string = f"This should NOT be {text_string}"
|
|
||||||
if override_string not in line_comment:
|
|
||||||
print(f"{filename}:{line_i}")
|
|
||||||
print(f" {line}")
|
|
||||||
print(f"")
|
|
||||||
match_count += 1
|
|
||||||
|
|
||||||
except UnicodeDecodeError:
|
except UnicodeDecodeError:
|
||||||
print(f"{file} is not text, skipping", file=sys.stderr)
|
print(f"{file} is not text, skipping", file=sys.stderr)
|
||||||
@@ -241,7 +234,7 @@ def find_symbols_in_file(file: pathlib.Path) -> int:
|
|||||||
|
|
||||||
def find_symbols_in_dir(path: pathlib.Path) -> int:
|
def find_symbols_in_dir(path: pathlib.Path) -> int:
|
||||||
match_count = 0
|
match_count = 0
|
||||||
for entry in path.iterdir():
|
for entry in path.glob("*"):
|
||||||
if entry.is_dir():
|
if entry.is_dir():
|
||||||
match_count += find_symbols_in_dir(entry)
|
match_count += find_symbols_in_dir(entry)
|
||||||
else:
|
else:
|
||||||
@@ -255,10 +248,7 @@ def main():
|
|||||||
|
|
||||||
print(f"Looking for stdlib usage in {args.path}...")
|
print(f"Looking for stdlib usage in {args.path}...")
|
||||||
|
|
||||||
if args.path.is_file():
|
match_count = find_symbols_in_dir(args.path)
|
||||||
match_count = find_symbols_in_file(args.path)
|
|
||||||
else:
|
|
||||||
match_count = find_symbols_in_dir(args.path)
|
|
||||||
|
|
||||||
if match_count:
|
if match_count:
|
||||||
print("If the stdlib usage is intentional, add a '// This should NOT be SDL_<symbol>()' line comment.")
|
print("If the stdlib usage is intentional, add a '// This should NOT be SDL_<symbol>()' line comment.")
|
||||||
|
|||||||
@@ -1,142 +0,0 @@
|
|||||||
#!/usr/bin/env python3
|
|
||||||
|
|
||||||
import argparse
|
|
||||||
import dataclasses
|
|
||||||
import enum
|
|
||||||
from pathlib import Path
|
|
||||||
import json
|
|
||||||
import subprocess
|
|
||||||
import sys
|
|
||||||
import tempfile
|
|
||||||
|
|
||||||
|
|
||||||
SDL_ROOT = Path(__file__).resolve().parents[1]
|
|
||||||
|
|
||||||
|
|
||||||
@dataclasses.dataclass
|
|
||||||
class TbdInfo:
|
|
||||||
install_name: str
|
|
||||||
target_infos: list[dict[str, str]]
|
|
||||||
|
|
||||||
|
|
||||||
class TbdPlatform(enum.StrEnum):
|
|
||||||
MACOS = "macOS"
|
|
||||||
IOS = "iOS"
|
|
||||||
|
|
||||||
|
|
||||||
TBDINFOS = {
|
|
||||||
TbdPlatform.MACOS: TbdInfo(
|
|
||||||
install_name="@rpath/SDL3.framework/Versions/A/SDL3",
|
|
||||||
target_infos=[
|
|
||||||
{
|
|
||||||
"min_deployment": "10.13",
|
|
||||||
"target": "arm64-macos",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "10.13",
|
|
||||||
"target": "x86_64-macos",
|
|
||||||
},
|
|
||||||
]
|
|
||||||
),
|
|
||||||
TbdPlatform.IOS: TbdInfo(
|
|
||||||
install_name="@rpath/SDL3.framework/SDL3",
|
|
||||||
target_infos=[
|
|
||||||
{
|
|
||||||
"min_deployment": "11.0",
|
|
||||||
"target": "arm64-ios",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "11.0",
|
|
||||||
"target": "arm64-ios-simulator",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "11.0",
|
|
||||||
"target": "x86_64-ios-simulator",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "11.0",
|
|
||||||
"target": "arm64-tvos",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "11.0",
|
|
||||||
"target": "arm64-tvos-simulator",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "11.0",
|
|
||||||
"target": "x86_64-tvos-simulator",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "1.3",
|
|
||||||
"target": "arm64-xros",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"min_deployment": "1.3",
|
|
||||||
"target": "arm64-xros-simulator",
|
|
||||||
},
|
|
||||||
]
|
|
||||||
),
|
|
||||||
}
|
|
||||||
|
|
||||||
def create_sdl3_tbd(symbols: list[str], tbd_info: TbdInfo):
|
|
||||||
return {
|
|
||||||
"main_library": {
|
|
||||||
"compatibility_versions": [
|
|
||||||
{
|
|
||||||
"version": "201"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"current_versions": [
|
|
||||||
{
|
|
||||||
"version": "201"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"exported_symbols": [
|
|
||||||
{
|
|
||||||
"text": {
|
|
||||||
"global": symbols
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"flags": [
|
|
||||||
{
|
|
||||||
"attributes": [
|
|
||||||
"not_app_extension_safe"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"install_names": [
|
|
||||||
{
|
|
||||||
"name": tbd_info.install_name
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"target_info": tbd_info.target_infos
|
|
||||||
},
|
|
||||||
"tapi_tbd_version": 5
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
parser = argparse.ArgumentParser(allow_abbrev=False)
|
|
||||||
parser.add_argument("--output", "-o", type=Path, help="Output path (default is stdout)")
|
|
||||||
parser.add_argument("--platform", type=TbdPlatform, required=True,
|
|
||||||
choices=[str(e) for e in TbdPlatform], help="Apple Platform")
|
|
||||||
args = parser.parse_args()
|
|
||||||
|
|
||||||
with tempfile.NamedTemporaryFile() as f_temp:
|
|
||||||
f_temp.close()
|
|
||||||
subprocess.check_call([sys.executable,SDL_ROOT / "src/dynapi/gendynapi.py", "--dump", f_temp.name],
|
|
||||||
stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
|
|
||||||
with open(f_temp.name) as f_json:
|
|
||||||
sdl3_json = json.load(f_json)
|
|
||||||
|
|
||||||
sdl3_macos_symbols = [f"_{symbol_info['name']}" for symbol_info in sdl3_json]
|
|
||||||
sdl3_macos_symbols.sort()
|
|
||||||
|
|
||||||
tbd = create_sdl3_tbd(symbols=sdl3_macos_symbols, tbd_info=TBDINFOS[args.platform])
|
|
||||||
with (args.output.open("w", newline="") if args.output else sys.stdout) as f_out:
|
|
||||||
json.dump(tbd, fp=f_out, indent=2)
|
|
||||||
f_out.write("\n")
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
raise SystemExit(main())
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
Simple DirectMedia Layer
|
Simple DirectMedia Layer
|
||||||
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -406,7 +406,7 @@ int main(void)
|
|||||||
printf(
|
printf(
|
||||||
"/*\n"
|
"/*\n"
|
||||||
" Simple DirectMedia Layer\n"
|
" Simple DirectMedia Layer\n"
|
||||||
" Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>\n"
|
" Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>\n"
|
||||||
"\n"
|
"\n"
|
||||||
" This software is provided 'as-is', without any express or implied\n"
|
" This software is provided 'as-is', without any express or implied\n"
|
||||||
" warranty. In no event will the authors be held liable for any damages\n"
|
" warranty. In no event will the authors be held liable for any damages\n"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
# Simple DirectMedia Layer
|
# Simple DirectMedia Layer
|
||||||
# Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
# Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
#
|
#
|
||||||
# This software is provided 'as-is', without any express or implied
|
# This software is provided 'as-is', without any express or implied
|
||||||
# warranty. In no event will the authors be held liable for any damages
|
# warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -36,7 +36,7 @@ my $mem_used = 0;
|
|||||||
print <<__EOF__;
|
print <<__EOF__;
|
||||||
/*
|
/*
|
||||||
Simple DirectMedia Layer
|
Simple DirectMedia Layer
|
||||||
Copyright (C) 1997-2026 Sam Lantinga <slouken\@libsdl.org>
|
Copyright (C) 1997-2025 Sam Lantinga <slouken\@libsdl.org>
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
|||||||
162
build-scripts/mkinstalldirs
Executable file
162
build-scripts/mkinstalldirs
Executable file
@@ -0,0 +1,162 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# mkinstalldirs --- make directory hierarchy
|
||||||
|
|
||||||
|
scriptversion=2020-07-26.22; # UTC
|
||||||
|
|
||||||
|
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
|
||||||
|
# Created: 1993-05-16
|
||||||
|
# Public domain.
|
||||||
|
#
|
||||||
|
# This file is maintained in Automake, please report
|
||||||
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
|
nl='
|
||||||
|
'
|
||||||
|
IFS=" "" $nl"
|
||||||
|
errstatus=0
|
||||||
|
dirmode=
|
||||||
|
|
||||||
|
usage="\
|
||||||
|
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
|
||||||
|
|
||||||
|
Create each directory DIR (with mode MODE, if specified), including all
|
||||||
|
leading file name components.
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>."
|
||||||
|
|
||||||
|
# process command line arguments
|
||||||
|
while test $# -gt 0 ; do
|
||||||
|
case $1 in
|
||||||
|
-h | --help | --h*) # -h for help
|
||||||
|
echo "$usage"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
-m) # -m PERM arg
|
||||||
|
shift
|
||||||
|
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
|
||||||
|
dirmode=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--version)
|
||||||
|
echo "$0 $scriptversion"
|
||||||
|
exit $?
|
||||||
|
;;
|
||||||
|
--) # stop option processing
|
||||||
|
shift
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
-*) # unknown option
|
||||||
|
echo "$usage" 1>&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
*) # first non-opt arg
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
for file
|
||||||
|
do
|
||||||
|
if test -d "$file"; then
|
||||||
|
shift
|
||||||
|
else
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
case $# in
|
||||||
|
0) exit 0 ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
|
||||||
|
# mkdir -p a/c at the same time, both will detect that a is missing,
|
||||||
|
# one will create a, then the other will try to create a and die with
|
||||||
|
# a "File exists" error. This is a problem when calling mkinstalldirs
|
||||||
|
# from a parallel make. We use --version in the probe to restrict
|
||||||
|
# ourselves to GNU mkdir, which is thread-safe.
|
||||||
|
case $dirmode in
|
||||||
|
'')
|
||||||
|
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
|
||||||
|
echo "mkdir -p -- $*"
|
||||||
|
exec mkdir -p -- "$@"
|
||||||
|
else
|
||||||
|
# On NextStep and OpenStep, the 'mkdir' command does not
|
||||||
|
# recognize any option. It will interpret all options as
|
||||||
|
# directories to create, and then abort because '.' already
|
||||||
|
# exists.
|
||||||
|
test -d ./-p && rmdir ./-p
|
||||||
|
test -d ./--version && rmdir ./--version
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
|
||||||
|
test ! -d ./--version; then
|
||||||
|
echo "umask 22"
|
||||||
|
umask 22
|
||||||
|
echo "mkdir -m $dirmode -p -- $*"
|
||||||
|
exec mkdir -m "$dirmode" -p -- "$@"
|
||||||
|
else
|
||||||
|
# Clean up after NextStep and OpenStep mkdir.
|
||||||
|
for d in ./-m ./-p ./--version "./$dirmode";
|
||||||
|
do
|
||||||
|
test -d $d && rmdir $d
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "umask 22"
|
||||||
|
umask 22
|
||||||
|
|
||||||
|
for file
|
||||||
|
do
|
||||||
|
case $file in
|
||||||
|
/*) pathcomp=/ ;;
|
||||||
|
*) pathcomp= ;;
|
||||||
|
esac
|
||||||
|
oIFS=$IFS
|
||||||
|
IFS=/
|
||||||
|
set fnord $file
|
||||||
|
shift
|
||||||
|
IFS=$oIFS
|
||||||
|
|
||||||
|
for d
|
||||||
|
do
|
||||||
|
test "x$d" = x && continue
|
||||||
|
|
||||||
|
pathcomp=$pathcomp$d
|
||||||
|
case $pathcomp in
|
||||||
|
-*) pathcomp=./$pathcomp ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if test ! -d "$pathcomp"; then
|
||||||
|
echo "mkdir $pathcomp"
|
||||||
|
|
||||||
|
mkdir "$pathcomp" || lasterr=$?
|
||||||
|
|
||||||
|
if test ! -d "$pathcomp"; then
|
||||||
|
errstatus=$lasterr
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
pathcomp=$pathcomp/
|
||||||
|
done
|
||||||
|
|
||||||
|
if test ! -z "$dirmode"; then
|
||||||
|
echo "chmod $dirmode $file"
|
||||||
|
chmod "$dirmode" "$file" || errstatus=$?
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
exit $errstatus
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-time-zone: "UTC0"
|
||||||
|
# time-stamp-end: "; # UTC"
|
||||||
|
# End:
|
||||||
@@ -26,6 +26,7 @@ import zipfile
|
|||||||
|
|
||||||
|
|
||||||
AAR_PATH = pathlib.Path(__file__).resolve().parent
|
AAR_PATH = pathlib.Path(__file__).resolve().parent
|
||||||
|
ANDROID_ARCHS = { "armeabi-v7a", "arm64-v8a", "x86", "x86_64" }
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
Simple DirectMedia Layer
|
Simple DirectMedia Layer
|
||||||
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -33,9 +33,9 @@
|
|||||||
#cmakedefine SDL_VENDOR_INFO "@SDL_VENDOR_INFO@"
|
#cmakedefine SDL_VENDOR_INFO "@SDL_VENDOR_INFO@"
|
||||||
|
|
||||||
#if defined(SDL_VENDOR_INFO)
|
#if defined(SDL_VENDOR_INFO)
|
||||||
#define SDL_REVISION "SDL-@<@PROJECT_REVISION@>@ (" SDL_VENDOR_INFO ")"
|
#define SDL_REVISION "@<@PROJECT_REVISION@>@ (" SDL_VENDOR_INFO ")"
|
||||||
#else
|
#else
|
||||||
#define SDL_REVISION "SDL-@<@PROJECT_REVISION@>@"
|
#define SDL_REVISION "@<@PROJECT_REVISION@>@"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* SDL_revision_h_ */
|
#endif /* SDL_revision_h_ */
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
Simple DirectMedia Layer
|
Simple DirectMedia Layer
|
||||||
Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -48,9 +48,9 @@
|
|||||||
*/
|
*/
|
||||||
#define SDL_REVISION "Some arbitrary string decided at SDL build time"
|
#define SDL_REVISION "Some arbitrary string decided at SDL build time"
|
||||||
#elif defined(SDL_VENDOR_INFO)
|
#elif defined(SDL_VENDOR_INFO)
|
||||||
#define SDL_REVISION "SDL-@<@PROJECT_REVISION@>@ (" SDL_VENDOR_INFO ")"
|
#define SDL_REVISION "@<@PROJECT_REVISION@>@ (" SDL_VENDOR_INFO ")"
|
||||||
#else
|
#else
|
||||||
#define SDL_REVISION "SDL-@<@PROJECT_REVISION@>@"
|
#define SDL_REVISION "@<@PROJECT_REVISION@>@"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* SDL_revision_h_ */
|
#endif /* SDL_revision_h_ */
|
||||||
|
|||||||
@@ -183,7 +183,7 @@
|
|||||||
],
|
],
|
||||||
"api-minimum": 21,
|
"api-minimum": 21,
|
||||||
"api-target": 35,
|
"api-target": 35,
|
||||||
"ndk-minimum": 28,
|
"ndk-minimum": 21,
|
||||||
"aar-files": {
|
"aar-files": {
|
||||||
"": [
|
"": [
|
||||||
"android-project/app/proguard-rules.pro:proguard.txt",
|
"android-project/app/proguard-rules.pro:proguard.txt",
|
||||||
|
|||||||
21
build-scripts/strip_fPIC.sh
Executable file
21
build-scripts/strip_fPIC.sh
Executable file
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# libtool assumes that the compiler can handle the -fPIC flag
|
||||||
|
# This isn't always true (for example, nasm can't handle it)
|
||||||
|
command=""
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
-?PIC)
|
||||||
|
# Ignore -fPIC and -DPIC options
|
||||||
|
;;
|
||||||
|
-fno-common)
|
||||||
|
# Ignore -fPIC and -DPIC options
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
command="$command $1"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
echo $command
|
||||||
|
exec $command
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
||||||
|
|
||||||
# Simple DirectMedia Layer
|
# Simple DirectMedia Layer
|
||||||
# Copyright (C) 1997-2026 Sam Lantinga <slouken@libsdl.org>
|
# Copyright (C) 1997-2025 Sam Lantinga <slouken@libsdl.org>
|
||||||
#
|
#
|
||||||
# This software is provided 'as-is', without any express or implied
|
# This software is provided 'as-is', without any express or implied
|
||||||
# warranty. In no event will the authors be held liable for any damages
|
# warranty. In no event will the authors be held liable for any damages
|
||||||
@@ -32,16 +32,10 @@ my $wikisubdir = '';
|
|||||||
my $incsubdir = 'include';
|
my $incsubdir = 'include';
|
||||||
my $readmesubdir = undef;
|
my $readmesubdir = undef;
|
||||||
my $apiprefixregex = undef;
|
my $apiprefixregex = undef;
|
||||||
my $apipropertyregex = undef;
|
|
||||||
my $versionfname = 'include/SDL_version.h';
|
my $versionfname = 'include/SDL_version.h';
|
||||||
my $versionmajorregex = '\A\#define\s+SDL_MAJOR_VERSION\s+(\d+)\Z';
|
my $versionmajorregex = '\A\#define\s+SDL_MAJOR_VERSION\s+(\d+)\Z';
|
||||||
my $versionminorregex = '\A\#define\s+SDL_MINOR_VERSION\s+(\d+)\Z';
|
my $versionminorregex = '\A\#define\s+SDL_MINOR_VERSION\s+(\d+)\Z';
|
||||||
my $versionmicroregex = '\A\#define\s+SDL_MICRO_VERSION\s+(\d+)\Z';
|
my $versionmicroregex = '\A\#define\s+SDL_MICRO_VERSION\s+(\d+)\Z';
|
||||||
my $wikidocsectionsym = 'SDL_WIKI_DOCUMENTATION_SECTION';
|
|
||||||
my $forceinlinesym = 'SDL_FORCE_INLINE';
|
|
||||||
my $deprecatedsym = 'SDL_DEPRECATED';
|
|
||||||
my $declspecsym = '(?:SDLMAIN_|SDL_)?DECLSPEC';
|
|
||||||
my $callconvsym = 'SDLCALL';
|
|
||||||
my $mainincludefname = 'SDL.h';
|
my $mainincludefname = 'SDL.h';
|
||||||
my $selectheaderregex = '\ASDL.*?\.h\Z';
|
my $selectheaderregex = '\ASDL.*?\.h\Z';
|
||||||
my $projecturl = 'https://libsdl.org/';
|
my $projecturl = 'https://libsdl.org/';
|
||||||
@@ -49,6 +43,7 @@ my $wikiurl = 'https://wiki.libsdl.org';
|
|||||||
my $bugreporturl = 'https://github.com/libsdl-org/sdlwiki/issues/new';
|
my $bugreporturl = 'https://github.com/libsdl-org/sdlwiki/issues/new';
|
||||||
my $srcpath = undef;
|
my $srcpath = undef;
|
||||||
my $wikipath = undef;
|
my $wikipath = undef;
|
||||||
|
my $wikireadmesubdir = 'README';
|
||||||
my $warn_about_missing = 0;
|
my $warn_about_missing = 0;
|
||||||
my $copy_direction = 0;
|
my $copy_direction = 0;
|
||||||
my $optionsfname = undef;
|
my $optionsfname = undef;
|
||||||
@@ -63,11 +58,6 @@ my $quickreftitle = undef;
|
|||||||
my $quickrefurl = undef;
|
my $quickrefurl = undef;
|
||||||
my $quickrefdesc = undef;
|
my $quickrefdesc = undef;
|
||||||
my $quickrefmacroregex = undef;
|
my $quickrefmacroregex = undef;
|
||||||
my $envvarenabled = 0;
|
|
||||||
my $envvartitle = 'Environment Variables';
|
|
||||||
my $envvardesc = undef;
|
|
||||||
my $envvarsymregex = undef;
|
|
||||||
my $envvarsymreplace = undef;
|
|
||||||
my $changeformat = undef;
|
my $changeformat = undef;
|
||||||
my $manpath = undef;
|
my $manpath = undef;
|
||||||
my $gitrev = undef;
|
my $gitrev = undef;
|
||||||
@@ -121,7 +111,6 @@ if (defined $optionsfname) {
|
|||||||
$srcpath = $val, next if $key eq 'srcpath';
|
$srcpath = $val, next if $key eq 'srcpath';
|
||||||
$wikipath = $val, next if $key eq 'wikipath';
|
$wikipath = $val, next if $key eq 'wikipath';
|
||||||
$apiprefixregex = $val, next if $key eq 'apiprefixregex';
|
$apiprefixregex = $val, next if $key eq 'apiprefixregex';
|
||||||
$apipropertyregex = $val, next if $key eq 'apipropertyregex';
|
|
||||||
$projectfullname = $val, next if $key eq 'projectfullname';
|
$projectfullname = $val, next if $key eq 'projectfullname';
|
||||||
$projectshortname = $val, next if $key eq 'projectshortname';
|
$projectshortname = $val, next if $key eq 'projectshortname';
|
||||||
$wikisubdir = $val, next if $key eq 'wikisubdir';
|
$wikisubdir = $val, next if $key eq 'wikisubdir';
|
||||||
@@ -147,17 +136,6 @@ if (defined $optionsfname) {
|
|||||||
$quickrefurl = $val, next if $key eq 'quickrefurl';
|
$quickrefurl = $val, next if $key eq 'quickrefurl';
|
||||||
$quickrefdesc = $val, next if $key eq 'quickrefdesc';
|
$quickrefdesc = $val, next if $key eq 'quickrefdesc';
|
||||||
$quickrefmacroregex = $val, next if $key eq 'quickrefmacroregex';
|
$quickrefmacroregex = $val, next if $key eq 'quickrefmacroregex';
|
||||||
$envvarenabled = int($val), next if $key eq 'envvarenabled';
|
|
||||||
$envvartitle = $val, next if $key eq 'envvartitle';
|
|
||||||
$envvardesc = $val, next if $key eq 'envvardesc';
|
|
||||||
$envvarsymregex = $val, next if $key eq 'envvarsymregex';
|
|
||||||
$envvarsymreplace = $val, next if $key eq 'envvarsymreplace';
|
|
||||||
$wikidocsectionsym = $val, next if $key eq 'wikidocsectionsym';
|
|
||||||
$forceinlinesym = $val, next if $key eq 'forceinlinesym';
|
|
||||||
$deprecatedsym = $val, next if $key eq 'deprecatedsym';
|
|
||||||
$declspecsym = $val, next if $key eq 'declspecsym';
|
|
||||||
$callconvsym = $val, next if $key eq 'callconvsym';
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
close(OPTIONS);
|
close(OPTIONS);
|
||||||
@@ -364,7 +342,7 @@ sub wikify_chunk {
|
|||||||
|
|
||||||
# Convert obvious API things to wikilinks.
|
# Convert obvious API things to wikilinks.
|
||||||
if (defined $apiprefixregex) {
|
if (defined $apiprefixregex) {
|
||||||
$str =~ s/(\A|[^\/a-zA-Z0-9_\[])($apiprefixregex[a-zA-Z0-9_]+)/$1\[$2\]\($2\)/gms;
|
$str =~ s/(\A|[^\/a-zA-Z0-9_])($apiprefixregex[a-zA-Z0-9_]+)/$1\[$2\]\($2\)/gms;
|
||||||
}
|
}
|
||||||
|
|
||||||
$str = $codedstr . $str;
|
$str = $codedstr . $str;
|
||||||
@@ -447,7 +425,6 @@ sub dewikify_chunk {
|
|||||||
}
|
}
|
||||||
} elsif ($dewikify_mode eq 'manpage') {
|
} elsif ($dewikify_mode eq 'manpage') {
|
||||||
# make sure these can't become part of roff syntax.
|
# make sure these can't become part of roff syntax.
|
||||||
$str =~ s/\\/\\(rs/gms;
|
|
||||||
$str =~ s/\./\\[char46]/gms;
|
$str =~ s/\./\\[char46]/gms;
|
||||||
$str =~ s/"/\\(dq/gms;
|
$str =~ s/"/\\(dq/gms;
|
||||||
$str =~ s/'/\\(aq/gms;
|
$str =~ s/'/\\(aq/gms;
|
||||||
@@ -761,7 +738,6 @@ sub print_undocumented_section {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# !!! FIXME: generalize this for other libraries to use.
|
|
||||||
sub strip_fn_declaration_metadata {
|
sub strip_fn_declaration_metadata {
|
||||||
my $decl = shift;
|
my $decl = shift;
|
||||||
$decl =~ s/SDL_(PRINTF|SCANF)_FORMAT_STRING\s*//; # don't want this metadata as part of the documentation.
|
$decl =~ s/SDL_(PRINTF|SCANF)_FORMAT_STRING\s*//; # don't want this metadata as part of the documentation.
|
||||||
@@ -850,23 +826,21 @@ sub print_big_ascii_string {
|
|||||||
die("Don't have a big ascii entry for '$ch'!\n") if not defined $rowsref;
|
die("Don't have a big ascii entry for '$ch'!\n") if not defined $rowsref;
|
||||||
my $row = @$rowsref[$rownum];
|
my $row = @$rowsref[$rownum];
|
||||||
|
|
||||||
my $outstr = '';
|
|
||||||
if ($lowascii) {
|
if ($lowascii) {
|
||||||
my @x = split //, $row;
|
my @x = split //, $row;
|
||||||
foreach (@x) {
|
foreach (@x) {
|
||||||
$outstr .= ($_ eq "\x{2588}") ? 'X' : ' ';
|
my $v = ($_ eq "\x{2588}") ? 'X' : ' ';
|
||||||
|
print $fh $v;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$outstr = $row;
|
print $fh $row;
|
||||||
}
|
}
|
||||||
|
|
||||||
$charidx++;
|
$charidx++;
|
||||||
if ($charidx == $charcount) {
|
|
||||||
$outstr =~ s/\s*\Z//; # dump extra spaces at the end of the line.
|
if ($charidx < $charcount) {
|
||||||
} else {
|
print $fh " ";
|
||||||
$outstr .= ' '; # space between glyphs.
|
|
||||||
}
|
}
|
||||||
print $fh $outstr;
|
|
||||||
}
|
}
|
||||||
print $fh "\n";
|
print $fh "\n";
|
||||||
}
|
}
|
||||||
@@ -1057,58 +1031,10 @@ sub generate_quickref {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
sub generate_envvar_wiki_page {
|
|
||||||
my $briefsref = shift;
|
|
||||||
my $path = shift;
|
|
||||||
|
|
||||||
return if not $envvarenabled or not defined $envvarsymregex or not defined $envvarsymreplace;
|
|
||||||
|
|
||||||
my $replace = "\"$envvarsymreplace\"";
|
|
||||||
my $tmppath = "$path.tmp";
|
|
||||||
open(my $fh, '>', $tmppath) or die("Can't open '$tmppath': $!\n");
|
|
||||||
|
|
||||||
print $fh "<!-- DO NOT EDIT THIS PAGE ON THE WIKI. IT WILL BE OVERWRITTEN BY WIKIHEADERS AND CHANGES WILL BE LOST! -->\n\n";
|
|
||||||
print $fh "# $envvartitle\n\n";
|
|
||||||
|
|
||||||
if (defined $envvardesc) {
|
|
||||||
my $desc = "$envvardesc";
|
|
||||||
$desc =~ s/\\n/\n/g; # replace "\n" strings with actual newlines.
|
|
||||||
print $fh "$desc\n\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
print $fh "## Environment Variable List\n\n";
|
|
||||||
|
|
||||||
foreach (sort keys %headersyms) {
|
|
||||||
my $sym = $_;
|
|
||||||
next if $headersymstype{$sym} != 2; # not a #define? skip it.
|
|
||||||
my $hint = "$_";
|
|
||||||
next if not $hint =~ s/$envvarsymregex/$replace/ee;
|
|
||||||
|
|
||||||
my $brief = $$briefsref{$sym};
|
|
||||||
if (not defined $brief) {
|
|
||||||
$brief = '';
|
|
||||||
} else {
|
|
||||||
$brief = "$brief";
|
|
||||||
chomp($brief);
|
|
||||||
my $thiswikitype = defined $wikitypes{$sym} ? $wikitypes{$sym} : 'md'; # default to MarkDown for new stuff.
|
|
||||||
$brief = ": " . dewikify($thiswikitype, $brief);
|
|
||||||
}
|
|
||||||
print $fh "- [$hint]($sym)$brief\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
print $fh "\n";
|
|
||||||
|
|
||||||
close($fh);
|
|
||||||
|
|
||||||
rename($tmppath, $path) or die("Can't rename '$tmppath' to '$path': $!\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
my $incpath = "$srcpath";
|
my $incpath = "$srcpath";
|
||||||
$incpath .= "/$incsubdir" if $incsubdir ne '';
|
$incpath .= "/$incsubdir" if $incsubdir ne '';
|
||||||
|
|
||||||
|
my $wikireadmepath = "$wikipath/$wikireadmesubdir";
|
||||||
my $readmepath = undef;
|
my $readmepath = undef;
|
||||||
if (defined $readmesubdir) {
|
if (defined $readmesubdir) {
|
||||||
$readmepath = "$srcpath/$readmesubdir";
|
$readmepath = "$srcpath/$readmesubdir";
|
||||||
@@ -1165,7 +1091,7 @@ while (my $d = readdir(DH)) {
|
|||||||
} elsif ($ignoring_lines) {
|
} elsif ($ignoring_lines) {
|
||||||
push @contents, $_;
|
push @contents, $_;
|
||||||
next;
|
next;
|
||||||
} elsif (/\A\s*\#\s*ifndef\s+$wikidocsectionsym\s*\Z/) {
|
} elsif (/\A\s*\#\s*ifndef\s+SDL_WIKI_DOCUMENTATION_SECTION\s*\Z/) {
|
||||||
$ignoring_lines = 1;
|
$ignoring_lines = 1;
|
||||||
push @contents, $_;
|
push @contents, $_;
|
||||||
next;
|
next;
|
||||||
@@ -1174,13 +1100,13 @@ while (my $d = readdir(DH)) {
|
|||||||
#print("CATEGORY FOR '$dent' CHANGED TO " . (defined($current_wiki_category) ? "'$current_wiki_category'" : '(undef)') . "\n");
|
#print("CATEGORY FOR '$dent' CHANGED TO " . (defined($current_wiki_category) ? "'$current_wiki_category'" : '(undef)') . "\n");
|
||||||
push @contents, $_;
|
push @contents, $_;
|
||||||
next;
|
next;
|
||||||
} elsif (/\A\s*extern\s+(?:$deprecatedsym\s+|)$declspecsym/) { # a function declaration without a doxygen comment?
|
} elsif (/\A\s*extern\s+(SDL_DEPRECATED\s+|)(SDLMAIN_|SDL_)?DECLSPEC/) { # a function declaration without a doxygen comment?
|
||||||
$symtype = 1; # function declaration
|
$symtype = 1; # function declaration
|
||||||
@templines = ();
|
@templines = ();
|
||||||
$decl = $_;
|
$decl = $_;
|
||||||
$str = '';
|
$str = '';
|
||||||
$has_doxygen = 0;
|
$has_doxygen = 0;
|
||||||
} elsif (/\A\s*$forceinlinesym/) { # a (forced-inline) function declaration without a doxygen comment?
|
} elsif (/\A\s*SDL_FORCE_INLINE/) { # a (forced-inline) function declaration without a doxygen comment?
|
||||||
$symtype = 1; # function declaration
|
$symtype = 1; # function declaration
|
||||||
@templines = ();
|
@templines = ();
|
||||||
$decl = $_;
|
$decl = $_;
|
||||||
@@ -1247,9 +1173,9 @@ while (my $d = readdir(DH)) {
|
|||||||
$lineno++ if defined $decl;
|
$lineno++ if defined $decl;
|
||||||
$decl = '' if not defined $decl;
|
$decl = '' if not defined $decl;
|
||||||
chomp($decl);
|
chomp($decl);
|
||||||
if ($decl =~ /\A\s*extern\s+(?:$deprecatedsym\s+|)$declspecsym/) {
|
if ($decl =~ /\A\s*extern\s+(SDL_DEPRECATED\s+|)(SDLMAIN_|SDL_)?DECLSPEC/) {
|
||||||
$symtype = 1; # function declaration
|
$symtype = 1; # function declaration
|
||||||
} elsif ($decl =~ /\A\s*$forceinlinesym/) {
|
} elsif ($decl =~ /\A\s*SDL_FORCE_INLINE/) {
|
||||||
$symtype = 1; # (forced-inline) function declaration
|
$symtype = 1; # (forced-inline) function declaration
|
||||||
} elsif ($decl =~ /\A\s*\#\s*define\s+/) {
|
} elsif ($decl =~ /\A\s*\#\s*define\s+/) {
|
||||||
$symtype = 2; # macro
|
$symtype = 2; # macro
|
||||||
@@ -1286,7 +1212,7 @@ while (my $d = readdir(DH)) {
|
|||||||
}
|
}
|
||||||
$headercategorydocs{$current_wiki_category} = $sym;
|
$headercategorydocs{$current_wiki_category} = $sym;
|
||||||
} elsif ($symtype == 1) { # a function
|
} elsif ($symtype == 1) { # a function
|
||||||
my $is_forced_inline = ($decl =~ /\A\s*$forceinlinesym/);
|
my $is_forced_inline = ($decl =~ /\A\s*SDL_FORCE_INLINE/);
|
||||||
|
|
||||||
if ($is_forced_inline) {
|
if ($is_forced_inline) {
|
||||||
if (not $decl =~ /\)\s*(\{.*|)\s*\Z/) {
|
if (not $decl =~ /\)\s*(\{.*|)\s*\Z/) {
|
||||||
@@ -1323,14 +1249,14 @@ while (my $d = readdir(DH)) {
|
|||||||
|
|
||||||
my $paramsstr = undef;
|
my $paramsstr = undef;
|
||||||
|
|
||||||
if (!$is_forced_inline && $decl =~ /\A\s*extern\s+(?:$deprecatedsym\s+|)$declspecsym\w*\s+(const\s+|)(unsigned\s+|)(.*?)([\*\s]+)(\*?)\s*$callconvsym\s+(.*?)\s*\((.*?)\);/) {
|
if (!$is_forced_inline && $decl =~ /\A\s*extern\s+(SDL_DEPRECATED\s+|)(SDLMAIN_|SDL_)?DECLSPEC\w*\s+(const\s+|)(unsigned\s+|)(.*?)([\*\s]+)(\*?)\s*SDLCALL\s+(.*?)\s*\((.*?)\);/) {
|
||||||
|
$sym = $8;
|
||||||
|
$rettype = "$3$4$5$6";
|
||||||
|
$paramsstr = $9;
|
||||||
|
} elsif ($is_forced_inline && $decl =~ /\A\s*SDL_FORCE_INLINE\s+(SDL_DEPRECATED\s+|)(const\s+|)(unsigned\s+|)(.*?)([\*\s]+)(.*?)\s*\((.*?)\);/) {
|
||||||
$sym = $6;
|
$sym = $6;
|
||||||
$rettype = "$1$2$3$4$5";
|
$rettype = "$2$3$4$5";
|
||||||
$paramsstr = $7;
|
$paramsstr = $7;
|
||||||
} elsif ($is_forced_inline && $decl =~ /\A\s*$forceinlinesym\s+(?:$deprecatedsym\s+|)(const\s+|)(unsigned\s+|)(.*?)([\*\s]+)(.*?)\s*\((.*?)\);/) {
|
|
||||||
$sym = $5;
|
|
||||||
$rettype = "$1$2$3$4";
|
|
||||||
$paramsstr = $6;
|
|
||||||
} else {
|
} else {
|
||||||
#print "Found doxygen but no function sig:\n$str\n\n";
|
#print "Found doxygen but no function sig:\n$str\n\n";
|
||||||
foreach (@templines) {
|
foreach (@templines) {
|
||||||
@@ -1396,7 +1322,7 @@ while (my $d = readdir(DH)) {
|
|||||||
|
|
||||||
$decl = $_;
|
$decl = $_;
|
||||||
$temp = $decl;
|
$temp = $decl;
|
||||||
$temp =~ s/\Aextern\s+(?:$deprecatedsym\s+|)$declspecsym\w*\s+(.*?)\s+(\*?)$callconvsym\s+/$1$2 /;
|
$temp =~ s/\Aextern\s+(SDL_DEPRECATED\s+|)(SDLMAIN_|SDL_)?DECLSPEC\w*\s+(.*?)\s+(\*?)SDLCALL\s+/$3$4 /;
|
||||||
$shrink_length = length($decl) - length($temp);
|
$shrink_length = length($decl) - length($temp);
|
||||||
$decl = $temp;
|
$decl = $temp;
|
||||||
} else {
|
} else {
|
||||||
@@ -1440,7 +1366,7 @@ while (my $d = readdir(DH)) {
|
|||||||
# update strings now that we know everything pending is to be applied to this declaration. Add pending blank lines and the new text.
|
# update strings now that we know everything pending is to be applied to this declaration. Add pending blank lines and the new text.
|
||||||
|
|
||||||
# At Sam's request, don't list property defines with functions. (See #9440)
|
# At Sam's request, don't list property defines with functions. (See #9440)
|
||||||
my $is_property = (defined $apipropertyregex) ? /$apipropertyregex/ : 0;
|
my $is_property = /\A\s*\#\s*define\s+SDL_PROP_/;
|
||||||
if (!$is_property) {
|
if (!$is_property) {
|
||||||
if ($blank_lines > 0) {
|
if ($blank_lines > 0) {
|
||||||
while ($blank_lines > 0) {
|
while ($blank_lines > 0) {
|
||||||
@@ -1461,7 +1387,7 @@ while (my $d = readdir(DH)) {
|
|||||||
}
|
}
|
||||||
$decl .= $additional_decl;
|
$decl .= $additional_decl;
|
||||||
} elsif ($symtype == 2) { # a macro
|
} elsif ($symtype == 2) { # a macro
|
||||||
if ($decl =~ /\A\s*\#\s*define\s+(.*?)(\(.*?\)|)(\s+|\Z)/) {
|
if ($decl =~ /\A\s*\#\s*define\s+(.*?)(\(.*?\)|)\s+/) {
|
||||||
$sym = $1;
|
$sym = $1;
|
||||||
} else {
|
} else {
|
||||||
#print "Found doxygen but no macro:\n$str\n\n";
|
#print "Found doxygen but no macro:\n$str\n\n";
|
||||||
@@ -2157,15 +2083,18 @@ if ($copy_direction == 1) { # --copy-to-headers
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (defined $readmepath) {
|
if (defined $readmepath) {
|
||||||
mkdir($readmepath); # just in case
|
if ( -d $wikireadmepath ) {
|
||||||
opendir(DH, $wikipath) or die("Can't opendir '$wikipath': $!\n");
|
mkdir($readmepath); # just in case
|
||||||
while (readdir(DH)) {
|
opendir(DH, $wikireadmepath) or die("Can't opendir '$wikireadmepath': $!\n");
|
||||||
my $dent = $_;
|
while (readdir(DH)) {
|
||||||
if ($dent =~ /\A(README|INTRO)\-.*?\.md\Z/) { # we only bridge Markdown files here that start with "README-" or "INTRO-".
|
my $dent = $_;
|
||||||
filecopy("$wikipath/$dent", "$readmepath/$dent", "\n");
|
if ($dent =~ /\A(.*?)\.md\Z/) { # we only bridge Markdown files here.
|
||||||
|
next if $1 eq 'FrontPage';
|
||||||
|
filecopy("$wikireadmepath/$dent", "$readmepath/README-$dent", "\n");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
closedir(DH);
|
||||||
}
|
}
|
||||||
closedir(DH);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} elsif ($copy_direction == -1) { # --copy-to-wiki
|
} elsif ($copy_direction == -1) { # --copy-to-wiki
|
||||||
@@ -2271,10 +2200,10 @@ if ($copy_direction == 1) { # --copy-to-headers
|
|||||||
|
|
||||||
$desc =~ s/[\s\n]+\Z//ms;
|
$desc =~ s/[\s\n]+\Z//ms;
|
||||||
|
|
||||||
if (0) {
|
if (0) { # !!! FIXME: disabled because it's not currently suitable for general use, but for manually inspecting the output, it can be useful.
|
||||||
if (($desc =~ /\A[a-z]/) && (not $desc =~ /$apiprefixregex/)) {
|
if (($desc =~ /\A[A-Z]/) && (not $desc =~ /\ASDL_/)) {
|
||||||
print STDERR "WARNING: $sym\'s '\\param $arg' text starts with a lowercase letter: '$desc'. Fixing.\n";
|
print STDERR "WARNING: $sym\'s '\\param $arg' text starts with a capital letter: '$desc'. Fixing.\n";
|
||||||
$desc = ucfirst($desc);
|
$desc = lcfirst($desc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2318,8 +2247,8 @@ if ($copy_direction == 1) { # --copy-to-headers
|
|||||||
}
|
}
|
||||||
$desc =~ s/[\s\n]+\Z//ms;
|
$desc =~ s/[\s\n]+\Z//ms;
|
||||||
|
|
||||||
if (0) {
|
if (0) { # !!! FIXME: disabled because it's not currently suitable for general use, but for manually inspecting the output, it can be useful.
|
||||||
if (($desc =~ /\A[A-Z]/) && (not $desc =~ /$apiprefixregex/)) {
|
if (($desc =~ /\A[A-Z]/) && (not $desc =~ /\ASDL_/)) {
|
||||||
print STDERR "WARNING: $sym\'s '\\returns' text starts with a capital letter: '$desc'. Fixing.\n";
|
print STDERR "WARNING: $sym\'s '\\returns' text starts with a capital letter: '$desc'. Fixing.\n";
|
||||||
$desc = lcfirst($desc);
|
$desc = lcfirst($desc);
|
||||||
}
|
}
|
||||||
@@ -2463,7 +2392,7 @@ if ($copy_direction == 1) { # --copy-to-headers
|
|||||||
} else {
|
} else {
|
||||||
die("Unexpected symbol type $symtype!");
|
die("Unexpected symbol type $symtype!");
|
||||||
}
|
}
|
||||||
my $str = "This $symtypename is available since $projectshortname 3.0.0.";
|
my $str = "This $symtypename is available since SDL 3.0.0.";
|
||||||
$sections{'Version'} = wordwrap(wikify($wikitype, $str)) . "\n";
|
$sections{'Version'} = wordwrap(wikify($wikitype, $str)) . "\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2770,27 +2699,31 @@ __EOF__
|
|||||||
# Write out READMEs...
|
# Write out READMEs...
|
||||||
if (defined $readmepath) {
|
if (defined $readmepath) {
|
||||||
if ( -d $readmepath ) {
|
if ( -d $readmepath ) {
|
||||||
mkdir($wikipath); # just in case
|
mkdir($wikireadmepath); # just in case
|
||||||
opendir(DH, $readmepath) or die("Can't opendir '$readmepath': $!\n");
|
opendir(DH, $readmepath) or die("Can't opendir '$readmepath': $!\n");
|
||||||
while (my $d = readdir(DH)) {
|
while (my $d = readdir(DH)) {
|
||||||
my $dent = $d;
|
my $dent = $d;
|
||||||
if ($dent =~ /\A(README|INTRO)\-.*?\.md\Z/) { # we only bridge Markdown files here that start with "README-" or "INTRO".
|
if ($dent =~ /\AREADME\-(.*?\.md)\Z/) { # we only bridge Markdown files here.
|
||||||
filecopy("$readmepath/$dent", "$wikipath/$dent", "\n");
|
my $wikifname = $1;
|
||||||
|
next if $wikifname eq 'FrontPage.md';
|
||||||
|
filecopy("$readmepath/$dent", "$wikireadmepath/$wikifname", "\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
closedir(DH);
|
closedir(DH);
|
||||||
|
|
||||||
my @pages = ();
|
my @pages = ();
|
||||||
opendir(DH, $wikipath) or die("Can't opendir '$wikipath': $!\n");
|
opendir(DH, $wikireadmepath) or die("Can't opendir '$wikireadmepath': $!\n");
|
||||||
while (my $d = readdir(DH)) {
|
while (my $d = readdir(DH)) {
|
||||||
my $dent = $d;
|
my $dent = $d;
|
||||||
if ($dent =~ /\A((README|INTRO)\-.*?)\.md\Z/) {
|
if ($dent =~ /\A(.*?)\.(mediawiki|md)\Z/) {
|
||||||
push @pages, $1;
|
my $wikiname = $1;
|
||||||
|
next if $wikiname eq 'FrontPage';
|
||||||
|
push @pages, $wikiname;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
closedir(DH);
|
closedir(DH);
|
||||||
|
|
||||||
open(FH, '>', "$wikipath/READMEs.md") or die("Can't open '$wikipath/READMEs.md': $!\n");
|
open(FH, '>', "$wikireadmepath/FrontPage.md") or die("Can't open '$wikireadmepath/FrontPage.md': $!\n");
|
||||||
print FH "# All READMEs available here\n\n";
|
print FH "# All READMEs available here\n\n";
|
||||||
foreach (sort @pages) {
|
foreach (sort @pages) {
|
||||||
my $wikiname = $_;
|
my $wikiname = $_;
|
||||||
@@ -2805,11 +2738,6 @@ __EOF__
|
|||||||
generate_quickref(\%briefs, "$wikipath/QuickReference.md", 0);
|
generate_quickref(\%briefs, "$wikipath/QuickReference.md", 0);
|
||||||
generate_quickref(\%briefs, "$wikipath/QuickReferenceNoUnicode.md", 1);
|
generate_quickref(\%briefs, "$wikipath/QuickReferenceNoUnicode.md", 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($envvarenabled and defined $envvarsymregex and defined $envvarsymreplace) {
|
|
||||||
generate_envvar_wiki_page(\%briefs, "$wikipath/EnvironmentVariables.md");
|
|
||||||
}
|
|
||||||
|
|
||||||
} elsif ($copy_direction == -2) { # --copy-to-manpages
|
} elsif ($copy_direction == -2) { # --copy-to-manpages
|
||||||
# This only takes from the wiki data, since it has sections we omit from the headers, like code examples.
|
# This only takes from the wiki data, since it has sections we omit from the headers, like code examples.
|
||||||
|
|
||||||
@@ -2928,7 +2856,7 @@ __EOF__
|
|||||||
$str .= ".\\\" Please report issues in this manpage's content at:\n";
|
$str .= ".\\\" Please report issues in this manpage's content at:\n";
|
||||||
$str .= ".\\\" $bugreporturl\n";
|
$str .= ".\\\" $bugreporturl\n";
|
||||||
$str .= ".\\\" Please report issues in the generation of this manpage from the wiki at:\n";
|
$str .= ".\\\" Please report issues in the generation of this manpage from the wiki at:\n";
|
||||||
$str .= ".\\\" https://github.com/libsdl-org/SDL/issues/new?title=Misgenerated%20manpage%20for%20$sym\n"; # !!! FIXME: if this becomes a problem for other projects, we'll generalize this.
|
$str .= ".\\\" https://github.com/libsdl-org/SDL/issues/new?title=Misgenerated%20manpage%20for%20$sym\n";
|
||||||
$str .= ".\\\" $projectshortname can be found at $projecturl\n";
|
$str .= ".\\\" $projectshortname can be found at $projecturl\n";
|
||||||
|
|
||||||
# Define a .URL macro. The "www.tmac" thing decides if we're using GNU roff (which has a .URL macro already), and if so, overrides the macro we just created.
|
# Define a .URL macro. The "www.tmac" thing decides if we're using GNU roff (which has a .URL macro already), and if so, overrides the macro we just created.
|
||||||
@@ -3053,12 +2981,10 @@ __EOF__
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (defined $returns) {
|
if (defined $returns) {
|
||||||
# Check for md link in return type: ([SDL_Renderer](SDL_Renderer) *)
|
|
||||||
# This would've prevented the next regex from working properly (it'd leave " *)")
|
|
||||||
$returns =~ s/\A\(\[.*?\]\((.*?)\)/\($1/ms;
|
|
||||||
# Chop datatype in parentheses off the front.
|
# Chop datatype in parentheses off the front.
|
||||||
$returns =~ s/\A\(.*?\) //;
|
if(!($returns =~ s/\A\([^\[]*\[[^\]]*\]\([^\)]*\)[^\)]*\) //ms)) {
|
||||||
|
$returns =~ s/\A\([^\)]*\) //ms;
|
||||||
|
}
|
||||||
$returns = dewikify($wikitype, $returns);
|
$returns = dewikify($wikitype, $returns);
|
||||||
$str .= ".SH RETURN VALUE\n";
|
$str .= ".SH RETURN VALUE\n";
|
||||||
$str .= "$returns\n";
|
$str .= "$returns\n";
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user