Compare commits
554 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d2e52db7f9 | ||
|
|
15d7e8992f | ||
|
|
7dc54ed090 | ||
|
|
c67cdd49af | ||
|
|
5d00b37172 | ||
|
|
342921f171 | ||
|
|
bf3611a25d | ||
|
|
af985cdd7d | ||
|
|
a031de2ba1 | ||
|
|
13ac425381 | ||
|
|
a7094bf4ac | ||
|
|
6dee65a10a | ||
|
|
b228b28e9a | ||
|
|
6f7387a45f | ||
|
|
5dc342162a | ||
|
|
708b4f9e2f | ||
|
|
6c2e76d7c1 | ||
|
|
f769ae2642 | ||
|
|
296123b07c | ||
|
|
666f798123 | ||
|
|
2ef5492e90 | ||
|
|
4beff3ef6f | ||
|
|
3cd530914d | ||
|
|
3b493a0938 | ||
|
|
40cfd9986c | ||
|
|
61f17d8a6e | ||
|
|
4078cf05c7 | ||
|
|
c4ac5bccd3 | ||
|
|
fc71e3fef1 | ||
|
|
d9a65ad23f | ||
|
|
1853a14d93 | ||
|
|
785af56130 | ||
|
|
7f4b374d8b | ||
|
|
88fe4fb6a5 | ||
|
|
a1c59e1d9d | ||
|
|
c47a69f488 | ||
|
|
867882f5b6 | ||
|
|
664c907253 | ||
|
|
ab19e13cf6 | ||
|
|
52d1097cd0 | ||
|
|
8fd6d9f9d2 | ||
|
|
79d38dcf9f | ||
|
|
f043441788 | ||
|
|
afe74301c7 | ||
|
|
b965e71859 | ||
|
|
f58570de26 | ||
|
|
fa1adb3a60 | ||
|
|
d684c9420a | ||
|
|
7153f791b4 | ||
|
|
4dc0de73b1 | ||
|
|
9ff681c139 | ||
|
|
22a42a2927 | ||
|
|
9790e80d41 | ||
|
|
7756397876 | ||
|
|
0ef5e46416 | ||
|
|
080804cb0e | ||
|
|
29f1dc2555 | ||
|
|
a1ac9c51a5 | ||
|
|
3b3a2fcb94 | ||
|
|
4063daaef4 | ||
|
|
245b20e959 | ||
|
|
d3c504786d | ||
|
|
c4a3fb41cf | ||
|
|
8c5da501a9 | ||
|
|
1d3c298803 | ||
|
|
145937ebcc | ||
|
|
5038ab0d1f | ||
|
|
deec530914 | ||
|
|
3918637dd8 | ||
|
|
24ea5ab8a4 | ||
|
|
f71eb4e042 | ||
|
|
7975fa1d1e | ||
|
|
44f6afd2ec | ||
|
|
0b11523b09 | ||
|
|
6b4084ffa6 | ||
|
|
ec67d04f99 | ||
|
|
4bb042ee13 | ||
|
|
00c2004d1a | ||
|
|
e486a19f89 | ||
|
|
2b8b7cdee3 | ||
|
|
385b41cad1 | ||
|
|
0edc046f1b | ||
|
|
5c2342f64b | ||
|
|
77514cb8a3 | ||
|
|
549bc75e1c | ||
|
|
2d45ef07de | ||
|
|
866c635d44 | ||
|
|
671f55afef | ||
|
|
f4a58d4b14 | ||
|
|
25bf0a9381 | ||
|
|
cdb75b0e83 | ||
|
|
da58897544 | ||
|
|
b9ad07f793 | ||
|
|
45d9551fa2 | ||
|
|
41e7553762 | ||
|
|
59e057eed8 | ||
|
|
2e72cf036a | ||
|
|
c67ade7017 | ||
|
|
de7ddab5e6 | ||
|
|
6efdb1e75e | ||
|
|
91de6a70c0 | ||
|
|
265568da70 | ||
|
|
98bb6e8957 | ||
|
|
b86ee200ec | ||
|
|
bdaceee408 | ||
|
|
16573216de | ||
|
|
e83618d39c | ||
|
|
b03f058f73 | ||
|
|
e4cee7c88f | ||
|
|
4adbf4f08e | ||
|
|
ffbc33a64a | ||
|
|
62c2b52a0c | ||
|
|
3c0eaec162 | ||
|
|
022ca91a6e | ||
|
|
54c9505cb4 | ||
|
|
512c595e88 | ||
|
|
b00e8011f4 | ||
|
|
89ee8cc204 | ||
|
|
a2b61f7c1c | ||
|
|
0a80bf3131 | ||
|
|
2cddc473ee | ||
|
|
25c9b41d0b | ||
|
|
3f28eaef94 | ||
|
|
1dcb88e1c2 | ||
|
|
8b85b8345d | ||
|
|
428cddc4ea | ||
|
|
ecd049c42a | ||
|
|
0fad3c88e4 | ||
|
|
31552a2169 | ||
|
|
1b89dae25d | ||
|
|
5e57bf92bf | ||
|
|
50ecbe0b50 | ||
|
|
cd9c15bc2c | ||
|
|
2ec8b1bc94 | ||
|
|
998146fc2d | ||
|
|
9c02a8dd2b | ||
|
|
a29c5fba5e | ||
|
|
93267e3e28 | ||
|
|
cc0cae480a | ||
|
|
85721b2b0b | ||
|
|
e701d06a52 | ||
|
|
a847567948 | ||
|
|
beb7ba7faf | ||
|
|
694cb782dc | ||
|
|
e4408091ad | ||
|
|
f15e666c8b | ||
|
|
65880ff902 | ||
|
|
cb4c45ae66 | ||
|
|
5b78d785ea | ||
|
|
cda8078ad7 | ||
|
|
a2b7aefff6 | ||
|
|
4a6689da57 | ||
|
|
6c4eea25e3 | ||
|
|
29f6fbe958 | ||
|
|
e820574a12 | ||
|
|
aec1da246c | ||
|
|
56592bf95e | ||
|
|
42a5476386 | ||
|
|
043e532bb9 | ||
|
|
68d6051696 | ||
|
|
86df4d695a | ||
|
|
09b28bb171 | ||
|
|
2d6fa0cef8 | ||
|
|
9828485c47 | ||
|
|
ee81551b11 | ||
|
|
1d5b082907 | ||
|
|
fd13a921a6 | ||
|
|
c08f4a5fc6 | ||
|
|
ad5f45de0c | ||
|
|
54126994c3 | ||
|
|
a725f3e11d | ||
|
|
0a78159c94 | ||
|
|
30f1853321 | ||
|
|
0adfa62f70 | ||
|
|
fdab1262bf | ||
|
|
f9bfc5f916 | ||
|
|
2e770ba9f4 | ||
|
|
c7aa19e3ba | ||
|
|
de188e8cfd | ||
|
|
b0e1d29cac | ||
|
|
06df6fd2ac | ||
|
|
ea4e3d8240 | ||
|
|
10126efe5c | ||
|
|
f07e60233c | ||
|
|
1ff8736146 | ||
|
|
4c264fa0af | ||
|
|
c8113901e5 | ||
|
|
03e09eff66 | ||
|
|
ee7f996b38 | ||
|
|
cb33cc5e35 | ||
|
|
c5ba98fcd7 | ||
|
|
aac56ddf36 | ||
|
|
80f22e4c11 | ||
|
|
62716648d6 | ||
|
|
3920d4e15d | ||
|
|
69be6f1e71 | ||
|
|
bf6eae1e4b | ||
|
|
04a58d139b | ||
|
|
703b50e051 | ||
|
|
dad9226ad2 | ||
|
|
da3414e4dc | ||
|
|
4a7674e9a0 | ||
|
|
4c26ac03cd | ||
|
|
a4311e1310 | ||
|
|
af943fd39f | ||
|
|
f4480b7ed6 | ||
|
|
058c9ab61b | ||
|
|
9d438da095 | ||
|
|
20f47fe3ed | ||
|
|
400327862e | ||
|
|
b05b850443 | ||
|
|
822dff55c4 | ||
|
|
26ba8822bd | ||
|
|
c4eb30e2c3 | ||
|
|
8fdee1dfef | ||
|
|
261855b09e | ||
|
|
81010268c8 | ||
|
|
774f9d51f8 | ||
|
|
2980d9ad03 | ||
|
|
e87f98f1f8 | ||
|
|
c3cf0ef3b4 | ||
|
|
651372d503 | ||
|
|
afd05eed2c | ||
|
|
5b9bb12894 | ||
|
|
4f18d6c536 | ||
|
|
9b8715ec57 | ||
|
|
91785e09fb | ||
|
|
77cf33ca92 | ||
|
|
0eabe8d2ac | ||
|
|
c4d708cb69 | ||
|
|
d9b91c7a1e | ||
|
|
542ec5a67b | ||
|
|
9de0e6f614 | ||
|
|
f6ccd7a44b | ||
|
|
d2fb9ec8ea | ||
|
|
b59a02a51a | ||
|
|
839a03fdcd | ||
|
|
99380b68ae | ||
|
|
c158f374bd | ||
|
|
7b81850c50 | ||
|
|
c4309ed2c7 | ||
|
|
2b9fa76413 | ||
|
|
ce7acbd33e | ||
|
|
58f13d591c | ||
|
|
b9dc833ceb | ||
|
|
982f94d84e | ||
|
|
6727205fce | ||
|
|
ccbab20fbf | ||
|
|
959da55bdf | ||
|
|
a29909a816 | ||
|
|
4c2a944928 | ||
|
|
dee56e767f | ||
|
|
29a02d71e9 | ||
|
|
8f75ede7de | ||
|
|
b653fc80be | ||
|
|
af458da091 | ||
|
|
ff34f71f2c | ||
|
|
dfd2d26ba4 | ||
|
|
e78b94daa7 | ||
|
|
a0206ba829 | ||
|
|
e3a821a1df | ||
|
|
656142fad5 | ||
|
|
2e2705c1f9 | ||
|
|
ffb291cf48 | ||
|
|
ec2a339fce | ||
|
|
6e9e7869ff | ||
|
|
727e267a67 | ||
|
|
5a82523ae1 | ||
|
|
b62d98c82a | ||
|
|
77884ecbcb | ||
|
|
8fa76b050f | ||
|
|
f884e001af | ||
|
|
30b16a37fd | ||
|
|
2abad30bbc | ||
|
|
88e8443d9f | ||
|
|
d59526e9af | ||
|
|
345024e40a | ||
|
|
f7d216ae10 | ||
|
|
02b19de50e | ||
|
|
fa6cd55383 | ||
|
|
35c991c604 | ||
|
|
bee7e1edac | ||
|
|
e6af4972b5 | ||
|
|
87c0aee3f3 | ||
|
|
3e89fa35db | ||
|
|
550add0500 | ||
|
|
3af07bbf04 | ||
|
|
df1ee6ee19 | ||
|
|
dd56a8f658 | ||
|
|
f76cb9a6dd | ||
|
|
37dc490d20 | ||
|
|
a8e9261c81 | ||
|
|
c22581f948 | ||
|
|
01ade933db | ||
|
|
156e6d86d0 | ||
|
|
28430fe379 | ||
|
|
b58d4c2db7 | ||
|
|
7c9945c983 | ||
|
|
efbcdb6087 | ||
|
|
00ab9d1574 | ||
|
|
2ff789c071 | ||
|
|
9df93e241a | ||
|
|
690b76ee7e | ||
|
|
ff6765de16 | ||
|
|
0368c98ae2 | ||
|
|
24c8cea759 | ||
|
|
2dbffe4a67 | ||
|
|
42c6fd2ed9 | ||
|
|
7415fec141 | ||
|
|
d218b9d9b5 | ||
|
|
06c4810f80 | ||
|
|
36d116036c | ||
|
|
ecd9d523a0 | ||
|
|
a54f4f5359 | ||
|
|
586296b91d | ||
|
|
7215b3c422 | ||
|
|
5d62ee13b8 | ||
|
|
02258e9790 | ||
|
|
a566e7421b | ||
|
|
ac2d229eac | ||
|
|
2e2a9e860c | ||
|
|
1ac36de7e1 | ||
|
|
9ced960bd2 | ||
|
|
97230bafa8 | ||
|
|
9eb6834a85 | ||
|
|
67bad75f60 | ||
|
|
edf58f7c3e | ||
|
|
f99f986d5d | ||
|
|
f37e08a901 | ||
|
|
bba617498f | ||
|
|
64de652b3d | ||
|
|
60cd61a353 | ||
|
|
36ad994a85 | ||
|
|
f281210e58 | ||
|
|
ecaed7d472 | ||
|
|
5047cc4149 | ||
|
|
21bddff129 | ||
|
|
33362d37ce | ||
|
|
adfdfa46df | ||
|
|
9c33641014 | ||
|
|
a88fcf772d | ||
|
|
70906c5e5f | ||
|
|
1ace10874c | ||
|
|
453ff1b24f | ||
|
|
73b2c3d75e | ||
|
|
4522348ad4 | ||
|
|
dd163ce00c | ||
|
|
b3b701f004 | ||
|
|
830b010428 | ||
|
|
dbc0cf602d | ||
|
|
0507010679 | ||
|
|
b954755b0e | ||
|
|
a3f36ebd51 | ||
|
|
5d750ffab7 | ||
|
|
809a944f10 | ||
|
|
7e197ad93c | ||
|
|
90ae63264c | ||
|
|
6c678095a0 | ||
|
|
9ac315b339 | ||
|
|
571dd39880 | ||
|
|
f5820f2666 | ||
|
|
73f8b82035 | ||
|
|
99773aa196 | ||
|
|
1ac6856edf | ||
|
|
7f220abfff | ||
|
|
0cdcb24cb3 | ||
|
|
1b251bddc1 | ||
|
|
dd79047240 | ||
|
|
7ec38173c4 | ||
|
|
4bd73b8d06 | ||
|
|
ea5ac087c7 | ||
|
|
af52b93347 | ||
|
|
6be03c99fa | ||
|
|
d8f6a11148 | ||
|
|
b03200f0c9 | ||
|
|
bd746ac207 | ||
|
|
0ace87b1fc | ||
|
|
2153e073e5 | ||
|
|
f9c227201d | ||
|
|
c6bcaeb78d | ||
|
|
45de7e1b30 | ||
|
|
cadfde96f0 | ||
|
|
6ef33e1091 | ||
|
|
a01376b71d | ||
|
|
d74d2dd554 | ||
|
|
62c1750ad4 | ||
|
|
863f66efa7 | ||
|
|
475e0e9959 | ||
|
|
d685ca7bed | ||
|
|
095d2336ed | ||
|
|
c91274c465 | ||
|
|
835a49ff92 | ||
|
|
777241d5dd | ||
|
|
d35f9cd4f8 | ||
|
|
b2d1a5580a | ||
|
|
c1d03046eb | ||
|
|
320230748c | ||
|
|
1dda3a99dd | ||
|
|
d05b5722a1 | ||
|
|
79f8b7fc14 | ||
|
|
a247c895e7 | ||
|
|
add8285e38 | ||
|
|
55232622e3 | ||
|
|
814ce348f0 | ||
|
|
f3eac4364a | ||
|
|
7dc87c3c32 | ||
|
|
bb3a9b335f | ||
|
|
16f05c6ca3 | ||
|
|
3241fae1ce | ||
|
|
cd75c3b449 | ||
|
|
f6fd7d1ee7 | ||
|
|
ed74935322 | ||
|
|
606493827d | ||
|
|
8b96f46ba2 | ||
|
|
6df81f61c8 | ||
|
|
e3ea5ec446 | ||
|
|
2c595ceef9 | ||
|
|
7978fad22f | ||
|
|
0998ffa8f1 | ||
|
|
443a4b8d25 | ||
|
|
e0cae7384d | ||
|
|
6b2573d1dc | ||
|
|
9b1fd2a588 | ||
|
|
007b8b98ad | ||
|
|
a542ecf3de | ||
|
|
f8d3de4001 | ||
|
|
786fed55b3 | ||
|
|
35b70e919a | ||
|
|
3db63ac4c6 | ||
|
|
87dedc2cf8 | ||
|
|
1bfeffafcf | ||
|
|
082202f76b | ||
|
|
14bbc0b3ca | ||
|
|
42b8b360f1 | ||
|
|
cc586cba21 | ||
|
|
46d1f3de49 | ||
|
|
b11556d2aa | ||
|
|
2b4fdf0687 | ||
|
|
7595fbb1af | ||
|
|
7488d7591c | ||
|
|
b2dc78c9af | ||
|
|
0268958fbc | ||
|
|
477b1215ee | ||
|
|
b6a0bb75f1 | ||
|
|
4f8c2af8c9 | ||
|
|
21fb75ef73 | ||
|
|
bc09fd58ea | ||
|
|
ba69934851 | ||
|
|
2f3643a4f6 | ||
|
|
d53cc0896f | ||
|
|
f930c10b86 | ||
|
|
3217abe6fa | ||
|
|
a8ff08ac2b | ||
|
|
0a4df2da0f | ||
|
|
73b2ac73d2 | ||
|
|
1ed97dc19d | ||
|
|
c02f928cb2 | ||
|
|
70391fbdf0 | ||
|
|
b5a9271e03 | ||
|
|
ed6c301e05 | ||
|
|
c1c444db63 | ||
|
|
4d8e2bfd8d | ||
|
|
fda08977bc | ||
|
|
c7923eb55a | ||
|
|
b14da755fd | ||
|
|
e2e0ec3c85 | ||
|
|
31ae25452b | ||
|
|
89911c0f37 | ||
|
|
5e008012f4 | ||
|
|
c464c29fb9 | ||
|
|
13459fd50a | ||
|
|
4834bc1c75 | ||
|
|
a9ecf85da8 | ||
|
|
0fb810cb03 | ||
|
|
49bebdc5fa | ||
|
|
022680f493 | ||
|
|
c95cf9a231 | ||
|
|
359e49626a | ||
|
|
02293ef864 | ||
|
|
c0cf56004c | ||
|
|
d0575271fc | ||
|
|
bd64bbba2f | ||
|
|
391de0a17a | ||
|
|
b646193917 | ||
|
|
d124bd561a | ||
|
|
ec361b5ea3 | ||
|
|
80376d3e6a | ||
|
|
67d84187b0 | ||
|
|
7babb495e3 | ||
|
|
ea1ceaa46f | ||
|
|
68e9c5428f | ||
|
|
540169148a | ||
|
|
913cf458ed | ||
|
|
b6d13595ac | ||
|
|
29bfd8ad51 | ||
|
|
3ec0384725 | ||
|
|
d7612dee66 | ||
|
|
2c80d5d0ed | ||
|
|
f595b4be79 | ||
|
|
39ed3fc17c | ||
|
|
730bffa8c2 | ||
|
|
56f49f178e | ||
|
|
54b3b675c3 | ||
|
|
175f0ca2c9 | ||
|
|
3d49ebd4a3 | ||
|
|
ac3018fd13 | ||
|
|
8015822f52 | ||
|
|
f1314d5d8c | ||
|
|
cb4f8e233e | ||
|
|
5321a58a20 | ||
|
|
4d1a74cede | ||
|
|
1f32acedb8 | ||
|
|
357873e1e6 | ||
|
|
9496c2c80c | ||
|
|
535b0a8cb2 | ||
|
|
fd0b4bd192 | ||
|
|
297db961ba | ||
|
|
9971be4c18 | ||
|
|
087766fe21 | ||
|
|
28d38c295a | ||
|
|
c2f62cfaba | ||
|
|
6c8b869279 | ||
|
|
6fb9f7705c | ||
|
|
5f519dd7f7 | ||
|
|
372a148f60 | ||
|
|
23820c0447 | ||
|
|
ac766edd14 | ||
|
|
a749513c10 | ||
|
|
f00a7d3ba2 | ||
|
|
cdb586ad15 | ||
|
|
e9ff6f4d2d | ||
|
|
15a5ae6ce4 | ||
|
|
07a6125d1e | ||
|
|
3a0b0544d8 | ||
|
|
66c678419d | ||
|
|
670a175206 | ||
|
|
79623f2eb3 | ||
|
|
e43b9b6f75 | ||
|
|
31bc54ef13 | ||
|
|
3db640d681 | ||
|
|
b8d228e228 | ||
|
|
090aa9b441 | ||
|
|
5f5b177c59 | ||
|
|
4add89cab2 | ||
|
|
b1133fc9b8 | ||
|
|
4c9178d948 | ||
|
|
2aa9d968b6 | ||
|
|
4034e52c6d | ||
|
|
406400de43 | ||
|
|
f9fbfc8e62 | ||
|
|
3496da6625 | ||
|
|
31b8ef7afb | ||
|
|
a5d64f255a | ||
|
|
f2e593a8c0 |
3
.gitignore
vendored
@@ -23,9 +23,6 @@ mkpkg-temp
|
||||
/sources
|
||||
/.work
|
||||
|
||||
# ccache
|
||||
/.ccache/
|
||||
|
||||
# backup files
|
||||
*.orig
|
||||
|
||||
|
||||
3
.gitmodules
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
[submodule "packages/unofficial"]
|
||||
path = packages/unofficial
|
||||
url = https://github.com/OpenELEC/unofficial-addons.git
|
||||
@@ -1,13 +1,13 @@
|
||||
LibreELEC CHANGELOG
|
||||
OpenELEC CHANGELOG
|
||||
==================
|
||||
|
||||
To view recent changes/commits to the project (master branch) please visit:
|
||||
|
||||
https://github.com/LibreELEC/LibreELEC.tv/commits/master
|
||||
https://github.com/OpenELEC/OpenELEC.tv/commits/master
|
||||
|
||||
To compare commits between versions use a formatted URL like:
|
||||
|
||||
https://github.com/LibreELEC/LibreELEC.tv/compare/3.2.3...3.2.4
|
||||
https://github.com/OpenELEC/OpenELEC.tv/compare/3.2.3...3.2.4
|
||||
|
||||
If you have questions on differences between releases please ask them in the
|
||||
LibreELEC website forums or IRC support channel.
|
||||
OpenELEC website forums or IRC support channel.
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
### Questions about LibreELEC?
|
||||
### Questions about OpenELEC?
|
||||
|
||||
To get your questions answered, please ask in the LibreELEC [Forum], on IRC:
|
||||
\#libreelec on freenode.net, or [webchat].
|
||||
To get your questions answered, please ask in the OpenELEC [Forum], on IRC:
|
||||
\#openelec on freenode.net, or [webchat].
|
||||
|
||||
Do not open an issue.
|
||||
|
||||
### Issue Reports
|
||||
|
||||
**BEFORE you report a bug make sure you got the latest testing version of
|
||||
LibreELEC. Your bug might be already fixed.**
|
||||
OpenELEC. Your bug might be already fixed.**
|
||||
|
||||
If you are at all unsure whether it's a bug in LibreELEC or a problem with
|
||||
something else, post in the LibreELEC [Forum] instead. If it turns out that it is
|
||||
If you are at all unsure whether it's a bug in OpenELEC or a problem with
|
||||
something else, post in the OpenELEC [Forum] instead. If it turns out that it is
|
||||
a bug, an issue can always be opened later.
|
||||
|
||||
If you are sure that it's a bug in LibreELEC and you have not found a [similar issue], open a new [issue]
|
||||
If you are sure that it's a bug in OpenELEC and you have not found a [similar issue], open a new [issue]
|
||||
and try to answer the following questions:
|
||||
- What did you do?
|
||||
- What did you expect to happen?
|
||||
@@ -23,23 +23,17 @@ and try to answer the following questions:
|
||||
**It is also importent to provide logs for debugging.
|
||||
A zip file can be found in the [logfiles] samba share, this will contain all the logs needed.**
|
||||
|
||||
Make sure to specify which version of LibreELEC you are using.
|
||||
- LibreELEC version
|
||||
- LibreELEC build
|
||||
- LibreELEC arch
|
||||
Make sure to specify which version of OpenELEC you are using.
|
||||
- OpenELEC version
|
||||
- OpenELEC build
|
||||
- OpenELEC arch
|
||||
|
||||
Please don't paste log messages in the issue reports or issue comments - use
|
||||
[sprunge.us](http://sprunge.us) instead.
|
||||
|
||||
Feature requests are great, but they usually end up lying around the issue
|
||||
tracker indefinitely. Sending a pull request is a much better way of getting a
|
||||
particular feature into LibreELEC.
|
||||
|
||||
Please dont ask us to add 3rdparty drivers unless you are the maintainer/developer of the driver,
|
||||
we have no manpower to support a non-mainlined kernel driver for your hardware.
|
||||
However, LibreELEC comes with minimal set of kernel drivers enabled, if you are sure that your hardware
|
||||
is supported in mainline kernel, feel free to send us a Pull Request to enable it in our
|
||||
kernel defconfigs. We are always happy to support known-working hardware.
|
||||
particular feature into OpenELEC.
|
||||
|
||||
### Reporting build failures
|
||||
|
||||
@@ -66,11 +60,11 @@ Please follow this process; it's the best way to get your work included in the p
|
||||
|
||||
```bash
|
||||
# clone your fork of the repo into the current directory in terminal
|
||||
git clone git@github.com:<your username>/LibreELEC.tv.git
|
||||
git clone git@github.com:<your username>/OpenELEC.tv.git
|
||||
# navigate to the newly cloned directory
|
||||
cd LibreELEC.tv
|
||||
cd OpenELEC.tv
|
||||
# assign the original repo to a remote called "upstream"
|
||||
git remote add upstream https://github.com/LibreELEC/LibreELEC.tv.git
|
||||
git remote add upstream https://github.com/OpenELEC/OpenELEC.tv.git
|
||||
```
|
||||
|
||||
- If you cloned a while ago, get the latest changes from upstream:
|
||||
@@ -104,8 +98,8 @@ Please follow this process; it's the best way to get your work included in the p
|
||||
- [Open a Pull Request](https://help.github.com/articles/using-pull-requests) with a
|
||||
clear title and description.
|
||||
|
||||
[Forum]: http://libreelec.tv/forum
|
||||
[issue]: https://github.com/LibreELEC/LibreELEC.tv/issues
|
||||
[webchat]: http://libreelec.tv/support/chat
|
||||
[logfiles]: http://wiki.libreelec.tv/index.php?title=LibreELEC_FAQ#Support_Logs
|
||||
[similar issue]: https://github.com/LibreELEC/LibreELEC.tv/search?&ref=cmdform&type=Issues
|
||||
[Forum]: http://openelec.tv/forum
|
||||
[issue]: https://github.com/OpenELEC/OpenELEC.tv/issues
|
||||
[webchat]: http://openelec.tv/support/chat
|
||||
[logfiles]: http://wiki.openelec.tv/index.php?title=OpenELEC_FAQ#Support_Logs
|
||||
[similar issue]: https://github.com/OpenELEC/OpenELEC.tv/search?&ref=cmdform&type=Issues
|
||||
|
||||
9
Makefile
@@ -11,17 +11,14 @@ release:
|
||||
image:
|
||||
./scripts/image mkimage
|
||||
|
||||
image-efi:
|
||||
./scripts/image mkimage efi
|
||||
|
||||
noobs:
|
||||
./scripts/image noobs
|
||||
|
||||
amlpkg:
|
||||
./scripts/image amlpkg
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILD_DIRS)/* $(BUILD_DIRS)/.stamps
|
||||
|
||||
distclean:
|
||||
rm -rf ./.ccache ./$(BUILD_DIRS)
|
||||
|
||||
src-pkg:
|
||||
tar cvjf sources.tar.bz2 sources .stamps
|
||||
|
||||
85
README.md
@@ -1,19 +1,88 @@
|
||||
# LibreELEC
|
||||
[OpenELEC](http://www.openelec.tv)
|
||||
|
||||
LibreELEC is a 'Just enough OS' Linux distribution for running the award-winning [Kodi](http://kodi.tv) software on popular mediacentre hardware. LibreELEC is a conservative fork of the popular [OpenELEC](http://openelec.tv) project with a stronger focus on pre-release testing and post-release change management. Further information on the project can be found on the [LibreELEC website](https://libreelec.tv).
|
||||
# OpenELEC - Open Embedded Linux Entertainment Center
|
||||
|
||||
**Issues & Support**
|
||||
OpenELEC runs [XBMC](http://xbmc.org), an award-winning free and open source (GPL) software media
|
||||
player and entertainment hub for digital media. For more info see http://xbmc.org .
|
||||
The base system has been designed and built from the ground up to be as
|
||||
efficient as possible – consuming only tiny disk and memory footprints and
|
||||
providing cutting edge hardware support to deliver a set-top box experience.
|
||||
|
||||
Please report issues via the [LibreELEC forum: Bug Reports](http://forum.libreelec.tv/forum-35.html). Please ask support questions in the [LibreELEC forum: Help & Support](http://forum.libreelec.tv/forum-3.html) or ask a member of project staff in the #libreelec IRC channel on Freenode.
|
||||
**Source code**
|
||||
|
||||
**Donations**
|
||||
* https://github.com/OpenELEC/OpenELEC.tv
|
||||
|
||||
Contributions towards current project funding goals can be sent via PayPal to donations@libreelec.tv
|
||||
**Installation**
|
||||
|
||||
* Please read the instructions in our wiki (http://wiki.openelec.tv/index.php?title=Installation) on how to install.
|
||||
|
||||
**Known issues**
|
||||
|
||||
* Testing snapshot
|
||||
|
||||
**License**
|
||||
|
||||
LibreELEC original code is released under [GPLv2](http://www.gnu.org/licenses/gpl-2.0.html).
|
||||
* OpenELEC is released under [GPLv2](http://www.gnu.org/licenses/gpl-2.0.html). Please refer to the "licenses" folder and
|
||||
source code for clarification on upstream licensing.
|
||||
|
||||
**Copyright**
|
||||
|
||||
As LibreELEC includes code from many upstream projects it includes many copyright owners. LibreELEC makes NO claim of copyright on any upstream code. However all original LibreELEC authored code is copyright LibreELEC.tv. For a complete copyright list please checkout the source code to examine license headers. Unless expressly stated otherwise all code submitted to the LibreELEC project (in any form) is licensed under [GPLv2](http://www.gnu.org/licenses/gpl-2.0.html) and copyright is donated to LibreELEC.tv. This approach allows the project to stay manageable in the long term by giving us freedom to maintain the code as part of the whole without the management overhead of preserving contact with every submitter, e.g. GPLv3. You are absolutely free to retain copyright. To retain copyright simply add a copyright header to each submitted code page. If you submit code that is not your own work it is your responsibility to place a header stating the copyright.
|
||||
* Since OpenELEC includes code from many up stream projects it includes many
|
||||
copyright owners. OpenELEC makes NO claim of copyright on any upstream code.
|
||||
However all OpenELEC authored code is copyright openelec.tv.
|
||||
For a complete copyright list checkout the source code to examine the headers.
|
||||
Unless expressly stated otherwise all code submitted DIRECTLY to the OpenELEC
|
||||
project (in any form) is licensed under [GPLv2](http://www.gnu.org/licenses/gpl-2.0.html) and the Copyright is donated to
|
||||
openelec.tv.
|
||||
This allows the project to stay manageable in the long term by giving us the
|
||||
freedom to maintain the code as part of the whole without the management
|
||||
overhead of preserving contact with every submitter ever e.g. move to GPLv3.
|
||||
You are absolutely free to retain copyright. To retain copyright simply add a
|
||||
copyright header to every submitted code page.
|
||||
If you are submitting code that is not your own work it is the submitters
|
||||
responsibility to place a header stating the copyright.
|
||||
|
||||
**Features**
|
||||
|
||||
* System size ~ 90 - 130MB
|
||||
* Minimal hardware requirements
|
||||
* Ultra fast boot
|
||||
* Optimized builds for platforms such as ION, Intel, Fusion
|
||||
* Simple configuration via XBMC itself
|
||||
* Plug and Play external storage
|
||||
|
||||
**Software**
|
||||
|
||||
* XBMC HTPC software – View/Manage all your media.
|
||||
* Samba server – File transfer from any PC client
|
||||
* SSH server – Remote console access for debugging
|
||||
* IR/Bluetooth Remote Control
|
||||
|
||||
**Notes**
|
||||
|
||||
* SSH login details are user: “root” password: “openelec”.
|
||||
SSH allows command line access to your openelec.tv machine for configuration
|
||||
and file transfer. Linux/Mac clients can natively use SSH, while Windows
|
||||
users might want to try PuTTY for their terminal access.
|
||||
Starting with OpenELEC 2.0, SSH is disabled by default but all that is needed
|
||||
is an empty “ssh_enable” file to exist in /storage/.config to enable it.
|
||||
* $HOME is mounted on /storage (the second ext4 partition on the drive).
|
||||
All data transfered to the machine will go here, the rest of the system is
|
||||
read-only with the exception of /var (containing runtime configuration data).
|
||||
* Manual update/downgrade procedure is as follows:
|
||||
Extract the snapshot and navigate to the 'target' directory.
|
||||
Copy KERNEL and SYSTEM along with KERNEL.md5 and SYSTEM.md5 to the 'Update' network share (or /storage/.update) on
|
||||
your openelec machine. Your system will automatically upgrade during the
|
||||
next reboot.
|
||||
* Automatic mounting of filesystems is supported. Devices such as USB Flash
|
||||
sticks can be plugged into a running machine and will be mounted to /media,
|
||||
showing up in xbmc’s GUI.
|
||||
* Comments and questions are more than welcome, help is even better and patches
|
||||
are absolutely perfect!!
|
||||
|
||||
**Questions/Support**
|
||||
|
||||
* Forums on [http://openelec.tv](http://openelec.tv)
|
||||
* IRC chatroom **#openelec** on Freenode
|
||||
|
||||
**Happy OpenELEC'ing**
|
||||
|
||||
8
TODO
Normal file
@@ -0,0 +1,8 @@
|
||||
ncurses-5.8/5.9:
|
||||
- segfaults in nano and dialog -> using ncurses-5.7
|
||||
|
||||
irserver:
|
||||
- rework irserver/init.d for systemd
|
||||
|
||||
settings addon:
|
||||
- remove ps3 sleep? should be fixed in bluez 5.13/5.14
|
||||
25
config/addon/addon.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="@PKG_ADDON_ID@"
|
||||
name="@PKG_NAME@"
|
||||
version="@ADDON_VERSION@"
|
||||
provider-name="@PROVIDER_NAME@">
|
||||
<requires>
|
||||
<import addon="os.openelec.tv" version="@OS_VERSION@"/>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
@REQUIRES@
|
||||
</requires>
|
||||
<extension point="@PKG_ADDON_TYPE@"
|
||||
library="default.py">
|
||||
<provides>executable</provides>
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>@PKG_SHORTDESC@</summary>
|
||||
<description>
|
||||
@PKG_LONGDESC@
|
||||
</description>
|
||||
<disclaimer>
|
||||
@PKG_DISCLAIMER@
|
||||
</disclaimer>
|
||||
<platform>all</platform>
|
||||
</extension>
|
||||
</addon>
|
||||
@@ -1,32 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="@PKG_ADDON_ID@"
|
||||
name="@ADDON_NAME@"
|
||||
version="@ADDON_VERSION@"
|
||||
provider-name="@PROVIDER_NAME@">
|
||||
<requires>
|
||||
<import addon="os.libreelec.tv" version="@OS_VERSION@"/>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
@REQUIRES@
|
||||
</requires>
|
||||
<extension point="xbmc.python.script" library="default.py" />
|
||||
<extension point="xbmc.python.module" library="lib/">
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>@PKG_SHORTDESC@</summary>
|
||||
<description>
|
||||
@PKG_LONGDESC@
|
||||
</description>
|
||||
<disclaimer>
|
||||
@PKG_DISCLAIMER@
|
||||
</disclaimer>
|
||||
<platform>all</platform>
|
||||
<news>
|
||||
@PKG_ADDON_NEWS@
|
||||
</news>
|
||||
<assets>
|
||||
<icon>resources/icon.png</icon>
|
||||
<fanart>resources/fanart.png</fanart>
|
||||
@PKG_ADDON_SCREENSHOT@
|
||||
</assets>
|
||||
</extension>
|
||||
</addon>
|
||||
@@ -1,32 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="@PKG_ADDON_ID@"
|
||||
name="@ADDON_NAME@"
|
||||
version="@ADDON_VERSION@"
|
||||
provider-name="@PROVIDER_NAME@">
|
||||
<requires>
|
||||
<import addon="os.libreelec.tv" version="@OS_VERSION@"/>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
@REQUIRES@
|
||||
</requires>
|
||||
<extension point="xbmc.python.script" library="default.py">
|
||||
<provides>@PKG_ADDON_PROVIDES@</provides>
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>@PKG_SHORTDESC@</summary>
|
||||
<description>
|
||||
@PKG_LONGDESC@
|
||||
</description>
|
||||
<disclaimer>
|
||||
@PKG_DISCLAIMER@
|
||||
</disclaimer>
|
||||
<platform>all</platform>
|
||||
<news>
|
||||
@PKG_ADDON_NEWS@
|
||||
</news>
|
||||
<assets>
|
||||
<icon>resources/icon.png</icon>
|
||||
<fanart>resources/fanart.png</fanart>
|
||||
@PKG_ADDON_SCREENSHOT@
|
||||
</assets>
|
||||
</extension>
|
||||
</addon>
|
||||
@@ -1,35 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="@PKG_ADDON_ID@"
|
||||
name="@ADDON_NAME@"
|
||||
version="@ADDON_VERSION@"
|
||||
provider-name="@PROVIDER_NAME@">
|
||||
<requires>
|
||||
<import addon="os.libreelec.tv" version="@OS_VERSION@"/>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
@REQUIRES@
|
||||
</requires>
|
||||
<extension point="xbmc.service" library="default.py">
|
||||
<provides>@PKG_ADDON_PROVIDES@</provides>
|
||||
</extension>
|
||||
<extension point="xbmc.python.library" library="addon.py">
|
||||
<provides></provides>
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>@PKG_SHORTDESC@</summary>
|
||||
<description>
|
||||
@PKG_LONGDESC@
|
||||
</description>
|
||||
<disclaimer>
|
||||
@PKG_DISCLAIMER@
|
||||
</disclaimer>
|
||||
<platform>all</platform>
|
||||
<news>
|
||||
@PKG_ADDON_NEWS@
|
||||
</news>
|
||||
<assets>
|
||||
<icon>resources/icon.png</icon>
|
||||
<fanart>resources/fanart.png</fanart>
|
||||
@PKG_ADDON_SCREENSHOT@
|
||||
</assets>
|
||||
</extension>
|
||||
</addon>
|
||||
@@ -1,34 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="@PKG_ADDON_ID@"
|
||||
name="@ADDON_NAME@"
|
||||
version="@ADDON_VERSION@"
|
||||
provider-name="@PROVIDER_NAME@">
|
||||
<requires>
|
||||
<import addon="os.libreelec.tv" version="@OS_VERSION@"/>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
@REQUIRES@
|
||||
</requires>
|
||||
<extension point="xbmc.python.pluginsource" library="addon.py">
|
||||
<provides>@PKG_ADDON_PROVIDES@</provides>
|
||||
</extension>
|
||||
<extension point="xbmc.service">
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>@PKG_SHORTDESC@</summary>
|
||||
<description>
|
||||
@PKG_LONGDESC@
|
||||
</description>
|
||||
<disclaimer>
|
||||
@PKG_DISCLAIMER@
|
||||
</disclaimer>
|
||||
<platform>all</platform>
|
||||
<news>
|
||||
@PKG_ADDON_NEWS@
|
||||
</news>
|
||||
<assets>
|
||||
<icon>resources/icon.png</icon>
|
||||
<fanart>resources/fanart.png</fanart>
|
||||
@PKG_ADDON_SCREENSHOT@
|
||||
</assets>
|
||||
</extension>
|
||||
</addon>
|
||||
@@ -1,32 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="@PKG_ADDON_ID@"
|
||||
name="@ADDON_NAME@"
|
||||
version="@ADDON_VERSION@"
|
||||
provider-name="@PROVIDER_NAME@">
|
||||
<requires>
|
||||
<import addon="os.libreelec.tv" version="@OS_VERSION@"/>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
@REQUIRES@
|
||||
</requires>
|
||||
<extension point="xbmc.service" library="default.py">
|
||||
<provides>@PKG_ADDON_PROVIDES@</provides>
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>@PKG_SHORTDESC@</summary>
|
||||
<description>
|
||||
@PKG_LONGDESC@
|
||||
</description>
|
||||
<disclaimer>
|
||||
@PKG_DISCLAIMER@
|
||||
</disclaimer>
|
||||
<platform>all</platform>
|
||||
<news>
|
||||
@PKG_ADDON_NEWS@
|
||||
</news>
|
||||
<assets>
|
||||
<icon>resources/icon.png</icon>
|
||||
<fanart>resources/fanart.png</fanart>
|
||||
@PKG_ADDON_SCREENSHOT@
|
||||
</assets>
|
||||
</extension>
|
||||
</addon>
|
||||
@@ -1,28 +0,0 @@
|
||||
# determines TARGET_CPU, if not forced by user
|
||||
if [ -z "$TARGET_CPU" ]; then
|
||||
TARGET_CPU=cortex-a53
|
||||
fi
|
||||
|
||||
# TARGET_CPU:
|
||||
# generic cortex-a35 cortex-a53 cortex-a57 cortex-a72
|
||||
# exynos-m1 qdf24xx thunderx xgene1 cortex-a57.cortex-a53
|
||||
# cortex-a72.cortex-a53
|
||||
|
||||
# determine architecture's family
|
||||
case $TARGET_CPU in
|
||||
generic|cortex-a35|cortex-a53|cortex-a57|cortex-a72|exynos-m1|qdf24xx|thunderx|xgene1|cortex-a57.cortex-a53|cortex-a72.cortex-a53)
|
||||
TARGET_SUBARCH=aarch64
|
||||
TARGET_VARIANT=armv8-a
|
||||
TARGET_ABI=eabi
|
||||
TARGET_EXTRA_FLAGS="-mcpu=${TARGET_CPU}${TARGET_CPU_FLAGS}"
|
||||
SIMD_SUPPORT="yes"
|
||||
;;
|
||||
esac
|
||||
|
||||
TARGET_GCC_ARCH=${TARGET_SUBARCH/-}
|
||||
TARGET_KERNEL_ARCH=arm64
|
||||
|
||||
# setup ARCH specific *FLAGS
|
||||
TARGET_CFLAGS="-march=${TARGET_VARIANT}${TARGET_CPU_FLAGS} -mabi=lp64 -Wno-psabi $TARGET_EXTRA_FLAGS"
|
||||
TARGET_LDFLAGS="-march=${TARGET_VARIANT}${TARGET_CPU_FLAGS} -mtune=$TARGET_CPU"
|
||||
GCC_OPTS="--with-abi=lp64 --with-arch=$TARGET_VARIANT"
|
||||
@@ -31,10 +31,13 @@
|
||||
TARGET_FPU_FLAGS="-mfloat-abi=$TARGET_FLOAT -mfpu=$TARGET_FPU"
|
||||
SIMD_SUPPORT="no"
|
||||
;;
|
||||
cortex-a7|cortex-a15|cortex-a15.cortex-a7|cortex-a17.cortex-a7)
|
||||
TARGET_SUBARCH=armv7ve
|
||||
cortex-a7|cortex-a15)
|
||||
TARGET_SUBARCH=armv7-a
|
||||
TARGET_ABI=eabi
|
||||
TARGET_EXTRA_FLAGS="-mcpu=$TARGET_CPU"
|
||||
# It's not currently possible to specify the exact architecture variant (-mcpu)
|
||||
# that A7/A15 supports in the command line so use -mtune here.
|
||||
# see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57907
|
||||
TARGET_EXTRA_FLAGS="-mtune=$TARGET_CPU"
|
||||
TARGET_FPU_FLAGS="-mfloat-abi=$TARGET_FLOAT -mfpu=$TARGET_FPU"
|
||||
SIMD_SUPPORT="yes"
|
||||
;;
|
||||
@@ -47,9 +50,6 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
TARGET_GCC_ARCH=${TARGET_SUBARCH/-}
|
||||
TARGET_KERNEL_ARCH=arm
|
||||
|
||||
# setup ARCH specific *FLAGS
|
||||
TARGET_CFLAGS="-march=$TARGET_SUBARCH -mabi=aapcs-linux -Wno-psabi -Wa,-mno-warn-deprecated $TARGET_EXTRA_FLAGS"
|
||||
[ -n "$TARGET_FPU" ] && TARGET_CFLAGS="$TARGET_CFLAGS $TARGET_FPU_FLAGS"
|
||||
|
||||
14
config/arch.i386
Normal file
@@ -0,0 +1,14 @@
|
||||
# determines TARGET_CPU, if not forced by user
|
||||
if [ -z "$TARGET_CPU" ]; then
|
||||
TARGET_CPU=i686
|
||||
fi
|
||||
|
||||
# determine architecture's family
|
||||
TARGET_SUBARCH=i686
|
||||
|
||||
# setup ARCH specific *FLAGS
|
||||
TARGET_CFLAGS="-march=$TARGET_CPU -m32"
|
||||
TARGET_LDFLAGS="-march=$TARGET_CPU -m32"
|
||||
|
||||
# build with SIMD support ( yes / no )
|
||||
SIMD_SUPPORT="yes"
|
||||
@@ -6,9 +6,6 @@
|
||||
# determine architecture's family
|
||||
TARGET_SUBARCH=x86_64
|
||||
|
||||
TARGET_GCC_ARCH=$(echo $TARGET_SUBARCH | sed -e "s,-,,")
|
||||
TARGET_KERNEL_ARCH=x86
|
||||
|
||||
# setup ARCH specific *FLAGS
|
||||
TARGET_CFLAGS="-march=$TARGET_CPU -m64"
|
||||
TARGET_LDFLAGS="-march=$TARGET_CPU -m64"
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
100
|
||||
- Initial addon
|
||||
@@ -1,45 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of LibreELEC - https://libreelec.tv
|
||||
# Copyright (C) 2016 Team LibreELEC
|
||||
#
|
||||
# LibreELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# LibreELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="@NAME@"
|
||||
PKG_VERSION="@VERSION@" # Update bin/docker.@NAME@ accordingly
|
||||
PKG_REV="100"
|
||||
PKG_ARCH="@ARCH@"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_SECTION="docker"
|
||||
PKG_SITE=""
|
||||
PKG_SHORTDESC=""
|
||||
PKG_LONGDESC=""
|
||||
|
||||
PKG_IS_ADDON="yes"
|
||||
PKG_ADDON_NAME=" (@IMAGE@:$PKG_VERSION)"
|
||||
PKG_ADDON_PROJECTS="@PROJECTS@"
|
||||
PKG_ADDON_REQUIRES="service.system.docker:0.0.0"
|
||||
PKG_ADDON_TYPE="xbmc.service"
|
||||
|
||||
make_target() {
|
||||
: #
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: #
|
||||
}
|
||||
|
||||
addon() {
|
||||
: #
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# This file is part of LibreELEC - https://libreelec.tv
|
||||
# Copyright (C) 2016 Team LibreELEC
|
||||
#
|
||||
# LibreELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# LibreELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
name="$(basename $0)"
|
||||
. /etc/profile
|
||||
oe_setup_addon "$name"
|
||||
|
||||
docker rm "$name" 2>/dev/null
|
||||
docker run --name="$name" \
|
||||
@@ -1,35 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of LibreELEC - https://libreelec.tv
|
||||
# Copyright (C) 2016 Team LibreELEC
|
||||
#
|
||||
# LibreELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# LibreELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
import subprocess
|
||||
import xbmc
|
||||
import xbmcaddon
|
||||
|
||||
|
||||
class Monitor(xbmc.Monitor):
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
xbmc.Monitor.__init__(self)
|
||||
self.id = xbmcaddon.Addon().getAddonInfo('id')
|
||||
|
||||
def onSettingsChanged(self):
|
||||
subprocess.call(['systemctl', 'restart', self.id])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
Monitor().waitForAbort()
|
||||
@@ -1,10 +0,0 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
|
||||
msgctxt "#30000"
|
||||
msgid "Configuration"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "#30001"
|
||||
msgid "Note: Kodi remote sources can not be used as Docker volume host sources"
|
||||
msgstr ""
|
||||
@@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<settings>
|
||||
<category label="30000">
|
||||
<setting label="30001" type="lsep" />
|
||||
@SETTINGS@ </category>
|
||||
</settings>
|
||||
@@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=%p container
|
||||
Requires=service.system.docker.service
|
||||
After=service.system.docker.service
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
RestartSec=10s
|
||||
TimeoutStartSec=0
|
||||
ExecStart=/bin/sh /storage/.kodi/addons/%p/bin/%p
|
||||
ExecStop=/storage/.kodi/addons/service.system.docker/bin/docker kill %p
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
398
config/functions
@@ -1,147 +1,87 @@
|
||||
setup_toolchain() {
|
||||
case "$1" in
|
||||
target|init)
|
||||
export DESTIMAGE="target"
|
||||
export CC="${TARGET_PREFIX}gcc"
|
||||
export CXX="${TARGET_PREFIX}g++"
|
||||
export CPP="${TARGET_PREFIX}cpp"
|
||||
export LD="${TARGET_PREFIX}ld"
|
||||
export AS="${TARGET_PREFIX}as"
|
||||
export AR="${TARGET_PREFIX}ar"
|
||||
export NM="${TARGET_PREFIX}nm"
|
||||
export RANLIB="${TARGET_PREFIX}ranlib"
|
||||
export OBJCOPY="${TARGET_PREFIX}objcopy"
|
||||
export OBJDUMP="${TARGET_PREFIX}objdump"
|
||||
export STRIP="${TARGET_PREFIX}strip"
|
||||
export CPPFLAGS="$TARGET_CPPFLAGS"
|
||||
export CFLAGS="$TARGET_CFLAGS"
|
||||
export CXXFLAGS="$TARGET_CXXFLAGS"
|
||||
export LDFLAGS="$TARGET_LDFLAGS"
|
||||
export PKG_CONFIG="$TOOLCHAIN/bin/pkg-config"
|
||||
export PKG_CONFIG_PATH=""
|
||||
export PKG_CONFIG_LIBDIR="$SYSROOT_PREFIX/usr/lib/pkgconfig:$SYSROOT_PREFIX/usr/share/pkgconfig"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$SYSROOT_PREFIX"
|
||||
export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
|
||||
export PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
|
||||
export CMAKE_CONF=$TOOLCHAIN/etc/cmake-$TARGET_NAME.conf
|
||||
export CMAKE="cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF -DCMAKE_INSTALL_PREFIX=/usr"
|
||||
if [ ! -f $CMAKE_CONF ] ; then
|
||||
mkdir -p $TOOLCHAIN/etc
|
||||
echo "SET(CMAKE_SYSTEM_NAME Linux)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_SYSTEM_VERSION 1)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_SYSTEM_PROCESSOR $TARGET_ARCH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_C_COMPILER $CC)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CXX_COMPILER $CXX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CPP_COMPILER $CPP)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH $SYSROOT_PREFIX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)" >> $CMAKE_CONF
|
||||
fi
|
||||
export HOST_CC="$TOOLCHAIN/bin/host-gcc"
|
||||
export HOST_CXX="$TOOLCHAIN/bin/host-g++"
|
||||
export HOSTCC="$HOST_CC"
|
||||
export HOSTCXX="$HOST_CXX"
|
||||
export CC_FOR_BUILD="$HOST_CC"
|
||||
export CXX_FOR_BUILD="$HOST_CXX"
|
||||
export BUILD_CC="$HOST_CC"
|
||||
export BUILD_CXX="$HOST_CXX"
|
||||
export _python_sysroot="$SYSROOT_PREFIX"
|
||||
export _python_prefix=/usr
|
||||
export _python_exec_prefix=/usr
|
||||
;;
|
||||
host|bootstrap)
|
||||
export DESTIMAGE="host"
|
||||
export AWK="gawk"
|
||||
export CC="$TOOLCHAIN/bin/host-gcc"
|
||||
export CXX="$TOOLCHAIN/bin/host-g++"
|
||||
export CPP="cpp"
|
||||
export LD="ld"
|
||||
export AS="as"
|
||||
export AR="ar"
|
||||
export NM="nm"
|
||||
export RANLIB="ranlib"
|
||||
export OBJCOPY="objcopy"
|
||||
export OBJDUMP="objdump"
|
||||
export STRIP="strip"
|
||||
export CPPFLAGS="$HOST_CPPFLAGS"
|
||||
export CFLAGS="$HOST_CFLAGS"
|
||||
export CXXFLAGS="$HOST_CXXFLAGS"
|
||||
export LDFLAGS="$HOST_LDFLAGS"
|
||||
export PKG_CONFIG="$TOOLCHAIN/bin/pkg-config"
|
||||
export PKG_CONFIG_PATH=""
|
||||
export PKG_CONFIG_LIBDIR="$TOOLCHAIN/lib/pkgconfig:$TOOLCHAIN/share/pkgconfig"
|
||||
export PKG_CONFIG_SYSROOT_DIR=""
|
||||
unset PKG_CONFIG_ALLOW_SYSTEM_CFLAGS
|
||||
unset PKG_CONFIG_ALLOW_SYSTEM_LIBS
|
||||
export CMAKE_CONF=$TOOLCHAIN/etc/cmake-$HOST_NAME.conf
|
||||
export CMAKE="cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF -DCMAKE_INSTALL_PREFIX=$TOOLCHAIN"
|
||||
if [ ! -f $CMAKE_CONF ] ; then
|
||||
mkdir -p $TOOLCHAIN/etc
|
||||
echo "SET(CMAKE_SYSTEM_NAME Linux)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_SYSTEM_VERSION 1)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_C_COMPILER $CC)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CXX_COMPILER $CXX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CPP_COMPILER $CXX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_AR $AR CACHE FILEPATH "Archiver")" >> $CMAKE_CONF # hum?
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH $TOOLCHAIN)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE BOTH)" >> $CMAKE_CONF
|
||||
fi
|
||||
export HOST_CC="$CC"
|
||||
export HOST_CXX="$CXX"
|
||||
export HOSTCC="$CC"
|
||||
export HOSTCXX="$CXX"
|
||||
export CC_FOR_BUILD="$CC"
|
||||
export CXX_FOR_BUILD="$CXX"
|
||||
export BUILD_CC="$CC"
|
||||
export BUILD_CXX="$CXX"
|
||||
;;
|
||||
esac
|
||||
if [ "$1" = "--optimize" ]; then
|
||||
OPTIMIZE=yes
|
||||
shift
|
||||
fi
|
||||
|
||||
if [ "$1" = target ]; then
|
||||
export DESTIMAGE="target"
|
||||
|
||||
export CC=$TARGET_CC
|
||||
export CXX=$TARGET_CXX
|
||||
export LD=$TARGET_LD
|
||||
export AS=$TARGET_AS
|
||||
export AR=$TARGET_AR
|
||||
export NM=$TARGET_NM
|
||||
export RANLIB=$TARGET_RANLIB
|
||||
export OBJCOPY=$TARGET_OBJCOPY
|
||||
export OBJDUMP=$TARGET_OBJDUMP
|
||||
export STRIP=$TARGET_STRIP
|
||||
export CPPFLAGS="$TARGET_CPPFLAGS"
|
||||
export CFLAGS="$TARGET_CFLAGS"
|
||||
export CXXFLAGS="$TARGET_CXXFLAGS"
|
||||
export LDFLAGS="$TARGET_LDFLAGS"
|
||||
export PKG_CONFIG_PATH="$TARGET_PKG_CONFIG_PATH"
|
||||
export PKG_CONFIG_LIBDIR="$TARGET_PKG_CONFIG_LIBDIR"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$TARGET_PKG_CONFIG_SYSROOT_DIR"
|
||||
|
||||
# set CMAKE configfile for target
|
||||
export CMAKE_CONF=$ROOT/$TOOLCHAIN/etc/cmake-$TARGET_NAME.conf
|
||||
|
||||
elif [ "$1" = host ]; then
|
||||
export DESTIMAGE="host"
|
||||
|
||||
export AWK=$HOST_AWK
|
||||
export CC=$HOST_CC
|
||||
export CXX=$HOST_CXX
|
||||
export LD=$HOST_LD
|
||||
export AS=$HOST_AS
|
||||
export AR=$HOST_AR
|
||||
export NM=$HOST_NM
|
||||
export RANLIB=$HOST_RANLIB
|
||||
export OBJCOPY=$HOST_OBJCOPY
|
||||
export STRIP=$HOST_STRIP
|
||||
export CPPFLAGS="$HOST_CPPFLAGS"
|
||||
export CFLAGS="$HOST_CFLAGS"
|
||||
export CXXFLAGS="$HOST_CXXFLAGS"
|
||||
export LDFLAGS="$HOST_LDFLAGS"
|
||||
export PKG_CONFIG_PATH="$HOST_PKG_CONFIG_PATH"
|
||||
export PKG_CONFIG_LIBDIR="$HOST_PKG_CONFIG_LIBDIR"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$HOST_PKG_CONFIG_SYSROOT_DIR"
|
||||
|
||||
# set CMAKE configfile for host
|
||||
export CMAKE_CONF=$ROOT/$TOOLCHAIN/etc/cmake-$HOST_NAME.conf
|
||||
|
||||
fi
|
||||
}
|
||||
|
||||
kernel_path() {
|
||||
get_build_dir linux
|
||||
. $ROOT/packages/linux/package.mk
|
||||
echo $ROOT/$BUILD/${PKG_NAME}-${PKG_VERSION}
|
||||
}
|
||||
|
||||
kernel_version() {
|
||||
get_pkg_version linux
|
||||
. $ROOT/packages/linux/package.mk
|
||||
echo ${PKG_VERSION}
|
||||
}
|
||||
|
||||
# get kernel module dir
|
||||
get_module_dir() {
|
||||
basename $(ls -d $(get_build_dir linux)/.install_pkg/usr/lib/modules/*)
|
||||
basename $(ls -d $(get_build_dir linux)/.install_pkg/lib/modules/*)
|
||||
}
|
||||
|
||||
# get package's build dir
|
||||
get_build_dir() {
|
||||
local _PKG_NAME="$(get_pkg_variable "$1" PKG_NAME)" _PKG_VERSION="$(get_pkg_version "$1")"
|
||||
if [ -n "$_PKG_NAME" -a -n "$_PKG_VERSION" ]; then
|
||||
echo $BUILD/${_PKG_NAME}-${_PKG_VERSION}
|
||||
if [ ! -z $1 ] ; then
|
||||
local _PKG_DIR=$(find $ROOT/packages -name $1)
|
||||
if [ -d $_PKG_DIR -a -f $_PKG_DIR/package.mk ] ; then
|
||||
. $_PKG_DIR/package.mk
|
||||
fi
|
||||
echo $ROOT/$BUILD/${PKG_NAME}-${PKG_VERSION}
|
||||
fi
|
||||
}
|
||||
|
||||
get_pkg_version() {
|
||||
get_pkg_variable "$1" PKG_VERSION
|
||||
}
|
||||
|
||||
get_pkg_directory() {
|
||||
get_pkg_variable "$1" PKG_DIR
|
||||
}
|
||||
|
||||
# get variable ($2) for package ($1)
|
||||
get_pkg_variable() {
|
||||
if [ -n "$1" -a -n "$2" ] ; then
|
||||
cd $ROOT
|
||||
. config/options $1
|
||||
echo "${!2}"
|
||||
fi
|
||||
}
|
||||
|
||||
tolower() {
|
||||
tolower(){
|
||||
echo "$@" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
|
||||
}
|
||||
|
||||
@@ -152,6 +92,13 @@ require_eglibc() {
|
||||
fi
|
||||
}
|
||||
|
||||
require_cxx() {
|
||||
if [ "$TOOLCHAIN_CXX" != yes ]; then
|
||||
echo "$1 requires C++ toolchain support, aborting."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
add_user() {
|
||||
# Usage: add_user "username" "password" "userid" "groupid" "description" "home" "shell"
|
||||
mkdir -p ${INSTALL}/etc
|
||||
@@ -182,63 +129,60 @@ add_group() {
|
||||
do_autoreconf() {
|
||||
export ACLOCAL_DIR=$SYSROOT_PREFIX/usr/share/aclocal
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/autoconf" ]; then
|
||||
export AUTOCONF=$TOOLCHAIN/bin/autoconf
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/autoconf" ]; then
|
||||
export AUTOCONF=$ROOT/$TOOLCHAIN/bin/autoconf
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/automake" ]; then
|
||||
export AUTOMAKE=$TOOLCHAIN/bin/automake
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/automake" ]; then
|
||||
export AUTOMAKE=$ROOT/$TOOLCHAIN/bin/automake
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/autopoint" ]; then
|
||||
export AUTOPOINT=$TOOLCHAIN/bin/autopoint
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/autopoint" ]; then
|
||||
export AUTOPOINT=$ROOT/$TOOLCHAIN/bin/autopoint
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/libtoolize" ]; then
|
||||
export LIBTOOLIZE=$TOOLCHAIN/bin/libtoolize
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/libtoolize" ]; then
|
||||
export LIBTOOLIZE=$ROOT/$TOOLCHAIN/bin/libtoolize
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/intltoolize" ]; then
|
||||
export INTLTOOLIZE=$TOOLCHAIN/bin/intltoolize
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/intltoolize" ]; then
|
||||
export INTLTOOLIZE=$ROOT/$TOOLCHAIN/bin/intltoolize
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/aclocal" ]; then
|
||||
export ACLOCAL="$TOOLCHAIN/bin/aclocal -I $ACLOCAL_DIR"
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/aclocal" ]; then
|
||||
export ACLOCAL="$ROOT/$TOOLCHAIN/bin/aclocal -I $ACLOCAL_DIR"
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/autoheader" ]; then
|
||||
export AUTOHEADER=$TOOLCHAIN/bin/autoheader
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/autoheader" ]; then
|
||||
export AUTOHEADER=$ROOT/$TOOLCHAIN/bin/autoheader
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/libtool" ]; then
|
||||
export LIBTOOL=$TOOLCHAIN/bin/libtool
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/libtool" ]; then
|
||||
export LIBTOOL=$ROOT/$TOOLCHAIN/bin/libtool
|
||||
fi
|
||||
|
||||
if [ -e "$TOOLCHAIN/bin/autoreconf" -a -e "$INTLTOOLIZE" ]; then
|
||||
if [ -e "$ROOT/$TOOLCHAIN/bin/autoreconf" -a -e "$INTLTOOLIZE" ]; then
|
||||
mkdir -p $ACLOCAL_DIR
|
||||
export AUTORECONF="$TOOLCHAIN/bin/autoreconf --verbose --force --install -I $ACLOCAL_DIR"
|
||||
export AUTORECONF="$ROOT/$TOOLCHAIN/bin/autoreconf --verbose --force --install -I $ACLOCAL_DIR"
|
||||
$AUTORECONF $@
|
||||
fi
|
||||
}
|
||||
|
||||
strip_lto() {
|
||||
# strip out LTO optimization from *FLAGS
|
||||
if [ -n "$GCC_OPTIM_LTO" ] ; then
|
||||
CFLAGS=`echo $CFLAGS | sed -e "s|$GCC_OPTIM_LTO||g"`
|
||||
CXXFLAGS=`echo $CXXFLAGS | sed -e "s|$GCC_OPTIM_LTO||g"`
|
||||
TARGET_CFLAGS=`echo $TARGET_CFLAGS | sed -e "s|$GCC_OPTIM_LTO||g"`
|
||||
TARGET_CXXFLAGS=`echo $TARGET_CXXFLAGS | sed -e "s|$GCC_OPTIM_LTO||g"`
|
||||
fi
|
||||
if [ -n "$LD_OPTIM_LTO" ] ; then
|
||||
LDFLAGS=`echo $LDFLAGS | sed -e "s|$LD_OPTIM_LTO||g"`
|
||||
TARGET_LDFLAGS=`echo $TARGET_LDFLAGS | sed -e "s|$LD_OPTIM_LTO||g"`
|
||||
fi
|
||||
CFLAGS=`echo $CFLAGS | sed -e "s|-flto||g"`
|
||||
CXXFLAGS=`echo $CXXFLAGS | sed -e "s|-flto||g"`
|
||||
LDFLAGS=`echo $LDFLAGS | sed -e "s|-flto||g"`
|
||||
}
|
||||
|
||||
strip_linker_plugin() {
|
||||
# strip out usage from linker plugin
|
||||
LDFLAGS=`echo $LDFLAGS | sed -e "s|-fuse-linker-plugin||g"`
|
||||
}
|
||||
|
||||
strip_gold() {
|
||||
# strip out usage from GOLD linker
|
||||
LDFLAGS=`echo $LDFLAGS | sed -e "s|-fuse-ld=gold||g"`
|
||||
TARGET_LDFLAGS=`echo $TARGET_LDFLAGS | sed -e "s|-fuse-ld=gold||g"`
|
||||
}
|
||||
|
||||
fix_module_depends() {
|
||||
@@ -266,19 +210,12 @@ enable_service () {
|
||||
local target_dir=$INSTALL
|
||||
|
||||
[ -f "$target_dir/$unit_dir/$unit" ] || exit 1
|
||||
if [ -z "$target" ] ; then
|
||||
for target in `grep '^WantedBy' $target_dir/$unit_dir/$unit | cut -f2 -d=` ; do
|
||||
if [ -n "$target" ]; then
|
||||
mkdir -p ${target_dir}/$unit_dir/${target}.wants
|
||||
ln -sf ../${unit} ${target_dir}/$unit_dir/${target}.wants/
|
||||
fi
|
||||
done
|
||||
[ -z "$target" ] && target=`grep '^WantedBy' $target_dir/$unit_dir/$unit | cut -f2 -d=`
|
||||
|
||||
if [ -n "$target" ]; then
|
||||
mkdir -p ${target_dir}/$unit_dir/${target}.wants
|
||||
ln -sf ../${unit} ${target_dir}/$unit_dir/${target}.wants/
|
||||
fi
|
||||
for target in `grep '^Alias' $target_dir/$unit_dir/$unit | cut -f2 -d=` ; do
|
||||
if [ -n "$target" ]; then
|
||||
ln -sf ${unit} ${target_dir}/$unit_dir/${target}
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
check_path() {
|
||||
@@ -310,35 +247,14 @@ dashes="==========================="
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ \( -z "$DEVICE" -a -d "$PROJECT_DIR/$PROJECT/devices" \) -o \( -n "$DEVICE" -a ! -d "$PROJECT_DIR/$PROJECT/devices/$DEVICE" \) ]; then
|
||||
check_device="$check_device\n $dashes$dashes$dashes"
|
||||
check_device="$check_device\n ERROR: You need to specify a valid device for the $PROJECT project"
|
||||
check_device="$check_device\n $dashes$dashes$dashes"
|
||||
check_device="$check_device\n\n Valid devices for project: $PROJECT"
|
||||
|
||||
for device in $PROJECT_DIR/$PROJECT/devices/*; do
|
||||
check_device="$check_device\n - $(basename $device)"
|
||||
done
|
||||
echo -e $check_device
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -d $PROJECT_DIR/$PROJECT/devices/$DEVICE/linux ]; then
|
||||
linux_config_dir="$PROJECT_DIR/$PROJECT/devices/$DEVICE/linux"
|
||||
else
|
||||
linux_config_dir="$PROJECT_DIR/$PROJECT/linux"
|
||||
fi
|
||||
|
||||
if [ ! -e $linux_config_dir/linux.$TARGET_ARCH.conf ] &&
|
||||
! ls $linux_config_dir/*/linux.$TARGET_ARCH.conf &>/dev/null; then
|
||||
if [ ! -f $PROJECT_DIR/$PROJECT/linux/linux.$TARGET_ARCH.conf ]; then
|
||||
check_arch="$check_arch\n $dashes$dashes$dashes"
|
||||
check_arch="$check_arch\n ERROR: Architecture not found, use a valid Architecture"
|
||||
check_arch="$check_arch\n for your project or create a new config"
|
||||
check_arch="$check_arch\n $dashes$dashes$dashes"
|
||||
check_arch="$check_arch\n\n Valid Architectures for your project: $PROJECT"
|
||||
|
||||
for arch in $linux_config_dir/*.conf $linux_config_dir/*/linux.$TARGET_ARCH.conf; do
|
||||
[[ ${arch} =~ .*\*.* ]] && continue #ignore unexpanded wildcard
|
||||
for arch in $PROJECT_DIR/$PROJECT/linux/*.conf; do
|
||||
check_arch="$check_arch\n - $(basename $arch | cut -f2 -d".")"
|
||||
done
|
||||
echo -e $check_arch
|
||||
@@ -347,12 +263,9 @@ dashes="==========================="
|
||||
}
|
||||
|
||||
show_config() {
|
||||
# load graphic configuration
|
||||
get_graphicdrivers
|
||||
|
||||
dashes="==========================="
|
||||
config_message="$config_message\n $dashes$dashes$dashes"
|
||||
config_message="$config_message\n Configuration for $DISTRONAME ($([ "$OFFICIAL" = "yes" ] && echo "official" || echo "community"))"
|
||||
config_message="$config_message\n Configuration for $DISTRONAME ($([ "$OFFICIAL" = "yes" ] && echo "official" || echo "unofficial"))"
|
||||
config_message="$config_message\n $dashes$dashes$dashes"
|
||||
|
||||
# Build options
|
||||
@@ -364,6 +277,7 @@ show_config() {
|
||||
config_message="$config_message\n - FLOAT:\t\t\t\t $TARGET_FLOAT"
|
||||
config_message="$config_message\n - FPU:\t\t\t\t\t $TARGET_FPU"
|
||||
config_message="$config_message\n - SIMD support:\t\t\t $SIMD_SUPPORT"
|
||||
config_message="$config_message\n - Optimizations:\t\t\t $OPTIMIZATIONS"
|
||||
config_message="$config_message\n - LTO (Link Time Optimization) support: $LTO_SUPPORT"
|
||||
config_message="$config_message\n - GOLD (Google Linker) Support:\t $GOLD_SUPPORT"
|
||||
config_message="$config_message\n - LLVM support:\t\t\t $LLVM_SUPPORT"
|
||||
@@ -376,23 +290,24 @@ show_config() {
|
||||
config_message="$config_message\n\n Graphic configuration:"
|
||||
config_message="$config_message\n $dashes$dashes"
|
||||
|
||||
if [ "$DISPLAYSERVER" = "x11" ] ; then
|
||||
config_message="$config_message\n - Xorg Graphic Drivers:\t\t $GRAPHIC_DRIVERS"
|
||||
config_message="$config_message\n - XORG Composite support:\t\t $COMPOSITE_SUPPORT"
|
||||
config_message="$config_message\n - WindowManager:\t\t\t $WINDOWMANAGER"
|
||||
fi
|
||||
config_message="$config_message\n - XORG support:\t\t\t $XORG_SUPPORT"
|
||||
config_message="$config_message\n - XORG Composite support:\t\t $COMPOSITE_SUPPORT"
|
||||
config_message="$config_message\n - XORG Xinerama support:\t\t $XINERAMA_SUPPORT"
|
||||
config_message="$config_message\n - SDL support:\t\t\t\t $SDL_SUPPORT"
|
||||
config_message="$config_message\n - OpenGL (GLX) support (provider):\t $OPENGL_SUPPORT ($OPENGL)"
|
||||
config_message="$config_message\n - OpenGLES support (provider):\t\t $OPENGLES_SUPPORT ($OPENGLES)"
|
||||
config_message="$config_message\n - uvesafb support:\t\t\t $UVESAFB_SUPPORT"
|
||||
config_message="$config_message\n - WindowManager:\t\t\t $WINDOWMANAGER"
|
||||
config_message="$config_message\n - Xorg Graphic Drivers:\t\t $GRAPHIC_DRIVERS"
|
||||
|
||||
# Hardware decoder support
|
||||
|
||||
config_message="$config_message\n\n Hardware decoder configuration:"
|
||||
config_message="$config_message\n $dashes$dashes"
|
||||
|
||||
config_message="$config_message\n - Kodi Player driver:\t\t\t $KODIPLAYER_DRIVER"
|
||||
config_message="$config_message\n - VAAPI Support:\t\t\t $VAAPI_SUPPORT"
|
||||
config_message="$config_message\n - VDPAU Support:\t\t\t $VDPAU_SUPPORT"
|
||||
config_message="$config_message\n - Broadcom CrystalHD Decoder:\t\t $CRYSTALHD"
|
||||
config_message="$config_message\n - XBMC Player driver:\t\t\t $XBMCPLAYER_DRIVER"
|
||||
config_message="$config_message\n - VAAPI Support:\t\t\t $VAAPI"
|
||||
config_message="$config_message\n - VDPAU Support:\t\t\t $VDPAU"
|
||||
|
||||
# Input device configuration
|
||||
|
||||
@@ -402,7 +317,8 @@ show_config() {
|
||||
config_message="$config_message\n - Remote support:\t\t\t $REMOTE_SUPPORT"
|
||||
config_message="$config_message\n - ATV Remote support:\t\t\t $ATVCLIENT_SUPPORT"
|
||||
config_message="$config_message\n - CEC Adapter support:\t\t\t $CEC_SUPPORT"
|
||||
config_message="$config_message\n - Kodi Joystick support:\t\t $JOYSTICK_SUPPORT"
|
||||
config_message="$config_message\n - IRTrans support:\t\t\t $IRSERVER_SUPPORT"
|
||||
config_message="$config_message\n - XBMC Joystick support:\t\t $JOYSTICK_SUPPORT"
|
||||
|
||||
# Misc. hardware configuration
|
||||
|
||||
@@ -411,7 +327,10 @@ show_config() {
|
||||
|
||||
config_message="$config_message\n - ALSA support:\t\t\t $ALSA_SUPPORT"
|
||||
config_message="$config_message\n - Pulseaudio support:\t\t\t $PULSEAUDIO_SUPPORT"
|
||||
config_message="$config_message\n - Blu-Ray support:\t\t\t $BLURAY_SUPPORT"
|
||||
config_message="$config_message\n - Bluetooth support:\t\t\t $BLUETOOTH_SUPPORT"
|
||||
config_message="$config_message\n - Hardware Sensors support:\t\t $SENSOR_SUPPORT"
|
||||
config_message="$config_message\n - LCD drivers:\t\t\t\t $LCD_DRIVER"
|
||||
|
||||
for config_driver in $ADDITIONAL_DRIVERS; do
|
||||
config_message="$config_message\n - Include driver:\t\t\t $config_driver"
|
||||
@@ -421,21 +340,22 @@ show_config() {
|
||||
config_message="$config_message\n - Include firmware:\t\t\t $config_firmware"
|
||||
done
|
||||
|
||||
for config_modules in $INITRAMFS_MODULES; do
|
||||
config_message="$config_message\n - Initramfs modules:\t\t\t $config_modules"
|
||||
done
|
||||
|
||||
# Network service configuration
|
||||
|
||||
config_message="$config_message\n\n Network service configuration:"
|
||||
config_message="$config_message\n $dashes$dashes"
|
||||
|
||||
config_message="$config_message\n - Avahi (Zeroconf) support:\t\t $AVAHI_DAEMON"
|
||||
config_message="$config_message\n - NFS mounting support:\t\t $NFS_SUPPORT"
|
||||
config_message="$config_message\n - SAMBA mounting support:\t\t $SAMBA_SUPPORT"
|
||||
config_message="$config_message\n - SAMBA server support:\t\t $SAMBA_SERVER"
|
||||
config_message="$config_message\n - SFTP server support:\t\t\t $SFTP_SERVER"
|
||||
config_message="$config_message\n - PPTP support:\t\t\t $PPTP_SUPPORT"
|
||||
config_message="$config_message\n - OpenVPN support:\t\t\t $OPENVPN_SUPPORT"
|
||||
config_message="$config_message\n - XBMC Airplay support:\t\t $AIRPLAY_SUPPORT"
|
||||
config_message="$config_message\n - XBMC Airtunes support:\t\t $AIRTUNES_SUPPORT"
|
||||
config_message="$config_message\n - XBMC AFP support:\t\t\t $AFP_SUPPORT"
|
||||
config_message="$config_message\n - XBMC NFS support:\t\t\t $NFS_SUPPORT"
|
||||
config_message="$config_message\n - XBMC SAMBA client support:\t\t $SAMBA_SUPPORT"
|
||||
config_message="$config_message\n - XBMC Webserver support:\t\t $WEBSERVER"
|
||||
|
||||
# OS configuration
|
||||
|
||||
@@ -445,10 +365,10 @@ show_config() {
|
||||
config_message="$config_message\n - OEM Support:\t\t\t\t $OEM_SUPPORT"
|
||||
config_message="$config_message\n - Default ROOT Password:\t\t $ROOT_PASSWORD"
|
||||
config_message="$config_message\n - Bootloader:\t\t\t\t $BOOTLOADER"
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
config_message="$config_message\n - U-Boot configuration:\t\t $UBOOT_CONFIG"
|
||||
config_message="$config_message\n - U-Boot config file:\t\t $UBOOT_CONFIGFILE"
|
||||
fi
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
config_message="$config_message\n - U-Boot configuration:\t\t $UBOOT_CONFIG"
|
||||
config_message="$config_message\n - U-Boot config file:\t\t\t $UBOOT_CONFIGFILE"
|
||||
fi
|
||||
config_message="$config_message\n - UDevil support:\t\t\t $UDEVIL"
|
||||
config_message="$config_message\n - Installer support:\t\t\t $INSTALLER_SUPPORT"
|
||||
|
||||
@@ -458,43 +378,31 @@ show_config() {
|
||||
config_message="$config_message\n $dashes$dashes"
|
||||
|
||||
config_message="$config_message\n - Swap Support:\t\t\t $SWAP_SUPPORT"
|
||||
if [ "$SWAP_SUPPORT" = "yes" ]; then
|
||||
config_message="$config_message\n - Swapfile default size:\t\t $SWAPFILESIZE"
|
||||
fi
|
||||
if [ "$SWAP_SUPPORT" = "yes" ]; then
|
||||
config_message="$config_message\n - Swapfile default size:\t\t $SWAPFILESIZE"
|
||||
fi
|
||||
config_message="$config_message\n - exFAT Support (via Fuse):\t\t $EXFAT"
|
||||
config_message="$config_message\n - NTFS Support (via Fuse):\t\t $NTFS3G"
|
||||
config_message="$config_message\n - Install HFS Tools:\t\t\t $HFSTOOLS"
|
||||
|
||||
# Kodi configuration
|
||||
# XBMC configuration
|
||||
|
||||
config_message="$config_message\n\n Kodi configuration:"
|
||||
config_message="$config_message\n\n XBMC configuration:"
|
||||
config_message="$config_message\n $dashes$dashes"
|
||||
|
||||
config_message="$config_message\n - Kodi version:\t\t\t $MEDIACENTER"
|
||||
config_message="$config_message\n - Kodi nonfree support:\t\t $KODI_NONFREE_SUPPORT"
|
||||
config_message="$config_message\n - Kodi Blu-Ray support:\t\t $KODI_BLURAY_SUPPORT"
|
||||
if [ "$KODI_BLURAY_SUPPORT" = "yes" ] ; then
|
||||
config_message="$config_message\n - Bluray BD+ support:\t\t $BLURAY_BDPLUS_SUPPORT"
|
||||
config_message="$config_message\n - Bluray AACS support:\t\t $BLURAY_AACS_SUPPORT"
|
||||
fi
|
||||
config_message="$config_message\n - Kodi DVDCSS support:\t\t\t $KODI_DVDCSS_SUPPORT"
|
||||
config_message="$config_message\n - Kodi Airplay support:\t\t $KODI_AIRPLAY_SUPPORT"
|
||||
config_message="$config_message\n - Kodi Airtunes support:\t\t $KODI_AIRTUNES_SUPPORT"
|
||||
config_message="$config_message\n - Kodi NFS support:\t\t\t $KODI_NFS_SUPPORT"
|
||||
config_message="$config_message\n - Kodi MySQL support:\t\t\t $KODI_MYSQL_SUPPORT"
|
||||
config_message="$config_message\n - Kodi Optical Drive support:\t\t $KODI_OPTICAL_SUPPORT"
|
||||
config_message="$config_message\n - Kodi SAMBA client support:\t\t $KODI_SAMBA_SUPPORT"
|
||||
config_message="$config_message\n - Kodi SSH client support:\t\t $KODI_SSHLIB_SUPPORT"
|
||||
config_message="$config_message\n - Kodi UPNP support:\t\t\t $KODI_UPNP_SUPPORT"
|
||||
config_message="$config_message\n - Kodi Webserver support:\t\t $KODI_WEBSERVER_SUPPORT"
|
||||
|
||||
config_message="$config_message\n - XBMC version:\t\t\t $MEDIACENTER"
|
||||
config_message="$config_message\n - XBMC nonfree support:\t\t $NONFREE_SUPPORT"
|
||||
config_message="$config_message\n - XBMC DVDCSS support:\t\t\t $DVDCSS_SUPPORT"
|
||||
|
||||
for config_skin in $SKINS; do
|
||||
config_message="$config_message\n - Include Skin:\t\t\t $config_skin"
|
||||
done
|
||||
|
||||
config_message="$config_message\n - Default Skin:\t\t\t $SKIN_DEFAULT"
|
||||
config_message="$config_message\n - Include extra fonts:\t\t\t $KODI_EXTRA_FONTS"
|
||||
config_message="$config_message\n - Include extra fonts:\t\t\t $XBMC_EXTRA_FONTS"
|
||||
config_message="$config_message\n - Include RSXS Screensaver:\t\t $XBMC_SCR_RSXS"
|
||||
config_message="$config_message\n - Include ProjectM Visualization:\t $XBMC_VIS_PROJECTM"
|
||||
config_message="$config_message\n - Include Goom Visualization:\t\t $XBMC_VIS_GOOM"
|
||||
|
||||
config_message="$config_message\n"
|
||||
config_message="$config_message\n $dashes$dashes$dashes"
|
||||
@@ -502,17 +410,5 @@ show_config() {
|
||||
config_message="$config_message\n $dashes$dashes$dashes"
|
||||
config_message="$config_message\n\n\n"
|
||||
|
||||
echo -e "$config_message"
|
||||
echo -e $config_message
|
||||
}
|
||||
|
||||
# strip
|
||||
debug_strip() {
|
||||
if [ ! "$DEBUG" = yes ]; then
|
||||
find $* -type f -executable | xargs $STRIP 2>/dev/null || :
|
||||
fi
|
||||
}
|
||||
|
||||
# Use distribution functions if any
|
||||
if [ -f "distributions/$DISTRO/config/functions" ]; then
|
||||
. distributions/$DISTRO/config/functions
|
||||
fi
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
if [ "$DISPLAYSERVER" = "x11" ]; then
|
||||
SDL_SUPPORT="yes"
|
||||
else
|
||||
SDL_SUPPORT="no"
|
||||
fi
|
||||
|
||||
if [ "$OPENGL" = no ]; then
|
||||
OPENGL_SUPPORT="no"
|
||||
else
|
||||
@@ -10,34 +16,62 @@ else
|
||||
OPENGLES_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$SDL_SUPPORT" = no ]; then
|
||||
JOYSTICK_SUPPORT="no"
|
||||
fi
|
||||
|
||||
if [ "$OPENGL_SUPPORT" = no ]; then
|
||||
XBMC_SCR_RSXS="no"
|
||||
XBMC_VIS_PROJECTM="no"
|
||||
XBMC_VIS_GOOM="no"
|
||||
fi
|
||||
|
||||
get_graphicdrivers() {
|
||||
if [ "$GRAPHIC_DRIVERS" = "all" ]; then
|
||||
GRAPHIC_DRIVERS="i915 i965 r200 r300 r600 nvidia vmware virtualbox"
|
||||
fi
|
||||
|
||||
for drv in $GRAPHIC_DRIVERS; do
|
||||
if [ "$drv" = "dove" ]; then
|
||||
XORG_DRIVERS="$XORG_DRIVERS dove"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "i915" ]; then
|
||||
DRI_DRIVERS="$DRI_DRIVERS,i915"
|
||||
XORG_DRIVERS="$XORG_DRIVERS intel"
|
||||
COMPOSITE_SUPPORT="yes"
|
||||
VAAPI_SUPPORT="yes"
|
||||
LIBVA="$LIBVA libva-driver-intel"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "i965" ]; then
|
||||
DRI_DRIVERS="$DRI_DRIVERS,i965"
|
||||
XORG_DRIVERS="$XORG_DRIVERS intel"
|
||||
COMPOSITE_SUPPORT="yes"
|
||||
VAAPI_SUPPORT="yes"
|
||||
LIBVA="$LIBVA libva-driver-intel"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "nouveau" ]; then
|
||||
# DRI_DRIVERS are only used for NV04 - NV20 (which we dont want to support anymore)
|
||||
DRI_DRIVERS="$DRI_DRIVERS"
|
||||
# GALLIUM_DRIVERS are used for all cards from NV30 to nvc0
|
||||
# see also http://nouveau.freedesktop.org/wiki/MesaDrivers/
|
||||
GALLIUM_DRIVERS="$GALLIUM_DRIVERS,nouveau"
|
||||
XORG_DRIVERS="$XORG_DRIVERS nouveau"
|
||||
COMPOSITE_SUPPORT="yes"
|
||||
# LLVM_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "nvidia" ]; then
|
||||
XORG_DRIVERS="$XORG_DRIVERS nvidia"
|
||||
VDPAU_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "nvidia-legacy" ]; then
|
||||
XORG_DRIVERS="$XORG_DRIVERS nvidia-legacy"
|
||||
VDPAU_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "virtualbox" ]; then
|
||||
DRI_DRIVERS="$DRI_DRIVERS,swrast"
|
||||
XORG_DRIVERS="$XORG_DRIVERS virtualbox"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "r200" ]; then
|
||||
@@ -51,7 +85,6 @@ get_graphicdrivers() {
|
||||
XORG_DRIVERS="$XORG_DRIVERS ati"
|
||||
LLVM_SUPPORT="yes"
|
||||
COMPOSITE_SUPPORT="yes"
|
||||
VDPAU_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "r600" ]; then
|
||||
@@ -59,15 +92,13 @@ get_graphicdrivers() {
|
||||
XORG_DRIVERS="$XORG_DRIVERS ati"
|
||||
LLVM_SUPPORT="yes"
|
||||
COMPOSITE_SUPPORT="yes"
|
||||
VDPAU_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "radeonsi" ]; then
|
||||
GALLIUM_DRIVERS="$GALLIUM_DRIVERS,radeonsi"
|
||||
XORG_DRIVERS="$XORG_DRIVERS ati amdgpu"
|
||||
XORG_DRIVERS="$XORG_DRIVERS ati"
|
||||
LLVM_SUPPORT="yes"
|
||||
COMPOSITE_SUPPORT="yes"
|
||||
VDPAU_SUPPORT="yes"
|
||||
fi
|
||||
|
||||
if [ "$drv" = "vmware" ]; then
|
||||
|
||||
1
config/issue
Normal file
@@ -0,0 +1 @@
|
||||
Welcome to OpenELEC - the powerful Mediacenter4you
|
||||
BIN
config/noobs/OpenELEC.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 16 KiB |
@@ -1,11 +1,7 @@
|
||||
{
|
||||
"name": "@DISTRONAME@_@PROJECT@",
|
||||
"version": "@LIBREELEC_VERSION@",
|
||||
"name": "@DISTRONAME@",
|
||||
"version": "@OPENELEC_VERSION@",
|
||||
"release_date": "@RELEASE_DATE@",
|
||||
"kernel": "@KERNEL_VERSION@",
|
||||
"description": "@DESCRIPTION@",
|
||||
"username": "root",
|
||||
"password": "@ROOT_PASSWORD@",
|
||||
"supported_models": [@NOOBS_SUPPORTED_MODELS@],
|
||||
"supported_hex_revisions": "@NOOBS_HEX@"
|
||||
"description": "@DESCRIPTION@"
|
||||
}
|
||||
|
||||
@@ -1,44 +1,46 @@
|
||||
#!/bin/sh -x
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
# Copyright (C) 2009-2013 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
MOUNTPOINT="/tmp/LibreELEC-System"
|
||||
MOUNTPOINT="/tmp/OpenELEC-System"
|
||||
|
||||
md5sumCheck() {
|
||||
( cd $MOUNTPOINT
|
||||
echo "checking MD5: $1"
|
||||
md5sum -c $1.md5
|
||||
if [ "$?" = "1" ]; then
|
||||
echo "#######################################################"
|
||||
echo "# #"
|
||||
echo "# LibreELEC failed md5 check - Installation will quit #"
|
||||
echo "# #"
|
||||
echo "# Your original download was probably corrupt. #"
|
||||
echo "# Please visit libreelec.tv and get another copy #"
|
||||
echo "# #"
|
||||
echo "#######################################################"
|
||||
echo "######################################################"
|
||||
echo "# #"
|
||||
echo "# OpenELEC failed md5 check - Installation will quit #"
|
||||
echo "# #"
|
||||
echo "# Your original download was probably corrupt. #"
|
||||
echo "# Please visit www.openelec.tv and get another copy #"
|
||||
echo "# #"
|
||||
echo "######################################################"
|
||||
exit 1
|
||||
fi
|
||||
rm -rf $1.md5
|
||||
)
|
||||
}
|
||||
|
||||
if [ -z $part1 -o -z $part2 -o -z $id1 -o -z $id2 ]; then
|
||||
if [ -z $part1 -o -z $part2 -o -z $id1 -o -z $id2]; then
|
||||
echo "error: part1, part2, id1 or id2 not specified"
|
||||
echo "actual values:"
|
||||
echo "part1:" $part1
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
{
|
||||
"partitions": [
|
||||
{
|
||||
"label": "@DISTRONAME@_@PROJECT@_System",
|
||||
"label": "System",
|
||||
"filesystem_type": "FAT",
|
||||
"partition_size_nominal": @SYSTEM_SIZE@,
|
||||
"partition_size_nominal": 160,
|
||||
"want_maximised": false,
|
||||
"uncompressed_tarball_size": 120,
|
||||
"mkfs_options": ""
|
||||
},
|
||||
{
|
||||
"label": "@DISTRONAME@_@PROJECT@_Storage",
|
||||
"label": "Storage",
|
||||
"filesystem_type": "ext4",
|
||||
"partition_size_nominal": 512,
|
||||
"partition_size_nominal": 864,
|
||||
"want_maximised": true,
|
||||
"uncompressed_tarball_size": 10,
|
||||
"mkfs_options": ""
|
||||
|
||||
BIN
config/noobs/slides/A.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
config/noobs/slides/B.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
config/noobs/slides/C.png
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
config/noobs/slides/D.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
config/noobs/slides/E.png
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
config/noobs/slides_vga/A.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
config/noobs/slides_vga/B.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
config/noobs/slides_vga/C.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
config/noobs/slides_vga/D.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
config/noobs/slides_vga/E.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
@@ -1,5 +1,12 @@
|
||||
GCC_OPTIM="-Os"
|
||||
LD_OPTIM="-Wl,--as-needed"
|
||||
if [ "$OPTIMIZATIONS" = normal ];then
|
||||
GCC_OPTIM="-O2"
|
||||
LD_OPTIM=""
|
||||
fi
|
||||
|
||||
if [ "$OPTIMIZATIONS" = size ];then
|
||||
GCC_OPTIM="-Os -fexcess-precision=fast"
|
||||
LD_OPTIM="-Wl,--as-needed"
|
||||
fi
|
||||
|
||||
if [ "$LTO_SUPPORT" = yes ];then
|
||||
GCC_OPTIM_LTO="-flto -ffat-lto-objects"
|
||||
@@ -17,21 +24,21 @@ if [ "$DEBUG" = yes ]; then
|
||||
else
|
||||
TARGET_CFLAGS="$TARGET_CFLAGS -fomit-frame-pointer"
|
||||
TARGET_CXXFLAGS="$TARGET_CXXFLAGS -fomit-frame-pointer"
|
||||
TARGET_LDFLAGS="$TARGET_LDFLAGS"
|
||||
TARGET_LDFLAGS="$TARGET_LDFLAGS -s"
|
||||
fi
|
||||
|
||||
TARGET_CPPFLAGS=
|
||||
TARGET_CFLAGS="$TARGET_CFLAGS -Wall -pipe $GCC_OPTIM $GCC_OPTIM_LTO $PROJECT_CFLAGS"
|
||||
TARGET_CXXFLAGS="$TARGET_CFLAGS"
|
||||
TARGET_LDFLAGS="$TARGET_LDFLAGS $LD_OPTIM $LD_OPTIM_GOLD $LD_OPTIM_LTO"
|
||||
TARGET_LDFLAGS="$TARGET_LDFLAGS $LD_OPTIM $LD_OPTIM_GOLD $LD_OPTIM_LTO $GCC_OPTIM"
|
||||
TARGET_LIBDIR="$SYSROOT_PREFIX/lib $SYSROOT_PREFIX/usr/lib"
|
||||
TARGET_INCDIR="$SYSROOT_PREFIX/include $SYSROOT_PREFIX/usr/include"
|
||||
|
||||
HOST_CPPFLAGS=""
|
||||
HOST_CFLAGS="-O2 -Wall -pipe -I$TOOLCHAIN/include"
|
||||
HOST_CFLAGS="-O2 -Wall -pipe -I$ROOT/$TOOLCHAIN/include"
|
||||
HOST_CXXFLAGS="$HOST_CFLAGS"
|
||||
HOST_LDFLAGS="-Wl,-rpath,$TOOLCHAIN/lib -L$TOOLCHAIN/lib"
|
||||
HOST_LIBDIR="$TOOLCHAIN/lib"
|
||||
HOST_LDFLAGS="-Wl,-rpath,$ROOT/$TOOLCHAIN/lib -L$ROOT/$TOOLCHAIN/lib"
|
||||
HOST_LIBDIR="$ROOT/$TOOLCHAIN/lib"
|
||||
|
||||
# work around Ubuntu default C*FLAGS
|
||||
# see https://wiki.ubuntu.com/ToolChain/CompilerFlags#A-Wformat_-Wformat-security
|
||||
@@ -70,4 +77,4 @@ HOST_CXXFLAGS="$HOST_CXXFLAGS -Wno-format-security"
|
||||
|
||||
# default dirs
|
||||
HOST_LIBDIR="$HOST_LIBDIR /lib /usr/lib"
|
||||
HOST_INCDIR="$TOOLCHAIN/include /usr/include"
|
||||
HOST_INCDIR="$ROOT/$TOOLCHAIN/include /usr/include"
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
# set default language for buildsystem
|
||||
export LC_ALL=C
|
||||
|
||||
# determines DISTRO, if not forced by user
|
||||
# default is LibreELEC
|
||||
if [ -z "$DISTRO" ]; then
|
||||
DISTRO="LibreELEC"
|
||||
else
|
||||
DISTRO="$DISTRO"
|
||||
fi
|
||||
|
||||
# determines PROJECT, if not forced by user
|
||||
# default is Generic
|
||||
if [ -z "$PROJECT" ]; then
|
||||
@@ -17,88 +9,73 @@ else
|
||||
PROJECT="$PROJECT"
|
||||
fi
|
||||
|
||||
# determines TARGET_ARCH, if not forced by user (x86_64 / arm)
|
||||
# default is x86_64
|
||||
# determines TARGET_ARCH, if not forced by user (i386 / x86_64 / arm)
|
||||
# default is i386
|
||||
if [ -z "$ARCH" ]; then
|
||||
TARGET_ARCH="x86_64"
|
||||
TARGET_ARCH="i386"
|
||||
else
|
||||
TARGET_ARCH="$ARCH"
|
||||
fi
|
||||
|
||||
ROOT=`pwd`
|
||||
DISTRO_DIR="$ROOT/distributions"
|
||||
PROJECT_DIR="$ROOT/projects"
|
||||
LINUX_DEPENDS="$PROJECT_DIR/$PROJECT/linux/linux.$TARGET_ARCH.conf $PROJECT_DIR/$PROJECT/devices/$DEVICE/linux/linux.$TARGET_ARCH.conf $ROOT/packages/linux/package.mk"
|
||||
[ "$TARGET_ARCH" = "x86_64" ] && LINUX_DEPENDS+=" $ROOT/packages/linux-firmware/intel-ucode/package.mk $ROOT/packages/linux-firmware/x86-firmware/package.mk"
|
||||
LINUX_DEPENDS="$PROJECT_DIR/$PROJECT/linux/linux.$TARGET_ARCH.conf $ROOT/packages/linux/package.mk"
|
||||
|
||||
# include versioning
|
||||
. config/version
|
||||
|
||||
# read distro versioning if available
|
||||
if [ -f "$DISTRO_DIR/$DISTRO/version" ]; then
|
||||
. $DISTRO_DIR/$DISTRO/version
|
||||
fi
|
||||
|
||||
# read distro options if available
|
||||
if [ -f "$DISTRO_DIR/$DISTRO/options" ]; then
|
||||
. $DISTRO_DIR/$DISTRO/options
|
||||
fi
|
||||
|
||||
# read project options if available
|
||||
if [ -f "$PROJECT_DIR/$PROJECT/options" ]; then
|
||||
. $PROJECT_DIR/$PROJECT/options
|
||||
fi
|
||||
|
||||
# read board options if available
|
||||
if [ -f "$PROJECT_DIR/$PROJECT/devices/$DEVICE/options" ]; then
|
||||
. $PROJECT_DIR/$PROJECT/devices/$DEVICE/options
|
||||
fi
|
||||
# Target system library C (eglibc)
|
||||
TARGET_LIBC="eglibc"
|
||||
|
||||
# Library strip
|
||||
LIBSTRIP="yes"
|
||||
|
||||
# Need to point to your actual cc
|
||||
# If you have ccache installed, take care that LOCAL_CC don't point to it
|
||||
LOCAL_CC=`which gcc`
|
||||
|
||||
if [ -z "$LOCAL_CC" ] ; then
|
||||
echo "***** Please install gcc *****"
|
||||
exit 127
|
||||
fi
|
||||
|
||||
# Need to point to your actual g++
|
||||
# If you have ccache installed, take care that LOCAL_CXX don't point to it
|
||||
LOCAL_CXX=`which g++`
|
||||
|
||||
# Support C++ in toolchain
|
||||
TOOLCHAIN_CXX="yes"
|
||||
|
||||
# verbose compilation mode (yes/no)
|
||||
VERBOSE="yes"
|
||||
|
||||
# Concurrency make level (-j option)
|
||||
# Try value 1 (default) to 4 on single CPU computer, or more on
|
||||
# multi-processor computer (like hyperthreading SMP CPU)
|
||||
if test -z "${CONCURRENCY_MAKE_LEVEL}"; then
|
||||
CONCURRENCY_MAKE_LEVEL=`cat /proc/cpuinfo | grep -c '^processor[[:cntrl:]]*:'`
|
||||
fi
|
||||
CONCURRENCY_MAKE_LEVEL=`cat /proc/cpuinfo | grep -c '^processor[[:cntrl:]]*:'`
|
||||
|
||||
# cache size for ccache
|
||||
# Set the maximum size of the files stored in the cache. You can specify a
|
||||
# value in gigabytes, megabytes or kilobytes by appending a G, M or K to the
|
||||
# value. The default is gigabytes. The actual value stored is rounded down to
|
||||
# the nearest multiple of 16 kilobytes. Keep in mind this per project .ccache
|
||||
# directory.
|
||||
CCACHE_CACHE_SIZE="10G"
|
||||
# the nearest multiple of 16 kilobytes.
|
||||
CCACHE_CACHE_SIZE="30G"
|
||||
|
||||
# read options from $HOME if available
|
||||
if [ -f "$HOME/.libreelec/options" ]; then
|
||||
. $HOME/.libreelec/options
|
||||
fi
|
||||
# forcing install of all packages (yes/no)
|
||||
FORCE_INSTALL="no"
|
||||
|
||||
# install devtools on development builds
|
||||
if [ -z "$DEVTOOLS" -a "$LIBREELEC_VERSION" = "devel" ]; then
|
||||
if [ "$OPENELEC_VERSION" = "devel" ]; then
|
||||
DEVTOOLS=yes
|
||||
fi
|
||||
|
||||
# overwrite OEM_SUPPORT via commandline
|
||||
if [ "$OEM" = yes -o "$OEM" = no ]; then
|
||||
OEM_SUPPORT=$OEM
|
||||
fi
|
||||
# read options from $HOME if available
|
||||
if [ -f "$HOME/.openelec/options" ]; then
|
||||
. $HOME/.openelec/options
|
||||
fi
|
||||
if [ -f "$HOME/.openelec/$PROJECT/options" ]; then
|
||||
. $HOME/.openelec/$PROJECT/options
|
||||
fi
|
||||
|
||||
. config/graphic
|
||||
. config/path $1
|
||||
|
||||
182
config/path
@@ -17,17 +17,9 @@ set -e
|
||||
fi
|
||||
|
||||
HOST_NAME=`$LOCAL_CC -dumpmachine`
|
||||
TARGET_NAME=$TARGET_GCC_ARCH-libreelec-linux-gnu${TARGET_ABI}
|
||||
|
||||
BUILD=$ROOT/$BUILD_BASE.$DISTRONAME-${DEVICE:-$PROJECT}.$TARGET_ARCH-$LIBREELEC_VERSION
|
||||
if [ "$LIBREELEC_VERSION" = "devel" ] ; then
|
||||
BUILD=$ROOT/$BUILD_BASE.$DISTRONAME-${DEVICE:-$PROJECT}.$TARGET_ARCH-$OS_VERSION-$LIBREELEC_VERSION
|
||||
fi
|
||||
|
||||
if [ -n "$BUILD_SUFFIX" ]; then
|
||||
BUILD=$BUILD-$BUILD_SUFFIX
|
||||
fi
|
||||
TARGET_NAME=$(echo $TARGET_SUBARCH | sed -e "s,-,,")-openelec-linux-gnu${TARGET_ABI}
|
||||
|
||||
BUILD=$BUILD_BASE.$DISTRONAME-$PROJECT.$TARGET_ARCH-$OPENELEC_VERSION
|
||||
TARGET_IMG=$ROOT/$TARGET
|
||||
TARGET_ADDONS="$TARGET_IMG/$ADDONS/$ADDON_PATH"
|
||||
ADDON_BUILD="$BUILD/$ADDONS/$1"
|
||||
@@ -36,11 +28,11 @@ STAMPS=$BUILD/.stamps
|
||||
STAMPS_INSTALL=$BUILD/image/.stamps
|
||||
DOCS=DOCS
|
||||
TOOLCHAIN=$BUILD/toolchain
|
||||
SYSROOT_PREFIX=$TOOLCHAIN/$TARGET_NAME/sysroot
|
||||
SYSROOT_PREFIX=$ROOT/$TOOLCHAIN/$TARGET_NAME/sysroot
|
||||
LIB_PREFIX=$SYSROOT_PREFIX/usr
|
||||
TARGET_PREFIX=$TOOLCHAIN/bin/$TARGET_NAME-
|
||||
TARGET_PREFIX=$ROOT/$TOOLCHAIN/bin/$TARGET_NAME-
|
||||
|
||||
FAKEROOT_SCRIPT=$BUILD/.fakeroot
|
||||
FAKEROOT_SCRIPT=$ROOT/.fakeroot.$PROJECT.$TARGET_ARCH
|
||||
|
||||
if [ -z "$INSTALL" ]; then
|
||||
INSTALL=$BUILD/image/system
|
||||
@@ -49,8 +41,8 @@ INSTALL_INIT=$BUILD/image/initramfs/root-image
|
||||
|
||||
. config/sources
|
||||
|
||||
MAKE="$TOOLCHAIN/bin/make"
|
||||
MAKEINSTALL="$TOOLCHAIN/bin/make -j1 DESTDIR=$SYSROOT_PREFIX install"
|
||||
MAKE="$ROOT/$TOOLCHAIN/bin/make"
|
||||
MAKEINSTALL="$ROOT/$TOOLCHAIN/bin/make -j1 DESTDIR=$SYSROOT_PREFIX install"
|
||||
SED="sed -i"
|
||||
|
||||
# set package metadata
|
||||
@@ -61,114 +53,45 @@ SED="sed -i"
|
||||
PKG_LICENSE="unknown"
|
||||
PKG_SITE=""
|
||||
PKG_URL=""
|
||||
PKG_SOURCE_NAME=""
|
||||
PKG_SOURCE_DIR=""
|
||||
PKG_DEPENDS_TARGET=""
|
||||
PKG_DEPENDS_HOST=""
|
||||
PKG_DEPENDS_INIT=""
|
||||
PKG_DEPENDS_BOOTSTRAP=""
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION=""
|
||||
PKG_SHORTDESC="$1 (autogenerated)"
|
||||
PKG_LONGDESC=""
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_PATCH_DIRS=""
|
||||
PKG_NEED_UNPACK=""
|
||||
PKG_SHA256=""
|
||||
|
||||
if [ -n "$1" ]; then
|
||||
_PKG_ROOT_NAME=${1%:*}
|
||||
_ALL_DIRS=""
|
||||
_FOUND=0
|
||||
_ANCHOR="@?+?@"
|
||||
PKG_DIR=""
|
||||
|
||||
# If the package caches are unset, then populate them
|
||||
if [ -z "${_CACHE_PACKAGE_LOCAL+x}" -o -z "${_CACHE_PACKAGE_GLOBAL+x}" ]; then
|
||||
_CACHE_PACKAGE_LOCAL=""
|
||||
_CACHE_PACKAGE_GLOBAL=""
|
||||
|
||||
# cache project folder for a package
|
||||
for DIR in $(find $ROOT/projects/$PROJECT/packages -type d 2>/dev/null); do
|
||||
[ -r "$DIR/package.mk" ] && _CACHE_PACKAGE_LOCAL+="${DIR}${_ANCHOR}\n"
|
||||
done
|
||||
|
||||
# cache packages folder
|
||||
for DIR in $(find $ROOT/$PACKAGES -type d 2>/dev/null); do
|
||||
[ -r "$DIR/package.mk" ] && _CACHE_PACKAGE_GLOBAL+="${DIR}${_ANCHOR}\n"
|
||||
done
|
||||
|
||||
export _CACHE_PACKAGE_LOCAL _CACHE_PACKAGE_GLOBAL
|
||||
fi
|
||||
|
||||
# Check for any available local package in preference to a global package
|
||||
for DIR in $(echo -e "${_CACHE_PACKAGE_LOCAL}" | grep -F "/${_PKG_ROOT_NAME}${_ANCHOR}"); do
|
||||
DIR="${DIR%${_ANCHOR}}"
|
||||
# found first, set $PKG_DIR
|
||||
PKG_DIR="$DIR"
|
||||
# keep track of dirs with package.mk for detecting multiple folders
|
||||
_ALL_DIRS+="${DIR}\n"
|
||||
_FOUND=$((_FOUND+1))
|
||||
done
|
||||
|
||||
# If there's no local package available, use the global package
|
||||
if [ $_FOUND -eq 0 ]; then
|
||||
for DIR in $(echo -e "${_CACHE_PACKAGE_GLOBAL}" | grep -F "/${_PKG_ROOT_NAME}${_ANCHOR}"); do
|
||||
DIR="${DIR%${_ANCHOR}}"
|
||||
# found first, set $PKG_DIR
|
||||
FOUND=0
|
||||
for DIR in $ROOT/`find $PACKAGES -type d -name $(echo $1| awk -F : '{print $1}') ! -wholename \*\/source\/\* 2>/dev/null` ; do
|
||||
# keep track of dirs with meta for debugging
|
||||
if [ -z "$ALL_DIRS" ] ; then
|
||||
ALL_DIRS="$DIR"
|
||||
else
|
||||
ALL_DIRS="$ALL_DIRS\\n$DIR"
|
||||
fi
|
||||
if [ -f "$DIR/package.mk" ] ; then
|
||||
FOUND=$((FOUND+1))
|
||||
# found first. set $PKG_DIR
|
||||
PKG_DIR="$DIR"
|
||||
# keep track of dirs with package.mk for detecting multiple folders
|
||||
_ALL_DIRS+="${DIR}\n"
|
||||
_FOUND=$((_FOUND+1))
|
||||
done
|
||||
fi
|
||||
|
||||
# _FOUND multiple packages? fail
|
||||
if [ $_FOUND -gt 1 ]; then
|
||||
echo "Error - multiple package folders:"
|
||||
echo -e "$_ALL_DIRS"
|
||||
exit 1
|
||||
fi
|
||||
if [ $FOUND -gt 1 ] ; then
|
||||
# found more ? fail
|
||||
echo "Error - multiple package folders:"
|
||||
echo -e "$ALL_DIRS"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [ -n "$PKG_DIR" -a -r $PKG_DIR/package.mk ]; then
|
||||
if [ -r $PKG_DIR/package.mk ]; then
|
||||
. $PKG_DIR/package.mk
|
||||
fi
|
||||
|
||||
if [ "$PKG_IS_ADDON" = "yes" ] ; then
|
||||
[ -z $PKG_SECTION ] && PKG_ADDON_ID="$PKG_NAME" || PKG_ADDON_ID="`echo $PKG_SECTION | sed 's,/,.,g'`.$PKG_NAME"
|
||||
PKG_NEED_UNPACK="${PKG_NEED_UNPACK} $(get_pkg_directory $MEDIACENTER)"
|
||||
fi
|
||||
|
||||
# Automatically set PKG_SOURCE_NAME unless it is already defined.
|
||||
# PKG_SOURCE_NAME will be automatically set to a name based on
|
||||
# the $PKG_NAME-$PKG_VERSION convention.
|
||||
#
|
||||
# Any $PKG_URL that references more than a single url will abort
|
||||
# the build as these are no longer supported - use mkpkg instead.
|
||||
if [ -n "$PKG_URL" -a -z "$PKG_SOURCE_NAME" ]; then
|
||||
if [[ $PKG_URL =~ .*\ .* ]]; then
|
||||
echo "Error - packages with multiple urls are no longer supported, use mkpkg:"
|
||||
echo "$PKG_URL"
|
||||
exit 1
|
||||
fi
|
||||
PKG_SOURCE_NAME="$(basename "$PKG_URL")"
|
||||
case $PKG_SOURCE_NAME in
|
||||
${PKG_NAME}-${PKG_VERSION}.*)
|
||||
PKG_SOURCE_NAME=$PKG_SOURCE_NAME
|
||||
;;
|
||||
*.tar | *.tbz | *.tgz | *.txz | *.7z | *.zip)
|
||||
PKG_SOURCE_NAME=${PKG_NAME}-${PKG_VERSION}.${PKG_SOURCE_NAME##*\.}
|
||||
;;
|
||||
*.tar.bz2 | *.tar.gz | *.tar.xz)
|
||||
PKG_SOURCE_NAME=${PKG_NAME}-${PKG_VERSION}.tar.${PKG_SOURCE_NAME##*\.}
|
||||
;;
|
||||
*.diff | *.patch | *.diff.bz2 | *.patch.bz2 | patch-*.bz2 | *.diff.gz | *.patch.gz | patch-*.gz)
|
||||
PKG_SOURCE_NAME=$PKG_SOURCE_NAME
|
||||
;;
|
||||
*)
|
||||
PKG_SOURCE_NAME=${PKG_NAME}-${PKG_VERSION}.${PKG_SOURCE_NAME##*\.}
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
PKG_BUILD="$BUILD/${PKG_NAME}-${PKG_VERSION}"
|
||||
@@ -180,20 +103,55 @@ XORG_PATH_RGB=/usr/lib/X11/rgb
|
||||
XORG_PATH_MODULES=/usr/lib/xorg/modules
|
||||
XORG_PATH_DRIVERS=/usr/lib/xorg/modules/drivers
|
||||
|
||||
SSL_CERTIFICATES="/etc/pki/tls"
|
||||
|
||||
TOOLCHAIN_LANGUAGES=c
|
||||
[ "$TOOLCHAIN_CXX" = yes ] && TOOLCHAIN_LANGUAGES=${TOOLCHAIN_LANGUAGES},c++
|
||||
|
||||
TARGET_CC=${TARGET_PREFIX}gcc
|
||||
TARGET_CXX=${TARGET_PREFIX}g++
|
||||
TARGET_LD=${TARGET_PREFIX}ld
|
||||
TARGET_AS=${TARGET_PREFIX}as
|
||||
TARGET_AR=${TARGET_PREFIX}ar
|
||||
TARGET_NM=${TARGET_PREFIX}nm
|
||||
TARGET_RANLIB=${TARGET_PREFIX}ranlib
|
||||
TARGET_OBJCOPY=${TARGET_PREFIX}objcopy
|
||||
TARGET_OBJDUMP=${TARGET_PREFIX}objdump
|
||||
TARGET_STRIP=${TARGET_PREFIX}strip
|
||||
|
||||
. config/optimize
|
||||
|
||||
TARGET_PKG_CONFIG_PATH=""
|
||||
TARGET_PKG_CONFIG_LIBDIR="$SYSROOT_PREFIX/usr/lib/pkgconfig:$SYSROOT_PREFIX/usr/share/pkgconfig"
|
||||
TARGET_PKG_CONFIG_SYSROOT_DIR="$SYSROOT_PREFIX"
|
||||
|
||||
HOST_AWK=gawk
|
||||
HOST_CC=$ROOT/$TOOLCHAIN/bin/host-gcc
|
||||
HOST_CXX=$ROOT/$TOOLCHAIN/bin/host-g++
|
||||
HOST_LD=ld
|
||||
HOST_AS=as
|
||||
HOST_AR=ar
|
||||
HOST_NM=nm
|
||||
HOST_RANLIB=ranlib
|
||||
HOST_OBJCOPY=objcopy
|
||||
HOST_STRIP=strip
|
||||
|
||||
HOST_PKG_CONFIG_PATH=""
|
||||
HOST_PKG_CONFIG_LIBDIR="$ROOT/$TOOLCHAIN/lib/pkgconfig:$ROOT/$TOOLCHAIN/share/pkgconfig"
|
||||
HOST_PKG_CONFIG_SYSROOT_DIR=""
|
||||
|
||||
if [ -z "$CCACHE_DIR" ]; then
|
||||
export CCACHE_DIR=$BUILD/.ccache
|
||||
export CCACHE_DIR=$HOME/.ccache-openelec
|
||||
fi
|
||||
export MAKEFLAGS=-j$CONCURRENCY_MAKE_LEVEL
|
||||
export PKG_CONFIG=$TOOLCHAIN/bin/pkg-config
|
||||
export PKG_CONFIG=$ROOT/$TOOLCHAIN/bin/pkg-config
|
||||
|
||||
if [ -z "$PATH" -o "$PATH" = "${PATH#$TOOLCHAIN/bin:}" ]; then
|
||||
export PATH="$TOOLCHAIN/bin:$TOOLCHAIN/sbin:$PATH"
|
||||
if [ -z "$PATH" -o "$PATH" = "${PATH#$ROOT/$TOOLCHAIN/bin:}" ]; then
|
||||
export PATH="$ROOT/$TOOLCHAIN/bin:$ROOT/$TOOLCHAIN/sbin:$PATH"
|
||||
fi
|
||||
|
||||
if [ -z "$LD_LIBRARY_PATH" -o "$LD_LIBRARY_PATH" = "${LD_LIBRARY_PATH#$TOOLCHAIN/lib:}" ]; then
|
||||
export LD_LIBRARY_PATH="$TOOLCHAIN/lib:$LD_LIBRARY_PATH"
|
||||
if [ -z "$LD_LIBRARY_PATH" -o "$LD_LIBRARY_PATH" = "${LD_LIBRARY_PATH#$ROOT/$TOOLCHAIN/lib:}" ]; then
|
||||
export LD_LIBRARY_PATH="$ROOT/$TOOLCHAIN/lib:$LD_LIBRARY_PATH"
|
||||
fi
|
||||
|
||||
VERSION_SUFFIX=$TARGET_ARCH
|
||||
@@ -201,6 +159,8 @@ VERSION_SUFFIX=$TARGET_ARCH
|
||||
check_path
|
||||
check_config
|
||||
|
||||
setup_toolchain target
|
||||
|
||||
SILENT_OUT=3
|
||||
VERBOSE_OUT=4
|
||||
if [ "$VERBOSE" = yes ]; then
|
||||
|
||||
2
config/release/Autorun.inf
Normal file
@@ -0,0 +1,2 @@
|
||||
[autorun]
|
||||
icon=openelec.ico
|
||||
BIN
config/release/openelec.ico
Normal file
|
After Width: | Height: | Size: 32 KiB |
@@ -1,8 +1,9 @@
|
||||
# VERSION: set full version, use "devel" for development version
|
||||
LIBREELEC_VERSION="8.1.1"
|
||||
OPENELEC_VERSION="4.0.4"
|
||||
|
||||
# OS_VERSION: OS Version
|
||||
OS_VERSION="8.2"
|
||||
OS_VERSION="4.0"
|
||||
|
||||
# ADDON_VERSION: Addon version
|
||||
ADDON_VERSION="8.2"
|
||||
ADDON_VERSION="4.1"
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
git archive --format=tar --prefix=LibreELEC-source-$1/ tags/$1 | bzip2 > LibreELEC-source-$1.tar.bz2
|
||||
git archive --format=tar --prefix=OpenELEC-source-$1/ tags/$1 | bzip2 > OpenELEC-source-$1.tar.bz2
|
||||
|
||||
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 840 B |
|
Before Width: | Height: | Size: 13 KiB |
@@ -1,198 +0,0 @@
|
||||
# LTO (Link Time Optimization) support
|
||||
LTO_SUPPORT="yes"
|
||||
|
||||
# GOLD (Google Linker) support
|
||||
GOLD_SUPPORT="yes"
|
||||
|
||||
# Name of the Distro to build (full name, without special characters)
|
||||
DISTRONAME="LibreELEC"
|
||||
|
||||
# short project description
|
||||
DESCRIPTION="LibreELEC is a fast and user-friendly Kodi Entertainment Center distribution."
|
||||
|
||||
# Welcome Message for e.g. SSH Server (up to 5 Lines)
|
||||
GREETING0="##############################################"
|
||||
GREETING1="# LibreELEC #"
|
||||
GREETING2="# https://libreelec.tv #"
|
||||
GREETING3="##############################################"
|
||||
GREETING4=""
|
||||
|
||||
# Root password to integrate in the target system
|
||||
ROOT_PASSWORD="libreelec"
|
||||
|
||||
# Install glibc locales to the build (yes / no)
|
||||
GLIBC_LOCALES="yes"
|
||||
|
||||
# Mediacenter to use (kodi / no)
|
||||
MEDIACENTER="kodi"
|
||||
|
||||
# Skins to install (Estuary)
|
||||
# Space separated list is supported,
|
||||
# e.g. SKINS="Estuary"
|
||||
SKINS="Estuary"
|
||||
|
||||
# Default Skin (Estuary)
|
||||
SKIN_DEFAULT="Estuary"
|
||||
|
||||
# install extra subtitle Fonts for KODI (yes / no)
|
||||
KODI_EXTRA_FONTS="yes"
|
||||
|
||||
# build and install PulseAudio support (yes / no)
|
||||
PULSEAUDIO_SUPPORT="yes"
|
||||
|
||||
# build and install espeak support (yes / no)
|
||||
ESPEAK_SUPPORT="yes"
|
||||
|
||||
# build and install with non-free support
|
||||
# (RAR compression support in KODI) (yes / no)
|
||||
KODI_NONFREE_SUPPORT="yes"
|
||||
|
||||
# build and install with BluRay support (yes / no)
|
||||
KODI_BLURAY_SUPPORT="yes"
|
||||
|
||||
# build and install with BD+ support
|
||||
# (BD+ decryption support in KODI) (yes / no)
|
||||
BLURAY_BDPLUS_SUPPORT="yes"
|
||||
|
||||
# build and install with AACS support
|
||||
# (BD decryption support in KODI) (yes / no)
|
||||
BLURAY_AACS_SUPPORT="yes"
|
||||
|
||||
# build and install with DVDCSS support
|
||||
# (DVD decryption support in KODI) (yes / no)
|
||||
KODI_DVDCSS_SUPPORT="yes"
|
||||
|
||||
# additional drivers to install:
|
||||
# for a list of additinoal drivers see packages/linux-drivers
|
||||
# Space separated list is supported,
|
||||
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
|
||||
ADDITIONAL_DRIVERS="RTL8192CU RTL8192DU RTL8192EU RTL8188EU RTL8812AU"
|
||||
|
||||
# build and install bluetooth support (yes / no)
|
||||
BLUETOOTH_SUPPORT="yes"
|
||||
|
||||
# build and install with KODI webfrontend (yes / no)
|
||||
KODI_WEBSERVER_SUPPORT="yes"
|
||||
|
||||
# build and install Avahi (Zeroconf) daemon (yes / no)
|
||||
AVAHI_DAEMON="yes"
|
||||
|
||||
# build with UPnP support (yes / no)
|
||||
KODI_UPNP_SUPPORT="yes"
|
||||
|
||||
# build with MySQL support (yes / no)
|
||||
KODI_MYSQL_SUPPORT="yes"
|
||||
|
||||
# build xbmc with sshlib support (yes / no)
|
||||
KODI_SSHLIB_SUPPORT="yes"
|
||||
|
||||
# build xbmc with optical drive support (yes / no)
|
||||
KODI_OPTICAL_SUPPORT="yes"
|
||||
|
||||
# build with AirPlay support (stream videos from iDevices to KODI) (yes / no)
|
||||
KODI_AIRPLAY_SUPPORT="yes"
|
||||
|
||||
# build with AirTunes support (stream music from iDevices to KODI) (yes / no)
|
||||
KODI_AIRTUNES_SUPPORT="yes"
|
||||
|
||||
# build with libnfs support (mounting nfs shares with KODI) (yes / no)
|
||||
KODI_NFS_SUPPORT="yes"
|
||||
|
||||
# build with Samba Client support (mounting SAMBA shares with KODI) (yes / no)
|
||||
KODI_SAMBA_SUPPORT="yes"
|
||||
|
||||
# build with NFS support (mounting nfs shares via the OS) (yes / no)
|
||||
NFS_SUPPORT="yes"
|
||||
|
||||
# build with Samba Client support (mounting samba shares via the OS) (yes / no)
|
||||
SAMBA_SUPPORT="yes"
|
||||
|
||||
# build and install Samba Server (yes / no)
|
||||
SAMBA_SERVER="yes"
|
||||
|
||||
# build and install SFTP Server (yes / no)
|
||||
SFTP_SERVER="yes"
|
||||
|
||||
# build and install OpenVPN support (yes / no)
|
||||
OPENVPN_SUPPORT="yes"
|
||||
|
||||
# build and install diskmounter support (udevil)
|
||||
# this service provide auto mounting support for external drives in the
|
||||
# mediacenter also automount internally drives at boottime via udev (yes / no)
|
||||
UDEVIL="yes"
|
||||
|
||||
# build and install exFAT fuse support (yes / no)
|
||||
EXFAT="yes"
|
||||
|
||||
# build and install NTFS-3G fuse support (yes / no)
|
||||
NTFS3G="yes"
|
||||
|
||||
# build and install hfs filesystem utilities (yes / no)
|
||||
HFSTOOLS="yes"
|
||||
|
||||
# Windowmanager to use (fluxbox / none)
|
||||
WINDOWMANAGER="fluxbox"
|
||||
|
||||
# Xorg Graphic drivers to use (all / i915,i965,r200,r300,r600,nvidia)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="i915 i965 r300 r600 radeonsi nvidia"
|
||||
GRAPHIC_DRIVERS="r300 r600 radeonsi i915 i965 nvidia nvidia-legacy vmware"
|
||||
|
||||
# build and install remote support (yes / no)
|
||||
REMOTE_SUPPORT="yes"
|
||||
|
||||
# build and install ATV IR remote support (yes / no)
|
||||
ATVCLIENT_SUPPORT="yes"
|
||||
|
||||
# build and install Joystick support (yes / no)
|
||||
JOYSTICK_SUPPORT="yes"
|
||||
|
||||
# build and install CEC adapter support (yes / no)
|
||||
CEC_SUPPORT="yes"
|
||||
|
||||
# build and install iSCSI support - iscsistart (yes / no)
|
||||
ISCSI_SUPPORT="yes"
|
||||
|
||||
# Support for partitioning and formating disks in initramfs (yes / no)
|
||||
# This adds support for parted and mkfs.ext3/4 to initramfs for OEM usage
|
||||
INITRAMFS_PARTED_SUPPORT="no"
|
||||
|
||||
# build with swap support (yes / no)
|
||||
SWAP_SUPPORT="yes"
|
||||
|
||||
# swap support enabled per default (yes / no)
|
||||
SWAP_ENABLED_DEFAULT="no"
|
||||
|
||||
# swapfile size if SWAP_SUPPORT=yes in MB
|
||||
SWAPFILESIZE="128"
|
||||
|
||||
# build with installer (yes / no)
|
||||
INSTALLER_SUPPORT="yes"
|
||||
|
||||
# Testpackages for development (yes / no)
|
||||
TESTING="no"
|
||||
|
||||
# OEM packages for OEM's (yes / no)
|
||||
OEM_SUPPORT="no"
|
||||
|
||||
# build and install nano text editor (yes / no)
|
||||
NANO_EDITOR="yes"
|
||||
|
||||
# cron support (yes / no)
|
||||
CRON_SUPPORT="yes"
|
||||
|
||||
# Distribution Specific source location
|
||||
DISTRO_MIRROR="http://sources.libreelec.tv/mirror"
|
||||
DISTRO_SRC="http://sources.libreelec.tv/$LIBREELEC_VERSION"
|
||||
|
||||
# Addon Server Url
|
||||
ADDON_SERVER_URL="http://addons.libreelec.tv"
|
||||
|
||||
# set the addon dirs
|
||||
ADDON_PATH="$ADDON_VERSION/$PROJECT/$TARGET_ARCH"
|
||||
ADDON_URL="$ADDON_SERVER_URL/$ADDON_PATH"
|
||||
|
||||
# Default size of system partition, in MB, eg. 512
|
||||
SYSTEM_SIZE=512
|
||||
# Default system partition offset, in sectors, eg. 2048
|
||||
SYSTEM_PART_START=8192
|
||||
|
Before Width: | Height: | Size: 9.1 KiB |
|
Before Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 5.8 KiB |
53
packages/3rdparty/lib/cxxtools/package.mk
vendored
Normal file
@@ -0,0 +1,53 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="cxxtools"
|
||||
PKG_VERSION="2.2"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL-2"
|
||||
PKG_SITE="http://www.tntnet.org/cxxtools.html"
|
||||
PKG_URL="http://www.tntnet.org/download/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_HOST=""
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="python/web"
|
||||
PKG_SHORTDESC="cxxtools: a collection of general-purpose C++ classes"
|
||||
PKG_LONGDESC="Cxxtools is a collection of general-purpose C++ classes"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_CONFIGURE_OPTS_HOST="--disable-demos --with-atomictype=pthread --disable-unittest"
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared --disable-demos --with-atomictype=pthread --disable-unittest"
|
||||
|
||||
pre_configure_target() {
|
||||
CFLAGS="$CFLAGS -fPIC"
|
||||
CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
|
||||
post_makeinstall_host() {
|
||||
rm -rf $TOOLCHAIN/bin/cxxtools-config
|
||||
}
|
||||
|
||||
post_makeinstall_target() {
|
||||
rm -rf $SYSROOT_PREFIX/usr/bin/cxxtools-config
|
||||
rm -rf $INSTALL/usr/bin
|
||||
}
|
||||
35
packages/3rdparty/lib/libdvbcsa/package.mk
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="libdvbcsa"
|
||||
PKG_VERSION="1.1.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="LGPL"
|
||||
PKG_SITE="http://www.videolan.org/developers/libdvbcsa.html"
|
||||
PKG_URL="http://download.videolan.org/pub/videolan/libdvbcsa/${PKG_VERSION}/libdvbcsa-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="lib"
|
||||
PKG_SHORTDESC="libdvbcsa is a free implementation of the DVB Common Scrambling Algorithm - DVB/CSA - with encryption and decryption capabilities"
|
||||
PKG_LONGDESC="libdvbcsa is a free implementation of the DVB Common Scrambling Algorithm - DVB/CSA - with encryption and decryption capabilities"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="yes"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-shared --enable-static --with-sysroot=$SYSROOT_PREFIX"
|
||||
39
packages/3rdparty/lib/libzip/package.mk
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="libzip"
|
||||
PKG_VERSION="0.11.2"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.nih.at/libzip/"
|
||||
PKG_URL="http://www.nih.at/libzip/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SHORTDESC="libzip"
|
||||
PKG_LONGDESC="libzip"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-shared --enable-static"
|
||||
|
||||
post_makeinstall_target() {
|
||||
rm -rf $INSTALL/usr/bin
|
||||
rm -rf $INSTALL/usr/lib
|
||||
}
|
||||
55
packages/3rdparty/multimedia/vdr-control/package.mk
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-control"
|
||||
PKG_VERSION="0.0.2a"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://ricomp.de/vdr/"
|
||||
PKG_URL="http://ricomp.de/vdr/${PKG_NAME}-${PKG_VERSION}.tgz"
|
||||
PKG_SOURCE_DIR="control-${PKG_VERSION}"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr control plugin"
|
||||
PKG_LONGDESC="vdr control plugin"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
post_make_target() {
|
||||
$STRIP libvdr-*.so*
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
20
packages/3rdparty/multimedia/vdr-control/patches/vdr-control-0.0.2a-01_Makefile-fPIC-fix.patch
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
#!/bin/sh /usr/share/dpatch/dpatch-run
|
||||
|
||||
## Makefile-fPIC-fix patch
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Adds -fPIC to Makefile to fix potential FTBFS.
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad /usr/src/cvs/vdrdevel-plugin-rotor/Makefile vdrdevel-plugin-rotor/Makefile
|
||||
--- /usr/src/cvs/vdrdevel-plugin-rotor/Makefile Sun May 16 15:48:12 2004
|
||||
+++ vdrdevel-plugin-rotor/Makefile Sat Sep 11 00:28:18 2004
|
||||
@@ -18,7 +18,7 @@
|
||||
### The C++ compiler and options:
|
||||
|
||||
CXX ?= g++
|
||||
-CXXFLAGS ?= -O2 -Wall -Woverloaded-virtual
|
||||
+CXXFLAGS ?= -fPIC -O2 -Wall -Woverloaded-virtual
|
||||
|
||||
### The directory environment:
|
||||
|
||||
31
packages/3rdparty/multimedia/vdr-control/patches/vdr-control-0.0.2a-02_gateway.patch
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
#! /bin/sh /usr/share/dpatch/dpatch-run
|
||||
## 02_gateway.dpatch by Walter, dg9ep @ vdrportal.de
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Fixes problems when ending a telnet session with ctrl-c
|
||||
## DP: see: http://www.vdr-portal.de/board/thread.php?threadid=49680
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad vdr-plugin-control-0.0.2a~/gateway.c vdr-plugin-control-0.0.2a/gateway.c
|
||||
--- vdr-plugin-control-0.0.2a~/gateway.c 2004-07-02 21:24:22.000000000 +0200
|
||||
+++ vdr-plugin-control-0.0.2a/gateway.c 2007-04-12 22:51:16.000000000 +0200
|
||||
@@ -36,7 +36,7 @@
|
||||
_pTelnet (0),
|
||||
_pFormatter (0)
|
||||
{
|
||||
- gl_CtrlGatewayCol.Add(this);
|
||||
+// gl_CtrlGatewayCol.Add(this);
|
||||
|
||||
// if (! cKbdRemoteForControl::_pRemote)
|
||||
// cKbdRemoteForControl::_pRemote = new cKbdRemoteForControl();
|
||||
@@ -163,8 +163,8 @@
|
||||
|
||||
// UnprepareSocket();
|
||||
|
||||
- if (! _terminating)
|
||||
- gl_CtrlGatewayCol.Del(this);
|
||||
+// if (! _terminating)
|
||||
+// gl_CtrlGatewayCol.Del(this);
|
||||
|
||||
conDSYSLOG("gateway thread ended (pid=%d)", getpid());
|
||||
conLOG_GATEW("gateway thread ended (pid=%d)", getpid());
|
||||
35
packages/3rdparty/multimedia/vdr-control/patches/vdr-control-0.0.2a-92_control-1.3.18.patch
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
#!/bin/sh /usr/share/dpatch/dpatch-run
|
||||
|
||||
## control-1.3.18 patch - by Thomas G<>nther <tom@toms-cafe.de>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Changes for VDR >= 1.3.18.
|
||||
|
||||
@DPATCH@
|
||||
--- control-0.0.2a/gateway.c
|
||||
+++ control-0.0.2a/gateway.c
|
||||
@@ -102,7 +102,12 @@
|
||||
|
||||
uint64 Command = 0;
|
||||
uint i = 0;
|
||||
+#if VDRVERSNUM >= 10318
|
||||
+ cTimeMs timeout;
|
||||
+ timeout.Set(100);
|
||||
+#else
|
||||
int t0 = time_ms();
|
||||
+#endif
|
||||
while (_active && i < sizeof(Command)) {
|
||||
|
||||
uchar ch;
|
||||
@@ -131,7 +136,11 @@
|
||||
// of their codes, so we'll need to wait some 100ms to see if
|
||||
// there is more coming up - or whether this really is the 'ESC'
|
||||
// key (if somebody knows how to clean this up, please let me know):
|
||||
+#if VDRVERSNUM >= 10318
|
||||
+ if (Command == 0x1B && !timeout.TimedOut())
|
||||
+#else
|
||||
if (Command == 0x1B && time_ms() - t0 < 100)
|
||||
+#endif
|
||||
continue;
|
||||
|
||||
if (Command) {
|
||||
@@ -0,0 +1,73 @@
|
||||
#! /bin/sh /usr/share/dpatch/dpatch-run
|
||||
## 93_control-0.0.2a-1.5.0.dpatch by Thomas G<>nther <tom@toms-cafe.de>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Changes for VDR >= 1.5.0 (applicable to VDR >= 1.4.5).
|
||||
|
||||
@DPATCH@
|
||||
--- control-0.0.2a/gateway.c
|
||||
+++ control-0.0.2a/gateway.c
|
||||
@@ -100,7 +100,7 @@
|
||||
|
||||
if (_stack.poll(100)) {
|
||||
|
||||
- uint64 Command = 0;
|
||||
+ uint64_t Command = 0;
|
||||
uint i = 0;
|
||||
int t0 = time_ms();
|
||||
while (_active && i < sizeof(Command)) {
|
||||
--- control-0.0.2a/keyboard.c
|
||||
+++ control-0.0.2a/keyboard.c
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
struct tKbdMap {
|
||||
eKbdFunc func;
|
||||
- uint64 code;
|
||||
+ uint64_t code;
|
||||
};
|
||||
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
|
||||
|
||||
|
||||
-bool cCtrlKeyboard::intPut(uint64 Command, bool Repeat, bool Release) {
|
||||
+bool cCtrlKeyboard::intPut(uint64_t Command, bool Repeat, bool Release) {
|
||||
|
||||
bool ret = cRemote::Put(Command, Repeat, Release);
|
||||
conLOG_KEYB("%s cKbdRemoteForControl::intPut(0x%016LX)", ret ? "true" : "false", Command);
|
||||
@@ -126,7 +126,7 @@
|
||||
|
||||
|
||||
|
||||
-bool cCtrlKeyboard::Put(uint64 Command, bool Repeat, bool Release) {
|
||||
+bool cCtrlKeyboard::Put(uint64_t Command, bool Repeat, bool Release) {
|
||||
|
||||
if (! _pRemote)
|
||||
_pRemote = new cCtrlKeyboard();
|
||||
@@ -136,7 +136,7 @@
|
||||
|
||||
|
||||
|
||||
-int cCtrlKeyboard::MapCodeToFunc(uint64 Code) {
|
||||
+int cCtrlKeyboard::MapCodeToFunc(uint64_t Code) {
|
||||
|
||||
for (const tKbdMap *p = keyboardKbdMap; p->func != kfNone; p++) {
|
||||
if (p->code == Code)
|
||||
--- control-0.0.2a/keyboard.h
|
||||
+++ control-0.0.2a/keyboard.h
|
||||
@@ -30,11 +30,11 @@
|
||||
cCtrlKeyboard();
|
||||
virtual ~cCtrlKeyboard();
|
||||
|
||||
- bool intPut(uint64 Command, bool Repeat, bool Release);
|
||||
+ bool intPut(uint64_t Command, bool Repeat, bool Release);
|
||||
|
||||
public:
|
||||
- static bool Put(uint64 Command, bool Repeat = false, bool Release = false);
|
||||
- static int MapCodeToFunc(uint64 Code);
|
||||
+ static bool Put(uint64_t Command, bool Repeat = false, bool Release = false);
|
||||
+ static int MapCodeToFunc(uint64_t Code);
|
||||
};
|
||||
|
||||
|
||||
28
packages/3rdparty/multimedia/vdr-control/patches/vdr-control-0.0.2a-94_gcc-4.4.patch
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
#! /bin/sh /usr/share/dpatch/dpatch-run
|
||||
## 94_gcc-4.4.dpatch by Tobias Grimm <etobi@debian.org>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: No description.
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad vdr-plugin-control-0.0.2a~/formatter.c vdr-plugin-control-0.0.2a/formatter.c
|
||||
--- vdr-plugin-control-0.0.2a~/formatter.c 2004-07-02 21:24:22.000000000 +0200
|
||||
+++ vdr-plugin-control-0.0.2a/formatter.c 2009-11-11 22:07:56.000000000 +0100
|
||||
@@ -165,7 +165,7 @@
|
||||
|
||||
if (Title) {
|
||||
|
||||
- char* t = strchr(Title, '\t');
|
||||
+ const char* t = strchr(Title, '\t');
|
||||
if (t) {
|
||||
|
||||
int size = t - Title;
|
||||
@@ -300,7 +300,7 @@
|
||||
|
||||
for (;;) {
|
||||
|
||||
- char* t = strchr(text, '\t');
|
||||
+ const char* t = strchr(text, '\t');
|
||||
if (t) {
|
||||
// Tab found - check if the tab can be used
|
||||
|
||||
28
packages/3rdparty/multimedia/vdr-control/patches/vdr-control-0.0.2a-95_vdr-crash-fix.patch
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
diff -Nru control-0.0.2a-kw3/control.c control-0.0.2a-kw3_0/control.c
|
||||
--- control-0.0.2a-kw3/control.c 2008-09-26 16:19:29.000000000 +0200
|
||||
+++ control-0.0.2a-kw3_0/control.c 2012-08-04 12:17:08.000000000 +0200
|
||||
@@ -32,6 +32,7 @@
|
||||
class cPluginControl : public cPlugin {
|
||||
private:
|
||||
// Add any member variables or functions you may need here.
|
||||
+ cCtrlState* _pState;
|
||||
cCtrlGateways* _pReceivers;
|
||||
cCtrlGateway* _pTerminal;
|
||||
|
||||
@@ -67,6 +68,7 @@
|
||||
cPluginControl::~cPluginControl()
|
||||
{
|
||||
// Clean up after yourself!
|
||||
+ delete(_pState);
|
||||
delete(_pReceivers);
|
||||
delete(_pTerminal);
|
||||
}
|
||||
@@ -120,7 +122,7 @@
|
||||
// Start any background activities the plugin shall perform.
|
||||
|
||||
if (glParPort || glParTerminal && *glParTerminal)
|
||||
- new cCtrlState();
|
||||
+ _pState = new cCtrlState();
|
||||
|
||||
if (glParPort) {
|
||||
_pReceivers = new cCtrlGateways();
|
||||
22
packages/3rdparty/multimedia/vdr-control/patches/vdr-control-0.0.2a-96_makefile_apiversion.patch
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 65a7674..1a5976e 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -31,7 +31,7 @@ TMPDIR = /tmp
|
||||
|
||||
### The version number of VDR (taken from VDR's "config.h"):
|
||||
|
||||
-VDRVERSION = $(shell grep 'define VDRVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
|
||||
+APIVERSION = $(shell grep 'define APIVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
|
||||
|
||||
### The name of the distribution archive:
|
||||
|
||||
@@ -54,7 +54,7 @@ all: libvdr-$(PLUGIN).so
|
||||
|
||||
libvdr-$(PLUGIN).so: $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) -shared $(OBJS) -o $@
|
||||
- @cp $@ $(LIBDIR)/$@.$(VDRVERSION)
|
||||
+ @cp $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
dist: clean
|
||||
@-rm -rf $(TMPDIR)/$(ARCHIVE)
|
||||
55
packages/3rdparty/multimedia/vdr-dummydevice/package.mk
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-dummydevice"
|
||||
PKG_VERSION="2.0.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.vdr-wiki.de/wiki/index.php/Dummydevice-plugin"
|
||||
PKG_URL="http://phivdr.dyndns.org/vdr/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tgz"
|
||||
PKG_SOURCE_DIR="dummydevice-${PKG_VERSION}"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr dummydevice plugin"
|
||||
PKG_LONGDESC="vdr dummydevice plugin"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
post_make_target() {
|
||||
$STRIP libvdr-*.so*
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
46
packages/3rdparty/multimedia/vdr-dummydevice/patches/vdr-dummydevice-01_makefile.patch
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index dc959f1..5cb2315 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -15,22 +15,15 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
-#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+include $(VDRDIR)/Make.global
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -47,7 +40,7 @@ SOFILE = libvdr-$(PLUGIN).so
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES +=
|
||||
+INCLUDES += -I$(VDRDIR)/include
|
||||
|
||||
DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||||
|
||||
@@ -103,6 +96,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
install-lib: $(SOFILE)
|
||||
install -D $^ $(DESTDIR)$(LIBDIR)/$^.$(APIVERSION)
|
||||
51
packages/3rdparty/multimedia/vdr-epgsearch/package.mk
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-epgsearch"
|
||||
PKG_VERSION="29c174a"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://winni.vdr-developer.org/epgsearch/"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr-epgsearch"
|
||||
PKG_LONGDESC="vdr-epgsearch"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
|
||||
export LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
68
packages/3rdparty/multimedia/vdr-epgsearch/patches/vdr-epgsearch-01_makefile.patch
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 6bb1b96..118e379 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -62,21 +62,10 @@ VERSION = $(shell grep 'static const char VERSION\[\] *=' $(PLUGIN).c | awk '{ p
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-MANDIR = $(call PKGCFG,mandir)
|
||||
-CONFDIR = $(call PKGCFG,configdir)
|
||||
-BINDIR = $(call PKGCFG,bindir)
|
||||
-#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
-
|
||||
### configuring modules
|
||||
ifeq ($(AUTOCONFIG),1)
|
||||
ifeq (exists, $(shell pkg-config libpcre && echo exists))
|
||||
@@ -92,9 +81,11 @@ ifeq ($(AUTOCONFIG),1)
|
||||
endif
|
||||
endif
|
||||
|
||||
+include $(VDRDIR)/Make.global
|
||||
+
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### The name of the distribution archive:
|
||||
|
||||
@@ -103,7 +94,7 @@ PACKAGE = vdr-$(ARCHIVE)
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES +=
|
||||
+INCLUDES += -I$(VDRDIR)/include
|
||||
|
||||
DEFINES +=
|
||||
|
||||
@@ -231,15 +222,19 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
libvdr-$(PLUGIN).so: $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) $(LIBS) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
libvdr-$(PLUGIN2).so: $(OBJS2)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS2) $(LIBS2) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
libvdr-$(PLUGIN3).so: $(OBJS3)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS3) $(LIBS3) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
libvdr-$(PLUGIN4).so: $(OBJS4)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS4) $(LIBS4) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
createcats: createcats.o Makefile
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) createcats.o -o $@
|
||||
19
packages/3rdparty/multimedia/vdr-epgsearch/patches/vdr-epgsearch-02_vdr-2.1.2-buildfix.patch
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
commit e8bb2e8e0ef3602fc8cb252cee541bed5d45fc5c
|
||||
Author: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat Oct 19 22:19:10 2013 +0300
|
||||
|
||||
vdr 2.1.2 buildfix
|
||||
|
||||
diff --git a/uservars.h b/uservars.h
|
||||
index f098750..a0e047c 100644
|
||||
--- a/uservars.h
|
||||
+++ b/uservars.h
|
||||
@@ -538,7 +538,7 @@ class cVideodirVar : public cInternalVar {
|
||||
cVideodirVar() : cInternalVar("videodir") {}
|
||||
string Evaluate(const cEvent*, bool escapeStrings = false)
|
||||
{
|
||||
- return VideoDirectory;
|
||||
+ return cVideoDirectory::Name();
|
||||
}
|
||||
};
|
||||
|
||||
51
packages/3rdparty/multimedia/vdr-iptv/package.mk
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-iptv"
|
||||
PKG_VERSION="2.1.2"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.saunalahti.fi/~rahrenbe/vdr/iptv/"
|
||||
PKG_URL="http://www.saunalahti.fi/~rahrenbe/vdr/iptv/files/$PKG_NAME-$PKG_VERSION.tgz"
|
||||
PKG_SOURCE_DIR="iptv-${PKG_VERSION}"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr curl"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr-iptv: an IPTV plugin for the Video Disk Recorder (VDR)"
|
||||
PKG_LONGDESC="vdr-iptv is an IPTV plugin for the Video Disk Recorder (VDR)"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
57
packages/3rdparty/multimedia/vdr-iptv/patches/vdr-iptv-01_makefile.patch
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 48c8b2c..d370f92 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -12,8 +12,6 @@
|
||||
|
||||
# Strip debug symbols? Set eg. to /bin/true if not
|
||||
|
||||
-STRIP = strip
|
||||
-
|
||||
# The official name of this plugin.
|
||||
# This name will be used in the '-P...' option of VDR to load the plugin.
|
||||
# By default the main source file also carries this name.
|
||||
@@ -27,24 +25,15 @@ GITTAG = $(shell git describe --always 2>/dev/null)
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
-RESDIR = $(call PKGCFG,resdir)
|
||||
-CFGDIR = $(call PKGCFG,configdir)
|
||||
-#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+include $(VDRDIR)/Make.global
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -65,7 +54,7 @@ LIBS = $(shell curl-config --libs)
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES +=
|
||||
+INCLUDES += -I$(VDRDIR)/include
|
||||
|
||||
DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||||
|
||||
@@ -139,6 +128,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) $(LIBS) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
ifndef IPTV_DEBUG
|
||||
@$(STRIP) $@
|
||||
endif
|
||||
56
packages/3rdparty/multimedia/vdr-live/package.mk
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-live"
|
||||
PKG_VERSION="0.3.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://live.vdr-developer.org/en/index.php"
|
||||
PKG_URL="http://live.vdr-developer.org/downloads/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_SOURCE_DIR="live-${PKG_VERSION}"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr tntnet pcre:host pcre"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr-live: the LIVE Interactive VDR Environment/"
|
||||
PKG_LONGDESC="vdr-live allows a comfortable operation of VDR and some of its plugins trough a web interface"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
|
||||
export LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib"
|
||||
}
|
||||
|
||||
pre_make_target() {
|
||||
# dont build parallel
|
||||
MAKEFLAGS=-j1
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
59
packages/3rdparty/multimedia/vdr-plugin-dvbapi/package.mk
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# OpenELEC is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# OpenELEC is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-plugin-dvbapi"
|
||||
PKG_VERSION="bf11f9e"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/manio/vdr-plugin-dvbapi"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr openssl libdvbcsa"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="TV"
|
||||
PKG_LONGDESC="TV"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
export CSAFLAGS="$CFLAGS -Wall -fomit-frame-pointer -fexpensive-optimizations -funroll-loops"
|
||||
}
|
||||
|
||||
pre_make_target() {
|
||||
# dont build parallel
|
||||
MAKEFLAGS=-j1
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
VDRSRC=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale" \
|
||||
LIBDVBCSA=1
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
54
packages/3rdparty/multimedia/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-02_makefile.patch
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index efd124a..ed303fa 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -12,22 +12,14 @@ PLUGIN = dvbapi
|
||||
### The version number of this plugin (taken from the main source file):
|
||||
|
||||
VERSION = $(shell grep 'static const char \*VERSION *=' DVBAPI.h | awk '{ print $$6 }' | sed -e 's/[";]//g')
|
||||
-GITTAG = $(shell git describe --always 2>/dev/null)
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
-#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+include $(VDRDIR)/Make.global
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -35,7 +27,7 @@ export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### The name of the distribution archive:
|
||||
|
||||
@@ -48,7 +40,7 @@ SOFILE = libvdr-$(PLUGIN).so
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES +=
|
||||
+INCLUDES += -I$(VDRDIR)/include
|
||||
|
||||
DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||||
|
||||
@@ -122,6 +114,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS) $(FFDECSA)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) $(DECSALIB) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
ifndef LIBDVBCSA
|
||||
$(FFDECSA): $(FFDECSADIR)/*.c $(FFDECSADIR)/*.h
|
||||