mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-03-21 16:21:06 +01:00
Compare commits
1238 Commits
release-2.
...
release-2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ffa78e6bea | ||
|
|
4ce5c3a694 | ||
|
|
a3d4fd71c3 | ||
|
|
d97423ebab | ||
|
|
333a03f1ec | ||
|
|
5b8fc907df | ||
|
|
76392f4fe1 | ||
|
|
3a5abee512 | ||
|
|
e7ee375f22 | ||
|
|
4aec54988c | ||
|
|
271e03f0d7 | ||
|
|
d4f9be4416 | ||
|
|
1f5b21ead5 | ||
|
|
35c7884929 | ||
|
|
3f6c4ec6d0 | ||
|
|
fc72f12e7f | ||
|
|
681f67d353 | ||
|
|
d2372c8538 | ||
|
|
7db23f4ef1 | ||
|
|
36ff6327b0 | ||
|
|
26a38a0b20 | ||
|
|
b3e1fd97b8 | ||
|
|
c77aaa5d99 | ||
|
|
e4e0a12901 | ||
|
|
2afb49ba9a | ||
|
|
154ad6faa9 | ||
|
|
2aa8525ecb | ||
|
|
36033e3832 | ||
|
|
320f3fffbe | ||
|
|
30b4d90f1c | ||
|
|
1cdd6dc829 | ||
|
|
f5b3247aae | ||
|
|
aa536217b3 | ||
|
|
14f4fd3f11 | ||
|
|
b1324fbc9f | ||
|
|
4700fbcbdf | ||
|
|
2660da6f5c | ||
|
|
7c86d96e86 | ||
|
|
a1dea11d32 | ||
|
|
bfef7c302c | ||
|
|
b9d1c483b9 | ||
|
|
dc94cca8dd | ||
|
|
97fe777ab4 | ||
|
|
f1bad83a21 | ||
|
|
7aa28ce279 | ||
|
|
c89a460672 | ||
|
|
e3bfacde3e | ||
|
|
9c05098ed9 | ||
|
|
c395240425 | ||
|
|
68e3e99087 | ||
|
|
7f7ea909bc | ||
|
|
379a6f4dab | ||
|
|
d275851dfb | ||
|
|
a9ded76dff | ||
|
|
5007b96363 | ||
|
|
b2e88ecfeb | ||
|
|
d6cd450624 | ||
|
|
e875775940 | ||
|
|
72606d97e6 | ||
|
|
48e71ae87b | ||
|
|
7308325559 | ||
|
|
9dea06f5b5 | ||
|
|
c68976360d | ||
|
|
a535cc62a0 | ||
|
|
63b8af3558 | ||
|
|
3f1fd5abff | ||
|
|
92f72682e7 | ||
|
|
891c89eeb8 | ||
|
|
e2b8d96529 | ||
|
|
78a92b4f9d | ||
|
|
7b2b99a996 | ||
|
|
b6d051e226 | ||
|
|
0ad0347acb | ||
|
|
a2f4783e75 | ||
|
|
2001a891c4 | ||
|
|
1ee9a437f9 | ||
|
|
69644346ac | ||
|
|
00b87f1ded | ||
|
|
beca41480d | ||
|
|
43b12fd9bc | ||
|
|
e8ec8ba1d4 | ||
|
|
feeec90873 | ||
|
|
d361acdd4e | ||
|
|
92a487f2e4 | ||
|
|
df9d0fb332 | ||
|
|
4a0b9522b6 | ||
|
|
32999798e0 | ||
|
|
424bc4bcf7 | ||
|
|
0eea92c8fc | ||
|
|
d42c303b24 | ||
|
|
237348c772 | ||
|
|
86786ed544 | ||
|
|
de93728674 | ||
|
|
5e74365e55 | ||
|
|
3e64fec9f4 | ||
|
|
707e9397ca | ||
|
|
f72213c4ac | ||
|
|
132b88749c | ||
|
|
8b39eb9b1f | ||
|
|
0f2322acfc | ||
|
|
5f344c17c2 | ||
|
|
a688ecd6fa | ||
|
|
120bc77e91 | ||
|
|
535ec1a921 | ||
|
|
7ec9a4385a | ||
|
|
6d7269815b | ||
|
|
cb0cf14155 | ||
|
|
7914234b26 | ||
|
|
51dcc3bb0b | ||
|
|
f6363fde9a | ||
|
|
f633915443 | ||
|
|
57043825ba | ||
|
|
22685556e5 | ||
|
|
f444eac557 | ||
|
|
eb0d214c17 | ||
|
|
55f74c3285 | ||
|
|
2aeac8de51 | ||
|
|
6d01ffcd94 | ||
|
|
c2ee45f5ff | ||
|
|
0bf63175ab | ||
|
|
d043c8535b | ||
|
|
d2a2787783 | ||
|
|
85fecbb10b | ||
|
|
ec3e333fb8 | ||
|
|
1402d13556 | ||
|
|
03c239ded9 | ||
|
|
16c9bad786 | ||
|
|
6574e5eb57 | ||
|
|
4fa21ee5ed | ||
|
|
8bfbda1eab | ||
|
|
93c289b475 | ||
|
|
ed5a343d25 | ||
|
|
0081174689 | ||
|
|
cd64e0b6e3 | ||
|
|
51c10bef0b | ||
|
|
d1dc195208 | ||
|
|
5e5b029d6c | ||
|
|
b58285b7ed | ||
|
|
e5ebbdafd4 | ||
|
|
977781d3f4 | ||
|
|
984af1a725 | ||
|
|
5aa76de35f | ||
|
|
1158cff9ea | ||
|
|
ae3a34a388 | ||
|
|
c0824cd49a | ||
|
|
6ed29f47c9 | ||
|
|
9ed1b778ed | ||
|
|
b970dd1beb | ||
|
|
576df87240 | ||
|
|
2dddaa7dc9 | ||
|
|
45a6ad8e57 | ||
|
|
b57a6a1adf | ||
|
|
d78072fcd4 | ||
|
|
446e0943da | ||
|
|
23bce27b26 | ||
|
|
c078dfcf6b | ||
|
|
18c4db678b | ||
|
|
7d26ba754a | ||
|
|
bd70ce7f94 | ||
|
|
ce4c54e2b2 | ||
|
|
57ae9f466d | ||
|
|
dca3fd8307 | ||
|
|
ab1670386f | ||
|
|
76e9d64b36 | ||
|
|
e9f9cb29fc | ||
|
|
3e1d7e6a14 | ||
|
|
ef347776c2 | ||
|
|
5e35309913 | ||
|
|
71dc7169d9 | ||
|
|
1e6ffc6294 | ||
|
|
3f00fa16c6 | ||
|
|
0d76380042 | ||
|
|
46d143376a | ||
|
|
22de91a947 | ||
|
|
1c2f825230 | ||
|
|
d9c07d9ef7 | ||
|
|
8f7427c158 | ||
|
|
6a999d16fa | ||
|
|
cfd6b34b8f | ||
|
|
a70964aaf4 | ||
|
|
35c13196f0 | ||
|
|
bc87983310 | ||
|
|
f5c0760c6b | ||
|
|
63e6c19b7d | ||
|
|
1bd9ebf533 | ||
|
|
e0e79419b6 | ||
|
|
8fc10ac95c | ||
|
|
91ad208d18 | ||
|
|
6c495a92f0 | ||
|
|
96a2a6b945 | ||
|
|
fd4bb4154b | ||
|
|
46945354cc | ||
|
|
f5bb286b76 | ||
|
|
f47a08ab84 | ||
|
|
660fc89967 | ||
|
|
6ff3e49b6f | ||
|
|
e58a8639e3 | ||
|
|
5b7b3da701 | ||
|
|
0a0dfdb2f9 | ||
|
|
8572e19327 | ||
|
|
031348d377 | ||
|
|
462d95ab4d | ||
|
|
a48bb80ea0 | ||
|
|
c0fb092425 | ||
|
|
37de5d4849 | ||
|
|
715749f578 | ||
|
|
0c7346ec3e | ||
|
|
711a458be5 | ||
|
|
171fba320f | ||
|
|
ad09976eca | ||
|
|
7abb748134 | ||
|
|
858ae9900e | ||
|
|
f87f0fe781 | ||
|
|
b3ea81b33f | ||
|
|
3bf9c70a7c | ||
|
|
ea7103088f | ||
|
|
a3a45f6709 | ||
|
|
5a7ea76ed3 | ||
|
|
9403c9e95a | ||
|
|
13969f8567 | ||
|
|
9be85b846b | ||
|
|
35c9b1042f | ||
|
|
31a57c05dc | ||
|
|
3dff5d3cbe | ||
|
|
4c9a79dddb | ||
|
|
7c4f5e1def | ||
|
|
abe8dbbf1c | ||
|
|
0efb31ef32 | ||
|
|
eb22fbc894 | ||
|
|
479bc2d5ed | ||
|
|
e6e654e25c | ||
|
|
7b06007266 | ||
|
|
7d55ccb8b0 | ||
|
|
da6bce4f76 | ||
|
|
74e8a6451b | ||
|
|
f741adc86c | ||
|
|
817141c162 | ||
|
|
e86f494317 | ||
|
|
d948e6c3c5 | ||
|
|
e7376b7b74 | ||
|
|
69b2baec5c | ||
|
|
2c6995778e | ||
|
|
22df572979 | ||
|
|
634705851d | ||
|
|
1194f52a5c | ||
|
|
45e5f0f10b | ||
|
|
a23d1af0ac | ||
|
|
2b66ef0df4 | ||
|
|
7285f0d441 | ||
|
|
ca3468cb55 | ||
|
|
7d2012af87 | ||
|
|
17515f4aef | ||
|
|
f71178a16f | ||
|
|
d77eb8a8d5 | ||
|
|
3fb9118cb6 | ||
|
|
71fb4e3d76 | ||
|
|
2518e32de8 | ||
|
|
e8938fc66a | ||
|
|
fde6323662 | ||
|
|
7154605982 | ||
|
|
c68cfcdb2d | ||
|
|
7bf3e28dc6 | ||
|
|
3fa5a2f794 | ||
|
|
af5efadd9f | ||
|
|
5b5a72e33c | ||
|
|
58fa43e7c3 | ||
|
|
4266cf8504 | ||
|
|
4f7f72c257 | ||
|
|
c5035d8ffd | ||
|
|
92779a5bd8 | ||
|
|
0dc4373aad | ||
|
|
06b305d232 | ||
|
|
c4a493de97 | ||
|
|
4a87abc966 | ||
|
|
2290d71338 | ||
|
|
17ecb11ed6 | ||
|
|
8800d40442 | ||
|
|
7ac43cfb6b | ||
|
|
dfc56cfc0e | ||
|
|
c83428475d | ||
|
|
d5680c5d20 | ||
|
|
1069c8931d | ||
|
|
507fc462db | ||
|
|
d9d84c8d73 | ||
|
|
e927e5d440 | ||
|
|
33ec2a5e94 | ||
|
|
a8a5bd3d6b | ||
|
|
038ccd764a | ||
|
|
c0445c23bf | ||
|
|
9670f233cc | ||
|
|
ea179abdb7 | ||
|
|
eabd88ed28 | ||
|
|
a44b646105 | ||
|
|
880ac537a5 | ||
|
|
7b8f0ba8b7 | ||
|
|
73a68c6ea5 | ||
|
|
44dc90dcc8 | ||
|
|
8efa1f8fc6 | ||
|
|
5d1e6b28d9 | ||
|
|
c638b4a682 | ||
|
|
01a4cf8a10 | ||
|
|
f51f7fbb94 | ||
|
|
b47b6e02fd | ||
|
|
381312a02a | ||
|
|
f836b465aa | ||
|
|
a47a045128 | ||
|
|
e8ae155585 | ||
|
|
2cb422360c | ||
|
|
fa934dd4df | ||
|
|
6a52017724 | ||
|
|
32fd45cf48 | ||
|
|
c5a09ca7a9 | ||
|
|
b425036808 | ||
|
|
0479df53ca | ||
|
|
0b0d256a69 | ||
|
|
d09d0aaab6 | ||
|
|
460b7b247f | ||
|
|
ebc2fb411f | ||
|
|
0d5467a6e9 | ||
|
|
305e7b55bd | ||
|
|
ad0d1e2ad5 | ||
|
|
7bf4319eb2 | ||
|
|
0ebda87425 | ||
|
|
a099172754 | ||
|
|
988866ca4a | ||
|
|
2cb7a0a0bb | ||
|
|
b8d5fa4aef | ||
|
|
0a9f61fbf1 | ||
|
|
c7f22f0324 | ||
|
|
d234f7a498 | ||
|
|
2fd9e63f1a | ||
|
|
874ebed14d | ||
|
|
5b904a103a | ||
|
|
0a8f9777a7 | ||
|
|
78d3a713de | ||
|
|
74229d4a41 | ||
|
|
29a4c5ebc2 | ||
|
|
903df79b2d | ||
|
|
d47ff8ae73 | ||
|
|
738442b82a | ||
|
|
68073c6276 | ||
|
|
920acb75c3 | ||
|
|
3dbc6a40ae | ||
|
|
af54c82138 | ||
|
|
232ed540db | ||
|
|
c542aef600 | ||
|
|
abffa1194a | ||
|
|
3b3c141ff9 | ||
|
|
6969b3be3b | ||
|
|
311b02f0b5 | ||
|
|
36c87d9f27 | ||
|
|
4e3fc0c1dc | ||
|
|
187708e542 | ||
|
|
3b0cd44158 | ||
|
|
741499dea7 | ||
|
|
a53382e460 | ||
|
|
e99b9ca9c0 | ||
|
|
8e72be3117 | ||
|
|
7a9966af9d | ||
|
|
d59caffe2c | ||
|
|
582fb3901a | ||
|
|
c709741871 | ||
|
|
817454cfe6 | ||
|
|
e986c7984b | ||
|
|
dfd7efaf13 | ||
|
|
802b5ef7dc | ||
|
|
e580e087ff | ||
|
|
b79732b967 | ||
|
|
faa7e3cc2e | ||
|
|
5efc9bd194 | ||
|
|
4bae75387a | ||
|
|
f57776836f | ||
|
|
569fa3f57f | ||
|
|
be3b1cff0b | ||
|
|
ab479b4961 | ||
|
|
264da8c127 | ||
|
|
cfc7cac3c9 | ||
|
|
8b74be464f | ||
|
|
fc689a6cb3 | ||
|
|
b4d547905d | ||
|
|
4ee36a9474 | ||
|
|
c2b2f2a71e | ||
|
|
d1b4810542 | ||
|
|
bcccbbd894 | ||
|
|
4e465f25d0 | ||
|
|
7ac66972b7 | ||
|
|
3e9ae3ea64 | ||
|
|
0a91a793cf | ||
|
|
07d6d116ed | ||
|
|
b5483f2c68 | ||
|
|
b990e9145b | ||
|
|
3bdc62215e | ||
|
|
423c558e44 | ||
|
|
42238f88ea | ||
|
|
d0bbfdbfb8 | ||
|
|
e29c0661cc | ||
|
|
e57554ea65 | ||
|
|
09ee811f4b | ||
|
|
b067ab9202 | ||
|
|
6e40c7a9b8 | ||
|
|
01541bc350 | ||
|
|
4504c10f3b | ||
|
|
7b1000013e | ||
|
|
9e997cc787 | ||
|
|
d87048fd5a | ||
|
|
6926d046c0 | ||
|
|
b8d85c6939 | ||
|
|
5c4bc807f7 | ||
|
|
8eeca8c7db | ||
|
|
d7664a6ef1 | ||
|
|
5df106603d | ||
|
|
69f0223474 | ||
|
|
724845110c | ||
|
|
84039e2514 | ||
|
|
2d24baaad4 | ||
|
|
b7cc4dce70 | ||
|
|
0b7a9a8e9f | ||
|
|
8cda5102fc | ||
|
|
ee13e8c76b | ||
|
|
fcd7d658dc | ||
|
|
89e9f7b42b | ||
|
|
b6c875a923 | ||
|
|
a65d1bfb14 | ||
|
|
37d244ea81 | ||
|
|
a937b5c4ad | ||
|
|
fb0ce375f0 | ||
|
|
0739d237ad | ||
|
|
8145212103 | ||
|
|
2df39e64ab | ||
|
|
8fddf146bf | ||
|
|
3f5593d613 | ||
|
|
dcd1252368 | ||
|
|
edb75bc29e | ||
|
|
660cec69b1 | ||
|
|
a2611edcf3 | ||
|
|
e19c532ebf | ||
|
|
e426617c9c | ||
|
|
192cdf3d04 | ||
|
|
64a5e7be98 | ||
|
|
66bd15555c | ||
|
|
4c7156c1e6 | ||
|
|
33e5de31d8 | ||
|
|
3eaf56894e | ||
|
|
242ce20cbf | ||
|
|
f52e7199df | ||
|
|
e12c831b15 | ||
|
|
cd399caf6f | ||
|
|
f6144dfe03 | ||
|
|
ac2fcfcb62 | ||
|
|
4ac2d45a06 | ||
|
|
dce6ed56d7 | ||
|
|
e3d430b83e | ||
|
|
511bab5bbf | ||
|
|
156bf7e6aa | ||
|
|
938b720a9e | ||
|
|
44975d40ef | ||
|
|
ea8f8b6dc3 | ||
|
|
0bfeed061b | ||
|
|
d167cd6715 | ||
|
|
8b20b568b0 | ||
|
|
8ae46a49ea | ||
|
|
802c624ab3 | ||
|
|
3bc4bad8fb | ||
|
|
fe396e306e | ||
|
|
509939b1b6 | ||
|
|
ff99e56d3a | ||
|
|
da9ba3a2a1 | ||
|
|
ea4ea27a59 | ||
|
|
81479d8784 | ||
|
|
6dc96aa745 | ||
|
|
16824865c2 | ||
|
|
3e70553c48 | ||
|
|
9209942949 | ||
|
|
769ae185d6 | ||
|
|
78ea6af2cd | ||
|
|
1f87e9e24e | ||
|
|
71f2864b3a | ||
|
|
89572af6a8 | ||
|
|
cd0d5a5fc5 | ||
|
|
ddad901c0d | ||
|
|
60c6cd554d | ||
|
|
b7358e47d5 | ||
|
|
77bcd269be | ||
|
|
a1702d463c | ||
|
|
bb0b8adacc | ||
|
|
913e403f2a | ||
|
|
fcc994e132 | ||
|
|
4192d1a1c7 | ||
|
|
ce5da5d579 | ||
|
|
1d7966df15 | ||
|
|
8ea96f365f | ||
|
|
20af698b02 | ||
|
|
389ffab733 | ||
|
|
ec58a817ef | ||
|
|
7ebdae5dc9 | ||
|
|
7c760f7f79 | ||
|
|
1fd66cc890 | ||
|
|
9d67686a5b | ||
|
|
6801d676c0 | ||
|
|
81fd45f723 | ||
|
|
55534e277e | ||
|
|
2e47016b01 | ||
|
|
819b0143e3 | ||
|
|
a22fcf77fd | ||
|
|
d8884b845e | ||
|
|
a71e558d85 | ||
|
|
55384db8a6 | ||
|
|
6e46090a30 | ||
|
|
500bac0b13 | ||
|
|
cfa76973ff | ||
|
|
76e3cf3840 | ||
|
|
903301c6aa | ||
|
|
d8b1ef42ae | ||
|
|
06492c5981 | ||
|
|
02ab7f3745 | ||
|
|
98f93d0aa1 | ||
|
|
615901dbfe | ||
|
|
c855184765 | ||
|
|
d1858eb124 | ||
|
|
0e446c54bd | ||
|
|
44d7b8b91d | ||
|
|
f3cc99fb93 | ||
|
|
e6c4db8160 | ||
|
|
70656b133c | ||
|
|
a71ad40ac3 | ||
|
|
5e61f245ab | ||
|
|
80ff20f6fe | ||
|
|
491d0bcc3c | ||
|
|
dcfa127fd4 | ||
|
|
de5fa89b50 | ||
|
|
7d536d5240 | ||
|
|
bf4f9aaa63 | ||
|
|
d080e3bf3a | ||
|
|
a40b7cde10 | ||
|
|
9f784b1887 | ||
|
|
b886f4c6c9 | ||
|
|
dad8df3ed1 | ||
|
|
eef4d3c86a | ||
|
|
674989261d | ||
|
|
1b0277da61 | ||
|
|
c4b9f62164 | ||
|
|
5f2a1231dd | ||
|
|
22354b4142 | ||
|
|
85aa9b8b6f | ||
|
|
9f8b68a278 | ||
|
|
b7e65a81f1 | ||
|
|
875e9b35d7 | ||
|
|
afbafc2aef | ||
|
|
d09edcbcac | ||
|
|
b71d927429 | ||
|
|
36c6ed4b6f | ||
|
|
dd44cacbd6 | ||
|
|
0dfc829a6b | ||
|
|
f430ef5ddc | ||
|
|
7c05ea0a0e | ||
|
|
404cb27677 | ||
|
|
29cafa9c94 | ||
|
|
1008cc8e5f | ||
|
|
ac3349faaf | ||
|
|
e5c599f8c6 | ||
|
|
b095df7f5c | ||
|
|
3dc88da022 | ||
|
|
6432f45a1c | ||
|
|
2e3b4f3fd7 | ||
|
|
02bc359b64 | ||
|
|
b0dc6709b9 | ||
|
|
db01016dd6 | ||
|
|
e873d60981 | ||
|
|
eb670742f5 | ||
|
|
64c93f7804 | ||
|
|
5dc93451d2 | ||
|
|
c2675d74c5 | ||
|
|
f2ce7c5fb2 | ||
|
|
9d1dbd2ad8 | ||
|
|
e7a56323ab | ||
|
|
6875e62af3 | ||
|
|
38af459dd9 | ||
|
|
e45cb5b1e2 | ||
|
|
0d76e2a8a1 | ||
|
|
15a9890919 | ||
|
|
297ecb706d | ||
|
|
a4626dea8d | ||
|
|
7e11b09b3b | ||
|
|
a2d66b6a91 | ||
|
|
f3bf543e2a | ||
|
|
24cdebe464 | ||
|
|
78f97108f9 | ||
|
|
689218ebf5 | ||
|
|
33a68f575f | ||
|
|
c70e675900 | ||
|
|
084fa4c3fa | ||
|
|
61297f703a | ||
|
|
04bcc910e9 | ||
|
|
b50e429354 | ||
|
|
4c704ecfdd | ||
|
|
70a41f9bc2 | ||
|
|
b75d318776 | ||
|
|
27ee8c8e14 | ||
|
|
33a430056f | ||
|
|
a66cb8cf21 | ||
|
|
e0d904e90b | ||
|
|
678ef7977f | ||
|
|
8b9c82e140 | ||
|
|
3369b0163f | ||
|
|
d7a46a16e9 | ||
|
|
6a881302ad | ||
|
|
61f3662c95 | ||
|
|
57973cd379 | ||
|
|
571ff1a3a9 | ||
|
|
9c8b1fd8b6 | ||
|
|
f6b1e028ab | ||
|
|
c360ca9928 | ||
|
|
4556074e18 | ||
|
|
ab06a307dc | ||
|
|
b9e1d1b4de | ||
|
|
9221548114 | ||
|
|
0ddec7e421 | ||
|
|
a8f019b1f0 | ||
|
|
f2ebedae92 | ||
|
|
5de01eb0aa | ||
|
|
f500c14766 | ||
|
|
9e8d2f3948 | ||
|
|
4223e6ac7a | ||
|
|
11a24a34e3 | ||
|
|
41d38c0f64 | ||
|
|
c8d20f96ba | ||
|
|
30c2dac787 | ||
|
|
25d0473aad | ||
|
|
e837debc25 | ||
|
|
b6cf889af4 | ||
|
|
c74ea994a5 | ||
|
|
72f6e216dc | ||
|
|
e3f5744db4 | ||
|
|
393acf6362 | ||
|
|
98dfc9296a | ||
|
|
5fbf8f6cf0 | ||
|
|
da478d1f66 | ||
|
|
a6018ae57f | ||
|
|
20beed3029 | ||
|
|
053b5f85f1 | ||
|
|
b6e7c743db | ||
|
|
d2300516c3 | ||
|
|
019e9d4c92 | ||
|
|
dd72f3f03d | ||
|
|
3d35c08585 | ||
|
|
f4d1f5ed54 | ||
|
|
5bd13dec19 | ||
|
|
e6742d05f1 | ||
|
|
5373ad6ffb | ||
|
|
7acab50453 | ||
|
|
f07673a12e | ||
|
|
d41fb3c480 | ||
|
|
9c7b9e08b3 | ||
|
|
8696350903 | ||
|
|
e45ef5a6c0 | ||
|
|
491d594976 | ||
|
|
26c9620a63 | ||
|
|
e738cf80dc | ||
|
|
da4c97250a | ||
|
|
b3ba8f4065 | ||
|
|
2d3e21ab0e | ||
|
|
8047ece180 | ||
|
|
ef62b767f9 | ||
|
|
e5fe522194 | ||
|
|
57a98aa5e3 | ||
|
|
b5712c1bea | ||
|
|
0d5fb2a0c2 | ||
|
|
be3dc1acb5 | ||
|
|
3bc84acebc | ||
|
|
f20c2759f9 | ||
|
|
284df27b5a | ||
|
|
8db3a33872 | ||
|
|
413500ab69 | ||
|
|
2ebaafa6c9 | ||
|
|
c3b13346e0 | ||
|
|
d4d99e8c29 | ||
|
|
cfd5d8eb29 | ||
|
|
4ca5ea5b7e | ||
|
|
2dc788cb9f | ||
|
|
5b8f830e34 | ||
|
|
0e1d19cf68 | ||
|
|
a905a7869f | ||
|
|
65a38a4015 | ||
|
|
3f1b5efcca | ||
|
|
3d415bc5d6 | ||
|
|
f37db957f8 | ||
|
|
5ed091c12d | ||
|
|
0823b5973a | ||
|
|
4264c0b674 | ||
|
|
96361fc476 | ||
|
|
11d53c84a7 | ||
|
|
94ac8ae08b | ||
|
|
c6e8961979 | ||
|
|
d542f43b2a | ||
|
|
f28cf2b0d3 | ||
|
|
e7ab581d79 | ||
|
|
5b6d36fd9f | ||
|
|
764e7c4f4b | ||
|
|
8b6f726546 | ||
|
|
86695af483 | ||
|
|
8f7577d70a | ||
|
|
ac68c34f76 | ||
|
|
66226f6520 | ||
|
|
aefc6b5bb5 | ||
|
|
965ba1e097 | ||
|
|
dfbb93dd0c | ||
|
|
e8a4c23ce5 | ||
|
|
790fa3156c | ||
|
|
3ec4c9b3b9 | ||
|
|
3d99d31026 | ||
|
|
428b5ae546 | ||
|
|
285cbf6fdd | ||
|
|
0bc852ce53 | ||
|
|
7e1088167a | ||
|
|
cdf312c83d | ||
|
|
7c7cd2a605 | ||
|
|
3903f4c88a | ||
|
|
333935ff3f | ||
|
|
47ba997f06 | ||
|
|
5025f24033 | ||
|
|
f4e3af15a1 | ||
|
|
485bb3565b | ||
|
|
70dfd6dd1a | ||
|
|
ed412c1385 | ||
|
|
22461383c6 | ||
|
|
e8fdb861ef | ||
|
|
a6573f94ab | ||
|
|
6204768653 | ||
|
|
e89389ba0e | ||
|
|
5129a07707 | ||
|
|
6af17369ca | ||
|
|
93b7196763 | ||
|
|
120a957d07 | ||
|
|
6bb0c2a5c2 | ||
|
|
91ff88451b | ||
|
|
139192140c | ||
|
|
2c1923859a | ||
|
|
99f2a50394 | ||
|
|
f5afb7d11a | ||
|
|
fc73386f45 | ||
|
|
eea9f638e2 | ||
|
|
7d230af51d | ||
|
|
81dee31949 | ||
|
|
5b9608e08c | ||
|
|
2d7816e358 | ||
|
|
f69e004d01 | ||
|
|
f6ff87788a | ||
|
|
6836273d14 | ||
|
|
fb32effd15 | ||
|
|
e710440f58 | ||
|
|
be2cb00066 | ||
|
|
df1bd07dee | ||
|
|
0b88e609bc | ||
|
|
41c718edca | ||
|
|
6f224e4d9f | ||
|
|
4227a0b4f3 | ||
|
|
e99b05d6c4 | ||
|
|
fefd48eb9e | ||
|
|
8117bfe5d1 | ||
|
|
0472794609 | ||
|
|
5ddac7e026 | ||
|
|
c1317175b4 | ||
|
|
669532d529 | ||
|
|
17322e2be6 | ||
|
|
4507083503 | ||
|
|
680d0f043a | ||
|
|
b737833d3c | ||
|
|
6784d84c9d | ||
|
|
43a2b0b1e5 | ||
|
|
49c25b1daf | ||
|
|
cb1972b3ba | ||
|
|
86a8714fea | ||
|
|
392f3882d0 | ||
|
|
27557b62b6 | ||
|
|
efc93e6851 | ||
|
|
c7c0e81c1c | ||
|
|
83ec6062af | ||
|
|
266014faa7 | ||
|
|
f9785702a6 | ||
|
|
46a13ad97a | ||
|
|
af2bc2ed0e | ||
|
|
03bbbcd85e | ||
|
|
2b2693ae90 | ||
|
|
655275378d | ||
|
|
61b5360e17 | ||
|
|
6ffc45b0ed | ||
|
|
ec1137dfbd | ||
|
|
f99fc3268e | ||
|
|
490c20f93f | ||
|
|
efdb390caa | ||
|
|
6391ad970c | ||
|
|
b0a9396b00 | ||
|
|
b91ddbc3e2 | ||
|
|
9df1af352f | ||
|
|
d022039529 | ||
|
|
151c23415e | ||
|
|
eb8eb621b1 | ||
|
|
01498d3acf | ||
|
|
4298e79887 | ||
|
|
b8a4b8d1cd | ||
|
|
b51a88a95c | ||
|
|
5c150ddc2f | ||
|
|
37beabd11c | ||
|
|
85fd40fafd | ||
|
|
7ae5d8d406 | ||
|
|
02b200ef08 | ||
|
|
7a7980fafa | ||
|
|
8770689525 | ||
|
|
3c251ec41e | ||
|
|
b771d9beec | ||
|
|
ebae142aa4 | ||
|
|
18c776e155 | ||
|
|
f3389f13ef | ||
|
|
2105c7f6ed | ||
|
|
07225d2e26 | ||
|
|
45da133999 | ||
|
|
274ec02581 | ||
|
|
d04fa0ef76 | ||
|
|
a905db9d65 | ||
|
|
bb527678a3 | ||
|
|
57c886551f | ||
|
|
be5f55c47e | ||
|
|
335c672498 | ||
|
|
77822ed166 | ||
|
|
1064fdee8c | ||
|
|
68e20501d6 | ||
|
|
b18c361b0f | ||
|
|
4f318c904a | ||
|
|
5490505a2b | ||
|
|
17b43b0fdd | ||
|
|
33050fea39 | ||
|
|
31991ab851 | ||
|
|
484d5fd6cf | ||
|
|
5ec1cef6b5 | ||
|
|
e714d4d724 | ||
|
|
f48823181b | ||
|
|
fc720321b3 | ||
|
|
689409fd97 | ||
|
|
b4aba10154 | ||
|
|
893c87b27b | ||
|
|
914a65e098 | ||
|
|
69cf5fb0e1 | ||
|
|
c2b0c41c0a | ||
|
|
ea5958009c | ||
|
|
a8cb7bbe2f | ||
|
|
f687cbd4c6 | ||
|
|
8c587636dc | ||
|
|
e3b2830f99 | ||
|
|
d2160c29d1 | ||
|
|
fa7ffa4e88 | ||
|
|
4ca86dae2f | ||
|
|
ddc3de602e | ||
|
|
81afb3e303 | ||
|
|
294ccba0a2 | ||
|
|
92c71ae385 | ||
|
|
5b13136471 | ||
|
|
c9f60cce40 | ||
|
|
e41942e814 | ||
|
|
d0657fde30 | ||
|
|
f18fae4c68 | ||
|
|
cbb1cf0c93 | ||
|
|
fdef96e233 | ||
|
|
eac3d6d3c0 | ||
|
|
ad29875ee6 | ||
|
|
9e3c4b9f32 | ||
|
|
5291e5cb76 | ||
|
|
3607f8316f | ||
|
|
321ca1091d | ||
|
|
01c5554f0e | ||
|
|
f8f562dace | ||
|
|
bbeacd72c4 | ||
|
|
cf331ef3f9 | ||
|
|
34b28002d9 | ||
|
|
64ea6cefaf | ||
|
|
19ecb64e0d | ||
|
|
bd6afc2317 | ||
|
|
b4c25f5714 | ||
|
|
f58a6506a1 | ||
|
|
37dfa2629b | ||
|
|
a00565b8ba | ||
|
|
6c8bf3af4c | ||
|
|
0672dc8d8f | ||
|
|
bac54b3d26 | ||
|
|
5e654a4bf2 | ||
|
|
c29629a5ef | ||
|
|
6acc7a5622 | ||
|
|
257cacab18 | ||
|
|
28572702bf | ||
|
|
e6640ef2d4 | ||
|
|
7567c4cb00 | ||
|
|
82e341bc9e | ||
|
|
1b895912a2 | ||
|
|
cfab203f91 | ||
|
|
a97d2e6958 | ||
|
|
1b52145bad | ||
|
|
0d6c4ff622 | ||
|
|
1ea1a90edb | ||
|
|
40893821f2 | ||
|
|
69bbe4ce7d | ||
|
|
e17f0c283c | ||
|
|
8bcbdc706c | ||
|
|
379d478055 | ||
|
|
57b5c9107e | ||
|
|
508cc225a7 | ||
|
|
f648c000bd | ||
|
|
f6565c329b | ||
|
|
411582c710 | ||
|
|
d843d61cc1 | ||
|
|
4471d22eb6 | ||
|
|
13c443f224 | ||
|
|
26997bc153 | ||
|
|
229315b014 | ||
|
|
bb74af1e11 | ||
|
|
3a6b4835f8 | ||
|
|
8e14647759 | ||
|
|
a2c5757356 | ||
|
|
d76f0cc753 | ||
|
|
70214ed3ed | ||
|
|
a193a03d81 | ||
|
|
7becbd7d42 | ||
|
|
18eb319adc | ||
|
|
5e3a40309e | ||
|
|
57b20e7b9e | ||
|
|
77c7836c26 | ||
|
|
36e7670143 | ||
|
|
2c518747b9 | ||
|
|
d71df6448b | ||
|
|
1e1be0b954 | ||
|
|
8c40a6b0c7 | ||
|
|
db075ff3ba | ||
|
|
2ccdd0667a | ||
|
|
653e433c08 | ||
|
|
18046b9aa3 | ||
|
|
67fa6a935f | ||
|
|
67db8a9103 | ||
|
|
71fb91f7e4 | ||
|
|
2cc9176137 | ||
|
|
2c98c8af01 | ||
|
|
a205c5e26c | ||
|
|
2f9c9b5f80 | ||
|
|
81d3266766 | ||
|
|
a9524ffa9d | ||
|
|
bfecd78159 | ||
|
|
4e375996d3 | ||
|
|
b7fddb4c0e | ||
|
|
39adcc0a6b | ||
|
|
17d7d03adf | ||
|
|
6b75a592a4 | ||
|
|
3a6b7c9c69 | ||
|
|
8d2cb1555e | ||
|
|
cb063db64f | ||
|
|
5b3b7e6e7c | ||
|
|
33619aa2e9 | ||
|
|
e888c99fa6 | ||
|
|
4ea64fee9f | ||
|
|
56b91ea720 | ||
|
|
f6c9b06562 | ||
|
|
4a06cc0f75 | ||
|
|
467c82c771 | ||
|
|
34f928abb7 | ||
|
|
6ddef7c234 | ||
|
|
c2ae2ccc32 | ||
|
|
5ea9886bcf | ||
|
|
51fefd1c35 | ||
|
|
5b4c10fc7b | ||
|
|
1d34a5249d | ||
|
|
010d3e6442 | ||
|
|
b7940c29cc | ||
|
|
899a1e7cba | ||
|
|
fa2063fb44 | ||
|
|
7312b93d32 | ||
|
|
aa2e2f4843 | ||
|
|
2857e3c748 | ||
|
|
6812f1b5d7 | ||
|
|
99e85cc27b | ||
|
|
6cbdc66650 | ||
|
|
0c4594ac72 | ||
|
|
399cb2f0de | ||
|
|
eb25f6c912 | ||
|
|
098a7a043e | ||
|
|
00b67f5572 | ||
|
|
301912a5b9 | ||
|
|
08a331847b | ||
|
|
db225dec41 | ||
|
|
dc2a682a82 | ||
|
|
2461930601 | ||
|
|
887ae0c6eb | ||
|
|
2a8d00634d | ||
|
|
3f5c46663e | ||
|
|
216e3f10bb | ||
|
|
c70ffc2a35 | ||
|
|
101306edcf | ||
|
|
3b20e0ecef | ||
|
|
c833294817 | ||
|
|
8598f05b47 | ||
|
|
1f7a7fd931 | ||
|
|
dd51787e07 | ||
|
|
43fc6d593f | ||
|
|
202dfea502 | ||
|
|
7115ceb775 | ||
|
|
2e9f5b5989 | ||
|
|
5fba31f6fb | ||
|
|
efe01faa8e | ||
|
|
c0baa6bf5e | ||
|
|
82b40f097b | ||
|
|
5892ed4373 | ||
|
|
910d499c54 | ||
|
|
172865ff13 | ||
|
|
eb046958da | ||
|
|
8fc133ac2c | ||
|
|
e2753e19e8 | ||
|
|
208964f038 | ||
|
|
1663cb4196 | ||
|
|
d744aafb05 | ||
|
|
339f7a2f6b | ||
|
|
c23fb235c8 | ||
|
|
d86cb8ec9e | ||
|
|
5bc85d6788 | ||
|
|
6de15ffcd6 | ||
|
|
cc9638f2f7 | ||
|
|
37effc7700 | ||
|
|
2970710b5d | ||
|
|
bc57d3e35c | ||
|
|
8a15a738f3 | ||
|
|
61201e06ef | ||
|
|
6dec78ed11 | ||
|
|
2e24708af2 | ||
|
|
c49faabb6d | ||
|
|
ac5b9bc4ee | ||
|
|
72fe6cc8f1 | ||
|
|
b5102a551b | ||
|
|
228b9fb517 | ||
|
|
929d5b80c6 | ||
|
|
4f1b408a72 | ||
|
|
eb0bf2c29d | ||
|
|
5b2884cb02 | ||
|
|
d936499670 | ||
|
|
d0a3570300 | ||
|
|
7f415ce587 | ||
|
|
6dfd7a17e1 | ||
|
|
c3495ec6ea | ||
|
|
19b13aab98 | ||
|
|
edfb00c25e | ||
|
|
97a5e74449 | ||
|
|
78f843f741 | ||
|
|
69e4c770f3 | ||
|
|
768b6728bd | ||
|
|
07aea476ba | ||
|
|
6de12b4a0d | ||
|
|
a7d345958d | ||
|
|
707b561f97 | ||
|
|
31979e2d98 | ||
|
|
1c88a0522f | ||
|
|
9f4baeea53 | ||
|
|
a3900a751e | ||
|
|
12413ab31f | ||
|
|
787cd580ee | ||
|
|
4071573241 | ||
|
|
a0f169603d | ||
|
|
90a480a100 | ||
|
|
0ad8d9d292 | ||
|
|
d93f9a778b | ||
|
|
f398d8a424 | ||
|
|
0a05b281f2 | ||
|
|
d4e0d27c1c | ||
|
|
a7fde3f835 | ||
|
|
42cf6d6c56 | ||
|
|
87f8b6ff0f | ||
|
|
c28da4892a | ||
|
|
638452ecf7 | ||
|
|
8dfe0e4beb | ||
|
|
4018f35ef2 | ||
|
|
30f55a5d59 | ||
|
|
29f4a5ba0e | ||
|
|
4fd6bba257 | ||
|
|
5ffede35d9 | ||
|
|
10e1ef00e2 | ||
|
|
911524da45 | ||
|
|
d1fea10c0f | ||
|
|
a61b823da8 | ||
|
|
a0f143fc93 | ||
|
|
8a08d62ff7 | ||
|
|
181265ba71 | ||
|
|
23be3ccc2f | ||
|
|
acf397b4df | ||
|
|
612a86ebad | ||
|
|
b00e1b1b62 | ||
|
|
fd93f817ba | ||
|
|
ef988fe184 | ||
|
|
cf040f8882 | ||
|
|
a932581775 | ||
|
|
5cac6c7eb6 | ||
|
|
4e98ba612b | ||
|
|
cbc0d9facc | ||
|
|
03485db0a3 | ||
|
|
1b4e08b89e | ||
|
|
6bcf2c1521 | ||
|
|
47f2373dc1 | ||
|
|
e8f6b7503a | ||
|
|
5770e87cb2 | ||
|
|
253f6a913d | ||
|
|
5002624e8a | ||
|
|
7df571ffc6 | ||
|
|
b6d23d21db | ||
|
|
0c984360d1 | ||
|
|
b6b3fb0023 | ||
|
|
5be157b3a2 | ||
|
|
54356f41a9 | ||
|
|
a35642fa3e | ||
|
|
c3ecb9d099 | ||
|
|
0c24b46e9f | ||
|
|
9874fc4e6a | ||
|
|
5f3cb54972 | ||
|
|
785d784a93 | ||
|
|
046aaa2d21 | ||
|
|
8381e008ea | ||
|
|
396411c090 | ||
|
|
e19b36d871 | ||
|
|
c887cb02af | ||
|
|
0ffaf5b871 | ||
|
|
397672edfe | ||
|
|
c72e14e8f4 | ||
|
|
2847696338 | ||
|
|
9d77945d36 | ||
|
|
5767dc710e | ||
|
|
4ebf34857a | ||
|
|
3f89d1704d | ||
|
|
7708bf0f8a | ||
|
|
6c2c01e0d1 | ||
|
|
7861f924ea | ||
|
|
62f2379e4c | ||
|
|
e5f161bda4 | ||
|
|
973a677a2d | ||
|
|
42d09a8f42 | ||
|
|
ca915b1884 | ||
|
|
cdaafcec0d | ||
|
|
b2c3237b75 | ||
|
|
92d3fc4883 | ||
|
|
371735e95b | ||
|
|
0e4baf1c4e | ||
|
|
675d90c708 | ||
|
|
3fe6768caf | ||
|
|
40bd4feedc | ||
|
|
ff233fe306 | ||
|
|
f1e4685806 | ||
|
|
2f08bf2313 | ||
|
|
803924b223 | ||
|
|
b2ac758f61 | ||
|
|
3c78ba570b | ||
|
|
e8cb4da71f | ||
|
|
a3ce700ded | ||
|
|
1153aaae0d | ||
|
|
57cbec1095 | ||
|
|
0b8b321f9e | ||
|
|
761b9d1e49 | ||
|
|
a9d3935a84 | ||
|
|
32700294e2 | ||
|
|
bac8df4abd | ||
|
|
ffbad3617c | ||
|
|
4a800ae149 | ||
|
|
42f90c6292 | ||
|
|
b7c1fbf9f0 | ||
|
|
0db1813049 | ||
|
|
b8af865f18 | ||
|
|
644a4e5b31 | ||
|
|
3cbfd75d0f | ||
|
|
b9e3cae572 | ||
|
|
d7fae33967 | ||
|
|
732e1530e3 | ||
|
|
b188a916ff | ||
|
|
3f93ec470a | ||
|
|
9a01eac57d | ||
|
|
3d516b841a | ||
|
|
f6c2c22d38 | ||
|
|
f1aa843415 | ||
|
|
9ce9c2530a | ||
|
|
32c4996c04 | ||
|
|
c8b56ee5e6 | ||
|
|
032ff64041 | ||
|
|
ce227aa69e | ||
|
|
711846c1f4 | ||
|
|
679582e702 | ||
|
|
111626f4cf | ||
|
|
e4b85091fd | ||
|
|
40b2499273 | ||
|
|
babaa7d2bd | ||
|
|
d1e9015639 | ||
|
|
05983fb8ee | ||
|
|
e7332cd814 | ||
|
|
a4f84803c4 | ||
|
|
e6864d17b6 | ||
|
|
2ceea46061 | ||
|
|
00452e47fa | ||
|
|
70c781c803 | ||
|
|
5f79cd1600 | ||
|
|
dd68eb5c01 | ||
|
|
970344719a | ||
|
|
1fc7f68118 | ||
|
|
5eb0f4328d | ||
|
|
dc2ef31c29 | ||
|
|
645b0f6abf | ||
|
|
3ed8e219a5 | ||
|
|
3d62ebdbf6 | ||
|
|
6ac6accd33 | ||
|
|
aaee6e242c | ||
|
|
7cfef177c1 | ||
|
|
b6f96b69aa | ||
|
|
50c5d23f7d | ||
|
|
b6a3d76225 | ||
|
|
4df64027fc | ||
|
|
277b033e78 | ||
|
|
aae566e196 | ||
|
|
e3ea9b5b7c | ||
|
|
450e9857cc | ||
|
|
605b50fcd9 | ||
|
|
c1e0873940 | ||
|
|
20715fa014 | ||
|
|
92b3c53c92 | ||
|
|
3ce3594e38 | ||
|
|
d166f5ef76 | ||
|
|
b2819e43a7 | ||
|
|
0e61c106f5 | ||
|
|
b204db1e6b | ||
|
|
057086e389 | ||
|
|
d731ad769d | ||
|
|
4ca7b378c5 | ||
|
|
a7066c527a | ||
|
|
996eb2edb3 | ||
|
|
8fb1b50a9e | ||
|
|
ffab139646 | ||
|
|
a204ef50bb | ||
|
|
5a3adbfdb2 | ||
|
|
52b6899a6b | ||
|
|
bf327b52bd | ||
|
|
2b93f6e148 | ||
|
|
029a9b2fa1 | ||
|
|
ad874536a4 | ||
|
|
6e9c14e550 |
@@ -16,8 +16,8 @@ AllowShortFunctionsOnASingleLine: All
|
||||
AllowShortIfStatementsOnASingleLine: Never
|
||||
AllowShortLoopsOnASingleLine: false
|
||||
|
||||
AlwaysBreakAfterDefinitionReturnType: All
|
||||
AlwaysBreakAfterReturnType: AllDefinitions
|
||||
AlwaysBreakAfterDefinitionReturnType: None
|
||||
AlwaysBreakAfterReturnType: None
|
||||
AlwaysBreakBeforeMultilineStrings: false
|
||||
AlwaysBreakTemplateDeclarations: MultiLine
|
||||
|
||||
@@ -35,7 +35,7 @@ BraceWrapping:
|
||||
AfterUnion: true
|
||||
AfterExternBlock: false
|
||||
BeforeElse: false
|
||||
BeforeWhile: true
|
||||
BeforeWhile: false
|
||||
IndentBraces: false
|
||||
SplitEmptyFunction: true
|
||||
SplitEmptyRecord: true
|
||||
@@ -62,7 +62,8 @@ IndentGotoLabels: true
|
||||
IndentPPDirectives: None
|
||||
IndentExternBlock: NoIndent
|
||||
|
||||
SpaceAfterCStyleCast: true
|
||||
PointerAlignment: Right
|
||||
SpaceAfterCStyleCast: false
|
||||
SpacesInCStyleCastParentheses: false
|
||||
SpacesInConditionalStatement: false
|
||||
SpacesInContainerLiterals: true
|
||||
|
||||
@@ -7,6 +7,8 @@ root = true
|
||||
[*.{c,cg,cpp,gradle,h,java,m,metal,pl,py,S,sh,txt}]
|
||||
indent_size = 4
|
||||
indent_style = space
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.{html,js,json,m4,yml,yaml,vcxproj,vcxproj.filters}]
|
||||
indent_size = 2
|
||||
@@ -63,7 +65,7 @@ indent_style = space
|
||||
[src/video/yuv2rgb/*.{c,h}]
|
||||
indent_style = tab
|
||||
|
||||
[src/wayland-protocols/*.xml]
|
||||
[wayland-protocols/*.xml]
|
||||
indent_size = 2
|
||||
indent_style = space
|
||||
|
||||
|
||||
16
.github/cmake/CMakeLists.txt
vendored
Normal file
16
.github/cmake/CMakeLists.txt
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
project(ci_utils C CXX)
|
||||
|
||||
set(txt "CC=${CMAKE_C_COMPILER}
|
||||
CXX=${CMAKE_CXX_COMPILER}
|
||||
CFLAGS=${CMAKE_C_FLAGS}
|
||||
CXXFLAGS=${CMAKE_CXX_FLAGS}
|
||||
LDFLAGS=${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_C_STANDARD_LIBRARIES}
|
||||
")
|
||||
|
||||
message("${txt}")
|
||||
|
||||
set(VAR_PATH "/tmp/env.txt" CACHE PATH "Where to write environment file")
|
||||
message(STATUS "Writing CC/CXX/CFLAGS/CXXFLAGS/LDFLAGS environment to ${VAR_PATH}")
|
||||
|
||||
file(WRITE "${VAR_PATH}" "${txt}")
|
||||
4
.github/workflows/android.yml
vendored
4
.github/workflows/android.yml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
- { name: CMake, cmake: 1, android_abi: "arm64-v8a", android_platform: 23, arch: "aarch64" }
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- uses: nttld/setup-ndk@v1
|
||||
id: setup_ndk
|
||||
with:
|
||||
@@ -34,9 +34,11 @@ jobs:
|
||||
run: |
|
||||
cmake -B build \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${{ steps.setup_ndk.outputs.ndk-path }}/build/cmake/android.toolchain.cmake \
|
||||
-DSDL_WERROR=ON \
|
||||
-DANDROID_PLATFORM=${{ matrix.platform.android_platform }} \
|
||||
-DANDROID_ABI=${{ matrix.platform.android_abi }} \
|
||||
-DSDL_STATIC_PIC=ON \
|
||||
-DSDL_VENDOR_INFO="Github Workflow" \
|
||||
-DCMAKE_INSTALL_PREFIX=prefix \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-GNinja
|
||||
|
||||
16
.github/workflows/emscripten.yml
vendored
16
.github/workflows/emscripten.yml
vendored
@@ -6,24 +6,31 @@ jobs:
|
||||
emscripten:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- uses: mymindstorm/setup-emsdk@v10
|
||||
with:
|
||||
version: 2.0.27
|
||||
version: 2.0.32
|
||||
- name: Install ninja
|
||||
run: |
|
||||
sudo apt-get -y update
|
||||
sudo apt-get install -y ninja-build
|
||||
- name: Configure CMake
|
||||
run: |
|
||||
emcmake cmake -S . -B build \
|
||||
-DSDL_WERROR=ON \
|
||||
-DSDL_TESTS=ON \
|
||||
-DSDL_INSTALL_TESTS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=prefix
|
||||
-DCMAKE_INSTALL_PREFIX=prefix \
|
||||
-GNinja
|
||||
- name: Build
|
||||
run: cmake --build build/ --verbose
|
||||
- name: Run build-time tests
|
||||
run: |
|
||||
set -eu
|
||||
export SDL_TESTS_QUICK=1
|
||||
ctest -VV --test-dir build/
|
||||
# FIXME: enable Emscripten build time tests
|
||||
# ctest -VV --test-dir build/
|
||||
- name: Install
|
||||
run: |
|
||||
echo "SDL2_DIR=$(pwd)/prefix" >> $GITHUB_ENV
|
||||
@@ -32,6 +39,7 @@ jobs:
|
||||
run: |
|
||||
emcmake cmake -S cmake/test -B cmake_config_build \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DSDL_VENDOR_INFO="Github Workflow" \
|
||||
-DTEST_SHARED=FALSE \
|
||||
-DCMAKE_PREFIX_PATH=${{ env.SDL2_DIR }}
|
||||
cmake --build cmake_config_build --verbose
|
||||
|
||||
2
.github/workflows/ios.yml
vendored
2
.github/workflows/ios.yml
vendored
@@ -15,6 +15,6 @@ jobs:
|
||||
- { name: tvOS, target: Static Library-tvOS, sdk: appletvos }
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Build
|
||||
run: xcodebuild -project Xcode/SDL/SDL.xcodeproj -target '${{ matrix.platform.target }}' -configuration Release -sdk ${{ matrix.platform.sdk }} clean build
|
||||
69
.github/workflows/main.yml
vendored
69
.github/workflows/main.yml
vendored
@@ -15,17 +15,22 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
platform:
|
||||
- { name: Windows (mingw32), os: windows-latest, shell: 'msys2 {0}', msystem: mingw32, msys-env: mingw-w64-i686 }
|
||||
- { name: Windows (mingw64), os: windows-latest, shell: 'msys2 {0}', msystem: mingw64, msys-env: mingw-w64-x86_64 }
|
||||
- { name: Windows (clang32), os: windows-latest, shell: 'msys2 {0}', msystem: clang32, msys-env: mingw-w64-clang-i686 }
|
||||
- { name: Windows (clang64), os: windows-latest, shell: 'msys2 {0}', msystem: clang64, msys-env: mingw-w64-clang-x86_64 }
|
||||
- { name: Windows (ucrt64), os: windows-latest, shell: 'msys2 {0}', msystem: ucrt64, msys-env: mingw-w64-ucrt-x86_64 }
|
||||
- { name: Ubuntu 20.04 (CMake), os: ubuntu-20.04, shell: sh }
|
||||
- { name: Ubuntu 20.04 (autotools), os: ubuntu-20.04, shell: sh, autotools: true }
|
||||
- { name: Ubuntu 22.04 (CMake), os: ubuntu-22.04, shell: sh }
|
||||
- { name: Ubuntu 22.04 (autotools), os: ubuntu-22.04, shell: sh, autotools: true }
|
||||
- { name: MacOS (CMake), os: macos-latest, shell: sh, cmake: '-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"' }
|
||||
- { name: MacOS (autotools), os: macos-latest, shell: sh, autotools: true }
|
||||
- { name: Windows (mingw32), os: windows-latest, shell: 'msys2 {0}', msystem: mingw32, msys-env: mingw-w64-i686 }
|
||||
- { name: Windows (mingw64), os: windows-latest, shell: 'msys2 {0}', msystem: mingw64, msys-env: mingw-w64-x86_64 }
|
||||
- { name: Windows (clang32), os: windows-latest, shell: 'msys2 {0}', msystem: clang32, msys-env: mingw-w64-clang-i686 }
|
||||
- { name: Windows (clang64), os: windows-latest, shell: 'msys2 {0}', msystem: clang64, msys-env: mingw-w64-clang-x86_64 }
|
||||
- { name: Windows (ucrt64), os: windows-latest, shell: 'msys2 {0}', msystem: ucrt64, msys-env: mingw-w64-ucrt-x86_64 }
|
||||
- { name: Ubuntu 20.04 (CMake), os: ubuntu-20.04, shell: sh }
|
||||
- { name: Ubuntu 20.04 (autotools), os: ubuntu-20.04, shell: sh, autotools: true }
|
||||
- { name: Intel oneAPI (Ubuntu 20.04), os: ubuntu-20.04, shell: bash, artifact: 'SDL-ubuntu20.04-oneapi', intel: true,
|
||||
source_cmd: 'source /opt/intel/oneapi/setvars.sh; export CC=icx; export CXX=icx;'}
|
||||
- { name: Intel Compiler (Ubuntu 20.04), os: ubuntu-20.04, shell: bash, artifact: 'SDL-ubuntu20.04-icc', intel: true, cmake: '-DSDL_CLANG_TIDY=OFF',
|
||||
source_cmd: 'source /opt/intel/oneapi/setvars.sh; export CC=icc; export CXX=icpc; export CFLAGS=-diag-disable=10441; export CXXFLAGS=-diag-disable=10441; '}
|
||||
|
||||
- { name: Ubuntu 22.04 (CMake), os: ubuntu-22.04, shell: sh }
|
||||
- { name: Ubuntu 22.04 (autotools), os: ubuntu-22.04, shell: sh, autotools: true }
|
||||
- { name: MacOS (CMake), os: macos-latest, shell: sh, cmake: '-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"' }
|
||||
- { name: MacOS (autotools), os: macos-latest, shell: sh, autotools: true }
|
||||
|
||||
steps:
|
||||
- name: Set up MSYS2
|
||||
@@ -59,8 +64,22 @@ jobs:
|
||||
if: runner.os == 'macOS'
|
||||
run: |
|
||||
brew install \
|
||||
ninja
|
||||
- uses: actions/checkout@v2
|
||||
ninja \
|
||||
pkg-config
|
||||
|
||||
- name: Setup Intel oneAPI
|
||||
if: matrix.platform.intel
|
||||
run: |
|
||||
# Setup oneAPI repo
|
||||
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
|
||||
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
|
||||
sudo echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
|
||||
sudo apt-get update -y
|
||||
|
||||
# Install oneAPI
|
||||
sudo apt-get install -y intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
- name: Check that versioning is consistent
|
||||
# We only need to run this once: arbitrarily use the Linux/CMake build
|
||||
if: "runner.os == 'Linux' && ! matrix.platform.autotools"
|
||||
@@ -68,22 +87,31 @@ jobs:
|
||||
- name: Configure (CMake)
|
||||
if: "! matrix.platform.autotools"
|
||||
run: |
|
||||
${{ matrix.platform.source_cmd }}
|
||||
cmake -S . -B build -G Ninja \
|
||||
-DSDL_TESTS=ON \
|
||||
-DSDL_WERROR=ON \
|
||||
-DSDL_INSTALL_TESTS=ON \
|
||||
-DSDL_VENDOR_INFO="Github Workflow" \
|
||||
-DCMAKE_INSTALL_PREFIX=cmake_prefix \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
${{ matrix.platform.cmake }}
|
||||
- name: Build (CMake)
|
||||
if: "! matrix.platform.autotools"
|
||||
run: |
|
||||
${{ matrix.platform.source_cmd }}
|
||||
cmake --build build/ --config Release --verbose --parallel
|
||||
- name: Run build-time tests (CMake)
|
||||
if: "! matrix.platform.autotools"
|
||||
run: |
|
||||
set -eu
|
||||
${{ matrix.platform.source_cmd }}
|
||||
export SDL_TESTS_QUICK=1
|
||||
ctest -VV --test-dir build/
|
||||
if test "${{ runner.os }}" = "Linux"; then
|
||||
# This should show us the SDL_REVISION
|
||||
strings build/libSDL2-2.0.so.0 | grep SDL-
|
||||
fi
|
||||
- name: Install (CMake)
|
||||
if: "! matrix.platform.autotools"
|
||||
run: |
|
||||
@@ -95,12 +123,15 @@ jobs:
|
||||
if: matrix.platform.autotools
|
||||
run: |
|
||||
set -eu
|
||||
${{ matrix.platform.source_cmd }}
|
||||
rm -fr build-autotools
|
||||
mkdir build-autotools
|
||||
./autogen.sh
|
||||
(
|
||||
cd build-autotools
|
||||
${{ github.workspace }}/configure \
|
||||
--enable-vendor-info="Github Workflow" \
|
||||
--enable-werror \
|
||||
--prefix=${{ github.workspace }}/autotools_prefix \
|
||||
)
|
||||
if test "${{ runner.os }}" != "macOS" ; then
|
||||
@@ -110,6 +141,7 @@ jobs:
|
||||
mkdir -p build-autotools/test
|
||||
cd build-autotools/test
|
||||
${{ github.workspace }}/test/configure \
|
||||
--enable-werror \
|
||||
--x-includes=/usr/include \
|
||||
--x-libraries="/usr/lib/${multiarch}" \
|
||||
--prefix=${{ github.workspace }}/autotools_prefix \
|
||||
@@ -123,6 +155,7 @@ jobs:
|
||||
if: matrix.platform.autotools
|
||||
run: |
|
||||
set -eu
|
||||
${{ matrix.platform.source_cmd }}
|
||||
parallel="$(getconf _NPROCESSORS_ONLN)"
|
||||
make -j"${parallel}" -C build-autotools V=1
|
||||
if test "${{ runner.os }}" != "macOS" ; then
|
||||
@@ -132,14 +165,20 @@ jobs:
|
||||
if: ${{ matrix.platform.autotools && (runner.os != 'macOS') }}
|
||||
run: |
|
||||
set -eu
|
||||
${{ matrix.platform.source_cmd }}
|
||||
curdir="$(pwd)"
|
||||
parallel="$(getconf _NPROCESSORS_ONLN)"
|
||||
export SDL_TESTS_QUICK=1
|
||||
make -j"${parallel}" -C build-autotools/test check LD_LIBRARY_PATH="${curdir}/build-autotools/build/.libs"
|
||||
if test "${{ runner.os }}" = "Linux"; then
|
||||
# This should show us the SDL_REVISION
|
||||
strings "${curdir}/build-autotools/build/.libs/libSDL2-2.0.so.0" | grep SDL-
|
||||
fi
|
||||
- name: Install (Autotools)
|
||||
if: matrix.platform.autotools
|
||||
run: |
|
||||
set -eu
|
||||
${{ matrix.platform.source_cmd }}
|
||||
curdir="$(pwd)"
|
||||
parallel="$(getconf _NPROCESSORS_ONLN)"
|
||||
make -j"${parallel}" -C build-autotools install V=1
|
||||
@@ -150,16 +189,19 @@ jobs:
|
||||
echo "SDL2_DIR=$(pwd)/autotools_prefix" >> $GITHUB_ENV
|
||||
- name: Verify CMake configuration files
|
||||
run: |
|
||||
${{ matrix.platform.source_cmd }}
|
||||
cmake -S cmake/test -B cmake_config_build -G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_PREFIX_PATH=${{ env.SDL2_DIR }}
|
||||
cmake --build cmake_config_build --verbose
|
||||
- name: Verify sdl2-config
|
||||
run: |
|
||||
${{ matrix.platform.source_cmd }}
|
||||
export PATH=${{ env.SDL2_DIR }}/bin:$PATH
|
||||
cmake/test/test_sdlconfig.sh
|
||||
- name: Verify sdl2.pc
|
||||
run: |
|
||||
${{ matrix.platform.source_cmd }}
|
||||
export PKG_CONFIG_PATH=${{ env.SDL2_DIR }}/lib/pkgconfig
|
||||
cmake/test/test_pkgconfig.sh
|
||||
- name: Distcheck (Autotools)
|
||||
@@ -178,6 +220,7 @@ jobs:
|
||||
if: "runner.os == 'Linux' && matrix.platform.autotools"
|
||||
run: |
|
||||
set -eu
|
||||
${{ matrix.platform.source_cmd }}
|
||||
parallel="$(getconf _NPROCESSORS_ONLN)"
|
||||
sudo make -j"${parallel}" -C build-autotools install
|
||||
sudo make -j"${parallel}" -C build-autotools/test install
|
||||
|
||||
8
.github/workflows/msvc.yml
vendored
8
.github/workflows/msvc.yml
vendored
@@ -19,11 +19,11 @@ jobs:
|
||||
- { name: Windows (clang-cl x86), flags: -T ClangCL -A Win32 }
|
||||
- { name: Windows (ARM), flags: -A ARM }
|
||||
- { name: Windows (ARM64), flags: -A ARM64 }
|
||||
- { name: UWP (x64), flags: -A x64 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION="10.0" -DSDL_TESTS=OFF,
|
||||
- { name: UWP (x64), flags: -A x64 -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION="10.0" -DSDL_TESTS=OFF, nowerror: true,
|
||||
project: VisualC-WinRT/SDL-UWP.sln, projectflags: '/p:Platform=x64 /p:WindowsTargetPlatformVersion=10.0.17763.0' }
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Create CMake project using SDL as a subproject
|
||||
shell: python
|
||||
run: |
|
||||
@@ -40,8 +40,10 @@ jobs:
|
||||
"""))
|
||||
- name: Configure (CMake)
|
||||
run: cmake -S build -B build `
|
||||
-DSDL_WERROR=${{ !matrix.platform.nowerror }} `
|
||||
-DSDL_TESTS=ON `
|
||||
-DSDL_INSTALL_TESTS=ON `
|
||||
-DSDL_VENDOR_INFO="Github Workflow" `
|
||||
-DSDL2_DISABLE_INSTALL=OFF `
|
||||
${{ matrix.platform.flags }} `
|
||||
-DCMAKE_INSTALL_PREFIX=prefix
|
||||
@@ -66,7 +68,7 @@ jobs:
|
||||
|
||||
- name: Add msbuild to PATH
|
||||
if: ${{ matrix.platform.project != '' }}
|
||||
uses: microsoft/setup-msbuild@v1.0.2
|
||||
uses: microsoft/setup-msbuild@v1.1.3
|
||||
- name: Build msbuild
|
||||
if: ${{ matrix.platform.project != '' }}
|
||||
run: msbuild ${{ matrix.platform.project }} /m /p:BuildInParallel=true /p:Configuration=Release ${{ matrix.platform.projectflags }}
|
||||
|
||||
55
.github/workflows/n3ds.yml
vendored
Normal file
55
.github/workflows/n3ds.yml
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
name: Build (Nintendo 3DS)
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
n3ds:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: devkitpro/devkitarm:latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install build requirements
|
||||
run: |
|
||||
apt update
|
||||
apt install ninja-build
|
||||
- name: Configure CMake
|
||||
run: |
|
||||
cmake -S . -B build -G Ninja \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${DEVKITPRO}/cmake/3DS.cmake \
|
||||
-DSDL_WERROR=ON \
|
||||
-DSDL_TESTS=ON \
|
||||
-DSDL_INSTALL_TESTS=ON \
|
||||
-DSDL_VENDOR_INFO="Github Workflow" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=prefix
|
||||
- name: Build
|
||||
run: cmake --build build --verbose
|
||||
- name: Install CMake
|
||||
run: |
|
||||
echo "SDL2_DIR=$(pwd)/prefix" >> $GITHUB_ENV
|
||||
cmake --install build/
|
||||
( cd prefix; find ) | LC_ALL=C sort -u
|
||||
- name: Verify CMake configuration files
|
||||
run: |
|
||||
cmake -S cmake/test -B cmake_config_build -G Ninja \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${DEVKITPRO}/cmake/3DS.cmake \
|
||||
-DTEST_SHARED=FALSE \
|
||||
-DCMAKE_PREFIX_PATH=${{ env.SDL2_DIR }} \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build cmake_config_build --verbose
|
||||
- name: Extract CC/CXX/CFLAGS/CXXFLAGS from CMake toolchain
|
||||
run: |
|
||||
cmake -S .github/cmake -B /tmp/cmake_extract \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${DEVKITPRO}/cmake/3DS.cmake \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DVAR_PATH=/tmp/n3ds_env.txt
|
||||
cat /tmp/n3ds_env.txt >> $GITHUB_ENV
|
||||
- name: Verify sdl2-config
|
||||
run: |
|
||||
export PATH=${{ env.SDL2_DIR }}/bin:$PATH
|
||||
cmake/test/test_sdlconfig.sh
|
||||
- name: Verify sdl2.pc
|
||||
run: |
|
||||
export PKG_CONFIG_PATH=${{ env.SDL2_DIR }}/lib/pkgconfig
|
||||
cmake/test/test_pkgconfig.sh
|
||||
9
.github/workflows/ps2.yaml
vendored
9
.github/workflows/ps2.yaml
vendored
@@ -7,7 +7,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
container: ps2dev/ps2dev:latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Setup dependencies
|
||||
run: |
|
||||
apk update
|
||||
@@ -24,8 +24,9 @@ jobs:
|
||||
|
||||
- name: Configure (CMake)
|
||||
run: |
|
||||
cmake -S . -B build -G Ninja\
|
||||
cmake -S . -B build -G Ninja \
|
||||
-DCMAKE_TOOLCHAIN_FILE=$PS2DEV/ps2sdk/ps2dev.cmake \
|
||||
-DSDL_WERROR=ON \
|
||||
-DSDL_TESTS=ON \
|
||||
-DCMAKE_INSTALL_PREFIX=cmake_prefix \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
@@ -49,13 +50,13 @@ jobs:
|
||||
- name: Verify sdl2-config
|
||||
run: |
|
||||
export CC=mips64r5900el-ps2-elf-gcc
|
||||
export LDFLAGS="-L$PS2DEV/ps2sdk/ee/lib -L$PS2DEV/gsKit/lib -L$PS2DEV/ps2sdk/ports/lib"
|
||||
export PATH=${{ env.SDL2_DIR }}/bin:$PATH
|
||||
export EXTRA_LDFLAGS="-L$PS2DEV/ps2sdk/ee/lib -L$PS2DEV/gsKit/lib -L$PS2DEV/ps2sdk/ports/lib"
|
||||
cmake/test/test_sdlconfig.sh
|
||||
- name: Verify sdl2.pc
|
||||
run: |
|
||||
export CC=mips64r5900el-ps2-elf-gcc
|
||||
export EXTRA_LDFLAGS="-L$PS2DEV/ps2sdk/ee/lib -L$PS2DEV/gsKit/lib -L$PS2DEV/ps2sdk/ports/lib"
|
||||
export LDFLAGS="-L$PS2DEV/ps2sdk/ee/lib -L$PS2DEV/gsKit/lib -L$PS2DEV/ps2sdk/ports/lib"
|
||||
export PKG_CONFIG_PATH=${{ env.SDL2_DIR }}/lib/pkgconfig
|
||||
cmake/test/test_pkgconfig.sh
|
||||
|
||||
|
||||
7
.github/workflows/psp.yaml
vendored
7
.github/workflows/psp.yaml
vendored
@@ -7,7 +7,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
container: pspdev/pspdev:latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Setup dependencies
|
||||
run: |
|
||||
apk update
|
||||
@@ -16,6 +16,7 @@ jobs:
|
||||
run: |
|
||||
cmake -S . -B build \
|
||||
-DCMAKE_TOOLCHAIN_FILE=$PSPDEV/psp/share/pspdev.cmake \
|
||||
-DSDL_WERROR=ON \
|
||||
-DSDL_TESTS=ON \
|
||||
-DSDL_INSTALL_TESTS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
@@ -38,12 +39,12 @@ jobs:
|
||||
- name: Verify sdl2-config
|
||||
run: |
|
||||
export CC=psp-gcc
|
||||
export LDFLAGS="-L$PSPDEV/lib -L$PSPDEV/psp/lib -L$PSPDEV/psp/sdk/lib"
|
||||
export PATH=${{ env.SDL2_DIR }}/bin:$PATH
|
||||
export EXTRA_LDFLAGS="-L$PSPDEV/lib -L$PSPDEV/psp/lib -L$PSPDEV/psp/sdk/lib"
|
||||
cmake/test/test_sdlconfig.sh
|
||||
- name: Verify sdl2.pc
|
||||
run: |
|
||||
export CC=psp-gcc
|
||||
export LDFLAGS="-L$PSPDEV/lib -L$PSPDEV/psp/lib -L$PSPDEV/psp/sdk/lib"
|
||||
export PKG_CONFIG_PATH=${{ env.SDL2_DIR }}/lib/pkgconfig
|
||||
export EXTRA_LDFLAGS="-L$PSPDEV/lib -L$PSPDEV/psp/lib -L$PSPDEV/psp/sdk/lib"
|
||||
cmake/test/test_pkgconfig.sh
|
||||
|
||||
3
.github/workflows/riscos.yml
vendored
3
.github/workflows/riscos.yml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
steps:
|
||||
- name: Setup dependencies
|
||||
run: apt-get update && apt-get install -y cmake ninja-build
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Configure (autotools)
|
||||
if: ${{ contains(matrix.platform.name, 'autotools') }}
|
||||
run: |
|
||||
@@ -46,6 +46,7 @@ jobs:
|
||||
-DSDL_GCC_ATOMICS=OFF \
|
||||
-DSDL_TESTS=ON \
|
||||
-DSDL_INSTALL_TESTS=ON \
|
||||
-DSDL_VENDOR_INFO="Github Workflow" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/prefix_cmake
|
||||
- name: Build (CMake)
|
||||
|
||||
47
.github/workflows/vita.yaml
vendored
47
.github/workflows/vita.yaml
vendored
@@ -8,19 +8,62 @@ defaults:
|
||||
|
||||
jobs:
|
||||
vita:
|
||||
name: ${{ matrix.platform.name }}
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: vitasdk/vitasdk:latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
platform:
|
||||
- { name: GLES (pib), os: windows-latest, pib: true }
|
||||
- { name: GLES (PVR_PSP2 + gl4es4vita), os: windows-latest, pvr: true }
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install build requirements
|
||||
run: |
|
||||
apk update
|
||||
apk add cmake ninja pkgconf
|
||||
apk add cmake ninja pkgconf bash
|
||||
|
||||
- name: Configure PVR_PSP2 (GLES)
|
||||
if: ${{ !!matrix.platform.pvr }}
|
||||
run: |
|
||||
pvr_psp2_version=3.9
|
||||
|
||||
# Configure PVR_PSP2 headers
|
||||
wget https://github.com/GrapheneCt/PVR_PSP2/archive/refs/tags/v$pvr_psp2_version.zip -P/tmp
|
||||
unzip /tmp/v$pvr_psp2_version.zip -d/tmp
|
||||
cp -r /tmp/PVR_PSP2-$pvr_psp2_version/include/* ${VITASDK}/arm-vita-eabi/include
|
||||
rm /tmp/v$pvr_psp2_version.zip
|
||||
|
||||
# Configure PVR_PSP2 stub libraries
|
||||
wget https://github.com/GrapheneCt/PVR_PSP2/releases/download/v$pvr_psp2_version/vitasdk_stubs.zip -P/tmp
|
||||
unzip /tmp/vitasdk_stubs.zip -d/tmp/pvr_psp2_stubs
|
||||
find /tmp/pvr_psp2_stubs -type f -name "*.a" -exec cp {} ${VITASDK}/arm-vita-eabi/lib \;
|
||||
rm /tmp/vitasdk_stubs.zip
|
||||
rm -rf /tmp/pvr_psp2_stubs
|
||||
|
||||
- name: Configure gl4es4vita (OpenGL)
|
||||
if: ${{ !!matrix.platform.pvr }}
|
||||
run: |
|
||||
gl4es4vita_version=1.1.4
|
||||
|
||||
# Configure gl4es4vita headers
|
||||
wget https://github.com/SonicMastr/gl4es4vita/releases/download/v$gl4es4vita_version-vita/include.zip -P/tmp
|
||||
unzip -o /tmp/include.zip -d${VITASDK}/arm-vita-eabi/include
|
||||
rm /tmp/include.zip
|
||||
|
||||
# Configure gl4es4vita stub libraries
|
||||
wget https://github.com/SonicMastr/gl4es4vita/releases/download/v$gl4es4vita_version-vita/vitasdk_stubs.zip -P/tmp
|
||||
unzip /tmp/vitasdk_stubs.zip -d${VITASDK}/arm-vita-eabi/lib
|
||||
|
||||
- name: Configure CMake
|
||||
run: |
|
||||
cmake -S . -B build -G Ninja \
|
||||
-DCMAKE_TOOLCHAIN_FILE=${VITASDK}/share/vita.toolchain.cmake \
|
||||
-DVIDEO_VITA_PIB=${{ !!matrix.platform.pib }} \
|
||||
-DVIDEO_VITA_PVR=${{ !!matrix.platform.pvr }} \
|
||||
-DSDL_WERROR=ON \
|
||||
-DSDL_TESTS=ON \
|
||||
-DSDL_INSTALL_TESTS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
|
||||
2
.github/workflows/vmactions.yml
vendored
2
.github/workflows/vmactions.yml
vendored
@@ -7,7 +7,7 @@ jobs:
|
||||
runs-on: macos-12
|
||||
name: FreeBSD
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: Build
|
||||
uses: vmactions/freebsd-vm@v0
|
||||
with:
|
||||
|
||||
6
.github/workflows/watcom.yml
vendored
6
.github/workflows/watcom.yml
vendored
@@ -14,14 +14,14 @@ jobs:
|
||||
- { name: OS/2, makefile: Makefile.os2 }
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- uses: open-watcom/setup-watcom@v0
|
||||
- name: Build SDL2
|
||||
run: |
|
||||
wmake -f ${{ matrix.platform.makefile }}
|
||||
wmake -f ${{ matrix.platform.makefile }} ENABLE_WERROR=1
|
||||
- name: Build tests
|
||||
run: |
|
||||
cd test && wmake -f ${{ matrix.platform.makefile }}
|
||||
cd test && wmake -f ${{ matrix.platform.makefile }} ENABLE_WERROR=1
|
||||
cd ..
|
||||
- name: Run tests
|
||||
if: "matrix.platform.makefile == 'Makefile.w32'"
|
||||
|
||||
8
.gitignore
vendored
8
.gitignore
vendored
@@ -15,6 +15,7 @@ build
|
||||
gen
|
||||
Build
|
||||
buildbot
|
||||
/VERSION.txt
|
||||
|
||||
*.so
|
||||
*.so.*
|
||||
@@ -61,6 +62,11 @@ cmake-build-*
|
||||
xcuserdata
|
||||
*.xcworkspace
|
||||
|
||||
# for QtCreator
|
||||
CMakeLists.txt.user
|
||||
build*/
|
||||
*.pro.user*
|
||||
|
||||
# for Visual C++
|
||||
.vs
|
||||
Debug
|
||||
@@ -100,6 +106,7 @@ VisualC-GDK/**/Layout
|
||||
|
||||
# for Android
|
||||
android-project/local.properties
|
||||
android-project/.gradle/
|
||||
|
||||
test/checkkeys
|
||||
test/checkkeysthreads
|
||||
@@ -171,6 +178,7 @@ test/testyuv
|
||||
test/torturethread
|
||||
|
||||
builddir/
|
||||
!build-scripts/
|
||||
debian/*.debhelper.log
|
||||
debian/*.substvars
|
||||
debian/*.tar.gz
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
projectfullname = SDL_mixer
|
||||
projectshortname = SDL_mixer
|
||||
projectfullname = SDL2
|
||||
projectshortname = SDL2
|
||||
incsubdir = include
|
||||
wikisubdir =
|
||||
wikisubdir = SDL2
|
||||
readmesubdir = docs
|
||||
apiprefixregex = (SDL_|SDLK_|KMOD_|AUDIO_)
|
||||
mainincludefname = SDL.h
|
||||
versionfname = include/SDL_version.h
|
||||
@@ -10,6 +11,7 @@ versionminorregex = \A\#define\s+SDL_MINOR_VERSION\s+(\d+)\Z
|
||||
versionpatchregex = \A\#define\s+SDL_PATCHLEVEL\s+(\d+)\Z
|
||||
selectheaderregex = \ASDL.*?\.h\Z
|
||||
projecturl = https://libsdl.org/
|
||||
wikiurl = https://wiki.libsdl.org
|
||||
wikiurl = https://wiki.libsdl.org/SDL2
|
||||
bugreporturl = https://github.com/libsdl-org/sdlwiki/issues/new
|
||||
warn_about_missing = 0
|
||||
wikipreamble = (This is the legacy documentation for stable SDL2, the current stable version; [SDL3](https://wiki.libsdl.org/SDL3/) is the current development version.)
|
||||
|
||||
13
Android.mk
13
Android.mk
@@ -63,7 +63,6 @@ LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES
|
||||
LOCAL_CFLAGS += \
|
||||
-Wall -Wextra \
|
||||
-Wdocumentation \
|
||||
-Wdocumentation-unknown-command \
|
||||
-Wmissing-prototypes \
|
||||
-Wunreachable-code-break \
|
||||
-Wunneeded-internal-declaration \
|
||||
@@ -75,12 +74,15 @@ LOCAL_CFLAGS += \
|
||||
-Wstrict-prototypes \
|
||||
-Wkeyword-macro \
|
||||
|
||||
|
||||
# Warnings we haven't fixed (yet)
|
||||
LOCAL_CFLAGS += -Wno-unused-parameter -Wno-sign-compare
|
||||
|
||||
LOCAL_CXXFLAGS += -std=gnu++11
|
||||
|
||||
LOCAL_LDLIBS := -ldl -lGLESv1_CM -lGLESv2 -lOpenSLES -llog -landroid
|
||||
|
||||
LOCAL_LDFLAGS := -Wl,--no-undefined
|
||||
|
||||
ifeq ($(NDK_DEBUG),1)
|
||||
cmd-strip :=
|
||||
endif
|
||||
@@ -89,6 +91,7 @@ LOCAL_STATIC_LIBRARIES := cpufeatures
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
|
||||
###########################
|
||||
#
|
||||
# SDL static library
|
||||
@@ -99,11 +102,15 @@ LOCAL_MODULE := SDL2_static
|
||||
|
||||
LOCAL_MODULE_FILENAME := libSDL2
|
||||
|
||||
LOCAL_LDLIBS :=
|
||||
LOCAL_LDLIBS :=
|
||||
|
||||
LOCAL_LDFLAGS :=
|
||||
|
||||
LOCAL_EXPORT_LDLIBS := -ldl -lGLESv1_CM -lGLESv2 -llog -landroid
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
|
||||
###########################
|
||||
#
|
||||
# SDL main static library
|
||||
|
||||
860
CMakeLists.txt
860
CMakeLists.txt
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>
|
||||
Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -27,11 +27,13 @@ LDFLAGS = @BUILD_LDFLAGS@
|
||||
EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
INSTALL = @INSTALL@
|
||||
FGREP = @FGREP@
|
||||
AR = @AR@
|
||||
RANLIB = @RANLIB@
|
||||
RC = @RC@
|
||||
LINKER = @LINKER@
|
||||
LIBTOOLLINKERTAG = @LIBTOOLLINKERTAG@
|
||||
SDL_VENDOR_INFO = @SDL_VENDOR_INFO@
|
||||
|
||||
TARGET = libSDL2.la
|
||||
OBJECTS = @OBJECTS@
|
||||
@@ -129,7 +131,7 @@ HDRS = \
|
||||
begin_code.h \
|
||||
close_code.h
|
||||
|
||||
SDLTEST_HDRS = $(shell ls $(srcdir)/include | fgrep SDL_test)
|
||||
SDLTEST_HDRS = $(shell ls $(srcdir)/include | $(FGREP) SDL_test)
|
||||
|
||||
LT_AGE = @LT_AGE@
|
||||
LT_CURRENT = @LT_CURRENT@
|
||||
@@ -152,7 +154,7 @@ $(objects)/.created:
|
||||
touch $@
|
||||
|
||||
update-revision:
|
||||
$(SHELL) $(auxdir)/updaterev.sh
|
||||
$(SHELL) $(auxdir)/updaterev.sh --vendor "$(SDL_VENDOR_INFO)"
|
||||
|
||||
.PHONY: all update-revision install install-bin install-hdrs install-lib install-data uninstall uninstall-bin uninstall-hdrs uninstall-lib uninstall-data clean distclean dist $(OBJECTS:.lo=.d)
|
||||
|
||||
@@ -252,7 +254,8 @@ dist $(distfile):
|
||||
-name '.#*' \) \
|
||||
-exec rm -f {} \;
|
||||
if test -f $(distdir)/test/Makefile; then (cd $(distdir)/test && make distclean); fi
|
||||
(cd $(distdir); build-scripts/updaterev.sh)
|
||||
# Intentionally no vendor suffix: that's a property of the build, not the source
|
||||
(cd $(distdir); $(srcdir)/build-scripts/updaterev.sh --dist)
|
||||
tar cvf - $(distdir) | gzip --best >$(distfile)
|
||||
rm -rf $(distdir)
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Makefile to build the SDL library
|
||||
|
||||
INCLUDE = -I./include
|
||||
CFLAGS = -g -O2 $(INCLUDE)
|
||||
CPPFLAGS = -I./include
|
||||
CFLAGS = -g -O2
|
||||
AR = ar
|
||||
RANLIB = ranlib
|
||||
|
||||
|
||||
11
Makefile.os2
11
Makefile.os2
@@ -9,11 +9,13 @@
|
||||
# can compile hidapi joystick support against it (experimental)
|
||||
# by specifying HIDAPI=1, e.g.:
|
||||
# wmake -f Makefile.os2 HIDAPI=1
|
||||
#
|
||||
# To error out upon warnings: wmake -f Makefile.os2 ENABLE_WERROR=1
|
||||
|
||||
LIBNAME = SDL2
|
||||
MAJOR_VERSION = 2
|
||||
MINOR_VERSION = 24
|
||||
MICRO_VERSION = 1
|
||||
MINOR_VERSION = 28
|
||||
MICRO_VERSION = 0
|
||||
VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(MICRO_VERSION)
|
||||
DESCRIPTION = Simple DirectMedia Layer 2
|
||||
|
||||
@@ -40,6 +42,9 @@ CFLAGS = -bt=os2 -d0 -q -bm -5s -fp5 -fpi87 -sg -oeatxhn -ei
|
||||
|
||||
# max warnings:
|
||||
CFLAGS+= -wx
|
||||
!ifeq ENABLE_WERROR 1
|
||||
CFLAGS+= -we
|
||||
!endif
|
||||
# newer OpenWatcom versions enable W303 by default
|
||||
CFLAGS+= -wcd=303
|
||||
# the include paths :
|
||||
@@ -89,7 +94,7 @@ SRCS+= SDL_systimer.c
|
||||
SRCS+= SDL_sysloadso.c
|
||||
SRCS+= SDL_sysfilesystem.c
|
||||
SRCS+= SDL_os2joystick.c SDL_syshaptic.c SDL_sysjoystick.c SDL_virtualjoystick.c
|
||||
SRCS+= SDL_hidapijoystick.c SDL_hidapi_rumble.c SDL_hidapi_combined.c SDL_hidapi_gamecube.c SDL_hidapi_luna.c SDL_hidapi_ps4.c SDL_hidapi_ps5.c SDL_hidapi_shield.c SDL_hidapi_stadia.c SDL_hidapi_switch.c SDL_hidapi_xbox360.c SDL_hidapi_xbox360w.c SDL_hidapi_xboxone.c SDL_hidapi_steam.c
|
||||
SRCS+= SDL_hidapijoystick.c SDL_hidapi_rumble.c SDL_hidapi_combined.c SDL_hidapi_gamecube.c SDL_hidapi_luna.c SDL_hidapi_ps3.c SDL_hidapi_ps4.c SDL_hidapi_ps5.c SDL_hidapi_shield.c SDL_hidapi_stadia.c SDL_hidapi_switch.c SDL_hidapi_wii.c SDL_hidapi_xbox360.c SDL_hidapi_xbox360w.c SDL_hidapi_xboxone.c SDL_hidapi_steam.c
|
||||
SRCS+= SDL_dummyaudio.c SDL_diskaudio.c
|
||||
SRCS+= SDL_nullvideo.c SDL_nullframebuffer.c SDL_nullevents.c
|
||||
SRCS+= SDL_dummysensor.c
|
||||
|
||||
17
Makefile.w32
17
Makefile.w32
@@ -1,12 +1,13 @@
|
||||
# Open Watcom makefile to build SDL2.dll for Win32
|
||||
# wmake -f Makefile.w32
|
||||
#
|
||||
# To error out upon warnings: wmake -f Makefile.w32 ENABLE_WERROR=1
|
||||
|
||||
LIBNAME = SDL2
|
||||
MAJOR_VERSION = 2
|
||||
MINOR_VERSION = 24
|
||||
MICRO_VERSION = 1
|
||||
MINOR_VERSION = 28
|
||||
MICRO_VERSION = 0
|
||||
VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(MICRO_VERSION)
|
||||
DESCRIPTION = Simple DirectMedia Layer 2
|
||||
|
||||
LIBHOME = .
|
||||
DLLFILE = $(LIBHOME)/$(LIBNAME).dll
|
||||
@@ -20,13 +21,20 @@ INCPATH+= -I"src/video/khronos"
|
||||
|
||||
LIBM = SDL2libm.lib
|
||||
TLIB = SDL2test.lib
|
||||
# user32.lib, gdi32.lib, ole32.lib and oleaut32.lib are actually
|
||||
# among the default libraries in wlink.lnk for nt_dll linkage...
|
||||
LIBS = user32.lib gdi32.lib winmm.lib imm32.lib ole32.lib oleaut32.lib shell32.lib setupapi.lib version.lib uuid.lib dxguid.lib $(LIBM)
|
||||
|
||||
CFLAGS = -bt=nt -d0 -q -bm -5s -fp5 -fpi87 -sg -oeatxhn -ei
|
||||
# max warnings:
|
||||
CFLAGS+= -wx
|
||||
!ifeq ENABLE_WERROR 1
|
||||
CFLAGS+= -we
|
||||
!endif
|
||||
# newer OpenWatcom versions enable W303 by default
|
||||
CFLAGS+= -wcd=303
|
||||
# new vulkan headers result in lots of W202 warnings
|
||||
CFLAGS+= -wcd=202
|
||||
# the include paths :
|
||||
CFLAGS+= $(INCPATH)
|
||||
CFLAGS_STATIC=$(CFLAGS)
|
||||
@@ -65,7 +73,7 @@ SRCS+= SDL_systimer.c
|
||||
SRCS+= SDL_sysloadso.c
|
||||
SRCS+= SDL_sysfilesystem.c
|
||||
SRCS+= SDL_syshaptic.c SDL_sysjoystick.c SDL_virtualjoystick.c
|
||||
SRCS+= SDL_hidapijoystick.c SDL_hidapi_rumble.c SDL_hidapi_combined.c SDL_hidapi_gamecube.c SDL_hidapi_luna.c SDL_hidapi_ps4.c SDL_hidapi_ps5.c SDL_hidapi_shield.c SDL_hidapi_stadia.c SDL_hidapi_switch.c SDL_hidapi_xbox360.c SDL_hidapi_xbox360w.c SDL_hidapi_xboxone.c SDL_hidapi_steam.c
|
||||
SRCS+= SDL_hidapijoystick.c SDL_hidapi_rumble.c SDL_hidapi_combined.c SDL_hidapi_gamecube.c SDL_hidapi_luna.c SDL_hidapi_ps3.c SDL_hidapi_ps4.c SDL_hidapi_ps5.c SDL_hidapi_shield.c SDL_hidapi_stadia.c SDL_hidapi_switch.c SDL_hidapi_wii.c SDL_hidapi_xbox360.c SDL_hidapi_xbox360w.c SDL_hidapi_xboxone.c SDL_hidapi_steam.c
|
||||
SRCS+= SDL_dummyaudio.c SDL_diskaudio.c
|
||||
SRCS+= SDL_nullvideo.c SDL_nullframebuffer.c SDL_nullevents.c
|
||||
SRCS+= SDL_dummysensor.c
|
||||
@@ -253,7 +261,6 @@ $(LNKFILE): Makefile.w32
|
||||
@%append $@ OPTION QUIET
|
||||
@%append $@ OPTION IMPF=$(EXPFILE)
|
||||
@%append $@ OPTION MAP=$(LIBHOME)/$^&.map
|
||||
@%append $@ OPTION DESCRIPTION '@$#libsdl org:$(VERSION)$#@$(DESCRIPTION)'
|
||||
@%append $@ OPTION ELIMINATE
|
||||
@%append $@ OPTION SHOWDEAD
|
||||
|
||||
|
||||
@@ -30,6 +30,18 @@ if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL2testTargets.cmake")
|
||||
set(SDL2_SDL2test_FOUND TRUE)
|
||||
endif()
|
||||
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/sdlfind.cmake")
|
||||
|
||||
set(SDL_ALSA @SDL_ALSA@)
|
||||
set(SDL_ALSA_SHARED @SDL_ALSA_SHARED@)
|
||||
if(SDL_ALSA AND NOT SDL_ALSA_SHARED AND TARGET SDL2::SDL2-static)
|
||||
sdlFindALSA()
|
||||
endif()
|
||||
unset(SDL_ALSA)
|
||||
unset(SDL_ALSA_SHARED)
|
||||
|
||||
|
||||
check_required_components(SDL2)
|
||||
|
||||
# Create SDL2::SDL2 alias for static-only builds
|
||||
@@ -62,4 +74,4 @@ if(TARGET SDL2::SDL2main)
|
||||
list(INSERT SDL2_STATIC_LIBRARIES 0 SDL2::SDL2main)
|
||||
endif()
|
||||
|
||||
set(SDL2TEST_LIBRARY SDL2::SDL2test)
|
||||
set(SDL2TEST_LIBRARY SDL2::SDL2test)
|
||||
|
||||
@@ -514,7 +514,6 @@
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowstaskdialog.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsvulkan.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
|
||||
@@ -595,12 +594,15 @@
|
||||
<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_luna.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_ps5.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_stadia.c" />
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.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_xbox360w.c" />
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
||||
|
||||
@@ -672,9 +672,6 @@
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h">
|
||||
<Filter>video\windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowstaskdialog.h">
|
||||
<Filter>video\windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\timer\SDL_timer_c.h">
|
||||
<Filter>timer</Filter>
|
||||
</ClInclude>
|
||||
@@ -1063,6 +1060,9 @@
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
@@ -1078,9 +1078,15 @@
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testgamecontroller.exe"
|
||||
@@ -19,8 +19,8 @@
|
||||
</DesktopRegistration>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testgamecontroller"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testgamecontroller.exe"
|
||||
@@ -12,15 +12,9 @@
|
||||
Id="Game" />
|
||||
</ExecutableList>
|
||||
|
||||
<DesktopRegistration>
|
||||
<DependencyList>
|
||||
<KnownDependency Name="VC14"/>
|
||||
</DependencyList>
|
||||
</DesktopRegistration>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testgamecontroller"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testgamecontroller.exe"
|
||||
@@ -13,8 +13,8 @@
|
||||
</ExecutableList>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testgamecontroller"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>
|
||||
Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
@@ -239,17 +239,17 @@ LoadSprite(const char *file)
|
||||
/* This does the SDL_LoadBMP step repeatedly, but that's OK for test code. */
|
||||
sprites[i] = LoadTexture(state->renderers[i], file, SDL_TRUE, &sprite_w, &sprite_h);
|
||||
if (!sprites[i]) {
|
||||
return (-1);
|
||||
return -1;
|
||||
}
|
||||
if (SDL_SetTextureBlendMode(sprites[i], blendMode) < 0) {
|
||||
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't set blend mode: %s\n", SDL_GetError());
|
||||
SDL_DestroyTexture(sprites[i]);
|
||||
return (-1);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/* We're ready to roll. :) */
|
||||
return (0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
@@ -364,8 +364,9 @@ loop()
|
||||
#endif
|
||||
}
|
||||
for (i = 0; i < state->num_windows; ++i) {
|
||||
if (state->windows[i] == NULL)
|
||||
if (state->windows[i] == NULL) {
|
||||
continue;
|
||||
}
|
||||
DrawSprites(state->renderers[i], sprites[i]);
|
||||
}
|
||||
}
|
||||
@@ -382,7 +383,7 @@ main(int argc, char *argv[])
|
||||
|
||||
/* Initialize test framework */
|
||||
state = SDLTest_CommonCreateState(argv, SDL_INIT_VIDEO | SDL_INIT_AUDIO);
|
||||
if (!state) {
|
||||
if (state == NULL) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -445,7 +446,7 @@ main(int argc, char *argv[])
|
||||
/* Create the windows, initialize the renderers, and load the textures */
|
||||
sprites =
|
||||
(SDL_Texture **) SDL_malloc(state->num_windows * sizeof(*sprites));
|
||||
if (!sprites) {
|
||||
if (sprites == NULL) {
|
||||
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Out of memory!\n");
|
||||
quit(2);
|
||||
}
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testgdk.exe"
|
||||
@@ -19,8 +19,8 @@
|
||||
</DesktopRegistration>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testgdk"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testgdk.exe"
|
||||
@@ -13,8 +13,8 @@
|
||||
</ExecutableList>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testgdk"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testgdk.exe"
|
||||
@@ -13,8 +13,8 @@
|
||||
</ExecutableList>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testgdk"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testsprite2.exe"
|
||||
@@ -19,8 +19,8 @@
|
||||
</DesktopRegistration>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testsprite2"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testsprite2.exe"
|
||||
@@ -13,8 +13,8 @@
|
||||
</ExecutableList>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testsprite2"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<Game configVersion="1">
|
||||
|
||||
<!-- Set these to the correct identifiers from Partner Center -->
|
||||
<Identity Name="41336MicrosoftATG.ATGSimpleLiveSample"
|
||||
<Identity Name="SDL"
|
||||
Version="1.0.0.0"
|
||||
Publisher="CN=A4954634-DF4B-47C7-AB70-D3215D246AF1"/>
|
||||
Publisher="CN=Publisher"/>
|
||||
|
||||
<ExecutableList>
|
||||
<Executable Name="testsprite2.exe"
|
||||
@@ -13,8 +13,8 @@
|
||||
</ExecutableList>
|
||||
|
||||
<!-- Set these to the correct values from Partner Center -->
|
||||
<TitleId>7325F784</TitleId>
|
||||
<MSAAppId>0000000000000000</MSAAppId>
|
||||
<MSAAppId>PleaseChangeMe</MSAAppId>
|
||||
<TitleId>FFFFFFFF</TitleId>
|
||||
|
||||
<ShellVisuals DefaultDisplayName="testsprite2"
|
||||
PublisherDisplayName="SDL"
|
||||
|
||||
@@ -8,21 +8,27 @@ EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|ARM = Debug|ARM
|
||||
Debug|ARM64 = Debug|ARM64
|
||||
Debug|x64 = Debug|x64
|
||||
Debug|x86 = Debug|x86
|
||||
Release|ARM = Release|ARM
|
||||
Release|ARM64 = Release|ARM64
|
||||
Release|x64 = Release|x64
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x64.Build.0 = Debug|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x86.ActiveCfg = Debug|Win32
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Debug|x86.Build.0 = Debug|Win32
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM.Build.0 = Release|ARM
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x64.ActiveCfg = Release|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x64.Build.0 = Release|x64
|
||||
{89E9B32E-A86A-47C3-A948-D2B1622925CE}.Release|x86.ActiveCfg = Release|Win32
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|ARM64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|ARM">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
@@ -17,6 +21,10 @@
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|ARM64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
@@ -190,38 +198,18 @@
|
||||
<ClCompile Include="..\src\audio\SDL_wave.c" />
|
||||
<ClCompile Include="..\src\audio\wasapi\SDL_wasapi.c" />
|
||||
<ClCompile Include="..\src\audio\wasapi\SDL_wasapi_winrt.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\core\windows\SDL_windows.c" />
|
||||
<ClCompile Include="..\src\core\windows\SDL_xinput.c" />
|
||||
<ClCompile Include="..\src\core\winrt\SDL_winrtapp_common.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\core\winrt\SDL_winrtapp_direct3d.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\core\winrt\SDL_winrtapp_xaml.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\cpuinfo\SDL_cpuinfo.c" />
|
||||
<ClCompile Include="..\src\dynapi\SDL_dynapi.c" />
|
||||
@@ -236,12 +224,7 @@
|
||||
<ClCompile Include="..\src\events\SDL_touch.c" />
|
||||
<ClCompile Include="..\src\events\SDL_windowevents.c" />
|
||||
<ClCompile Include="..\src\filesystem\winrt\SDL_sysfilesystem.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\file\SDL_rwops.c" />
|
||||
<ClCompile Include="..\src\haptic\dummy\SDL_syshaptic.c" />
|
||||
@@ -264,23 +247,13 @@
|
||||
<ClCompile Include="..\src\locale\winrt\SDL_syslocale.c" />
|
||||
<ClCompile Include="..\src\misc\SDL_url.c" />
|
||||
<ClCompile Include="..\src\misc\winrt\SDL_sysurl.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\power\SDL_power.c" />
|
||||
<ClCompile Include="..\src\power\winrt\SDL_syspower.cpp" />
|
||||
<ClCompile Include="..\src\render\direct3d11\SDL_render_d3d11.c" />
|
||||
<ClCompile Include="..\src\render\direct3d11\SDL_render_winrt.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\render\direct3d11\SDL_shaders_d3d11.c" />
|
||||
<ClCompile Include="..\src\render\opengles2\SDL_render_gles2.c" />
|
||||
@@ -348,68 +321,28 @@
|
||||
<ClCompile Include="..\src\video\SDL_video.c" />
|
||||
<ClCompile Include="..\src\video\SDL_yuv.c" />
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtevents.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtgamebar.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtkeyboard.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtmessagebox.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtmouse.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtopengles.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtpointerinput.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\winrt\SDL_winrtvideo.cpp">
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
|
||||
<CompileAsWinRT>true</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\video\yuv2rgb\yuv_rgb.c" />
|
||||
</ItemGroup>
|
||||
@@ -438,6 +371,11 @@
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
@@ -455,6 +393,12 @@
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
@@ -478,6 +422,12 @@
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
@@ -506,6 +456,16 @@
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
<TargetName>SDL2</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
<TargetName>SDL2</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
<TargetName>SDL2</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<IgnoreImportLibrary>false</IgnoreImportLibrary>
|
||||
@@ -572,6 +532,34 @@
|
||||
<AdditionalOptions>/nodefaultlib:vccorlib /nodefaultlib:msvcrt vccorlib.lib msvcrt.lib %(AdditionalOptions)</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>DLL_EXPORT;_CRT_SECURE_NO_WARNINGS;SDL_BUILDING_WINRT=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlibd /nodefaultlib:msvcrtd vccorlibd.lib msvcrtd.lib %(AdditionalOptions)</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
<AdditionalIncludeDirectories>..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>DLL_EXPORT;_CRT_SECURE_NO_WARNINGS;SDL_BUILDING_WINRT=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||
<GenerateWindowsMetadata>false</GenerateWindowsMetadata>
|
||||
<AdditionalOptions>/nodefaultlib:vccorlib /nodefaultlib:msvcrt vccorlib.lib msvcrt.lib %(AdditionalOptions)</AdditionalOptions>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
|
||||
@@ -842,5 +842,8 @@
|
||||
<ClCompile Include="..\src\joystick\controller_type.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\stdlib\SDL_mslibc.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
@@ -137,6 +137,7 @@
|
||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||
<OmitDefaultLibName>true</OmitDefaultLibName>
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -432,7 +433,6 @@
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowstaskdialog.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsvulkan.h" />
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
|
||||
@@ -486,12 +486,15 @@
|
||||
<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_luna.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_ps5.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_stadia.c" />
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c" />
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.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_xbox360w.c" />
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xboxone.c" />
|
||||
|
||||
@@ -495,9 +495,6 @@
|
||||
<ClInclude Include="..\..\src\haptic\SDL_haptic_c.h">
|
||||
<Filter>haptic</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\hidapi\SDL_hidapi.h">
|
||||
<Filter>hidapi</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\joystick\SDL_gamecontrollerdb.h">
|
||||
<Filter>joystick</Filter>
|
||||
</ClInclude>
|
||||
@@ -675,9 +672,6 @@
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowsopengles.h">
|
||||
<Filter>video\windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\video\windows\SDL_windowstaskdialog.h">
|
||||
<Filter>video\windows</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\timer\SDL_timer_c.h">
|
||||
<Filter>timer</Filter>
|
||||
</ClInclude>
|
||||
@@ -835,6 +829,7 @@
|
||||
<ClInclude Include="..\..\src\render\direct3d12\SDL_shaders_d3d12.h">
|
||||
<Filter>render\direct3d12</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\hidapi\SDL_hidapi_c.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\audio\wasapi\SDL_wasapi.c" />
|
||||
@@ -1056,6 +1051,9 @@
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_luna.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps3.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_ps4.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
@@ -1071,9 +1069,15 @@
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_stadia.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_steam.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_switch.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_wii.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\joystick\hidapi\SDL_hidapi_xbox360.c">
|
||||
<Filter>joystick\hidapi</Filter>
|
||||
</ClCompile>
|
||||
@@ -1351,6 +1355,7 @@
|
||||
<ClCompile Include="..\..\src\render\direct3d12\SDL_shaders_d3d12.c">
|
||||
<Filter>render\direct3d12</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\stdlib\SDL_mslibc.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\src\main\windows\version.rc" />
|
||||
|
||||
@@ -68,6 +68,8 @@ if(EXISTS "${_sdl2_library}" AND EXISTS "${_sdl2_dll_library}")
|
||||
IMPORTED_LOCATION "${_sdl2_dll_library}"
|
||||
COMPATIBLE_INTERFACE_BOOL "SDL2_SHARED"
|
||||
INTERFACE_SDL2_SHARED "ON"
|
||||
COMPATIBLE_INTERFACE_STRING "SDL_VERSION"
|
||||
INTERFACE_SDL_VERSION "SDL2"
|
||||
)
|
||||
endif()
|
||||
set(SDL2_SDL2_FOUND TRUE)
|
||||
@@ -84,6 +86,8 @@ if(EXISTS "${_sdl2main_library}")
|
||||
set_target_properties(SDL2::SDL2main
|
||||
PROPERTIES
|
||||
IMPORTED_LOCATION "${_sdl2main_library}"
|
||||
COMPATIBLE_INTERFACE_STRING "SDL_VERSION"
|
||||
INTERFACE_SDL_VERSION "SDL2"
|
||||
)
|
||||
endif()
|
||||
set(SDL2_SDL2main_FOUND TRUE)
|
||||
@@ -100,6 +104,8 @@ if(EXISTS "${_sdl2test_library}")
|
||||
PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${SDL2_INCLUDE_DIRS}"
|
||||
IMPORTED_LOCATION "${_sdl2test_library}"
|
||||
COMPATIBLE_INTERFACE_STRING "SDL_VERSION"
|
||||
INTERFACE_SDL_VERSION "SDL2"
|
||||
)
|
||||
endif()
|
||||
set(SDL2_SDL2test_FOUND TRUE)
|
||||
|
||||
59
WhatsNew.txt
59
WhatsNew.txt
@@ -1,6 +1,57 @@
|
||||
|
||||
This is a list of major changes in SDL's version history.
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
2.28.0:
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
General:
|
||||
* Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to switch between the window surface and rendering APIs
|
||||
* Added a display event SDL_DISPLAYEVENT_MOVED which is sent when the primary monitor changes or displays change position relative to each other
|
||||
* Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control whether the on-screen keyboard should be shown when text input is active
|
||||
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
2.26.0:
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
General:
|
||||
* Updated OpenGL headers to the latest API from The Khronos Group Inc.
|
||||
* Added SDL_GetWindowSizeInPixels() to get the window size in pixels, which may differ from the window coordinate size for windows with high-DPI support
|
||||
* Added simulated vsync synchronization for the software renderer
|
||||
* Added the mouse position to SDL_MouseWheelEvent
|
||||
* Added SDL_ResetHints() to reset all hints to their default values
|
||||
* Added SDL_GetJoystickGUIDInfo() to get device information encoded in a joystick GUID
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_360 to control whether the HIDAPI driver for XBox 360 controllers should be used
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED to control whether the player LEDs should be lit to indicate which player is associated with an Xbox 360 controller
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_WIRELESS to control whether the HIDAPI driver for XBox 360 wireless controllers should be used
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE to control whether the HIDAPI driver for XBox One controllers should be used
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED to control the brightness of the XBox One guide button LED
|
||||
* Added support for PS3 controllers to the HIDAPI driver, enabled by default on macOS, controlled by the SDL_HINT_JOYSTICK_HIDAPI_PS3 hint
|
||||
* Added support for Nintendo Wii controllers to the HIDAPI driver, not enabled by default, controlled by the SDL_HINT_JOYSTICK_HIDAPI_WII hint
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_WII_PLAYER_LED to control whether the player LED should be lit on the Nintendo Wii controllers
|
||||
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS to control whether Nintendo Switch Joy-Con controllers will be in vertical mode when using the HIDAPI driver
|
||||
* Added access to the individual left and right gyro sensors of the combined Joy-Cons controller
|
||||
* Added a microsecond timestamp to SDL_SensorEvent and SDL_ControllerSensorEvent, when the hardware provides that information
|
||||
* Added SDL_SensorGetDataWithTimestamp() and SDL_GameControllerGetSensorDataWithTimestamp() to retrieve the last sensor data with the associated microsecond timestamp
|
||||
* Added the hint SDL_HINT_HIDAPI_IGNORE_DEVICES to have the SDL HID API ignore specific devices
|
||||
* SDL_GetRevision() now includes more information about the SDL build, including the git commit hash if available
|
||||
|
||||
Windows:
|
||||
* Added the hint SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE to control whether the system mouse acceleration curve is used for relative mouse motion
|
||||
|
||||
macOS:
|
||||
* Implemented vsync synchronization on macOS 12
|
||||
|
||||
Linux:
|
||||
* Added SDL_SetPrimarySelectionText(), SDL_GetPrimarySelectionText(), and SDL_HasPrimarySelectionText() to interact with the X11 primary selection clipboard
|
||||
* Added the hint SDL_HINT_VIDEO_WAYLAND_EMULATE_MOUSE_WARP to control whether mouse pointer warp emulation is enabled under Wayland
|
||||
|
||||
Android:
|
||||
* Enabled IME soft keyboard input
|
||||
* Added version checking to make sure the SDL Java and C code are compatible
|
||||
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
2.24.0:
|
||||
---------------------------------------------------------------------------
|
||||
@@ -604,7 +655,7 @@ iOS:
|
||||
|
||||
tvOS:
|
||||
* Added support for Apple TV
|
||||
* Added a hint SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION to control whether he Apple TV remote's joystick axes will automatically match the rotation of the remote.
|
||||
* Added a hint SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION to control whether he Apple TV remote's joystick axes will automatically match the rotation of the remote.
|
||||
|
||||
Android:
|
||||
* Fixed SDL not resizing window when Android screen resolution changes
|
||||
@@ -749,8 +800,8 @@ Linux:
|
||||
* Added experimental Wayland and Mir support, disabled by default
|
||||
|
||||
Android:
|
||||
* Joystick support (minimum SDK version required to build SDL is now 12,
|
||||
the required runtime version remains at 10, but on such devices joystick
|
||||
* Joystick support (minimum SDK version required to build SDL is now 12,
|
||||
the required runtime version remains at 10, but on such devices joystick
|
||||
support won't be available).
|
||||
* Hotplugging support for joysticks
|
||||
* Added a hint SDL_HINT_ACCELEROMETER_AS_JOYSTICK to control whether the accelerometer should be listed as a 3 axis joystick, which it will by default.
|
||||
@@ -803,7 +854,7 @@ iOS:
|
||||
|
||||
Android:
|
||||
IMPORTANT: You MUST get the updated SDLActivity.java to match C code
|
||||
* Moved EGL initialization to native code
|
||||
* Moved EGL initialization to native code
|
||||
* Fixed the accelerometer axis rotation relative to the device rotation
|
||||
* Fixed race conditions when handling the EGL context on pause/resume
|
||||
* Touch devices are available for enumeration immediately after init
|
||||
|
||||
@@ -7,47 +7,19 @@
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
1D3623EC0D0F72F000981E51 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
F3A497102555EE4800E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A4972F2555EE8A00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A497392555EEA900E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A497422555EEBE00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A497432555EEC400E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A497442555EECD00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A497452555EED500E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A497462555EEDF00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A4959B2555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A497482555EEEE00E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497472555EEEE00E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A497492555EF0B00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A4974A2555EF1200E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A4974B2555EF1B00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A4974C2555EF2000E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A4974D2555EF9500E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A4974E2555EF9F00E92A8B /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A495992555ED0500E92A8B /* libSDL2.a */; };
|
||||
F3A4974F2555EFA400E92A8B /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497382555EEA900E92A8B /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
F3A497592555EFC300E92A8B /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497582555EFC300E92A8B /* AVFoundation.framework */; };
|
||||
F3A497632555EFCF00E92A8B /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A497622555EFCF00E92A8B /* Metal.framework */; };
|
||||
F3F7590022AC5EC7001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
F3F7590122AC5F00001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
F3F7590222AC5F3D001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
F3F7590322AC5F71001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
F3F7590422AC5F8D001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
F3F7590522AC5FB3001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
F3F7590622AC5FD1001D97F2 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3F758FF22AC5EC7001D97F2 /* Metal.framework */; };
|
||||
FA30DEB01BBF5A8F009C397F /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
|
||||
FA30DEB11BBF5A93009C397F /* happy.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0080E26BC0500F39101 /* happy.c */; };
|
||||
FA30DEB31BBF5AD7009C397F /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CC0E43D19800F688B5 /* icon.bmp */; };
|
||||
FA30DEB41BBF5ADD009C397F /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
|
||||
FA30DEB61BBF5AE6009C397F /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
|
||||
FA30DEC81BBF5C14009C397F /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FA30DEC91BBF5C14009C397F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FA30DECA1BBF5C14009C397F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FA30DECB1BBF5C14009C397F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FA30DECC1BBF5C14009C397F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FA30DECD1BBF5C14009C397F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FA30DECE1BBF5C14009C397F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FA30DECF1BBF5C14009C397F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FA86C0371D9765BB009CB637 /* iOS Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */; };
|
||||
FA86C0381D9765BB009CB637 /* iOS Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */; };
|
||||
FA86C0391D9765BB009CB637 /* iOS Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */; };
|
||||
@@ -55,37 +27,6 @@
|
||||
FA86C03B1D9765BB009CB637 /* iOS Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */; };
|
||||
FA86C03C1D9765BB009CB637 /* iOS Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */; };
|
||||
FA86C03D1D9765BB009CB637 /* iOS Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */; };
|
||||
FA8B4BA31967070A00F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FA8B4BA41967071300F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FA8B4BA51967071A00F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FA8B4BA61967072100F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FA8B4BA71967072800F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FA8B4BA81967073400F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FA8B4BA91967073D00F8EB7C /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */; };
|
||||
FABA34D41D8B5E5600915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FABA34D61D8B5E5A00915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FABA34D91D8B5E7B00915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FABA34DA1D8B5E7F00915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FABA34DB1D8B5E8500915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FABA34DC1D8B5E8900915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FABA34DD1D8B5E8D00915323 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FABA34D31D8B5E5600915323 /* AVFoundation.framework */; };
|
||||
FAE0E96A1BAF96A00098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FAE0E96C1BAF96A90098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FAE0E96D1BAF96AF0098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FAE0E96E1BAF96B10098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FAE0E96F1BAF96B50098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FAE0E9701BAF96B80098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FAE0E9711BAF96BB0098DFA4 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE0E9691BAF96A00098DFA4 /* GameController.framework */; };
|
||||
FD15FD690E086911003BDF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FD15FD6A0E086911003BDF25 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FD15FD6B0E086911003BDF25 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FD15FD6C0E086911003BDF25 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FD15FD6D0E086911003BDF25 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FD5F9CE80E0E0741008E885B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FD5F9CE90E0E0741008E885B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FD5F9CEA0E0E0741008E885B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FD5F9CEB0E0E0741008E885B /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FD5F9CEC0E0E0741008E885B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FD77A00E0E26BC0500F39101 /* happy.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0080E26BC0500F39101 /* happy.c */; };
|
||||
FD77A0130E26BC0500F39101 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
|
||||
FD77A0160E26BC0500F39101 /* rectangles.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A00A0E26BC0500F39101 /* rectangles.c */; };
|
||||
@@ -116,51 +57,15 @@
|
||||
FDB651FA0E43D1F300F688B5 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
|
||||
FDB651FB0E43D1F300F688B5 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
|
||||
FDB651FD0E43D1F300F688B5 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
|
||||
FDB652020E43D1F300F688B5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FDB652030E43D1F300F688B5 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FDB652040E43D1F300F688B5 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FDB652050E43D1F300F688B5 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FDB652060E43D1F300F688B5 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FDB652070E43D1F300F688B5 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDB652080E43D1F300F688B5 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FDB652120E43D21A00F688B5 /* keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = FDB652110E43D21A00F688B5 /* keyboard.c */; };
|
||||
FDB652C70E43E25900F688B5 /* kromasky_16x16.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB652C60E43E25900F688B5 /* kromasky_16x16.bmp */; };
|
||||
FDB96ED40DEFC9C700FAF19F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FDB96EE00DEFC9DC00FAF19F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FDC202E10E107B1200ABAC90 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
|
||||
FDC202E60E107B1200ABAC90 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FDC202E70E107B1200ABAC90 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FDC202E80E107B1200ABAC90 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FDC202E90E107B1200ABAC90 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FDC202EA0E107B1200ABAC90 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FDC214870E26D78A00DDED23 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
|
||||
FDC52EC80E2843D6008D768C /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
|
||||
FDC52EC90E2843D6008D768C /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
|
||||
FDC52ECF0E2843D6008D768C /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
|
||||
FDC52ED40E2843D6008D768C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FDC52ED50E2843D6008D768C /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FDC52ED60E2843D6008D768C /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FDC52ED70E2843D6008D768C /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FDC52ED80E2843D6008D768C /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FDC52ED90E2843D6008D768C /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDC52EDA0E2843D6008D768C /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FDC52EE50E284410008D768C /* fireworks.c in Sources */ = {isa = PBXBuildFile; fileRef = FDC52EE40E284410008D768C /* fireworks.c */; };
|
||||
FDF0D6960E12D05400247964 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
|
||||
FDF0D69C0E12D05400247964 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
FDF0D69D0E12D05400247964 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
FDF0D69E0E12D05400247964 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
|
||||
FDF0D69F0E12D05400247964 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
|
||||
FDF0D6A00E12D05400247964 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
|
||||
FDF0D71E0E12D2AB00247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDF0D7230E12D31800247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FDF0D7950E12D52900247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDF0D7960E12D52900247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FDF0D7A70E12D53200247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDF0D7A80E12D53200247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FDF0D7A90E12D53500247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDF0D7AA0E12D53500247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
FDF0D7AB0E12D53800247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
|
||||
FDF0D7AC0E12D53800247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -234,47 +139,21 @@
|
||||
remoteGlobalIDString = BECDF6BE0761BA81005FE872;
|
||||
remoteInfo = "Standard DMG";
|
||||
};
|
||||
F3A495A42555ED0500E92A8B /* PBXContainerItemProxy */ = {
|
||||
F3C17D9128E4355900E1A26D /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = F3A495802555ED0400E92A8B /* SDL.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = A75FDB8C23E4C74400529352;
|
||||
remoteInfo = hidapi;
|
||||
};
|
||||
F3A495A62555ED0500E92A8B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = F3A495802555ED0400E92A8B /* SDL.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = A75FDB4923E399AC00529352;
|
||||
remoteInfo = "hidapi-iOS";
|
||||
};
|
||||
F3A495A82555ED0500E92A8B /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = F3A495802555ED0400E92A8B /* SDL.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = A75FDB6E23E3A2C900529352;
|
||||
remoteInfo = "hidapi-tvOS";
|
||||
remoteGlobalIDString = E2D187CF28A5673500D2B4F1;
|
||||
remoteInfo = "xcFramework-iOS";
|
||||
};
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||
1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
|
||||
1D6058910D05DD3D006BFB54 /* Rectangles.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rectangles.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
||||
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
F3A495802555ED0400E92A8B /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../../Xcode/SDL/SDL.xcodeproj; sourceTree = "<group>"; };
|
||||
F3A497382555EEA900E92A8B /* CoreHaptics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreHaptics.framework; path = System/Library/Frameworks/CoreHaptics.framework; sourceTree = SDKROOT; };
|
||||
F3A497472555EEEE00E92A8B /* CoreHaptics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreHaptics.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/CoreHaptics.framework; sourceTree = DEVELOPER_DIR; };
|
||||
F3A497582555EFC300E92A8B /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; };
|
||||
F3A497622555EFCF00E92A8B /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Metal.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS14.0.sdk/System/Library/Frameworks/Metal.framework; sourceTree = DEVELOPER_DIR; };
|
||||
F3F758FF22AC5EC7001D97F2 /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Metal.framework; path = System/Library/Frameworks/Metal.framework; sourceTree = SDKROOT; };
|
||||
F3C17D9F28E437C300E1A26D /* config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = config.xcconfig; sourceTree = "<group>"; };
|
||||
FA30DE961BBF59D9009C397F /* Happy-TV.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Happy-TV.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = "iOS Launch Screen.storyboard"; sourceTree = "<group>"; };
|
||||
FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMotion.framework; path = System/Library/Frameworks/CoreMotion.framework; sourceTree = SDKROOT; };
|
||||
FABA34D31D8B5E5600915323 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
|
||||
FABA34D71D8B5E7700915323 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS10.0.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; };
|
||||
FAE0E9691BAF96A00098DFA4 /* GameController.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GameController.framework; path = System/Library/Frameworks/GameController.framework; sourceTree = SDKROOT; };
|
||||
FD15FCB20E086866003BDF25 /* Happy.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Happy.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FD5F9BE40E0DEBEA008E885B /* Accel.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Accel.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FD77A0050E26BC0500F39101 /* accelerometer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = accelerometer.c; sourceTree = "<group>"; };
|
||||
@@ -298,14 +177,10 @@
|
||||
FDB6520C0E43D1F300F688B5 /* Keyboard.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Keyboard.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FDB652110E43D21A00F688B5 /* keyboard.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = keyboard.c; sourceTree = "<group>"; };
|
||||
FDB652C60E43E25900F688B5 /* kromasky_16x16.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = kromasky_16x16.bmp; sourceTree = "<group>"; };
|
||||
FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
|
||||
FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
|
||||
FDC202EE0E107B1200ABAC90 /* Touch.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Touch.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FDC52EDE0E2843D6008D768C /* Fireworks.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Fireworks.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FDC52EE40E284410008D768C /* fireworks.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fireworks.c; sourceTree = "<group>"; };
|
||||
FDF0D6A40E12D05400247964 /* Mixer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Mixer.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; };
|
||||
FDF0D7220E12D31800247964 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -314,18 +189,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A497102555EE4800E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDF0D7AC0E12D53800247964 /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34D41D8B5E5600915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDF0D7AB0E12D53800247964 /* CoreAudio.framework in Frameworks */,
|
||||
1D3623EC0D0F72F000981E51 /* CoreGraphics.framework in Frameworks */,
|
||||
F3A4974D2555EF9500E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA31967070A00F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */,
|
||||
FAE0E96A1BAF96A00098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590022AC5EC7001D97F2 /* Metal.framework in Frameworks */,
|
||||
FDB96ED40DEFC9C700FAF19F /* OpenGLES.framework in Frameworks */,
|
||||
FDB96EE00DEFC9DC00FAF19F /* QuartzCore.framework in Frameworks */,
|
||||
1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -334,17 +197,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A497462555EEDF00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FA30DEC91BBF5C14009C397F /* AudioToolbox.framework in Frameworks */,
|
||||
F3A497592555EFC300E92A8B /* AVFoundation.framework in Frameworks */,
|
||||
FA30DECF1BBF5C14009C397F /* CoreAudio.framework in Frameworks */,
|
||||
FA30DECC1BBF5C14009C397F /* CoreGraphics.framework in Frameworks */,
|
||||
F3A497482555EEEE00E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA30DECE1BBF5C14009C397F /* Foundation.framework in Frameworks */,
|
||||
FA30DEC81BBF5C14009C397F /* GameController.framework in Frameworks */,
|
||||
F3A497632555EFCF00E92A8B /* Metal.framework in Frameworks */,
|
||||
FA30DECA1BBF5C14009C397F /* QuartzCore.framework in Frameworks */,
|
||||
FA30DECB1BBF5C14009C397F /* OpenGLES.framework in Frameworks */,
|
||||
FA30DECD1BBF5C14009C397F /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -353,18 +205,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A497442555EECD00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDF0D7AA0E12D53500247964 /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34D61D8B5E5A00915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDF0D7A90E12D53500247964 /* CoreAudio.framework in Frameworks */,
|
||||
FD15FD6B0E086911003BDF25 /* CoreGraphics.framework in Frameworks */,
|
||||
F3A497452555EED500E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA41967071300F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
FD15FD690E086911003BDF25 /* Foundation.framework in Frameworks */,
|
||||
FAE0E96C1BAF96A90098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590122AC5F00001D97F2 /* Metal.framework in Frameworks */,
|
||||
FD15FD6C0E086911003BDF25 /* OpenGLES.framework in Frameworks */,
|
||||
FD15FD6D0E086911003BDF25 /* QuartzCore.framework in Frameworks */,
|
||||
FD15FD6A0E086911003BDF25 /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -373,18 +213,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A4972F2555EE8A00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDF0D7A80E12D53200247964 /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34D91D8B5E7B00915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDF0D7A70E12D53200247964 /* CoreAudio.framework in Frameworks */,
|
||||
FD5F9CEA0E0E0741008E885B /* CoreGraphics.framework in Frameworks */,
|
||||
F3A497392555EEA900E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA51967071A00F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
FD5F9CE80E0E0741008E885B /* Foundation.framework in Frameworks */,
|
||||
FAE0E96D1BAF96AF0098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590222AC5F3D001D97F2 /* Metal.framework in Frameworks */,
|
||||
FD5F9CEB0E0E0741008E885B /* OpenGLES.framework in Frameworks */,
|
||||
FD5F9CEC0E0E0741008E885B /* QuartzCore.framework in Frameworks */,
|
||||
FD5F9CE90E0E0741008E885B /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -393,18 +221,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A497492555EF0B00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDB652080E43D1F300F688B5 /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34DD1D8B5E8D00915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDB652070E43D1F300F688B5 /* CoreAudio.framework in Frameworks */,
|
||||
FDB652040E43D1F300F688B5 /* CoreGraphics.framework in Frameworks */,
|
||||
F3A4974A2555EF1200E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA91967073D00F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
FDB652020E43D1F300F688B5 /* Foundation.framework in Frameworks */,
|
||||
FAE0E9711BAF96BB0098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590622AC5FD1001D97F2 /* Metal.framework in Frameworks */,
|
||||
FDB652050E43D1F300F688B5 /* OpenGLES.framework in Frameworks */,
|
||||
FDB652060E43D1F300F688B5 /* QuartzCore.framework in Frameworks */,
|
||||
FDB652030E43D1F300F688B5 /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -413,18 +229,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A4974E2555EF9F00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDF0D7960E12D52900247964 /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34DA1D8B5E7F00915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDF0D7950E12D52900247964 /* CoreAudio.framework in Frameworks */,
|
||||
FDC202E80E107B1200ABAC90 /* CoreGraphics.framework in Frameworks */,
|
||||
F3A4974F2555EFA400E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA61967072100F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
FDC202E60E107B1200ABAC90 /* Foundation.framework in Frameworks */,
|
||||
FAE0E96E1BAF96B10098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590322AC5F71001D97F2 /* Metal.framework in Frameworks */,
|
||||
FDC202E90E107B1200ABAC90 /* OpenGLES.framework in Frameworks */,
|
||||
FDC202EA0E107B1200ABAC90 /* QuartzCore.framework in Frameworks */,
|
||||
FDC202E70E107B1200ABAC90 /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -433,18 +237,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A497422555EEBE00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDC52EDA0E2843D6008D768C /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34DC1D8B5E8900915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDC52ED90E2843D6008D768C /* CoreAudio.framework in Frameworks */,
|
||||
FDC52ED60E2843D6008D768C /* CoreGraphics.framework in Frameworks */,
|
||||
F3A497432555EEC400E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA81967073400F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
FDC52ED40E2843D6008D768C /* Foundation.framework in Frameworks */,
|
||||
FAE0E9701BAF96B80098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590522AC5FB3001D97F2 /* Metal.framework in Frameworks */,
|
||||
FDC52ED70E2843D6008D768C /* OpenGLES.framework in Frameworks */,
|
||||
FDC52ED80E2843D6008D768C /* QuartzCore.framework in Frameworks */,
|
||||
FDC52ED50E2843D6008D768C /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -453,18 +245,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F3A4974B2555EF1B00E92A8B /* libSDL2.a in Frameworks */,
|
||||
FDF0D7230E12D31800247964 /* AudioToolbox.framework in Frameworks */,
|
||||
FABA34DB1D8B5E8500915323 /* AVFoundation.framework in Frameworks */,
|
||||
FDF0D71E0E12D2AB00247964 /* CoreAudio.framework in Frameworks */,
|
||||
FDF0D69E0E12D05400247964 /* CoreGraphics.framework in Frameworks */,
|
||||
F3A4974C2555EF2000E92A8B /* CoreHaptics.framework in Frameworks */,
|
||||
FA8B4BA71967072800F8EB7C /* CoreMotion.framework in Frameworks */,
|
||||
FDF0D69C0E12D05400247964 /* Foundation.framework in Frameworks */,
|
||||
FAE0E96F1BAF96B50098DFA4 /* GameController.framework in Frameworks */,
|
||||
F3F7590422AC5F8D001D97F2 /* Metal.framework in Frameworks */,
|
||||
FDF0D69F0E12D05400247964 /* OpenGLES.framework in Frameworks */,
|
||||
FDF0D6A00E12D05400247964 /* QuartzCore.framework in Frameworks */,
|
||||
FDF0D69D0E12D05400247964 /* UIKit.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -489,11 +269,11 @@
|
||||
29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F3C17D9F28E437C300E1A26D /* config.xcconfig */,
|
||||
F3A495802555ED0400E92A8B /* SDL.xcodeproj */,
|
||||
FA86C0361D9765BA009CB637 /* iOS Launch Screen.storyboard */,
|
||||
FD77A0040E26BC0500F39101 /* src */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */,
|
||||
19C28FACFE9D520D11CA2CBB /* Products */,
|
||||
);
|
||||
name = CustomTemplate;
|
||||
@@ -505,40 +285,17 @@
|
||||
FDB651C30E43D19800F688B5 /* data */,
|
||||
FD787AA00E22A5CC003E8E36 /* Default.png */,
|
||||
FD925B180E0F276600E92347 /* Icon.png */,
|
||||
8D1107310486CEB800E47090 /* Info.plist */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F3A497622555EFCF00E92A8B /* Metal.framework */,
|
||||
F3A497582555EFC300E92A8B /* AVFoundation.framework */,
|
||||
F3A497382555EEA900E92A8B /* CoreHaptics.framework */,
|
||||
F3A497472555EEEE00E92A8B /* CoreHaptics.framework */,
|
||||
F3F758FF22AC5EC7001D97F2 /* Metal.framework */,
|
||||
FABA34D71D8B5E7700915323 /* AVFoundation.framework */,
|
||||
FABA34D31D8B5E5600915323 /* AVFoundation.framework */,
|
||||
FAE0E9691BAF96A00098DFA4 /* GameController.framework */,
|
||||
FA8B4BA21967070A00F8EB7C /* CoreMotion.framework */,
|
||||
FDF0D7220E12D31800247964 /* AudioToolbox.framework */,
|
||||
FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */,
|
||||
FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */,
|
||||
1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */,
|
||||
1DF5F4DF0D08C38300B7A737 /* UIKit.framework */,
|
||||
1D30AB110D05D00D00671497 /* Foundation.framework */,
|
||||
FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F3A495812555ED0400E92A8B /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F3A495912555ED0500E92A8B /* SDL2.framework */,
|
||||
F3A495932555ED0500E92A8B /* SDL2.framework */,
|
||||
F3A495952555ED0500E92A8B /* SDL2.framework */,
|
||||
F3C17D9228E4355900E1A26D /* SDL2.framework */,
|
||||
F3A495972555ED0500E92A8B /* libSDL2.a */,
|
||||
F3A495992555ED0500E92A8B /* libSDL2.a */,
|
||||
F3A4959B2555ED0500E92A8B /* libSDL2.a */,
|
||||
@@ -546,9 +303,6 @@
|
||||
F3A4959F2555ED0500E92A8B /* libSDL2.dylib */,
|
||||
F3A495A12555ED0500E92A8B /* libSDL2.dylib */,
|
||||
F3A495A32555ED0500E92A8B /* SDL2 */,
|
||||
F3A495A52555ED0500E92A8B /* hidapi.framework */,
|
||||
F3A495A72555ED0500E92A8B /* hidapi.framework */,
|
||||
F3A495A92555ED0500E92A8B /* hidapi.framework */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@@ -881,25 +635,11 @@
|
||||
remoteRef = F3A495A22555ED0500E92A8B /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
F3A495A52555ED0500E92A8B /* hidapi.framework */ = {
|
||||
F3C17D9228E4355900E1A26D /* SDL2.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = hidapi.framework;
|
||||
remoteRef = F3A495A42555ED0500E92A8B /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
F3A495A72555ED0500E92A8B /* hidapi.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = hidapi.framework;
|
||||
remoteRef = F3A495A62555ED0500E92A8B /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
F3A495A92555ED0500E92A8B /* hidapi.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = hidapi.framework;
|
||||
remoteRef = F3A495A82555ED0500E92A8B /* PBXContainerItemProxy */;
|
||||
path = SDL2.framework;
|
||||
remoteRef = F3C17D9128E4355900E1A26D /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
/* End PBXReferenceProxy section */
|
||||
@@ -1077,8 +817,6 @@
|
||||
1D6058940D05DD3E006BFB54 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Rectangles;
|
||||
PRODUCT_NAME = Rectangles;
|
||||
};
|
||||
name = Debug;
|
||||
@@ -1086,76 +824,56 @@
|
||||
1D6058950D05DD3E006BFB54 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Rectangles;
|
||||
PRODUCT_NAME = Rectangles;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
C01FCF4F08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = F3C17D9F28E437C300E1A26D /* config.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
HEADER_SEARCH_PATHS = ../../include;
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
|
||||
MARKETING_VERSION = 1.0;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
PRELINK_LIBS = "";
|
||||
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.libsdl.$(PRODUCT_NAME)";
|
||||
SDKROOT = iphoneos;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF5008A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = F3C17D9F28E437C300E1A26D /* config.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
HEADER_SEARCH_PATHS = ../../include;
|
||||
PRELINK_LIBS = "";
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks";
|
||||
MARKETING_VERSION = 1.0;
|
||||
OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.libsdl.$(PRODUCT_NAME)";
|
||||
SDKROOT = iphoneos;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FA30DEA71BBF59D9009C397F /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.yourcompany.Happy-TV";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = appletvos;
|
||||
TARGETED_DEVICE_FAMILY = 3;
|
||||
@@ -1166,164 +884,94 @@
|
||||
FA30DEA81BBF59D9009C397F /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.yourcompany.Happy-TV";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = appletvos;
|
||||
TARGETED_DEVICE_FAMILY = 3;
|
||||
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FD15FCB50E086866003BDF25 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Happy;
|
||||
PRODUCT_NAME = Happy;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FD15FCB60E086866003BDF25 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Happy;
|
||||
PRODUCT_NAME = Happy;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FD5F9BE70E0DEBEB008E885B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Accel;
|
||||
PRODUCT_NAME = Accel;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FD5F9BE80E0DEBEB008E885B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Accel;
|
||||
PRODUCT_NAME = Accel;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FDB6520A0E43D1F300F688B5 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Keyboard;
|
||||
PRODUCT_NAME = Keyboard;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FDB6520B0E43D1F300F688B5 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Keyboard;
|
||||
PRODUCT_NAME = Keyboard;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FDC202EC0E107B1200ABAC90 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Touch;
|
||||
PRODUCT_NAME = Touch;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FDC202ED0E107B1200ABAC90 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Touch;
|
||||
PRODUCT_NAME = Touch;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FDC52EDC0E2843D6008D768C /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Fireworks;
|
||||
PRODUCT_NAME = Fireworks;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FDC52EDD0E2843D6008D768C /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Fireworks;
|
||||
PRODUCT_NAME = Fireworks;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FDF0D6A20E12D05400247964 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Mixer;
|
||||
PRODUCT_NAME = Mixer;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FDF0D6A30E12D05400247964 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.Mixer;
|
||||
PRODUCT_NAME = Mixer;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
||||
14
Xcode-iOS/Demos/config.xcconfig
Normal file
14
Xcode-iOS/Demos/config.xcconfig
Normal file
@@ -0,0 +1,14 @@
|
||||
//
|
||||
// config.xcconfig
|
||||
// SDL tests
|
||||
//
|
||||
|
||||
// Configuration settings file format documentation can be found at:
|
||||
// https://help.apple.com/xcode/#/dev745c5c974
|
||||
|
||||
// Include any optional config for this build
|
||||
#include? "build.xcconfig"
|
||||
|
||||
CONFIG_FRAMEWORK_LDFLAGS[sdk=macos*] = $(inherited) -framework SDL2 -framework AudioToolbox -framework Carbon -framework Cocoa -framework CoreAudio -framework CoreHaptics -framework CoreVideo -framework ForceFeedback -framework GameController -framework IOKit -framework Metal
|
||||
CONFIG_FRAMEWORK_LDFLAGS[sdk=iphone*] = $(inherited) -framework AVFoundation -framework AudioToolbox -framework CoreGraphics -framework CoreHaptics -framework CoreMotion -framework Foundation -framework GameController -framework Metal -framework OpenGLES -framework QuartzCore -framework UIKit
|
||||
CONFIG_FRAMEWORK_LDFLAGS[sdk=appletv*] = $(inherited) -framework AVFoundation -framework AudioToolbox -framework CoreGraphics -framework CoreHaptics -framework Foundation -framework GameController -framework Metal -framework OpenGLES -framework QuartzCore -framework UIKit
|
||||
@@ -127,7 +127,7 @@ initializeTextures(SDL_Renderer *renderer)
|
||||
|
||||
/* create ship texture from surface */
|
||||
ship = SDL_CreateTextureFromSurface(renderer, bmp_surface);
|
||||
if (ship == 0) {
|
||||
if (ship == NULL) {
|
||||
fatalError("could not create ship texture");
|
||||
}
|
||||
SDL_SetTextureBlendMode(ship, SDL_BLENDMODE_BLEND);
|
||||
@@ -145,7 +145,7 @@ initializeTextures(SDL_Renderer *renderer)
|
||||
}
|
||||
/* create space texture from surface */
|
||||
space = SDL_CreateTextureFromSurface(renderer, bmp_surface);
|
||||
if (space == 0) {
|
||||
if (space == NULL) {
|
||||
fatalError("could not create space texture");
|
||||
}
|
||||
SDL_FreeSurface(bmp_surface);
|
||||
|
||||
@@ -84,14 +84,16 @@ stepParticles(double deltaTime)
|
||||
/* is the particle actually active, or is it marked for deletion? */
|
||||
if (curr->isActive) {
|
||||
/* is the particle off the screen? */
|
||||
if (curr->y > screen_h)
|
||||
if (curr->y > screen_h) {
|
||||
curr->isActive = 0;
|
||||
else if (curr->y < 0)
|
||||
} else if (curr->y < 0) {
|
||||
curr->isActive = 0;
|
||||
if (curr->x > screen_w)
|
||||
}
|
||||
if (curr->x > screen_w) {
|
||||
curr->isActive = 0;
|
||||
else if (curr->x < 0)
|
||||
} else if (curr->x < 0) {
|
||||
curr->isActive = 0;
|
||||
}
|
||||
|
||||
/* step velocity, then step position */
|
||||
curr->yvel += ACCEL * deltaMilliseconds;
|
||||
@@ -133,15 +135,17 @@ stepParticles(double deltaTime)
|
||||
}
|
||||
|
||||
/* if we're a dust particle, shrink our size */
|
||||
if (curr->type == dust)
|
||||
if (curr->type == dust) {
|
||||
curr->size -= deltaMilliseconds * 0.010f;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* if we're still active, pack ourselves in the array next
|
||||
to the last active guy (pack the array tightly) */
|
||||
if (curr->isActive)
|
||||
if (curr->isActive) {
|
||||
*(slot++) = *curr;
|
||||
}
|
||||
} /* endif (curr->isActive) */
|
||||
curr++;
|
||||
}
|
||||
@@ -188,8 +192,9 @@ explodeEmitter(struct particle *emitter)
|
||||
int i;
|
||||
for (i = 0; i < 200; i++) {
|
||||
|
||||
if (num_active_particles >= MAX_PARTICLES)
|
||||
if (num_active_particles >= MAX_PARTICLES) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* come up with a random angle and speed for new particle */
|
||||
float theta = randomFloat(0, 2.0f * 3.141592);
|
||||
@@ -226,8 +231,9 @@ void
|
||||
spawnTrailFromEmitter(struct particle *emitter)
|
||||
{
|
||||
|
||||
if (num_active_particles >= MAX_PARTICLES)
|
||||
if (num_active_particles >= MAX_PARTICLES) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* select the particle at the slot at the end of our array */
|
||||
struct particle *p = &particles[num_active_particles];
|
||||
@@ -262,8 +268,9 @@ void
|
||||
spawnEmitterParticle(GLfloat x, GLfloat y)
|
||||
{
|
||||
|
||||
if (num_active_particles >= MAX_PARTICLES)
|
||||
if (num_active_particles >= MAX_PARTICLES) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* find particle at endpoint of array */
|
||||
struct particle *p = &particles[num_active_particles];
|
||||
|
||||
@@ -117,7 +117,7 @@ initializeTexture(SDL_Renderer *renderer)
|
||||
|
||||
/* convert RGBA surface to texture */
|
||||
texture = SDL_CreateTextureFromSurface(renderer, bmp_surface);
|
||||
if (texture == 0) {
|
||||
if (texture == NULL) {
|
||||
fatalError("could not create texture");
|
||||
}
|
||||
SDL_SetTextureBlendMode(texture, SDL_BLENDMODE_BLEND);
|
||||
|
||||
@@ -165,7 +165,7 @@ loadFont(void)
|
||||
{
|
||||
SDL_Surface *surface = SDL_LoadBMP("kromasky_16x16.bmp");
|
||||
|
||||
if (!surface) {
|
||||
if (surface == NULL) {
|
||||
printf("Error loading bitmap: %s\n", SDL_GetError());
|
||||
return 0;
|
||||
} else {
|
||||
@@ -183,7 +183,7 @@ loadFont(void)
|
||||
SDL_BlitSurface(surface, NULL, converted, NULL);
|
||||
/* create our texture */
|
||||
texture = SDL_CreateTextureFromSurface(renderer, converted);
|
||||
if (texture == 0) {
|
||||
if (texture == NULL) {
|
||||
printf("texture creation failed: %s\n", SDL_GetError());
|
||||
} else {
|
||||
/* set blend mode for our texture */
|
||||
|
||||
@@ -207,9 +207,9 @@ playSound(struct sound *s)
|
||||
break;
|
||||
}
|
||||
/* if this channel's sound is older than the oldest so far, set it to oldest */
|
||||
if (mixer.channels[i].timestamp <
|
||||
mixer.channels[oldest_channel].timestamp)
|
||||
if (mixer.channels[i].timestamp < mixer.channels[oldest_channel].timestamp) {
|
||||
oldest_channel = i;
|
||||
}
|
||||
}
|
||||
|
||||
/* no empty channels, take the oldest one */
|
||||
|
||||
@@ -58,11 +58,11 @@ main(int argc, char *argv[])
|
||||
|
||||
/* create window and renderer */
|
||||
window = SDL_CreateWindow(NULL, 0, 0, 320, 480, SDL_WINDOW_ALLOW_HIGHDPI);
|
||||
if (window == 0) {
|
||||
if (window == NULL) {
|
||||
fatalError("Could not initialize Window");
|
||||
}
|
||||
renderer = SDL_CreateRenderer(window, -1, 0);
|
||||
if (!renderer) {
|
||||
if (renderer == NULL) {
|
||||
fatalError("Could not create renderer");
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ initializeTexture(SDL_Renderer *renderer)
|
||||
brush =
|
||||
SDL_CreateTextureFromSurface(renderer, bmp_surface);
|
||||
SDL_FreeSurface(bmp_surface);
|
||||
if (brush == 0) {
|
||||
if (brush == NULL) {
|
||||
fatalError("could not create brush texture");
|
||||
}
|
||||
/* additive blending -- laying strokes on top of eachother makes them brighter */
|
||||
|
||||
@@ -1,422 +0,0 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
AA1EE462176059AB0029C7A5 /* SDL_test_common.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE454176059AB0029C7A5 /* SDL_test_common.c */; };
|
||||
AA1EE463176059AB0029C7A5 /* SDL_test_compare.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE455176059AB0029C7A5 /* SDL_test_compare.c */; };
|
||||
AA1EE464176059AB0029C7A5 /* SDL_test_crc32.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE456176059AB0029C7A5 /* SDL_test_crc32.c */; };
|
||||
AA1EE465176059AB0029C7A5 /* SDL_test_font.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE457176059AB0029C7A5 /* SDL_test_font.c */; };
|
||||
AA1EE466176059AB0029C7A5 /* SDL_test_fuzzer.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE458176059AB0029C7A5 /* SDL_test_fuzzer.c */; };
|
||||
AA1EE467176059AB0029C7A5 /* SDL_test_harness.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE459176059AB0029C7A5 /* SDL_test_harness.c */; };
|
||||
AA1EE468176059AB0029C7A5 /* SDL_test_imageBlit.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45A176059AB0029C7A5 /* SDL_test_imageBlit.c */; };
|
||||
AA1EE469176059AB0029C7A5 /* SDL_test_imageBlitBlend.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45B176059AB0029C7A5 /* SDL_test_imageBlitBlend.c */; };
|
||||
AA1EE46A176059AB0029C7A5 /* SDL_test_imageFace.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45C176059AB0029C7A5 /* SDL_test_imageFace.c */; };
|
||||
AA1EE46B176059AB0029C7A5 /* SDL_test_imagePrimitives.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45D176059AB0029C7A5 /* SDL_test_imagePrimitives.c */; };
|
||||
AA1EE46C176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45E176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c */; };
|
||||
AA1EE46D176059AB0029C7A5 /* SDL_test_log.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */; };
|
||||
AA1EE46E176059AB0029C7A5 /* SDL_test_md5.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */; };
|
||||
AA1EE46F176059AB0029C7A5 /* SDL_test_random.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE461176059AB0029C7A5 /* SDL_test_random.c */; };
|
||||
AAF030011F9009B100B9A9FB /* SDL_test_memory.c in Sources */ = {isa = PBXBuildFile; fileRef = AAF02FFF1F9009B100B9A9FB /* SDL_test_memory.c */; };
|
||||
AAF030021F9009B100B9A9FB /* SDL_test_assert.c in Sources */ = {isa = PBXBuildFile; fileRef = AAF030001F9009B100B9A9FB /* SDL_test_assert.c */; };
|
||||
FA3D99011BC4E5BC002C96C8 /* SDL_test_common.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE454176059AB0029C7A5 /* SDL_test_common.c */; };
|
||||
FA3D99021BC4E5BC002C96C8 /* SDL_test_compare.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE455176059AB0029C7A5 /* SDL_test_compare.c */; };
|
||||
FA3D99031BC4E5BC002C96C8 /* SDL_test_crc32.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE456176059AB0029C7A5 /* SDL_test_crc32.c */; };
|
||||
FA3D99041BC4E5BC002C96C8 /* SDL_test_font.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE457176059AB0029C7A5 /* SDL_test_font.c */; };
|
||||
FA3D99051BC4E5BC002C96C8 /* SDL_test_fuzzer.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE458176059AB0029C7A5 /* SDL_test_fuzzer.c */; };
|
||||
FA3D99061BC4E5BC002C96C8 /* SDL_test_harness.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE459176059AB0029C7A5 /* SDL_test_harness.c */; };
|
||||
FA3D99071BC4E5BC002C96C8 /* SDL_test_imageBlit.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45A176059AB0029C7A5 /* SDL_test_imageBlit.c */; };
|
||||
FA3D99081BC4E5BC002C96C8 /* SDL_test_imageBlitBlend.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45B176059AB0029C7A5 /* SDL_test_imageBlitBlend.c */; };
|
||||
FA3D99091BC4E5BC002C96C8 /* SDL_test_imageFace.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45C176059AB0029C7A5 /* SDL_test_imageFace.c */; };
|
||||
FA3D990A1BC4E5BC002C96C8 /* SDL_test_imagePrimitives.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45D176059AB0029C7A5 /* SDL_test_imagePrimitives.c */; };
|
||||
FA3D990B1BC4E5BC002C96C8 /* SDL_test_imagePrimitivesBlend.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45E176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c */; };
|
||||
FA3D990C1BC4E5BC002C96C8 /* SDL_test_log.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */; };
|
||||
FA3D990D1BC4E5BC002C96C8 /* SDL_test_md5.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */; };
|
||||
FA3D990E1BC4E5BC002C96C8 /* SDL_test_random.c in Sources */ = {isa = PBXBuildFile; fileRef = AA1EE461176059AB0029C7A5 /* SDL_test_random.c */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
FA3D98F61BC4E5A2002C96C8 /* CopyFiles */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "include/$(PRODUCT_NAME)";
|
||||
dstSubfolderSpec = 16;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
AA1EE4461760589B0029C7A5 /* libSDL2test.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL2test.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
AA1EE454176059AB0029C7A5 /* SDL_test_common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_common.c; sourceTree = "<group>"; };
|
||||
AA1EE455176059AB0029C7A5 /* SDL_test_compare.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_compare.c; sourceTree = "<group>"; };
|
||||
AA1EE456176059AB0029C7A5 /* SDL_test_crc32.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_crc32.c; sourceTree = "<group>"; };
|
||||
AA1EE457176059AB0029C7A5 /* SDL_test_font.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_font.c; sourceTree = "<group>"; };
|
||||
AA1EE458176059AB0029C7A5 /* SDL_test_fuzzer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_fuzzer.c; sourceTree = "<group>"; };
|
||||
AA1EE459176059AB0029C7A5 /* SDL_test_harness.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_harness.c; sourceTree = "<group>"; };
|
||||
AA1EE45A176059AB0029C7A5 /* SDL_test_imageBlit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_imageBlit.c; sourceTree = "<group>"; };
|
||||
AA1EE45B176059AB0029C7A5 /* SDL_test_imageBlitBlend.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_imageBlitBlend.c; sourceTree = "<group>"; };
|
||||
AA1EE45C176059AB0029C7A5 /* SDL_test_imageFace.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_imageFace.c; sourceTree = "<group>"; };
|
||||
AA1EE45D176059AB0029C7A5 /* SDL_test_imagePrimitives.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_imagePrimitives.c; sourceTree = "<group>"; };
|
||||
AA1EE45E176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_imagePrimitivesBlend.c; sourceTree = "<group>"; };
|
||||
AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_log.c; sourceTree = "<group>"; };
|
||||
AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_md5.c; sourceTree = "<group>"; };
|
||||
AA1EE461176059AB0029C7A5 /* SDL_test_random.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_random.c; sourceTree = "<group>"; };
|
||||
AAF02FFF1F9009B100B9A9FB /* SDL_test_memory.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_memory.c; sourceTree = "<group>"; };
|
||||
AAF030001F9009B100B9A9FB /* SDL_test_assert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_test_assert.c; sourceTree = "<group>"; };
|
||||
FA3D98F81BC4E5A2002C96C8 /* libSDL2test-TV.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libSDL2test-TV.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
AA1EE4431760589B0029C7A5 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
FA3D98F51BC4E5A2002C96C8 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
AA1EE43D1760589B0029C7A5 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
AA1EE453176059770029C7A5 /* Library Source */,
|
||||
AA1EE4471760589B0029C7A5 /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
AA1EE4471760589B0029C7A5 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
AA1EE4461760589B0029C7A5 /* libSDL2test.a */,
|
||||
FA3D98F81BC4E5A2002C96C8 /* libSDL2test-TV.a */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
AA1EE453176059770029C7A5 /* Library Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
AAF030001F9009B100B9A9FB /* SDL_test_assert.c */,
|
||||
AA1EE454176059AB0029C7A5 /* SDL_test_common.c */,
|
||||
AA1EE455176059AB0029C7A5 /* SDL_test_compare.c */,
|
||||
AA1EE456176059AB0029C7A5 /* SDL_test_crc32.c */,
|
||||
AA1EE457176059AB0029C7A5 /* SDL_test_font.c */,
|
||||
AA1EE458176059AB0029C7A5 /* SDL_test_fuzzer.c */,
|
||||
AA1EE459176059AB0029C7A5 /* SDL_test_harness.c */,
|
||||
AA1EE45A176059AB0029C7A5 /* SDL_test_imageBlit.c */,
|
||||
AA1EE45B176059AB0029C7A5 /* SDL_test_imageBlitBlend.c */,
|
||||
AA1EE45C176059AB0029C7A5 /* SDL_test_imageFace.c */,
|
||||
AA1EE45D176059AB0029C7A5 /* SDL_test_imagePrimitives.c */,
|
||||
AA1EE45E176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c */,
|
||||
AA1EE45F176059AB0029C7A5 /* SDL_test_log.c */,
|
||||
AA1EE460176059AB0029C7A5 /* SDL_test_md5.c */,
|
||||
AAF02FFF1F9009B100B9A9FB /* SDL_test_memory.c */,
|
||||
AA1EE461176059AB0029C7A5 /* SDL_test_random.c */,
|
||||
);
|
||||
name = "Library Source";
|
||||
path = ../../src/test;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
AA1EE4441760589B0029C7A5 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
AA1EE4451760589B0029C7A5 /* SDL2test */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = AA1EE44A1760589B0029C7A5 /* Build configuration list for PBXNativeTarget "SDL2test" */;
|
||||
buildPhases = (
|
||||
AA1EE4421760589B0029C7A5 /* Sources */,
|
||||
AA1EE4431760589B0029C7A5 /* Frameworks */,
|
||||
AA1EE4441760589B0029C7A5 /* Headers */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SDL2test;
|
||||
productName = SDL2test;
|
||||
productReference = AA1EE4461760589B0029C7A5 /* libSDL2test.a */;
|
||||
productType = "com.apple.product-type.library.static";
|
||||
};
|
||||
FA3D98F71BC4E5A2002C96C8 /* SDL2test-TV */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = FA3D99001BC4E5A3002C96C8 /* Build configuration list for PBXNativeTarget "SDL2test-TV" */;
|
||||
buildPhases = (
|
||||
FA3D98F41BC4E5A2002C96C8 /* Sources */,
|
||||
FA3D98F51BC4E5A2002C96C8 /* Frameworks */,
|
||||
FA3D98F61BC4E5A2002C96C8 /* CopyFiles */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = "SDL2test-TV";
|
||||
productName = "SDL2test-TV";
|
||||
productReference = FA3D98F81BC4E5A2002C96C8 /* libSDL2test-TV.a */;
|
||||
productType = "com.apple.product-type.library.static";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
AA1EE43E1760589B0029C7A5 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0460;
|
||||
ORGANIZATIONNAME = "Sam Lantinga";
|
||||
TargetAttributes = {
|
||||
FA3D98F71BC4E5A2002C96C8 = {
|
||||
CreatedOnToolsVersion = 7.1;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = AA1EE4411760589B0029C7A5 /* Build configuration list for PBXProject "SDL2test" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = AA1EE43D1760589B0029C7A5;
|
||||
productRefGroup = AA1EE4471760589B0029C7A5 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
AA1EE4451760589B0029C7A5 /* SDL2test */,
|
||||
FA3D98F71BC4E5A2002C96C8 /* SDL2test-TV */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
AA1EE4421760589B0029C7A5 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
AA1EE462176059AB0029C7A5 /* SDL_test_common.c in Sources */,
|
||||
AA1EE463176059AB0029C7A5 /* SDL_test_compare.c in Sources */,
|
||||
AA1EE464176059AB0029C7A5 /* SDL_test_crc32.c in Sources */,
|
||||
AA1EE465176059AB0029C7A5 /* SDL_test_font.c in Sources */,
|
||||
AA1EE466176059AB0029C7A5 /* SDL_test_fuzzer.c in Sources */,
|
||||
AAF030021F9009B100B9A9FB /* SDL_test_assert.c in Sources */,
|
||||
AA1EE467176059AB0029C7A5 /* SDL_test_harness.c in Sources */,
|
||||
AA1EE468176059AB0029C7A5 /* SDL_test_imageBlit.c in Sources */,
|
||||
AA1EE469176059AB0029C7A5 /* SDL_test_imageBlitBlend.c in Sources */,
|
||||
AA1EE46A176059AB0029C7A5 /* SDL_test_imageFace.c in Sources */,
|
||||
AA1EE46B176059AB0029C7A5 /* SDL_test_imagePrimitives.c in Sources */,
|
||||
AA1EE46C176059AB0029C7A5 /* SDL_test_imagePrimitivesBlend.c in Sources */,
|
||||
AAF030011F9009B100B9A9FB /* SDL_test_memory.c in Sources */,
|
||||
AA1EE46D176059AB0029C7A5 /* SDL_test_log.c in Sources */,
|
||||
AA1EE46E176059AB0029C7A5 /* SDL_test_md5.c in Sources */,
|
||||
AA1EE46F176059AB0029C7A5 /* SDL_test_random.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
FA3D98F41BC4E5A2002C96C8 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
FA3D99011BC4E5BC002C96C8 /* SDL_test_common.c in Sources */,
|
||||
FA3D99021BC4E5BC002C96C8 /* SDL_test_compare.c in Sources */,
|
||||
FA3D99031BC4E5BC002C96C8 /* SDL_test_crc32.c in Sources */,
|
||||
FA3D99041BC4E5BC002C96C8 /* SDL_test_font.c in Sources */,
|
||||
FA3D99051BC4E5BC002C96C8 /* SDL_test_fuzzer.c in Sources */,
|
||||
FA3D99061BC4E5BC002C96C8 /* SDL_test_harness.c in Sources */,
|
||||
FA3D99071BC4E5BC002C96C8 /* SDL_test_imageBlit.c in Sources */,
|
||||
FA3D99081BC4E5BC002C96C8 /* SDL_test_imageBlitBlend.c in Sources */,
|
||||
FA3D99091BC4E5BC002C96C8 /* SDL_test_imageFace.c in Sources */,
|
||||
FA3D990A1BC4E5BC002C96C8 /* SDL_test_imagePrimitives.c in Sources */,
|
||||
FA3D990B1BC4E5BC002C96C8 /* SDL_test_imagePrimitivesBlend.c in Sources */,
|
||||
FA3D990C1BC4E5BC002C96C8 /* SDL_test_log.c in Sources */,
|
||||
FA3D990D1BC4E5BC002C96C8 /* SDL_test_md5.c in Sources */,
|
||||
FA3D990E1BC4E5BC002C96C8 /* SDL_test_random.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
AA1EE4481760589B0029C7A5 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = ../../include;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.8;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
AA1EE4491760589B0029C7A5 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = ../../include;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.8;
|
||||
SDKROOT = iphoneos;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
AA1EE44B1760589B0029C7A5 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
EXECUTABLE_PREFIX = lib;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
AA1EE44C1760589B0029C7A5 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
EXECUTABLE_PREFIX = lib;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FA3D98FE1BC4E5A3002C96C8 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
OTHER_LDFLAGS = "-ObjC";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = appletvos;
|
||||
SKIP_INSTALL = YES;
|
||||
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
FA3D98FF1BC4E5A3002C96C8 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
OTHER_LDFLAGS = "-ObjC";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = appletvos;
|
||||
SKIP_INSTALL = YES;
|
||||
TVOS_DEPLOYMENT_TARGET = 9.0;
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
AA1EE4411760589B0029C7A5 /* Build configuration list for PBXProject "SDL2test" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
AA1EE4481760589B0029C7A5 /* Debug */,
|
||||
AA1EE4491760589B0029C7A5 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
AA1EE44A1760589B0029C7A5 /* Build configuration list for PBXNativeTarget "SDL2test" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
AA1EE44B1760589B0029C7A5 /* Debug */,
|
||||
AA1EE44C1760589B0029C7A5 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
FA3D99001BC4E5A3002C96C8 /* Build configuration list for PBXNativeTarget "SDL2test-TV" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
FA3D98FE1BC4E5A3002C96C8 /* Debug */,
|
||||
FA3D98FF1BC4E5A3002C96C8 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = AA1EE43E1760589B0029C7A5 /* Project object */;
|
||||
}
|
||||
@@ -1,34 +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>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.yourcompany.${PRODUCT_NAME}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||
<true/>
|
||||
<key>NSBluetoothAlwaysUsageDescription</key>
|
||||
<string>Steam Link would like to use Bluetooth controllers for input.</string>
|
||||
<key>NSBluetoothPeripheralUsageDescription</key>
|
||||
<string>Steam Link would like to use Bluetooth controllers for input.</string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,11 +0,0 @@
|
||||
TestiPhoneOS.xcodeproj contains targets to compile many of the SDL test programs for iPhone OS. Most of these test programs work fine, with the following exceptions:
|
||||
|
||||
testthread:
|
||||
SIGTERM kills the process immediately without executing the 'kill' function. The posix standard says this shouldn't happen. Apple seems intent on having iPhone apps exit promptly when the user requests it, so maybe that's why(?)
|
||||
|
||||
testlock:
|
||||
Locks appear to work, but there doesn't appear to be a simple way to send the process SIGINT.
|
||||
|
||||
testsprite2:
|
||||
SDL_CreateTextureFromSurface requests an ARGB pixel format, but iPhone's SDL video driver only supports ABGR.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -19,10 +19,10 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>2.24.1</string>
|
||||
<string>2.28.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>SDLX</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.24.1</string>
|
||||
<string>2.28.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -277,7 +277,6 @@
|
||||
A75FCD9823E25AB700529352 /* SDL_rotate.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8FE23E2514000DCD162 /* SDL_rotate.h */; };
|
||||
A75FCD9923E25AB700529352 /* SDL_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557E61595D4D800BBD41B /* SDL_platform.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
A75FCD9A23E25AB700529352 /* SDL_power.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557E71595D4D800BBD41B /* SDL_power.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
A75FCD9B23E25AB700529352 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A75FCD9D23E25AB700529352 /* scancodes_darwin.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A93423E2514000DCD162 /* scancodes_darwin.h */; };
|
||||
A75FCD9E23E25AB700529352 /* controller_type.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A7D923E2513E00DCD162 /* controller_type.h */; };
|
||||
A75FCDA023E25AB700529352 /* SDL_uikitclipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A62123E2513D00DCD162 /* SDL_uikitclipboard.h */; };
|
||||
@@ -491,7 +490,6 @@
|
||||
A75FCE8823E25AB700529352 /* SDL_syshaptic.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5C423E2513D00DCD162 /* SDL_syshaptic.c */; };
|
||||
A75FCE8923E25AB700529352 /* SDL_rwopsbundlesupport.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7DE23E2513F00DCD162 /* SDL_rwopsbundlesupport.m */; };
|
||||
A75FCE8A23E25AB700529352 /* SDL_video.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A60E23E2513D00DCD162 /* SDL_video.c */; };
|
||||
A75FCE8B23E25AB700529352 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A75FCE8C23E25AB700529352 /* SDL_uikitmetalview.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A62E23E2513D00DCD162 /* SDL_uikitmetalview.m */; };
|
||||
A75FCE8D23E25AB700529352 /* SDL_steamcontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7A723E2513E00DCD162 /* SDL_steamcontroller.c */; };
|
||||
A75FCE8E23E25AB700529352 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A90723E2514000DCD162 /* SDL_shaders_gles2.c */; };
|
||||
@@ -655,7 +653,6 @@
|
||||
A75FCF5123E25AC700529352 /* SDL_rotate.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8FE23E2514000DCD162 /* SDL_rotate.h */; };
|
||||
A75FCF5223E25AC700529352 /* SDL_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557E61595D4D800BBD41B /* SDL_platform.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
A75FCF5323E25AC700529352 /* SDL_power.h in Headers */ = {isa = PBXBuildFile; fileRef = AA7557E71595D4D800BBD41B /* SDL_power.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
A75FCF5423E25AC700529352 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A75FCF5623E25AC700529352 /* scancodes_darwin.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A93423E2514000DCD162 /* scancodes_darwin.h */; };
|
||||
A75FCF5723E25AC700529352 /* controller_type.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A7D923E2513E00DCD162 /* controller_type.h */; };
|
||||
A75FCF5923E25AC700529352 /* SDL_uikitclipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A62123E2513D00DCD162 /* SDL_uikitclipboard.h */; };
|
||||
@@ -869,7 +866,6 @@
|
||||
A75FD04123E25AC700529352 /* SDL_syshaptic.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5C423E2513D00DCD162 /* SDL_syshaptic.c */; };
|
||||
A75FD04223E25AC700529352 /* SDL_rwopsbundlesupport.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7DE23E2513F00DCD162 /* SDL_rwopsbundlesupport.m */; };
|
||||
A75FD04323E25AC700529352 /* SDL_video.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A60E23E2513D00DCD162 /* SDL_video.c */; };
|
||||
A75FD04423E25AC700529352 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A75FD04523E25AC700529352 /* SDL_uikitmetalview.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A62E23E2513D00DCD162 /* SDL_uikitmetalview.m */; };
|
||||
A75FD04623E25AC700529352 /* SDL_steamcontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7A723E2513E00DCD162 /* SDL_steamcontroller.c */; };
|
||||
A75FD04723E25AC700529352 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A90723E2514000DCD162 /* SDL_shaders_gles2.c */; };
|
||||
@@ -1039,7 +1035,6 @@
|
||||
A769B11E23E259AE00872273 /* SDL_sensor_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A58123E2513D00DCD162 /* SDL_sensor_c.h */; };
|
||||
A769B11F23E259AE00872273 /* SDL_sysrender.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8EE23E2514000DCD162 /* SDL_sysrender.h */; };
|
||||
A769B12023E259AE00872273 /* SDL_rotate.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A8FE23E2514000DCD162 /* SDL_rotate.h */; };
|
||||
A769B12323E259AE00872273 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A769B12523E259AE00872273 /* scancodes_darwin.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A93423E2514000DCD162 /* scancodes_darwin.h */; };
|
||||
A769B12623E259AE00872273 /* controller_type.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A7D923E2513E00DCD162 /* controller_type.h */; };
|
||||
A769B12823E259AE00872273 /* SDL_uikitclipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A62123E2513D00DCD162 /* SDL_uikitclipboard.h */; };
|
||||
@@ -1233,7 +1228,6 @@
|
||||
A769B21423E259AE00872273 /* SDL_syshaptic.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5C423E2513D00DCD162 /* SDL_syshaptic.c */; };
|
||||
A769B21523E259AE00872273 /* SDL_rwopsbundlesupport.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7DE23E2513F00DCD162 /* SDL_rwopsbundlesupport.m */; };
|
||||
A769B21623E259AE00872273 /* SDL_video.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A60E23E2513D00DCD162 /* SDL_video.c */; };
|
||||
A769B21723E259AE00872273 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A769B21823E259AE00872273 /* SDL_uikitmetalview.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A62E23E2513D00DCD162 /* SDL_uikitmetalview.m */; };
|
||||
A769B21923E259AE00872273 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A90723E2514000DCD162 /* SDL_shaders_gles2.c */; };
|
||||
A769B21A23E259AE00872273 /* SDL_blit_1.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A6FA23E2513E00DCD162 /* SDL_blit_1.c */; };
|
||||
@@ -1562,12 +1556,6 @@
|
||||
A7D8AB4C23E2514100DCD162 /* SDL_systimer.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5E823E2513D00DCD162 /* SDL_systimer.c */; };
|
||||
A7D8AB4D23E2514100DCD162 /* SDL_systimer.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5E823E2513D00DCD162 /* SDL_systimer.c */; };
|
||||
A7D8AB4E23E2514100DCD162 /* SDL_systimer.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5E823E2513D00DCD162 /* SDL_systimer.c */; };
|
||||
A7D8AB5523E2514100DCD162 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A7D8AB5623E2514100DCD162 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A7D8AB5723E2514100DCD162 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A7D8AB5823E2514100DCD162 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A7D8AB5923E2514100DCD162 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A7D8AB5A23E2514100DCD162 /* SDL_offscreenopengl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */; };
|
||||
A7D8AB5B23E2514100DCD162 /* SDL_offscreenevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5EE23E2513D00DCD162 /* SDL_offscreenevents_c.h */; };
|
||||
A7D8AB5C23E2514100DCD162 /* SDL_offscreenevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5EE23E2513D00DCD162 /* SDL_offscreenevents_c.h */; };
|
||||
A7D8AB5D23E2514100DCD162 /* SDL_offscreenevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5EE23E2513D00DCD162 /* SDL_offscreenevents_c.h */; };
|
||||
@@ -1598,12 +1586,6 @@
|
||||
A7D8AB7623E2514100DCD162 /* SDL_offscreenframebuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5F223E2513D00DCD162 /* SDL_offscreenframebuffer.c */; };
|
||||
A7D8AB7723E2514100DCD162 /* SDL_offscreenframebuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5F223E2513D00DCD162 /* SDL_offscreenframebuffer.c */; };
|
||||
A7D8AB7823E2514100DCD162 /* SDL_offscreenframebuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A5F223E2513D00DCD162 /* SDL_offscreenframebuffer.c */; };
|
||||
A7D8AB7923E2514100DCD162 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A7D8AB7A23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A7D8AB7B23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A7D8AB7C23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A7D8AB7D23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A7D8AB7E23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */; };
|
||||
A7D8AB7F23E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F423E2513D00DCD162 /* SDL_offscreenframebuffer_c.h */; };
|
||||
A7D8AB8023E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F423E2513D00DCD162 /* SDL_offscreenframebuffer_c.h */; };
|
||||
A7D8AB8123E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A5F423E2513D00DCD162 /* SDL_offscreenframebuffer_c.h */; };
|
||||
@@ -3382,6 +3364,26 @@
|
||||
DB31407017554B71006C0E22 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179F0858DECD00B2BC32 /* IOKit.framework */; };
|
||||
DB31407217554B71006C0E22 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317C10858E15000B2BC32 /* Carbon.framework */; };
|
||||
DB31408D17554D3C006C0E22 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00CFA89C106B4BA100758660 /* ForceFeedback.framework */; };
|
||||
F31A92C828D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92C928D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92CA28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92CB28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92CC28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92CD28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92CE28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92CF28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92D028D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92D128D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */; };
|
||||
F31A92D228D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D328D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D428D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D528D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D628D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D728D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D828D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92D928D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92DA28D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F31A92DB28D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */ = {isa = PBXBuildFile; fileRef = F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */; };
|
||||
F32305FF28939F6400E66D30 /* SDL_hidapi_combined.c in Sources */ = {isa = PBXBuildFile; fileRef = F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */; };
|
||||
F323060028939F6400E66D30 /* SDL_hidapi_combined.c in Sources */ = {isa = PBXBuildFile; fileRef = F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */; };
|
||||
F323060128939F6400E66D30 /* SDL_hidapi_combined.c in Sources */ = {isa = PBXBuildFile; fileRef = F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */; };
|
||||
@@ -3391,6 +3393,9 @@
|
||||
F323060528939F6400E66D30 /* SDL_hidapi_combined.c in Sources */ = {isa = PBXBuildFile; fileRef = F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */; };
|
||||
F323060628939F6400E66D30 /* SDL_hidapi_combined.c in Sources */ = {isa = PBXBuildFile; fileRef = F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */; };
|
||||
F323060728939F6400E66D30 /* SDL_hidapi_combined.c in Sources */ = {isa = PBXBuildFile; fileRef = F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */; };
|
||||
F34B9895291DEFF500AAC96E /* SDL_hidapi_steam.c in Sources */ = {isa = PBXBuildFile; fileRef = A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */; };
|
||||
F34B9896291DEFF700AAC96E /* SDL_hidapi_steam.c in Sources */ = {isa = PBXBuildFile; fileRef = A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */; };
|
||||
F34B9897291DEFFA00AAC96E /* SDL_hidapi_steam.c in Sources */ = {isa = PBXBuildFile; fileRef = A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */; };
|
||||
F3631C6424884ACF004F28EA /* SDL_locale.h in Headers */ = {isa = PBXBuildFile; fileRef = 566E26792462701100718109 /* SDL_locale.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
F3631C652488534E004F28EA /* SDL_locale.h in Headers */ = {isa = PBXBuildFile; fileRef = 566E26792462701100718109 /* SDL_locale.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
F376F6192559B29300CFC0BC /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F376F6182559B29300CFC0BC /* OpenGLES.framework */; platformFilter = ios; };
|
||||
@@ -3502,6 +3507,15 @@
|
||||
F386F6FF2884663E001840AA /* SDL_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = F386F6E62884663E001840AA /* SDL_utils.c */; };
|
||||
F386F7002884663E001840AA /* SDL_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = F386F6E62884663E001840AA /* SDL_utils.c */; };
|
||||
F386F7012884663E001840AA /* 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 */; };
|
||||
F388C95628B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95728B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95828B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95928B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95A28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95B28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95C28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F388C95D28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */ = {isa = PBXBuildFile; fileRef = F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */; };
|
||||
F3928194258603F1003191A7 /* SDL_misc.h in Headers */ = {isa = PBXBuildFile; fileRef = 5616CA4F252BB2BE005D5928 /* SDL_misc.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
F392819F25860422003191A7 /* SDL_misc.h in Headers */ = {isa = PBXBuildFile; fileRef = 5616CA4F252BB2BE005D5928 /* SDL_misc.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
F3942659253579B400B03694 /* CoreHaptics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F37DC5F225350EBC0002E6F7 /* CoreHaptics.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
@@ -3595,6 +3609,15 @@
|
||||
F3ADAB912576F0B400A6B1D9 /* SDL_sysurl.m in Sources */ = {isa = PBXBuildFile; fileRef = F3ADAB8D2576F0B300A6B1D9 /* SDL_sysurl.m */; };
|
||||
F3ADAB922576F0B400A6B1D9 /* SDL_sysurl.m in Sources */ = {isa = PBXBuildFile; fileRef = F3ADAB8D2576F0B300A6B1D9 /* SDL_sysurl.m */; };
|
||||
F3ADAB932576F0B400A6B1D9 /* SDL_sysurl.m in Sources */ = {isa = PBXBuildFile; fileRef = F3ADAB8D2576F0B300A6B1D9 /* SDL_sysurl.m */; };
|
||||
F3D60A8328C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8428C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8528C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8628C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8728C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8828C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8928C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8A28C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3D60A8B28C16A1900788A3A /* SDL_hidapi_wii.c in Sources */ = {isa = PBXBuildFile; fileRef = F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */; };
|
||||
F3F07D5A269640160074468B /* SDL_hidapi_luna.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F07D59269640160074468B /* SDL_hidapi_luna.c */; };
|
||||
F3F07D5B269640160074468B /* SDL_hidapi_luna.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F07D59269640160074468B /* SDL_hidapi_luna.c */; };
|
||||
F3F07D5C269640160074468B /* SDL_hidapi_luna.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F07D59269640160074468B /* SDL_hidapi_luna.c */; };
|
||||
@@ -3735,13 +3758,11 @@
|
||||
A7D8A5E023E2513D00DCD162 /* SDL_timer_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_timer_c.h; sourceTree = "<group>"; };
|
||||
A7D8A5E223E2513D00DCD162 /* SDL_systimer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_systimer.c; sourceTree = "<group>"; };
|
||||
A7D8A5E823E2513D00DCD162 /* SDL_systimer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_systimer.c; sourceTree = "<group>"; };
|
||||
A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_offscreenopengl.c; sourceTree = "<group>"; };
|
||||
A7D8A5EE23E2513D00DCD162 /* SDL_offscreenevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_offscreenevents_c.h; sourceTree = "<group>"; };
|
||||
A7D8A5EF23E2513D00DCD162 /* SDL_offscreenwindow.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_offscreenwindow.c; sourceTree = "<group>"; };
|
||||
A7D8A5F023E2513D00DCD162 /* SDL_offscreenevents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_offscreenevents.c; sourceTree = "<group>"; };
|
||||
A7D8A5F123E2513D00DCD162 /* SDL_offscreenvideo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_offscreenvideo.h; sourceTree = "<group>"; };
|
||||
A7D8A5F223E2513D00DCD162 /* SDL_offscreenframebuffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_offscreenframebuffer.c; sourceTree = "<group>"; };
|
||||
A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_offscreenopengl.h; sourceTree = "<group>"; };
|
||||
A7D8A5F423E2513D00DCD162 /* SDL_offscreenframebuffer_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_offscreenframebuffer_c.h; sourceTree = "<group>"; };
|
||||
A7D8A5F523E2513D00DCD162 /* SDL_offscreenwindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_offscreenwindow.h; sourceTree = "<group>"; };
|
||||
A7D8A5F623E2513D00DCD162 /* SDL_offscreenvideo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_offscreenvideo.c; sourceTree = "<group>"; };
|
||||
@@ -4081,6 +4102,10 @@
|
||||
BECDF6B30761BA81005FE872 /* libSDL2.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL2.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
BECDF6BE0761BA81005FE872 /* SDL2 */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = SDL2; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
DB31407717554B71006C0E22 /* libSDL2.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libSDL2.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
E2D187CF28A5673500D2B4F1 /* SDL2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SDL2.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
E2D187D228A5673500D2B4F1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_offscreenopengles.h; sourceTree = "<group>"; };
|
||||
F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_offscreenopengles.c; sourceTree = "<group>"; };
|
||||
F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_combined.c; sourceTree = "<group>"; };
|
||||
F376F6182559B29300CFC0BC /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.1.sdk/System/Library/Frameworks/OpenGLES.framework; sourceTree = DEVELOPER_DIR; };
|
||||
F376F61A2559B2AF00CFC0BC /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/iOSSupport/System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
||||
@@ -4107,6 +4132,7 @@
|
||||
F386F6E42884663E001840AA /* SDL_log_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_log_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>"; };
|
||||
F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_ps3.c; sourceTree = "<group>"; };
|
||||
F3950CD7212BC88D00F51292 /* SDL_sensor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sensor.h; 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>"; };
|
||||
@@ -4118,6 +4144,7 @@
|
||||
F3984CCF25BCC92800374F43 /* SDL_hidapi_stadia.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_stadia.c; sourceTree = "<group>"; };
|
||||
F3A4909D2554D38500E92A8B /* SDL_hidapi_ps5.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_ps5.c; sourceTree = "<group>"; };
|
||||
F3ADAB8D2576F0B300A6B1D9 /* SDL_sysurl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_sysurl.m; sourceTree = "<group>"; };
|
||||
F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_wii.c; sourceTree = "<group>"; };
|
||||
F3F07D59269640160074468B /* SDL_hidapi_luna.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_luna.c; sourceTree = "<group>"; };
|
||||
F59C710300D5CB5801000001 /* ReadMe.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = ReadMe.txt; sourceTree = "<group>"; };
|
||||
F59C710600D5CB5801000001 /* SDL.info */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SDL.info; sourceTree = "<group>"; };
|
||||
@@ -4270,6 +4297,13 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
E2D187CC28A5673500D2B4F1 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
@@ -4362,6 +4396,7 @@
|
||||
A769B23D23E259AE00872273 /* libSDL2.a */,
|
||||
A75FCEB323E25AB700529352 /* libSDL2.dylib */,
|
||||
A75FD06C23E25AC700529352 /* libSDL2.dylib */,
|
||||
E2D187CF28A5673500D2B4F1 /* SDL2.framework */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@@ -4373,6 +4408,7 @@
|
||||
F59C70FC00D5CB5801000001 /* pkg-support */,
|
||||
0153844A006D81B07F000001 /* Public Headers */,
|
||||
08FB77ACFE841707C02AAC07 /* Library Source */,
|
||||
E2D187D028A5673500D2B4F1 /* SDL2 */,
|
||||
034768DDFF38A45A11DB9C8B /* Products */,
|
||||
BECDF66B0761BA81005FE872 /* Info-Framework.plist */,
|
||||
564624341FF821B70074AC87 /* Frameworks */,
|
||||
@@ -4707,8 +4743,8 @@
|
||||
A7D8A5F023E2513D00DCD162 /* SDL_offscreenevents.c */,
|
||||
A7D8A5F423E2513D00DCD162 /* SDL_offscreenframebuffer_c.h */,
|
||||
A7D8A5F223E2513D00DCD162 /* SDL_offscreenframebuffer.c */,
|
||||
A7D8A5ED23E2513D00DCD162 /* SDL_offscreenopengl.c */,
|
||||
A7D8A5F323E2513D00DCD162 /* SDL_offscreenopengl.h */,
|
||||
F31A92C728D4CB39003BFD6A /* SDL_offscreenopengles.c */,
|
||||
F31A92C628D4CB39003BFD6A /* SDL_offscreenopengles.h */,
|
||||
A7D8A5F623E2513D00DCD162 /* SDL_offscreenvideo.c */,
|
||||
A7D8A5F123E2513D00DCD162 /* SDL_offscreenvideo.h */,
|
||||
A7D8A5EF23E2513D00DCD162 /* SDL_offscreenwindow.c */,
|
||||
@@ -4958,6 +4994,7 @@
|
||||
F32305FE28939F6400E66D30 /* SDL_hidapi_combined.c */,
|
||||
A7D8A7C923E2513E00DCD162 /* SDL_hidapi_gamecube.c */,
|
||||
F3F07D59269640160074468B /* SDL_hidapi_luna.c */,
|
||||
F388C95428B5F6F600661ECF /* SDL_hidapi_ps3.c */,
|
||||
A7D8A7C323E2513E00DCD162 /* SDL_hidapi_ps4.c */,
|
||||
F3A4909D2554D38500E92A8B /* SDL_hidapi_ps5.c */,
|
||||
A75FDBC423EA380300529352 /* SDL_hidapi_rumble.c */,
|
||||
@@ -4966,6 +5003,7 @@
|
||||
F3984CCF25BCC92800374F43 /* SDL_hidapi_stadia.c */,
|
||||
A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */,
|
||||
A7D8A7C623E2513E00DCD162 /* SDL_hidapi_switch.c */,
|
||||
F3D60A8228C16A1800788A3A /* SDL_hidapi_wii.c */,
|
||||
A7D8A7C223E2513E00DCD162 /* SDL_hidapi_xbox360.c */,
|
||||
A7D8A7C823E2513E00DCD162 /* SDL_hidapi_xbox360w.c */,
|
||||
A7D8A7C523E2513E00DCD162 /* SDL_hidapi_xboxone.c */,
|
||||
@@ -5306,6 +5344,14 @@
|
||||
path = events;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E2D187D028A5673500D2B4F1 /* SDL2 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E2D187D228A5673500D2B4F1 /* Info.plist */,
|
||||
);
|
||||
path = SDL2;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F3ADAB8C2576F08500A6B1D9 /* ios */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -5379,6 +5425,7 @@
|
||||
A75FCD2323E25AB700529352 /* SDL_uikitmessagebox.h in Headers */,
|
||||
A75FCD2523E25AB700529352 /* SDL_thread_c.h in Headers */,
|
||||
A75FCD2623E25AB700529352 /* SDL_cocoamessagebox.h in Headers */,
|
||||
F31A92D028D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A75FCD2823E25AB700529352 /* SDL_cpuinfo.h in Headers */,
|
||||
A75FCD2923E25AB700529352 /* SDL_endian.h in Headers */,
|
||||
A75FCD2A23E25AB700529352 /* SDL_error.h in Headers */,
|
||||
@@ -5489,7 +5536,6 @@
|
||||
A75FCD9823E25AB700529352 /* SDL_rotate.h in Headers */,
|
||||
A75FCD9923E25AB700529352 /* SDL_platform.h in Headers */,
|
||||
A75FCD9A23E25AB700529352 /* SDL_power.h in Headers */,
|
||||
A75FCD9B23E25AB700529352 /* SDL_offscreenopengl.h in Headers */,
|
||||
A75FCD9D23E25AB700529352 /* scancodes_darwin.h in Headers */,
|
||||
A75FCD9E23E25AB700529352 /* controller_type.h in Headers */,
|
||||
A75FCDA023E25AB700529352 /* SDL_uikitclipboard.h in Headers */,
|
||||
@@ -5608,6 +5654,7 @@
|
||||
A75FCEDC23E25AC700529352 /* SDL_uikitmessagebox.h in Headers */,
|
||||
A75FCEDE23E25AC700529352 /* SDL_thread_c.h in Headers */,
|
||||
A75FCEDF23E25AC700529352 /* SDL_cocoamessagebox.h in Headers */,
|
||||
F31A92D128D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A75FCEE123E25AC700529352 /* SDL_cpuinfo.h in Headers */,
|
||||
A75FCEE223E25AC700529352 /* SDL_endian.h in Headers */,
|
||||
A75FCEE323E25AC700529352 /* SDL_error.h in Headers */,
|
||||
@@ -5718,7 +5765,6 @@
|
||||
A75FCF5123E25AC700529352 /* SDL_rotate.h in Headers */,
|
||||
A75FCF5223E25AC700529352 /* SDL_platform.h in Headers */,
|
||||
A75FCF5323E25AC700529352 /* SDL_power.h in Headers */,
|
||||
A75FCF5423E25AC700529352 /* SDL_offscreenopengl.h in Headers */,
|
||||
A75FCF5623E25AC700529352 /* scancodes_darwin.h in Headers */,
|
||||
A75FCF5723E25AC700529352 /* controller_type.h in Headers */,
|
||||
A75FCF5923E25AC700529352 /* SDL_uikitclipboard.h in Headers */,
|
||||
@@ -5907,7 +5953,6 @@
|
||||
A769B11E23E259AE00872273 /* SDL_sensor_c.h in Headers */,
|
||||
A769B11F23E259AE00872273 /* SDL_sysrender.h in Headers */,
|
||||
A769B12023E259AE00872273 /* SDL_rotate.h in Headers */,
|
||||
A769B12323E259AE00872273 /* SDL_offscreenopengl.h in Headers */,
|
||||
A769B12523E259AE00872273 /* scancodes_darwin.h in Headers */,
|
||||
A769B12623E259AE00872273 /* controller_type.h in Headers */,
|
||||
A769B12823E259AE00872273 /* SDL_uikitclipboard.h in Headers */,
|
||||
@@ -5928,6 +5973,7 @@
|
||||
A769B13C23E259AE00872273 /* SDL_cocoamodes.h in Headers */,
|
||||
A769B13D23E259AE00872273 /* SDL_uikitopenglview.h in Headers */,
|
||||
A769B13E23E259AE00872273 /* vulkan_win32.h in Headers */,
|
||||
F31A92CE28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A769B13F23E259AE00872273 /* SDL_offscreenframebuffer_c.h in Headers */,
|
||||
A769B14023E259AE00872273 /* SDL_displayevents_c.h in Headers */,
|
||||
A769B14123E259AE00872273 /* SDL_timer_c.h in Headers */,
|
||||
@@ -6006,6 +6052,7 @@
|
||||
A7D8B8CD23E2514400DCD162 /* SDL_coreaudio.h in Headers */,
|
||||
A7D8A97023E2514000DCD162 /* SDL_coremotionsensor.h in Headers */,
|
||||
A7D88A2623E2437C00DCD162 /* SDL_cpuinfo.h in Headers */,
|
||||
F31A92C928D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A7D8B98123E2514400DCD162 /* SDL_d3dmath.h in Headers */,
|
||||
A7D8A94623E2514000DCD162 /* SDL_dataqueue.h in Headers */,
|
||||
A7D8B8A323E2514400DCD162 /* SDL_diskaudio.h in Headers */,
|
||||
@@ -6066,7 +6113,6 @@
|
||||
A7D8ABF823E2514100DCD162 /* SDL_nullvideo.h in Headers */,
|
||||
A7D8AB5C23E2514100DCD162 /* SDL_offscreenevents_c.h in Headers */,
|
||||
A7D8AB8023E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */,
|
||||
A7D8AB7A23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */,
|
||||
A7D8AB6E23E2514100DCD162 /* SDL_offscreenvideo.h in Headers */,
|
||||
A7D8AB8623E2514100DCD162 /* SDL_offscreenwindow.h in Headers */,
|
||||
A7D88A3D23E2437C00DCD162 /* SDL_opengl.h in Headers */,
|
||||
@@ -6240,6 +6286,7 @@
|
||||
A7D8B8CE23E2514400DCD162 /* SDL_coreaudio.h in Headers */,
|
||||
A7D8A97123E2514000DCD162 /* SDL_coremotionsensor.h in Headers */,
|
||||
A7D88BDD23E24BED00DCD162 /* SDL_cpuinfo.h in Headers */,
|
||||
F31A92CA28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A7D8B98223E2514400DCD162 /* SDL_d3dmath.h in Headers */,
|
||||
A7D8A94723E2514000DCD162 /* SDL_dataqueue.h in Headers */,
|
||||
A7D8B8A423E2514400DCD162 /* SDL_diskaudio.h in Headers */,
|
||||
@@ -6300,7 +6347,6 @@
|
||||
A7D8ABF923E2514100DCD162 /* SDL_nullvideo.h in Headers */,
|
||||
A7D8AB5D23E2514100DCD162 /* SDL_offscreenevents_c.h in Headers */,
|
||||
A7D8AB8123E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */,
|
||||
A7D8AB7B23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */,
|
||||
A7D8AB6F23E2514100DCD162 /* SDL_offscreenvideo.h in Headers */,
|
||||
A7D8AB8723E2514100DCD162 /* SDL_offscreenwindow.h in Headers */,
|
||||
A7D88BF623E24BED00DCD162 /* SDL_opengl.h in Headers */,
|
||||
@@ -6544,7 +6590,6 @@
|
||||
A7D8A99123E2514000DCD162 /* SDL_sensor_c.h in Headers */,
|
||||
A7D8B9DB23E2514400DCD162 /* SDL_sysrender.h in Headers */,
|
||||
A7D8BA3523E2514400DCD162 /* SDL_rotate.h in Headers */,
|
||||
A7D8AB7D23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */,
|
||||
A7D8BB5523E2514500DCD162 /* scancodes_darwin.h in Headers */,
|
||||
A7D8B5BB23E2514300DCD162 /* controller_type.h in Headers */,
|
||||
A7D8AC7923E2514100DCD162 /* SDL_uikitclipboard.h in Headers */,
|
||||
@@ -6565,6 +6610,7 @@
|
||||
A7D8AEF823E2514100DCD162 /* SDL_cocoamodes.h in Headers */,
|
||||
A7D8ACB523E2514100DCD162 /* SDL_uikitopenglview.h in Headers */,
|
||||
A7D8B28223E2514200DCD162 /* vulkan_win32.h in Headers */,
|
||||
F31A92CD28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A7D8AB8323E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */,
|
||||
A7D8BB4323E2514500DCD162 /* SDL_displayevents_c.h in Headers */,
|
||||
A7D8AB3523E2514100DCD162 /* SDL_timer_c.h in Headers */,
|
||||
@@ -6643,6 +6689,7 @@
|
||||
A7D8B8CC23E2514400DCD162 /* SDL_coreaudio.h in Headers */,
|
||||
A7D8A96F23E2514000DCD162 /* SDL_coremotionsensor.h in Headers */,
|
||||
AA75580E1595D4D800BBD41B /* SDL_cpuinfo.h in Headers */,
|
||||
F31A92C828D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A7D8B98023E2514400DCD162 /* SDL_d3dmath.h in Headers */,
|
||||
A7D8A94523E2514000DCD162 /* SDL_dataqueue.h in Headers */,
|
||||
A7D8B8A223E2514400DCD162 /* SDL_diskaudio.h in Headers */,
|
||||
@@ -6703,7 +6750,6 @@
|
||||
A7D8ABF723E2514100DCD162 /* SDL_nullvideo.h in Headers */,
|
||||
A7D8AB5B23E2514100DCD162 /* SDL_offscreenevents_c.h in Headers */,
|
||||
A7D8AB7F23E2514100DCD162 /* SDL_offscreenframebuffer_c.h in Headers */,
|
||||
A7D8AB7923E2514100DCD162 /* SDL_offscreenopengl.h in Headers */,
|
||||
A7D8AB6D23E2514100DCD162 /* SDL_offscreenvideo.h in Headers */,
|
||||
A7D8AB8523E2514100DCD162 /* SDL_offscreenwindow.h in Headers */,
|
||||
AA7558301595D4D800BBD41B /* SDL_opengl.h in Headers */,
|
||||
@@ -6944,7 +6990,6 @@
|
||||
A7D8BC0323E2574800DCD162 /* SDL_uikitvulkan.h in Headers */,
|
||||
A7D8B9DA23E2514400DCD162 /* SDL_sysrender.h in Headers */,
|
||||
A7D8BA3423E2514400DCD162 /* SDL_rotate.h in Headers */,
|
||||
A7D8AB7C23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */,
|
||||
A7D8BBCB23E2561600DCD162 /* SDL_steamcontroller.h in Headers */,
|
||||
A7D8BB5423E2514500DCD162 /* scancodes_darwin.h in Headers */,
|
||||
A7D8B5BA23E2514300DCD162 /* controller_type.h in Headers */,
|
||||
@@ -6956,6 +7001,7 @@
|
||||
A7D8B9FE23E2514400DCD162 /* SDL_render_sw_c.h in Headers */,
|
||||
A7D8BBED23E2574800DCD162 /* SDL_uikitappdelegate.h in Headers */,
|
||||
A7D8BBF923E2574800DCD162 /* SDL_uikitopengles.h in Headers */,
|
||||
F31A92CC28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A7D8ABFA23E2514100DCD162 /* SDL_nullvideo.h in Headers */,
|
||||
A7D8B39B23E2514200DCD162 /* SDL_blit_copy.h in Headers */,
|
||||
F386F6EA2884663E001840AA /* SDL_log_c.h in Headers */,
|
||||
@@ -7045,6 +7091,7 @@
|
||||
A7D8B3D923E2514300DCD162 /* yuv_rgb.h in Headers */,
|
||||
A7D8B79923E2514400DCD162 /* SDL_dummyaudio.h in Headers */,
|
||||
A7D8AC9823E2514100DCD162 /* SDL_uikitmessagebox.h in Headers */,
|
||||
F31A92CF28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
A7D8B3F123E2514300DCD162 /* SDL_thread_c.h in Headers */,
|
||||
A7D8AF0B23E2514100DCD162 /* SDL_cocoamessagebox.h in Headers */,
|
||||
DB313FD217554B71006C0E22 /* SDL_cpuinfo.h in Headers */,
|
||||
@@ -7154,7 +7201,6 @@
|
||||
A7D8BA3623E2514400DCD162 /* SDL_rotate.h in Headers */,
|
||||
DB313FE617554B71006C0E22 /* SDL_platform.h in Headers */,
|
||||
DB313FE717554B71006C0E22 /* SDL_power.h in Headers */,
|
||||
A7D8AB7E23E2514100DCD162 /* SDL_offscreenopengl.h in Headers */,
|
||||
A7D8BB5623E2514500DCD162 /* scancodes_darwin.h in Headers */,
|
||||
A7D8B5BC23E2514300DCD162 /* controller_type.h in Headers */,
|
||||
A7D8AC7A23E2514100DCD162 /* SDL_uikitclipboard.h in Headers */,
|
||||
@@ -7231,6 +7277,14 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
E2D187CA28A5673500D2B4F1 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F31A92CB28D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
@@ -7437,6 +7491,25 @@
|
||||
productReference = DB31407717554B71006C0E22 /* libSDL2.dylib */;
|
||||
productType = "com.apple.product-type.library.dynamic";
|
||||
};
|
||||
E2D187CE28A5673500D2B4F1 /* xcFramework-iOS */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = E2D187D628A5673500D2B4F1 /* Build configuration list for PBXNativeTarget "xcFramework-iOS" */;
|
||||
buildPhases = (
|
||||
E2D187CA28A5673500D2B4F1 /* Headers */,
|
||||
E2D187CB28A5673500D2B4F1 /* Sources */,
|
||||
E2D187CC28A5673500D2B4F1 /* Frameworks */,
|
||||
E2D187CD28A5673500D2B4F1 /* Resources */,
|
||||
E2D187E728A5685000D2B4F1 /* ShellScript */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = "xcFramework-iOS";
|
||||
productName = SDL2;
|
||||
productReference = E2D187CF28A5673500D2B4F1 /* SDL2.framework */;
|
||||
productType = "com.apple.product-type.framework";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
@@ -7444,6 +7517,11 @@
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1130;
|
||||
TargetAttributes = {
|
||||
E2D187CE28A5673500D2B4F1 = {
|
||||
CreatedOnToolsVersion = 12.4;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 0073178E0858DB0500B2BC32 /* Build configuration list for PBXProject "SDL" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@@ -7462,6 +7540,7 @@
|
||||
BECDF5FE0761BA81005FE872 /* Framework */,
|
||||
A7D88A1423E2437C00DCD162 /* Framework-iOS */,
|
||||
A7D88BC923E24BED00DCD162 /* Framework-tvOS */,
|
||||
E2D187CE28A5673500D2B4F1 /* xcFramework-iOS */,
|
||||
BECDF66D0761BA81005FE872 /* Static Library */,
|
||||
A7D88D1723E24D3B00DCD162 /* Static Library-iOS */,
|
||||
A769B08223E259AE00872273 /* Static Library-tvOS */,
|
||||
@@ -7504,6 +7583,13 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
E2D187CD28A5673500D2B4F1 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXRezBuildPhase section */
|
||||
@@ -7561,6 +7647,23 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "# Sign framework\nif [ \"$SDL_CODESIGN_IDENTITY\" != \"\" ]; then\n codesign --force --deep --sign \"$SDL_CODESIGN_IDENTITY\" $TARGET_BUILD_DIR/SDL2.framework/Versions/A || exit $?\nfi\n\n# clean up the framework, remove headers, extra files\nmkdir -p build/dmg-tmp\ncp -a $TARGET_BUILD_DIR/SDL2.framework build/dmg-tmp/\n\ncp pkg-support/resources/License.txt build/dmg-tmp\ncp pkg-support/resources/ReadMe.txt build/dmg-tmp\n\n# remove the .DS_Store files if any (we may want to provide one in the future for fancy .dmgs)\nfind build/dmg-tmp -name .DS_Store -exec rm -f \"{}\" \\;\n\n# for fancy .dmg\nmkdir -p build/dmg-tmp/.logo\ncp pkg-support/resources/SDL_DS_Store build/dmg-tmp/.DS_Store\ncp pkg-support/sdl_logo.pdf build/dmg-tmp/.logo\n\n# create the dmg\nhdiutil create -ov -fs HFS+ -volname SDL2 -srcfolder build/dmg-tmp build/SDL2.dmg\n\n# clean up\nrm -rf build/dmg-tmp\n";
|
||||
};
|
||||
E2D187E728A5685000D2B4F1 /* ShellScript */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
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\techo \"error: Building an xcframework requires Xcode 11 minimum.\"\n\texit 1\nfi\n\nSCHEME_NAME=\"Framework-iOS\"\nFRAMEWORK_NAME=\"SDL2\"\nPROJECT_NAME=\"SDL\"\n\nSIMULATOR_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphonesimulator.xcarchive\"\nDEVICE_ARCHIVE_PATH=\"${BUILD_DIR}/${CONFIGURATION}/${FRAMEWORK_NAME}-iphoneos.xcarchive\"\n\nOUTPUT_DIR=\"./Products/\"\n\n# Simulator xcarchive (arm64, i386, x86_64)\nxcodebuild archive \\\n\tONLY_ACTIVE_ARCH=NO \\\n\t-scheme ${SCHEME_NAME} \\\n\t-project \"${PROJECT_NAME}.xcodeproj\" \\\n\t-archivePath ${SIMULATOR_ARCHIVE_PATH} \\\n\t-sdk iphonesimulator \\\n\tBUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n\tSKIP_INSTALL=NO\n\n# Device xcarchive (arm64, armv7)\nxcodebuild archive \\\n\t-scheme ${SCHEME_NAME} \\\n\t-project \"${PROJECT_NAME}.xcodeproj\" \\\n\t-archivePath ${DEVICE_ARCHIVE_PATH} \\\n\t-sdk iphoneos \\\n\tBUILD_LIBRARY_FOR_DISTRIBUTION=YES \\\n\tSKIP_INSTALL=NO\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\t-framework \"${DEVICE_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n\t-framework \"${SIMULATOR_ARCHIVE_PATH}\"/Products/Library/Frameworks/${FRAMEWORK_NAME}.framework \\\n\t-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";
|
||||
};
|
||||
F3ED8106281DB8A500C33C5B /* Convert SDL includes to SDL Framework includes */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -7697,6 +7800,7 @@
|
||||
A75FCE2B23E25AB700529352 /* SDL_power.c in Sources */,
|
||||
A75FCE2C23E25AB700529352 /* SDL_cocoakeyboard.m in Sources */,
|
||||
A75FCE2D23E25AB700529352 /* SDL_dynapi.c in Sources */,
|
||||
F388C95C28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A75FCE2E23E25AB700529352 /* SDL_shaders_gl.c in Sources */,
|
||||
560572152473688300B46B66 /* SDL_locale.c in Sources */,
|
||||
A75FCE2F23E25AB700529352 /* e_log.c in Sources */,
|
||||
@@ -7706,6 +7810,7 @@
|
||||
A75FCE3323E25AB700529352 /* SDL_cocoashape.m in Sources */,
|
||||
A75FCE3423E25AB700529352 /* SDL_cocoamouse.m in Sources */,
|
||||
A75FCE3523E25AB700529352 /* SDL_error.c in Sources */,
|
||||
F3D60A8A28C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A75FCE3623E25AB700529352 /* SDL_blit.c in Sources */,
|
||||
A75FCE3723E25AB700529352 /* SDL_rwops.c in Sources */,
|
||||
F38233922738EBF300F7F527 /* SDL_hidapi.c in Sources */,
|
||||
@@ -7719,6 +7824,7 @@
|
||||
A75FCE3E23E25AB700529352 /* SDL_hidapi_ps4.c in Sources */,
|
||||
A75FCE3F23E25AB700529352 /* SDL_pixels.c in Sources */,
|
||||
A75FCE4123E25AB700529352 /* SDL_sysloadso.c in Sources */,
|
||||
F31A92DA28D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A75FCE4323E25AB700529352 /* SDL_syspower.c in Sources */,
|
||||
A75FCE4523E25AB700529352 /* SDL_iconv.c in Sources */,
|
||||
A75FCE4623E25AB700529352 /* s_fabs.c in Sources */,
|
||||
@@ -7788,7 +7894,6 @@
|
||||
F3F07D61269640160074468B /* SDL_hidapi_luna.c in Sources */,
|
||||
A75FCE8923E25AB700529352 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
A75FCE8A23E25AB700529352 /* SDL_video.c in Sources */,
|
||||
A75FCE8B23E25AB700529352 /* SDL_offscreenopengl.c in Sources */,
|
||||
A75FCE8C23E25AB700529352 /* SDL_uikitmetalview.m in Sources */,
|
||||
A75FCE8D23E25AB700529352 /* SDL_steamcontroller.c in Sources */,
|
||||
A75FCE8E23E25AB700529352 /* SDL_shaders_gles2.c in Sources */,
|
||||
@@ -7891,6 +7996,7 @@
|
||||
A75FCFE423E25AC700529352 /* SDL_power.c in Sources */,
|
||||
A75FCFE523E25AC700529352 /* SDL_cocoakeyboard.m in Sources */,
|
||||
A75FCFE623E25AC700529352 /* SDL_dynapi.c in Sources */,
|
||||
F388C95D28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A75FCFE723E25AC700529352 /* SDL_shaders_gl.c in Sources */,
|
||||
560572162473688400B46B66 /* SDL_locale.c in Sources */,
|
||||
A75FCFE823E25AC700529352 /* e_log.c in Sources */,
|
||||
@@ -7900,6 +8006,7 @@
|
||||
A75FCFEC23E25AC700529352 /* SDL_cocoashape.m in Sources */,
|
||||
A75FCFED23E25AC700529352 /* SDL_cocoamouse.m in Sources */,
|
||||
A75FCFEE23E25AC700529352 /* SDL_error.c in Sources */,
|
||||
F3D60A8B28C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A75FCFEF23E25AC700529352 /* SDL_blit.c in Sources */,
|
||||
A75FCFF023E25AC700529352 /* SDL_rwops.c in Sources */,
|
||||
F38233932738EBF300F7F527 /* SDL_hidapi.c in Sources */,
|
||||
@@ -7913,6 +8020,7 @@
|
||||
A75FCFF723E25AC700529352 /* SDL_hidapi_ps4.c in Sources */,
|
||||
A75FCFF823E25AC700529352 /* SDL_pixels.c in Sources */,
|
||||
A75FCFFA23E25AC700529352 /* SDL_sysloadso.c in Sources */,
|
||||
F31A92DB28D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A75FCFFC23E25AC700529352 /* SDL_syspower.c in Sources */,
|
||||
A75FCFFE23E25AC700529352 /* SDL_iconv.c in Sources */,
|
||||
A75FCFFF23E25AC700529352 /* s_fabs.c in Sources */,
|
||||
@@ -7982,7 +8090,6 @@
|
||||
F3F07D62269640160074468B /* SDL_hidapi_luna.c in Sources */,
|
||||
A75FD04223E25AC700529352 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
A75FD04323E25AC700529352 /* SDL_video.c in Sources */,
|
||||
A75FD04423E25AC700529352 /* SDL_offscreenopengl.c in Sources */,
|
||||
A75FD04523E25AC700529352 /* SDL_uikitmetalview.m in Sources */,
|
||||
A75FD04623E25AC700529352 /* SDL_steamcontroller.c in Sources */,
|
||||
A75FD04723E25AC700529352 /* SDL_shaders_gles2.c in Sources */,
|
||||
@@ -8148,6 +8255,7 @@
|
||||
A769B1FD23E259AE00872273 /* SDL_blit_auto.c in Sources */,
|
||||
A769B1FF23E259AE00872273 /* SDL_keyboard.c in Sources */,
|
||||
F3973FB028A59BDD00B84553 /* SDL_crc16.c in Sources */,
|
||||
F3D60A8828C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
560572132473688200B46B66 /* SDL_locale.c in Sources */,
|
||||
A769B20123E259AE00872273 /* SDL_rect.c in Sources */,
|
||||
A769B20223E259AE00872273 /* SDL_cocoaopengles.m in Sources */,
|
||||
@@ -8159,6 +8267,7 @@
|
||||
F3820718284F3609004DD584 /* controller_type.c in Sources */,
|
||||
A769B20623E259AE00872273 /* SDL_clipboardevents.c in Sources */,
|
||||
A769B20823E259AE00872273 /* k_cos.c in Sources */,
|
||||
F388C95A28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A769B20923E259AE00872273 /* SDL_hidapijoystick.c in Sources */,
|
||||
A769B20A23E259AE00872273 /* SDL_malloc.c in Sources */,
|
||||
A769B20B23E259AE00872273 /* SDL_audio.c in Sources */,
|
||||
@@ -8176,7 +8285,6 @@
|
||||
A769B21423E259AE00872273 /* SDL_syshaptic.c in Sources */,
|
||||
A769B21523E259AE00872273 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
A769B21623E259AE00872273 /* SDL_video.c in Sources */,
|
||||
A769B21723E259AE00872273 /* SDL_offscreenopengl.c in Sources */,
|
||||
F38233972738EC1600F7F527 /* hid.m in Sources */,
|
||||
A769B21823E259AE00872273 /* SDL_uikitmetalview.m in Sources */,
|
||||
A769B21923E259AE00872273 /* SDL_shaders_gles2.c in Sources */,
|
||||
@@ -8189,6 +8297,7 @@
|
||||
A769B22123E259AE00872273 /* SDL_sensor.c in Sources */,
|
||||
A769B22323E259AE00872273 /* k_sin.c in Sources */,
|
||||
A769B22523E259AE00872273 /* SDL_systimer.c in Sources */,
|
||||
F31A92D828D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A769B22623E259AE00872273 /* SDL_drawpoint.c in Sources */,
|
||||
F395C1B62569C6A000942BFF /* SDL_mfijoystick.m in Sources */,
|
||||
A769B22723E259AE00872273 /* e_sqrt.c in Sources */,
|
||||
@@ -8280,6 +8389,7 @@
|
||||
A7D8BA8623E2514400DCD162 /* SDL_shaders_gl.c in Sources */,
|
||||
A7D8BAF223E2514500DCD162 /* e_log.c in Sources */,
|
||||
A7D8AED123E2514100DCD162 /* SDL_cocoamessagebox.m in Sources */,
|
||||
F388C95628B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A7D8BA2C23E2514400DCD162 /* SDL_blendfillrect.c in Sources */,
|
||||
A7D8ACDC23E2514100DCD162 /* SDL_uikitvideo.m in Sources */,
|
||||
A7D8AEE323E2514100DCD162 /* SDL_cocoashape.m in Sources */,
|
||||
@@ -8289,6 +8399,7 @@
|
||||
A7D8B5BE23E2514300DCD162 /* SDL_rwops.c in Sources */,
|
||||
A7D8ACD023E2514100DCD162 /* SDL_uikitviewcontroller.m in Sources */,
|
||||
A7D8BA9223E2514400DCD162 /* s_cos.c in Sources */,
|
||||
F3D60A8428C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A7D8B4D123E2514300DCD162 /* SDL_steamcontroller.c in Sources */,
|
||||
A7D8B9D223E2514400DCD162 /* SDL_yuv_sw.c in Sources */,
|
||||
F382338E2738EBEC00F7F527 /* SDL_hidapi.c in Sources */,
|
||||
@@ -8302,6 +8413,7 @@
|
||||
A7D8B75F23E2514300DCD162 /* SDL_sysloadso.c in Sources */,
|
||||
A7D8B5F423E2514300DCD162 /* SDL_syspower.c in Sources */,
|
||||
A7D8B95123E2514400DCD162 /* SDL_iconv.c in Sources */,
|
||||
F31A92D328D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A7D8BA9E23E2514400DCD162 /* s_fabs.c in Sources */,
|
||||
A7D8B99323E2514400DCD162 /* SDL_shaders_metal.metal in Sources */,
|
||||
A7D8AC4C23E2514100DCD162 /* SDL_uikitwindow.m in Sources */,
|
||||
@@ -8369,7 +8481,6 @@
|
||||
A7D8AC1023E2514100DCD162 /* SDL_video.c in Sources */,
|
||||
560572062473687700B46B66 /* SDL_syslocale.m in Sources */,
|
||||
F3F07D5B269640160074468B /* SDL_hidapi_luna.c in Sources */,
|
||||
A7D8AB5623E2514100DCD162 /* SDL_offscreenopengl.c in Sources */,
|
||||
A7D8ACC423E2514100DCD162 /* SDL_uikitmetalview.m in Sources */,
|
||||
A7D8BA5C23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
||||
A7D8B14123E2514200DCD162 /* SDL_blit_1.c in Sources */,
|
||||
@@ -8474,6 +8585,7 @@
|
||||
A7D8BA8723E2514400DCD162 /* SDL_shaders_gl.c in Sources */,
|
||||
A7D8BAF323E2514500DCD162 /* e_log.c in Sources */,
|
||||
A7D8AED223E2514100DCD162 /* SDL_cocoamessagebox.m in Sources */,
|
||||
F388C95728B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A7D8BA2D23E2514400DCD162 /* SDL_blendfillrect.c in Sources */,
|
||||
A7D8ACDD23E2514100DCD162 /* SDL_uikitvideo.m in Sources */,
|
||||
A7D8AEE423E2514100DCD162 /* SDL_cocoashape.m in Sources */,
|
||||
@@ -8483,6 +8595,7 @@
|
||||
A7D8B5BF23E2514300DCD162 /* SDL_rwops.c in Sources */,
|
||||
A7D8ACD123E2514100DCD162 /* SDL_uikitviewcontroller.m in Sources */,
|
||||
A7D8BA9323E2514400DCD162 /* s_cos.c in Sources */,
|
||||
F3D60A8528C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A7D8B4D223E2514300DCD162 /* SDL_steamcontroller.c in Sources */,
|
||||
A7D8B9D323E2514400DCD162 /* SDL_yuv_sw.c in Sources */,
|
||||
F382338F2738EBEF00F7F527 /* SDL_hidapi.c in Sources */,
|
||||
@@ -8496,6 +8609,7 @@
|
||||
A7D8B76023E2514300DCD162 /* SDL_sysloadso.c in Sources */,
|
||||
A7D8B5F523E2514300DCD162 /* SDL_syspower.c in Sources */,
|
||||
A7D8B95223E2514400DCD162 /* SDL_iconv.c in Sources */,
|
||||
F31A92D428D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A7D8BA9F23E2514400DCD162 /* s_fabs.c in Sources */,
|
||||
A7D8B99423E2514400DCD162 /* SDL_shaders_metal.metal in Sources */,
|
||||
A7D8AC4D23E2514100DCD162 /* SDL_uikitwindow.m in Sources */,
|
||||
@@ -8563,7 +8677,6 @@
|
||||
A7D8AC1123E2514100DCD162 /* SDL_video.c in Sources */,
|
||||
560572072473687800B46B66 /* SDL_syslocale.m in Sources */,
|
||||
F3F07D5C269640160074468B /* SDL_hidapi_luna.c in Sources */,
|
||||
A7D8AB5723E2514100DCD162 /* SDL_offscreenopengl.c in Sources */,
|
||||
A7D8ACC523E2514100DCD162 /* SDL_uikitmetalview.m in Sources */,
|
||||
A7D8BA5D23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
||||
A7D8B14223E2514200DCD162 /* SDL_blit_1.c in Sources */,
|
||||
@@ -8731,6 +8844,7 @@
|
||||
A7D8AD2723E2514100DCD162 /* SDL_blit_auto.c in Sources */,
|
||||
A7D8BB6D23E2514500DCD162 /* SDL_keyboard.c in Sources */,
|
||||
F3973FAF28A59BDD00B84553 /* SDL_crc16.c in Sources */,
|
||||
F3D60A8728C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
560572122473688200B46B66 /* SDL_locale.c in Sources */,
|
||||
A7D8ACEB23E2514100DCD162 /* SDL_rect.c in Sources */,
|
||||
A7D8AE9E23E2514100DCD162 /* SDL_cocoaopengles.m in Sources */,
|
||||
@@ -8742,6 +8856,7 @@
|
||||
F3820717284F3609004DD584 /* controller_type.c in Sources */,
|
||||
A7D8BB7923E2514500DCD162 /* SDL_clipboardevents.c in Sources */,
|
||||
A7D8BAB923E2514400DCD162 /* k_cos.c in Sources */,
|
||||
F388C95928B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A7D8B54923E2514300DCD162 /* SDL_hidapijoystick.c in Sources */,
|
||||
A7D8B97823E2514400DCD162 /* SDL_malloc.c in Sources */,
|
||||
A7D8B8CA23E2514400DCD162 /* SDL_audio.c in Sources */,
|
||||
@@ -8759,7 +8874,6 @@
|
||||
A7D8AAB423E2514100DCD162 /* SDL_syshaptic.c in Sources */,
|
||||
A7D8B5CD23E2514300DCD162 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
A7D8AC1323E2514100DCD162 /* SDL_video.c in Sources */,
|
||||
A7D8AB5923E2514100DCD162 /* SDL_offscreenopengl.c in Sources */,
|
||||
F38233962738EC1600F7F527 /* hid.m in Sources */,
|
||||
A7D8ACC723E2514100DCD162 /* SDL_uikitmetalview.m in Sources */,
|
||||
A7D8BA5F23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
||||
@@ -8772,6 +8886,7 @@
|
||||
A7D8A99723E2514000DCD162 /* SDL_sensor.c in Sources */,
|
||||
A7D8BAAD23E2514400DCD162 /* k_sin.c in Sources */,
|
||||
A7D8AB4D23E2514100DCD162 /* SDL_systimer.c in Sources */,
|
||||
F31A92D728D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A7D8BA2923E2514400DCD162 /* SDL_drawpoint.c in Sources */,
|
||||
F395C1B52569C6A000942BFF /* SDL_mfijoystick.m in Sources */,
|
||||
A7D8BAFB23E2514500DCD162 /* e_sqrt.c in Sources */,
|
||||
@@ -8797,6 +8912,7 @@
|
||||
A7D8BBD923E2574800DCD162 /* SDL_uikitmessagebox.m in Sources */,
|
||||
A7D8AD2923E2514100DCD162 /* SDL_vulkan_utils.c in Sources */,
|
||||
A7D8A95123E2514000DCD162 /* SDL_spinlock.c in Sources */,
|
||||
F34B9895291DEFF500AAC96E /* SDL_hidapi_steam.c in Sources */,
|
||||
A7D8BAAF23E2514400DCD162 /* s_atan.c in Sources */,
|
||||
A7D8B75223E2514300DCD162 /* SDL_sysloadso.c in Sources */,
|
||||
A7D8BBE123E2574800DCD162 /* SDL_uikitopenglview.m in Sources */,
|
||||
@@ -8811,6 +8927,7 @@
|
||||
A7D8A97523E2514000DCD162 /* SDL_coremotionsensor.m in Sources */,
|
||||
F382071D284F362F004DD584 /* SDL_guid.c in Sources */,
|
||||
A7D8BB8D23E2514500DCD162 /* SDL_touch.c in Sources */,
|
||||
F31A92D228D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A1626A3E2617006A003F1973 /* SDL_triangle.c in Sources */,
|
||||
A7D8B3F223E2514300DCD162 /* SDL_thread.c in Sources */,
|
||||
A7D8B55D23E2514300DCD162 /* SDL_hidapi_xbox360w.c in Sources */,
|
||||
@@ -8827,6 +8944,7 @@
|
||||
A7D8BABB23E2514400DCD162 /* s_scalbn.c in Sources */,
|
||||
F3973FAB28A59BDD00B84553 /* SDL_crc16.c in Sources */,
|
||||
A7D8AB2B23E2514100DCD162 /* SDL_timer.c in Sources */,
|
||||
F3D60A8328C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A7D8B9DD23E2514400DCD162 /* SDL_blendpoint.c in Sources */,
|
||||
A7D8B4EE23E2514300DCD162 /* SDL_gamecontroller.c in Sources */,
|
||||
A7D8AB3723E2514100DCD162 /* SDL_systimer.c in Sources */,
|
||||
@@ -8953,7 +9071,6 @@
|
||||
A7D8B5C923E2514300DCD162 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
F386F6F92884663E001840AA /* SDL_utils.c in Sources */,
|
||||
A7D8AC0F23E2514100DCD162 /* SDL_video.c in Sources */,
|
||||
A7D8AB5523E2514100DCD162 /* SDL_offscreenopengl.c in Sources */,
|
||||
A7D8BA5B23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
||||
A7D8B14023E2514200DCD162 /* SDL_blit_1.c in Sources */,
|
||||
A7D8BBDB23E2574800DCD162 /* SDL_uikitmetalview.m in Sources */,
|
||||
@@ -8967,6 +9084,7 @@
|
||||
A7D8BAA923E2514400DCD162 /* k_sin.c in Sources */,
|
||||
A7D8AB4923E2514100DCD162 /* SDL_systimer.c in Sources */,
|
||||
A7D8BA2523E2514400DCD162 /* SDL_drawpoint.c in Sources */,
|
||||
F388C95528B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A7D8BAF723E2514500DCD162 /* e_sqrt.c in Sources */,
|
||||
A7D8AEAC23E2514100DCD162 /* SDL_cocoavideo.m in Sources */,
|
||||
A7D8A94B23E2514000DCD162 /* SDL.c in Sources */,
|
||||
@@ -8989,6 +9107,7 @@
|
||||
A7D8B41F23E2514300DCD162 /* SDL_systls.c in Sources */,
|
||||
A7D8AD2C23E2514100DCD162 /* SDL_vulkan_utils.c in Sources */,
|
||||
A7D8A95423E2514000DCD162 /* SDL_spinlock.c in Sources */,
|
||||
F34B9896291DEFF700AAC96E /* SDL_hidapi_steam.c in Sources */,
|
||||
A7D8BAB223E2514400DCD162 /* s_atan.c in Sources */,
|
||||
F3A490A12554D38600E92A8B /* SDL_hidapi_ps5.c in Sources */,
|
||||
A7D8B75523E2514300DCD162 /* SDL_sysloadso.c in Sources */,
|
||||
@@ -9003,6 +9122,7 @@
|
||||
A7D8B3F523E2514300DCD162 /* SDL_thread.c in Sources */,
|
||||
F3820720284F362F004DD584 /* SDL_guid.c in Sources */,
|
||||
A7D8B56023E2514300DCD162 /* SDL_hidapi_xbox360w.c in Sources */,
|
||||
F31A92D628D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A1626A412617006A003F1973 /* SDL_triangle.c in Sources */,
|
||||
5616CA59252BB35C005D5928 /* SDL_sysurl.m in Sources */,
|
||||
A7D8A95A23E2514000DCD162 /* SDL_atomic.c in Sources */,
|
||||
@@ -9019,6 +9139,7 @@
|
||||
A7D8B43723E2514300DCD162 /* SDL_systhread.c in Sources */,
|
||||
F3973FAE28A59BDD00B84553 /* SDL_crc16.c in Sources */,
|
||||
A7D8BB3623E2514500DCD162 /* SDL_windowevents.c in Sources */,
|
||||
F3D60A8628C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A7D8BABE23E2514400DCD162 /* s_scalbn.c in Sources */,
|
||||
A7D8AB2E23E2514100DCD162 /* SDL_timer.c in Sources */,
|
||||
A7D8B9E023E2514400DCD162 /* SDL_blendpoint.c in Sources */,
|
||||
@@ -9145,7 +9266,6 @@
|
||||
A7D8B5CC23E2514300DCD162 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
F386F6FC2884663E001840AA /* SDL_utils.c in Sources */,
|
||||
A7D8AC1223E2514100DCD162 /* SDL_video.c in Sources */,
|
||||
A7D8AB5823E2514100DCD162 /* SDL_offscreenopengl.c in Sources */,
|
||||
A7D8BA5E23E2514400DCD162 /* SDL_shaders_gles2.c in Sources */,
|
||||
5605720A2473687900B46B66 /* SDL_syslocale.m in Sources */,
|
||||
A7D8B14323E2514200DCD162 /* SDL_blit_1.c in Sources */,
|
||||
@@ -9159,6 +9279,7 @@
|
||||
A7D8BAAC23E2514400DCD162 /* k_sin.c in Sources */,
|
||||
A7D8AB4C23E2514100DCD162 /* SDL_systimer.c in Sources */,
|
||||
A7D8BA2823E2514400DCD162 /* SDL_drawpoint.c in Sources */,
|
||||
F388C95828B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A7D8BAFA23E2514500DCD162 /* e_sqrt.c in Sources */,
|
||||
A7D8AEAF23E2514100DCD162 /* SDL_cocoavideo.m in Sources */,
|
||||
A7D8A94E23E2514000DCD162 /* SDL.c in Sources */,
|
||||
@@ -9181,6 +9302,7 @@
|
||||
A7D8AD2E23E2514100DCD162 /* SDL_vulkan_utils.c in Sources */,
|
||||
A7D8A95623E2514000DCD162 /* SDL_spinlock.c in Sources */,
|
||||
A7D8BAB423E2514400DCD162 /* s_atan.c in Sources */,
|
||||
F34B9897291DEFFA00AAC96E /* SDL_hidapi_steam.c in Sources */,
|
||||
A7D8B75723E2514300DCD162 /* SDL_sysloadso.c in Sources */,
|
||||
F3A490A42554D38600E92A8B /* SDL_hidapi_ps5.c in Sources */,
|
||||
A7D8B98B23E2514400DCD162 /* SDL_render_metal.m in Sources */,
|
||||
@@ -9195,6 +9317,7 @@
|
||||
A7D8B3F723E2514300DCD162 /* SDL_thread.c in Sources */,
|
||||
F3820723284F362F004DD584 /* SDL_guid.c in Sources */,
|
||||
A7D8B56223E2514300DCD162 /* SDL_hidapi_xbox360w.c in Sources */,
|
||||
F31A92D928D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
A1626A442617006A003F1973 /* SDL_triangle.c in Sources */,
|
||||
5616CA62252BB35E005D5928 /* SDL_sysurl.m in Sources */,
|
||||
A7D8A95C23E2514000DCD162 /* SDL_atomic.c in Sources */,
|
||||
@@ -9211,6 +9334,7 @@
|
||||
A7D8BAC023E2514500DCD162 /* s_scalbn.c in Sources */,
|
||||
F3973FB128A59BDD00B84553 /* SDL_crc16.c in Sources */,
|
||||
A7D8AB3023E2514100DCD162 /* SDL_timer.c in Sources */,
|
||||
F3D60A8928C16A1900788A3A /* SDL_hidapi_wii.c in Sources */,
|
||||
A7D8B9E223E2514400DCD162 /* SDL_blendpoint.c in Sources */,
|
||||
A7D8B4F323E2514300DCD162 /* SDL_gamecontroller.c in Sources */,
|
||||
A7D8AB3C23E2514100DCD162 /* SDL_systimer.c in Sources */,
|
||||
@@ -9334,7 +9458,6 @@
|
||||
A7D8B5CE23E2514300DCD162 /* SDL_rwopsbundlesupport.m in Sources */,
|
||||
F3F07D60269640160074468B /* SDL_hidapi_luna.c in Sources */,
|
||||
A7D8AC1423E2514100DCD162 /* SDL_video.c in Sources */,
|
||||
A7D8AB5A23E2514100DCD162 /* SDL_offscreenopengl.c in Sources */,
|
||||
F386F6FF2884663E001840AA /* SDL_utils.c in Sources */,
|
||||
A7D8ACC823E2514100DCD162 /* SDL_uikitmetalview.m in Sources */,
|
||||
A7D8BBBA23E2560600DCD162 /* SDL_steamcontroller.c in Sources */,
|
||||
@@ -9351,6 +9474,7 @@
|
||||
A7D8BAAE23E2514400DCD162 /* k_sin.c in Sources */,
|
||||
A7D8AB4E23E2514100DCD162 /* SDL_systimer.c in Sources */,
|
||||
A7D8BA2A23E2514400DCD162 /* SDL_drawpoint.c in Sources */,
|
||||
F388C95B28B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */,
|
||||
A7D8BAFC23E2514500DCD162 /* e_sqrt.c in Sources */,
|
||||
A7D8AEB123E2514100DCD162 /* SDL_cocoavideo.m in Sources */,
|
||||
A7D8A95023E2514000DCD162 /* SDL.c in Sources */,
|
||||
@@ -9360,6 +9484,14 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
E2D187CB28A5673500D2B4F1 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F31A92D528D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXTargetDependency section */
|
||||
@@ -9396,8 +9528,8 @@
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 2401.0.0;
|
||||
DYLIB_CURRENT_VERSION = 2401.1.0;
|
||||
DYLIB_COMPATIBILITY_VERSION = 2801.0.0;
|
||||
DYLIB_CURRENT_VERSION = 2801.0.0;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_ALTIVEC_EXTENSIONS = YES;
|
||||
@@ -9426,7 +9558,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.9;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.11;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL2;
|
||||
PRODUCT_NAME = SDL2;
|
||||
STRIP_STYLE = "non-global";
|
||||
@@ -9438,7 +9570,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_LINK_OBJC_RUNTIME = NO;
|
||||
MARKETING_VERSION = 2.0.17;
|
||||
MARKETING_VERSION = 2.28.0;
|
||||
OTHER_LDFLAGS = "-liconv";
|
||||
};
|
||||
name = Release;
|
||||
@@ -9481,8 +9613,8 @@
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DYLIB_COMPATIBILITY_VERSION = 2401.0.0;
|
||||
DYLIB_CURRENT_VERSION = 2401.1.0;
|
||||
DYLIB_COMPATIBILITY_VERSION = 2801.0.0;
|
||||
DYLIB_CURRENT_VERSION = 2801.0.0;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
@@ -9511,8 +9643,8 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.9;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.11;
|
||||
ONLY_ACTIVE_ARCH = NO;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL2;
|
||||
PRODUCT_NAME = SDL2;
|
||||
STRIP_INSTALLED_PRODUCT = NO;
|
||||
@@ -9524,7 +9656,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_LINK_OBJC_RUNTIME = NO;
|
||||
MARKETING_VERSION = 2.0.17;
|
||||
MARKETING_VERSION = 2.28.0;
|
||||
OTHER_LDFLAGS = "-liconv";
|
||||
};
|
||||
name = Debug;
|
||||
@@ -9711,6 +9843,107 @@
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
E2D187D428A5673500D2B4F1 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
DYLIB_COMPATIBILITY_VERSION = 2801.0.0;
|
||||
DYLIB_CURRENT_VERSION = 2801.0.0;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
INFOPLIST_FILE = SDL2/Info.plist;
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.1;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
||||
MTL_FAST_MATH = YES;
|
||||
OTHER_LDFLAGS = "-liconv";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "";
|
||||
PRODUCT_NAME = SDL2;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = NO;
|
||||
SUPPORTS_MACCATALYST = NO;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
E2D187D528A5673500D2B4F1 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
DYLIB_COMPATIBILITY_VERSION = 2801.0.0;
|
||||
DYLIB_CURRENT_VERSION = 2801.0.0;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
INFOPLIST_FILE = SDL2/Info.plist;
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.1;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
MTL_FAST_MATH = YES;
|
||||
OTHER_LDFLAGS = "-liconv";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "";
|
||||
PRODUCT_NAME = SDL2;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = NO;
|
||||
SUPPORTS_MACCATALYST = NO;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = NO;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
@@ -9813,6 +10046,15 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
E2D187D628A5673500D2B4F1 /* Build configuration list for PBXNativeTarget "xcFramework-iOS" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
E2D187D428A5673500D2B4F1 /* Debug */,
|
||||
E2D187D528A5673500D2B4F1 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1240"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "A7D88A1423E2437C00DCD162"
|
||||
BuildableName = "SDL2.framework"
|
||||
BlueprintName = "Framework-iOS"
|
||||
ReferencedContainer = "container:SDL.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "A7D88A1423E2437C00DCD162"
|
||||
BuildableName = "SDL2.framework"
|
||||
BlueprintName = "Framework-iOS"
|
||||
ReferencedContainer = "container:SDL.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1240"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "E2D187CE28A5673500D2B4F1"
|
||||
BuildableName = "SDL2.framework"
|
||||
BlueprintName = "xcFramework-iOS"
|
||||
ReferencedContainer = "container:SDL.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "E2D187CE28A5673500D2B4F1"
|
||||
BuildableName = "SDL2.framework"
|
||||
BlueprintName = "xcFramework-iOS"
|
||||
ReferencedContainer = "container:SDL.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
@@ -3,34 +3,20 @@
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string></string>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>iOS Launch Screen</string>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array/>
|
||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||
<true/>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,4 +1,4 @@
|
||||
Title SDL 2.0.0
|
||||
Title SDL 2.28.0
|
||||
Version 1
|
||||
Description SDL Library for Mac OS X (http://www.libsdl.org)
|
||||
DefaultLocation /Library/Frameworks
|
||||
|
||||
@@ -39,7 +39,7 @@ string(REGEX REPLACE "SDL2\\.framework.*" "" SDL2_FRAMEWORK_PARENT_PATH "${CMAKE
|
||||
set_and_check(SDL2_PREFIX "${SDL2_FRAMEWORK_PATH}")
|
||||
set_and_check(SDL2_EXEC_PREFIX "${SDL2_FRAMEWORK_PATH}")
|
||||
set_and_check(SDL2_INCLUDE_DIR "${SDL2_FRAMEWORK_PATH}/Headers")
|
||||
set(SDL2_INCLUDE_DIRS "${SDL2_INCLUDE_DIR}")
|
||||
set(SDL2_INCLUDE_DIRS "${SDL2_INCLUDE_DIR};${SDL2_FRAMEWORK_PATH}")
|
||||
set_and_check(SDL2_BINDIR "${SDL2_FRAMEWORK_PATH}")
|
||||
set_and_check(SDL2_LIBDIR "${SDL2_FRAMEWORK_PATH}")
|
||||
|
||||
@@ -53,10 +53,12 @@ if(NOT TARGET SDL2::SDL2)
|
||||
set_target_properties(SDL2::SDL2
|
||||
PROPERTIES
|
||||
INTERFACE_COMPILE_OPTIONS "SHELL:-F \"${SDL2_FRAMEWORK_PARENT_PATH}\""
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${SDL2_INCLUDE_DIR}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${SDL2_INCLUDE_DIRS}"
|
||||
INTERFACE_LINK_OPTIONS "SHELL:-F \"${SDL2_FRAMEWORK_PARENT_PATH}\";SHELL:-framework SDL2"
|
||||
COMPATIBLE_INTERFACE_BOOL "SDL2_SHARED"
|
||||
INTERFACE_SDL2_SHARED "ON"
|
||||
COMPATIBLE_INTERFACE_STRING "SDL_VERSION"
|
||||
INTERFACE_SDL_VERSION "SDL2"
|
||||
)
|
||||
endif()
|
||||
set(SDL2_SDL2_FOUND TRUE)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>
|
||||
Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
14
Xcode/SDLTest/config.xcconfig
Normal file
14
Xcode/SDLTest/config.xcconfig
Normal file
@@ -0,0 +1,14 @@
|
||||
//
|
||||
// config.xcconfig
|
||||
// SDL tests
|
||||
//
|
||||
|
||||
// Configuration settings file format documentation can be found at:
|
||||
// https://help.apple.com/xcode/#/dev745c5c974
|
||||
|
||||
// Include any optional config for this build
|
||||
#include? "build.xcconfig"
|
||||
|
||||
CONFIG_FRAMEWORK_LDFLAGS[sdk=macos*] = $(inherited) -framework SDL2 -framework AudioToolbox -framework Carbon -framework Cocoa -framework CoreAudio -framework CoreHaptics -framework CoreVideo -framework ForceFeedback -framework GameController -framework IOKit -framework Metal
|
||||
CONFIG_FRAMEWORK_LDFLAGS[sdk=iphone*] = $(inherited) -framework SDL2 -framework AVFoundation -framework AudioToolbox -framework CoreGraphics -framework CoreHaptics -framework CoreMotion -framework Foundation -framework GameController -framework Metal -framework OpenGLES -framework QuartzCore -framework UIKit
|
||||
CONFIG_FRAMEWORK_LDFLAGS[sdk=appletv*] = $(inherited) -framework SDL2 -framework AVFoundation -framework AudioToolbox -framework CoreGraphics -framework CoreHaptics -framework Foundation -framework GameController -framework Metal -framework OpenGLES -framework QuartzCore -framework UIKit
|
||||
@@ -186,7 +186,7 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
||||
// Because on Chromebooks we show up as a dual-mode device, it will attempt to connect TRANSPORT_AUTO, which will use TRANSPORT_BREDR instead
|
||||
// of TRANSPORT_LE. Let's force ourselves to connect low energy.
|
||||
private BluetoothGatt connectGatt(boolean managed) {
|
||||
if (Build.VERSION.SDK_INT >= 23) {
|
||||
if (Build.VERSION.SDK_INT >= 23 /* Android 6.0 (M) */) {
|
||||
try {
|
||||
return mDevice.connectGatt(mManager.getContext(), managed, this, TRANSPORT_LE);
|
||||
} catch (Exception e) {
|
||||
@@ -429,7 +429,7 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (newState == 0) {
|
||||
mIsConnected = false;
|
||||
}
|
||||
|
||||
@@ -170,7 +170,7 @@ public class HIDDeviceManager {
|
||||
Log.i(TAG," Interface protocol: " + mUsbInterface.getInterfaceProtocol());
|
||||
Log.i(TAG," Endpoint count: " + mUsbInterface.getEndpointCount());
|
||||
|
||||
// Get endpoint details
|
||||
// Get endpoint details
|
||||
for (int epi = 0; epi < mUsbInterface.getEndpointCount(); epi++)
|
||||
{
|
||||
UsbEndpoint mEndpoint = mUsbInterface.getEndpoint(epi);
|
||||
@@ -251,6 +251,8 @@ public class HIDDeviceManager {
|
||||
0x20d6, // PowerA
|
||||
0x24c6, // PowerA
|
||||
0x2c22, // Qanba
|
||||
0x2dc8, // 8BitDo
|
||||
0x9886, // ASTRO Gaming
|
||||
};
|
||||
|
||||
if (usbInterface.getInterfaceClass() == UsbConstants.USB_CLASS_VENDOR_SPEC &&
|
||||
@@ -271,14 +273,16 @@ public class HIDDeviceManager {
|
||||
final int XB1_IFACE_SUBCLASS = 71;
|
||||
final int XB1_IFACE_PROTOCOL = 208;
|
||||
final int[] SUPPORTED_VENDORS = {
|
||||
0x044f, // Thrustmaster
|
||||
0x045e, // Microsoft
|
||||
0x0738, // Mad Catz
|
||||
0x0e6f, // PDP
|
||||
0x0f0d, // Hori
|
||||
0x10f5, // Turtle Beach
|
||||
0x1532, // Razer Wildcat
|
||||
0x20d6, // PowerA
|
||||
0x24c6, // PowerA
|
||||
0x2dc8, /* 8BitDo */
|
||||
0x2dc8, // 8BitDo
|
||||
0x2e24, // Hyperkin
|
||||
};
|
||||
|
||||
@@ -353,13 +357,13 @@ public class HIDDeviceManager {
|
||||
private void initializeBluetooth() {
|
||||
Log.d(TAG, "Initializing Bluetooth");
|
||||
|
||||
if (Build.VERSION.SDK_INT <= 30 &&
|
||||
if (Build.VERSION.SDK_INT <= 30 /* Android 11.0 (R) */ &&
|
||||
mContext.getPackageManager().checkPermission(android.Manifest.permission.BLUETOOTH, mContext.getPackageName()) != PackageManager.PERMISSION_GRANTED) {
|
||||
Log.d(TAG, "Couldn't initialize Bluetooth, missing android.permission.BLUETOOTH");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE) || (Build.VERSION.SDK_INT < 18)) {
|
||||
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");
|
||||
return;
|
||||
}
|
||||
@@ -524,7 +528,7 @@ public class HIDDeviceManager {
|
||||
for (HIDDevice device : mDevicesById.values()) {
|
||||
device.setFrozen(frozen);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -573,7 +577,7 @@ public class HIDDeviceManager {
|
||||
try {
|
||||
final int FLAG_MUTABLE = 0x02000000; // PendingIntent.FLAG_MUTABLE, but don't require SDK 31
|
||||
int flags;
|
||||
if (Build.VERSION.SDK_INT >= 31) {
|
||||
if (Build.VERSION.SDK_INT >= 31 /* Android 12.0 (S) */) {
|
||||
flags = FLAG_MUTABLE;
|
||||
} else {
|
||||
flags = 0;
|
||||
|
||||
@@ -52,7 +52,7 @@ class HIDDeviceUSB implements HIDDevice {
|
||||
@Override
|
||||
public String getSerialNumber() {
|
||||
String result = null;
|
||||
if (Build.VERSION.SDK_INT >= 21) {
|
||||
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||
try {
|
||||
result = mDevice.getSerialNumber();
|
||||
}
|
||||
@@ -74,7 +74,7 @@ class HIDDeviceUSB implements HIDDevice {
|
||||
@Override
|
||||
public String getManufacturerName() {
|
||||
String result = null;
|
||||
if (Build.VERSION.SDK_INT >= 21) {
|
||||
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||
result = mDevice.getManufacturerName();
|
||||
}
|
||||
if (result == null) {
|
||||
@@ -86,7 +86,7 @@ class HIDDeviceUSB implements HIDDevice {
|
||||
@Override
|
||||
public String getProductName() {
|
||||
String result = null;
|
||||
if (Build.VERSION.SDK_INT >= 21) {
|
||||
if (Build.VERSION.SDK_INT >= 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||
result = mDevice.getProductName();
|
||||
}
|
||||
if (result == null) {
|
||||
|
||||
@@ -29,6 +29,7 @@ public class SDL {
|
||||
|
||||
// This function stores the current activity (SDL or not)
|
||||
public static void setContext(Context context) {
|
||||
SDLAudioManager.setContext(context);
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,8 @@
|
||||
package org.libsdl.app;
|
||||
|
||||
import android.content.Context;
|
||||
import android.media.AudioDeviceCallback;
|
||||
import android.media.AudioDeviceInfo;
|
||||
import android.media.AudioFormat;
|
||||
import android.media.AudioManager;
|
||||
import android.media.AudioRecord;
|
||||
@@ -8,34 +11,67 @@ import android.media.MediaRecorder;
|
||||
import android.os.Build;
|
||||
import android.util.Log;
|
||||
|
||||
public class SDLAudioManager
|
||||
{
|
||||
import java.util.Arrays;
|
||||
|
||||
public class SDLAudioManager {
|
||||
protected static final String TAG = "SDLAudio";
|
||||
|
||||
protected static AudioTrack mAudioTrack;
|
||||
protected static AudioRecord mAudioRecord;
|
||||
protected static Context mContext;
|
||||
|
||||
private static final int[] NO_DEVICES = {};
|
||||
|
||||
private static AudioDeviceCallback mAudioDeviceCallback;
|
||||
|
||||
public static void initialize() {
|
||||
mAudioTrack = null;
|
||||
mAudioRecord = null;
|
||||
mAudioDeviceCallback = null;
|
||||
|
||||
if(Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */)
|
||||
{
|
||||
mAudioDeviceCallback = new AudioDeviceCallback() {
|
||||
@Override
|
||||
public void onAudioDevicesAdded(AudioDeviceInfo[] addedDevices) {
|
||||
Arrays.stream(addedDevices).forEach(deviceInfo -> addAudioDevice(deviceInfo.isSink(), deviceInfo.getId()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAudioDevicesRemoved(AudioDeviceInfo[] removedDevices) {
|
||||
Arrays.stream(removedDevices).forEach(deviceInfo -> removeAudioDevice(deviceInfo.isSink(), deviceInfo.getId()));
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public static void setContext(Context context) {
|
||||
mContext = context;
|
||||
if (context != null) {
|
||||
registerAudioDeviceCallback();
|
||||
}
|
||||
}
|
||||
|
||||
public static void release(Context context) {
|
||||
unregisterAudioDeviceCallback(context);
|
||||
}
|
||||
|
||||
// Audio
|
||||
|
||||
protected static String getAudioFormatString(int audioFormat) {
|
||||
switch (audioFormat) {
|
||||
case AudioFormat.ENCODING_PCM_8BIT:
|
||||
return "8-bit";
|
||||
case AudioFormat.ENCODING_PCM_16BIT:
|
||||
return "16-bit";
|
||||
case AudioFormat.ENCODING_PCM_FLOAT:
|
||||
return "float";
|
||||
default:
|
||||
return Integer.toString(audioFormat);
|
||||
case AudioFormat.ENCODING_PCM_8BIT:
|
||||
return "8-bit";
|
||||
case AudioFormat.ENCODING_PCM_16BIT:
|
||||
return "16-bit";
|
||||
case AudioFormat.ENCODING_PCM_FLOAT:
|
||||
return "float";
|
||||
default:
|
||||
return Integer.toString(audioFormat);
|
||||
}
|
||||
}
|
||||
|
||||
protected static int[] open(boolean isCapture, int sampleRate, int audioFormat, int desiredChannels, int desiredFrames) {
|
||||
protected static int[] open(boolean isCapture, int sampleRate, int audioFormat, int desiredChannels, int desiredFrames, int deviceId) {
|
||||
int channelConfig;
|
||||
int sampleSize;
|
||||
int frameSize;
|
||||
@@ -43,14 +79,14 @@ public class SDLAudioManager
|
||||
Log.v(TAG, "Opening " + (isCapture ? "capture" : "playback") + ", requested " + desiredFrames + " frames of " + desiredChannels + " channel " + getAudioFormatString(audioFormat) + " audio at " + sampleRate + " Hz");
|
||||
|
||||
/* On older devices let's use known good settings */
|
||||
if (Build.VERSION.SDK_INT < 21) {
|
||||
if (Build.VERSION.SDK_INT < 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||
if (desiredChannels > 2) {
|
||||
desiredChannels = 2;
|
||||
}
|
||||
}
|
||||
|
||||
/* AudioTrack has sample rate limitation of 48000 (fixed in 5.0.2) */
|
||||
if (Build.VERSION.SDK_INT < 22) {
|
||||
if (Build.VERSION.SDK_INT < 22 /* Android 5.1 (LOLLIPOP_MR1) */) {
|
||||
if (sampleRate < 8000) {
|
||||
sampleRate = 8000;
|
||||
} else if (sampleRate > 48000) {
|
||||
@@ -59,7 +95,7 @@ public class SDLAudioManager
|
||||
}
|
||||
|
||||
if (audioFormat == AudioFormat.ENCODING_PCM_FLOAT) {
|
||||
int minSDKVersion = (isCapture ? 23 : 21);
|
||||
int minSDKVersion = (isCapture ? 23 /* Android 6.0 (M) */ : 21 /* Android 5.0 (LOLLIPOP) */);
|
||||
if (Build.VERSION.SDK_INT < minSDKVersion) {
|
||||
audioFormat = AudioFormat.ENCODING_PCM_16BIT;
|
||||
}
|
||||
@@ -120,7 +156,7 @@ public class SDLAudioManager
|
||||
channelConfig = AudioFormat.CHANNEL_OUT_5POINT1 | AudioFormat.CHANNEL_OUT_BACK_CENTER;
|
||||
break;
|
||||
case 8:
|
||||
if (Build.VERSION.SDK_INT >= 23) {
|
||||
if (Build.VERSION.SDK_INT >= 23 /* Android 6.0 (M) */) {
|
||||
channelConfig = AudioFormat.CHANNEL_OUT_7POINT1_SURROUND;
|
||||
} else {
|
||||
Log.v(TAG, "Requested " + desiredChannels + " channels, getting 5.1 surround");
|
||||
@@ -201,6 +237,10 @@ public class SDLAudioManager
|
||||
return null;
|
||||
}
|
||||
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */ && deviceId != 0) {
|
||||
mAudioRecord.setPreferredDevice(getOutputAudioDeviceInfo(deviceId));
|
||||
}
|
||||
|
||||
mAudioRecord.startRecording();
|
||||
}
|
||||
|
||||
@@ -224,6 +264,10 @@ public class SDLAudioManager
|
||||
return null;
|
||||
}
|
||||
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */ && deviceId != 0) {
|
||||
mAudioTrack.setPreferredDevice(getInputAudioDeviceInfo(deviceId));
|
||||
}
|
||||
|
||||
mAudioTrack.play();
|
||||
}
|
||||
|
||||
@@ -238,11 +282,73 @@ public class SDLAudioManager
|
||||
return results;
|
||||
}
|
||||
|
||||
private static AudioDeviceInfo getInputAudioDeviceInfo(int deviceId) {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||
return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_INPUTS))
|
||||
.filter(deviceInfo -> deviceInfo.getId() == deviceId)
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private static AudioDeviceInfo getOutputAudioDeviceInfo(int deviceId) {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||
return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS))
|
||||
.filter(deviceInfo -> deviceInfo.getId() == deviceId)
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private static void registerAudioDeviceCallback() {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||
audioManager.registerAudioDeviceCallback(mAudioDeviceCallback, null);
|
||||
}
|
||||
}
|
||||
|
||||
private static void unregisterAudioDeviceCallback(Context context) {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
|
||||
audioManager.unregisterAudioDeviceCallback(mAudioDeviceCallback);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is called by SDL using JNI.
|
||||
*/
|
||||
public static int[] audioOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames) {
|
||||
return open(false, sampleRate, audioFormat, desiredChannels, desiredFrames);
|
||||
public static int[] getAudioOutputDevices() {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||
return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS)).mapToInt(AudioDeviceInfo::getId).toArray();
|
||||
} else {
|
||||
return NO_DEVICES;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is called by SDL using JNI.
|
||||
*/
|
||||
public static int[] getAudioInputDevices() {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
|
||||
return Arrays.stream(audioManager.getDevices(AudioManager.GET_DEVICES_INPUTS)).mapToInt(AudioDeviceInfo::getId).toArray();
|
||||
} else {
|
||||
return NO_DEVICES;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is called by SDL using JNI.
|
||||
*/
|
||||
public static int[] audioOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames, int deviceId) {
|
||||
return open(false, sampleRate, audioFormat, desiredChannels, desiredFrames, deviceId);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -254,6 +360,11 @@ public class SDLAudioManager
|
||||
return;
|
||||
}
|
||||
|
||||
if (android.os.Build.VERSION.SDK_INT < 21 /* Android 5.0 (LOLLIPOP) */) {
|
||||
Log.e(TAG, "Attempted to make an incompatible audio call with uninitialized audio! (floating-point output is supported since Android 5.0 Lollipop)");
|
||||
return;
|
||||
}
|
||||
|
||||
for (int i = 0; i < buffer.length;) {
|
||||
int result = mAudioTrack.write(buffer, i, buffer.length - i, AudioTrack.WRITE_BLOCKING);
|
||||
if (result > 0) {
|
||||
@@ -326,18 +437,22 @@ public class SDLAudioManager
|
||||
/**
|
||||
* This method is called by SDL using JNI.
|
||||
*/
|
||||
public static int[] captureOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames) {
|
||||
return open(true, sampleRate, audioFormat, desiredChannels, desiredFrames);
|
||||
public static int[] captureOpen(int sampleRate, int audioFormat, int desiredChannels, int desiredFrames, int deviceId) {
|
||||
return open(true, sampleRate, audioFormat, desiredChannels, desiredFrames, deviceId);
|
||||
}
|
||||
|
||||
/** This method is called by SDL using JNI. */
|
||||
public static int captureReadFloatBuffer(float[] buffer, boolean blocking) {
|
||||
return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING);
|
||||
if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) {
|
||||
return 0;
|
||||
} else {
|
||||
return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING);
|
||||
}
|
||||
}
|
||||
|
||||
/** This method is called by SDL using JNI. */
|
||||
public static int captureReadShortBuffer(short[] buffer, boolean blocking) {
|
||||
if (Build.VERSION.SDK_INT < 23) {
|
||||
if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) {
|
||||
return mAudioRecord.read(buffer, 0, buffer.length);
|
||||
} else {
|
||||
return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING);
|
||||
@@ -346,7 +461,7 @@ public class SDLAudioManager
|
||||
|
||||
/** This method is called by SDL using JNI. */
|
||||
public static int captureReadByteBuffer(byte[] buffer, boolean blocking) {
|
||||
if (Build.VERSION.SDK_INT < 23) {
|
||||
if (Build.VERSION.SDK_INT < 23 /* Android 6.0 (M) */) {
|
||||
return mAudioRecord.read(buffer, 0, buffer.length);
|
||||
} else {
|
||||
return mAudioRecord.read(buffer, 0, buffer.length, blocking ? AudioRecord.READ_BLOCKING : AudioRecord.READ_NON_BLOCKING);
|
||||
@@ -391,4 +506,9 @@ public class SDLAudioManager
|
||||
}
|
||||
|
||||
public static native int nativeSetupJNI();
|
||||
|
||||
public static native void removeAudioDevice(boolean isCapture, int deviceId);
|
||||
|
||||
public static native void addAudioDevice(boolean isCapture, int deviceId);
|
||||
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ public class SDLControllerManager
|
||||
public static native int nativeAddJoystick(int device_id, String name, String desc,
|
||||
int vendor_id, int product_id,
|
||||
boolean is_accelerometer, int button_mask,
|
||||
int naxes, int nhats, int nballs);
|
||||
int naxes, int axis_mask, int nhats, int nballs);
|
||||
public static native int nativeRemoveJoystick(int device_id);
|
||||
public static native int nativeAddHaptic(int device_id, String name);
|
||||
public static native int nativeRemoveHaptic(int device_id);
|
||||
@@ -42,7 +42,7 @@ public class SDLControllerManager
|
||||
|
||||
public static void initialize() {
|
||||
if (mJoystickHandler == null) {
|
||||
if (Build.VERSION.SDK_INT >= 19) {
|
||||
if (Build.VERSION.SDK_INT >= 19 /* Android 4.4 (KITKAT) */) {
|
||||
mJoystickHandler = new SDLJoystickHandler_API19();
|
||||
} else {
|
||||
mJoystickHandler = new SDLJoystickHandler_API16();
|
||||
@@ -50,7 +50,7 @@ public class SDLControllerManager
|
||||
}
|
||||
|
||||
if (mHapticHandler == null) {
|
||||
if (Build.VERSION.SDK_INT >= 26) {
|
||||
if (Build.VERSION.SDK_INT >= 26 /* Android 8.0 (O) */) {
|
||||
mHapticHandler = new SDLHapticHandler_API26();
|
||||
} else {
|
||||
mHapticHandler = new SDLHapticHandler();
|
||||
@@ -168,6 +168,32 @@ class SDLJoystickHandler_API16 extends SDLJoystickHandler {
|
||||
arg1Axis = MotionEvent.AXIS_GAS;
|
||||
}
|
||||
|
||||
// Make sure the AXIS_Z is sorted between AXIS_RY and AXIS_RZ.
|
||||
// This is because the usual pairing are:
|
||||
// - AXIS_X + AXIS_Y (left stick).
|
||||
// - AXIS_RX, AXIS_RY (sometimes the right stick, sometimes triggers).
|
||||
// - AXIS_Z, AXIS_RZ (sometimes the right stick, sometimes triggers).
|
||||
// This sorts the axes in the above order, which tends to be correct
|
||||
// for Xbox-ish game pads that have the right stick on RX/RY and the
|
||||
// triggers on Z/RZ.
|
||||
//
|
||||
// Gamepads that don't have AXIS_Z/AXIS_RZ but use
|
||||
// AXIS_LTRIGGER/AXIS_RTRIGGER are unaffected by this.
|
||||
//
|
||||
// References:
|
||||
// - https://developer.android.com/develop/ui/views/touch-and-input/game-controllers/controller-input
|
||||
// - https://www.kernel.org/doc/html/latest/input/gamepad.html
|
||||
if (arg0Axis == MotionEvent.AXIS_Z) {
|
||||
arg0Axis = MotionEvent.AXIS_RZ - 1;
|
||||
} else if (arg0Axis > MotionEvent.AXIS_Z && arg0Axis < MotionEvent.AXIS_RZ) {
|
||||
--arg0Axis;
|
||||
}
|
||||
if (arg1Axis == MotionEvent.AXIS_Z) {
|
||||
arg1Axis = MotionEvent.AXIS_RZ - 1;
|
||||
} else if (arg1Axis > MotionEvent.AXIS_Z && arg1Axis < MotionEvent.AXIS_RZ) {
|
||||
--arg1Axis;
|
||||
}
|
||||
|
||||
return arg0Axis - arg1Axis;
|
||||
}
|
||||
}
|
||||
@@ -210,7 +236,7 @@ class SDLJoystickHandler_API16 extends SDLJoystickHandler {
|
||||
mJoysticks.add(joystick);
|
||||
SDLControllerManager.nativeAddJoystick(joystick.device_id, joystick.name, joystick.desc,
|
||||
getVendorId(joystickDevice), getProductId(joystickDevice), false,
|
||||
getButtonMask(joystickDevice), joystick.axes.size(), joystick.hats.size()/2, 0);
|
||||
getButtonMask(joystickDevice), joystick.axes.size(), getAxisMask(joystick.axes), joystick.hats.size()/2, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -291,6 +317,9 @@ class SDLJoystickHandler_API16 extends SDLJoystickHandler {
|
||||
public int getVendorId(InputDevice joystickDevice) {
|
||||
return 0;
|
||||
}
|
||||
public int getAxisMask(List<InputDevice.MotionRange> ranges) {
|
||||
return -1;
|
||||
}
|
||||
public int getButtonMask(InputDevice joystickDevice) {
|
||||
return -1;
|
||||
}
|
||||
@@ -308,6 +337,43 @@ class SDLJoystickHandler_API19 extends SDLJoystickHandler_API16 {
|
||||
return joystickDevice.getVendorId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAxisMask(List<InputDevice.MotionRange> ranges) {
|
||||
// For compatibility, keep computing the axis mask like before,
|
||||
// only really distinguishing 2, 4 and 6 axes.
|
||||
int axis_mask = 0;
|
||||
if (ranges.size() >= 2) {
|
||||
// ((1 << SDL_GAMEPAD_AXIS_LEFTX) | (1 << SDL_GAMEPAD_AXIS_LEFTY))
|
||||
axis_mask |= 0x0003;
|
||||
}
|
||||
if (ranges.size() >= 4) {
|
||||
// ((1 << SDL_GAMEPAD_AXIS_RIGHTX) | (1 << SDL_GAMEPAD_AXIS_RIGHTY))
|
||||
axis_mask |= 0x000c;
|
||||
}
|
||||
if (ranges.size() >= 6) {
|
||||
// ((1 << SDL_GAMEPAD_AXIS_LEFT_TRIGGER) | (1 << SDL_GAMEPAD_AXIS_RIGHT_TRIGGER))
|
||||
axis_mask |= 0x0030;
|
||||
}
|
||||
// Also add an indicator bit for whether the sorting order has changed.
|
||||
// This serves to disable outdated gamecontrollerdb.txt mappings.
|
||||
boolean have_z = false;
|
||||
boolean have_past_z_before_rz = false;
|
||||
for (InputDevice.MotionRange range : ranges) {
|
||||
int axis = range.getAxis();
|
||||
if (axis == MotionEvent.AXIS_Z) {
|
||||
have_z = true;
|
||||
} else if (axis > MotionEvent.AXIS_Z && axis < MotionEvent.AXIS_RZ) {
|
||||
have_past_z_before_rz = true;
|
||||
}
|
||||
}
|
||||
if (have_z && have_past_z_before_rz) {
|
||||
// If both these exist, the compare() function changed sorting order.
|
||||
// Set a bit to indicate this fact.
|
||||
axis_mask |= 0x8000;
|
||||
}
|
||||
return axis_mask;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getButtonMask(InputDevice joystickDevice) {
|
||||
int button_mask = 0;
|
||||
@@ -743,7 +809,7 @@ class SDLGenericMotionListener_API26 extends SDLGenericMotionListener_API24 {
|
||||
|
||||
@Override
|
||||
public boolean supportsRelativeMouse() {
|
||||
return (!SDLActivity.isDeXMode() || (Build.VERSION.SDK_INT >= 27));
|
||||
return (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -753,7 +819,7 @@ class SDLGenericMotionListener_API26 extends SDLGenericMotionListener_API24 {
|
||||
|
||||
@Override
|
||||
public boolean setRelativeMouseEnabled(boolean enabled) {
|
||||
if (!SDLActivity.isDeXMode() || (Build.VERSION.SDK_INT >= 27)) {
|
||||
if (!SDLActivity.isDeXMode() || Build.VERSION.SDK_INT >= 27 /* Android 8.1 (O_MR1) */) {
|
||||
if (enabled) {
|
||||
SDLActivity.getContentView().requestPointerCapture();
|
||||
} else {
|
||||
|
||||
405
android-project/app/src/main/java/org/libsdl/app/SDLSurface.java
Normal file
405
android-project/app/src/main/java/org/libsdl/app/SDLSurface.java
Normal file
@@ -0,0 +1,405 @@
|
||||
package org.libsdl.app;
|
||||
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.pm.ActivityInfo;
|
||||
import android.hardware.Sensor;
|
||||
import android.hardware.SensorEvent;
|
||||
import android.hardware.SensorEventListener;
|
||||
import android.hardware.SensorManager;
|
||||
import android.os.Build;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.util.Log;
|
||||
import android.view.Display;
|
||||
import android.view.InputDevice;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.Surface;
|
||||
import android.view.SurfaceHolder;
|
||||
import android.view.SurfaceView;
|
||||
import android.view.View;
|
||||
import android.view.WindowManager;
|
||||
|
||||
|
||||
/**
|
||||
SDLSurface. This is what we draw on, so we need to know when it's created
|
||||
in order to do anything useful.
|
||||
|
||||
Because of this, that's where we set up the SDL thread
|
||||
*/
|
||||
public class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
||||
View.OnKeyListener, View.OnTouchListener, SensorEventListener {
|
||||
|
||||
// Sensors
|
||||
protected SensorManager mSensorManager;
|
||||
protected Display mDisplay;
|
||||
|
||||
// Keep track of the surface size to normalize touch events
|
||||
protected float mWidth, mHeight;
|
||||
|
||||
// Is SurfaceView ready for rendering
|
||||
public boolean mIsSurfaceReady;
|
||||
|
||||
// Startup
|
||||
public SDLSurface(Context context) {
|
||||
super(context);
|
||||
getHolder().addCallback(this);
|
||||
|
||||
setFocusable(true);
|
||||
setFocusableInTouchMode(true);
|
||||
requestFocus();
|
||||
setOnKeyListener(this);
|
||||
setOnTouchListener(this);
|
||||
|
||||
mDisplay = ((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
|
||||
mSensorManager = (SensorManager)context.getSystemService(Context.SENSOR_SERVICE);
|
||||
|
||||
setOnGenericMotionListener(SDLActivity.getMotionListener());
|
||||
|
||||
// Some arbitrary defaults to avoid a potential division by zero
|
||||
mWidth = 1.0f;
|
||||
mHeight = 1.0f;
|
||||
|
||||
mIsSurfaceReady = false;
|
||||
}
|
||||
|
||||
public void handlePause() {
|
||||
enableSensor(Sensor.TYPE_ACCELEROMETER, false);
|
||||
}
|
||||
|
||||
public void handleResume() {
|
||||
setFocusable(true);
|
||||
setFocusableInTouchMode(true);
|
||||
requestFocus();
|
||||
setOnKeyListener(this);
|
||||
setOnTouchListener(this);
|
||||
enableSensor(Sensor.TYPE_ACCELEROMETER, true);
|
||||
}
|
||||
|
||||
public Surface getNativeSurface() {
|
||||
return getHolder().getSurface();
|
||||
}
|
||||
|
||||
// Called when we have a valid drawing surface
|
||||
@Override
|
||||
public void surfaceCreated(SurfaceHolder holder) {
|
||||
Log.v("SDL", "surfaceCreated()");
|
||||
SDLActivity.onNativeSurfaceCreated();
|
||||
}
|
||||
|
||||
// Called when we lose the surface
|
||||
@Override
|
||||
public void surfaceDestroyed(SurfaceHolder holder) {
|
||||
Log.v("SDL", "surfaceDestroyed()");
|
||||
|
||||
// Transition to pause, if needed
|
||||
SDLActivity.mNextNativeState = SDLActivity.NativeState.PAUSED;
|
||||
SDLActivity.handleNativeState();
|
||||
|
||||
mIsSurfaceReady = false;
|
||||
SDLActivity.onNativeSurfaceDestroyed();
|
||||
}
|
||||
|
||||
// Called when the surface is resized
|
||||
@Override
|
||||
public void surfaceChanged(SurfaceHolder holder,
|
||||
int format, int width, int height) {
|
||||
Log.v("SDL", "surfaceChanged()");
|
||||
|
||||
if (SDLActivity.mSingleton == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
mWidth = width;
|
||||
mHeight = height;
|
||||
int nDeviceWidth = width;
|
||||
int nDeviceHeight = height;
|
||||
try
|
||||
{
|
||||
if (Build.VERSION.SDK_INT >= 17 /* Android 4.2 (JELLY_BEAN_MR1) */) {
|
||||
DisplayMetrics realMetrics = new DisplayMetrics();
|
||||
mDisplay.getRealMetrics( realMetrics );
|
||||
nDeviceWidth = realMetrics.widthPixels;
|
||||
nDeviceHeight = realMetrics.heightPixels;
|
||||
}
|
||||
} catch(Exception ignored) {
|
||||
}
|
||||
|
||||
synchronized(SDLActivity.getContext()) {
|
||||
// In case we're waiting on a size change after going fullscreen, send a notification.
|
||||
SDLActivity.getContext().notifyAll();
|
||||
}
|
||||
|
||||
Log.v("SDL", "Window size: " + width + "x" + height);
|
||||
Log.v("SDL", "Device size: " + nDeviceWidth + "x" + nDeviceHeight);
|
||||
SDLActivity.nativeSetScreenResolution(width, height, nDeviceWidth, nDeviceHeight, mDisplay.getRefreshRate());
|
||||
SDLActivity.onNativeResize();
|
||||
|
||||
// Prevent a screen distortion glitch,
|
||||
// for instance when the device is in Landscape and a Portrait App is resumed.
|
||||
boolean skip = false;
|
||||
int requestedOrientation = SDLActivity.mSingleton.getRequestedOrientation();
|
||||
|
||||
if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT) {
|
||||
if (mWidth > mHeight) {
|
||||
skip = true;
|
||||
}
|
||||
} else if (requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE || requestedOrientation == ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE) {
|
||||
if (mWidth < mHeight) {
|
||||
skip = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Special Patch for Square Resolution: Black Berry Passport
|
||||
if (skip) {
|
||||
double min = Math.min(mWidth, mHeight);
|
||||
double max = Math.max(mWidth, mHeight);
|
||||
|
||||
if (max / min < 1.20) {
|
||||
Log.v("SDL", "Don't skip on such aspect-ratio. Could be a square resolution.");
|
||||
skip = false;
|
||||
}
|
||||
}
|
||||
|
||||
// Don't skip in MultiWindow.
|
||||
if (skip) {
|
||||
if (Build.VERSION.SDK_INT >= 24 /* Android 7.0 (N) */) {
|
||||
if (SDLActivity.mSingleton.isInMultiWindowMode()) {
|
||||
Log.v("SDL", "Don't skip in Multi-Window");
|
||||
skip = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (skip) {
|
||||
Log.v("SDL", "Skip .. Surface is not ready.");
|
||||
mIsSurfaceReady = false;
|
||||
return;
|
||||
}
|
||||
|
||||
/* If the surface has been previously destroyed by onNativeSurfaceDestroyed, recreate it here */
|
||||
SDLActivity.onNativeSurfaceChanged();
|
||||
|
||||
/* Surface is ready */
|
||||
mIsSurfaceReady = true;
|
||||
|
||||
SDLActivity.mNextNativeState = SDLActivity.NativeState.RESUMED;
|
||||
SDLActivity.handleNativeState();
|
||||
}
|
||||
|
||||
// Key events
|
||||
@Override
|
||||
public boolean onKey(View v, int keyCode, KeyEvent event) {
|
||||
return SDLActivity.handleKeyEvent(v, keyCode, event, null);
|
||||
}
|
||||
|
||||
// Touch events
|
||||
@Override
|
||||
public boolean onTouch(View v, MotionEvent event) {
|
||||
/* Ref: http://developer.android.com/training/gestures/multi.html */
|
||||
int touchDevId = event.getDeviceId();
|
||||
final int pointerCount = event.getPointerCount();
|
||||
int action = event.getActionMasked();
|
||||
int pointerFingerId;
|
||||
int i = -1;
|
||||
float x,y,p;
|
||||
|
||||
/*
|
||||
* Prevent id to be -1, since it's used in SDL internal for synthetic events
|
||||
* Appears when using Android emulator, eg:
|
||||
* adb shell input mouse tap 100 100
|
||||
* adb shell input touchscreen tap 100 100
|
||||
*/
|
||||
if (touchDevId < 0) {
|
||||
touchDevId -= 1;
|
||||
}
|
||||
|
||||
// 12290 = Samsung DeX mode desktop mouse
|
||||
// 12290 = 0x3002 = 0x2002 | 0x1002 = SOURCE_MOUSE | SOURCE_TOUCHSCREEN
|
||||
// 0x2 = SOURCE_CLASS_POINTER
|
||||
if (event.getSource() == InputDevice.SOURCE_MOUSE || event.getSource() == (InputDevice.SOURCE_MOUSE | InputDevice.SOURCE_TOUCHSCREEN)) {
|
||||
int mouseButton = 1;
|
||||
try {
|
||||
Object object = event.getClass().getMethod("getButtonState").invoke(event);
|
||||
if (object != null) {
|
||||
mouseButton = (Integer) object;
|
||||
}
|
||||
} catch(Exception ignored) {
|
||||
}
|
||||
|
||||
// We need to check if we're in relative mouse mode and get the axis offset rather than the x/y values
|
||||
// if we are. We'll leverage our existing mouse motion listener
|
||||
SDLGenericMotionListener_API12 motionListener = SDLActivity.getMotionListener();
|
||||
x = motionListener.getEventX(event);
|
||||
y = motionListener.getEventY(event);
|
||||
|
||||
SDLActivity.onNativeMouse(mouseButton, action, x, y, motionListener.inRelativeMode());
|
||||
} else {
|
||||
switch(action) {
|
||||
case MotionEvent.ACTION_MOVE:
|
||||
for (i = 0; i < pointerCount; i++) {
|
||||
pointerFingerId = event.getPointerId(i);
|
||||
x = event.getX(i) / mWidth;
|
||||
y = event.getY(i) / mHeight;
|
||||
p = event.getPressure(i);
|
||||
if (p > 1.0f) {
|
||||
// may be larger than 1.0f on some devices
|
||||
// see the documentation of getPressure(i)
|
||||
p = 1.0f;
|
||||
}
|
||||
SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p);
|
||||
}
|
||||
break;
|
||||
|
||||
case MotionEvent.ACTION_UP:
|
||||
case MotionEvent.ACTION_DOWN:
|
||||
// Primary pointer up/down, the index is always zero
|
||||
i = 0;
|
||||
/* fallthrough */
|
||||
case MotionEvent.ACTION_POINTER_UP:
|
||||
case MotionEvent.ACTION_POINTER_DOWN:
|
||||
// Non primary pointer up/down
|
||||
if (i == -1) {
|
||||
i = event.getActionIndex();
|
||||
}
|
||||
|
||||
pointerFingerId = event.getPointerId(i);
|
||||
x = event.getX(i) / mWidth;
|
||||
y = event.getY(i) / mHeight;
|
||||
p = event.getPressure(i);
|
||||
if (p > 1.0f) {
|
||||
// may be larger than 1.0f on some devices
|
||||
// see the documentation of getPressure(i)
|
||||
p = 1.0f;
|
||||
}
|
||||
SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p);
|
||||
break;
|
||||
|
||||
case MotionEvent.ACTION_CANCEL:
|
||||
for (i = 0; i < pointerCount; i++) {
|
||||
pointerFingerId = event.getPointerId(i);
|
||||
x = event.getX(i) / mWidth;
|
||||
y = event.getY(i) / mHeight;
|
||||
p = event.getPressure(i);
|
||||
if (p > 1.0f) {
|
||||
// may be larger than 1.0f on some devices
|
||||
// see the documentation of getPressure(i)
|
||||
p = 1.0f;
|
||||
}
|
||||
SDLActivity.onNativeTouch(touchDevId, pointerFingerId, MotionEvent.ACTION_UP, x, y, p);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Sensor events
|
||||
public void enableSensor(int sensortype, boolean enabled) {
|
||||
// TODO: This uses getDefaultSensor - what if we have >1 accels?
|
||||
if (enabled) {
|
||||
mSensorManager.registerListener(this,
|
||||
mSensorManager.getDefaultSensor(sensortype),
|
||||
SensorManager.SENSOR_DELAY_GAME, null);
|
||||
} else {
|
||||
mSensorManager.unregisterListener(this,
|
||||
mSensorManager.getDefaultSensor(sensortype));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAccuracyChanged(Sensor sensor, int accuracy) {
|
||||
// TODO
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSensorChanged(SensorEvent event) {
|
||||
if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
|
||||
|
||||
// Since we may have an orientation set, we won't receive onConfigurationChanged events.
|
||||
// We thus should check here.
|
||||
int newOrientation;
|
||||
|
||||
float x, y;
|
||||
switch (mDisplay.getRotation()) {
|
||||
case Surface.ROTATION_90:
|
||||
x = -event.values[1];
|
||||
y = event.values[0];
|
||||
newOrientation = SDLActivity.SDL_ORIENTATION_LANDSCAPE;
|
||||
break;
|
||||
case Surface.ROTATION_270:
|
||||
x = event.values[1];
|
||||
y = -event.values[0];
|
||||
newOrientation = SDLActivity.SDL_ORIENTATION_LANDSCAPE_FLIPPED;
|
||||
break;
|
||||
case Surface.ROTATION_180:
|
||||
x = -event.values[0];
|
||||
y = -event.values[1];
|
||||
newOrientation = SDLActivity.SDL_ORIENTATION_PORTRAIT_FLIPPED;
|
||||
break;
|
||||
case Surface.ROTATION_0:
|
||||
default:
|
||||
x = event.values[0];
|
||||
y = event.values[1];
|
||||
newOrientation = SDLActivity.SDL_ORIENTATION_PORTRAIT;
|
||||
break;
|
||||
}
|
||||
|
||||
if (newOrientation != SDLActivity.mCurrentOrientation) {
|
||||
SDLActivity.mCurrentOrientation = newOrientation;
|
||||
SDLActivity.onNativeOrientationChanged(newOrientation);
|
||||
}
|
||||
|
||||
SDLActivity.onNativeAccel(-x / SensorManager.GRAVITY_EARTH,
|
||||
y / SensorManager.GRAVITY_EARTH,
|
||||
event.values[2] / SensorManager.GRAVITY_EARTH);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// Captured pointer events for API 26.
|
||||
public boolean onCapturedPointerEvent(MotionEvent event)
|
||||
{
|
||||
int action = event.getActionMasked();
|
||||
|
||||
float x, y;
|
||||
switch (action) {
|
||||
case MotionEvent.ACTION_SCROLL:
|
||||
x = event.getAxisValue(MotionEvent.AXIS_HSCROLL, 0);
|
||||
y = event.getAxisValue(MotionEvent.AXIS_VSCROLL, 0);
|
||||
SDLActivity.onNativeMouse(0, action, x, y, false);
|
||||
return true;
|
||||
|
||||
case MotionEvent.ACTION_HOVER_MOVE:
|
||||
case MotionEvent.ACTION_MOVE:
|
||||
x = event.getX(0);
|
||||
y = event.getY(0);
|
||||
SDLActivity.onNativeMouse(0, action, x, y, true);
|
||||
return true;
|
||||
|
||||
case MotionEvent.ACTION_BUTTON_PRESS:
|
||||
case MotionEvent.ACTION_BUTTON_RELEASE:
|
||||
|
||||
// Change our action value to what SDL's code expects.
|
||||
if (action == MotionEvent.ACTION_BUTTON_PRESS) {
|
||||
action = MotionEvent.ACTION_DOWN;
|
||||
} else { /* MotionEvent.ACTION_BUTTON_RELEASE */
|
||||
action = MotionEvent.ACTION_UP;
|
||||
}
|
||||
|
||||
x = event.getX(0);
|
||||
y = event.getY(0);
|
||||
int button = event.getButtonState();
|
||||
|
||||
SDLActivity.onNativeMouse(button, action, x, y, true);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
4
android-project/gradlew
vendored
4
android-project/gradlew
vendored
@@ -126,8 +126,8 @@ if $cygwin ; then
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
CHECK=`echo "$arg"|grep -E -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|grep -E -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
|
||||
351
build-scripts/android-prefab.sh
Executable file
351
build-scripts/android-prefab.sh
Executable file
@@ -0,0 +1,351 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if ! [ "x$ANDROID_NDK_HOME" != "x" -a -d "$ANDROID_NDK_HOME" ]; then
|
||||
echo "ANDROID_NDK_HOME environment variable is not set"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! [ "x$ANDROID_HOME" != "x" -a -d "$ANDROID_HOME" ]; then
|
||||
echo "ANDROID_HOME environment variable is not set"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "x$ANDROID_API" = "x" ]; then
|
||||
ANDROID_API="$(ls "$ANDROID_HOME/platforms" | grep -E "^android-[0-9]+$" | sed 's/android-//' | sort -n -r | head -1)"
|
||||
if [ "x$ANDROID_API" = "x" ]; then
|
||||
echo "No Android platform found in $ANDROID_HOME/platforms"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if ! [ -d "$ANDROID_HOME/platforms/android-$ANDROID_API" ]; then
|
||||
echo "Android api version $ANDROID_API is not available ($ANDROID_HOME/platforms/android-$ANDROID_API does not exist)" >2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
android_platformdir="$ANDROID_HOME/platforms/android-$ANDROID_API"
|
||||
|
||||
echo "Building for android api version $ANDROID_API"
|
||||
echo "android_platformdir=$android_platformdir"
|
||||
|
||||
scriptdir=$(cd -P -- "$(dirname -- "$0")" && printf '%s\n' "$(pwd -P)")
|
||||
sdl_root=$(cd -P -- "$(dirname -- "$0")/.." && printf '%s\n' "$(pwd -P)")
|
||||
|
||||
build_root="${sdl_root}/build-android-prefab"
|
||||
|
||||
android_abis="armeabi-v7a arm64-v8a x86 x86_64"
|
||||
android_api=19
|
||||
android_ndk=21
|
||||
android_stl="c++_shared"
|
||||
|
||||
sdl_major=$(sed -ne 's/^#define SDL_MAJOR_VERSION *//p' "${sdl_root}/include/SDL_version.h")
|
||||
sdl_minor=$(sed -ne 's/^#define SDL_MINOR_VERSION *//p' "${sdl_root}/include/SDL_version.h")
|
||||
sdl_patch=$(sed -ne 's/^#define SDL_PATCHLEVEL *//p' "${sdl_root}/include/SDL_version.h")
|
||||
sdl_version="${sdl_major}.${sdl_minor}.${sdl_patch}"
|
||||
echo "Building Android prefab package for SDL version $sdl_version"
|
||||
|
||||
prefabhome="${build_root}/prefab-${sdl_version}"
|
||||
rm -rf "$prefabhome"
|
||||
mkdir -p "${prefabhome}"
|
||||
|
||||
build_cmake_projects() {
|
||||
for android_abi in $android_abis; do
|
||||
echo "Configuring CMake project for $android_abi"
|
||||
cmake -S "$sdl_root" -B "${build_root}/build_${android_abi}" \
|
||||
-DCMAKE_TOOLCHAIN_FILE="$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake" \
|
||||
-DANDROID_PLATFORM=${android_platform} \
|
||||
-DANDROID_ABI=${android_abi} \
|
||||
-DSDL_SHARED=ON \
|
||||
-DSDL_STATIC=ON \
|
||||
-DSDL_STATIC_PIC=ON \
|
||||
-DSDL_TEST=ON \
|
||||
-DSDL2_DISABLE_SDL2MAIN=OFF \
|
||||
-DSDL2_DISABLE_INSTALL=OFF \
|
||||
-DCMAKE_INSTALL_PREFIX="${build_root}/build_${android_abi}/prefix" \
|
||||
-DCMAKE_INSTALL_INCLUDEDIR=include \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-GNinja
|
||||
|
||||
rm -rf "${build_root}/build_${android_abi}/prefix"
|
||||
|
||||
echo "Building CMake project for $android_abi"
|
||||
cmake --build "${build_root}/build_${android_abi}"
|
||||
|
||||
echo "Installing CMake project for $android_abi"
|
||||
cmake --install "${build_root}/build_${android_abi}"
|
||||
done
|
||||
}
|
||||
|
||||
classes_sources_jar_path="${prefabhome}/classes-sources.jar"
|
||||
classes_jar_path="${prefabhome}/classes.jar"
|
||||
compile_java() {
|
||||
classes_sources_root="${prefabhome}/classes-sources"
|
||||
|
||||
rm -rf "${classes_sources_root}"
|
||||
mkdir -p "${classes_sources_root}/META-INF"
|
||||
|
||||
echo "Copying LICENSE.txt to java build folder"
|
||||
cp "$sdl_root/LICENSE.txt" "${classes_sources_root}/META-INF"
|
||||
|
||||
echo "Copy JAVA sources to java build folder"
|
||||
cp -r "$sdl_root/android-project/app/src/main/java/org" "${classes_sources_root}"
|
||||
|
||||
java_sourceslist_path="${prefabhome}/java_sources.txt"
|
||||
pushd "${classes_sources_root}"
|
||||
echo "Collecting sources for classes-sources.jar"
|
||||
find "." -name "*.java" >"${java_sourceslist_path}"
|
||||
find "META-INF" -name "*" >>"${java_sourceslist_path}"
|
||||
|
||||
echo "Creating classes-sources.jar"
|
||||
jar -cf "${classes_sources_jar_path}" "@${java_sourceslist_path}"
|
||||
popd
|
||||
|
||||
classes_root="${prefabhome}/classes"
|
||||
mkdir -p "${classes_root}/META-INF"
|
||||
cp "$sdl_root/LICENSE.txt" "${classes_root}/META-INF"
|
||||
java_sourceslist_path="${prefabhome}/java_sources.txt"
|
||||
|
||||
echo "Collecting sources for classes.jar"
|
||||
find "$sdl_root/android-project/app/src/main/java" -name "*.java" >"${java_sourceslist_path}"
|
||||
|
||||
echo "Compiling classes"
|
||||
javac -encoding utf-8 -classpath "$android_platformdir/android.jar" -d "${classes_root}" "@${java_sourceslist_path}"
|
||||
|
||||
java_classeslist_path="${prefabhome}/java_classes.txt"
|
||||
pushd "${classes_root}"
|
||||
find "." -name "*.class" >"${java_classeslist_path}"
|
||||
find "META-INF" -name "*" >>"${java_classeslist_path}"
|
||||
echo "Creating classes.jar"
|
||||
jar -cf "${classes_jar_path}" "@${java_classeslist_path}"
|
||||
popd
|
||||
}
|
||||
|
||||
pom_filename="SDL${sdl_major}-${sdl_version}.pom"
|
||||
pom_filepath="${prefabhome}/${pom_filename}"
|
||||
create_pom_xml() {
|
||||
echo "Creating ${pom_filename}"
|
||||
cat >"${pom_filepath}" <<EOF
|
||||
<project>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.libsdl.android</groupId>
|
||||
<artifactId>SDL${sdl_major}</artifactId>
|
||||
<version>${sdl_version}</version>
|
||||
<packaging>aar</packaging>
|
||||
<name>SDL${sdl_major}</name>
|
||||
<description>The AAR for SDL${sdl_major}</description>
|
||||
<url>https://libsdl.org/</url>
|
||||
<licenses>
|
||||
<license>
|
||||
<name>zlib License</name>
|
||||
<url>https://github.com/libsdl-org/SDL/blob/main/LICENSE.txt</url>
|
||||
<distribution>repo</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
<scm>
|
||||
<connection>scm:git:https://github.com/libsdl-org/SDL</connection>
|
||||
<url>https://github.com/libsdl-org/SDL</url>
|
||||
</scm>
|
||||
</project>
|
||||
EOF
|
||||
}
|
||||
|
||||
create_aar_androidmanifest() {
|
||||
echo "Creating AndroidManifest.xml"
|
||||
cat >"${aar_root}/AndroidManifest.xml" <<EOF
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="org.libsdl.android" android:versionCode="1"
|
||||
android:versionName="1.0">
|
||||
<uses-sdk android:minSdkVersion="16"
|
||||
android:targetSdkVersion="29"/>
|
||||
</manifest>
|
||||
EOF
|
||||
}
|
||||
|
||||
echo "Creating AAR root directory"
|
||||
aar_root="${prefabhome}/SDL${sdl_major}-${sdl_version}"
|
||||
mkdir -p "${aar_root}"
|
||||
|
||||
aar_metainfdir_path=${aar_root}/META-INF
|
||||
mkdir -p "${aar_metainfdir_path}"
|
||||
cp "${sdl_root}/LICENSE.txt" "${aar_metainfdir_path}"
|
||||
|
||||
prefabworkdir="${aar_root}/prefab"
|
||||
mkdir -p "${prefabworkdir}"
|
||||
|
||||
cat >"${prefabworkdir}/prefab.json" <<EOF
|
||||
{
|
||||
"schema_version": 2,
|
||||
"name": "SDL$sdl_major",
|
||||
"version": "$sdl_version",
|
||||
"dependencies": []
|
||||
}
|
||||
EOF
|
||||
|
||||
modulesworkdir="${prefabworkdir}/modules"
|
||||
mkdir -p "${modulesworkdir}"
|
||||
|
||||
create_shared_sdl_module() {
|
||||
echo "Creating SDL${sdl_major} prefab module"
|
||||
for android_abi in $android_abis; do
|
||||
sdl_moduleworkdir="${modulesworkdir}/SDL${sdl_major}"
|
||||
mkdir -p "${sdl_moduleworkdir}"
|
||||
|
||||
abi_build_prefix="${build_root}/build_${android_abi}/prefix"
|
||||
|
||||
cat >"${sdl_moduleworkdir}/module.json" <<EOF
|
||||
{
|
||||
"export_libraries": [],
|
||||
"library_name": "libSDL${sdl_major}"
|
||||
}
|
||||
EOF
|
||||
mkdir -p "${sdl_moduleworkdir}/include"
|
||||
cp -r "${abi_build_prefix}/include/SDL${sdl_major}/"* "${sdl_moduleworkdir}/include/"
|
||||
rm "${sdl_moduleworkdir}/include/SDL_config.h"
|
||||
cp "$sdl_root/include/SDL_config.h" "$sdl_root/include/SDL_config_android.h" "${sdl_moduleworkdir}/include/"
|
||||
|
||||
abi_sdllibdir="${sdl_moduleworkdir}/libs/android.${android_abi}"
|
||||
mkdir -p "${abi_sdllibdir}"
|
||||
cat >"${abi_sdllibdir}/abi.json" <<EOF
|
||||
{
|
||||
"abi": "${android_abi}",
|
||||
"api": ${android_api},
|
||||
"ndk": ${android_ndk},
|
||||
"stl": "${android_stl}",
|
||||
"static": false
|
||||
}
|
||||
EOF
|
||||
cp "${abi_build_prefix}/lib/libSDL${sdl_major}.so" "${abi_sdllibdir}"
|
||||
done
|
||||
}
|
||||
|
||||
create_static_sdl_module() {
|
||||
echo "Creating SDL${sdl_major}-static prefab module"
|
||||
for android_abi in $android_abis; do
|
||||
sdl_moduleworkdir="${modulesworkdir}/SDL${sdl_major}-static"
|
||||
mkdir -p "${sdl_moduleworkdir}"
|
||||
|
||||
abi_build_prefix="${build_root}/build_${android_abi}/prefix"
|
||||
|
||||
cat >"${sdl_moduleworkdir}/module.json" <<EOF
|
||||
{
|
||||
"export_libraries": ["-ldl", "-lGLESv1_CM", "-lGLESv2", "-llog", "-landroid", "-lOpenSLES"]
|
||||
"library_name": "libSDL${sdl_major}"
|
||||
}
|
||||
EOF
|
||||
mkdir -p "${sdl_moduleworkdir}/include"
|
||||
cp -r "${abi_build_prefix}/include/SDL${sdl_major}/"* "${sdl_moduleworkdir}/include"
|
||||
rm "${sdl_moduleworkdir}/include/SDL_config.h"
|
||||
cp "$sdl_root/include/SDL_config.h" "$sdl_root/include/SDL_config_android.h" "${sdl_moduleworkdir}/include/"
|
||||
|
||||
abi_sdllibdir="${sdl_moduleworkdir}/libs/android.${android_abi}"
|
||||
mkdir -p "${abi_sdllibdir}"
|
||||
cat >"${abi_sdllibdir}/abi.json" <<EOF
|
||||
{
|
||||
"abi": "${android_abi}",
|
||||
"api": ${android_api},
|
||||
"ndk": ${android_ndk},
|
||||
"stl": "${android_stl}",
|
||||
"static": true
|
||||
}
|
||||
EOF
|
||||
cp "${abi_build_prefix}/lib/libSDL${sdl_major}.a" "${abi_sdllibdir}"
|
||||
done
|
||||
}
|
||||
|
||||
create_sdlmain_module() {
|
||||
echo "Creating SDL${sdl_major}main prefab module"
|
||||
for android_abi in $android_abis; do
|
||||
sdl_moduleworkdir="${modulesworkdir}/SDL${sdl_major}main"
|
||||
mkdir -p "${sdl_moduleworkdir}"
|
||||
|
||||
abi_build_prefix="${build_root}/build_${android_abi}/prefix"
|
||||
|
||||
cat >"${sdl_moduleworkdir}/module.json" <<EOF
|
||||
{
|
||||
"export_libraries": [],
|
||||
"library_name": "libSDL${sdl_major}main"
|
||||
}
|
||||
EOF
|
||||
abi_sdllibdir="${sdl_moduleworkdir}/libs/android.${android_abi}"
|
||||
mkdir -p "${abi_sdllibdir}"
|
||||
cat >"${abi_sdllibdir}/abi.json" <<EOF
|
||||
{
|
||||
"abi": "${android_abi}",
|
||||
"api": ${android_api},
|
||||
"ndk": ${android_ndk},
|
||||
"stl": "${android_stl}",
|
||||
"static": true
|
||||
}
|
||||
EOF
|
||||
cp "${abi_build_prefix}/lib/libSDL${sdl_major}main.a" "${abi_sdllibdir}"
|
||||
done
|
||||
}
|
||||
|
||||
create_sdltest_module() {
|
||||
echo "Creating SDL${sdl_major}test prefab module"
|
||||
for android_abi in $android_abis; do
|
||||
sdl_moduleworkdir="${modulesworkdir}/SDL${sdl_major}test"
|
||||
mkdir -p "${sdl_moduleworkdir}"
|
||||
|
||||
abi_build_prefix="${build_root}/build_${android_abi}/prefix"
|
||||
|
||||
cat >"${sdl_moduleworkdir}/module.json" <<EOF
|
||||
{
|
||||
"export_libraries": [],
|
||||
"library_name": "libSDL${sdl_major}_test"
|
||||
}
|
||||
EOF
|
||||
abi_sdllibdir="${sdl_moduleworkdir}/libs/android.${android_abi}"
|
||||
mkdir -p "${abi_sdllibdir}"
|
||||
cat >"${abi_sdllibdir}/abi.json" <<EOF
|
||||
{
|
||||
"abi": "${android_abi}",
|
||||
"api": ${android_api},
|
||||
"ndk": ${android_ndk},
|
||||
"stl": "${android_stl}",
|
||||
"static": true
|
||||
}
|
||||
EOF
|
||||
cp "${abi_build_prefix}/lib/libSDL${sdl_major}_test.a" "${abi_sdllibdir}"
|
||||
done
|
||||
}
|
||||
|
||||
build_cmake_projects
|
||||
|
||||
compile_java
|
||||
|
||||
create_pom_xml
|
||||
|
||||
create_aar_androidmanifest
|
||||
|
||||
create_shared_sdl_module
|
||||
|
||||
create_static_sdl_module
|
||||
|
||||
create_sdlmain_module
|
||||
|
||||
create_sdltest_module
|
||||
|
||||
pushd "${aar_root}"
|
||||
aar_filename="SDL${sdl_major}-${sdl_version}.aar"
|
||||
cp "${classes_jar_path}" ./classes.jar
|
||||
cp "${classes_sources_jar_path}" ./classes-sources.jar
|
||||
zip -r "${aar_filename}" AndroidManifest.xml classes.jar classes-sources.jar prefab META-INF
|
||||
zip -Tv "${aar_filename}" 2>/dev/null ;
|
||||
mv "${aar_filename}" "${prefabhome}"
|
||||
popd
|
||||
|
||||
maven_filename="SDL${sdl_major}-${sdl_version}.zip"
|
||||
|
||||
pushd "${prefabhome}"
|
||||
zip_filename="SDL${sdl_major}-${sdl_version}.zip"
|
||||
zip "${maven_filename}" "${aar_filename}" "${pom_filename}" 2>/dev/null;
|
||||
zip -Tv "${zip_filename}" 2>/dev/null;
|
||||
popd
|
||||
|
||||
echo "Prefab zip is ready at ${prefabhome}/${aar_filename}"
|
||||
echo "Maven archive is ready at ${prefabhome}/${zip_filename}"
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
#
|
||||
# Build the Android libraries without needing a project
|
||||
# (AndroidManifest.xml, jni/{Application,Android}.mk, etc.)
|
||||
|
||||
32
build-scripts/clang-format-src.sh
Executable file
32
build-scripts/clang-format-src.sh
Executable file
@@ -0,0 +1,32 @@
|
||||
#!/bin/sh
|
||||
|
||||
cd "$(dirname $0)/../src"
|
||||
|
||||
echo "Running clang-format in $(pwd)"
|
||||
|
||||
find . -regex '.*\.[chm]p*' -exec clang-format -i {} \;
|
||||
|
||||
# Revert third-party code
|
||||
git checkout \
|
||||
events/imKStoUCS.* \
|
||||
hidapi \
|
||||
joystick/controller_type.c \
|
||||
joystick/controller_type.h \
|
||||
joystick/hidapi/steam/controller_constants.h \
|
||||
joystick/hidapi/steam/controller_structs.h \
|
||||
libm \
|
||||
stdlib/SDL_malloc.c \
|
||||
stdlib/SDL_qsort.c \
|
||||
stdlib/SDL_strtokr.c \
|
||||
video/arm \
|
||||
video/khronos \
|
||||
video/x11/edid-parse.c \
|
||||
video/yuv2rgb
|
||||
clang-format -i hidapi/SDL_hidapi.c
|
||||
|
||||
# Revert generated code
|
||||
git checkout dynapi/SDL_dynapi_overrides.h
|
||||
git checkout dynapi/SDL_dynapi_procs.h
|
||||
git checkout render/metal/SDL_shaders_metal_*.h
|
||||
|
||||
echo "clang-format complete!"
|
||||
2
build-scripts/config.sub
vendored
2
build-scripts/config.sub
vendored
@@ -1075,7 +1075,7 @@ case $cpu-$vendor in
|
||||
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
|
||||
cpu=i586
|
||||
;;
|
||||
pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
|
||||
pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)
|
||||
cpu=i686
|
||||
;;
|
||||
pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
|
||||
|
||||
@@ -19,7 +19,15 @@ open(PIPEFH, '-|', 'git tag -l') or die "Failed to read git release tags: $!\n";
|
||||
while (<PIPEFH>) {
|
||||
chomp;
|
||||
if (/\Arelease\-(.*?)\Z/) {
|
||||
push @unsorted_releases, $1;
|
||||
# After 2.24.x, ignore anything that isn't a x.y.0 release.
|
||||
# We moved to bugfix-only point releases there, so make sure new APIs
|
||||
# are assigned to the next minor version and ignore the patch versions.
|
||||
my $ver = $1;
|
||||
my @versplit = split /\./, $ver;
|
||||
next if (scalar(@versplit) > 2) && (($versplit[0] > 2) || (($versplit[0] == 2) && ($versplit[1] >= 24))) && ($versplit[2] != 0);
|
||||
|
||||
# Consider this release version.
|
||||
push @unsorted_releases, $ver;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>
|
||||
Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
@@ -395,7 +395,7 @@ int main(void)
|
||||
printf(
|
||||
"/*\n"
|
||||
" Simple DirectMedia Layer\n"
|
||||
" Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>\n"
|
||||
" Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>\n"
|
||||
"\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"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>
|
||||
Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
@@ -113,7 +113,7 @@ int main(void)
|
||||
printf(
|
||||
"/*\n"
|
||||
" Simple DirectMedia Layer\n"
|
||||
" Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>\n"
|
||||
" Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>\n"
|
||||
"\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"
|
||||
|
||||
@@ -5,10 +5,31 @@
|
||||
SDL_ROOT=$(dirname $0)/..
|
||||
cd $SDL_ROOT
|
||||
|
||||
if [ -e ./VERSION.txt ]; then
|
||||
cat ./VERSION.txt
|
||||
exit 0
|
||||
fi
|
||||
|
||||
major=$(sed -ne 's/^#define SDL_MAJOR_VERSION *//p' include/SDL_version.h)
|
||||
minor=$(sed -ne 's/^#define SDL_MINOR_VERSION *//p' include/SDL_version.h)
|
||||
micro=$(sed -ne 's/^#define SDL_PATCHLEVEL *//p' include/SDL_version.h)
|
||||
version="${major}.${minor}.${micro}"
|
||||
|
||||
if [ -x "$(command -v git)" ]; then
|
||||
rev=$(echo "$(git remote get-url origin 2>/dev/null)@$(git rev-list HEAD~.. 2>/dev/null)")
|
||||
if [ "$rev" != "@" ]; then
|
||||
echo $rev
|
||||
rev="$(git describe --tags --long 2>/dev/null)"
|
||||
if [ -n "$rev" ]; then
|
||||
# e.g. release-2.24.0-542-g96361fc47
|
||||
# or release-2.24.1-5-g36b987dab
|
||||
# or prerelease-2.23.2-0-gcb46e1b3f
|
||||
echo "$rev"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
rev="$(git describe --always --tags --long 2>/dev/null)"
|
||||
if [ -n "$rev" ]; then
|
||||
# Just a truncated sha1, e.g. 96361fc47.
|
||||
# Turn it into e.g. 2.25.0-g96361fc47
|
||||
echo "${version}-g${rev}"
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
@@ -16,10 +37,12 @@ fi
|
||||
if [ -x "$(command -v p4)" ]; then
|
||||
rev="$(p4 changes -m1 ./...\#have 2>/dev/null| awk '{print $2}')"
|
||||
if [ $? = 0 ]; then
|
||||
echo $rev
|
||||
# e.g. 2.25.0-p7511446
|
||||
echo "${version}-p${rev}"
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
||||
echo ""
|
||||
exit 1
|
||||
# best we can do
|
||||
echo "${version}-no-vcs"
|
||||
exit 0
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
|
||||
set -eu
|
||||
|
||||
cd `dirname $0`/..
|
||||
|
||||
ref_major=$(sed -ne 's/^#define SDL_MAJOR_VERSION *//p' include/SDL_version.h)
|
||||
ref_minor=$(sed -ne 's/^#define SDL_MINOR_VERSION *//p' include/SDL_version.h)
|
||||
ref_micro=$(sed -ne 's/^#define SDL_PATCHLEVEL *//p' include/SDL_version.h)
|
||||
@@ -56,6 +58,17 @@ else
|
||||
not_ok "CMakeLists.txt $version disagrees with SDL_version.h $ref_version"
|
||||
fi
|
||||
|
||||
major=$(sed -ne 's/.*SDL_MAJOR_VERSION = \([0-9]*\);/\1/p' android-project/app/src/main/java/org/libsdl/app/SDLActivity.java)
|
||||
minor=$(sed -ne 's/.*SDL_MINOR_VERSION = \([0-9]*\);/\1/p' android-project/app/src/main/java/org/libsdl/app/SDLActivity.java)
|
||||
micro=$(sed -ne 's/.*SDL_MICRO_VERSION = \([0-9]*\);/\1/p' android-project/app/src/main/java/org/libsdl/app/SDLActivity.java)
|
||||
version="${major}.${minor}.${micro}"
|
||||
|
||||
if [ "$ref_version" = "$version" ]; then
|
||||
ok "SDLActivity.java $version"
|
||||
else
|
||||
not_ok "android-project/app/src/main/java/org/libsdl/app/SDLActivity.java $version disagrees with SDL_version.h $ref_version"
|
||||
fi
|
||||
|
||||
major=$(sed -ne 's/^MAJOR_VERSION *= *//p' Makefile.os2)
|
||||
minor=$(sed -ne 's/^MINOR_VERSION *= *//p' Makefile.os2)
|
||||
micro=$(sed -ne 's/^MICRO_VERSION *= *//p' Makefile.os2)
|
||||
@@ -128,6 +141,25 @@ else
|
||||
not_ok "Info-Framework.plist CFBundleVersion $version disagrees with SDL_version.h $ref_version"
|
||||
fi
|
||||
|
||||
version=$(sed -Ene 's/Title SDL (.*)/\1/p' Xcode/SDL/pkg-support/SDL.info)
|
||||
|
||||
if [ "$ref_version" = "$version" ]; then
|
||||
ok "SDL.info Title $version"
|
||||
else
|
||||
not_ok "SDL.info Title $version disagrees with SDL_version.h $ref_version"
|
||||
fi
|
||||
|
||||
marketing=$(sed -Ene 's/.*MARKETING_VERSION = (.*);/\1/p' Xcode/SDL/SDL.xcodeproj/project.pbxproj)
|
||||
|
||||
ref="$ref_version
|
||||
$ref_version"
|
||||
|
||||
if [ "$ref" = "$marketing" ]; then
|
||||
ok "project.pbxproj MARKETING_VERSION is consistent"
|
||||
else
|
||||
not_ok "project.pbxproj MARKETING_VERSION is inconsistent, expected $ref, got $marketing"
|
||||
fi
|
||||
|
||||
# For simplicity this assumes we'll never break ABI before SDL 3.
|
||||
dylib_compat=$(sed -Ene 's/.*DYLIB_COMPATIBILITY_VERSION = (.*);$/\1/p' Xcode/SDL/SDL.xcodeproj/project.pbxproj)
|
||||
|
||||
@@ -143,6 +175,8 @@ case "$ref_minor" in
|
||||
esac
|
||||
|
||||
ref="${major}.${minor}.0
|
||||
${major}.${minor}.0
|
||||
${major}.${minor}.0
|
||||
${major}.${minor}.0"
|
||||
|
||||
if [ "$ref" = "$dylib_compat" ]; then
|
||||
@@ -165,6 +199,8 @@ case "$ref_minor" in
|
||||
esac
|
||||
|
||||
ref="${major}.${minor}.0
|
||||
${major}.${minor}.0
|
||||
${major}.${minor}.0
|
||||
${major}.${minor}.0"
|
||||
|
||||
if [ "$ref" = "$dylib_cur" ]; then
|
||||
|
||||
@@ -30,6 +30,10 @@ echo "Updating version to '$NEWVERSION' ..."
|
||||
# !!! FIXME: This first one is a kinda scary search/replace that might fail later if another X.Y.Z version is added to the file.
|
||||
perl -w -pi -e 's/(\<string\>)\d+\.\d+\.\d+/${1}'$NEWVERSION'/;' Xcode/SDL/Info-Framework.plist
|
||||
|
||||
perl -w -pi -e 's/(Title SDL )\d+\.\d+\.\d+/${1}'$NEWVERSION'/;' Xcode/SDL/pkg-support/SDL.info
|
||||
|
||||
perl -w -pi -e 's/(MARKETING_VERSION\s*=\s*)\d+\.\d+\.\d+/${1}'$NEWVERSION'/;' Xcode/SDL/SDL.xcodeproj/project.pbxproj
|
||||
|
||||
DYVER=`expr $MINOR \* 100 + 1`
|
||||
perl -w -pi -e 's/(DYLIB_CURRENT_VERSION\s*=\s*)\d+\.\d+\.\d+/${1}'$DYVER'.0.0/;' Xcode/SDL/SDL.xcodeproj/project.pbxproj
|
||||
|
||||
@@ -58,6 +62,10 @@ perl -w -pi -e 's/\A(set\(SDL_MAJOR_VERSION\s+)\d+/${1}'$MAJOR'/;' CMakeLists.tx
|
||||
perl -w -pi -e 's/\A(set\(SDL_MINOR_VERSION\s+)\d+/${1}'$MINOR'/;' CMakeLists.txt
|
||||
perl -w -pi -e 's/\A(set\(SDL_MICRO_VERSION\s+)\d+/${1}'$PATCH'/;' CMakeLists.txt
|
||||
|
||||
perl -w -pi -e 's/\A(.* SDL_MAJOR_VERSION = )\d+/${1}'$MAJOR'/;' android-project/app/src/main/java/org/libsdl/app/SDLActivity.java
|
||||
perl -w -pi -e 's/\A(.* SDL_MINOR_VERSION = )\d+/${1}'$MINOR'/;' android-project/app/src/main/java/org/libsdl/app/SDLActivity.java
|
||||
perl -w -pi -e 's/\A(.* SDL_MICRO_VERSION = )\d+/${1}'$PATCH'/;' android-project/app/src/main/java/org/libsdl/app/SDLActivity.java
|
||||
|
||||
perl -w -pi -e 's/\A(MAJOR_VERSION\s*=\s*)\d+/${1}'$MAJOR'/;' Makefile.os2
|
||||
perl -w -pi -e 's/\A(MINOR_VERSION\s*=\s*)\d+/${1}'$MINOR'/;' Makefile.os2
|
||||
perl -w -pi -e 's/\A(MICRO_VERSION\s*=\s*)\d+/${1}'$PATCH'/;' Makefile.os2
|
||||
|
||||
@@ -6,10 +6,40 @@ outdir=`pwd`
|
||||
cd `dirname $0`
|
||||
srcdir=..
|
||||
header=$outdir/include/SDL_revision.h
|
||||
dist=
|
||||
vendor=
|
||||
|
||||
while [ "$#" -gt 0 ]; do
|
||||
case "$1" in
|
||||
(--dist)
|
||||
dist=yes
|
||||
shift
|
||||
;;
|
||||
(--vendor)
|
||||
vendor="$2"
|
||||
shift 2
|
||||
;;
|
||||
(*)
|
||||
echo "$0: Unknown option: $1" >&2
|
||||
exit 2
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
rev=`sh showrev.sh 2>/dev/null`
|
||||
if [ "$rev" != "" ]; then
|
||||
echo "#define SDL_REVISION \"$rev\"" >"$header.new"
|
||||
if [ -n "$dist" ]; then
|
||||
echo "$rev" > "$outdir/VERSION.txt"
|
||||
fi
|
||||
echo "/* Generated by updaterev.sh, do not edit */" >"$header.new"
|
||||
if [ -n "$vendor" ]; then
|
||||
echo "#define SDL_VENDOR_INFO \"$vendor\"" >>"$header.new"
|
||||
fi
|
||||
echo "#ifdef SDL_VENDOR_INFO" >>"$header.new"
|
||||
echo "#define SDL_REVISION \"SDL-$rev (\" SDL_VENDOR_INFO \")\"" >>"$header.new"
|
||||
echo "#else" >>"$header.new"
|
||||
echo "#define SDL_REVISION \"SDL-$rev\"" >>"$header.new"
|
||||
echo "#endif" >>"$header.new"
|
||||
echo "#define SDL_REVISION_NUMBER 0" >>"$header.new"
|
||||
if diff $header $header.new >/dev/null 2>&1; then
|
||||
rm "$header.new"
|
||||
|
||||
@@ -10,6 +10,7 @@ my $projectfullname = 'Simple Directmedia Layer';
|
||||
my $projectshortname = 'SDL';
|
||||
my $wikisubdir = '';
|
||||
my $incsubdir = 'include';
|
||||
my $readmesubdir = undef;
|
||||
my $apiprefixregex = undef;
|
||||
my $versionfname = 'include/SDL_version.h';
|
||||
my $versionmajorregex = '\A\#define\s+SDL_MAJOR_VERSION\s+(\d+)\Z';
|
||||
@@ -22,10 +23,12 @@ my $wikiurl = 'https://wiki.libsdl.org';
|
||||
my $bugreporturl = 'https://github.com/libsdl-org/sdlwiki/issues/new';
|
||||
my $srcpath = undef;
|
||||
my $wikipath = undef;
|
||||
my $wikireadmesubdir = 'README';
|
||||
my $warn_about_missing = 0;
|
||||
my $copy_direction = 0;
|
||||
my $optionsfname = undef;
|
||||
my $wikipreamble = undef;
|
||||
my $changeformat = undef;
|
||||
|
||||
foreach (@ARGV) {
|
||||
$warn_about_missing = 1, next if $_ eq '--warn-about-missing';
|
||||
@@ -36,6 +39,9 @@ foreach (@ARGV) {
|
||||
if (/\A--options=(.*)\Z/) {
|
||||
$optionsfname = $1;
|
||||
next;
|
||||
} elsif (/\A--changeformat=(.*)\Z/) {
|
||||
$changeformat = $1;
|
||||
next;
|
||||
}
|
||||
$srcpath = $_, next if not defined $srcpath;
|
||||
$wikipath = $_, next if not defined $wikipath;
|
||||
@@ -67,6 +73,7 @@ if (defined $optionsfname) {
|
||||
$projectshortname = $val, next if $key eq 'projectshortname';
|
||||
$wikisubdir = $val, next if $key eq 'wikisubdir';
|
||||
$incsubdir = $val, next if $key eq 'incsubdir';
|
||||
$readmesubdir = $val, next if $key eq 'readmesubdir';
|
||||
$versionmajorregex = $val, next if $key eq 'versionmajorregex';
|
||||
$versionminorregex = $val, next if $key eq 'versionminorregex';
|
||||
$versionpatchregex = $val, next if $key eq 'versionpatchregex';
|
||||
@@ -131,6 +138,7 @@ sub wordwrap_with_bullet_indent { # don't call this directly.
|
||||
my $usual_prefix = ' ' x $bulletlen;
|
||||
|
||||
foreach (@wrappedlines) {
|
||||
s/\s*\Z//;
|
||||
$retval .= "$prefix$_\n";
|
||||
$prefix = $usual_prefix;
|
||||
}
|
||||
@@ -255,10 +263,30 @@ sub wikify_chunk {
|
||||
$str .= "<syntaxhighlight lang='$codelang'>$code<\/syntaxhighlight>";
|
||||
}
|
||||
} elsif ($wikitype eq 'md') {
|
||||
# convert `code` things first, so they aren't mistaken for other markdown items.
|
||||
my $codedstr = '';
|
||||
while ($str =~ s/\A(.*?)(\`.*?\`)//ms) {
|
||||
my $codeblock = $2;
|
||||
$codedstr .= wikify_chunk($wikitype, $1, undef, undef);
|
||||
if (defined $apiprefixregex) {
|
||||
# Convert obvious API things to wikilinks, even inside `code` blocks,
|
||||
# BUT ONLY IF the entire code block is the API thing,
|
||||
# So something like "just call `SDL_Whatever`" will become
|
||||
# "just call [`SDL_Whatever`](SDL_Whatever)", but
|
||||
# "just call `SDL_Whatever(7)`" will not. It's just the safest
|
||||
# way to do this without resorting to wrapping things in html <code> tags.
|
||||
$codeblock =~ s/\A\`($apiprefixregex[a-zA-Z0-9_]+)\`\Z/[`$1`]($1)/gms;
|
||||
}
|
||||
$codedstr .= $codeblock;
|
||||
}
|
||||
|
||||
# Convert obvious API things to wikilinks.
|
||||
if (defined $apiprefixregex) {
|
||||
$str =~ s/\b($apiprefixregex[a-zA-Z0-9_]+)/[$1]($1)/gms;
|
||||
}
|
||||
|
||||
$str = $codedstr . $str;
|
||||
|
||||
if (defined $code) {
|
||||
$str .= "```$codelang$code```";
|
||||
}
|
||||
@@ -325,6 +353,11 @@ sub dewikify_chunk {
|
||||
|
||||
# bullets
|
||||
$str =~ s/^\* /- /gm;
|
||||
} elsif ($wikitype eq 'md') {
|
||||
# Dump obvious wikilinks. The rest can just passthrough.
|
||||
if (defined $apiprefixregex) {
|
||||
$str =~ s/\[(\`?$apiprefixregex[a-zA-Z0-9_]+\`?)\]\($apiprefixregex[a-zA-Z0-9_]+\)/$1/gms;
|
||||
}
|
||||
}
|
||||
|
||||
if (defined $code) {
|
||||
@@ -355,6 +388,30 @@ sub dewikify_chunk {
|
||||
|
||||
# bullets
|
||||
$str =~ s/^\* /\n\\\(bu /gm;
|
||||
} elsif ($wikitype eq 'md') {
|
||||
# Dump obvious wikilinks.
|
||||
if (defined $apiprefixregex) {
|
||||
$str =~ s/\[(\`?$apiprefixregex[a-zA-Z0-9_]+\`?)\]\($apiprefixregex[a-zA-Z0-9_]+\)/\n.BR $1\n/gms;
|
||||
}
|
||||
|
||||
# links
|
||||
$str =~ s/\[(.*?)]\((https?\:\/\/.*?)\)/\n.URL "$2" "$1"\n/g;
|
||||
|
||||
# <code></code> is also popular. :/
|
||||
$str =~ s/\s*\`(.*?)\`\s*/\n.BR $1\n/gms;
|
||||
|
||||
# bold+italic
|
||||
$str =~ s/\s*\*\*\*(.*?)\*\*\*\s*/\n.BI $1\n/gms;
|
||||
|
||||
# bold
|
||||
$str =~ s/\s*\*\*(.*?)\*\*\s*/\n.B $1\n/gms;
|
||||
|
||||
# italic
|
||||
$str =~ s/\s*\*(.*?)\*\s*/\n.I $1\n/gms;
|
||||
|
||||
# bullets
|
||||
$str =~ s/^\- /\n\\\(bu /gm;
|
||||
|
||||
} else {
|
||||
die("Unexpected wikitype when converting to manpages\n"); # !!! FIXME: need to handle Markdown wiki pages.
|
||||
}
|
||||
@@ -399,6 +456,23 @@ sub dewikify {
|
||||
return $retval;
|
||||
}
|
||||
|
||||
sub filecopy {
|
||||
my $src = shift;
|
||||
my $dst = shift;
|
||||
my $endline = shift;
|
||||
$endline = "\n" if not defined $endline;
|
||||
|
||||
open(COPYIN, '<', $src) or die("Failed to open '$src' for reading: $!\n");
|
||||
open(COPYOUT, '>', $dst) or die("Failed to open '$dst' for writing: $!\n");
|
||||
while (<COPYIN>) {
|
||||
chomp;
|
||||
s/[ \t\r\n]*\Z//;
|
||||
print COPYOUT "$_$endline";
|
||||
}
|
||||
close(COPYOUT);
|
||||
close(COPYIN);
|
||||
}
|
||||
|
||||
sub usage {
|
||||
die("USAGE: $0 <source code git clone path> <wiki git clone path> [--copy-to-headers|--copy-to-wiki|--copy-to-manpages] [--warn-about-missing]\n\n");
|
||||
}
|
||||
@@ -415,6 +489,7 @@ my @standard_wiki_sections = (
|
||||
'Function Parameters',
|
||||
'Return Value',
|
||||
'Remarks',
|
||||
'Thread Safety',
|
||||
'Version',
|
||||
'Code Examples',
|
||||
'Related Functions'
|
||||
@@ -438,9 +513,15 @@ my %headerfuncshasdoxygen = (); # $headerfuncschunk{"SDL_OpenAudio"} -> 1 if t
|
||||
my $incpath = "$srcpath";
|
||||
$incpath .= "/$incsubdir" if $incsubdir ne '';
|
||||
|
||||
my $wikireadmepath = "$wikipath/$wikireadmesubdir";
|
||||
my $readmepath = undef;
|
||||
if (defined $readmesubdir) {
|
||||
$readmepath = "$srcpath/$readmesubdir";
|
||||
}
|
||||
|
||||
opendir(DH, $incpath) or die("Can't opendir '$incpath': $!\n");
|
||||
while (readdir(DH)) {
|
||||
my $dent = $_;
|
||||
while (my $d = readdir(DH)) {
|
||||
my $dent = $d;
|
||||
next if not $dent =~ /$selectheaderregex/; # just selected headers.
|
||||
open(FH, '<', "$incpath/$dent") or die("Can't open '$incpath/$dent': $!\n");
|
||||
|
||||
@@ -588,8 +669,8 @@ my %wikitypes = (); # contains string of wiki page extension, like $wikitypes{"
|
||||
my %wikifuncs = (); # contains references to hash of strings, each string being the full contents of a section of a wiki page, like $wikifuncs{"SDL_OpenAudio"}{"Remarks"}.
|
||||
my %wikisectionorder = (); # contains references to array, each array item being a key to a wikipage section in the correct order, like $wikisectionorder{"SDL_OpenAudio"}[2] == 'Remarks'
|
||||
opendir(DH, $wikipath) or die("Can't opendir '$wikipath': $!\n");
|
||||
while (readdir(DH)) {
|
||||
my $dent = $_;
|
||||
while (my $d = readdir(DH)) {
|
||||
my $dent = $d;
|
||||
my $type = '';
|
||||
if ($dent =~ /\.(md|mediawiki)\Z/) {
|
||||
$type = $1;
|
||||
@@ -726,13 +807,14 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
next if not defined $wikifuncs{$fn}; # don't have a page for that function, skip it.
|
||||
my $wikitype = $wikitypes{$fn};
|
||||
my $sectionsref = $wikifuncs{$fn};
|
||||
my $remarks = %$sectionsref{'Remarks'};
|
||||
my $params = %$sectionsref{'Function Parameters'};
|
||||
my $returns = %$sectionsref{'Return Value'};
|
||||
my $version = %$sectionsref{'Version'};
|
||||
my $related = %$sectionsref{'Related Functions'};
|
||||
my $deprecated = %$sectionsref{'Deprecated'};
|
||||
my $brief = %$sectionsref{'[Brief]'};
|
||||
my $remarks = $sectionsref->{'Remarks'};
|
||||
my $params = $sectionsref->{'Function Parameters'};
|
||||
my $returns = $sectionsref->{'Return Value'};
|
||||
my $threadsafety = $sectionsref->{'Thread Safety'};
|
||||
my $version = $sectionsref->{'Version'};
|
||||
my $related = $sectionsref->{'Related Functions'};
|
||||
my $deprecated = $sectionsref->{'Deprecated'};
|
||||
my $brief = $sectionsref->{'[Brief]'};
|
||||
my $addblank = 0;
|
||||
my $str = '';
|
||||
|
||||
@@ -797,6 +879,33 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
$str .= "${whitespace}$_\n";
|
||||
}
|
||||
}
|
||||
} elsif ($wikitype eq 'md') {
|
||||
my $l;
|
||||
$l = shift @lines;
|
||||
die("Unexpected data parsing Markdown table") if (not $l =~ /\A\s*\|\s*\|\s*\|\s*\Z/);
|
||||
$l = shift @lines;
|
||||
die("Unexpected data parsing Markdown table") if (not $l =~ /\A\s*\|\s*\-*\s*\|\s*\-*\s*\|\s*\Z/);
|
||||
while (scalar(@lines) >= 1) {
|
||||
$l = shift @lines;
|
||||
if ($l =~ /\A\s*\|\s*(.*?)\s*\|\s*(.*?)\s*\|\s*\Z/) {
|
||||
my $name = $1;
|
||||
my $desc = $2;
|
||||
$name =~ s/\A\*\*(.*?)\*\*/$1/;
|
||||
$name =~ s/\A\'\'\'(.*?)\'\'\'/$1/;
|
||||
#print STDERR "FN: $fn NAME: $name DESC: $desc\n";
|
||||
my $whitespacelen = length($name) + 8;
|
||||
my $whitespace = ' ' x $whitespacelen;
|
||||
$desc = wordwrap($desc, -$whitespacelen);
|
||||
my @desclines = split /\n/, $desc;
|
||||
my $firstline = shift @desclines;
|
||||
$str .= "\\param $name $firstline\n";
|
||||
foreach (@desclines) {
|
||||
$str .= "${whitespace}$_\n";
|
||||
}
|
||||
} else {
|
||||
last; # we seem to have run out of table.
|
||||
}
|
||||
}
|
||||
} else {
|
||||
die("write me");
|
||||
}
|
||||
@@ -821,6 +930,21 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
}
|
||||
}
|
||||
|
||||
if (defined $threadsafety) {
|
||||
# !!! FIXME: lots of code duplication in all of these.
|
||||
$str .= "\n" if $addblank; $addblank = 1;
|
||||
my $v = dewikify($wikitype, $threadsafety);
|
||||
my $whitespacelen = length("\\threadsafety") + 1;
|
||||
my $whitespace = ' ' x $whitespacelen;
|
||||
$v = wordwrap($v, -$whitespacelen);
|
||||
my @desclines = split /\n/, $v;
|
||||
my $firstline = shift @desclines;
|
||||
$str .= "\\threadsafety $firstline\n";
|
||||
foreach (@desclines) {
|
||||
$str .= "${whitespace}$_\n";
|
||||
}
|
||||
}
|
||||
|
||||
if (defined $version) {
|
||||
# !!! FIXME: lots of code duplication in all of these.
|
||||
$str .= "\n" if $addblank; $addblank = 1;
|
||||
@@ -845,6 +969,7 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
s/\A(\:|\* )//;
|
||||
s/\(\)\Z//; # Convert "SDL_Func()" to "SDL_Func"
|
||||
s/\[\[(.*?)\]\]/$1/; # in case some wikilinks remain.
|
||||
s/\[(.*?)\]\(.*?\)/$1/; # in case some wikilinks remain.
|
||||
s/\A\/*//;
|
||||
$str .= "\\sa $_\n";
|
||||
}
|
||||
@@ -905,11 +1030,32 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
rename($path, "$incpath/$header") or die("Can't rename '$path' to '$incpath/$header': $!\n");
|
||||
}
|
||||
|
||||
if (defined $readmepath) {
|
||||
if ( -d $wikireadmepath ) {
|
||||
mkdir($readmepath); # just in case
|
||||
opendir(DH, $wikireadmepath) or die("Can't opendir '$wikireadmepath': $!\n");
|
||||
while (readdir(DH)) {
|
||||
my $dent = $_;
|
||||
if ($dent =~ /\A(.*?)\.md\Z/) { # we only bridge Markdown files here.
|
||||
next if $1 eq 'FrontPage';
|
||||
filecopy("$wikireadmepath/$dent", "$readmepath/README-$dent", "\r\n");
|
||||
}
|
||||
}
|
||||
closedir(DH);
|
||||
}
|
||||
}
|
||||
} elsif ($copy_direction == -1) { # --copy-to-wiki
|
||||
|
||||
if (defined $changeformat) {
|
||||
$dewikify_mode = $changeformat;
|
||||
$wordwrap_mode = $changeformat;
|
||||
}
|
||||
|
||||
foreach (keys %headerfuncs) {
|
||||
my $fn = $_;
|
||||
next if not $headerfuncshasdoxygen{$fn};
|
||||
my $wikitype = defined $wikitypes{$fn} ? $wikitypes{$fn} : 'mediawiki'; # default to MediaWiki for new stuff FOR NOW.
|
||||
my $origwikitype = defined $wikitypes{$fn} ? $wikitypes{$fn} : 'md'; # default to MarkDown for new stuff.
|
||||
my $wikitype = (defined $changeformat) ? $changeformat : $origwikitype;
|
||||
die("Unexpected wikitype '$wikitype'\n") if (($wikitype ne 'mediawiki') and ($wikitype ne 'md') and ($wikitype ne 'manpage'));
|
||||
|
||||
#print("$fn\n"); next;
|
||||
@@ -1047,6 +1193,21 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
}
|
||||
$desc =~ s/[\s\n]+\Z//ms;
|
||||
$sections{'Version'} = wordwrap(wikify($wikitype, $desc)) . "\n";
|
||||
} elsif ($l =~ /\A\\threadsafety\s+(.*)\Z/) {
|
||||
my $desc = $1;
|
||||
while (@doxygenlines) {
|
||||
my $subline = $doxygenlines[0];
|
||||
$subline =~ s/\A\s*//;
|
||||
last if $subline =~ /\A\\/; # some sort of doxygen command, assume we're past this thing.
|
||||
shift @doxygenlines; # dump this line from the array; we're using it.
|
||||
if ($subline eq '') { # empty line, make sure it keeps the newline char.
|
||||
$desc .= "\n";
|
||||
} else {
|
||||
$desc .= " $subline";
|
||||
}
|
||||
}
|
||||
$desc =~ s/[\s\n]+\Z//ms;
|
||||
$sections{'Thread Safety'} = wordwrap(wikify($wikitype, $desc)) . "\n";
|
||||
} elsif ($l =~ /\A\\sa\s+(.*)\Z/) {
|
||||
my $sa = $1;
|
||||
$sa =~ s/\(\)\Z//; # Convert "SDL_Func()" to "SDL_Func"
|
||||
@@ -1125,8 +1286,25 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
push @$wikisectionorderref, '[footer]';
|
||||
}
|
||||
|
||||
# If changing format, convert things that otherwise are passed through unmolested.
|
||||
if (defined $changeformat) {
|
||||
if (($dewikify_mode eq 'md') and ($origwikitype eq 'mediawiki')) {
|
||||
$$sectionsref{'[footer]'} =~ s/\[\[(Category[a-zA-Z0-9_]+)\]\]/[$1]($1)/g;
|
||||
} elsif (($dewikify_mode eq 'mediawiki') and ($origwikitype eq 'md')) {
|
||||
$$sectionsref{'[footer]'} =~ s/\[(Category[a-zA-Z0-9_]+)\]\(.*?\)/[[$1]]/g;
|
||||
}
|
||||
|
||||
foreach (keys %only_wiki_sections) {
|
||||
my $sect = $_;
|
||||
if (defined $$sectionsref{$sect}) {
|
||||
$$sectionsref{$sect} = wikify($wikitype, dewikify($origwikitype, $$sectionsref{$sect}));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# !!! FIXME: This won't be CategoryAPI if we eventually handle things other than functions.
|
||||
my $footer = $$sectionsref{'[footer]'};
|
||||
|
||||
if ($wikitype eq 'mediawiki') {
|
||||
$footer =~ s/\[\[CategoryAPI\]\],?\s*//g;
|
||||
$footer = '[[CategoryAPI]]' . (($footer eq '') ? "\n" : ", $footer");
|
||||
@@ -1137,10 +1315,11 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
$$sectionsref{'[footer]'} = $footer;
|
||||
|
||||
if (defined $wikipreamble) {
|
||||
my $wikified_preamble = wikify($wikitype, $wikipreamble);
|
||||
if ($wikitype eq 'mediawiki') {
|
||||
print FH "====== $wikipreamble ======\n";
|
||||
print FH "====== $wikified_preamble ======\n";
|
||||
} elsif ($wikitype eq 'md') {
|
||||
print FH "###### $wikipreamble\n";
|
||||
print FH "###### $wikified_preamble\n";
|
||||
} else { die("Unexpected wikitype '$wikitype'\n"); }
|
||||
}
|
||||
|
||||
@@ -1185,9 +1364,51 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
|
||||
print FH "\n\n";
|
||||
close(FH);
|
||||
|
||||
if (defined $changeformat and ($origwikitype ne $wikitype)) {
|
||||
system("cd '$wikipath' ; git mv '$_.${origwikitype}' '$_.${wikitype}'");
|
||||
unlink("$wikipath/$_.${origwikitype}");
|
||||
}
|
||||
|
||||
rename($path, "$wikipath/$_.${wikitype}") or die("Can't rename '$path' to '$wikipath/$_.${wikitype}': $!\n");
|
||||
}
|
||||
|
||||
if (defined $readmepath) {
|
||||
if ( -d $readmepath ) {
|
||||
mkdir($wikireadmepath); # just in case
|
||||
opendir(DH, $readmepath) or die("Can't opendir '$readmepath': $!\n");
|
||||
while (my $d = readdir(DH)) {
|
||||
my $dent = $d;
|
||||
if ($dent =~ /\AREADME\-(.*?\.md)\Z/) { # we only bridge Markdown files here.
|
||||
my $wikifname = $1;
|
||||
next if $wikifname eq 'FrontPage.md';
|
||||
filecopy("$readmepath/$dent", "$wikireadmepath/$wikifname", "\n");
|
||||
}
|
||||
}
|
||||
closedir(DH);
|
||||
|
||||
my @pages = ();
|
||||
opendir(DH, $wikireadmepath) or die("Can't opendir '$wikireadmepath': $!\n");
|
||||
while (my $d = readdir(DH)) {
|
||||
my $dent = $d;
|
||||
if ($dent =~ /\A(.*?)\.(mediawiki|md)\Z/) {
|
||||
my $wikiname = $1;
|
||||
next if $wikiname eq 'FrontPage';
|
||||
push @pages, $wikiname;
|
||||
}
|
||||
}
|
||||
closedir(DH);
|
||||
|
||||
open(FH, '>', "$wikireadmepath/FrontPage.md") or die("Can't open '$wikireadmepath/FrontPage.md': $!\n");
|
||||
print FH "# All READMEs available here\n\n";
|
||||
foreach (sort @pages) {
|
||||
my $wikiname = $_;
|
||||
print FH "- [$wikiname]($wikiname)\n";
|
||||
}
|
||||
close(FH);
|
||||
}
|
||||
}
|
||||
|
||||
} 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.
|
||||
|
||||
@@ -1235,14 +1456,15 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
next if not defined $wikifuncs{$fn}; # don't have a page for that function, skip it.
|
||||
my $wikitype = $wikitypes{$fn};
|
||||
my $sectionsref = $wikifuncs{$fn};
|
||||
my $remarks = %$sectionsref{'Remarks'};
|
||||
my $params = %$sectionsref{'Function Parameters'};
|
||||
my $returns = %$sectionsref{'Return Value'};
|
||||
my $version = %$sectionsref{'Version'};
|
||||
my $related = %$sectionsref{'Related Functions'};
|
||||
my $examples = %$sectionsref{'Code Examples'};
|
||||
my $deprecated = %$sectionsref{'Deprecated'};
|
||||
my $brief = %$sectionsref{'[Brief]'};
|
||||
my $remarks = $sectionsref->{'Remarks'};
|
||||
my $params = $sectionsref->{'Function Parameters'};
|
||||
my $returns = $sectionsref->{'Return Value'};
|
||||
my $version = $sectionsref->{'Version'};
|
||||
my $threadsafety = $sectionsref->{'Thread Safety'};
|
||||
my $related = $sectionsref->{'Related Functions'};
|
||||
my $examples = $sectionsref->{'Code Examples'};
|
||||
my $deprecated = $sectionsref->{'Deprecated'};
|
||||
my $brief = $sectionsref->{'[Brief]'};
|
||||
my $decl = $headerdecls{$fn};
|
||||
my $str = '';
|
||||
|
||||
@@ -1329,6 +1551,28 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
$str .= ".I $name\n";
|
||||
$str .= "$desc\n";
|
||||
}
|
||||
} elsif ($wikitype eq 'md') {
|
||||
my $l;
|
||||
$l = shift @lines;
|
||||
die("Unexpected data parsing Markdown table") if (not $l =~ /\A\s*\|\s*\|\s*\|\s*\Z/);
|
||||
$l = shift @lines;
|
||||
die("Unexpected data parsing Markdown table") if (not $l =~ /\A\s*\|\s*\-*\s*\|\s*\-*\s*\|\s*\Z/);
|
||||
while (scalar(@lines) >= 1) {
|
||||
$l = shift @lines;
|
||||
if ($l =~ /\A\s*\|\s*(.*?)\s*\|\s*(.*?)\s*\|\s*\Z/) {
|
||||
my $name = $1;
|
||||
my $desc = $2;
|
||||
$name =~ s/\A\*\*(.*?)\*\*/$1/;
|
||||
$name =~ s/\A\'\'\'(.*?)\'\'\'/$1/;
|
||||
$desc = dewikify($wikitype, $desc);
|
||||
|
||||
$str .= ".TP\n";
|
||||
$str .= ".I $name\n";
|
||||
$str .= "$desc\n";
|
||||
} else {
|
||||
last; # we seem to have run out of table.
|
||||
}
|
||||
}
|
||||
} else {
|
||||
die("write me");
|
||||
}
|
||||
@@ -1346,6 +1590,11 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
$dewikify_manpage_code_indent = 1;
|
||||
}
|
||||
|
||||
if (defined $threadsafety) {
|
||||
$str .= ".SH THREAD SAFETY\n";
|
||||
$str .= dewikify($wikitype, $threadsafety) . "\n";
|
||||
}
|
||||
|
||||
if (defined $version) {
|
||||
$str .= ".SH AVAILABILITY\n";
|
||||
$str .= dewikify($wikitype, $version) . "\n";
|
||||
@@ -1361,8 +1610,11 @@ if ($copy_direction == 1) { # --copy-to-headers
|
||||
s/\A(\:|\* )//;
|
||||
s/\(\)\Z//; # Convert "SDL_Func()" to "SDL_Func"
|
||||
s/\[\[(.*?)\]\]/$1/; # in case some wikilinks remain.
|
||||
s/\[(.*?)\]\(.*?\)/$1/; # in case some wikilinks remain.
|
||||
s/\A\*\s*\Z//;
|
||||
s/\A\/*//;
|
||||
s/\A\.BR\s+//; # dewikify added this, but we want to handle it.
|
||||
s/\A\.I\s+//; # dewikify added this, but we want to handle it.
|
||||
s/\A\s+//;
|
||||
s/\s+\Z//;
|
||||
next if $_ eq '';
|
||||
|
||||
42
cmake/CheckCPUArchitecture.cmake
Normal file
42
cmake/CheckCPUArchitecture.cmake
Normal file
@@ -0,0 +1,42 @@
|
||||
include(CheckCSourceCompiles)
|
||||
include(CMakePushCheckState)
|
||||
|
||||
function(_internal_check_cpu_architecture macro_check NAME VARIABLE)
|
||||
cmake_push_check_state(RESET)
|
||||
string(TOUPPER "${NAME}" UPPER_NAME)
|
||||
set(CACHE_VARIABLE "CHECK_CPU_ARCHITECTURE_${UPPER_NAME}")
|
||||
set(test_src "
|
||||
int main(int argc, char *argv[]) {
|
||||
#if ${macro_check}
|
||||
return 0;
|
||||
#else
|
||||
choke
|
||||
#endif
|
||||
}
|
||||
")
|
||||
check_c_source_compiles("${test_src}" "${CACHE_VARIABLE}")
|
||||
cmake_pop_check_state()
|
||||
if(${CACHE_VARIABLE})
|
||||
set(${VARIABLE} "TRUE" PARENT_SCOPE)
|
||||
else()
|
||||
set(${VARIABLE} "FALSE" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(check_cpu_architecture ARCH VARIABLE)
|
||||
if(ARCH STREQUAL "x86")
|
||||
_internal_check_cpu_architecture("defined(__i386__) || defined(__i486__) || defined(__i586__) || defined(__i686__) ||defined( __i386) || defined(_M_IX86)" x86 ${VARIABLE})
|
||||
elseif(ARCH STREQUAL "x64")
|
||||
_internal_check_cpu_architecture("defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64) || defined(_M_AMD64)" x64 ${VARIABLE})
|
||||
elseif(ARCH STREQUAL "arm32")
|
||||
_internal_check_cpu_architecture("defined(__arm__) || defined(_M_ARM)" arm32 ${VARIABLE})
|
||||
elseif(ARCH STREQUAL "arm64")
|
||||
_internal_check_cpu_architecture("defined(__aarch64__) || defined(_M_ARM64)" arm64 ${VARIABLE})
|
||||
elseif(ARCH STREQUAL "loongarch64")
|
||||
_internal_check_cpu_architecture("defined(__loongarch64)" loongarch64 ${VARIABLE})
|
||||
else()
|
||||
message(WARNING "Unknown CPU architectures (${ARCH}).")
|
||||
set(${VARIABLE} FALSE)
|
||||
endif()
|
||||
set("${VARIABLE}" "${${VARIABLE}}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
@@ -29,7 +29,7 @@ ENDMACRO()
|
||||
|
||||
# Message Output
|
||||
macro(MESSAGE_WARN _TEXT)
|
||||
message(STATUS "*** WARNING: ${_TEXT}")
|
||||
message(WARNING "${_TEXT}")
|
||||
endmacro()
|
||||
|
||||
macro(MESSAGE_ERROR _TEXT)
|
||||
@@ -64,7 +64,7 @@ macro(MESSAGE_TESTED_OPTION _NAME)
|
||||
message(STATUS " ${_NAME}${_PAD}(Wanted: ${_REQVALUE}): ${HAVE_${_STRIPPEDNAME}}")
|
||||
endmacro()
|
||||
|
||||
macro(LISTTOSTR _LIST _OUTPUT)
|
||||
function(LISTTOSTR _LIST _OUTPUT)
|
||||
if(${ARGC} EQUAL 3)
|
||||
# prefix for each element
|
||||
set(_LPREFIX ${ARGV2})
|
||||
@@ -73,10 +73,12 @@ macro(LISTTOSTR _LIST _OUTPUT)
|
||||
endif()
|
||||
# Do not use string(REPLACE ";" " ") here to avoid messing up list
|
||||
# entries
|
||||
set(res)
|
||||
foreach(_ITEM ${${_LIST}})
|
||||
set(${_OUTPUT} "${${_OUTPUT}} ${_LPREFIX}${_ITEM}")
|
||||
set(res "${res} ${_LPREFIX}${_ITEM}")
|
||||
endforeach()
|
||||
endmacro()
|
||||
set(${_OUTPUT} "${res}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
macro(LISTTOSTRREV _LIST _OUTPUT)
|
||||
if(${ARGC} EQUAL 3)
|
||||
@@ -92,7 +94,11 @@ macro(LISTTOSTRREV _LIST _OUTPUT)
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
if(${CMAKE_VERSION} VERSION_LESS "3.16.0")
|
||||
if(CMAKE_VERSION VERSION_LESS 3.16.0 OR SDL2_SUBPROJECT)
|
||||
# - CMake versions <3.16 do not support the OBJC language
|
||||
# - When SDL is built as a subproject and when the main project does not enable OBJC,
|
||||
# CMake fails due to missing internal CMake variables (CMAKE_OBJC_COMPILE_OBJECT)
|
||||
# (reproduced with CMake 3.24.2)
|
||||
macro(CHECK_OBJC_SOURCE_COMPILES SOURCE VAR)
|
||||
set(PREV_REQUIRED_DEFS "${CMAKE_REQUIRED_DEFINITIONS}")
|
||||
set(CMAKE_REQUIRED_DEFINITIONS "-x objective-c ${PREV_REQUIRED_DEFS}")
|
||||
@@ -106,6 +112,13 @@ else()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
check_language(OBJC)
|
||||
if(NOT CMAKE_OBJC_COMPILER)
|
||||
message(WARNING "Cannot find working OBJC compiler.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMAKE_VERSION VERSION_LESS 3.13.0)
|
||||
macro(target_link_directories _TARGET _SCOPE)
|
||||
link_directories(${ARGN})
|
||||
|
||||
@@ -1,8 +1,19 @@
|
||||
include(CMakeParseArguments)
|
||||
include(${SDL2_SOURCE_DIR}/cmake/sdlfind.cmake)
|
||||
macro(FindLibraryAndSONAME _LIB)
|
||||
cmake_parse_arguments(FLAS "" "" "LIBDIRS" ${ARGN})
|
||||
|
||||
string(TOUPPER ${_LIB} _UPPERLNAME)
|
||||
string(REGEX REPLACE "\\-" "_" _LNAME "${_UPPERLNAME}")
|
||||
|
||||
find_library(${_LNAME}_LIB ${_LIB})
|
||||
find_library(${_LNAME}_LIB ${_LIB} PATHS ${FLAS_LIBDIRS})
|
||||
|
||||
if(${_LNAME}_LIB MATCHES ".*\\${CMAKE_SHARED_LIBRARY_SUFFIX}.*" AND NOT ${_LNAME}_LIB MATCHES ".*\\${CMAKE_STATIC_LIBRARY_SUFFIX}.*")
|
||||
set(${_LNAME}_SHARED TRUE)
|
||||
else()
|
||||
set(${_LNAME}_SHARED FALSE)
|
||||
endif()
|
||||
|
||||
if(${_LNAME}_LIB)
|
||||
# reduce the library name for shared linking
|
||||
|
||||
@@ -56,26 +67,16 @@ endmacro()
|
||||
# - n/a
|
||||
macro(CheckOSS)
|
||||
if(SDL_OSS)
|
||||
set(OSS_HEADER_FILE "sys/soundcard.h")
|
||||
check_c_source_compiles("
|
||||
#include <sys/soundcard.h>
|
||||
int main(int argc, char **argv) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }" OSS_FOUND)
|
||||
if(NOT OSS_FOUND)
|
||||
set(OSS_HEADER_FILE "soundcard.h")
|
||||
check_c_source_compiles("
|
||||
#include <soundcard.h>
|
||||
int main(int argc, char **argv) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }" OSS_FOUND)
|
||||
endif()
|
||||
int main(int argc, char **argv) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }" HAVE_OSS_SYS_SOUNDCARD_H)
|
||||
|
||||
if(OSS_FOUND)
|
||||
if(HAVE_OSS_SYS_SOUNDCARD_H)
|
||||
set(HAVE_OSS TRUE)
|
||||
file(GLOB OSS_SOURCES ${SDL2_SOURCE_DIR}/src/audio/dsp/*.c)
|
||||
if(OSS_HEADER_FILE STREQUAL "soundcard.h")
|
||||
set(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H 1)
|
||||
endif()
|
||||
set(SDL_AUDIO_DRIVER_OSS 1)
|
||||
list(APPEND SOURCE_FILES ${OSS_SOURCES})
|
||||
if(NETBSD OR OPENBSD)
|
||||
if(NETBSD)
|
||||
list(APPEND EXTRA_LIBS ossaudio)
|
||||
endif()
|
||||
set(HAVE_SDL_AUDIO TRUE)
|
||||
@@ -90,26 +91,35 @@ endmacro()
|
||||
# - HAVE_SDL_LOADSO opt
|
||||
macro(CheckALSA)
|
||||
if(SDL_ALSA)
|
||||
CHECK_INCLUDE_FILE(alsa/asoundlib.h HAVE_ASOUNDLIB_H)
|
||||
if(HAVE_ASOUNDLIB_H)
|
||||
CHECK_LIBRARY_EXISTS(asound snd_pcm_recover "" HAVE_LIBASOUND)
|
||||
endif()
|
||||
if(HAVE_LIBASOUND)
|
||||
set(HAVE_ALSA TRUE)
|
||||
file(GLOB ALSA_SOURCES ${SDL2_SOURCE_DIR}/src/audio/alsa/*.c)
|
||||
sdlFindALSA()
|
||||
if(ALSA_FOUND)
|
||||
file(GLOB ALSA_SOURCES "${SDL2_SOURCE_DIR}/src/audio/alsa/*.c")
|
||||
list(APPEND SOURCE_FILES ${ALSA_SOURCES})
|
||||
set(SDL_AUDIO_DRIVER_ALSA 1)
|
||||
if(SDL_ALSA_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic ALSA loading")
|
||||
set(HAVE_ALSA TRUE)
|
||||
set(HAVE_ALSA_SHARED FALSE)
|
||||
if(SDL_ALSA_SHARED)
|
||||
if(HAVE_SDL_LOADSO)
|
||||
FindLibraryAndSONAME("asound")
|
||||
if(ASOUND_LIB AND ASOUND_SHARED)
|
||||
target_include_directories(sdl-build-options INTERFACE $<TARGET_PROPERTY:ALSA::ALSA,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||
set(SDL_AUDIO_DRIVER_ALSA_DYNAMIC "\"${ASOUND_LIB_SONAME}\"")
|
||||
set(HAVE_ALSA_SHARED TRUE)
|
||||
else()
|
||||
message(WARNING "Unable to find asound shared object")
|
||||
endif()
|
||||
else()
|
||||
message(WARNING "You must have SDL_LoadObject() support for dynamic ALSA loading")
|
||||
endif()
|
||||
endif()
|
||||
FindLibraryAndSONAME("asound")
|
||||
if(SDL_ALSA_SHARED AND ASOUND_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_ALSA_DYNAMIC "\"${ASOUND_LIB_SONAME}\"")
|
||||
set(HAVE_ALSA_SHARED TRUE)
|
||||
else()
|
||||
list(APPEND EXTRA_LIBS asound)
|
||||
if(NOT HAVE_ALSA_SHARED)
|
||||
list(APPEND CMAKE_DEPENDS ALSA::ALSA)
|
||||
list(APPEND PKGCONFIG_DEPENDS alsa)
|
||||
endif()
|
||||
set(HAVE_SDL_AUDIO TRUE)
|
||||
else()
|
||||
set(HAVE_ALSA FALSE)
|
||||
message(WARNING "Unable to found the alsa development library")
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
@@ -131,7 +141,7 @@ macro(CheckPipewire)
|
||||
if(SDL_PIPEWIRE_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic Pipewire loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME("pipewire-0.3")
|
||||
FindLibraryAndSONAME("pipewire-0.3" LIBDIRS ${PKG_PIPEWIRE_LIBRARY_DIRS})
|
||||
if(SDL_PIPEWIRE_SHARED AND PIPEWIRE_0.3_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_PIPEWIRE_DYNAMIC "\"${PIPEWIRE_0.3_LIB_SONAME}\"")
|
||||
set(HAVE_PIPEWIRE_SHARED TRUE)
|
||||
@@ -160,7 +170,7 @@ macro(CheckPulseAudio)
|
||||
if(SDL_PULSEAUDIO_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic PulseAudio loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME("pulse-simple")
|
||||
FindLibraryAndSONAME("pulse-simple" LIBDIRS ${PKG_PULSEAUDIO_LIBRARY_DIRS})
|
||||
if(SDL_PULSEAUDIO_SHARED AND PULSE_SIMPLE_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC "\"${PULSE_SIMPLE_LIB_SONAME}\"")
|
||||
set(HAVE_PULSEAUDIO_SHARED TRUE)
|
||||
@@ -189,7 +199,7 @@ macro(CheckJACK)
|
||||
if(SDL_JACK_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic JACK audio loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME("jack")
|
||||
FindLibraryAndSONAME("jack" LIBDIRS ${PKG_JACK_LIBRARY_DIRS})
|
||||
if(SDL_JACK_SHARED AND JACK_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_JACK_DYNAMIC "\"${JACK_LIB_SONAME}\"")
|
||||
set(HAVE_JACK_SHARED TRUE)
|
||||
@@ -218,7 +228,7 @@ macro(CheckESD)
|
||||
if(SDL_ESD_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic ESD loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME(esd)
|
||||
FindLibraryAndSONAME(esd LIBDIRS ${PKG_ESD_LIBRARY_DIRS})
|
||||
if(SDL_ESD_SHARED AND ESD_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_ESD_DYNAMIC "\"${ESD_LIB_SONAME}\"")
|
||||
set(HAVE_ESD_SHARED TRUE)
|
||||
@@ -295,29 +305,28 @@ macro(CheckNAS)
|
||||
endmacro()
|
||||
|
||||
# Requires:
|
||||
# - n/a
|
||||
# - PkgCheckModules
|
||||
# Optional:
|
||||
# - SDL_SNDIO_SHARED opt
|
||||
# - HAVE_SDL_LOADSO opt
|
||||
macro(CheckSNDIO)
|
||||
if(SDL_SNDIO)
|
||||
# TODO: set include paths properly, so the sndio headers are found
|
||||
check_include_file(sndio.h HAVE_SNDIO_H)
|
||||
find_library(D_SNDIO_LIB sndio)
|
||||
if(HAVE_SNDIO_H AND D_SNDIO_LIB)
|
||||
pkg_check_modules(PKG_SNDIO sndio)
|
||||
if(PKG_SNDIO_FOUND)
|
||||
set(HAVE_SNDIO TRUE)
|
||||
file(GLOB SNDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/sndio/*.c)
|
||||
list(APPEND SOURCE_FILES ${SNDIO_SOURCES})
|
||||
set(SDL_AUDIO_DRIVER_SNDIO 1)
|
||||
list(APPEND EXTRA_CFLAGS ${PKG_SNDIO_CFLAGS})
|
||||
if(SDL_SNDIO_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic sndio loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME("sndio")
|
||||
FindLibraryAndSONAME("sndio" LIBDIRS ${PKG_SNDIO_LIBRARY_DIRS})
|
||||
if(SDL_SNDIO_SHARED AND SNDIO_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_SNDIO_DYNAMIC "\"${SNDIO_LIB_SONAME}\"")
|
||||
set(HAVE_SNDIO_SHARED TRUE)
|
||||
else()
|
||||
list(APPEND EXTRA_LIBS ${D_SNDIO_LIB})
|
||||
list(APPEND EXTRA_LIBS ${PKG_SNDIO_LDFLAGS})
|
||||
endif()
|
||||
set(HAVE_SDL_AUDIO TRUE)
|
||||
endif()
|
||||
@@ -341,7 +350,7 @@ macro(CheckFusionSound)
|
||||
if(FUSIONSOUND_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic FusionSound loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME("fusionsound")
|
||||
FindLibraryAndSONAME("fusionsound" LIBDIRS ${PKG_FUSIONSOUND_LIBRARY_DIRS})
|
||||
if(FUSIONSOUND_SHARED AND FUSIONSOUND_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC "\"${FUSIONSOUND_LIB_SONAME}\"")
|
||||
set(HAVE_FUSIONSOUND_SHARED TRUE)
|
||||
@@ -408,6 +417,7 @@ endmacro()
|
||||
# - SDL_X11_SHARED opt
|
||||
# - HAVE_SDL_LOADSO opt
|
||||
macro(CheckX11)
|
||||
cmake_push_check_state(RESET)
|
||||
if(SDL_X11)
|
||||
foreach(_LIB X11 Xext Xcursor Xi Xfixes Xrandr Xrender Xss)
|
||||
FindLibraryAndSONAME("${_LIB}")
|
||||
@@ -430,6 +440,7 @@ macro(CheckX11)
|
||||
|
||||
if(X_INCLUDEDIR)
|
||||
list(APPEND EXTRA_CFLAGS "-I${X_INCLUDEDIR}")
|
||||
list(APPEND CMAKE_REQUIRED_INCLUDES ${X_INCLUDEDIR})
|
||||
endif()
|
||||
|
||||
find_file(HAVE_XCURSOR_H NAMES "X11/Xcursor/Xcursor.h" HINTS "${X_INCLUDEDIR}")
|
||||
@@ -459,13 +470,13 @@ macro(CheckX11)
|
||||
set(SDL_X11_SHARED OFF)
|
||||
endif()
|
||||
|
||||
check_symbol_exists(shmat "sys/shm.h" HAVE_SHMAT)
|
||||
if(NOT HAVE_SHMAT)
|
||||
check_library_exists(ipc shmat "" HAVE_SHMAT)
|
||||
if(HAVE_SHMAT)
|
||||
check_symbol_exists(shmat "sys/shm.h" HAVE_SHMAT_IN_LIBC)
|
||||
if(NOT HAVE_SHMAT_IN_LIBC)
|
||||
check_library_exists(ipc shmat "" HAVE_SHMAT_IN_LIBIPC)
|
||||
if(HAVE_SHMAT_IN_LIBIPC)
|
||||
list(APPEND EXTRA_LIBS ipc)
|
||||
endif()
|
||||
if(NOT HAVE_SHMAT)
|
||||
if(NOT HAVE_SHMAT_IN_LIBIPC)
|
||||
list(APPEND EXTRA_CFLAGS "-DNO_SHARED_MEMORY")
|
||||
endif()
|
||||
endif()
|
||||
@@ -605,6 +616,7 @@ macro(CheckX11)
|
||||
# Prevent Mesa from including X11 headers
|
||||
list(APPEND EXTRA_CFLAGS "-DMESA_EGL_NO_X11_HEADERS -DEGL_NO_X11")
|
||||
endif()
|
||||
cmake_pop_check_state()
|
||||
endmacro()
|
||||
|
||||
macro(WaylandProtocolGen _SCANNER _CODE_MODE _XML _PROTL)
|
||||
@@ -637,9 +649,11 @@ endmacro()
|
||||
# - HAVE_SDL_LOADSO opt
|
||||
macro(CheckWayland)
|
||||
if(SDL_WAYLAND)
|
||||
pkg_check_modules(WAYLAND "wayland-client>=1.18" wayland-egl wayland-cursor egl "xkbcommon>=0.5.0")
|
||||
set(WAYLAND_FOUND FALSE)
|
||||
pkg_check_modules(PKG_WAYLAND "wayland-client>=1.18" wayland-egl wayland-cursor egl "xkbcommon>=0.5.0")
|
||||
|
||||
if(WAYLAND_FOUND)
|
||||
if(PKG_WAYLAND_FOUND)
|
||||
set(WAYLAND_FOUND TRUE)
|
||||
find_program(WAYLAND_SCANNER NAMES wayland-scanner REQUIRED)
|
||||
execute_process(
|
||||
COMMAND ${WAYLAND_SCANNER} --version
|
||||
@@ -662,8 +676,8 @@ macro(CheckWayland)
|
||||
endif()
|
||||
|
||||
if(WAYLAND_FOUND)
|
||||
target_link_directories(sdl-build-options INTERFACE "${WAYLAND_LIBRARY_DIRS}")
|
||||
target_include_directories(sdl-build-options INTERFACE "${WAYLAND_INCLUDE_DIRS}")
|
||||
target_link_directories(sdl-build-options INTERFACE "${PKG_WAYLAND_LIBRARY_DIRS}")
|
||||
target_include_directories(sdl-build-options INTERFACE "${PKG_WAYLAND_INCLUDE_DIRS}")
|
||||
|
||||
set(HAVE_WAYLAND TRUE)
|
||||
set(HAVE_SDL_VIDEO TRUE)
|
||||
@@ -689,10 +703,10 @@ macro(CheckWayland)
|
||||
if(SDL_WAYLAND_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic Wayland loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME(wayland-client)
|
||||
FindLibraryAndSONAME(wayland-egl)
|
||||
FindLibraryAndSONAME(wayland-cursor)
|
||||
FindLibraryAndSONAME(xkbcommon)
|
||||
FindLibraryAndSONAME(wayland-client LIBDIRS ${PKG_WAYLAND_LIBRARY_DIRS})
|
||||
FindLibraryAndSONAME(wayland-egl LIBDIRS ${PKG_WAYLAND_LIBRARY_DIRS})
|
||||
FindLibraryAndSONAME(wayland-cursor LIBDIRS ${PKG_WAYLAND_LIBRARY_DIRS})
|
||||
FindLibraryAndSONAME(xkbcommon LIBDIRS ${PKG_WAYLAND_LIBRARY_DIRS})
|
||||
if(SDL_WAYLAND_SHARED AND WAYLAND_CLIENT_LIB AND WAYLAND_EGL_LIB AND WAYLAND_CURSOR_LIB AND XKBCOMMON_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC "\"${WAYLAND_CLIENT_LIB_SONAME}\"")
|
||||
set(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL "\"${WAYLAND_EGL_LIB_SONAME}\"")
|
||||
@@ -700,26 +714,37 @@ macro(CheckWayland)
|
||||
set(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON "\"${XKBCOMMON_LIB_SONAME}\"")
|
||||
set(HAVE_WAYLAND_SHARED TRUE)
|
||||
else()
|
||||
list(APPEND EXTRA_LIBS ${WAYLAND_LIBRARIES})
|
||||
list(APPEND EXTRA_LIBS ${PKG_WAYLAND_LIBRARIES})
|
||||
endif()
|
||||
|
||||
if(SDL_WAYLAND_LIBDECOR)
|
||||
pkg_check_modules(LIBDECOR libdecor-0)
|
||||
if(LIBDECOR_FOUND)
|
||||
pkg_check_modules(PKG_LIBDECOR libdecor-0)
|
||||
if(PKG_LIBDECOR_FOUND)
|
||||
set(HAVE_WAYLAND_LIBDECOR TRUE)
|
||||
set(HAVE_LIBDECOR_H 1)
|
||||
target_link_directories(sdl-build-options INTERFACE "${LIBDECOR_LIBRARY_DIRS}")
|
||||
target_include_directories(sdl-build-options INTERFACE "${LIBDECOR_INCLUDE_DIRS}")
|
||||
target_link_directories(sdl-build-options INTERFACE "${PKG_LIBDECOR_LIBRARY_DIRS}")
|
||||
target_include_directories(sdl-build-options INTERFACE "${PKG_LIBDECOR_INCLUDE_DIRS}")
|
||||
if(SDL_WAYLAND_LIBDECOR_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic libdecor loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME(decor-0)
|
||||
FindLibraryAndSONAME(decor-0 LIBDIRS ${PKG_LIBDECOR_LIBRARY_DIRS})
|
||||
if(SDL_WAYLAND_LIBDECOR_SHARED AND DECOR_0_LIB AND HAVE_SDL_LOADSO)
|
||||
set(HAVE_LIBDECOR_SHARED TRUE)
|
||||
set(HAVE_WAYLAND_LIBDECOR_SHARED TRUE)
|
||||
set(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR "\"${DECOR_0_LIB_SONAME}\"")
|
||||
else()
|
||||
list(APPEND EXTRA_LIBS ${LIBDECOR_LIBRARIES})
|
||||
list(APPEND EXTRA_LIBS ${PKG_LIBDECOR_LIBRARIES})
|
||||
endif()
|
||||
|
||||
cmake_push_check_state()
|
||||
list(APPEND CMAKE_REQUIRED_FLAGS ${PKG_LIBDECOR_CFLAGS})
|
||||
list(APPEND CMAKE_REQUIRED_INCLUDES ${PKG_LIBDECOR_INCLUDE_DIRS})
|
||||
list(APPEND CMAKE_REQUIRED_LIBRARIES ${PKG_LIBDECOR_LINK_LIBRARIES})
|
||||
check_symbol_exists(libdecor_frame_get_max_content_size "libdecor.h" HAVE_LIBDECOR_FRAME_GET_MAX_CONTENT_SIZE)
|
||||
check_symbol_exists(libdecor_frame_get_min_content_size "libdecor.h" HAVE_LIBDECOR_FRAME_GET_MIN_CONTENT_SIZE)
|
||||
if(HAVE_LIBDECOR_FRAME_GET_MAX_CONTENT_SIZE AND HAVE_LIBDECOR_FRAME_GET_MIN_CONTENT_SIZE)
|
||||
set(SDL_HAVE_LIBDECOR_GET_MIN_MAX 1)
|
||||
endif()
|
||||
cmake_pop_check_state()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -764,7 +789,7 @@ macro(CheckDirectFB)
|
||||
if(SDL_DIRECTFB_SHARED AND NOT HAVE_SDL_LOADSO)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic DirectFB loading")
|
||||
endif()
|
||||
FindLibraryAndSONAME("directfb")
|
||||
FindLibraryAndSONAME("directfb" LIBDIRS ${PKG_DIRECTFB_LIBRARY_DIRS})
|
||||
if(SDL_DIRECTFB_SHARED AND DIRECTFB_LIB AND HAVE_SDL_LOADSO)
|
||||
set(SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC "\"${DIRECTFB_LIB_SONAME}\"")
|
||||
set(HAVE_DIRECTFB_SHARED TRUE)
|
||||
@@ -911,7 +936,7 @@ macro(CheckPTHREAD)
|
||||
set(PTHREAD_LDFLAGS "-lpthread")
|
||||
elseif(OPENBSD)
|
||||
set(PTHREAD_CFLAGS "-D_REENTRANT")
|
||||
set(PTHREAD_LDFLAGS "-pthread")
|
||||
set(PTHREAD_LDFLAGS "-lpthread")
|
||||
elseif(SOLARIS)
|
||||
set(PTHREAD_CFLAGS "-D_REENTRANT")
|
||||
set(PTHREAD_LDFLAGS "-pthread -lposix4")
|
||||
@@ -952,7 +977,6 @@ macro(CheckPTHREAD)
|
||||
list(APPEND SDL_CFLAGS ${PTHREAD_CFLAGS})
|
||||
|
||||
check_c_source_compiles("
|
||||
#define _GNU_SOURCE 1
|
||||
#include <pthread.h>
|
||||
int main(int argc, char **argv) {
|
||||
pthread_mutexattr_t attr;
|
||||
@@ -963,7 +987,6 @@ macro(CheckPTHREAD)
|
||||
set(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1)
|
||||
else()
|
||||
check_c_source_compiles("
|
||||
#define _GNU_SOURCE 1
|
||||
#include <pthread.h>
|
||||
int main(int argc, char **argv) {
|
||||
pthread_mutexattr_t attr;
|
||||
@@ -994,10 +1017,13 @@ macro(CheckPTHREAD)
|
||||
check_include_files("pthread_np.h" HAVE_PTHREAD_NP_H)
|
||||
if (HAVE_PTHREAD_H)
|
||||
check_c_source_compiles("
|
||||
#define _GNU_SOURCE 1
|
||||
#include <pthread.h>
|
||||
int main(int argc, char **argv) {
|
||||
pthread_setname_np(pthread_self(), \"\");
|
||||
#ifdef __APPLE__
|
||||
pthread_setname_np(\"\");
|
||||
#else
|
||||
pthread_setname_np(pthread_self(),\"\");
|
||||
#endif
|
||||
return 0;
|
||||
}" HAVE_PTHREAD_SETNAME_NP)
|
||||
if (HAVE_PTHREAD_NP_H)
|
||||
@@ -1170,19 +1196,19 @@ macro(CheckHIDAPI)
|
||||
if(SDL_HIDAPI)
|
||||
if(SDL_HIDAPI_LIBUSB)
|
||||
set(HAVE_LIBUSB FALSE)
|
||||
pkg_check_modules(LIBUSB libusb-1.0)
|
||||
if(LIBUSB_FOUND)
|
||||
check_include_file(libusb.h HAVE_LIBUSB_H ${LIBUSB_CFLAGS})
|
||||
pkg_check_modules(PKG_LIBUSB libusb-1.0)
|
||||
if(PKG_LIBUSB_FOUND)
|
||||
check_include_file(libusb.h HAVE_LIBUSB_H ${PKG_LIBUSB_CFLAGS})
|
||||
if(HAVE_LIBUSB_H)
|
||||
set(HAVE_LIBUSB TRUE)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS}")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${PKG_LIBUSB_CFLAGS}")
|
||||
if(HIDAPI_ONLY_LIBUSB)
|
||||
list(APPEND EXTRA_LIBS ${LIBUSB_LIBRARIES})
|
||||
list(APPEND EXTRA_LIBS ${PKG_LIBUSB_LIBRARIES})
|
||||
elseif(OS2)
|
||||
set(SDL_LIBUSB_DYNAMIC "\"usb100.dll\"")
|
||||
else()
|
||||
# libusb is loaded dynamically, so don't add it to EXTRA_LIBS
|
||||
FindLibraryAndSONAME("usb-1.0")
|
||||
FindLibraryAndSONAME("usb-1.0" LIBDIRS ${PKG_LIBUSB_LIBRARY_DIRS})
|
||||
if(USB_1.0_LIB)
|
||||
set(SDL_LIBUSB_DYNAMIC "\"${USB_1.0_LIB_SONAME}\"")
|
||||
endif()
|
||||
@@ -1192,6 +1218,7 @@ macro(CheckHIDAPI)
|
||||
if(HIDAPI_ONLY_LIBUSB AND NOT HAVE_LIBUSB)
|
||||
set(HAVE_HIDAPI FALSE)
|
||||
endif()
|
||||
set(HAVE_HIDAPI_LIBUSB ${HAVE_LIBUSB})
|
||||
endif()
|
||||
|
||||
if(HAVE_HIDAPI)
|
||||
@@ -1211,6 +1238,8 @@ macro(CheckHIDAPI)
|
||||
file(GLOB HIDAPI_JOYSTICK_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/hidapi/*.c)
|
||||
list(APPEND SOURCE_FILES ${HIDAPI_JOYSTICK_SOURCES})
|
||||
endif()
|
||||
else()
|
||||
set(SDL_HIDAPI_DISABLED 1)
|
||||
endif()
|
||||
else()
|
||||
set(SDL_HIDAPI_DISABLED 1)
|
||||
@@ -1265,19 +1294,17 @@ endmacro()
|
||||
# - HAVE_SDL_LOADSO opt
|
||||
macro(CheckKMSDRM)
|
||||
if(SDL_KMSDRM)
|
||||
pkg_check_modules(KMSDRM libdrm gbm egl)
|
||||
if(KMSDRM_FOUND AND HAVE_OPENGL_EGL)
|
||||
link_directories(
|
||||
${KMSDRM_LIBRARY_DIRS}
|
||||
)
|
||||
target_include_directories(sdl-build-options INTERFACE "${KMSDRM_INCLUDE_DIRS}")
|
||||
pkg_check_modules(PKG_KMSDRM libdrm gbm egl)
|
||||
if(PKG_KMSDRM_FOUND AND HAVE_OPENGL_EGL)
|
||||
target_link_directories(sdl-build-options INTERFACE ${PKG_KMSDRM_LIBRARY_DIRS})
|
||||
target_include_directories(sdl-build-options INTERFACE "${PKG_KMSDRM_INCLUDE_DIRS}")
|
||||
set(HAVE_KMSDRM TRUE)
|
||||
set(HAVE_SDL_VIDEO TRUE)
|
||||
|
||||
file(GLOB KMSDRM_SOURCES ${SDL2_SOURCE_DIR}/src/video/kmsdrm/*.c)
|
||||
list(APPEND SOURCE_FILES ${KMSDRM_SOURCES})
|
||||
|
||||
list(APPEND EXTRA_CFLAGS ${KMSDRM_CFLAGS})
|
||||
list(APPEND EXTRA_CFLAGS ${PKG_KMSDRM_CFLAGS})
|
||||
|
||||
set(SDL_VIDEO_DRIVER_KMSDRM 1)
|
||||
|
||||
@@ -1285,13 +1312,26 @@ macro(CheckKMSDRM)
|
||||
message_warn("You must have SDL_LoadObject() support for dynamic KMS/DRM loading")
|
||||
endif()
|
||||
if(SDL_KMSDRM_SHARED AND HAVE_SDL_LOADSO)
|
||||
FindLibraryAndSONAME(drm)
|
||||
FindLibraryAndSONAME(gbm)
|
||||
FindLibraryAndSONAME(drm LIBDIRS ${PKG_KMSDRM_LIBRARY_DIRS})
|
||||
FindLibraryAndSONAME(gbm LIBDIRS ${PKG_KMSDRM_LIBRARY_DIRS})
|
||||
set(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC "\"${DRM_LIB_SONAME}\"")
|
||||
set(SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM "\"${GBM_LIB_SONAME}\"")
|
||||
set(HAVE_KMSDRM_SHARED TRUE)
|
||||
else()
|
||||
list(APPEND EXTRA_LIBS ${KMSDRM_LIBRARIES})
|
||||
list(APPEND EXTRA_LIBS ${PKG_KMSDRM_LIBRARIES})
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
macro(CheckLibUDev)
|
||||
if(SDL_LIBUDEV)
|
||||
check_include_file("libudev.h" have_libudev_header)
|
||||
if(have_libudev_header)
|
||||
set(HAVE_LIBUDEV_H TRUE)
|
||||
FindLibraryAndSONAME(udev)
|
||||
if(UDEV_LIB_SONAME)
|
||||
set(SDL_UDEV_DYNAMIC "\"${UDEV_LIB_SONAME}\"")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
9
cmake/sdlfind.cmake
Normal file
9
cmake/sdlfind.cmake
Normal file
@@ -0,0 +1,9 @@
|
||||
|
||||
macro(sdlFindALSA)
|
||||
find_package(ALSA MODULE)
|
||||
if(ALSA_FOUND AND (NOT TARGET ALSA::ALSA) )
|
||||
add_Library(ALSA::ALSA UNKNOWN IMPORTED)
|
||||
set_property(TARGET ALSA::ALSA PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${ALSA_INCLUDE_DIRS})
|
||||
set_property(TARGET ALSA::ALSA APPEND PROPERTY IMPORTED_LOCATION ${ALSA_LIBRARY})
|
||||
endif()
|
||||
endmacro()
|
||||
55
cmake/sdlplatform.cmake
Normal file
55
cmake/sdlplatform.cmake
Normal file
@@ -0,0 +1,55 @@
|
||||
macro(SDL_DetectCMakePlatform)
|
||||
set(SDL_CMAKE_PLATFORM )
|
||||
# Get the platform
|
||||
if(WIN32)
|
||||
set(SDL_CMAKE_PLATFORM WINDOWS)
|
||||
elseif(UNIX AND NOT APPLE)
|
||||
if(CMAKE_SYSTEM_NAME MATCHES ".*Linux")
|
||||
set(SDL_CMAKE_PLATFORM LINUX)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "kFreeBSD.*")
|
||||
set(SDL_CMAKE_PLATFORM FREEBSD)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "kNetBSD.*|NetBSD.*")
|
||||
set(SDL_CMAKE_PLATFORM NETBSD)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "kOpenBSD.*|OpenBSD.*")
|
||||
set(SDL_CMAKE_PLATFORM OPENBSD)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES ".*GNU.*")
|
||||
set(SDL_CMAKE_PLATFORM GNU)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES ".*BSDI.*")
|
||||
set(SDL_CMAKE_PLATFORM BSDI)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "DragonFly.*|FreeBSD")
|
||||
set(SDL_CMAKE_PLATFORM FREEBSD)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "SYSV5.*")
|
||||
set(SDL_CMAKE_PLATFORM SYSV5)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Solaris.*|SunOS.*")
|
||||
set(SDL_CMAKE_PLATFORM SOLARIS)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "HP-UX.*")
|
||||
set(SDL_CMAKE_PLATFORM HPUX)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "AIX.*")
|
||||
set(SDL_CMAKE_PLATFORM AIX)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Minix.*")
|
||||
set(SDL_CMAKE_PLATFORM MINIX)
|
||||
endif()
|
||||
elseif(APPLE)
|
||||
if(CMAKE_SYSTEM_NAME MATCHES ".*Darwin.*")
|
||||
set(SDL_CMAKE_PLATFORM DARWIN)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES ".*MacOS.*")
|
||||
set(SDL_CMAKE_PLATFORM MACOSX)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES ".*tvOS.*")
|
||||
set(SDL_CMAKE_PLATFORM TVOS)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES ".*iOS.*")
|
||||
# !!! FIXME: remove the version check when we start requiring >= 3.14.0
|
||||
if(CMAKE_VERSION VERSION_LESS 3.14)
|
||||
set(SDL_CMAKE_PLATFORM IOS)
|
||||
endif()
|
||||
endif()
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "BeOS.*")
|
||||
message_error("BeOS support has been removed as of SDL 2.0.2.")
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Haiku.*")
|
||||
set(SDL_CMAKE_PLATFORM HAIKU)
|
||||
elseif(NINTENDO_3DS)
|
||||
set(SDL_CMAKE_PLATFORM N3DS)
|
||||
endif()
|
||||
if(SDL_CMAKE_PLATFORM)
|
||||
set(${SDL_CMAKE_PLATFORM} TRUE)
|
||||
endif()
|
||||
endmacro()
|
||||
@@ -24,7 +24,7 @@ include(FeatureSummary)
|
||||
option(TEST_SHARED "Test linking to shared SDL2 library" ON)
|
||||
add_feature_info("TEST_SHARED" TEST_SHARED "Test linking with shared library")
|
||||
|
||||
option(TEST_STATIC "Test linking to static SDL2 libary" ON)
|
||||
option(TEST_STATIC "Test linking to static SDL2 library" ON)
|
||||
add_feature_info("TEST_STATIC" TEST_STATIC "Test linking with static library")
|
||||
|
||||
if(TEST_SHARED)
|
||||
|
||||
@@ -13,7 +13,7 @@ case "$machine" in
|
||||
*android* )
|
||||
EXEPREFIX="lib"
|
||||
EXESUFFIX=".so"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -shared"
|
||||
LDFLAGS="$LDFLAGS -shared"
|
||||
;;
|
||||
* )
|
||||
EXEPREFIX=""
|
||||
@@ -25,20 +25,20 @@ set -e
|
||||
|
||||
# Get the canonical path of the folder containing this script
|
||||
testdir=$(cd -P -- "$(dirname -- "$0")" && printf '%s\n' "$(pwd -P)")
|
||||
CFLAGS="$( pkg-config sdl2 --cflags )"
|
||||
LDFLAGS="$( pkg-config sdl2 --libs )"
|
||||
STATIC_LDFLAGS="$( pkg-config sdl2 --libs --static )"
|
||||
SDL_CFLAGS="$( pkg-config sdl2 --cflags )"
|
||||
SDL_LDFLAGS="$( pkg-config sdl2 --libs )"
|
||||
SDL_STATIC_LDFLAGS="$( pkg-config sdl2 --libs --static )"
|
||||
|
||||
compile_cmd="$CC -c "$testdir/main_gui.c" -o main_gui_pkgconfig.c.o $CFLAGS $EXTRA_CFLAGS"
|
||||
link_cmd="$CC main_gui_pkgconfig.c.o -o ${EXEPREFIX}main_gui_pkgconfig${EXESUFFIX} $LDFLAGS $EXTRA_LDFLAGS"
|
||||
static_link_cmd="$CC main_gui_pkgconfig.c.o -o ${EXEPREFIX}main_gui_pkgconfig_static${EXESUFFIX} $STATIC_LDFLAGS $EXTRA_LDFLAGS"
|
||||
compile_cmd="$CC -c "$testdir/main_gui.c" -o main_gui_pkgconfig.c.o $SDL_CFLAGS $CFLAGS"
|
||||
link_cmd="$CC main_gui_pkgconfig.c.o -o ${EXEPREFIX}main_gui_pkgconfig${EXESUFFIX} $SDL_LDFLAGS $LDFLAGS"
|
||||
static_link_cmd="$CC main_gui_pkgconfig.c.o -o ${EXEPREFIX}main_gui_pkgconfig_static${EXESUFFIX} $SDL_STATIC_LDFLAGS $LDFLAGS"
|
||||
|
||||
echo "-- CC: $CC"
|
||||
echo "-- CFLAGS: $CFLAGS"
|
||||
echo "-- EXTRA_CFLAGS: $EXTRA_CFLAGS"
|
||||
echo "-- LDFLASG: $LDFLAGS"
|
||||
echo "-- STATIC_LDFLAGS: $STATIC_LDFLAGS"
|
||||
echo "-- EXTRA_LDFLAGS: $EXTRA_LDFLAGS"
|
||||
echo "-- CC: $CC"
|
||||
echo "-- CFLAGS: $CFLAGS"
|
||||
echo "-- LDFLASG: $LDFLAGS"
|
||||
echo "-- SDL_CFLAGS: $SDL_CFLAGS"
|
||||
echo "-- SDL_LDFLAGS: $SDL_LDFLAGS"
|
||||
echo "-- SDL_STATIC_LDFLAGS: $SDL_STATIC_LDFLAGS"
|
||||
|
||||
echo "-- COMPILE: $compile_cmd"
|
||||
echo "-- LINK: $link_cmd"
|
||||
|
||||
@@ -13,7 +13,7 @@ case "$machine" in
|
||||
*android* )
|
||||
EXEPREFIX="lib"
|
||||
EXESUFFIX=".so"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -shared"
|
||||
LDFLAGS="$LDFLAGS -shared"
|
||||
;;
|
||||
* )
|
||||
EXEPREFIX=""
|
||||
@@ -25,20 +25,20 @@ set -e
|
||||
|
||||
# Get the canonical path of the folder containing this script
|
||||
testdir=$(cd -P -- "$(dirname -- "$0")" && printf '%s\n' "$(pwd -P)")
|
||||
CFLAGS="$( sdl2-config --cflags )"
|
||||
LDFLAGS="$( sdl2-config --libs )"
|
||||
STATIC_LDFLAGS="$( sdl2-config --static-libs )"
|
||||
SDL_CFLAGS="$( sdl2-config --cflags )"
|
||||
SDL_LDFLAGS="$( sdl2-config --libs )"
|
||||
SDL_STATIC_LDFLAGS="$( sdl2-config --static-libs )"
|
||||
|
||||
compile_cmd="$CC -c "$testdir/main_gui.c" -o main_gui_sdlconfig.c.o $CFLAGS $EXTRA_CFLAGS"
|
||||
link_cmd="$CC main_gui_sdlconfig.c.o -o ${EXEPREFIX}main_gui_sdlconfig${EXESUFFIX} $LDFLAGS $EXTRA_LDFLAGS"
|
||||
static_link_cmd="$CC main_gui_sdlconfig.c.o -o ${EXEPREFIX}main_gui_sdlconfig_static${EXESUFFIX} $STATIC_LDFLAGS $EXTRA_LDFLAGS"
|
||||
compile_cmd="$CC -c "$testdir/main_gui.c" -o main_gui_sdlconfig.c.o $CFLAGS $SDL_CFLAGS"
|
||||
link_cmd="$CC main_gui_sdlconfig.c.o -o ${EXEPREFIX}main_gui_sdlconfig${EXESUFFIX} $SDL_LDFLAGS $LDFLAGS"
|
||||
static_link_cmd="$CC main_gui_sdlconfig.c.o -o ${EXEPREFIX}main_gui_sdlconfig_static${EXESUFFIX} $SDL_STATIC_LDFLAGS $LDFLAGS"
|
||||
|
||||
echo "-- CC: $CC"
|
||||
echo "-- CFLAGS: $CFLAGS"
|
||||
echo "-- EXTRA_CFLAGS: $EXTRA_CFLAGS"
|
||||
echo "-- LDFLAGS: $LDFLAGS"
|
||||
echo "-- STATIC_LDFLAGS: $STATIC_LDFLAGS"
|
||||
echo "-- EXTRA_LDFLAGS: $EXTRA_LDFLAGS"
|
||||
echo "-- CC: $CC"
|
||||
echo "-- CFLAGS: $CFLAGS"
|
||||
echo "-- LDFLAGS: $LDFLAGS"
|
||||
echo "-- SDL_CFLAGS: $SDL_CFLAGS"
|
||||
echo "-- SDL_LDFLAGS: $SDL_LDFLAGS"
|
||||
echo "-- SDL_STATIC_LDFLAGS: $SDL_STATIC_LDFLAGS"
|
||||
|
||||
echo "-- COMPILE: $compile_cmd"
|
||||
echo "-- LINK: $link_cmd"
|
||||
|
||||
205
configure.ac
205
configure.ac
@@ -12,8 +12,8 @@ orig_CFLAGS="$CFLAGS"
|
||||
dnl Set various version strings - taken gratefully from the GTk sources
|
||||
# See docs/release_checklist.md
|
||||
SDL_MAJOR_VERSION=2
|
||||
SDL_MINOR_VERSION=24
|
||||
SDL_MICRO_VERSION=1
|
||||
SDL_MINOR_VERSION=28
|
||||
SDL_MICRO_VERSION=0
|
||||
SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION
|
||||
|
||||
SDL_BINARY_AGE=`expr $SDL_MINOR_VERSION \* 100 + $SDL_MICRO_VERSION`
|
||||
@@ -62,6 +62,7 @@ AC_PROG_AWK
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
AC_PROG_EGREP
|
||||
AC_PROG_FGREP
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_MAKE_SET
|
||||
PKG_PROG_PKG_CONFIG
|
||||
@@ -71,7 +72,7 @@ if [ test -z "$AWK" ]; then
|
||||
fi
|
||||
|
||||
AC_CHECK_PROGS([SORT], [gsort sort], [false])
|
||||
AS_IF([! "$SORT" -V </dev/null >/dev/null], [AC_MSG_ERROR([GNU sort(1) is required])])
|
||||
AS_IF([! "$SORT" -V </dev/null >/dev/null], [AC_MSG_WARN([sort(1) that supports the -V option is required to find dynamic libraries])])
|
||||
|
||||
dnl 64-bit file offsets if possible unless --disable-largefile is specified
|
||||
AC_SYS_LARGEFILE
|
||||
@@ -180,8 +181,8 @@ base_libdir=`echo \${libdir} | sed 's/.*\/\(.*\)/\1/; q'`
|
||||
dnl Function to find a library in the compiler search path
|
||||
find_lib()
|
||||
{
|
||||
gcc_bin_path=[`$CC -print-search-dirs 2>/dev/null | fgrep programs: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
|
||||
gcc_lib_path=[`$CC -print-search-dirs 2>/dev/null | fgrep libraries: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
|
||||
gcc_bin_path=[`$CC -print-search-dirs 2>/dev/null | $FGREP programs: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
|
||||
gcc_lib_path=[`$CC -print-search-dirs 2>/dev/null | $FGREP libraries: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
|
||||
env_lib_path=[`echo $LIBS $LDFLAGS $* | sed 's/-L[ ]*//g'`]
|
||||
if test "$cross_compiling" = yes; then
|
||||
host_lib_path=""
|
||||
@@ -317,13 +318,19 @@ dnl See whether we are allowed to use the system C library
|
||||
AC_ARG_ENABLE(libc,
|
||||
[AS_HELP_STRING([--enable-libc], [Use the system C library [default=yes]])],
|
||||
, enable_libc=yes)
|
||||
|
||||
dnl See whether we are allowed to use libiconv
|
||||
AC_ARG_ENABLE(system-iconv,
|
||||
[AS_HELP_STRING([--enable-system-iconv], [Use iconv() from system-installed libraries [default=yes]])],
|
||||
, enable_system_iconv=yes)
|
||||
|
||||
if test x$enable_libc = xyes; then
|
||||
AC_DEFINE(HAVE_LIBC, 1, [ ])
|
||||
|
||||
dnl Check for C library headers
|
||||
dnl AC_CHECK_INCLUDES_DEFAULT is an autoconf-2.7x thing where AC_HEADER_STDC is deprecated.
|
||||
m4_ifdef([AC_CHECK_INCLUDES_DEFAULT], [AC_CHECK_INCLUDES_DEFAULT], [AC_HEADER_STDC])
|
||||
AC_CHECK_HEADERS(sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h wchar.h inttypes.h stdint.h limits.h ctype.h math.h float.h iconv.h signal.h)
|
||||
AC_CHECK_HEADERS(sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h wchar.h inttypes.h stdint.h limits.h ctype.h math.h float.h iconv.h signal.h linux/input.h)
|
||||
|
||||
dnl Check for typedefs, structures, etc.
|
||||
AC_TYPE_SIZE_T
|
||||
@@ -342,13 +349,15 @@ dnl Checks for library functions.
|
||||
AC_DEFINE(HAVE_MPROTECT, 1, [ ])
|
||||
],[]),
|
||||
)
|
||||
AC_CHECK_FUNCS(malloc calloc realloc free getenv setenv putenv unsetenv bsearch qsort abs bcopy memset memcmp memcpy memmove wcslen wcslcpy wcslcat _wcsdup wcsdup wcsstr wcscmp wcsncmp wcscasecmp _wcsicmp wcsncasecmp _wcsnicmp strlen strlcpy strlcat _strrev _strupr _strlwr index rindex strchr strrchr strstr strtok_r itoa _ltoa _uitoa _ultoa strtod strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp vsscanf vsnprintf fopen64 fseeko fseeko64 sigaction setjmp nanosleep sysconf sysctlbyname getauxval elf_aux_info poll _Exit)
|
||||
AC_CHECK_FUNCS(malloc calloc realloc free getenv setenv putenv unsetenv bsearch qsort abs bcopy memset memcmp memcpy memmove wcslen wcslcpy wcslcat _wcsdup wcsdup wcsstr wcscmp wcsncmp wcscasecmp _wcsicmp wcsncasecmp _wcsnicmp strlen strlcpy strlcat _strrev _strupr _strlwr index rindex strchr strrchr strstr strtok_r itoa _ltoa _uitoa _ultoa strtod strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp strcasestr vsscanf vsnprintf fopen64 fseeko fseeko64 sigaction setjmp nanosleep sysconf sysctlbyname getauxval elf_aux_info poll _Exit)
|
||||
|
||||
AC_CHECK_LIB(m, pow, [LIBS="$LIBS -lm"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm"])
|
||||
AC_CHECK_FUNCS(acos acosf asin asinf atan atanf atan2 atan2f ceil ceilf copysign copysignf cos cosf exp expf fabs fabsf floor floorf trunc truncf fmod fmodf log logf log10 log10f lround lroundf pow powf round roundf scalbn scalbnf sin sinf sqrt sqrtf tan tanf)
|
||||
|
||||
AC_CHECK_LIB(iconv, iconv_open, [LIBS="$LIBS -liconv"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -liconv"])
|
||||
AC_CHECK_FUNCS(iconv)
|
||||
if test x$enable_system_iconv = xyes; then
|
||||
AC_CHECK_LIB(iconv, iconv_open, [LIBS="$LIBS -liconv"; EXTRA_LDFLAGS="$EXTRA_LDFLAGS -liconv"])
|
||||
AC_CHECK_FUNCS(iconv)
|
||||
fi
|
||||
|
||||
AC_CHECK_MEMBER(struct sigaction.sa_sigaction,[AC_DEFINE([HAVE_SA_SIGACTION], 1, [ ])], ,[#include <signal.h>])
|
||||
|
||||
@@ -919,16 +928,8 @@ CheckOSS()
|
||||
AC_ARG_ENABLE(oss,
|
||||
[AS_HELP_STRING([--enable-oss], [support the OSS audio API [default=maybe]])],
|
||||
, enable_oss=maybe)
|
||||
|
||||
# OpenBSD "has" OSS, but it's not really for app use. They want you to
|
||||
# use sndio instead. So on there, we default to disabled. You can force
|
||||
# it on if you really want, though.
|
||||
if test x$enable_oss = xmaybe; then
|
||||
enable_oss=yes
|
||||
case "$host" in
|
||||
*-*-openbsd*)
|
||||
enable_oss=no;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if test x$enable_audio = xyes -a x$enable_oss = xyes; then
|
||||
@@ -941,16 +942,6 @@ CheckOSS()
|
||||
int arg = SNDCTL_DSP_SETFRAGMENT;
|
||||
]])], [have_oss=yes],[])
|
||||
fi
|
||||
if test x$have_oss != xyes; then
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
#include <soundcard.h>
|
||||
]], [[
|
||||
int arg = SNDCTL_DSP_SETFRAGMENT;
|
||||
]])], [
|
||||
have_oss=yes
|
||||
AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H, 1, [ ])
|
||||
],[])
|
||||
fi
|
||||
AC_MSG_RESULT($have_oss)
|
||||
if test x$have_oss = xyes; then
|
||||
SUMMARY_audio="${SUMMARY_audio} oss"
|
||||
@@ -960,7 +951,7 @@ CheckOSS()
|
||||
|
||||
# We may need to link with ossaudio emulation library
|
||||
case "$host" in
|
||||
*-*-openbsd*|*-*-netbsd*)
|
||||
*-*-netbsd*)
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lossaudio";;
|
||||
esac
|
||||
fi
|
||||
@@ -1280,20 +1271,9 @@ CheckSNDIO()
|
||||
[AS_HELP_STRING([--enable-sndio], [support the sndio audio API [default=yes]])],
|
||||
, enable_sndio=yes)
|
||||
if test x$enable_audio = xyes -a x$enable_sndio = xyes; then
|
||||
AC_CHECK_HEADER(sndio.h, have_sndio_hdr=yes)
|
||||
AC_CHECK_LIB(sndio, sio_open, have_sndio_lib=yes)
|
||||
PKG_CHECK_MODULES([SNDIO], [sndio], audio_sndio=yes, audio_sndio=no)
|
||||
|
||||
AC_MSG_CHECKING(for sndio audio support)
|
||||
have_sndio=no
|
||||
|
||||
if test x$have_sndio_hdr = xyes -a x$have_sndio_lib = xyes; then
|
||||
have_sndio=yes
|
||||
SNDIO_LIBS="-lsndio"
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT($have_sndio)
|
||||
|
||||
if test x$have_sndio = xyes; then
|
||||
if test x$audio_sndio = xyes; then
|
||||
AC_ARG_ENABLE(sndio-shared,
|
||||
[AS_HELP_STRING([--enable-sndio-shared], [dynamically load sndio audio support [default=yes]])],
|
||||
, enable_sndio_shared=yes)
|
||||
@@ -1598,6 +1578,49 @@ CheckStackBoundary()
|
||||
fi
|
||||
}
|
||||
|
||||
dnl See if GCC's -Werror is supported.
|
||||
CheckWerror()
|
||||
{
|
||||
AC_ARG_ENABLE(werror,
|
||||
[AS_HELP_STRING([--enable-werror], [treat warnings as errors [default=no]])],
|
||||
enable_werror=$enableval, enable_werror=no)
|
||||
if test x$enable_werror = xyes; then
|
||||
AC_MSG_CHECKING(for GCC -Werror option)
|
||||
have_gcc_werror=no
|
||||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$save_CFLAGS -Werror"
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
int x = 0;
|
||||
]],[])], [have_gcc_werror=yes],[])
|
||||
AC_MSG_RESULT($have_gcc_werror)
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
if test x$have_gcc_werror = xyes; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Werror"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
dnl See if GCC's -Wno-error=deprecated-declarations is supported.
|
||||
CheckNoErrorDeprecatedDeclarationsWerror()
|
||||
{
|
||||
AC_MSG_CHECKING(for GCC -Wno-error=deprecated-declarations option)
|
||||
have_gcc_no_werror_deprecated_declarations=no
|
||||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$save_CFLAGS -Wno-error=deprecated-declarations"
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
int x = 0;
|
||||
]],[])], [have_gcc_no_werror_deprecated_declarations=yes],[])
|
||||
AC_MSG_RESULT($have_gcc_werror)
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
if test x$have_gcc_no_werror_deprecated_declarations = xyes; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wno-error=deprecated-declarations"
|
||||
fi
|
||||
}
|
||||
|
||||
dnl See if GCC's -Wdeclaration-after-statement is supported.
|
||||
dnl This lets us catch things that would fail on a C89 compiler when using
|
||||
dnl a modern GCC.
|
||||
@@ -1651,6 +1674,27 @@ dnl Haiku headers use multicharacter constants all over the place. Ignore these
|
||||
fi
|
||||
}
|
||||
|
||||
dnl See if GCC's -Wunused-local-typedefs is supported and disable it
|
||||
dnl because it triggers on gcc 4.8.4 for compile time asserts inside
|
||||
dnl of functions.
|
||||
CheckUnusedLocalTypedefs()
|
||||
{
|
||||
AC_MSG_CHECKING(for GCC -Wunused-local-typedefs option)
|
||||
have_gcc_unused_local_typedefs=no
|
||||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$save_CFLAGS -Wunused-local-typedefs"
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
int x = 0;
|
||||
]],[])], [have_gcc_unused_local_typedefs=yes],[])
|
||||
AC_MSG_RESULT($have_gcc_unused_local_typedefs)
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
if test x$have_gcc_unused_local_typedefs = xyes; then
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wno-unused-local-typedefs"
|
||||
fi
|
||||
}
|
||||
|
||||
dnl Check for Wayland
|
||||
CheckWayland()
|
||||
{
|
||||
@@ -1764,6 +1808,14 @@ dnl See if libdecor is available
|
||||
else
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS $DECOR_LIBS"
|
||||
fi
|
||||
|
||||
saved_cflags=$CFLAGS
|
||||
CFLAGS="$CFLAGS $DECOR_CFLAGS"
|
||||
AC_CHECK_DECLS([libdecor_frame_get_min_content_size, libdecor_frame_get_max_content_size], [libdecor_get_min_max=yes], [ ], [[#include <libdecor.h>]])
|
||||
if test x$libdecor_get_min_max = xyes; then
|
||||
AC_DEFINE(SDL_HAVE_LIBDECOR_GET_MIN_MAX, 1, [ ])
|
||||
fi
|
||||
CFLAGS="$saved_cflags"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -1852,8 +1904,15 @@ dnl Find the X11 include and library directories
|
||||
CheckX11()
|
||||
{
|
||||
AC_ARG_ENABLE(video-x11,
|
||||
[AS_HELP_STRING([--enable-video-x11], [use X11 video driver [default=yes]])],
|
||||
, enable_video_x11=yes)
|
||||
[AS_HELP_STRING([--enable-video-x11], [use X11 video driver [default=maybe]])],
|
||||
,[
|
||||
enable_video_x11=yes
|
||||
case "$host" in
|
||||
*-*-darwin*|*-ios-*)
|
||||
enable_video_x11=no
|
||||
;;
|
||||
esac])
|
||||
|
||||
if test x$enable_video = xyes -a x$enable_video_x11 = xyes; then
|
||||
case "$host" in
|
||||
*-*-darwin*)
|
||||
@@ -2413,8 +2472,8 @@ CheckDummyVideo()
|
||||
CheckOffscreenVideo()
|
||||
{
|
||||
AC_ARG_ENABLE(video-offscreen,
|
||||
[AS_HELP_STRING([--enable-video-offscreen], [use offscreen video driver [default=no]])],
|
||||
, enable_video_offscreen=no)
|
||||
[AS_HELP_STRING([--enable-video-offscreen], [use offscreen video driver [default=yes]])],
|
||||
, enable_video_offscreen=yes)
|
||||
if test x$enable_video_offscreen = xyes; then
|
||||
AC_DEFINE(SDL_VIDEO_DRIVER_OFFSCREEN, 1, [ ])
|
||||
SOURCES="$SOURCES $srcdir/src/video/offscreen/*.c"
|
||||
@@ -3034,7 +3093,7 @@ dnl This is used on Linux for glibc binary compatibility (Doh!)
|
||||
;;
|
||||
*-*-openbsd*)
|
||||
pthread_cflags="-D_REENTRANT"
|
||||
pthread_lib="-pthread"
|
||||
pthread_lib="-lpthread"
|
||||
;;
|
||||
*-*-solaris2.9)
|
||||
# From Solaris 9+, posix4's preferred name is rt.
|
||||
@@ -3643,15 +3702,14 @@ CheckClockGettime()
|
||||
[AS_HELP_STRING([--enable-clock_gettime], [use clock_gettime() instead of gettimeofday() on UNIX [default=yes]])],
|
||||
, enable_clock_gettime=yes)
|
||||
if test x$enable_clock_gettime = xyes; then
|
||||
AC_CHECK_LIB(rt, clock_gettime, have_clock_gettime=yes)
|
||||
AC_CHECK_LIB(c, clock_gettime, have_clock_gettime=yes)
|
||||
if test x$have_clock_gettime = xyes; then
|
||||
AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ ])
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lrt"
|
||||
AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ ])
|
||||
else
|
||||
AC_CHECK_LIB(c, clock_gettime, have_clock_gettime=yes)
|
||||
AC_CHECK_LIB(rt, clock_gettime, have_clock_gettime=yes)
|
||||
if test x$have_clock_gettime = xyes; then
|
||||
AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ ])
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lrt"
|
||||
AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ ])
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -3709,6 +3767,7 @@ CheckVirtualJoystick()
|
||||
|
||||
dnl Do this on all platforms, before everything else (other things might want to override it).
|
||||
CheckWarnAll
|
||||
CheckUnusedLocalTypedefs
|
||||
CheckNoStrictAliasing
|
||||
|
||||
dnl Do this for every platform, but for some it doesn't mean anything, but better to catch it here anyhow.
|
||||
@@ -3757,6 +3816,7 @@ case "$host" in
|
||||
;;
|
||||
esac
|
||||
CheckVisibilityHidden
|
||||
CheckWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckOffscreenVideo
|
||||
@@ -3870,13 +3930,15 @@ case "$host" in
|
||||
if test x$enable_joystick = xyes; then
|
||||
case $ARCH in
|
||||
linux)
|
||||
AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ])
|
||||
SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
|
||||
SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c"
|
||||
have_joystick=yes
|
||||
if test "x$ac_cv_header_linux_input_h" = xyes; then
|
||||
AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ])
|
||||
SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
|
||||
SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c"
|
||||
have_joystick=yes
|
||||
fi
|
||||
;;
|
||||
freebsd)
|
||||
if test x$use_input_events = xyes; then
|
||||
if test x$use_input_events = xyes -a x$ac_cv_header_linux_input_h = xyes; then
|
||||
AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ])
|
||||
SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
|
||||
SOURCES="$SOURCES $srcdir/src/joystick/steam/*.c"
|
||||
@@ -3972,6 +4034,7 @@ case "$host" in
|
||||
# Set up other core UNIX files
|
||||
SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev_capabilities.c"
|
||||
SOURCES="$SOURCES $srcdir/src/core/linux/SDL_threadprio.c"
|
||||
SOURCES="$SOURCES $srcdir/src/core/linux/SDL_sandbox.c"
|
||||
SOURCES="$SOURCES $srcdir/src/core/unix/*.c"
|
||||
;;
|
||||
*-*-cygwin* | *-*-mingw*)
|
||||
@@ -3989,6 +4052,7 @@ case "$host" in
|
||||
have_loadso=yes
|
||||
fi
|
||||
CheckGDwarf4
|
||||
CheckWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckOffscreenVideo
|
||||
@@ -4213,6 +4277,8 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
ARCH=ios
|
||||
|
||||
CheckVisibilityHidden
|
||||
CheckWerror
|
||||
CheckNoErrorDeprecatedDeclarationsWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckOffscreenVideo
|
||||
@@ -4296,7 +4362,11 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
SOURCES="$SOURCES $srcdir/src/video/uikit/*.m"
|
||||
SUMMARY_video="${SUMMARY_video} uikit"
|
||||
have_video=yes
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm -liconv -lobjc"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm"
|
||||
if test x$enable_system_iconv = xyes; then
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -liconv"
|
||||
fi
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lobjc"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AVFoundation"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AudioToolbox"
|
||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio"
|
||||
@@ -4324,6 +4394,8 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
|
||||
CheckObjectiveCARC
|
||||
CheckVisibilityHidden
|
||||
CheckWerror
|
||||
CheckNoErrorDeprecatedDeclarationsWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckOffscreenVideo
|
||||
@@ -4449,6 +4521,7 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
fi
|
||||
|
||||
CheckVisibilityHidden
|
||||
CheckWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckOffscreenVideo
|
||||
@@ -4500,6 +4573,7 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
*-*-riscos*)
|
||||
ARCH=riscos
|
||||
CheckVisibilityHidden
|
||||
CheckWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckOffscreenVideo
|
||||
@@ -4550,6 +4624,7 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
enable_static=no # disable static builds
|
||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -DBUILD_SDL -DOS2EMX_PLAIN_CHAR"
|
||||
CheckOS2
|
||||
CheckWerror
|
||||
CheckDeclarationAfterStatement
|
||||
CheckDummyVideo
|
||||
CheckDiskAudio
|
||||
@@ -4558,8 +4633,10 @@ dnl BeOS support removed after SDL 2.0.1. Haiku still works. --ryan.
|
||||
|
||||
# Set up the core platform files
|
||||
SOURCES="$SOURCES $srcdir/src/core/os2/*.c"
|
||||
if test x$ac_cv_func_iconv != xyes -o x$ac_cv_header_iconv_h != xyes; then
|
||||
SOURCES="$SOURCES $srcdir/src/core/os2/geniconv/*.c"
|
||||
if test x$enable_system_iconv = xyes; then
|
||||
if test x$ac_cv_func_iconv != xyes -o x$ac_cv_header_iconv_h != xyes; then
|
||||
SOURCES="$SOURCES $srcdir/src/core/os2/geniconv/*.c"
|
||||
fi
|
||||
fi
|
||||
# Use the Unix locale APIs.
|
||||
if test x$enable_locale = xyes; then
|
||||
@@ -4639,6 +4716,12 @@ else
|
||||
fi
|
||||
AC_SUBST([INSTALL_SDL2_CONFIG], [$enable_sdl2_config])
|
||||
|
||||
AC_ARG_ENABLE([vendor-info],
|
||||
[AS_HELP_STRING([--enable-vendor-info=STRING], [Add vendor info to SDL_REVISION])],
|
||||
[enable_vendor_info="$enableval"], [enable_vendor_info=])
|
||||
AS_IF([test "$enable_vendor_info" = no], [enable_vendor_info=])
|
||||
AC_SUBST([SDL_VENDOR_INFO], [$enable_vendor_info])
|
||||
|
||||
# Verify that we have all the platform specific files we need
|
||||
|
||||
if test x$have_audio != xyes; then
|
||||
@@ -4807,6 +4890,8 @@ AC_SUBST(SDL_CFLAGS)
|
||||
AC_SUBST(SDL_LIBS)
|
||||
AC_SUBST(SDL_STATIC_LIBS)
|
||||
AC_SUBST(SDL_RLD_FLAGS)
|
||||
PKGCONFIG_DEPENDS=""
|
||||
AC_SUBST(PKGCONFIG_DEPENDS)
|
||||
if test x$enable_shared = xyes; then
|
||||
PKGCONFIG_LIBS_PRIV="
|
||||
Libs.private:"
|
||||
|
||||
@@ -13,7 +13,7 @@ supported, but you can use the "android-project-ant" directory as a template.
|
||||
Requirements
|
||||
================================================================================
|
||||
|
||||
Android SDK (version 26 or later)
|
||||
Android SDK (version 31 or later)
|
||||
https://developer.android.com/sdk/index.html
|
||||
|
||||
Android NDK r15c or later
|
||||
@@ -26,9 +26,9 @@ How the port works
|
||||
================================================================================
|
||||
|
||||
- Android applications are Java-based, optionally with parts written in C
|
||||
- As SDL apps are C-based, we use a small Java shim that uses JNI to talk to
|
||||
- As SDL apps are C-based, we use a small Java shim that uses JNI to talk to
|
||||
the SDL library
|
||||
- This means that your application C code must be placed inside an Android
|
||||
- This means that your application C code must be placed inside an Android
|
||||
Java project, along with some C support code that communicates with Java
|
||||
- This eventually produces a standard Android .apk package
|
||||
|
||||
@@ -68,14 +68,22 @@ Finally, a word of caution: re running androidbuild.sh wipes any changes you may
|
||||
done in the build directory for the app!
|
||||
|
||||
|
||||
For more complex projects, follow these instructions:
|
||||
|
||||
1. Copy the android-project directory wherever you want to keep your projects
|
||||
and rename it to the name of your project.
|
||||
2. Move or symlink this SDL directory into the "<project>/app/jni" directory
|
||||
3. Edit "<project>/app/jni/src/Android.mk" to include your source files
|
||||
|
||||
4a. If you want to use Android Studio, simply open your <project> directory and start building.
|
||||
For more complex projects, follow these instructions:
|
||||
|
||||
1. Get the source code for SDL and copy the 'android-project' directory located at SDL/android-project to a suitable location. Also make sure to rename it to your project name (In these examples: YOURPROJECT).
|
||||
|
||||
(The 'android-project' directory can basically be seen as a sort of starting point for the android-port of your project. It contains the glue code between the Android Java 'frontend' and the SDL code 'backend'. It also contains some standard behaviour, like how events should be handled, which you will be able to change.)
|
||||
|
||||
2. Move or [symlink](https://en.wikipedia.org/wiki/Symbolic_link) the SDL directory into the "YOURPROJECT/app/jni" directory
|
||||
|
||||
(This is needed as the source of SDL has to be compiled by the Android compiler)
|
||||
|
||||
3. Edit "YOURPROJECT/app/jni/src/Android.mk" to include your source files.
|
||||
|
||||
(They should be separated by spaces after the "LOCAL_SRC_FILES := " declaration)
|
||||
|
||||
4a. If you want to use Android Studio, simply open your 'YOURPROJECT' directory and start building.
|
||||
|
||||
4b. If you want to build manually, run './gradlew installDebug' in the project directory. This compiles the .java, creates an .apk with the native code embedded, and installs it on any connected Android device
|
||||
|
||||
@@ -83,9 +91,9 @@ For more complex projects, follow these instructions:
|
||||
If you already have a project that uses CMake, the instructions change somewhat:
|
||||
|
||||
1. Do points 1 and 2 from the instruction above.
|
||||
2. Edit "<project>/app/build.gradle" to comment out or remove sections containing ndk-build
|
||||
2. Edit "YOURPROJECT/app/build.gradle" to comment out or remove sections containing ndk-build
|
||||
and uncomment the cmake sections. Add arguments to the CMake invocation as needed.
|
||||
3. Edit "<project>/app/jni/CMakeLists.txt" to include your project (it defaults to
|
||||
3. Edit "YOURPROJECT/app/jni/CMakeLists.txt" to include your project (it defaults to
|
||||
adding the "src" subdirectory). Note that you'll have SDL2, SDL2main and SDL2-static
|
||||
as targets in your project, so you should have "target_link_libraries(yourgame SDL2 SDL2main)"
|
||||
in your CMakeLists.txt file. Also be aware that you should use add_library() instead of
|
||||
@@ -132,15 +140,15 @@ Here's an example of a minimal class file:
|
||||
|
||||
--- MyGame.java --------------------------
|
||||
package com.gamemaker.game;
|
||||
|
||||
import org.libsdl.app.SDLActivity;
|
||||
|
||||
|
||||
import org.libsdl.app.SDLActivity;
|
||||
|
||||
/**
|
||||
* A sample wrapper class that just calls SDLActivity
|
||||
*/
|
||||
|
||||
* A sample wrapper class that just calls SDLActivity
|
||||
*/
|
||||
|
||||
public class MyGame extends SDLActivity { }
|
||||
|
||||
|
||||
------------------------------------------
|
||||
|
||||
Then replace "SDLActivity" in AndroidManifest.xml with the name of your
|
||||
@@ -179,7 +187,7 @@ may want to keep this fact in mind when building your APK, specially when large
|
||||
files are involved.
|
||||
For more information on which extensions get compressed by default and how to
|
||||
disable this behaviour, see for example:
|
||||
|
||||
|
||||
http://ponystyle.com/blog/2010/03/26/dealing-with-asset-compression-in-android-apps/
|
||||
|
||||
|
||||
@@ -350,7 +358,7 @@ I get output from addr2line showing that it's in the quit function, in testsprit
|
||||
You can add logging to your code to help show what's happening:
|
||||
|
||||
#include <android/log.h>
|
||||
|
||||
|
||||
__android_log_print(ANDROID_LOG_INFO, "foo", "Something happened! x = %d", x);
|
||||
|
||||
If you need to build without optimization turned on, you can create a file called
|
||||
@@ -440,7 +448,7 @@ where you only update a portion of the screen on each frame, you may notice a
|
||||
variety of visual glitches on Android, that are not present on other platforms.
|
||||
This is caused by SDL's use of EGL as the support system to handle OpenGL ES/ES2
|
||||
contexts, in particular the use of the eglSwapBuffers function. As stated in the
|
||||
documentation for the function "The contents of ancillary buffers are always
|
||||
documentation for the function "The contents of ancillary buffers are always
|
||||
undefined after calling eglSwapBuffers".
|
||||
Setting the EGL_SWAP_BEHAVIOR attribute of the surface to EGL_BUFFER_PRESERVED
|
||||
is not possible for SDL as it requires EGL 1.4, available only on the API level
|
||||
@@ -459,7 +467,7 @@ Two legitimate ways:
|
||||
Activity by calling Activity.finish().
|
||||
|
||||
- Android OS can decide to terminate your application by calling onDestroy()
|
||||
(see Activity life cycle). Your application will receive a SDL_QUIT event you
|
||||
(see Activity life cycle). Your application will receive a SDL_QUIT event you
|
||||
can handle to save things and quit.
|
||||
|
||||
Don't call exit() as it stops the activity badly.
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
(www.cmake.org)
|
||||
|
||||
SDL's build system was traditionally based on autotools. Over time, this
|
||||
approach has suffered from several issues across the different supported
|
||||
approach has suffered from several issues across the different supported
|
||||
platforms.
|
||||
To solve these problems, a new build system based on CMake was introduced.
|
||||
It is developed in parallel to the legacy autotools build system, so users
|
||||
It is developed in parallel to the legacy autotools build system, so users
|
||||
can experiment with it without complication.
|
||||
|
||||
The CMake build system is supported on the following platforms:
|
||||
@@ -59,15 +59,15 @@ if(MYGAME_VENDORED)
|
||||
else()
|
||||
# 1. Look for a SDL2 package, 2. look for the SDL2 component and 3. fail if none can be found
|
||||
find_package(SDL2 REQUIRED CONFIG REQUIRED COMPONENTS SDL2)
|
||||
|
||||
# 1. Look for a SDL2 package, 2. Look for the SDL2maincomponent and 3. DO NOT fail when SDL2main is not available
|
||||
|
||||
# 1. Look for a SDL2 package, 2. Look for the SDL2maincomponent and 3. DO NOT fail when SDL2main is not available
|
||||
find_package(SDL2 REQUIRED CONFIG COMPONENTS SDL2main)
|
||||
endif()
|
||||
|
||||
# Create your game executable target as usual
|
||||
# Create your game executable target as usual
|
||||
add_executable(mygame WIN32 mygame.c)
|
||||
|
||||
# SDL2::SDL2main may or may not be available. It is e.g. required by Windows GUI applications
|
||||
# SDL2::SDL2main may or may not be available. It is e.g. required by Windows GUI applications
|
||||
if(TARGET SDL2::SDL2main)
|
||||
# It has an implicit dependency on SDL2 functions, so it MUST be added before SDL2::SDL2 (or SDL2::SDL2-static)
|
||||
target_link_libraries(mygame PRIVATE SDL2::SDL2main)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user