Compare commits
805 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
fef64b95bc | ||
|
3e131fc48d | ||
|
b480bd6292 | ||
|
71c6e1aeee | ||
|
f9130efe8c | ||
|
a4a16201d5 | ||
|
43bfe54d12 | ||
|
167adeadc4 | ||
|
3f46931d2f | ||
|
01787fc1d0 | ||
|
57c15eecf9 | ||
|
d0d3b2ed23 | ||
|
da837f11a3 | ||
|
b95ff9d674 | ||
|
a07e6e478a | ||
|
c7148ed759 | ||
|
ebade8b997 | ||
|
dbb6ec293b | ||
|
697007e32f | ||
|
71ae6c005b | ||
|
98fff58e77 | ||
|
d9289dada5 | ||
|
8ab470f20f | ||
|
a0636f60be | ||
|
f2297df048 | ||
|
103626bcc0 | ||
|
5d0de4ee49 | ||
|
a04203247f | ||
|
bfe6a2eee9 | ||
|
b206cc8f65 | ||
|
eb4d3a420f | ||
|
343c8fcf6d | ||
|
bff7c61ba1 | ||
|
4fdbe837f3 | ||
|
23d032707d | ||
|
6e27d7de5a | ||
|
428a617cdd | ||
|
d822f8a9af | ||
|
7ad5094d62 | ||
|
896a948c45 | ||
|
80bfeab96c | ||
|
e9ee7d10ba | ||
|
725603e7ca | ||
|
f866561ce7 | ||
|
948066e110 | ||
|
d6c484612e | ||
|
0eb7147436 | ||
|
3ba56c09ac | ||
|
b459bc2531 | ||
|
b1fac5955e | ||
|
1f0798516b | ||
|
2d5c85b77b | ||
|
b31b252af4 | ||
|
d612976a3c | ||
|
8183ca5a37 | ||
|
4aeba340ca | ||
|
8335d68389 | ||
|
ce522328fb | ||
|
af2f24e5e0 | ||
|
ffaaa26c97 | ||
|
b3665985af | ||
|
2f9b4989cb | ||
|
2594748149 | ||
|
241d238c70 | ||
|
b69935f2f8 | ||
|
5de20fd850 | ||
|
51cf3d9621 | ||
|
91f95bc34c | ||
|
e73466e1c5 | ||
|
a16dbf58e3 | ||
|
47244ebc84 | ||
|
45cd4cc3d0 | ||
|
2b3aff185a | ||
|
4afda83d43 | ||
|
e9f546bf1f | ||
|
b370918161 | ||
|
a8602f5ad2 | ||
|
f8444455e3 | ||
|
82538f474c | ||
|
221fe066fb | ||
|
f180590699 | ||
|
8b1db0dd2a | ||
|
7b1f4d8343 | ||
|
943fa471aa | ||
|
217a7fab28 | ||
|
122079fc4a | ||
|
5ee1cbaca7 | ||
|
f978277c59 | ||
|
527b440da4 | ||
|
e40662f7a9 | ||
|
aeacca0af4 | ||
|
91a3d7a923 | ||
|
16dfa112c1 | ||
|
dd6198e02d | ||
|
4ff6b8fa01 | ||
|
bb20a3fba5 | ||
|
647c75e513 | ||
|
c88f7f4469 | ||
|
0f9ce49aad | ||
|
3836b68a04 | ||
|
b76c7bcb2e | ||
|
5a31913ce0 | ||
|
2639d13685 | ||
|
714eb72aa9 | ||
|
a48aa99972 | ||
|
13bce06724 | ||
|
6c70da6b72 | ||
|
28add374ce | ||
|
dfe751c10c | ||
|
3a97198c66 | ||
|
177d6f0d7c | ||
|
28c4e45f92 | ||
|
560ccaa8a6 | ||
|
cb135308d9 | ||
|
b58b4e85de | ||
|
76e5f9740b | ||
|
9048770b51 | ||
|
b2450a6608 | ||
|
670e4a45a8 | ||
|
47aaf1fd69 | ||
|
9baad4c7da | ||
|
b734e8a845 | ||
|
4489cb1d5f | ||
|
7eda69ab78 | ||
|
015ad65e30 | ||
|
07b7d4ac06 | ||
|
157bddf750 | ||
|
7f040cc42f | ||
|
e7f791c246 | ||
|
13cd99aa64 | ||
|
bc86df28d4 | ||
|
e39a4b2757 | ||
|
f52b096035 | ||
|
a571b3ef12 | ||
|
557f3f61c5 | ||
|
2fc677db6f | ||
|
4d91da9d19 | ||
|
13962fa44d | ||
|
ca95843bc3 | ||
|
602e091b10 | ||
|
ec69e7724c | ||
|
b0c6bf362c | ||
|
89913d3c51 | ||
|
d38cc88e56 | ||
|
ffce806c95 | ||
|
865d28c0b7 | ||
|
a202c166f0 | ||
|
f9853a30da | ||
|
3e43f489c0 | ||
|
12672cccc0 | ||
|
e9b64d15fc | ||
|
469049fb66 | ||
|
c1a484f8b7 | ||
|
2551653d7c | ||
|
379a767770 | ||
|
d98238726d | ||
|
0700c690bc | ||
|
69a04d9587 | ||
|
e437963ec9 | ||
|
7bef3c7b3e | ||
|
ea8e8c3409 | ||
|
615b18379a | ||
|
09667877f1 | ||
|
64437c2d4a | ||
|
b8899f88cd | ||
|
558270b8dc | ||
|
cfe4b28c0f | ||
|
e9cfe5fa5a | ||
|
0378c1266a | ||
|
67b4fc4653 | ||
|
721b000bde | ||
|
fb05da6aa4 | ||
|
0cb6c45d92 | ||
|
0d3f4e1aea | ||
|
c41df480f5 | ||
|
e8a32dd17f | ||
|
9eb06908f0 | ||
|
35fd72ad83 | ||
|
a172f8137a | ||
|
0945db3aee | ||
|
1610769098 | ||
|
3d17a457ed | ||
|
48ec2a9434 | ||
|
a03bbb6705 | ||
|
7e41e741bd | ||
|
351f1953e4 | ||
|
e3d77729c8 | ||
|
487dc84f06 | ||
|
a5e6d24f31 | ||
|
886ee57885 | ||
|
4dc43f67d3 | ||
|
8b6657082a | ||
|
cf152dc1fc | ||
|
4c8d507f2d | ||
|
b934cf8267 | ||
|
c9bb4d0750 | ||
|
265b52e23e | ||
|
3de52986bd | ||
|
f3d640ed40 | ||
|
2afa35cd38 | ||
|
07009c8789 | ||
|
f3004c01ee | ||
|
4f1050a7c3 | ||
|
7fbafb9ec9 | ||
|
f3efe1f53c | ||
|
8207dace25 | ||
|
9625fd1880 | ||
|
a4e7e17e68 | ||
|
9942ba96bf | ||
|
4be0693da5 | ||
|
817dcd5aef | ||
|
f6cb502cd2 | ||
|
865e874a2c | ||
|
0509005e1e | ||
|
a5f92b79f1 | ||
|
a2b49ff462 | ||
|
a12d831309 | ||
|
01eab565f7 | ||
|
2f58094d16 | ||
|
5918344556 | ||
|
57fd106bb8 | ||
|
d2c6e9b0ed | ||
|
96a1cdc159 | ||
|
41735b71c3 | ||
|
66325c5488 | ||
|
aed4a6b278 | ||
|
ae07a247dc | ||
|
cddd637fad | ||
|
c0b1b3895e | ||
|
6443871522 | ||
|
1d5f527063 | ||
|
f3b1d87bb6 | ||
|
63e08e29de | ||
|
8bc04bf5b0 | ||
|
105d8d7888 | ||
|
0838c911b6 | ||
|
3d61393ab3 | ||
|
c0f75e8d30 | ||
|
ee0ccd4dc6 | ||
|
09c8597845 | ||
|
2545330782 | ||
|
801df6df92 | ||
|
bdeef81fd5 | ||
|
e5747843d1 | ||
|
08a0441be2 | ||
|
d3d085bf07 | ||
|
03eeceb69c | ||
|
e9ddb5c55e | ||
|
80a9765d6d | ||
|
262ec97ebe | ||
|
fbfb1d8e39 | ||
|
781be70efb | ||
|
82b519787f | ||
|
0c564852a4 | ||
|
bebe7ed111 | ||
|
411209b447 | ||
|
bb04e0a72d | ||
|
80419ac53a | ||
|
ecb23ae7c3 | ||
|
877ac92e1e | ||
|
602db2ba2b | ||
|
405c57cc10 | ||
|
8178b92e68 | ||
|
6669dcb86e | ||
|
994371b009 | ||
|
3f6b564f7a | ||
|
3312db0256 | ||
|
e242148dec | ||
|
7d2ab2359e | ||
|
9866b4574d | ||
|
23897b390c | ||
|
13bf6ac3ac | ||
|
6bc0c00afb | ||
|
75d16d2d7b | ||
|
4870c19294 | ||
|
e1df9fddb3 | ||
|
ece602dfcc | ||
|
50500ac68f | ||
|
0005ac1ea0 | ||
|
f34f6c91b4 | ||
|
99e1e347c9 | ||
|
ec28fb10f9 | ||
|
f2aaad9133 | ||
|
4c69567fa0 | ||
|
840ce1b474 | ||
|
92f040cd34 | ||
|
477c1b4144 | ||
|
faa7170e1d | ||
|
e326136c9b | ||
|
3966b2d0bd | ||
|
8d3faf2202 | ||
|
34d2c6233c | ||
|
c8f1a5d078 | ||
|
04893e481a | ||
|
601681bc18 | ||
|
61d8d48a57 | ||
|
9d5428cf35 | ||
|
296c2fa21a | ||
|
4294e82645 | ||
|
148a373d45 | ||
|
4464712ab3 | ||
|
d938e3bbc2 | ||
|
d5888666b3 | ||
|
785945b8c9 | ||
|
4ff70754e3 | ||
|
72b4a0fe6e | ||
|
23ef5dd446 | ||
|
76aa7e7fe9 | ||
|
899eac0738 | ||
|
8b43eea334 | ||
|
591a27fbbd | ||
|
574879f332 | ||
|
7c4a39ccdd | ||
|
04a2905a13 | ||
|
032b78558d | ||
|
01e36094ea | ||
|
c690951b5a | ||
|
59f15d34dc | ||
|
b012e5922f | ||
|
f296b4697e | ||
|
7c9643e813 | ||
|
1aca4791da | ||
|
c914c483da | ||
|
a3e8073d45 | ||
|
7595b4761c | ||
|
97eef5da7b | ||
|
ff6b24590c | ||
|
83097942e5 | ||
|
7a8dfa2a9c | ||
|
4fcf146a20 | ||
|
5fb8aea0f3 | ||
|
db5beadcce | ||
|
ae605bb15f | ||
|
a32a1acc95 | ||
|
aa448a1e6a | ||
|
ae5f4b1749 | ||
|
a521b57d28 | ||
|
e5e0930922 | ||
|
98f99eaf15 | ||
|
e0348dd554 | ||
|
20c504f9d3 | ||
|
81ae9a9576 | ||
|
dede8a12d6 | ||
|
206571ae25 | ||
|
288c7c3305 | ||
|
04f815b67d | ||
|
248b358eaa | ||
|
74c04c6197 | ||
|
2fe0c23634 | ||
|
99881fb15c | ||
|
ac673a438e | ||
|
ff2adf8187 | ||
|
5fe6a05357 | ||
|
1569d0f85b | ||
|
2f1030de8b | ||
|
08dfa52f8e | ||
|
ac18c15be0 | ||
|
18c6ca619e | ||
|
c95acea448 | ||
|
91142b58ad | ||
|
83473c16d7 | ||
|
a1b1a94b5a | ||
|
ca34a44235 | ||
|
19664638ed | ||
|
40c0864bf7 | ||
|
62a00ec7e6 | ||
|
ed3f432ac5 | ||
|
b54aa3a731 | ||
|
c537d8854e | ||
|
2d247ee300 | ||
|
92c309ac71 | ||
|
f94c05b373 | ||
|
a09ae4edc1 | ||
|
71fe9b41bc | ||
|
dadd747f5a | ||
|
5d79b99d8d | ||
|
8ea46a2542 | ||
|
abcc464497 | ||
|
441e6b81c3 | ||
|
026b86e43a | ||
|
2a651574ee | ||
|
a2a7df74a9 | ||
|
bcf41e9397 | ||
|
98dd339b82 | ||
|
0327978449 | ||
|
00c981f7d6 | ||
|
a183fa3b6b | ||
|
73e318a836 | ||
|
534f130d29 | ||
|
39902f5a99 | ||
|
6a04fdc855 | ||
|
76ac32d95f | ||
|
f3b60d6c33 | ||
|
a41ffeb07b | ||
|
6bbcaeb229 | ||
|
dc4ed5b61b | ||
|
f6f84d57b9 | ||
|
cc70975c28 | ||
|
e0d1434dd8 | ||
|
578efc382d | ||
|
87f9a65582 | ||
|
f4aa686537 | ||
|
e7300e997b | ||
|
93a41c59fa | ||
|
a65ec2c810 | ||
|
1eb8fd86c6 | ||
|
fc485a0fea | ||
|
2c8917553d | ||
|
7dbe0c221e | ||
|
1d67fe3668 | ||
|
278467117c | ||
|
0143b76a8a | ||
|
756eaa3170 | ||
|
2e3932fb25 | ||
|
16d10212c3 | ||
|
1303dad95f | ||
|
c78dcee7e2 | ||
|
c30afae87a | ||
|
1569626673 | ||
|
903de08e3e | ||
|
f48dcf0d66 | ||
|
ac8795d8c6 | ||
|
d10fda5760 | ||
|
66d84ae885 | ||
|
bd2119db7c | ||
|
cf25c58e8e | ||
|
f96ffcbf57 | ||
|
934cb25456 | ||
|
1b7f933f1a | ||
|
cf7d07b596 | ||
|
812f087fa1 | ||
|
e560fcafee | ||
|
b2d388a10a | ||
|
3d3282dafe | ||
|
6ae12f308a | ||
|
6e0612c392 | ||
|
0daefb6f30 | ||
|
3b2e5f5a39 | ||
|
e2cee2cd8e | ||
|
40984c1435 | ||
|
13745b8149 | ||
|
c816e01003 | ||
|
5550b358f1 | ||
|
d693c5a9f8 | ||
|
8b43010d9f | ||
|
07c69db5c5 | ||
|
93ce084af6 | ||
|
a73f58c804 | ||
|
01e9eb6ce2 | ||
|
842e4e2b0b | ||
|
28f81c0ef4 | ||
|
47ce31f297 | ||
|
34dd4a96ae | ||
|
b011cdc5dc | ||
|
0d27241689 | ||
|
94c5710330 | ||
|
04b87d0cde | ||
|
877e1053b6 | ||
|
3e5dba2ecf | ||
|
12c8e1938b | ||
|
6de5a52775 | ||
|
a9bbddacb9 | ||
|
ca3920c5b0 | ||
|
1683ac4f78 | ||
|
d50b994714 | ||
|
66a25543f5 | ||
|
20d5931c2d | ||
|
56b3144529 | ||
|
60b21b6ab4 | ||
|
060432be2b | ||
|
e942d00083 | ||
|
384716c152 | ||
|
b44e696b74 | ||
|
36f80355f5 | ||
|
961605e18c | ||
|
e4a0ae7113 | ||
|
2ba6013470 | ||
|
516b628b71 | ||
|
6620216a96 | ||
|
69e90aef2d | ||
|
dea33f2996 | ||
|
18c5cc4187 | ||
|
da9c150c6e | ||
|
7d5a327616 | ||
|
cc94c15ab0 | ||
|
417d4c866b | ||
|
540dff8fc4 | ||
|
bf7372467a | ||
|
b0e8792636 | ||
|
b855639784 | ||
|
22aa23d20c | ||
|
814559fc88 | ||
|
ccfd73b007 | ||
|
d76f7f2765 | ||
|
f77ddf6e76 | ||
|
a19256f64e | ||
|
05fe2a81a8 | ||
|
ee74271256 | ||
|
8dd23ad977 | ||
|
846e34f8a2 | ||
|
db4fc0456a | ||
|
c38aacaeec | ||
|
a6b3ebdce0 | ||
|
847ace4349 | ||
|
1e97c0364f | ||
|
a01337b591 | ||
|
62328afc0a | ||
|
e77097124a | ||
|
79350e9d92 | ||
|
2ff332124c | ||
|
11b8107aa0 | ||
|
f97b5cf285 | ||
|
cc7e864ff9 | ||
|
8a72ede39a | ||
|
6fba052a9f | ||
|
e1ff5630d8 | ||
|
aad1d5793e | ||
|
03b01f13f7 | ||
|
4d49c964e1 | ||
|
7518336988 | ||
|
b81bb33cb2 | ||
|
c3a66745e1 | ||
|
572485f4d9 | ||
|
23f43378ed | ||
|
05e9adc114 | ||
|
b872dae409 | ||
|
91b310e667 | ||
|
314b6a4ab6 | ||
|
30fab2d5a0 | ||
|
cbd3aea034 | ||
|
37613aa466 | ||
|
94b1fa9628 | ||
|
6e63dfd764 | ||
|
2088f95b09 | ||
|
2fa91dc67f | ||
|
d285a5e4f5 | ||
|
a6597198a5 | ||
|
000c0f848f | ||
|
ebe88b1939 | ||
|
7447bf202d | ||
|
82ac2a1699 | ||
|
b576c989a8 | ||
|
d19331d04d | ||
|
79704c986d | ||
|
e17de0145a | ||
|
c07b6c7957 | ||
|
40593390ff | ||
|
5d8701c4e1 | ||
|
8d3698c7c8 | ||
|
8e763e0ac4 | ||
|
9d96f580c2 | ||
|
a5d39bb4fc | ||
|
b58f6b3956 | ||
|
31c80f5313 | ||
|
39616b8444 | ||
|
b7fa7e9e69 | ||
|
dde5311e88 | ||
|
850d5cc9ef | ||
|
166d42fb9b | ||
|
c9458e4c31 | ||
|
93d22ea801 | ||
|
a3c2fbf0ff | ||
|
eed1765699 | ||
|
56ed7a981d | ||
|
3afb01dd31 | ||
|
fe5129af10 | ||
|
827dd60918 | ||
|
7d9f43aea1 | ||
|
f9cea9c45e | ||
|
8c514623fd | ||
|
074e1b4151 | ||
|
60ad3002d0 | ||
|
97e2720006 | ||
|
8ca37db61f | ||
|
de1941f596 | ||
|
f0b8ba3b79 | ||
|
65507b4711 | ||
|
e926209233 | ||
|
faab8d1626 | ||
|
ebdb7525fa | ||
|
dcb992d61b | ||
|
ee675a9236 | ||
|
2a0f06831d | ||
|
5811dd9a64 | ||
|
61bdfa02e2 | ||
|
ed4e146527 | ||
|
411685d022 | ||
|
e00a432d21 | ||
|
200df46c45 | ||
|
ace57af74f | ||
|
1f8d87826d | ||
|
db35356eb7 | ||
|
cd78701fe9 | ||
|
2a36ca6101 | ||
|
df86e87ee6 | ||
|
30a8071b34 | ||
|
6b2c5a32fd | ||
|
96c577407f | ||
|
510abf9c75 | ||
|
337333e54a | ||
|
3da017382d | ||
|
5dda981d9c | ||
|
bb6e0e00dd | ||
|
a567e2c6f6 | ||
|
1960ce8853 | ||
|
7651fb1201 | ||
|
14d332c836 | ||
|
114aa4cd95 | ||
|
7450540b74 | ||
|
2d7791c2a8 | ||
|
5448b28270 | ||
|
6e767d2df9 | ||
|
393ec1def2 | ||
|
b8f63417df | ||
|
280ccd684d | ||
|
0388f66f97 | ||
|
64b4edb80f | ||
|
771d0936da | ||
|
b3fbcc171f | ||
|
d3f595dd0a | ||
|
19a0e6bd44 | ||
|
473c2cef32 | ||
|
28913b130c | ||
|
898b2090f3 | ||
|
77934c1d93 | ||
|
7e816424a9 | ||
|
6303109147 | ||
|
d72020f790 | ||
|
187c3bf903 | ||
|
50116d5bf6 | ||
|
1d1778983c | ||
|
e0de32fa3f | ||
|
cbe7427563 | ||
|
68cd00554e | ||
|
c1e8d73771 | ||
|
1ef7e09fe4 | ||
|
0263dd8e3f | ||
|
796f3cc540 | ||
|
24e183e53e | ||
|
bbd6023973 | ||
|
fcab8c27d8 | ||
|
39f686838d | ||
|
7894e7f789 | ||
|
f7d08a35cd | ||
|
d34fcf1db3 | ||
|
a0953546f7 | ||
|
df630dce6a | ||
|
86d07eb21c | ||
|
81049d0020 | ||
|
5a62fcab6d | ||
|
19266b2a3c | ||
|
0e89607838 | ||
|
cb3b87b5e1 | ||
|
8bbb54cbab | ||
|
f42dc01dd3 | ||
|
398ad4ac7f | ||
|
f9b68d5500 | ||
|
97e9677568 | ||
|
a302fee3cc | ||
|
846dd9adff | ||
|
c5df4d726a | ||
|
c8337c2333 | ||
|
57ebedf7f8 | ||
|
6a7fd37df9 | ||
|
3fdee713ed | ||
|
9ad55e44b4 | ||
|
94a35b3080 | ||
|
d38683ca2c | ||
|
b6fc528876 | ||
|
32d75e4774 | ||
|
60743f002e | ||
|
868fe8eae0 | ||
|
d7e5179ef1 | ||
|
82b6bac151 | ||
|
4e355903f9 | ||
|
7f992c1f37 | ||
|
077219ed94 | ||
|
b278d20bf3 | ||
|
61496e9322 | ||
|
92ad76807f | ||
|
fdd0c65722 | ||
|
ae602b040f | ||
|
fb20af6999 | ||
|
53384f6387 | ||
|
92058f17ef | ||
|
8b4715f671 | ||
|
9cf072cdd3 | ||
|
fae0439394 | ||
|
f5c226ebee | ||
|
b7b1453eb4 | ||
|
2c2c4789c6 | ||
|
870a0969ee | ||
|
3a3d267ba0 | ||
|
fd8040c9b0 | ||
|
1fe62c8a92 | ||
|
afca73ce0e | ||
|
66a128bf38 | ||
|
b700d470d1 | ||
|
3c8c4e4d2d | ||
|
89e1a898f1 | ||
|
8894e22ae2 | ||
|
9aeb895ca0 | ||
|
2bd0f2d912 | ||
|
44c47110a5 | ||
|
1343a91ef3 | ||
|
894ae67cb4 | ||
|
2faef47f66 | ||
|
9d6b51bfc1 | ||
|
ed25a9bc5f | ||
|
c840efc144 | ||
|
6a4a03ac57 | ||
|
006b6cab41 | ||
|
b9626c553f | ||
|
29b7e50da6 | ||
|
15e2888ad2 | ||
|
3e0f378b77 | ||
|
89037a6dd7 | ||
|
b1d103f658 | ||
|
3fd427b171 | ||
|
899ed68461 | ||
|
c33bc61dcb | ||
|
81736d28a2 | ||
|
f863bf725b | ||
|
6a2e7705f8 | ||
|
2281c4ef23 | ||
|
3af75b5461 | ||
|
f8ff5b60d8 | ||
|
39e567d3c3 | ||
|
ed4dd231b1 | ||
|
d99ec077dd | ||
|
e05726247a | ||
|
03b65c4059 | ||
|
50a432be7c | ||
|
84fc929edf | ||
|
31d6252071 | ||
|
fe787f3437 | ||
|
76c00bbd3b | ||
|
e5a2b22f18 | ||
|
f40669dbb4 | ||
|
e62fbf5640 | ||
|
213ea1d9a2 | ||
|
a43e12f075 | ||
|
945b47e317 | ||
|
0e68aeb5df | ||
|
0c307763ab | ||
|
893a1b5c17 | ||
|
0bab8bf59a | ||
|
e13e8c2cd3 | ||
|
92d17c693f | ||
|
1642880c4f | ||
|
69c1e12f0e | ||
|
177f7c1141 | ||
|
efcc919ad3 | ||
|
228e075369 | ||
|
32a845add4 | ||
|
6d80bfb5eb | ||
|
d65173af7b | ||
|
c02354a80f | ||
|
73b4dbc867 | ||
|
201bc8f9b4 | ||
|
92b7cabdc5 | ||
|
0754b46075 | ||
|
229b6f2844 | ||
|
5e5b00bc2b | ||
|
c48ed134f0 | ||
|
a5e81cafd2 | ||
|
d7c211b5ea | ||
|
f7171463f8 | ||
|
743d19e55b | ||
|
f892b2d007 | ||
|
7c5ffb8bcf | ||
|
74fa0fbc55 | ||
|
2fdf94d0d0 | ||
|
7c97e6c558 | ||
|
0aabb8b9cb | ||
|
6fc8f63adf | ||
|
ce9d3ec6e5 | ||
|
e1f4728ba5 | ||
|
d8e68ee377 | ||
|
9674377c21 | ||
|
a4c231454d | ||
|
28dcb5f1c8 | ||
|
88dd30de7d | ||
|
259bc7b29c | ||
|
f4a547d65f | ||
|
e00bb4c96e | ||
|
a9c663f5b7 | ||
|
cc50bd0f86 | ||
|
67be42f91d | ||
|
10ba41a1fc | ||
|
5fe3b9c24a | ||
|
2ee94d4b1e | ||
|
667e6861f4 | ||
|
7b36d25621 | ||
|
72613d8603 | ||
|
c0bd0bc57b | ||
|
55b80fabf5 | ||
|
fbc7198d3d | ||
|
199f3cca65 | ||
|
372e5cc1fe | ||
|
13b5380ad8 | ||
|
c68eb5c6d1 | ||
|
80dba827d5 | ||
|
17eb85bfa4 | ||
|
711e7c67c8 |
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,2 +1 @@
|
||||
kdelibs-4.4.3.tar.bz2
|
||||
kdelibs-4.4.4.tar.bz2
|
||||
/kdelibs-4.14.38.tar.xz
|
||||
|
27
Drop-Nepomuk-from-KParts-LINK_INTERFACE_LIBRARIES.patch
Normal file
27
Drop-Nepomuk-from-KParts-LINK_INTERFACE_LIBRARIES.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From 02966e348e37ebf6269aaed238e7ce67fbe958e7 Mon Sep 17 00:00:00 2001
|
||||
From: Hrvoje Senjan <hrvoje.senjan@gmail.com>
|
||||
Date: Sun, 25 May 2014 00:36:08 +0200
|
||||
Subject: [PATCH 1/1] Drop Nepomuk from KParts' LINK_INTERFACE_LIBRARIES
|
||||
|
||||
Nepomuk is only used in a private header, browserrun_p.h,
|
||||
thus it is not needed as KParts public dependancy
|
||||
Makes it possible to drop libsoprano-devel from libkde4-devel Requires
|
||||
---
|
||||
kparts/CMakeLists.txt | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/kparts/CMakeLists.txt b/kparts/CMakeLists.txt
|
||||
index 2eab2e8..e17ef5e 100644
|
||||
--- a/kparts/CMakeLists.txt
|
||||
+++ b/kparts/CMakeLists.txt
|
||||
@@ -39,7 +39,6 @@ target_link_libraries(kparts ${KDE4_KDECORE_LIBS} kdeui kio)
|
||||
target_link_libraries(kparts LINK_PUBLIC kio kdeui kdecore ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} )
|
||||
if(HAVE_NEPOMUK)
|
||||
target_link_libraries(kparts LINK_PRIVATE nepomuk nepomukutils)
|
||||
- target_link_libraries(kparts LINK_PUBLIC nepomuk nepomukutils )
|
||||
endif(HAVE_NEPOMUK)
|
||||
|
||||
set_target_properties(kparts PROPERTIES VERSION ${GENERIC_LIB_VERSION}
|
||||
--
|
||||
1.9.3
|
||||
|
21
Makefile
Normal file
21
Makefile
Normal file
@ -0,0 +1,21 @@
|
||||
# Makefile for source rpm: kdelibs
|
||||
# $Id$
|
||||
NAME := kdelibs
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attempt a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
6
SOLID_HAL_LEGACY.sh
Normal file
6
SOLID_HAL_LEGACY.sh
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
if [ -z "${SOLID_HAL_LEGACY}" ] ; then
|
||||
SOLID_HAL_LEGACY=1
|
||||
export SOLID_HAL_LEGACY
|
||||
fi
|
||||
|
14
kde4.csh
14
kde4.csh
@ -1,14 +0,0 @@
|
||||
## http://kde.ground.cz/tiki-index.php?page=Environment+Variables
|
||||
## for possible entries here
|
||||
|
||||
## Make sure KDEDIRS is set
|
||||
if ( ! $?KDEDIRS ) setenv KDEDIRS /usr
|
||||
|
||||
## When/if using prelinking, avoids use of kdeinit
|
||||
if ( -f /etc/sysconfig/prelink ) then
|
||||
set PRELINKING = `grep "^PRELINKING=" /etc/sysconfig/prelink | cut -d"=" -f2`
|
||||
if ( "$PRELINKING" == "yes" ) then
|
||||
if ( ! $?KDE_IS_PRELINKED ) setenv KDE_IS_PRELINKED 1
|
||||
endif
|
||||
unset PRELINKING
|
||||
endif
|
11
kde4.sh
11
kde4.sh
@ -1,11 +0,0 @@
|
||||
## http://kde.ground.cz/tiki-index.php?page=Environment+Variables
|
||||
## for possible entries here
|
||||
|
||||
## Make sure KDEDIRS is set
|
||||
[ -z "$KDEDIRS" ] && KDEDIRS="/usr" && export KDEDIRS
|
||||
|
||||
## When/if using prelinking, avoids (some) use of kdeinit
|
||||
if [ -z "$KDE_IS_PRELINKED" ] ; then
|
||||
grep -qs '^PRELINKING=yes' /etc/sysconfig/prelink && \
|
||||
KDE_IS_PRELINKED=1 && export KDE_IS_PRELINKED
|
||||
fi
|
@ -1,305 +0,0 @@
|
||||
diff -ur kdelibs-4.0.0/kde3support/kdeui/k3sconfig.cpp kdelibs-4.0.0-k3spell-hunspell/kde3support/kdeui/k3sconfig.cpp
|
||||
--- kdelibs-4.0.0/kde3support/kdeui/k3sconfig.cpp 2008-01-05 00:59:41.000000000 +0100
|
||||
+++ kdelibs-4.0.0-k3spell-hunspell/kde3support/kdeui/k3sconfig.cpp 2008-01-19 16:47:04.000000000 +0100
|
||||
@@ -1,6 +1,7 @@
|
||||
/* This file is part of the KDE libraries
|
||||
Copyright (C) 1997 David Sweet <dsweet@kde.org>
|
||||
Copyright (C) 2000-2001 Wolfram Diestel <wolfram@steloj.de>
|
||||
+ Copyright (C) 2007-2008 Kevin Kofler <Kevin@tigcc.ticalc.org>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
@@ -167,6 +168,7 @@
|
||||
clientcombo->addItem( i18nc("@item:inlistbox Spell checker", "<application>Aspell</application>") );
|
||||
clientcombo->addItem( i18nc("@item:inlistbox Spell checker", "<application>Hspell</application>") );
|
||||
clientcombo->addItem( i18nc("@item:inlistbox Spell checker", "<application>Zemberek</application>") );
|
||||
+ clientcombo->addItem( i18nc("@item:inlistbox Spell checker", "<application>Hunspell</application>") );
|
||||
connect( clientcombo, SIGNAL (activated(int)), this,
|
||||
SLOT (sChangeClient(int)) );
|
||||
glay->addWidget( clientcombo, 5, 1, 1, 2 );
|
||||
@@ -261,8 +263,10 @@
|
||||
dictcombo->addItem( i18nc("@item Spelling dictionary", "Turkish") );
|
||||
sChangeEncoding( KS_E_UTF8 );
|
||||
}
|
||||
- else
|
||||
+ else if ( iclient == KS_CLIENT_ASPELL )
|
||||
getAvailDictsAspell();
|
||||
+ else
|
||||
+ getAvailDictsHunspell();
|
||||
}
|
||||
emit configChanged();
|
||||
}
|
||||
@@ -420,8 +424,10 @@
|
||||
langfnames.append("");
|
||||
dictcombo->addItem( i18nc("@item Spelling dictionary", "Turkish") );
|
||||
}
|
||||
- else
|
||||
+ else if ( iclient == KS_CLIENT_ASPELL )
|
||||
getAvailDictsAspell();
|
||||
+ else
|
||||
+ getAvailDictsHunspell();
|
||||
|
||||
// select the used dictionary in the list
|
||||
int whichelement=-1;
|
||||
@@ -606,6 +612,63 @@
|
||||
}
|
||||
}
|
||||
|
||||
+void K3SpellConfig::getAvailDictsHunspell () {
|
||||
+
|
||||
+ langfnames.clear();
|
||||
+ dictcombo->clear();
|
||||
+ langfnames.append(""); // Default
|
||||
+ dictcombo->addItem( i18nc("@item Spelling dictionary",
|
||||
+ "<application>Hunspell</application> Default") );
|
||||
+
|
||||
+ // dictionary path
|
||||
+ QFileInfo dir ("/usr/share/myspell");
|
||||
+ if (!dir.exists() || !dir.isDir())
|
||||
+ dir.setFile ("/usr/share/hunspell");
|
||||
+ if (!dir.exists() || !dir.isDir()) return;
|
||||
+
|
||||
+ kDebug(750) << "K3SpellConfig::getAvailDictsHunspell "
|
||||
+ << dir.filePath() << " " << dir.path() << endl;
|
||||
+
|
||||
+ const QDir thedir (dir.filePath(),"*.dic");
|
||||
+ const QStringList entryList = thedir.entryList();
|
||||
+
|
||||
+ kDebug(750) << "K3SpellConfig" << thedir.path() << "\n";
|
||||
+ kDebug(750) << "entryList().count()="
|
||||
+ << entryList.count() << endl;
|
||||
+
|
||||
+ QStringList::const_iterator entryListItr = entryList.constBegin();
|
||||
+ const QStringList::const_iterator entryListEnd = entryList.constEnd();
|
||||
+
|
||||
+ for ( ; entryListItr != entryListEnd; ++entryListItr)
|
||||
+ {
|
||||
+ QString fname, lname, hname;
|
||||
+ fname = *entryListItr;
|
||||
+
|
||||
+ // remove .dic
|
||||
+ if (fname.endsWith(".dic")) fname.remove (fname.length()-4,4);
|
||||
+
|
||||
+ if (interpret (fname, lname, hname) && langfnames.first().isEmpty())
|
||||
+ { // This one is the KDE default language
|
||||
+ // so place it first in the lists (overwrite "Default")
|
||||
+
|
||||
+ langfnames.removeFirst();
|
||||
+ langfnames.prepend ( fname );
|
||||
+
|
||||
+ hname=i18nc("@item Spelling dictionary: %1 dictionary name, %2 file name",
|
||||
+ "Default - %1 [%2]", hname, fname);
|
||||
+
|
||||
+ dictcombo->setItemText (0,hname);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ langfnames.append (fname);
|
||||
+ hname=hname+" ["+fname+']';
|
||||
+
|
||||
+ dictcombo->addItem (hname);
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
void
|
||||
K3SpellConfig::fillDicts( QComboBox* box, QStringList* dictionaries )
|
||||
{
|
||||
@@ -685,8 +748,7 @@
|
||||
box->addItem( i18nc("@item Spelling dictionary", "Turkish") );
|
||||
langfnames.append("");
|
||||
sChangeEncoding( KS_E_UTF8 );
|
||||
- }
|
||||
- else {
|
||||
+ } else if ( iclient == KS_CLIENT_ASPELL ) {
|
||||
box->clear();
|
||||
langfnames.append(""); // Default
|
||||
box->addItem (i18nc("@item Spelling dictionary",
|
||||
@@ -766,6 +828,59 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
+ } else {
|
||||
+ box->clear();
|
||||
+ langfnames.append(""); // Default
|
||||
+ box->addItem( i18nc("@item Spelling dictionary",
|
||||
+ "<application>Hunspell</application> Default") );
|
||||
+
|
||||
+ // dictionary path
|
||||
+ QFileInfo dir ("/usr/share/myspell");
|
||||
+ if (!dir.exists() || !dir.isDir())
|
||||
+ dir.setFile ("/usr/share/hunspell");
|
||||
+ if (!dir.exists() || !dir.isDir()) return;
|
||||
+
|
||||
+ kDebug(750) << "K3SpellConfig::getAvailDictsHunspell "
|
||||
+ << dir.filePath() << " " << dir.path() << endl;
|
||||
+
|
||||
+ const QDir thedir (dir.filePath(),"*.dic");
|
||||
+ const QStringList entryList = thedir.entryList();
|
||||
+
|
||||
+ kDebug(750) << "K3SpellConfig" << thedir.path() << "\n";
|
||||
+ kDebug(750) << "entryList().count()="
|
||||
+ << entryList.count() << endl;
|
||||
+
|
||||
+ QStringList::const_iterator entryListItr = entryList.constBegin();
|
||||
+ const QStringList::const_iterator entryListEnd = entryList.constEnd();
|
||||
+
|
||||
+ for ( ; entryListItr != entryListEnd; ++entryListItr)
|
||||
+ {
|
||||
+ QString fname, lname, hname;
|
||||
+ fname = *entryListItr;
|
||||
+
|
||||
+ // remove .dic
|
||||
+ if (fname.endsWith(".dic")) fname.remove (fname.length()-4,4);
|
||||
+
|
||||
+ if (interpret (fname, lname, hname) && langfnames.first().isEmpty())
|
||||
+ { // This one is the KDE default language
|
||||
+ // so place it first in the lists (overwrite "Default")
|
||||
+
|
||||
+ langfnames.erase ( langfnames.begin() );
|
||||
+ langfnames.prepend ( fname );
|
||||
+
|
||||
+ hname=i18nc("@item Spelling dictionary: %1 dictionary name, %2 file name",
|
||||
+ "Default - %1 [%2]", hname, fname);
|
||||
+
|
||||
+ box->setItemText (0,hname);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ langfnames.append (fname);
|
||||
+ hname=hname+" ["+fname+']';
|
||||
+
|
||||
+ box->addItem (hname);
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
int whichelement = langfnames.indexOf(qsdict);
|
||||
if ( whichelement >= 0 ) {
|
||||
diff -ur kdelibs-4.0.0/kde3support/kdeui/k3sconfig.h kdelibs-4.0.0-k3spell-hunspell/kde3support/kdeui/k3sconfig.h
|
||||
--- kdelibs-4.0.0/kde3support/kdeui/k3sconfig.h 2008-01-05 00:59:41.000000000 +0100
|
||||
+++ kdelibs-4.0.0-k3spell-hunspell/kde3support/kdeui/k3sconfig.h 2008-01-19 16:25:43.000000000 +0100
|
||||
@@ -1,5 +1,6 @@
|
||||
/* This file is part of the KDE libraries
|
||||
Copyright (C) 1997 David Sweet <dsweet@kde.org>
|
||||
+ Copyright (C) 2007-2008 Kevin Kofler <Kevin@tigcc.ticalc.org>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
@@ -60,7 +61,8 @@
|
||||
KS_CLIENT_ISPELL=0,
|
||||
KS_CLIENT_ASPELL=1,
|
||||
KS_CLIENT_HSPELL=2,
|
||||
- KS_CLIENT_ZEMBEREK=3
|
||||
+ KS_CLIENT_ZEMBEREK=3,
|
||||
+ KS_CLIENT_HUNSPELL=4
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -287,6 +289,7 @@
|
||||
K3SpellConfigPrivate *const d;
|
||||
void getAvailDictsIspell();
|
||||
void getAvailDictsAspell();
|
||||
+ void getAvailDictsHunspell();
|
||||
};
|
||||
|
||||
#endif // KDELIBS_KSCONFIG_H
|
||||
diff -ur kdelibs-4.0.0/kde3support/kdeui/k3spell.cpp kdelibs-4.0.0-k3spell-hunspell/kde3support/kdeui/k3spell.cpp
|
||||
--- kdelibs-4.0.0/kde3support/kdeui/k3spell.cpp 2008-01-05 00:59:41.000000000 +0100
|
||||
+++ kdelibs-4.0.0-k3spell-hunspell/kde3support/kdeui/k3spell.cpp 2008-01-19 16:44:00.000000000 +0100
|
||||
@@ -2,6 +2,7 @@
|
||||
Copyright (C) 1997 David Sweet <dsweet@kde.org>
|
||||
Copyright (C) 2000-2001 Wolfram Diestel <wolfram@steloj.de>
|
||||
Copyright (C) 2003 Zack Rusin <zack@kde.org>
|
||||
+ Copyright (C) 2007-2008 Kevin Kofler <Kevin@tigcc.ticalc.org>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
@@ -218,9 +219,14 @@
|
||||
*proc << "zpspell";
|
||||
kDebug(750) << "Using zemberek(zpspell)";
|
||||
break;
|
||||
+ case KS_CLIENT_HUNSPELL:
|
||||
+ *proc << "hunspell";
|
||||
+ kDebug(750) << "Using hunspell";
|
||||
+ break;
|
||||
}
|
||||
|
||||
- if ( ksconfig->client() == KS_CLIENT_ISPELL || ksconfig->client() == KS_CLIENT_ASPELL )
|
||||
+ // Hunspell doesn't need all of these options, but it'll ignore those it doesn't understand.
|
||||
+ if ( ksconfig->client() == KS_CLIENT_ISPELL || ksconfig->client() == KS_CLIENT_ASPELL || ksconfig->client() == KS_CLIENT_HUNSPELL )
|
||||
{
|
||||
*proc << "-a" << "-S";
|
||||
|
||||
@@ -238,8 +244,8 @@
|
||||
*proc << "-t";
|
||||
break;
|
||||
case Nroff:
|
||||
- //only ispell supports
|
||||
- if ( ksconfig->client() == KS_CLIENT_ISPELL )
|
||||
+ //only ispell and hunspell support
|
||||
+ if ( ksconfig->client() == KS_CLIENT_ISPELL || ksconfig->client() == KS_CLIENT_HUNSPELL )
|
||||
*proc << "-n";
|
||||
break;
|
||||
case Text:
|
||||
@@ -276,7 +282,60 @@
|
||||
// option, so k3spell tries again without it. That's why as 'ps -ax'
|
||||
// shows "ispell -a -S ..." withou the "-Tlatin2" option.
|
||||
|
||||
- if ( trystart<1 ) {
|
||||
+ if ( ksconfig->client() == KS_CLIENT_HUNSPELL && trystart<1 ) {
|
||||
+ // Note: This sets I/O encoding. Hunspell correctly handles dictionary encoding != I/O encoding.
|
||||
+ // It will be faster if the I/O encoding matches the dictionary encoding, but using UTF-8 is always safe.
|
||||
+ switch ( ksconfig->encoding() )
|
||||
+ {
|
||||
+ case KS_E_LATIN1:
|
||||
+ *proc << "-i" << "ISO-8859-1";
|
||||
+ break;
|
||||
+ case KS_E_LATIN2:
|
||||
+ *proc << "-i" << "ISO-8859-2";
|
||||
+ break;
|
||||
+ case KS_E_LATIN3:
|
||||
+ *proc << "-i" << "ISO-8859-3";
|
||||
+ break;
|
||||
+ case KS_E_LATIN4:
|
||||
+ *proc << "-i" << "ISO-8859-4";
|
||||
+ break;
|
||||
+ case KS_E_LATIN5:
|
||||
+ *proc << "-i" << "ISO-8859-5";
|
||||
+ break;
|
||||
+ case KS_E_LATIN7:
|
||||
+ *proc << "-i" << "ISO-8859-7";
|
||||
+ break;
|
||||
+ case KS_E_LATIN8:
|
||||
+ *proc << "-i" << "ISO-8859-8";
|
||||
+ break;
|
||||
+ case KS_E_LATIN9:
|
||||
+ *proc << "-i" << "ISO-8859-9";
|
||||
+ break;
|
||||
+ case KS_E_LATIN13:
|
||||
+ *proc << "-i" << "ISO-8859-13";
|
||||
+ break;
|
||||
+ case KS_E_LATIN15:
|
||||
+ *proc << "-i" << "ISO-8859-15";
|
||||
+ break;
|
||||
+ case KS_E_UTF8:
|
||||
+ *proc << "-i" << "UTF-8";
|
||||
+ break;
|
||||
+ case KS_E_KOI8R:
|
||||
+ *proc << "-i" << "KOI8-R";
|
||||
+ break;
|
||||
+ case KS_E_KOI8U:
|
||||
+ *proc << "-i" << "KOI8-U";
|
||||
+ break;
|
||||
+ case KS_E_CP1251:
|
||||
+ *proc << "-i" << "CP1251";
|
||||
+ break;
|
||||
+ case KS_E_CP1255:
|
||||
+ *proc << "-i" << "CP1255";
|
||||
+ break;
|
||||
+ default:
|
||||
+ break;
|
||||
+ }
|
||||
+ } else if ( trystart<1 ) {
|
||||
switch ( ksconfig->encoding() )
|
||||
{
|
||||
case KS_E_LATIN1:
|
@ -1,12 +0,0 @@
|
||||
diff -up kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp.branding kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp
|
||||
--- kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp.branding 2008-01-04 18:00:15.000000000 -0600
|
||||
+++ kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp 2008-03-07 14:49:46.000000000 -0600
|
||||
@@ -73,7 +73,7 @@ KProtocolManagerPrivate::~KProtocolManag
|
||||
|
||||
// DEFAULT USERAGENT STRING
|
||||
#define CFG_DEFAULT_UAGENT(X) \
|
||||
-QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko)") \
|
||||
+QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko) Fedora/@@VERSION_RELEASE@@") \
|
||||
.arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(X).arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(KDE_VERSION_RELEASE)
|
||||
|
||||
#define PRIVATE_DATA \
|
@ -1,11 +0,0 @@
|
||||
diff -Naur kdelibs-4.1.70/cmake/modules/FindKDE4Internal.cmake kdelibs-4.1.70.cmake/cmake/modules/FindKDE4Internal.cmake
|
||||
--- kdelibs-4.1.70/cmake/modules/FindKDE4Internal.cmake 2008-10-19 16:56:45.000000000 +0200
|
||||
+++ kdelibs-4.1.70.cmake/cmake/modules/FindKDE4Internal.cmake 2008-10-19 17:06:14.000000000 +0200
|
||||
@@ -817,6 +817,7 @@
|
||||
# CMake generators if no build type is set.
|
||||
if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE RelWithDebInfo)
|
||||
+ set(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE})
|
||||
endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
|
@ -1,26 +0,0 @@
|
||||
diff -Naur kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.72.kstandarddirs/kdecore/kernel/kstandarddirs.cpp
|
||||
--- kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp 2008-11-12 18:31:44.000000000 +0100
|
||||
+++ kdelibs-4.1.72.kstandarddirs/kdecore/kernel/kstandarddirs.cpp 2008-11-12 18:38:40.000000000 +0100
|
||||
@@ -1002,7 +1002,9 @@
|
||||
pit != prefixList->end();
|
||||
++pit)
|
||||
{
|
||||
- if((*pit)!=installprefix||installdir.isEmpty())
|
||||
+ // "exe" never has a custom install path, and the check triggers
|
||||
+ // a false positive due to the libexecdir patch
|
||||
+ if((*pit)!=installprefix||installdir.isEmpty()||!strcmp("exe", type))
|
||||
{
|
||||
for (QStringList::ConstIterator it = dirs.constBegin();
|
||||
it != dirs.constEnd(); ++it)
|
||||
@@ -1016,6 +1018,11 @@
|
||||
if ((local || testdir.exists()) && !candidates.contains(path))
|
||||
candidates.append(path);
|
||||
}
|
||||
+ // special-case "config" (forward porting Chris Cheney's
|
||||
+ // hack) - we want /etc/kde after the local config paths
|
||||
+ // and before the ones in /usr (including kde-profile)
|
||||
+ if (local && !strcmp("config", type))
|
||||
+ candidates.append("/etc/kde/");
|
||||
local = false;
|
||||
}
|
||||
else
|
@ -1,77 +0,0 @@
|
||||
diff -Naur kdelibs-4.1.72/kdecore/config/kconfig.cpp kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig.cpp
|
||||
--- kdelibs-4.1.72/kdecore/config/kconfig.cpp 2008-10-23 01:05:09.000000000 +0200
|
||||
+++ kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig.cpp 2008-11-10 17:38:33.000000000 +0100
|
||||
@@ -61,12 +61,6 @@
|
||||
{
|
||||
sGlobalFileName = componentData.dirs()->saveLocation("config") +
|
||||
QString::fromLatin1("kdeglobals");
|
||||
- if (wantGlobals()) {
|
||||
- const KStandardDirs *const dirs = componentData.dirs();
|
||||
- foreach(const QString& dir, dirs->findAllResources("config", QLatin1String("kdeglobals")) +
|
||||
- dirs->findAllResources("config", QLatin1String("system.kdeglobals")))
|
||||
- globalFiles.push_front(dir);
|
||||
- }
|
||||
const QString etc_kderc =
|
||||
#ifdef Q_WS_WIN
|
||||
QFile::decodeName( qgetenv("WINDIR") + "/kde4rc" );
|
||||
@@ -76,15 +70,11 @@
|
||||
KEntryMap tmp;
|
||||
// first entry is always /etc/kderc or empty if cannot read
|
||||
if (KStandardDirs::checkAccess(etc_kderc, R_OK)) {
|
||||
- if (!globalFiles.contains(etc_kderc))
|
||||
- globalFiles.push_front(etc_kderc);
|
||||
-
|
||||
if (!mappingsRegistered) {
|
||||
KSharedPtr<KConfigBackend> backend = KConfigBackend::create(componentData, etc_kderc, QLatin1String("INI"));
|
||||
backend->parseConfig( "en_US", tmp, KConfigBackend::ParseDefaults);
|
||||
}
|
||||
} else {
|
||||
- globalFiles.push_front(QString());
|
||||
mappingsRegistered = true;
|
||||
}
|
||||
|
||||
@@ -461,10 +451,31 @@
|
||||
|
||||
void KConfigPrivate::parseGlobalFiles()
|
||||
{
|
||||
+ QStringList globalFiles;
|
||||
+
|
||||
+ if (wantGlobals()) {
|
||||
+ const KStandardDirs *const dirs = componentData.dirs();
|
||||
+ foreach(const QString& dir, dirs->findAllResources("config", QLatin1String("kdeglobals")) +
|
||||
+ dirs->findAllResources("config", QLatin1String("system.kdeglobals")))
|
||||
+ globalFiles.push_front(dir);
|
||||
+ }
|
||||
+ const QString etc_kderc =
|
||||
+#ifdef Q_WS_WIN
|
||||
+ QFile::decodeName( QByteArray(::getenv("WINDIR")) + "\\kde4rc" );
|
||||
+#else
|
||||
+ QLatin1String("/etc/kde4rc");
|
||||
+#endif
|
||||
+ KEntryMap tmp;
|
||||
+ // first entry is always /etc/kderc or empty if cannot read
|
||||
+ if (KStandardDirs::checkAccess(etc_kderc, R_OK)) {
|
||||
+ if (!globalFiles.contains(etc_kderc))
|
||||
+ globalFiles.push_front(etc_kderc);
|
||||
+ } else {
|
||||
+ globalFiles.push_front(QString());
|
||||
+ }
|
||||
+
|
||||
// qDebug() << "parsing global files" << globalFiles;
|
||||
|
||||
- // TODO: can we cache the values in etc_kderc / other global files
|
||||
- // on a per-application basis?
|
||||
const QByteArray utf8Locale = locale.toUtf8();
|
||||
foreach(const QString& file, globalFiles) {
|
||||
KConfigBackend::ParseOptions parseOpts = KConfigBackend::ParseGlobal|KConfigBackend::ParseExpansions;
|
||||
diff -Naur kdelibs-4.1.72/kdecore/config/kconfig_p.h kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig_p.h
|
||||
--- kdelibs-4.1.72/kdecore/config/kconfig_p.h 2008-06-03 11:34:54.000000000 +0200
|
||||
+++ kdelibs-4.1.72.no-cache-kdeglobals-path/kdecore/config/kconfig_p.h 2008-11-10 17:38:33.000000000 +0100
|
||||
@@ -86,7 +86,6 @@
|
||||
|
||||
KEntryMap entryMap;
|
||||
QString backendType;
|
||||
- QStringList globalFiles;
|
||||
QStack<QString> extraFiles;
|
||||
|
||||
QString locale;
|
16
kdelibs-4.10.0-SOLID_UPNP.patch
Normal file
16
kdelibs-4.10.0-SOLID_UPNP.patch
Normal file
@ -0,0 +1,16 @@
|
||||
diff -up kdelibs-4.10.0/solid/solid/managerbase.cpp.SOLID_UPNP kdelibs-4.10.0/solid/solid/managerbase.cpp
|
||||
--- kdelibs-4.10.0/solid/solid/managerbase.cpp.SOLID_UPNP 2013-01-23 15:44:27.000000000 -0600
|
||||
+++ kdelibs-4.10.0/solid/solid/managerbase.cpp 2013-01-31 07:48:05.058342162 -0600
|
||||
@@ -98,7 +98,11 @@ void Solid::ManagerBasePrivate::loadBack
|
||||
# endif
|
||||
|
||||
# if defined (HUPNP_FOUND)
|
||||
- m_backends << new Solid::Backends::UPnP::UPnPDeviceManager(0);
|
||||
+ bool solidUpnpEnabled
|
||||
+ = QString::fromLocal8Bit(qgetenv("SOLID_UPNP")).toInt()==1;
|
||||
+ if (solidUpnpEnabled) {
|
||||
+ m_backends << new Solid::Backends::UPnP::UPnPDeviceManager(0);
|
||||
+ }
|
||||
# endif
|
||||
}
|
||||
}
|
11
kdelibs-4.10.0-branding.patch
Normal file
11
kdelibs-4.10.0-branding.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up kdelibs-4.10.0/kio/kio/kprotocolmanager.cpp.branding kdelibs-4.10.0/kio/kio/kprotocolmanager.cpp
|
||||
--- kdelibs-4.10.0/kio/kio/kprotocolmanager.cpp.branding 2013-01-23 15:44:24.000000000 -0600
|
||||
+++ kdelibs-4.10.0/kio/kio/kprotocolmanager.cpp 2013-01-31 07:41:09.248540500 -0600
|
||||
@@ -743,6 +743,7 @@ QString KProtocolManager::defaultUserAge
|
||||
d->useragent += QString::number(KDE::versionMajor());
|
||||
d->useragent += QL1C('.');
|
||||
d->useragent += QString::number(KDE::versionMinor());
|
||||
+ d->useragent += QL1S(" Fedora/@@VERSION_RELEASE@@");
|
||||
}
|
||||
else
|
||||
{
|
11
kdelibs-4.10.0-cmake.patch
Normal file
11
kdelibs-4.10.0-cmake.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake.xxcmake kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake
|
||||
--- kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake.xxcmake 2013-01-31 07:45:31.958256176 -0600
|
||||
+++ kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake 2013-01-31 07:45:31.989255789 -0600
|
||||
@@ -955,6 +955,7 @@ endif(WIN32)
|
||||
# CMake generators if no build type is set.
|
||||
if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE RelWithDebInfo)
|
||||
+ set(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE})
|
||||
endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
diff -up kdelibs-4.2.85/kdeui/icons/kicontheme.cpp.kde149705 kdelibs-4.2.85/kdeui/icons/kicontheme.cpp
|
||||
--- kdelibs-4.2.85/kdeui/icons/kicontheme.cpp.kde149705 2009-04-15 12:26:44.000000000 +0200
|
||||
+++ kdelibs-4.2.85/kdeui/icons/kicontheme.cpp 2009-05-11 16:01:29.000000000 +0200
|
||||
@@ -525,7 +525,7 @@ QString KIconTheme::current()
|
||||
diff -up kdelibs-4.10.0/kdeui/icons/kicontheme.cpp.kde149705 kdelibs-4.10.0/kdeui/icons/kicontheme.cpp
|
||||
--- kdelibs-4.10.0/kdeui/icons/kicontheme.cpp.kde149705 2013-01-23 15:44:19.000000000 -0600
|
||||
+++ kdelibs-4.10.0/kdeui/icons/kicontheme.cpp 2013-01-31 07:40:19.163166653 -0600
|
||||
@@ -527,7 +527,7 @@ QString KIconTheme::current()
|
||||
}
|
||||
|
||||
KConfigGroup cg(KGlobal::config(), "Icons");
|
||||
@ -10,10 +10,10 @@ diff -up kdelibs-4.2.85/kdeui/icons/kicontheme.cpp.kde149705 kdelibs-4.2.85/kdeu
|
||||
if ( *_theme == QLatin1String("hicolor") ) {
|
||||
*_theme = defaultThemeName();
|
||||
}
|
||||
diff -up kdelibs-4.2.85/kdeui/kernel/kglobalsettings.cpp.kde149705 kdelibs-4.2.85/kdeui/kernel/kglobalsettings.cpp
|
||||
--- kdelibs-4.2.85/kdeui/kernel/kglobalsettings.cpp.kde149705 2009-03-27 15:47:33.000000000 +0100
|
||||
+++ kdelibs-4.2.85/kdeui/kernel/kglobalsettings.cpp 2009-05-11 16:00:06.000000000 +0200
|
||||
@@ -856,7 +856,7 @@ void KGlobalSettings::Private::applyGUIS
|
||||
diff -up kdelibs-4.10.0/kdeui/kernel/kglobalsettings.cpp.kde149705 kdelibs-4.10.0/kdeui/kernel/kglobalsettings.cpp
|
||||
--- kdelibs-4.10.0/kdeui/kernel/kglobalsettings.cpp.kde149705 2013-01-23 15:44:19.000000000 -0600
|
||||
+++ kdelibs-4.10.0/kdeui/kernel/kglobalsettings.cpp 2013-01-31 07:40:19.163166653 -0600
|
||||
@@ -942,7 +942,7 @@ void KGlobalSettings::Private::applyGUIS
|
||||
if (kde_overrideStyle.isEmpty()) {
|
||||
const QString &defaultStyle = KStyle::defaultStyle();
|
||||
const KConfigGroup pConfig(KGlobal::config(), "General");
|
||||
@ -22,9 +22,9 @@ diff -up kdelibs-4.2.85/kdeui/kernel/kglobalsettings.cpp.kde149705 kdelibs-4.2.8
|
||||
|
||||
if (styleStr.isEmpty() ||
|
||||
// check whether we already use the correct style to return then
|
||||
diff -up kdelibs-4.2.85/kutils/kdeglobals.kcfg.kde149705 kdelibs-4.2.85/kutils/kdeglobals.kcfg
|
||||
--- kdelibs-4.2.85/kutils/kdeglobals.kcfg.kde149705 2009-04-15 12:26:45.000000000 +0200
|
||||
+++ kdelibs-4.2.85/kutils/kdeglobals.kcfg 2009-05-11 16:00:06.000000000 +0200
|
||||
diff -up kdelibs-4.10.0/kutils/kdeglobals.kcfg.kde149705 kdelibs-4.10.0/kutils/kdeglobals.kcfg
|
||||
--- kdelibs-4.10.0/kutils/kdeglobals.kcfg.kde149705 2013-01-23 15:44:26.000000000 -0600
|
||||
+++ kdelibs-4.10.0/kutils/kdeglobals.kcfg 2013-01-31 07:40:19.164166641 -0600
|
||||
@@ -24,6 +24,10 @@
|
||||
<whatsthis>The name of the widget style, for example "keramik" or "plastik". Without quotes.</whatsthis>
|
||||
<default>keramik</default>
|
107
kdelibs-4.10.0-no_rpath.patch
Normal file
107
kdelibs-4.10.0-no_rpath.patch
Normal file
@ -0,0 +1,107 @@
|
||||
diff -up kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake.no_rpath kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake
|
||||
--- kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake.no_rpath 2013-01-31 07:47:15.581960702 -0600
|
||||
+++ kdelibs-4.10.0/cmake/modules/FindKDE4Internal.cmake 2013-01-31 07:47:15.583960677 -0600
|
||||
@@ -1050,7 +1050,7 @@ if (UNIX)
|
||||
|
||||
set(CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
||||
- set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
||||
endif (APPLE)
|
||||
endif (UNIX)
|
||||
|
||||
diff -up kdelibs-4.10.0/kdewidgets/CMakeLists.txt.no_rpath kdelibs-4.10.0/kdewidgets/CMakeLists.txt
|
||||
--- kdelibs-4.10.0/kdewidgets/CMakeLists.txt.no_rpath 2013-01-31 07:47:15.556961014 -0600
|
||||
+++ kdelibs-4.10.0/kdewidgets/CMakeLists.txt 2013-01-31 07:47:15.583960677 -0600
|
||||
@@ -46,14 +46,14 @@ if(QT_QTDESIGNER_FOUND)
|
||||
kde4_add_plugin(kdewidgets ${kdewidgets_PART_SRCS})
|
||||
|
||||
target_link_libraries(kdewidgets ${KDE4_KIO_LIBS})
|
||||
- if(NOT WIN32)
|
||||
- set_target_properties(kdewidgets PROPERTIES
|
||||
- INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
- SKIP_BUILD_RPATH TRUE
|
||||
- BUILD_WITH_INSTALL_RPATH TRUE
|
||||
- INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
- )
|
||||
- endif(NOT WIN32)
|
||||
+# if(NOT WIN32)
|
||||
+# set_target_properties(kdewidgets PROPERTIES
|
||||
+# INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
+# SKIP_BUILD_RPATH TRUE
|
||||
+# BUILD_WITH_INSTALL_RPATH TRUE
|
||||
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
+# )
|
||||
+# endif(NOT WIN32)
|
||||
|
||||
install(TARGETS kdewidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
|
||||
|
||||
@@ -76,14 +76,14 @@ if(QT_QTDESIGNER_FOUND)
|
||||
kde4_add_plugin(kdedeprecated ${kdedeprecated_PART_SRCS})
|
||||
|
||||
target_link_libraries(kdedeprecated ${KDE4_KIO_LIBS})
|
||||
- if(NOT WIN32)
|
||||
- set_target_properties(kdedeprecated PROPERTIES
|
||||
- INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
- SKIP_BUILD_RPATH TRUE
|
||||
- BUILD_WITH_INSTALL_RPATH TRUE
|
||||
- INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
- )
|
||||
- endif(NOT WIN32)
|
||||
+# if(NOT WIN32)
|
||||
+# set_target_properties(kdedeprecated PROPERTIES
|
||||
+# INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
+# SKIP_BUILD_RPATH TRUE
|
||||
+# BUILD_WITH_INSTALL_RPATH TRUE
|
||||
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
+# )
|
||||
+# endif(NOT WIN32)
|
||||
|
||||
install(TARGETS kdedeprecated DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
|
||||
endif(NOT KDE_NO_DEPRECATED)
|
||||
@@ -111,14 +111,14 @@ if(QT_QTDESIGNER_FOUND)
|
||||
kde4_add_plugin(kdewebkitwidgets ${kdewebkitwidgets_PART_SRCS})
|
||||
|
||||
target_link_libraries(kdewebkitwidgets ${KDE4_KDEUI_LIBS} ${KDE4_KDEWEBKIT_LIBS} ${QT_QTWEBKIT_LIBRARY})
|
||||
- if(NOT WIN32)
|
||||
- set_target_properties(kdewebkitwidgets PROPERTIES
|
||||
- INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
- SKIP_BUILD_RPATH TRUE
|
||||
- BUILD_WITH_INSTALL_RPATH TRUE
|
||||
- INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
- )
|
||||
- endif(NOT WIN32)
|
||||
+# if(NOT WIN32)
|
||||
+# set_target_properties(kdewebkitwidgets PROPERTIES
|
||||
+# INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
+# SKIP_BUILD_RPATH TRUE
|
||||
+# BUILD_WITH_INSTALL_RPATH TRUE
|
||||
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
+# )
|
||||
+# endif(NOT WIN32)
|
||||
|
||||
install(TARGETS kdewebkitwidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
|
||||
|
||||
@@ -147,14 +147,14 @@ if(QT_QTDESIGNER_FOUND)
|
||||
kde4_add_plugin(kde3supportwidgets ${kde3supportwidgets_PART_SRCS})
|
||||
|
||||
target_link_libraries(kde3supportwidgets ${KDE4_KDE3SUPPORT_LIBS} ${KDE4_KIO_LIBS})
|
||||
- if(NOT WIN32)
|
||||
- set_target_properties(kde3supportwidgets PROPERTIES
|
||||
- INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
- SKIP_BUILD_RPATH TRUE
|
||||
- BUILD_WITH_INSTALL_RPATH TRUE
|
||||
- INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
- )
|
||||
- endif(NOT WIN32)
|
||||
+# if(NOT WIN32)
|
||||
+# set_target_properties(kde3supportwidgets PROPERTIES
|
||||
+# INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
+# SKIP_BUILD_RPATH TRUE
|
||||
+# BUILD_WITH_INSTALL_RPATH TRUE
|
||||
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
+# )
|
||||
+# endif(NOT WIN32)
|
||||
|
||||
install(TARGETS kde3supportwidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
|
||||
endif (QT_QT3SUPPORT_FOUND)
|
@ -1,6 +1,6 @@
|
||||
diff -ur kdelibs-4.1.0/kded/applications.menu kdelibs-4.1.0-xdg-menu/kded/applications.menu
|
||||
--- kdelibs-4.1.0/kded/applications.menu 2008-05-21 13:07:34.000000000 +0200
|
||||
+++ kdelibs-4.1.0-xdg-menu/kded/applications.menu 2008-08-23 09:45:03.000000000 +0200
|
||||
diff -up kdelibs-4.10.0/kded/applications.menu.Administration-menu kdelibs-4.10.0/kded/applications.menu
|
||||
--- kdelibs-4.10.0/kded/applications.menu.Administration-menu 2013-01-23 15:44:19.000000000 -0600
|
||||
+++ kdelibs-4.10.0/kded/applications.menu 2013-01-31 07:42:28.173553801 -0600
|
||||
@@ -31,29 +31,31 @@
|
||||
<Category>Core</Category>
|
||||
<Not><Category>KDE</Category></Not>
|
||||
@ -50,7 +50,7 @@ diff -ur kdelibs-4.1.0/kded/applications.menu kdelibs-4.1.0-xdg-menu/kded/applic
|
||||
<Name>Development</Name>
|
||||
<Directory>kde-development.directory</Directory>
|
||||
<Menu>
|
||||
@@ -358,7 +360,11 @@
|
||||
@@ -369,7 +371,11 @@
|
||||
<Name>Settingsmenu</Name>
|
||||
<Directory>kde-settingsmenu.directory</Directory>
|
||||
<Include>
|
||||
@ -63,7 +63,7 @@ diff -ur kdelibs-4.1.0/kded/applications.menu kdelibs-4.1.0-xdg-menu/kded/applic
|
||||
</Include>
|
||||
</Menu>
|
||||
<Menu>
|
||||
@@ -367,7 +373,9 @@
|
||||
@@ -378,7 +384,9 @@
|
||||
<Include>
|
||||
<And>
|
||||
<Category>System</Category>
|
15
kdelibs-4.11.3-arm.patch
Normal file
15
kdelibs-4.11.3-arm.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff -up kdelibs-4.11.3/plasma/corona.cpp.than kdelibs-4.11.3/plasma/corona.cpp
|
||||
--- kdelibs-4.11.3/plasma/corona.cpp.than 2013-12-02 16:46:19.542820822 +0100
|
||||
+++ kdelibs-4.11.3/plasma/corona.cpp 2013-12-02 17:53:04.919830893 +0100
|
||||
@@ -388,7 +388,11 @@ void Corona::addOffscreenWidget(QGraphic
|
||||
}
|
||||
|
||||
d->offscreenWidgets[i] = widget;
|
||||
+#if defined(arm) || defined(__arm__)
|
||||
+ widget->setPos((-i - 1) * 2000, -2000);
|
||||
+#else
|
||||
widget->setPos((-i - 1) * QWIDGETSIZE_MAX, -QWIDGETSIZE_MAX);
|
||||
+#endif
|
||||
|
||||
QGraphicsWidget *pw = widget->parentWidget();
|
||||
widget->setParentItem(0);
|
54
kdelibs-4.11.3-libexecdir.patch
Normal file
54
kdelibs-4.11.3-libexecdir.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff -up kdelibs-4.11.3/kdecore/kernel/kstandarddirs.cpp.libexecdir kdelibs-4.11.3/kdecore/kernel/kstandarddirs.cpp
|
||||
--- kdelibs-4.11.3/kdecore/kernel/kstandarddirs.cpp.libexecdir 2013-06-28 12:03:40.883340083 -0500
|
||||
+++ kdelibs-4.11.3/kdecore/kernel/kstandarddirs.cpp 2013-11-01 15:44:00.780783690 -0500
|
||||
@@ -1871,7 +1871,7 @@ void KStandardDirs::addKDEDefaults()
|
||||
addResourceType(types_string + types_indices[index], 0, types_string + types_indices[index+1], true);
|
||||
index+=2;
|
||||
}
|
||||
- addResourceType("exe", "lib", "kde4/libexec", true );
|
||||
+ addResourceType("exe", 0, "libexec/kde4", true );
|
||||
|
||||
addResourceDir("home", QDir::homePath(), false);
|
||||
|
||||
diff -up kdelibs-4.11.3/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir kdelibs-4.11.3/kdecore/kernel/kstandarddirs_unix.cpp
|
||||
--- kdelibs-4.11.3/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir 2013-06-28 12:03:40.884340190 -0500
|
||||
+++ kdelibs-4.11.3/kdecore/kernel/kstandarddirs_unix.cpp 2013-11-01 15:44:00.782783770 -0500
|
||||
@@ -63,7 +63,7 @@ QString KStandardDirs::installPath(const
|
||||
if (strcmp("lib", type) == 0)
|
||||
return QFile::decodeName(LIB_INSTALL_DIR "/");
|
||||
if (strcmp("libexec", type) == 0)
|
||||
- return QFile::decodeName(KDEDIR "/lib" KDELIBSUFF "/kde4/libexec/");
|
||||
+ return QFile::decodeName(LIBEXEC_INSTALL_DIR "/");
|
||||
if (strcmp("locale", type) == 0)
|
||||
return QFile::decodeName(LOCALE_INSTALL_DIR "/");
|
||||
break;
|
||||
diff -up kdelibs-4.11.3/kdecore/tests/kstandarddirstest.cpp.libexecdir kdelibs-4.11.3/kdecore/tests/kstandarddirstest.cpp
|
||||
--- kdelibs-4.11.3/kdecore/tests/kstandarddirstest.cpp.libexecdir 2013-11-01 10:45:56.409145508 -0500
|
||||
+++ kdelibs-4.11.3/kdecore/tests/kstandarddirstest.cpp 2013-11-01 15:50:20.473658147 -0500
|
||||
@@ -96,8 +96,9 @@ void KStandarddirsTest::testFindResource
|
||||
#define KIOSLAVE "bin/kioslave.exe"
|
||||
#else
|
||||
#define EXT ""
|
||||
-#define KIOSLAVE "kde4/libexec/kioslave"
|
||||
+#define KIOSLAVE "libexec/kde4/kioslave"
|
||||
#endif
|
||||
+
|
||||
const QString bin = KGlobal::dirs()->findResource( "exe", "kioslave" EXT );
|
||||
QVERIFY( !bin.isEmpty() );
|
||||
QVERIFY( bin.endsWith( KIOSLAVE ) );
|
||||
@@ -248,11 +249,13 @@ void KStandarddirsTest::testFindExe()
|
||||
// findExe with a result in libexec
|
||||
const QString lnusertemp = KGlobal::dirs()->findExe( "lnusertemp" );
|
||||
QVERIFY( !lnusertemp.isEmpty() );
|
||||
- QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY ) );
|
||||
+ QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY )
|
||||
+ || lnusertemp.endsWith( "libexec/kde4/lnusertemp" EXT, PATH_SENSITIVITY ) );
|
||||
|
||||
// locate("exe") with a result in libexec
|
||||
const QString locateExeResult = KGlobal::dirs()->locate("exe", "lnusertemp");
|
||||
- QVERIFY(locateExeResult.endsWith("lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY));
|
||||
+ QVERIFY(locateExeResult.endsWith("lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY)
|
||||
+ || locateExeResult.endsWith("libexec/kde4/lnusertemp" EXT, PATH_SENSITIVITY) );
|
||||
|
||||
// findExe with relative path
|
||||
const QString pwd = QDir::currentPath();
|
25
kdelibs-4.11.97-kstandarddirs.patch
Normal file
25
kdelibs-4.11.97-kstandarddirs.patch
Normal file
@ -0,0 +1,25 @@
|
||||
diff -up kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp.kstandarddirs kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp
|
||||
--- kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp.kstandarddirs 2013-11-30 21:24:01.637163800 -0600
|
||||
+++ kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp 2013-11-30 21:35:27.166292739 -0600
|
||||
@@ -1149,7 +1149,8 @@ QStringList KStandardDirs::KStandardDirs
|
||||
pit != prefixList->end();
|
||||
++pit)
|
||||
{
|
||||
- if((*pit).compare(installprefix, cs) != 0 || installdir.isEmpty())
|
||||
+ // "exe" never has a custom install path, and the check triggers a false positive due to the libexecdir patch
|
||||
+ if((*pit).compare(installprefix, cs) != 0 || installdir.isEmpty() || !strcmp("exe", type))
|
||||
{
|
||||
for (QStringList::ConstIterator it = dirs.constBegin();
|
||||
it != dirs.constEnd(); ++it)
|
||||
@@ -1163,6 +1164,11 @@ QStringList KStandardDirs::KStandardDirs
|
||||
if ((local || testdir.exists()) && !candidates.contains(path, cs))
|
||||
candidates.append(path);
|
||||
}
|
||||
+ // special-case "config" (forward porting Chris Cheney's
|
||||
+ // hack) - we want /etc/kde after the local config paths
|
||||
+ // and before the ones in /usr (including kde-profile)
|
||||
+ if (local && !strcmp("config", type))
|
||||
+ candidates.append(QLatin1String("/etc/kde/"));
|
||||
local = false;
|
||||
}
|
||||
else
|
12
kdelibs-4.12.90-dot.patch
Normal file
12
kdelibs-4.12.90-dot.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kdelibs-4.12.90/doc/common/Doxyfile.global.dot kdelibs-4.12.90/doc/common/Doxyfile.global
|
||||
--- kdelibs-4.12.90/doc/common/Doxyfile.global.dot 2014-03-17 13:15:23.252517997 -0500
|
||||
+++ kdelibs-4.12.90/doc/common/Doxyfile.global 2014-03-17 13:16:02.472100942 -0500
|
||||
@@ -1360,7 +1360,7 @@ HIDE_UNDOC_RELATIONS = NO
|
||||
# toolkit from AT&T and Lucent Bell Labs. The other options in this section
|
||||
# have no effect if this option is set to NO (the default)
|
||||
|
||||
-HAVE_DOT = YES
|
||||
+HAVE_DOT = NO
|
||||
|
||||
# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
|
||||
# The default size is 10pt.
|
17
kdelibs-4.13.2-invokeTerminal.patch
Normal file
17
kdelibs-4.13.2-invokeTerminal.patch
Normal file
@ -0,0 +1,17 @@
|
||||
diff -up kdelibs-4.13.2/kdecore/kernel/ktoolinvocation_x11.cpp.orig kdelibs-4.13.2/kdecore/kernel/ktoolinvocation_x11.cpp
|
||||
--- kdelibs-4.13.2/kdecore/kernel/ktoolinvocation_x11.cpp.orig 2014-07-11 16:54:51.000000000 +0200
|
||||
+++ kdelibs-4.13.2/kdecore/kernel/ktoolinvocation_x11.cpp 2014-07-11 16:57:31.000000000 +0200
|
||||
@@ -412,11 +412,9 @@ void KToolInvocation::invokeTerminal(con
|
||||
// directory before launching them, see below.
|
||||
}
|
||||
|
||||
- QString error;
|
||||
- if (self()->startServiceInternal("kdeinit_exec_with_workdir",
|
||||
- cmd, cmdTokens, &error, 0, NULL, startup_id, false, workdir)) {
|
||||
+ if (!QProcess::startDetached(cmd, cmdTokens)) {
|
||||
KMessage::message(KMessage::Error,
|
||||
- i18n("Could not launch the terminal client:\n\n%1", error),
|
||||
+ i18n("Could not launch the terminal client"),
|
||||
i18n("Could not launch Terminal Client"));
|
||||
}
|
||||
}
|
12
kdelibs-4.14-14-vfolder_spam.patch
Normal file
12
kdelibs-4.14-14-vfolder_spam.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kdelibs-4.14.14/kded/vfolder_menu.cpp.vfolder_spam kdelibs-4.14.14/kded/vfolder_menu.cpp
|
||||
--- kdelibs-4.14.14/kded/vfolder_menu.cpp.vfolder_spam 2015-11-04 16:29:10.000000000 -0600
|
||||
+++ kdelibs-4.14.14/kded/vfolder_menu.cpp 2015-12-09 08:45:49.861988284 -0600
|
||||
@@ -487,7 +487,7 @@ VFolderMenu::loadDoc()
|
||||
int errorRow;
|
||||
int errorCol;
|
||||
if ( !doc.setContent( &file, &errorMsg, &errorRow, &errorCol ) ) {
|
||||
- kWarning(7021) << "Parse error in " << m_docInfo.path << ", line " << errorRow << ", col " << errorCol << ": " << errorMsg;
|
||||
+ kDebug(7021) << "Parse error in " << m_docInfo.path << ", line " << errorRow << ", col " << errorCol << ": " << errorMsg;
|
||||
file.close();
|
||||
return doc;
|
||||
}
|
100
kdelibs-4.14.16-webkit.patch
Normal file
100
kdelibs-4.14.16-webkit.patch
Normal file
@ -0,0 +1,100 @@
|
||||
diff -up kdelibs-4.14.16/CMakeLists.txt.webkit kdelibs-4.14.16/CMakeLists.txt
|
||||
--- kdelibs-4.14.16/CMakeLists.txt.webkit 2016-01-07 00:02:22.000000000 +0100
|
||||
+++ kdelibs-4.14.16/CMakeLists.txt 2016-01-28 13:03:53.556194927 +0100
|
||||
@@ -363,7 +363,6 @@ if(NOT WINCE)
|
||||
add_subdirectory( plasma )
|
||||
endif(NOT WINCE)
|
||||
add_subdirectory( kunitconversion )
|
||||
-add_subdirectory( kdewebkit )
|
||||
add_subdirectory( includes )
|
||||
|
||||
add_subdirectory( experimental )
|
||||
diff -up kdelibs-4.14.16/kdewidgets/CMakeLists.txt.webkit kdelibs-4.14.16/kdewidgets/CMakeLists.txt
|
||||
--- kdelibs-4.14.16/kdewidgets/CMakeLists.txt.webkit 2016-01-28 13:03:53.527196020 +0100
|
||||
+++ kdelibs-4.14.16/kdewidgets/CMakeLists.txt 2016-01-28 13:03:53.556194927 +0100
|
||||
@@ -88,41 +88,6 @@ if(QT_QTDESIGNER_FOUND)
|
||||
install(TARGETS kdedeprecated DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
|
||||
endif(NOT KDE_NO_DEPRECATED)
|
||||
|
||||
-
|
||||
- # kdewebkit widgets
|
||||
- include_directories(
|
||||
- ${CMAKE_SOURCE_DIR}/kdewebkit
|
||||
- )
|
||||
-
|
||||
- add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp
|
||||
- COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kdewebkit.widgets
|
||||
- MAIN_DEPENDENCY kdewebkit.widgets DEPENDS makekdewidgets4)
|
||||
-
|
||||
- set(kdewebkitwidgets_PART_SRCS
|
||||
- classpreviews.cpp
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp
|
||||
- )
|
||||
-
|
||||
- qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.moc)
|
||||
-
|
||||
-
|
||||
- qt4_add_resources(kdewebkitwidgets_PART_SRCS kdewebkitwidgets.qrc)
|
||||
-
|
||||
- kde4_add_plugin(kdewebkitwidgets ${kdewebkitwidgets_PART_SRCS})
|
||||
-
|
||||
- target_link_libraries(kdewebkitwidgets ${KDE4_KDEUI_LIBS} ${KDE4_KDEWEBKIT_LIBS} ${QT_QTWEBKIT_LIBRARY})
|
||||
-# if(NOT WIN32)
|
||||
-# set_target_properties(kdewebkitwidgets PROPERTIES
|
||||
-# INSTALL_RPATH_USE_LINK_PATH TRUE
|
||||
-# SKIP_BUILD_RPATH TRUE
|
||||
-# BUILD_WITH_INSTALL_RPATH TRUE
|
||||
-# INSTALL_RPATH ${LIB_INSTALL_DIR}
|
||||
-# )
|
||||
-# endif(NOT WIN32)
|
||||
-
|
||||
- install(TARGETS kdewebkitwidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
|
||||
-
|
||||
-
|
||||
if (QT_QT3SUPPORT_FOUND)
|
||||
|
||||
include_directories(
|
||||
diff -up kdelibs-4.14.16/plasma/CMakeLists.txt.webkit kdelibs-4.14.16/plasma/CMakeLists.txt
|
||||
--- kdelibs-4.14.16/plasma/CMakeLists.txt.webkit 2016-01-07 00:02:22.000000000 +0100
|
||||
+++ kdelibs-4.14.16/plasma/CMakeLists.txt 2016-01-28 13:26:55.730137496 +0100
|
||||
@@ -11,6 +11,7 @@ if(KDE_PLATFORM_FEATURE_BINARY_COMPATIBL
|
||||
endif(KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION)
|
||||
|
||||
set(PLASMA_NO_PACKAGEKIT TRUE)
|
||||
+set(PLASMA_NO_KDEWEBKIT TRUE)
|
||||
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${KDE4_KDECORE_INCLUDES}
|
||||
@@ -121,7 +122,6 @@ set(plasma_LIB_SRCS
|
||||
framesvg.cpp
|
||||
plasma.cpp
|
||||
popupapplet.cpp
|
||||
- private/animablegraphicswebview.cpp
|
||||
private/applethandle.cpp
|
||||
private/associatedapplicationmanager.cpp
|
||||
private/componentinstaller.cpp
|
||||
@@ -211,7 +211,6 @@ set(plasma_LIB_SRCS
|
||||
widgets/textbrowser.cpp
|
||||
widgets/treeview.cpp
|
||||
widgets/textedit.cpp
|
||||
- widgets/webview.cpp
|
||||
|
||||
#Temporary QtJolie branch
|
||||
private/qtjolie-branch/qtjolie/abstractadaptor.cpp
|
||||
@@ -275,7 +274,7 @@ endif(PHONON_FOUND)
|
||||
|
||||
kde4_add_library(plasma ${LIBRARY_TYPE} ${plasma_LIB_SRCS})
|
||||
|
||||
-target_link_libraries(plasma LINK_PRIVATE ${QT_QTUITOOLS_LIBRARY} ${QT_QTWEBKIT_LIBRARY}
|
||||
+target_link_libraries(plasma LINK_PRIVATE ${QT_QTUITOOLS_LIBRARY}
|
||||
${QT_QTSCRIPT_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTSQL_LIBRARY} ${QT_QTDECLARATIVE_LIBRARY}
|
||||
${KDE4_KDEUI_LIBS} ${KDE4_KDNSSD_LIBS} ${KDE4_THREADWEAVER_LIBS} ${PLASMA_EXTRA_LIBS})
|
||||
|
||||
@@ -415,7 +414,6 @@ install(FILES
|
||||
widgets/textbrowser.h
|
||||
widgets/treeview.h
|
||||
widgets/textedit.h
|
||||
- widgets/webview.h
|
||||
DESTINATION ${INCLUDE_INSTALL_DIR}/plasma/widgets COMPONENT Devel)
|
||||
|
||||
install(FILES
|
12
kdelibs-4.14.17-gcc6_narrowing_hack.patch
Normal file
12
kdelibs-4.14.17-gcc6_narrowing_hack.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kdelibs-4.14.17/khtml/dom/dom2_traversal.h.gcc6 kdelibs-4.14.17/khtml/dom/dom2_traversal.h
|
||||
--- kdelibs-4.14.17/khtml/dom/dom2_traversal.h.gcc6 2016-02-12 19:27:45.874888043 -0600
|
||||
+++ kdelibs-4.14.17/khtml/dom/dom2_traversal.h 2016-02-12 19:26:11.777418711 -0600
|
||||
@@ -214,7 +214,7 @@ public:
|
||||
*
|
||||
*/
|
||||
enum ShowCode {
|
||||
- SHOW_ALL = 0xFFFFFFFF,
|
||||
+ SHOW_ALL = (int)0xFFFFFFFF,
|
||||
SHOW_ELEMENT = 0x00000001,
|
||||
SHOW_ATTRIBUTE = 0x00000002,
|
||||
SHOW_TEXT = 0x00000004,
|
12
kdelibs-4.14.17-glibc_trunc.patch
Normal file
12
kdelibs-4.14.17-glibc_trunc.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kdelibs-4.14.17/ConfigureChecks.cmake.gcc6 kdelibs-4.14.17/ConfigureChecks.cmake
|
||||
--- kdelibs-4.14.17/ConfigureChecks.cmake.gcc6 2016-02-11 23:06:08.000000000 -0600
|
||||
+++ kdelibs-4.14.17/ConfigureChecks.cmake 2016-02-12 19:14:07.707788177 -0600
|
||||
@@ -244,7 +244,7 @@ check_prototype_exists(unsetenv stdlib.h
|
||||
check_prototype_exists(usleep unistd.h HAVE_USLEEP_PROTO)
|
||||
check_prototype_exists(initgroups "unistd.h;sys/types.h;unistd.h;grp.h" HAVE_INITGROUPS_PROTO)
|
||||
check_prototype_exists(setreuid unistd.h HAVE_SETREUID_PROTO)
|
||||
-check_prototype_exists(trunc math.h HAVE_TRUNC)
|
||||
+check_prototype_exists(truncf math.h HAVE_TRUNC)
|
||||
|
||||
# check for existing datatypes
|
||||
|
22
kdelibs-4.14.25-plasma_drkonqi.patch
Normal file
22
kdelibs-4.14.25-plasma_drkonqi.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff -up kdelibs-4.14.25/kdeui/util/kcrash.cpp.plasma_drkonqi kdelibs-4.14.25/kdeui/util/kcrash.cpp
|
||||
--- kdelibs-4.14.25/kdeui/util/kcrash.cpp.plasma_drkonqi 2016-10-10 01:09:37.000000000 -0500
|
||||
+++ kdelibs-4.14.25/kdeui/util/kcrash.cpp 2016-11-10 11:18:40.617754077 -0600
|
||||
@@ -205,11 +205,18 @@ void KCrash::setDrKonqiEnabled(bool enab
|
||||
{
|
||||
s_launchDrKonqi = enabled;
|
||||
if (s_launchDrKonqi && !s_drkonqiPath) {
|
||||
+
|
||||
+ s_drkonqiPath = qstrdup(QFile::encodeName(KStandardDirs::findExe("drkonqi", QFile::decodeName("/usr/libexec/drkonqi"))).constData());
|
||||
+
|
||||
+ if (!s_drkonqiPath) {
|
||||
+
|
||||
s_drkonqiPath = qstrdup(QFile::encodeName(KStandardDirs::findExe("drkonqi")).constData());
|
||||
if (!s_drkonqiPath) {
|
||||
kError() << "Could not find drkonqi";
|
||||
s_launchDrKonqi = false;
|
||||
}
|
||||
+
|
||||
+ }
|
||||
}
|
||||
|
||||
//we need at least the default crash handler to launch drkonqi
|
999
kdelibs-4.14.38-openssl-1.1.patch
Normal file
999
kdelibs-4.14.38-openssl-1.1.patch
Normal file
@ -0,0 +1,999 @@
|
||||
From a015996bb55bbd63d94b227a2c82d0d97cd86ae8 Mon Sep 17 00:00:00 2001
|
||||
From: Wolfgang Bauer <wbauer@tmo.at>
|
||||
Date: Wed, 25 Oct 2017 07:49:32 +0200
|
||||
Subject: [PATCH] Make kssl compile against OpenSSL 1.1.0
|
||||
|
||||
OpenSSL 1.1.0 contains some source-incompatible changes, most notably
|
||||
making most of the structures opaque and introducing new getter/setter
|
||||
functions to modify the structures. This patch adds some of the newly
|
||||
introduced functions to the KOpenSSL class and modifies the code to
|
||||
call them. The implementation of those newly introduced methods
|
||||
contains both OpenSSL < 1.1 compatible code (direct structure member
|
||||
access) and calls to real functions resolved from OpenSSL>= 1.1
|
||||
library. Which implementation is used is decided at compile time. Some
|
||||
of the existing methods were renamed to match the OpenSSL 1.1 naming
|
||||
and to avoid conflicts with backward-compatibility names provided by
|
||||
OpenSSL 1.1.
|
||||
|
||||
KSSLCertificate::toNetscape() returns empty result when built against
|
||||
OpenSSL 1.1 since I wasn't able to find a proper equivalent in OpenSSL
|
||||
1.1 API (and there does not seem to be any).
|
||||
|
||||
(Backport of commit 9a990c69c606126bcd60cd7718462aec2a92460d from
|
||||
kdelibs4support)
|
||||
---
|
||||
kio/kssl/kopenssl.cpp | 250 ++++++++++++++++++++++++++++++++++++++-----
|
||||
kio/kssl/kopenssl.h | 80 ++++++++++++--
|
||||
kio/kssl/kssl.cpp | 4 -
|
||||
kio/kssl/ksslcallback.c | 6 +-
|
||||
kio/kssl/ksslcertchain.cpp | 53 +++------
|
||||
kio/kssl/ksslcertificate.cpp | 68 +++++++-----
|
||||
6 files changed, 351 insertions(+), 110 deletions(-)
|
||||
|
||||
diff --git a/kio/kssl/kopenssl.cpp b/kio/kssl/kopenssl.cpp
|
||||
index e3ca535b25..8f8b921159 100644
|
||||
--- a/kio/kssl/kopenssl.cpp
|
||||
+++ b/kio/kssl/kopenssl.cpp
|
||||
@@ -75,18 +75,26 @@ static void (*K_X509_STORE_CTX_free) (X509_STORE_CTX *) = 0L;
|
||||
static int (*K_X509_verify_cert) (X509_STORE_CTX *) = 0L;
|
||||
static X509_STORE_CTX *(*K_X509_STORE_CTX_new) (void) = 0L;
|
||||
static void (*K_X509_STORE_free) (X509_STORE *) = 0L;
|
||||
+static void (*K_X509_STORE_set_verify_cb)(X509_STORE *, int (*)(int, X509_STORE_CTX *)) = 0L;
|
||||
static X509_STORE *(*K_X509_STORE_new) (void) = 0L;
|
||||
static void (*K_X509_free) (X509 *) = 0L;
|
||||
static char *(*K_X509_NAME_oneline) (X509_NAME *,char *,int) = 0L;
|
||||
static X509_NAME *(*K_X509_get_subject_name) (X509 *) = 0L;
|
||||
static X509_NAME *(*K_X509_get_issuer_name) (X509 *) = 0L;
|
||||
+static void (*K_X509_get0_signature)(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x) = 0L;
|
||||
static X509_LOOKUP *(*K_X509_STORE_add_lookup) (X509_STORE *, X509_LOOKUP_METHOD *) = 0L;
|
||||
static X509_LOOKUP_METHOD *(*K_X509_LOOKUP_file)(void) = 0L;
|
||||
static void (*K_X509_LOOKUP_free)(X509_LOOKUP *) = 0L;
|
||||
static int (*K_X509_LOOKUP_ctrl)(X509_LOOKUP *, int, const char *, long, char **) = 0L;
|
||||
static void (*K_X509_STORE_CTX_init)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *) = 0L;
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
static void (*K_CRYPTO_free) (void *) = 0L;
|
||||
+#else
|
||||
+static void (*K_CRYPTO_free)(void *, const char *, int) = 0L;
|
||||
+#endif
|
||||
static X509* (*K_X509_dup) (X509 *) = 0L;
|
||||
+static ASN1_TIME *(*K_X509_getm_notBefore)(const X509 *) = 0L;
|
||||
+static ASN1_TIME *(*K_X509_getm_notAfter)(const X509 *) = 0L;
|
||||
static BIO_METHOD *(*K_BIO_s_mem) (void) = 0L;
|
||||
static BIO* (*K_BIO_new) (BIO_METHOD *) = 0L;
|
||||
static BIO* (*K_BIO_new_fp) (FILE *, int) = 0L;
|
||||
@@ -118,13 +126,16 @@ static int (*K_SSL_get_error) (SSL*, int) = 0L;
|
||||
static STACK_OF(X509)* (*K_SSL_get_peer_cert_chain) (SSL*) = 0L;
|
||||
static void (*K_X509_STORE_CTX_set_chain) (X509_STORE_CTX *, STACK_OF(X509)*) = 0L;
|
||||
static void (*K_X509_STORE_CTX_set_purpose) (X509_STORE_CTX *, int) = 0L;
|
||||
-static void (*K_sk_free) (STACK*) = 0L;
|
||||
-static int (*K_sk_num) (STACK*) = 0L;
|
||||
-static char* (*K_sk_pop) (STACK*) = 0L;
|
||||
-static char* (*K_sk_value) (STACK*, int) = 0L;
|
||||
-static STACK* (*K_sk_new) (int (*)()) = 0L;
|
||||
-static int (*K_sk_push) (STACK*, char*) = 0L;
|
||||
-static STACK* (*K_sk_dup) (STACK *) = 0L;
|
||||
+static X509 *(*K_X509_STORE_CTX_get_current_cert)(X509_STORE_CTX *) = 0L;
|
||||
+static void (*K_X509_STORE_CTX_set_error)(X509_STORE_CTX *, int) = 0L;
|
||||
+static int (*K_X509_STORE_CTX_get_error)(X509_STORE_CTX *) = 0L;
|
||||
+static void (*K_OPENSSL_sk_free)(STACK *) = 0L;
|
||||
+static int (*K_OPENSSL_sk_num)(STACK *) = 0L;
|
||||
+static char *(*K_OPENSSL_sk_pop)(STACK *) = 0L;
|
||||
+static char *(*K_OPENSSL_sk_value)(STACK *, int) = 0L;
|
||||
+static STACK *(*K_OPENSSL_sk_new)(int (*)()) = 0L;
|
||||
+static int (*K_OPENSSL_sk_push)(STACK *, char *) = 0L;
|
||||
+static STACK *(*K_OPENSSL_sk_dup)(STACK *) = 0L;
|
||||
static char * (*K_i2s_ASN1_INTEGER) (X509V3_EXT_METHOD *, ASN1_INTEGER *) =0L;
|
||||
static ASN1_INTEGER * (*K_X509_get_serialNumber) (X509 *) = 0L;
|
||||
static EVP_PKEY *(*K_X509_get_pubkey)(X509 *) = 0L;
|
||||
@@ -164,6 +175,12 @@ static int (*K_X509_PURPOSE_get_id)(X509_PURPOSE *) = 0L;
|
||||
static int (*K_X509_check_purpose)(X509*,int,int) = 0L;
|
||||
static X509_PURPOSE* (*K_X509_PURPOSE_get0)(int) = 0L;
|
||||
static int (*K_EVP_PKEY_assign)(EVP_PKEY*, int, char*) = 0L;
|
||||
+static int (*K_EVP_PKEY_base_id)(EVP_PKEY *) = 0L;
|
||||
+static RSA *(*K_EVP_PKEY_get0_RSA)(EVP_PKEY *) = 0L;
|
||||
+static void (*K_RSA_get0_key)(RSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **) = 0L;
|
||||
+static DSA *(*K_EVP_PKEY_get0_DSA)(EVP_PKEY *) = 0L;
|
||||
+static void (*K_DSA_get0_pqg)(DSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **) = 0L;
|
||||
+static void (*K_DSA_get0_key)(DSA *, const BIGNUM **, const BIGNUM **) = 0L;
|
||||
static int (*K_X509_REQ_set_pubkey)(X509_REQ*, EVP_PKEY*) = 0L;
|
||||
static RSA *(*K_RSA_generate_key)(int, unsigned long, void (*)(int,int,void *), void *) = 0L;
|
||||
static int (*K_i2d_X509_REQ_fp)(FILE*, X509_REQ*) = 0L;
|
||||
@@ -410,7 +427,11 @@ KOpenSSLProxy::KOpenSSLProxy()
|
||||
K_RAND_load_file = (int (*)(const char *, long)) d->cryptoLib->resolveFunction("RAND_load_file");
|
||||
K_RAND_file_name = (const char* (*)(char *, size_t)) d->cryptoLib->resolveFunction("RAND_file_name");
|
||||
K_RAND_write_file = (int (*)(const char *)) d->cryptoLib->resolveFunction("RAND_write_file");
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
K_CRYPTO_free = (void (*) (void *)) d->cryptoLib->resolveFunction("CRYPTO_free");
|
||||
+#else
|
||||
+ K_CRYPTO_free = (void (*)(void *, const char *, int)) d->cryptoLib->resolveFunction("CRYPTO_free");
|
||||
+#endif
|
||||
K_d2i_X509 = (X509 * (*)(X509 **,unsigned char **,long)) d->cryptoLib->resolveFunction("d2i_X509");
|
||||
K_i2d_X509 = (int (*)(X509 *,unsigned char **)) d->cryptoLib->resolveFunction("i2d_X509");
|
||||
K_X509_cmp = (int (*)(X509 *, X509 *)) d->cryptoLib->resolveFunction("X509_cmp");
|
||||
@@ -419,15 +440,19 @@ KOpenSSLProxy::KOpenSSLProxy()
|
||||
K_X509_verify_cert = (int (*) (X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_verify_cert");
|
||||
K_X509_STORE_new = (X509_STORE * (*) (void)) d->cryptoLib->resolveFunction("X509_STORE_new");
|
||||
K_X509_STORE_free = (void (*) (X509_STORE *)) d->cryptoLib->resolveFunction("X509_STORE_free");
|
||||
+ K_X509_STORE_set_verify_cb = (void (*)(X509_STORE *, int (*)(int, X509_STORE_CTX *))) d->cryptoLib->resolveFunction("X509_STORE_set_verify_cb");
|
||||
K_X509_NAME_oneline = (char * (*) (X509_NAME *,char *,int)) d->cryptoLib->resolveFunction("X509_NAME_oneline");
|
||||
K_X509_get_subject_name = (X509_NAME * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_subject_name");
|
||||
K_X509_get_issuer_name = (X509_NAME * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_issuer_name");
|
||||
+ K_X509_get0_signature = (void (*)(const ASN1_BIT_STRING **, const X509_ALGOR **, const X509 *)) d->cryptoLib->resolveFunction("X509_get0_signature");
|
||||
K_X509_STORE_add_lookup = (X509_LOOKUP *(*) (X509_STORE *, X509_LOOKUP_METHOD *)) d->cryptoLib->resolveFunction("X509_STORE_add_lookup");
|
||||
K_X509_LOOKUP_file = (X509_LOOKUP_METHOD *(*)(void)) d->cryptoLib->resolveFunction("X509_LOOKUP_file");
|
||||
K_X509_LOOKUP_free = (void (*)(X509_LOOKUP *)) d->cryptoLib->resolveFunction("X509_LOOKUP_free");
|
||||
K_X509_LOOKUP_ctrl = (int (*)(X509_LOOKUP *, int, const char *, long, char **)) d->cryptoLib->resolveFunction("X509_LOOKUP_ctrl");
|
||||
K_X509_STORE_CTX_init = (void (*)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_init");
|
||||
K_X509_dup = (X509* (*)(X509*)) d->cryptoLib->resolveFunction("X509_dup");
|
||||
+ K_X509_getm_notBefore = (ASN1_TIME *(*)(const X509 *)) d->cryptoLib->resolveFunction("X509_getm_notBefore");
|
||||
+ K_X509_getm_notAfter = (ASN1_TIME *(*)(const X509 *)) d->cryptoLib->resolveFunction("X509_getm_notAfter");
|
||||
K_BIO_s_mem = (BIO_METHOD *(*) (void)) d->cryptoLib->resolveFunction("BIO_s_mem");
|
||||
K_BIO_new = (BIO* (*)(BIO_METHOD *)) d->cryptoLib->resolveFunction("BIO_new");
|
||||
K_BIO_new_fp = (BIO* (*)(FILE*, int)) d->cryptoLib->resolveFunction("BIO_new_fp");
|
||||
@@ -454,13 +479,26 @@ KOpenSSLProxy::KOpenSSLProxy()
|
||||
K_X509_REQ_new = (X509_REQ* (*)()) d->cryptoLib->resolveFunction("X509_REQ_new");
|
||||
K_X509_STORE_CTX_set_chain = (void (*)(X509_STORE_CTX *, STACK_OF(X509)*)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_chain");
|
||||
K_X509_STORE_CTX_set_purpose = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_purpose");
|
||||
- K_sk_free = (void (*) (STACK *)) d->cryptoLib->resolveFunction("sk_free");
|
||||
- K_sk_num = (int (*) (STACK *)) d->cryptoLib->resolveFunction("sk_num");
|
||||
- K_sk_pop = (char* (*) (STACK *)) d->cryptoLib->resolveFunction("sk_pop");
|
||||
- K_sk_value = (char* (*) (STACK *, int)) d->cryptoLib->resolveFunction("sk_value");
|
||||
- K_sk_new = (STACK* (*) (int (*)())) d->cryptoLib->resolveFunction("sk_new");
|
||||
- K_sk_push = (int (*) (STACK*, char*)) d->cryptoLib->resolveFunction("sk_push");
|
||||
- K_sk_dup = (STACK* (*) (STACK *)) d->cryptoLib->resolveFunction("sk_dup");
|
||||
+ K_X509_STORE_CTX_get_current_cert = (X509 * (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_get_current_cert");
|
||||
+ K_X509_STORE_CTX_set_error = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_error");
|
||||
+ K_X509_STORE_CTX_get_error = (int (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_get_error");
|
||||
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
|
||||
+ K_OPENSSL_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_free");
|
||||
+ K_OPENSSL_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_num");
|
||||
+ K_OPENSSL_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_pop");
|
||||
+ K_OPENSSL_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("OPENSSL_sk_value");
|
||||
+ K_OPENSSL_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("OPENSSL_sk_new");
|
||||
+ K_OPENSSL_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("OPENSSL_sk_push");
|
||||
+ K_OPENSSL_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_dup");
|
||||
+#else
|
||||
+ K_OPENSSL_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("sk_free");
|
||||
+ K_OPENSSL_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("sk_num");
|
||||
+ K_OPENSSL_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("sk_pop");
|
||||
+ K_OPENSSL_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("sk_value");
|
||||
+ K_OPENSSL_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("sk_new");
|
||||
+ K_OPENSSL_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("sk_push");
|
||||
+ K_OPENSSL_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("sk_dup");
|
||||
+#endif
|
||||
K_i2s_ASN1_INTEGER = (char *(*) (X509V3_EXT_METHOD *, ASN1_INTEGER *)) d->cryptoLib->resolveFunction("i2s_ASN1_INTEGER");
|
||||
K_X509_get_serialNumber = (ASN1_INTEGER * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_serialNumber");
|
||||
K_X509_get_pubkey = (EVP_PKEY *(*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_pubkey");
|
||||
@@ -504,6 +542,12 @@ KOpenSSLProxy::KOpenSSLProxy()
|
||||
K_X509_check_purpose = (int (*)(X509*,int,int)) d->cryptoLib->resolveFunction("X509_check_purpose");
|
||||
K_X509_PURPOSE_get0 = (X509_PURPOSE *(*)(int)) d->cryptoLib->resolveFunction("X509_PURPOSE_get0");
|
||||
K_EVP_PKEY_assign = (int (*)(EVP_PKEY*, int, char*)) d->cryptoLib->resolveFunction("EVP_PKEY_assign");
|
||||
+ K_EVP_PKEY_base_id = (int (*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_base_id");
|
||||
+ K_EVP_PKEY_get0_RSA = (RSA *(*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_get0_RSA");
|
||||
+ K_RSA_get0_key = (void (*)(RSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("ESA_get0_key");
|
||||
+ K_EVP_PKEY_get0_DSA = (DSA *(*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_get0_DSA");
|
||||
+ K_DSA_get0_pqg = (void (*)(DSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("DSA_get0_pqg");
|
||||
+ K_DSA_get0_key = (void (*)(DSA *, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("DSA_get0_key");
|
||||
K_X509_REQ_set_pubkey = (int (*)(X509_REQ*, EVP_PKEY*)) d->cryptoLib->resolveFunction("X509_REQ_set_pubkey");
|
||||
K_RSA_generate_key = (RSA* (*)(int, unsigned long, void (*)(int,int,void *), void *)) d->cryptoLib->resolveFunction("RSA_generate_key");
|
||||
K_i2d_X509_REQ_fp = (int (*)(FILE *, X509_REQ *)) d->cryptoLib->resolveFunction("i2d_X509_REQ_fp");
|
||||
@@ -866,6 +910,16 @@ void KOpenSSLProxy::X509_STORE_free(X509_STORE *v) {
|
||||
}
|
||||
|
||||
|
||||
+void KOpenSSLProxy::X509_STORE_set_verify_cb(X509_STORE *store, int (*verify_cb)(int, X509_STORE_CTX *))
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ X509_STORE_set_verify_cb_func(store, verify_cb);
|
||||
+#else
|
||||
+ if (K_X509_STORE_set_verify_cb) (K_X509_STORE_set_verify_cb)(store, verify_cb);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
X509_STORE_CTX *KOpenSSLProxy::X509_STORE_CTX_new(void) {
|
||||
if (K_X509_STORE_CTX_new) return (K_X509_STORE_CTX_new)();
|
||||
return 0L;
|
||||
@@ -906,6 +960,17 @@ X509_NAME *KOpenSSLProxy::X509_get_issuer_name(X509 *a) {
|
||||
}
|
||||
|
||||
|
||||
+void KOpenSSLProxy::X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **algor, const X509 *x)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ if (psig) *psig = x->signature;
|
||||
+ if (algor) *algor = x->sig_alg;
|
||||
+#else
|
||||
+ if (K_X509_get0_signature) return (K_X509_get0_signature)(psig, algor, x);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
X509_LOOKUP *KOpenSSLProxy::X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m) {
|
||||
if (K_X509_STORE_add_lookup) return (K_X509_STORE_add_lookup)(v,m);
|
||||
return 0L;
|
||||
@@ -934,9 +999,16 @@ void KOpenSSLProxy::X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store,
|
||||
}
|
||||
|
||||
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
void KOpenSSLProxy::CRYPTO_free(void *x) {
|
||||
if (K_CRYPTO_free) (K_CRYPTO_free)(x);
|
||||
}
|
||||
+#else
|
||||
+void KOpenSSLProxy::CRYPTO_free(void *x, const char *file, int line)
|
||||
+{
|
||||
+ if (K_CRYPTO_free) K_CRYPTO_free(x, file, line);
|
||||
+}
|
||||
+#endif
|
||||
|
||||
|
||||
X509 *KOpenSSLProxy::X509_dup(X509 *x509) {
|
||||
@@ -945,6 +1017,28 @@ X509 *KOpenSSLProxy::X509_dup(X509 *x509) {
|
||||
}
|
||||
|
||||
|
||||
+ASN1_TIME *KOpenSSLProxy::X509_getm_notBefore(const X509 *x)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return X509_get_notBefore(x);
|
||||
+#else
|
||||
+ if (K_X509_getm_notBefore) return (K_X509_getm_notBefore)(x);
|
||||
+ else return 0L;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+ASN1_TIME *KOpenSSLProxy::X509_getm_notAfter(const X509 *x)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return X509_get_notAfter(x);
|
||||
+#else
|
||||
+ if (K_X509_getm_notAfter) return (K_X509_getm_notAfter)(x);
|
||||
+ else return 0L;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
BIO *KOpenSSLProxy::BIO_new(BIO_METHOD *type) {
|
||||
if (K_BIO_new) return (K_BIO_new)(type);
|
||||
else return 0L;
|
||||
@@ -1093,25 +1187,25 @@ STACK_OF(X509) *KOpenSSLProxy::SSL_get_peer_cert_chain(SSL *s) {
|
||||
}
|
||||
|
||||
|
||||
-void KOpenSSLProxy::sk_free(STACK *s) {
|
||||
- if (K_sk_free) (K_sk_free)(s);
|
||||
+void KOpenSSLProxy::OPENSSL_sk_free(STACK *s) {
|
||||
+ if (K_OPENSSL_sk_free) (K_OPENSSL_sk_free)(s);
|
||||
}
|
||||
|
||||
|
||||
-int KOpenSSLProxy::sk_num(STACK *s) {
|
||||
- if (K_sk_num) return (K_sk_num)(s);
|
||||
+int KOpenSSLProxy::OPENSSL_sk_num(STACK *s) {
|
||||
+ if (K_OPENSSL_sk_num) return (K_OPENSSL_sk_num)(s);
|
||||
else return -1;
|
||||
}
|
||||
|
||||
|
||||
-char *KOpenSSLProxy::sk_pop(STACK *s) {
|
||||
- if (K_sk_pop) return (K_sk_pop)(s);
|
||||
+char *KOpenSSLProxy::OPENSSL_sk_pop(STACK *s) {
|
||||
+ if (K_OPENSSL_sk_pop) return (K_OPENSSL_sk_pop)(s);
|
||||
else return 0L;
|
||||
}
|
||||
|
||||
|
||||
-char *KOpenSSLProxy::sk_value(STACK *s, int n) {
|
||||
- if (K_sk_value) return (K_sk_value)(s, n);
|
||||
+char *KOpenSSLProxy::OPENSSL_sk_value(STACK *s, int n) {
|
||||
+ if (K_OPENSSL_sk_value) return (K_OPENSSL_sk_value)(s, n);
|
||||
else return 0L;
|
||||
}
|
||||
|
||||
@@ -1125,20 +1219,52 @@ void KOpenSSLProxy::X509_STORE_CTX_set_purpose(X509_STORE_CTX *v, int purpose) {
|
||||
}
|
||||
|
||||
|
||||
-STACK* KOpenSSLProxy::sk_dup(STACK *s) {
|
||||
- if (K_sk_dup) return (K_sk_dup)(s);
|
||||
+X509 *KOpenSSLProxy::X509_STORE_CTX_get_current_cert(X509_STORE_CTX *v)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return v->current_cert;
|
||||
+#else
|
||||
+ if (K_X509_STORE_CTX_get_current_cert) return (K_X509_STORE_CTX_get_current_cert)(v);
|
||||
+ else return 0L;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+void KOpenSSLProxy::X509_STORE_CTX_set_error(X509_STORE_CTX *v, int error)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ v->error = error;
|
||||
+#else
|
||||
+ if (K_X509_STORE_CTX_set_error) (K_X509_STORE_CTX_set_error)(v, error);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+int KOpenSSLProxy::X509_STORE_CTX_get_error(X509_STORE_CTX *v)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return v->error;
|
||||
+#else
|
||||
+ if (K_X509_STORE_CTX_get_error) return (K_X509_STORE_CTX_get_error)(v);
|
||||
+ else return 0;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+STACK* KOpenSSLProxy::OPENSSL_sk_dup(STACK *s) {
|
||||
+ if (K_OPENSSL_sk_dup) return (K_OPENSSL_sk_dup)(s);
|
||||
else return 0L;
|
||||
}
|
||||
|
||||
|
||||
-STACK* KOpenSSLProxy::sk_new(int (*cmp)()) {
|
||||
- if (K_sk_new) return (K_sk_new)(cmp);
|
||||
+STACK* KOpenSSLProxy::OPENSSL_sk_new(int (*cmp)()) {
|
||||
+ if (K_OPENSSL_sk_new) return (K_OPENSSL_sk_new)(cmp);
|
||||
else return 0L;
|
||||
}
|
||||
|
||||
|
||||
-int KOpenSSLProxy::sk_push(STACK* s, char* d) {
|
||||
- if (K_sk_push) return (K_sk_push)(s,d);
|
||||
+int KOpenSSLProxy::OPENSSL_sk_push(STACK* s, char* d) {
|
||||
+ if (K_OPENSSL_sk_push) return (K_OPENSSL_sk_push)(s,d);
|
||||
else return -1;
|
||||
}
|
||||
|
||||
@@ -1423,6 +1549,74 @@ int KOpenSSLProxy::EVP_PKEY_assign(EVP_PKEY *pkey, int type, char *key) {
|
||||
else return -1;
|
||||
}
|
||||
|
||||
+
|
||||
+int KOpenSSLProxy::EVP_PKEY_base_id(EVP_PKEY *pkey)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return pkey->type;
|
||||
+#else
|
||||
+ if (K_EVP_PKEY_base_id) return (K_EVP_PKEY_base_id)(pkey);
|
||||
+ else return 0;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+RSA *KOpenSSLProxy::EVP_PKEY_get0_RSA(EVP_PKEY *pkey)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return pkey->pkey.rsa;
|
||||
+#else
|
||||
+ if (K_EVP_PKEY_get0_RSA) return (K_EVP_PKEY_get0_RSA)(pkey);
|
||||
+ else return 0L;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+void KOpenSSLProxy::RSA_get0_key(RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ if (n) *n = rsa->n;
|
||||
+ if (e) *e = rsa->e;
|
||||
+ if (d) *d = rsa->d;
|
||||
+#else
|
||||
+ if (K_RSA_get0_key) (K_RSA_get0_key)(rsa, n, e, d);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+DSA *KOpenSSLProxy::EVP_PKEY_get0_DSA(EVP_PKEY *pkey)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ return pkey->pkey.dsa;
|
||||
+#else
|
||||
+ if (K_EVP_PKEY_get0_DSA) return (K_EVP_PKEY_get0_DSA)(pkey);
|
||||
+ else return 0L;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+void KOpenSSLProxy::DSA_get0_pqg(DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ if (p) *p = dsa->p;
|
||||
+ if (q) *q = dsa->q;
|
||||
+ if (g) *g = dsa->g;
|
||||
+#else
|
||||
+ if (K_DSA_get0_pqg) (K_DSA_get0_pqg)(dsa, p, q, g);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+void KOpenSSLProxy::DSA_get0_key(DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key)
|
||||
+{
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+ if (pub_key) *pub_key = dsa->pub_key;
|
||||
+ if (priv_key) *priv_key = dsa->priv_key;
|
||||
+#else
|
||||
+ if (K_DSA_get0_key) (K_DSA_get0_key)(dsa, pub_key, priv_key);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
|
||||
int KOpenSSLProxy::X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey) {
|
||||
if (K_X509_REQ_set_pubkey) return (K_X509_REQ_set_pubkey)(x, pkey);
|
||||
diff --git a/kio/kssl/kopenssl.h b/kio/kssl/kopenssl.h
|
||||
index ab05486336..ae3398fbef 100644
|
||||
--- a/kio/kssl/kopenssl.h
|
||||
+++ b/kio/kssl/kopenssl.h
|
||||
@@ -297,6 +297,18 @@ public:
|
||||
|
||||
|
||||
/*
|
||||
+ * X509_getm_notBefore - get validity start
|
||||
+ */
|
||||
+ ASN1_TIME *X509_getm_notBefore(const X509 *x);
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
+ * X509_getm_notAfter - get validity end
|
||||
+ */
|
||||
+ ASN1_TIME *X509_getm_notAfter(const X509 *x);
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
* X509_STORE_CTX_new - create an X509 store context
|
||||
*/
|
||||
X509_STORE_CTX *X509_STORE_CTX_new(void);
|
||||
@@ -313,11 +325,31 @@ public:
|
||||
*/
|
||||
void X509_STORE_CTX_set_chain(X509_STORE_CTX *v, STACK_OF(X509)* x);
|
||||
|
||||
+
|
||||
/*
|
||||
* X509_STORE_CTX_set_purpose - set the purpose of the certificate
|
||||
*/
|
||||
void X509_STORE_CTX_set_purpose(X509_STORE_CTX *v, int purpose);
|
||||
|
||||
+
|
||||
+ /*
|
||||
+ * X509_STORE_CTX_get_current_cert - get the current certificate
|
||||
+ */
|
||||
+ X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *v);
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
+ * X509_STORE_CTX_set_error - set certificate error
|
||||
+ */
|
||||
+ void X509_STORE_CTX_set_error(X509_STORE_CTX *v, int error);
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
+ * X509_STORE_CTX_get_error - get certificate error
|
||||
+ */
|
||||
+ int X509_STORE_CTX_get_error(X509_STORE_CTX *v);
|
||||
+
|
||||
+
|
||||
/*
|
||||
* X509_verify_cert - verify the certificate
|
||||
*/
|
||||
@@ -337,6 +369,12 @@ public:
|
||||
|
||||
|
||||
/*
|
||||
+ * X509_STORE_set_verify_cb - set verify callback
|
||||
+ */
|
||||
+ void X509_STORE_set_verify_cb(X509_STORE *v, int (*verify_cb)(int, X509_STORE_CTX *));
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
* X509_free - free up an X509
|
||||
*/
|
||||
void X509_free(X509 *v);
|
||||
@@ -361,6 +399,12 @@ public:
|
||||
|
||||
|
||||
/*
|
||||
+ * X509_get0_signature - return X509 signature and signature algorithm
|
||||
+ */
|
||||
+ void X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x);
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
* X509_STORE_add_lookup - add a lookup file/method to an X509 store
|
||||
*/
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
|
||||
@@ -393,7 +437,11 @@ public:
|
||||
/*
|
||||
* CRYPTO_free - free up an internally allocated object
|
||||
*/
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
void CRYPTO_free(void *x);
|
||||
+#else
|
||||
+ void CRYPTO_free(void *x, const char *file, int line);
|
||||
+#endif
|
||||
|
||||
/*
|
||||
* BIO_new - create new BIO
|
||||
@@ -505,53 +553,53 @@ public:
|
||||
/*
|
||||
* Pop off the stack
|
||||
*/
|
||||
- char *sk_pop(STACK *s);
|
||||
+ char *OPENSSL_sk_pop(STACK *s);
|
||||
|
||||
|
||||
/*
|
||||
* Free the stack
|
||||
*/
|
||||
- void sk_free(STACK *s);
|
||||
+ void OPENSSL_sk_free(STACK *s);
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x10000000L
|
||||
- void sk_free(void *s) { return sk_free(reinterpret_cast<STACK*>(s)); }
|
||||
+ void OPENSSL_sk_free(void *s) { return OPENSSL_sk_free(reinterpret_cast<STACK*>(s)); }
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Number of elements in the stack
|
||||
*/
|
||||
- int sk_num(STACK *s);
|
||||
+ int OPENSSL_sk_num(STACK *s);
|
||||
|
||||
|
||||
/*
|
||||
* Value of element n in the stack
|
||||
*/
|
||||
- char *sk_value(STACK *s, int n);
|
||||
+ char *OPENSSL_sk_value(STACK *s, int n);
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x10000000L
|
||||
- char *sk_value(void *s, int n) { return sk_value(reinterpret_cast<STACK*>(s), n); }
|
||||
+ char *OPENSSL_sk_value(void *s, int n) { return OPENSSL_sk_value(reinterpret_cast<STACK*>(s), n); }
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Create a new stack
|
||||
*/
|
||||
- STACK *sk_new(int (*cmp)());
|
||||
+ STACK *OPENSSL_sk_new(int (*cmp)());
|
||||
|
||||
|
||||
/*
|
||||
* Add an element to the stack
|
||||
*/
|
||||
- int sk_push(STACK *s, char *d);
|
||||
+ int OPENSSL_sk_push(STACK *s, char *d);
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x10000000L
|
||||
- int sk_push(void *s, void *d) { return sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); }
|
||||
+ int OPENSSL_sk_push(void *s, void *d) { return OPENSSL_sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); }
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Duplicate the stack
|
||||
*/
|
||||
- STACK *sk_dup(STACK *s);
|
||||
+ STACK *OPENSSL_sk_dup(STACK *s);
|
||||
|
||||
|
||||
/*
|
||||
@@ -800,6 +848,18 @@ public:
|
||||
|
||||
|
||||
/*
|
||||
+ * Get key type
|
||||
+ */
|
||||
+ int EVP_PKEY_base_id(EVP_PKEY *pkey);
|
||||
+
|
||||
+ RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey);
|
||||
+ void RSA_get0_key(RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d);
|
||||
+ DSA *EVP_PKEY_get0_DSA(EVP_PKEY *pkey);
|
||||
+ void DSA_get0_pqg(DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g);
|
||||
+ void DSA_get0_key(DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key);
|
||||
+
|
||||
+
|
||||
+ /*
|
||||
* Generate a RSA key
|
||||
*/
|
||||
RSA *RSA_generate_key(int bits, unsigned long e, void
|
||||
diff --git a/kio/kssl/kssl.cpp b/kio/kssl/kssl.cpp
|
||||
index c36db55a42..faba1bb5ab 100644
|
||||
--- a/kio/kssl/kssl.cpp
|
||||
+++ b/kio/kssl/kssl.cpp
|
||||
@@ -55,8 +55,6 @@
|
||||
#warning "kssl.cc needs to be ported to QSslSocket"
|
||||
#endif
|
||||
|
||||
-#define sk_dup d->kossl->sk_dup
|
||||
-
|
||||
class KSSLPrivate {
|
||||
public:
|
||||
KSSLPrivate() {
|
||||
@@ -212,5 +210,3 @@ bool KSSL::doesSSLWork() {
|
||||
return m_bSSLWorks;
|
||||
}
|
||||
|
||||
-#undef sk_dup
|
||||
-
|
||||
diff --git a/kio/kssl/ksslcallback.c b/kio/kssl/ksslcallback.c
|
||||
index 516b916337..38e94356e8 100644
|
||||
--- a/kio/kssl/ksslcallback.c
|
||||
+++ b/kio/kssl/ksslcallback.c
|
||||
@@ -28,7 +28,7 @@ bool KSSL_X509CallBack_ca_found;
|
||||
extern "C" {
|
||||
static int X509Callback(int ok, X509_STORE_CTX *ctx) {
|
||||
|
||||
- kDebug(7029) << "X509Callback: ok = " << ok << " error = " << ctx->error << " depth = " << ctx->error_depth;
|
||||
+ //kDebug(7029) << "X509Callback: ok = " << ok << " error = " << ctx->error << " depth = " << ctx->error_depth;
|
||||
// Here is how this works. We put "ok = 1;" in any case that we
|
||||
// don't consider to be an error. In that case, it will return OK
|
||||
// for the certificate check as long as there are no other critical
|
||||
@@ -39,14 +39,14 @@ static int X509Callback(int ok, X509_STORE_CTX *ctx) {
|
||||
|
||||
if (KSSL_X509CallBack_ca)
|
||||
{
|
||||
- if (KOSSL::self()->X509_cmp(ctx->current_cert, KSSL_X509CallBack_ca) != 0)
|
||||
+ if (KOSSL::self()->X509_cmp(KOSSL::self()->X509_STORE_CTX_get_current_cert(ctx), KSSL_X509CallBack_ca) != 0)
|
||||
return 1; // Ignore errors for this certificate
|
||||
|
||||
KSSL_X509CallBack_ca_found = true;
|
||||
}
|
||||
|
||||
if (!ok) {
|
||||
- switch (ctx->error) {
|
||||
+ switch (KOSSL::self()->X509_STORE_CTX_get_error(ctx)) {
|
||||
case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT:
|
||||
case X509_V_ERR_UNABLE_TO_GET_CRL:
|
||||
case X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE:
|
||||
diff --git a/kio/kssl/ksslcertchain.cpp b/kio/kssl/ksslcertchain.cpp
|
||||
index 2be7995bf8..cdfab2b5ae 100644
|
||||
--- a/kio/kssl/ksslcertchain.cpp
|
||||
+++ b/kio/kssl/ksslcertchain.cpp
|
||||
@@ -44,16 +44,6 @@
|
||||
#include <kdebug.h>
|
||||
#include <QtCore/QStringList>
|
||||
|
||||
-#ifdef KSSL_HAVE_SSL
|
||||
-#define sk_new d->kossl->sk_new
|
||||
-#define sk_push d->kossl->sk_push
|
||||
-#define sk_free d->kossl->sk_free
|
||||
-#define sk_value d->kossl->sk_value
|
||||
-#define sk_num d->kossl->sk_num
|
||||
-#define sk_dup d->kossl->sk_dup
|
||||
-#define sk_pop d->kossl->sk_pop
|
||||
-#endif
|
||||
-
|
||||
class KSSLCertChainPrivate {
|
||||
public:
|
||||
KSSLCertChainPrivate() {
|
||||
@@ -79,11 +69,11 @@ KSSLCertChain::~KSSLCertChain() {
|
||||
STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
|
||||
|
||||
for (;;) {
|
||||
- X509* x5 = sk_X509_pop(x);
|
||||
+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK *>(x)));
|
||||
if (!x5) break;
|
||||
d->kossl->X509_free(x5);
|
||||
}
|
||||
- sk_X509_free(x);
|
||||
+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK *>(x));
|
||||
}
|
||||
#endif
|
||||
delete d;
|
||||
@@ -106,7 +96,7 @@ KSSLCertChain *KSSLCertChain::replicate() {
|
||||
|
||||
int KSSLCertChain::depth() {
|
||||
#ifdef KSSL_HAVE_SSL
|
||||
- return sk_X509_num((STACK_OF(X509)*)_chain);
|
||||
+ return d->kossl->OPENSSL_sk_num(static_cast<STACK *>(_chain));
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
@@ -123,8 +113,8 @@ QList<KSSLCertificate *> KSSLCertChain::getChain() const {
|
||||
#ifdef KSSL_HAVE_SSL
|
||||
STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
|
||||
|
||||
- for (int i = 0; i < sk_X509_num(x); i++) {
|
||||
- X509* x5 = sk_X509_value(x, i);
|
||||
+ for (int i = 0; i < d->kossl->OPENSSL_sk_num(reinterpret_cast<STACK *>(x)); i++) {
|
||||
+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_value(reinterpret_cast<STACK *>(x), i));
|
||||
if (!x5) continue;
|
||||
KSSLCertificate *nc = new KSSLCertificate;
|
||||
nc->setCert(d->kossl->X509_dup(x5));
|
||||
@@ -142,18 +132,18 @@ void KSSLCertChain::setChain(const QList<KSSLCertificate *>& chain) {
|
||||
STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
|
||||
|
||||
for (;;) {
|
||||
- X509* x5 = sk_X509_pop(x);
|
||||
+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK*>(x)));
|
||||
if (!x5) break;
|
||||
d->kossl->X509_free(x5);
|
||||
}
|
||||
- sk_X509_free(x);
|
||||
- _chain = NULL;
|
||||
+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK*>(x));
|
||||
+ _chain = NULL;
|
||||
}
|
||||
|
||||
if (chain.isEmpty()) return;
|
||||
- _chain = (void *)sk_new(NULL);
|
||||
+ _chain = (void *)d->kossl->OPENSSL_sk_new(NULL);
|
||||
foreach (KSSLCertificate *x, chain) {
|
||||
- sk_X509_push((STACK_OF(X509)*)_chain, d->kossl->X509_dup(x->getCert()));
|
||||
+ d->kossl->OPENSSL_sk_push(static_cast<STACK*>(_chain), d->kossl->X509_dup(x->getCert()));
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -166,23 +156,23 @@ if (_chain) {
|
||||
STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
|
||||
|
||||
for (;;) {
|
||||
- X509* x5 = sk_X509_pop(x);
|
||||
+ X509 *x5 = reinterpret_cast<X509 *>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK *>(x)));
|
||||
if (!x5) break;
|
||||
d->kossl->X509_free(x5);
|
||||
}
|
||||
- sk_X509_free(x);
|
||||
+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK *>(x));
|
||||
_chain = NULL;
|
||||
}
|
||||
|
||||
if (!stack_of_x509) return;
|
||||
|
||||
-_chain = (void *)sk_new(NULL);
|
||||
+_chain = (void *)d->kossl->OPENSSL_sk_new(NULL);
|
||||
STACK_OF(X509) *x = (STACK_OF(X509) *)stack_of_x509;
|
||||
|
||||
- for (int i = 0; i < sk_X509_num(x); i++) {
|
||||
- X509* x5 = sk_X509_value(x, i);
|
||||
+ for (int i = 0; i < d->kossl->OPENSSL_sk_num(reinterpret_cast<STACK *>(x)); i++) {
|
||||
+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_value(reinterpret_cast<STACK *>(x), i));
|
||||
if (!x5) continue;
|
||||
- sk_X509_push((STACK_OF(X509)*)_chain,d->kossl->X509_dup(x5));
|
||||
+ d->kossl->OPENSSL_sk_push(reinterpret_cast<STACK *>(_chain), d->kossl->X509_dup(x5));
|
||||
}
|
||||
|
||||
#else
|
||||
@@ -202,14 +192,3 @@ void KSSLCertChain::setCertChain(const QStringList& chain) {
|
||||
setChain(cl);
|
||||
}
|
||||
|
||||
-
|
||||
-#ifdef KSSL_HAVE_SSL
|
||||
-#undef sk_new
|
||||
-#undef sk_push
|
||||
-#undef sk_free
|
||||
-#undef sk_value
|
||||
-#undef sk_num
|
||||
-#undef sk_dup
|
||||
-#undef sk_pop
|
||||
-#endif
|
||||
-
|
||||
diff --git a/kio/kssl/ksslcertificate.cpp b/kio/kssl/ksslcertificate.cpp
|
||||
index 0d4fbd9cdc..c93d5c5b22 100644
|
||||
--- a/kio/kssl/ksslcertificate.cpp
|
||||
+++ b/kio/kssl/ksslcertificate.cpp
|
||||
@@ -200,14 +200,17 @@ QString KSSLCertificate::getSignatureText() const {
|
||||
char *s;
|
||||
int n, i;
|
||||
|
||||
- i = d->kossl->OBJ_obj2nid(d->m_cert->sig_alg->algorithm);
|
||||
+ const X509_ALGOR *algor;
|
||||
+ const ASN1_BIT_STRING *sig;
|
||||
+ d->kossl->X509_get0_signature(&sig, &algor, d->m_cert);
|
||||
+ i = d->kossl->OBJ_obj2nid(algor->algorithm);
|
||||
rc = i18n("Signature Algorithm: ");
|
||||
rc += (i == NID_undef)?i18n("Unknown"):QString(d->kossl->OBJ_nid2ln(i));
|
||||
|
||||
rc += '\n';
|
||||
rc += i18n("Signature Contents:");
|
||||
- n = d->m_cert->signature->length;
|
||||
- s = (char *)d->m_cert->signature->data;
|
||||
+ n = sig->length;
|
||||
+ s = (char *)sig->data;
|
||||
for (i = 0; i < n; ++i) {
|
||||
if (i%20 != 0) {
|
||||
rc += ':';
|
||||
@@ -233,9 +236,10 @@ void KSSLCertificate::getEmails(QStringList &to) const {
|
||||
}
|
||||
|
||||
STACK *s = d->kossl->X509_get1_email(d->m_cert);
|
||||
+ const int size = d->kossl->OPENSSL_sk_num(s);
|
||||
if (s) {
|
||||
- for(int n=0; n < s->num; n++) {
|
||||
- to.append(d->kossl->sk_value(s,n));
|
||||
+ for(int n=0; n < size; n++) {
|
||||
+ to.append(d->kossl->OPENSSL_sk_value(s,n));
|
||||
}
|
||||
d->kossl->X509_email_free(s);
|
||||
}
|
||||
@@ -317,13 +321,13 @@ QString rc = "";
|
||||
EVP_PKEY *pkey = d->kossl->X509_get_pubkey(d->m_cert);
|
||||
if (pkey) {
|
||||
#ifndef NO_RSA
|
||||
- if (pkey->type == EVP_PKEY_RSA) {
|
||||
+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_RSA) {
|
||||
rc = "RSA";
|
||||
}
|
||||
else
|
||||
#endif
|
||||
#ifndef NO_DSA
|
||||
- if (pkey->type == EVP_PKEY_DSA) {
|
||||
+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_DSA) {
|
||||
rc = "DSA";
|
||||
}
|
||||
else
|
||||
@@ -347,8 +351,10 @@ char *x = NULL;
|
||||
if (pkey) {
|
||||
rc = i18nc("Unknown", "Unknown key algorithm");
|
||||
#ifndef NO_RSA
|
||||
- if (pkey->type == EVP_PKEY_RSA) {
|
||||
- x = d->kossl->BN_bn2hex(pkey->pkey.rsa->n);
|
||||
+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_RSA) {
|
||||
+ const BIGNUM *n, *e;
|
||||
+ d->kossl->RSA_get0_key(d->kossl->EVP_PKEY_get0_RSA(pkey), &n, &e, NULL);
|
||||
+ x = d->kossl->BN_bn2hex(n);
|
||||
rc = i18n("Key type: RSA (%1 bit)", strlen(x)*4) + '\n';
|
||||
|
||||
rc += i18n("Modulus: ");
|
||||
@@ -364,15 +370,18 @@ char *x = NULL;
|
||||
rc += '\n';
|
||||
d->kossl->OPENSSL_free(x);
|
||||
|
||||
- x = d->kossl->BN_bn2hex(pkey->pkey.rsa->e);
|
||||
+ x = d->kossl->BN_bn2hex(e);
|
||||
rc += i18n("Exponent: 0x") + QLatin1String(x) +
|
||||
QLatin1String("\n");
|
||||
d->kossl->OPENSSL_free(x);
|
||||
}
|
||||
#endif
|
||||
#ifndef NO_DSA
|
||||
- if (pkey->type == EVP_PKEY_DSA) {
|
||||
- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->p);
|
||||
+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_DSA) {
|
||||
+ DSA *dsa = d->kossl->EVP_PKEY_get0_DSA(pkey);
|
||||
+ const BIGNUM *p, *q, *g;
|
||||
+ d->kossl->DSA_get0_pqg(dsa, &p, &q, &g);
|
||||
+ x = d->kossl->BN_bn2hex(p);
|
||||
// hack - this may not be always accurate
|
||||
rc = i18n("Key type: DSA (%1 bit)", strlen(x)*4) + '\n';
|
||||
|
||||
@@ -389,7 +398,7 @@ char *x = NULL;
|
||||
rc += '\n';
|
||||
d->kossl->OPENSSL_free(x);
|
||||
|
||||
- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->q);
|
||||
+ x = d->kossl->BN_bn2hex(q);
|
||||
rc += i18n("160 bit prime factor: ");
|
||||
for (unsigned int i = 0; i < strlen(x); i++) {
|
||||
if (i%40 != 0 && i%2 == 0) {
|
||||
@@ -403,7 +412,7 @@ char *x = NULL;
|
||||
rc += '\n';
|
||||
d->kossl->OPENSSL_free(x);
|
||||
|
||||
- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->g);
|
||||
+ x = d->kossl->BN_bn2hex(g);
|
||||
rc += QString("g: ");
|
||||
for (unsigned int i = 0; i < strlen(x); i++) {
|
||||
if (i%40 != 0 && i%2 == 0) {
|
||||
@@ -417,7 +426,9 @@ char *x = NULL;
|
||||
rc += '\n';
|
||||
d->kossl->OPENSSL_free(x);
|
||||
|
||||
- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->pub_key);
|
||||
+ const BIGNUM *pub_key;
|
||||
+ d->kossl->DSA_get0_key(dsa, &pub_key, NULL);
|
||||
+ x = d->kossl->BN_bn2hex(pub_key);
|
||||
rc += i18n("Public key: ");
|
||||
for (unsigned int i = 0; i < strlen(x); i++) {
|
||||
if (i%40 != 0 && i%2 == 0) {
|
||||
@@ -682,7 +693,7 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi
|
||||
return errors;
|
||||
}
|
||||
|
||||
- X509_STORE_set_verify_cb_func(certStore, X509Callback);
|
||||
+ d->kossl->X509_STORE_set_verify_cb(certStore, X509Callback);
|
||||
|
||||
certLookup = d->kossl->X509_STORE_add_lookup(certStore, d->kossl->X509_LOOKUP_file());
|
||||
if (!certLookup) {
|
||||
@@ -724,9 +735,9 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi
|
||||
KSSL_X509CallBack_ca = ca ? ca->d->m_cert : 0;
|
||||
KSSL_X509CallBack_ca_found = false;
|
||||
|
||||
- certStoreCTX->error = X509_V_OK;
|
||||
+ d->kossl->X509_STORE_CTX_set_error(certStoreCTX, X509_V_OK);
|
||||
rc = d->kossl->X509_verify_cert(certStoreCTX);
|
||||
- int errcode = certStoreCTX->error;
|
||||
+ int errcode = d->kossl->X509_STORE_CTX_get_error(certStoreCTX);
|
||||
if (ca && !KSSL_X509CallBack_ca_found) {
|
||||
ksslv = KSSLCertificate::Irrelevant;
|
||||
} else {
|
||||
@@ -739,9 +750,9 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi
|
||||
d->kossl->X509_STORE_CTX_set_purpose(certStoreCTX,
|
||||
X509_PURPOSE_NS_SSL_SERVER);
|
||||
|
||||
- certStoreCTX->error = X509_V_OK;
|
||||
+ d->kossl->X509_STORE_CTX_set_error(certStoreCTX, X509_V_OK);
|
||||
rc = d->kossl->X509_verify_cert(certStoreCTX);
|
||||
- errcode = certStoreCTX->error;
|
||||
+ errcode = d->kossl->X509_STORE_CTX_get_error(certStoreCTX);
|
||||
ksslv = processError(errcode);
|
||||
}
|
||||
d->kossl->X509_STORE_CTX_free(certStoreCTX);
|
||||
@@ -978,7 +989,7 @@ KSSLCertificate::KSSLValidation KSSLCertificate::processError(int ec) {
|
||||
|
||||
QString KSSLCertificate::getNotBefore() const {
|
||||
#ifdef KSSL_HAVE_SSL
|
||||
- return ASN1_UTCTIME_QString(X509_get_notBefore(d->m_cert));
|
||||
+ return ASN1_UTCTIME_QString(d->kossl->X509_getm_notBefore(d->m_cert));
|
||||
#else
|
||||
return QString();
|
||||
#endif
|
||||
@@ -987,7 +998,7 @@ QString KSSLCertificate::getNotBefore() const {
|
||||
|
||||
QString KSSLCertificate::getNotAfter() const {
|
||||
#ifdef KSSL_HAVE_SSL
|
||||
- return ASN1_UTCTIME_QString(X509_get_notAfter(d->m_cert));
|
||||
+ return ASN1_UTCTIME_QString(d->kossl->X509_getm_notAfter(d->m_cert));
|
||||
#else
|
||||
return QString();
|
||||
#endif
|
||||
@@ -996,7 +1007,7 @@ QString KSSLCertificate::getNotAfter() const {
|
||||
|
||||
QDateTime KSSLCertificate::getQDTNotBefore() const {
|
||||
#ifdef KSSL_HAVE_SSL
|
||||
- return ASN1_UTCTIME_QDateTime(X509_get_notBefore(d->m_cert), NULL);
|
||||
+ return ASN1_UTCTIME_QDateTime(d->kossl->X509_getm_notBefore(d->m_cert), NULL);
|
||||
#else
|
||||
return QDateTime::currentDateTime();
|
||||
#endif
|
||||
@@ -1005,7 +1016,7 @@ QDateTime KSSLCertificate::getQDTNotBefore() const {
|
||||
|
||||
QDateTime KSSLCertificate::getQDTNotAfter() const {
|
||||
#ifdef KSSL_HAVE_SSL
|
||||
- return ASN1_UTCTIME_QDateTime(X509_get_notAfter(d->m_cert), NULL);
|
||||
+ return ASN1_UTCTIME_QDateTime(d->kossl->X509_getm_notAfter(d->m_cert), NULL);
|
||||
#else
|
||||
return QDateTime::currentDateTime();
|
||||
#endif
|
||||
@@ -1210,7 +1221,8 @@ typedef struct NETSCAPE_X509_st
|
||||
// what a piece of crap this is
|
||||
QByteArray KSSLCertificate::toNetscape() {
|
||||
QByteArray qba;
|
||||
-#ifdef KSSL_HAVE_SSL
|
||||
+ // no equivalent in OpenSSL 1.1.0 (?), so behave as if we had no OpenSSL at all
|
||||
+#if KSSL_HAVE_SSL && OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
NETSCAPE_X509 nx;
|
||||
ASN1_OCTET_STRING hdr;
|
||||
KTemporaryFile ktf;
|
||||
@@ -1293,10 +1305,10 @@ QStringList KSSLCertificate::subjAltNames() const {
|
||||
return rc;
|
||||
}
|
||||
|
||||
- int cnt = d->kossl->sk_GENERAL_NAME_num(names);
|
||||
+ int cnt = d->kossl->OPENSSL_sk_num((STACK *)names);
|
||||
|
||||
for (int i = 0; i < cnt; i++) {
|
||||
- const GENERAL_NAME *val = (const GENERAL_NAME *)d->kossl->sk_value(names, i);
|
||||
+ const GENERAL_NAME *val = (const GENERAL_NAME *)d->kossl->OPENSSL_sk_value(names, i);
|
||||
if (val->type != GEN_DNS) {
|
||||
continue;
|
||||
}
|
||||
@@ -1308,7 +1320,7 @@ QStringList KSSLCertificate::subjAltNames() const {
|
||||
rc += s;
|
||||
}
|
||||
}
|
||||
- d->kossl->sk_free(names);
|
||||
+ d->kossl->OPENSSL_sk_free(names);
|
||||
#endif
|
||||
return rc;
|
||||
}
|
||||
--
|
||||
2.13.6
|
||||
|
27
kdelibs-4.14.9-myspell_paths.patch
Normal file
27
kdelibs-4.14.9-myspell_paths.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff -up kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspellclient.cpp.myspell_paths kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspellclient.cpp
|
||||
--- kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspellclient.cpp.myspell_paths 2015-05-28 20:27:39.000000000 -0500
|
||||
+++ kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspellclient.cpp 2015-06-04 17:59:10.824869047 -0500
|
||||
@@ -52,7 +52,7 @@ SpellerPlugin *HunspellClient::createSpe
|
||||
QStringList HunspellClient::languages() const
|
||||
{
|
||||
QStringList lst;
|
||||
- QDir dir("/usr/share/myspell/dicts/");
|
||||
+ QDir dir("/usr/share/myspell/");
|
||||
if(dir.exists())
|
||||
{
|
||||
QStringList lstDic = dir.entryList(QStringList("*.dic"), QDir::Files );
|
||||
diff -up kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspelldict.cpp.myspell_paths kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspelldict.cpp
|
||||
--- kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspelldict.cpp.myspell_paths 2015-05-28 20:27:39.000000000 -0500
|
||||
+++ kdelibs-4.14.9/sonnet/plugins/hunspell/kspell_hunspelldict.cpp 2015-06-04 17:58:49.055774079 -0500
|
||||
@@ -31,9 +31,9 @@ HunspellDict::HunspellDict( const QStrin
|
||||
: SpellerPlugin(lang), m_speller(0)
|
||||
{
|
||||
kDebug()<<" HunspellDict::HunspellDict( const QString& lang ):"<<lang;
|
||||
- QString dic=QString("/usr/share/myspell/dicts/%1.dic").arg(lang);
|
||||
+ QString dic=QString("/usr/share/myspell/%1.dic").arg(lang);
|
||||
if (QFileInfo(dic).exists())
|
||||
- m_speller = new Hunspell(QString("/usr/share/myspell/dicts/%1.aff").arg(lang).toUtf8().constData(),dic.toUtf8().constData());
|
||||
+ m_speller = new Hunspell(QString("/usr/share/myspell/%1.aff").arg(lang).toUtf8().constData(),dic.toUtf8().constData());
|
||||
else
|
||||
m_speller = 0;
|
||||
kDebug()<<" dddddd "<<m_speller;
|
@ -1,59 +0,0 @@
|
||||
diff -up kdelibs-4.2.85/kdecore/kernel/kstandarddirs.cpp.libexecdir kdelibs-4.2.85/kdecore/kernel/kstandarddirs.cpp
|
||||
--- kdelibs-4.2.85/kdecore/kernel/kstandarddirs.cpp.libexecdir 2009-05-06 05:14:38.000000000 -0500
|
||||
+++ kdelibs-4.2.85/kdecore/kernel/kstandarddirs.cpp 2009-05-14 11:34:04.732889142 -0500
|
||||
@@ -1759,7 +1759,7 @@ void KStandardDirs::addKDEDefaults()
|
||||
addResourceType(types_string + types_indices[index], 0, types_string + types_indices[index+1], true);
|
||||
index+=2;
|
||||
}
|
||||
- addResourceType("exe", "lib", "kde4/libexec", true );
|
||||
+ addResourceType("exe", 0, "libexec/kde4", true );
|
||||
|
||||
addResourceDir("home", QDir::homePath(), false);
|
||||
|
||||
diff -up kdelibs-4.2.85/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir kdelibs-4.2.85/kdecore/kernel/kstandarddirs_unix.cpp
|
||||
--- kdelibs-4.2.85/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir 2008-05-21 06:08:57.000000000 -0500
|
||||
+++ kdelibs-4.2.85/kdecore/kernel/kstandarddirs_unix.cpp 2009-05-14 11:30:40.737623244 -0500
|
||||
@@ -62,7 +62,7 @@ QString KStandardDirs::installPath(const
|
||||
if (strcmp("lib", type) == 0)
|
||||
return QString::fromLatin1(LIB_INSTALL_DIR "/");
|
||||
if (strcmp("libexec", type) == 0)
|
||||
- return QString::fromLatin1(KDEDIR "/lib" KDELIBSUFF "/kde4/libexec/");
|
||||
+ return QString::fromLatin1(LIBEXEC_INSTALL_DIR "/");
|
||||
if (strcmp("locale", type) == 0)
|
||||
return QString::fromLatin1(LOCALE_INSTALL_DIR "/");
|
||||
break;
|
||||
diff -up kdelibs-4.2.85/kdecore/tests/kstandarddirstest.cpp.libexecdir kdelibs-4.2.85/kdecore/tests/kstandarddirstest.cpp
|
||||
--- kdelibs-4.2.85/kdecore/tests/kstandarddirstest.cpp.libexecdir 2009-02-27 06:31:32.000000000 -0600
|
||||
+++ kdelibs-4.2.85/kdecore/tests/kstandarddirstest.cpp 2009-05-14 11:30:40.737623244 -0500
|
||||
@@ -74,8 +74,9 @@ void KStandarddirsTest::testFindResource
|
||||
#define KIOSLAVE "bin/kioslave.exe"
|
||||
#else
|
||||
#define EXT ""
|
||||
-#define KIOSLAVE "kde4/libexec/kioslave"
|
||||
+#define KIOSLAVE "libexec/kde4/kioslave"
|
||||
#endif
|
||||
+
|
||||
const QString bin = KGlobal::dirs()->findResource( "exe", "kioslave" EXT );
|
||||
QVERIFY( !bin.isEmpty() );
|
||||
QVERIFY( bin.endsWith( KIOSLAVE ) );
|
||||
@@ -174,7 +175,7 @@ void KStandarddirsTest::testFindExe()
|
||||
// findExe with a result in libexec
|
||||
const QString lnusertemp = KGlobal::dirs()->findExe( "lnusertemp" );
|
||||
QVERIFY( !lnusertemp.isEmpty() );
|
||||
- QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT ) );
|
||||
+ QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT ) || lnusertemp.endsWith( "libexec/kde4/lnusertemp" EXT ) );
|
||||
#endif
|
||||
|
||||
// Check the "exe" resource too
|
||||
diff -up kdelibs-4.2.85/kio/tests/krununittest.cpp.libexecdir kdelibs-4.2.85/kio/tests/krununittest.cpp
|
||||
--- kdelibs-4.2.85/kio/tests/krununittest.cpp.libexecdir 2008-05-21 06:08:08.000000000 -0500
|
||||
+++ kdelibs-4.2.85/kio/tests/krununittest.cpp 2009-05-14 11:30:40.737623244 -0500
|
||||
@@ -139,7 +139,7 @@ void KRunUnitTest::testProcessDesktopExe
|
||||
if (kmailservice.isEmpty()) kmailservice = "kmailservice";
|
||||
if (!kdeinit.isEmpty()) {
|
||||
QVERIFY(!kmailservice.isEmpty());
|
||||
- QVERIFY(kmailservice.contains("kde4/libexec"));
|
||||
+ QVERIFY(kmailservice.contains("kde4/libexec") || kmailservice.contains("libexec/kde4"));
|
||||
}
|
||||
|
||||
QTest::newRow("%U l0") << "kdeinit4 %U" << l0 << false << kdeinit;
|
@ -1,69 +0,0 @@
|
||||
diff -Nur kdelibs-4.3.1.orig/kio/kssl/kopenssl.cpp kdelibs-4.3.1/kio/kssl/kopenssl.cpp
|
||||
--- kdelibs-4.3.1.orig/kio/kssl/kopenssl.cpp 2008-10-23 01:05:00.000000000 +0200
|
||||
+++ kdelibs-4.3.1/kio/kssl/kopenssl.cpp 2009-09-04 14:09:22.000000000 +0200
|
||||
@@ -196,6 +196,7 @@
|
||||
static X509_NAME *(*K_X509_NAME_new)() = 0L;
|
||||
static int (*K_X509_REQ_set_subject_name)(X509_REQ*,X509_NAME*) = 0L;
|
||||
static unsigned char *(*K_ASN1_STRING_data)(ASN1_STRING*) = 0L;
|
||||
+static int (*K_ASN1_STRING_length)(ASN1_STRING*) = 0L;
|
||||
static STACK_OF(SSL_CIPHER) *(*K_SSL_get_ciphers)(const SSL *ssl) = 0L;
|
||||
|
||||
#endif
|
||||
@@ -530,6 +531,7 @@
|
||||
K_X509_NAME_new = (X509_NAME *(*)()) d->cryptoLib->resolveFunction("X509_NAME_new");
|
||||
K_X509_REQ_set_subject_name = (int (*)(X509_REQ*,X509_NAME*)) d->cryptoLib->resolveFunction("X509_REQ_set_subject_name");
|
||||
K_ASN1_STRING_data = (unsigned char *(*)(ASN1_STRING*)) d->cryptoLib->resolveFunction("ASN1_STRING_data");
|
||||
+ K_ASN1_STRING_length = (int (*)(ASN1_STRING*)) d->cryptoLib->resolveFunction("ASN1_STRING_length");
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -1577,6 +1579,13 @@
|
||||
return 0L;
|
||||
}
|
||||
|
||||
+
|
||||
+int KOpenSSLProxy::ASN1_STRING_length(ASN1_STRING *x) {
|
||||
+ if (K_ASN1_STRING_length) return (K_ASN1_STRING_length)(x);
|
||||
+ return 0L;
|
||||
+}
|
||||
+
|
||||
+
|
||||
STACK_OF(SSL_CIPHER) *KOpenSSLProxy::SSL_get_ciphers(const SSL* ssl) {
|
||||
if (K_SSL_get_ciphers) return (K_SSL_get_ciphers)(ssl);
|
||||
return 0L;
|
||||
diff -Nur kdelibs-4.3.1.orig/kio/kssl/kopenssl.h kdelibs-4.3.1/kio/kssl/kopenssl.h
|
||||
--- kdelibs-4.3.1.orig/kio/kssl/kopenssl.h 2009-05-19 14:06:53.000000000 +0200
|
||||
+++ kdelibs-4.3.1/kio/kssl/kopenssl.h 2009-09-04 14:09:22.000000000 +0200
|
||||
@@ -589,13 +589,17 @@
|
||||
*/
|
||||
void ASN1_INTEGER_free(ASN1_INTEGER *x);
|
||||
|
||||
-
|
||||
/*
|
||||
* ASN1_STRING_data
|
||||
*/
|
||||
unsigned char *ASN1_STRING_data(ASN1_STRING *x);
|
||||
|
||||
/*
|
||||
+ * ASN1_STRING_length
|
||||
+ */
|
||||
+ int ASN1_STRING_length(ASN1_STRING *x);
|
||||
+
|
||||
+ /*
|
||||
*
|
||||
*/
|
||||
int OBJ_obj2nid(ASN1_OBJECT *o);
|
||||
diff -Nur kdelibs-4.3.1.orig/kio/kssl/ksslcertificate.cpp kdelibs-4.3.1/kio/kssl/ksslcertificate.cpp
|
||||
--- kdelibs-4.3.1.orig/kio/kssl/ksslcertificate.cpp 2009-01-16 16:07:05.000000000 +0100
|
||||
+++ kdelibs-4.3.1/kio/kssl/ksslcertificate.cpp 2009-09-04 14:09:22.000000000 +0200
|
||||
@@ -1305,7 +1305,9 @@
|
||||
}
|
||||
|
||||
QString s = (const char *)d->kossl->ASN1_STRING_data(val->d.ia5);
|
||||
- if (!s.isEmpty()) {
|
||||
+ if (!s.isEmpty() &&
|
||||
+ /* skip subjectAltNames with embedded NULs */
|
||||
+ s.length() == d->kossl->ASN1_STRING_length(val->d.ia5)) {
|
||||
rc += s;
|
||||
}
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
diff -up kdelibs-4.3.1/kdeui/util/kcrash.cpp.orig kdelibs-4.3.1/kdeui/util/kcrash.cpp
|
||||
--- kdelibs-4.3.1/kdeui/util/kcrash.cpp.orig 2009-09-21 17:42:19.000000000 +0200
|
||||
+++ kdelibs-4.3.1/kdeui/util/kcrash.cpp 2009-09-21 17:43:44.000000000 +0200
|
||||
@@ -67,7 +67,7 @@ static char *s_autoRestartCommand = 0;
|
||||
static char *s_appPath = 0;
|
||||
static char *s_drkonqiPath = 0;
|
||||
static KCrash::CrashFlags s_flags = 0;
|
||||
-static bool s_launchDrKonqi = true;
|
||||
+static bool s_launchDrKonqi = false;
|
||||
|
||||
namespace KCrash
|
||||
{
|
@ -1,119 +0,0 @@
|
||||
diff -ur kdelibs-4.3.80/solid/solid/backends/hal/halstorageaccess.cpp kdelibs-4.3.80-policykit-workaround/solid/solid/backends/hal/halstorageaccess.cpp
|
||||
--- kdelibs-4.3.80/solid/solid/backends/hal/halstorageaccess.cpp 2009-12-01 01:27:28.000000000 +0100
|
||||
+++ kdelibs-4.3.80-policykit-workaround/solid/solid/backends/hal/halstorageaccess.cpp 2009-12-03 03:49:55.000000000 +0100
|
||||
@@ -17,6 +17,8 @@
|
||||
|
||||
*/
|
||||
|
||||
+#include <config-prefix.h> // for LIBEXEC_INSTALL_DIR
|
||||
+
|
||||
#include "halstorageaccess.h"
|
||||
|
||||
#include "halfstabhandling.h"
|
||||
@@ -177,11 +179,21 @@
|
||||
{
|
||||
// TODO: Better error reporting here
|
||||
if (m_setupInProgress) {
|
||||
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
|
||||
+ if (callPrivilegedMount())
|
||||
+ return;
|
||||
+ // if we fail to run kdesu, fall through and emit the original PermissionDeniedByPolicy error
|
||||
+ }
|
||||
m_setupInProgress = false;
|
||||
emit setupDone(Solid::UnauthorizedOperation,
|
||||
QString(error.name()+": "+error.message()),
|
||||
m_device->udi());
|
||||
} else if (m_teardownInProgress) {
|
||||
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
|
||||
+ if (callPrivilegedUnmount())
|
||||
+ return;
|
||||
+ // if we fail to run kdesu, fall through and emit the original PermissionDeniedByPolicy error
|
||||
+ }
|
||||
m_teardownInProgress = false;
|
||||
emit teardownDone(Solid::UnauthorizedOperation,
|
||||
QString(error.name()+": "+error.message()),
|
||||
@@ -311,8 +323,9 @@
|
||||
#else
|
||||
QString uid="uid=";
|
||||
#endif
|
||||
- if (halOptions.contains(uid)) {
|
||||
- options << uid+QString::number(::getuid());
|
||||
+ if (halOptions.contains(uid) &&
|
||||
+ (fstype == "vfat" || fstype == "iso9660" || fstype == "hfs" || fstype == "udf")) {
|
||||
+ options << uid+QString::number(::getuid());
|
||||
}
|
||||
|
||||
#ifdef Q_OS_FREEBSD
|
||||
@@ -354,6 +367,59 @@
|
||||
SLOT(slotDBusError(const QDBusError &)));
|
||||
}
|
||||
|
||||
+bool Solid::Backends::Hal::StorageAccess::callPrivilegedMount()
|
||||
+{
|
||||
+ QString udi = m_device->udi();
|
||||
+ QString options;
|
||||
+ QStringList halOptions = m_device->property("volume.mount.valid_options").toStringList();
|
||||
+ QString fstype = m_device->property("volume.fstype").toString();
|
||||
+
|
||||
+ if (halOptions.contains("uid=")
|
||||
+ && (fstype == "vfat" || fstype == "iso9660" || fstype == "hfs" || fstype == "udf")) {
|
||||
+ options = "uid="+QString::number(::getuid());
|
||||
+ }
|
||||
+
|
||||
+ m_process = new QProcess(this);
|
||||
+
|
||||
+ connect(m_process, SIGNAL(finished(int, QProcess::ExitStatus)),
|
||||
+ this, SLOT(slotProcessFinished(int, QProcess::ExitStatus)));
|
||||
+
|
||||
+ m_process->start(LIBEXEC_INSTALL_DIR "/kdesu", QStringList() << "-d" << "-t"
|
||||
+ << "--noignorebutton" << "-c"
|
||||
+ << QString::fromLatin1("dbus-send --system --print-reply --dest=org.freedesktop.Hal %1 "
|
||||
+ "org.freedesktop.Hal.Device.Volume.Mount string: string: "
|
||||
+ "array:string:%2").arg(udi).arg(options));
|
||||
+
|
||||
+ if (m_process->waitForStarted()) {
|
||||
+ return true;
|
||||
+ } else {
|
||||
+ delete m_process;
|
||||
+ return false;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+bool Solid::Backends::Hal::StorageAccess::callPrivilegedUnmount()
|
||||
+{
|
||||
+ QString udi = m_device->udi();
|
||||
+
|
||||
+ m_process = new QProcess(this);
|
||||
+
|
||||
+ connect(m_process, SIGNAL(finished(int, QProcess::ExitStatus)),
|
||||
+ this, SLOT(slotProcessFinished(int, QProcess::ExitStatus)));
|
||||
+
|
||||
+ m_process->start(LIBEXEC_INSTALL_DIR "/kdesu", QStringList() << "-d" << "-t"
|
||||
+ << "--noignorebutton" << "-c"
|
||||
+ << QString::fromLatin1("dbus-send --system --print-reply --dest=org.freedesktop.Hal %1 "
|
||||
+ "org.freedesktop.Hal.Device.Volume.Unmount array:string:").arg(udi));
|
||||
+
|
||||
+ if (m_process->waitForStarted()) {
|
||||
+ return true;
|
||||
+ } else {
|
||||
+ delete m_process;
|
||||
+ return false;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
bool StorageAccess::callHalVolumeUnmount()
|
||||
{
|
||||
QDBusConnection c = QDBusConnection::systemBus();
|
||||
diff -ur kdelibs-4.3.80/solid/solid/backends/hal/halstorageaccess.h kdelibs-4.3.80-policykit-workaround/solid/solid/backends/hal/halstorageaccess.h
|
||||
--- kdelibs-4.3.80/solid/solid/backends/hal/halstorageaccess.h 2009-12-01 01:27:28.000000000 +0100
|
||||
+++ kdelibs-4.3.80-policykit-workaround/solid/solid/backends/hal/halstorageaccess.h 2009-12-03 03:49:55.000000000 +0100
|
||||
@@ -70,6 +70,9 @@
|
||||
bool callSystemMount();
|
||||
bool callSystemUnmount();
|
||||
|
||||
+ bool callPrivilegedMount();
|
||||
+ bool callPrivilegedUnmount();
|
||||
+
|
||||
bool requestPassphrase();
|
||||
void callCryptoSetup(const QString &passphrase);
|
||||
bool callCryptoTeardown();
|
@ -1,25 +0,0 @@
|
||||
diff -up kdelibs-4.3.98/cmake/modules/FindKDE4Internal.cmake.no_rpath kdelibs-4.3.98/cmake/modules/FindKDE4Internal.cmake
|
||||
--- kdelibs-4.3.98/cmake/modules/FindKDE4Internal.cmake.no_rpath 2010-02-02 08:56:04.117624211 -0600
|
||||
+++ kdelibs-4.3.98/cmake/modules/FindKDE4Internal.cmake 2010-02-02 09:51:15.752373945 -0600
|
||||
@@ -947,10 +947,19 @@ if (UNIX)
|
||||
set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR})
|
||||
else (APPLE)
|
||||
# add our LIB_INSTALL_DIR to the RPATH and use the RPATH figured out by cmake when compiling
|
||||
- set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} )
|
||||
+ # set(CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR} )
|
||||
+ message(STATUS "CMAKE_SYSTEM_LIBRARY_PATH: ${CMAKE_SYSTEM_LIBRARY_PATH}")
|
||||
+ message(STATUS "LIB_INSTALL_DIR: ${LIB_INSTALL_DIR}")
|
||||
+ list(FIND CMAKE_SYSTEM_LIBRARY_PATH ${LIB_INSTALL_DIR} _LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH)
|
||||
+ message(STATUS "_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH: ${_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH}")
|
||||
+ if(${_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH} EQUAL -1)
|
||||
+ message(STATUS "appending to CMAKE_INSTALL_RPATH: ${LIB_INSTALL_DIR}")
|
||||
+ list(APPEND CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR})
|
||||
+ endif(${_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH} EQUAL -1)
|
||||
+
|
||||
set(CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
||||
- set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
||||
endif (APPLE)
|
||||
endif (UNIX)
|
||||
|
@ -1,168 +0,0 @@
|
||||
--- branches/KDE/4.4/kdelibs/kdeui/util/kpixmapcache.cpp 2010/01/24 02:37:20 1079318
|
||||
+++ branches/KDE/4.4/kdelibs/kdeui/util/kpixmapcache.cpp 2010/03/25 02:24:54 1107210
|
||||
@@ -40,6 +40,7 @@
|
||||
#include <kstandarddirs.h>
|
||||
#include <kdebug.h>
|
||||
#include <klockfile.h>
|
||||
+#include <ksavefile.h>
|
||||
#include <ksvgrenderer.h>
|
||||
#include <kdefakes.h>
|
||||
|
||||
@@ -633,6 +634,10 @@
|
||||
qint32 leftchild, rightchild;
|
||||
stream >> fkey >> foffset >> timesused >> lastused >> leftchild >> rightchild;
|
||||
|
||||
+ if (fkey.isEmpty()) {
|
||||
+ return start;
|
||||
+ }
|
||||
+
|
||||
if (key < fkey) {
|
||||
if (leftchild) {
|
||||
return binarySearchKey(stream, key, leftchild);
|
||||
@@ -660,12 +665,23 @@
|
||||
// exist yet and there are no entries. Otherwise, do a binary search
|
||||
// starting from the root node.
|
||||
if (!stream.atEnd()) {
|
||||
+ // One exception is that the root node may exist but be invalid,
|
||||
+ // which can happen when the cache data is discarded. This is
|
||||
+ // represented by an empty fkey
|
||||
+ QString fkey;
|
||||
+ stream >> fkey;
|
||||
+
|
||||
+ if (fkey.isEmpty()) {
|
||||
+ delete device;
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
int nodeoffset = binarySearchKey(stream, key, mIndexRootOffset);
|
||||
|
||||
// Load the found entry and check if it's the one we're looking for.
|
||||
device->seek(nodeoffset);
|
||||
- QString fkey;
|
||||
stream >> fkey;
|
||||
+
|
||||
if (fkey == key) {
|
||||
// Read offset and statistics
|
||||
qint32 foffset;
|
||||
@@ -814,7 +830,9 @@
|
||||
QString fkey;
|
||||
stream.device()->seek(parentoffset);
|
||||
stream >> fkey;
|
||||
- if (key == fkey) {
|
||||
+
|
||||
+ // The key would be empty if the cache had been discarded.
|
||||
+ if (key == fkey || fkey.isEmpty()) {
|
||||
// We're overwriting an existing entry
|
||||
offset = parentoffset;
|
||||
}
|
||||
@@ -1195,16 +1213,14 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
- d->invalidateMmapFiles();
|
||||
- d->unmmapFiles();
|
||||
-
|
||||
- d->mEnabled = false;
|
||||
-
|
||||
KPCLockFile lock(d->mLockFileName);
|
||||
// Hope we got the lock...
|
||||
|
||||
+ d->invalidateMmapFiles();
|
||||
+ d->mEnabled = false;
|
||||
+
|
||||
// Create index file
|
||||
- QFile indexfile(d->mIndexFile);
|
||||
+ KSaveFile indexfile(d->mIndexFile);
|
||||
if (!indexfile.open(QIODevice::WriteOnly)) {
|
||||
kError() << "Couldn't create index file" << d->mIndexFile;
|
||||
return false;
|
||||
@@ -1212,7 +1228,7 @@
|
||||
|
||||
d->mCacheId = ::time(0);
|
||||
d->mTimestamp = ::time(0);
|
||||
-
|
||||
+
|
||||
// We can't know the full size until custom headers written.
|
||||
// mmapFiles() will take care of correcting the size.
|
||||
KPixmapCacheIndexHeader indexHeader = { {0}, KPIXMAPCACHE_VERSION, 0, d->mCacheId, d->mTimestamp };
|
||||
@@ -1221,7 +1237,7 @@
|
||||
indexfile.write(reinterpret_cast<char*>(&indexHeader), sizeof indexHeader);
|
||||
|
||||
// Create data file
|
||||
- QFile datafile(d->mDataFile);
|
||||
+ KSaveFile datafile(d->mDataFile);
|
||||
if (!datafile.open(QIODevice::WriteOnly)) {
|
||||
kError() << "Couldn't create data file" << d->mDataFile;
|
||||
return false;
|
||||
@@ -1243,40 +1259,54 @@
|
||||
// Close the files and mmap them (if mmapping is used)
|
||||
indexfile.close();
|
||||
datafile.close();
|
||||
+ indexfile.finalize();
|
||||
+ datafile.finalize();
|
||||
+
|
||||
d->mEnabled = true;
|
||||
d->mmapFiles();
|
||||
+
|
||||
return true;
|
||||
}
|
||||
|
||||
void KPixmapCache::deleteCache(const QString& name)
|
||||
{
|
||||
- foreach (KPixmapCache::Private *d, Private::mCaches) {
|
||||
- if (d->mName == name && d->mInited) {
|
||||
- d->q->discard();
|
||||
- }
|
||||
- }
|
||||
+ QString indexFile = KGlobal::dirs()->locateLocal("cache", "kpc/" + name + ".index");
|
||||
+ QString dataFile = KGlobal::dirs()->locateLocal("cache", "kpc/" + name + ".data");
|
||||
+
|
||||
+ QFile::remove(indexFile);
|
||||
+ QFile::remove(dataFile);
|
||||
}
|
||||
|
||||
void KPixmapCache::discard()
|
||||
{
|
||||
- d->invalidateMmapFiles();
|
||||
- d->unmmapFiles();
|
||||
- d->mInited = false;
|
||||
+ // To "discard" the cache we simply have to make sure that every that
|
||||
+ // was in there before is no longer present when we search for them.
|
||||
+ // Easiest way to do *that* is to simply delete the index.
|
||||
+
|
||||
+ KPCLockFile lock(d->mLockFileName);
|
||||
+ if(!lock.isValid()) {
|
||||
+ kError(264) << "Unable to lock pixmap cache when trying to discard it";
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ QIODevice *device = d->indexDevice();
|
||||
+ if (!device) {
|
||||
+ kError(264) << "Unable to access index when trying to discard cache";
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ device->seek(d->mIndexRootOffset);
|
||||
+ QDataStream stream(device);
|
||||
+
|
||||
+ // Stream an empty QString as the hash key to signify that the cache
|
||||
+ // has been discarded.
|
||||
+ stream << QString();
|
||||
|
||||
if (d->mUseQPixmapCache) {
|
||||
// TODO: This is broken, it removes every cached QPixmap in the whole
|
||||
// process, not just this KPixmapCache.
|
||||
QPixmapCache::clear();
|
||||
}
|
||||
-
|
||||
- QString indexFile = KGlobal::dirs()->locateLocal("cache", "kpc/" + d->mName + ".index");
|
||||
- QString dataFile = KGlobal::dirs()->locateLocal("cache", "kpc/" + d->mName + ".data");
|
||||
-
|
||||
- QFile::remove(indexFile);
|
||||
- QFile::remove(dataFile);
|
||||
-
|
||||
- // No need to remove the lockfile
|
||||
- d->init();
|
||||
}
|
||||
|
||||
void KPixmapCache::removeEntries(int newsize)
|
60
kdelibs-4.7.0-knewstuff2_gpg2.patch
Normal file
60
kdelibs-4.7.0-knewstuff2_gpg2.patch
Normal file
@ -0,0 +1,60 @@
|
||||
diff -up kdelibs-4.7.0/knewstuff/knewstuff2/core/security.cpp.knewstuff2_gpg2 kdelibs-4.7.0/knewstuff/knewstuff2/core/security.cpp
|
||||
--- kdelibs-4.7.0/knewstuff/knewstuff2/core/security.cpp.knewstuff2_gpg2 2011-05-20 15:24:54.000000000 -0500
|
||||
+++ kdelibs-4.7.0/knewstuff/knewstuff2/core/security.cpp 2011-09-06 11:29:18.939251150 -0500
|
||||
@@ -36,9 +36,20 @@
|
||||
#include <kmessagebox.h>
|
||||
#include <kpassworddialog.h>
|
||||
#include <kprocess.h>
|
||||
+#include <kstandarddirs.h>
|
||||
|
||||
using namespace KNS;
|
||||
|
||||
+static QString gpgExecutable()
|
||||
+{
|
||||
+ QString gpgExe = KStandardDirs::findExe( "gpg" );
|
||||
+ if ( gpgExe.isEmpty() )
|
||||
+ gpgExe = KStandardDirs::findExe( "gpg2" );
|
||||
+ if ( gpgExe.isEmpty() )
|
||||
+ return QLatin1String( "gpg" );
|
||||
+ return gpgExe;
|
||||
+}
|
||||
+
|
||||
Security::Security()
|
||||
{
|
||||
m_keysRead = false;
|
||||
@@ -61,7 +72,7 @@ void Security::readKeys()
|
||||
m_runMode = List;
|
||||
m_keys.clear();
|
||||
m_process = new KProcess();
|
||||
- *m_process << "gpg"
|
||||
+ *m_process << gpgExecutable()
|
||||
<< "--no-secmem-warning"
|
||||
<< "--no-tty"
|
||||
<< "--with-colon"
|
||||
@@ -87,7 +98,7 @@ void Security::readSecretKeys()
|
||||
}
|
||||
m_runMode = ListSecret;
|
||||
m_process = new KProcess();
|
||||
- *m_process << "gpg"
|
||||
+ *m_process << gpgExecutable()
|
||||
<< "--no-secmem-warning"
|
||||
<< "--no-tty"
|
||||
<< "--with-colon"
|
||||
@@ -260,7 +271,7 @@ void Security::slotCheckValidity()
|
||||
|
||||
//verify the signature
|
||||
m_process = new KProcess();
|
||||
- *m_process << "gpg"
|
||||
+ *m_process << gpgExecutable()
|
||||
<< "--no-secmem-warning"
|
||||
<< "--status-fd=2"
|
||||
<< "--command-fd=0"
|
||||
@@ -342,7 +353,7 @@ void Security::slotSignFile()
|
||||
|
||||
//verify the signature
|
||||
m_process = new KProcess();
|
||||
- *m_process << "gpg"
|
||||
+ *m_process << gpgExecutable()
|
||||
<< "--no-secmem-warning"
|
||||
<< "--status-fd=2"
|
||||
<< "--command-fd=0"
|
22
kdelibs-4.7.2-kjs-s390.patch
Normal file
22
kdelibs-4.7.2-kjs-s390.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff -up kdelibs-4.7.2/kjs/wtf/Platform.h.me kdelibs-4.7.2/kjs/wtf/Platform.h
|
||||
--- kdelibs-4.7.2/kjs/wtf/Platform.h.me 2011-12-06 10:10:08.372356038 -0500
|
||||
+++ kdelibs-4.7.2/kjs/wtf/Platform.h 2011-12-06 10:48:51.962357831 -0500
|
||||
@@ -97,6 +97,18 @@
|
||||
|
||||
/* CPU */
|
||||
|
||||
+/* PLATFORM(S390X) - S390X 64-bit */
|
||||
+#if defined(__s390x__)
|
||||
+#define WTF_PLATFORM_S390X 1
|
||||
+#define WTF_PLATFORM_BIG_ENDIAN 1
|
||||
+#endif
|
||||
+
|
||||
+/* PLATFORM(S390) - S390 32-bit */
|
||||
+#if defined(__s390__)
|
||||
+#define WTF_PLATFORM_S390 1
|
||||
+#define WTF_PLATFORM_BIG_ENDIAN 1
|
||||
+#endif
|
||||
+
|
||||
/* PLATFORM(PPC) */
|
||||
#if defined(__ppc__) \
|
||||
|| defined(__PPC__) \
|
18
kdelibs-4.8.4-kjs-locale.patch
Normal file
18
kdelibs-4.8.4-kjs-locale.patch
Normal file
@ -0,0 +1,18 @@
|
||||
diff -up kdelibs-4.8.4/khtml/ecma/kjs_navigator.cpp.me kdelibs-4.8.4/khtml/ecma/kjs_navigator.cpp
|
||||
--- kdelibs-4.8.4/khtml/ecma/kjs_navigator.cpp.me 2012-06-06 22:49:52.542044112 +0200
|
||||
+++ kdelibs-4.8.4/khtml/ecma/kjs_navigator.cpp 2012-07-12 11:52:50.973049316 +0200
|
||||
@@ -261,7 +261,13 @@ JSValue *Navigator::getValueProperty(Exe
|
||||
case BrowserLanguage:
|
||||
case Language:
|
||||
case UserLanguage:
|
||||
- return jsString(KGlobal::locale()->language());
|
||||
+ {
|
||||
+ QString l = KGlobal::locale()->language();
|
||||
+ if ( l.contains(QLatin1Char('_')) )
|
||||
+ return jsString(l.replace(QLatin1Char('_'), QLatin1Char('-')));
|
||||
+ else
|
||||
+ return jsString(l + QLatin1Char('-') + KGlobal::locale()->country().toUpper());
|
||||
+ }
|
||||
case UserAgent:
|
||||
return jsString(userAgent);
|
||||
case Platform:
|
12
kdelibs-4.9.3-kcm_ssl.patch
Normal file
12
kdelibs-4.9.3-kcm_ssl.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kdelibs-4.9.3/kio/kssl/kcm/cacertificatespage.cpp.orig kdelibs-4.9.3/kio/kssl/kcm/cacertificatespage.cpp
|
||||
--- kdelibs-4.9.3/kio/kssl/kcm/cacertificatespage.cpp.orig 2012-11-29 15:37:07.458858688 +0100
|
||||
+++ kdelibs-4.9.3/kio/kssl/kcm/cacertificatespage.cpp 2012-11-29 13:52:05.243926802 +0100
|
||||
@@ -291,7 +291,7 @@ void CaCertificatesPage::removeSelection
|
||||
void CaCertificatesPage::addCertificateClicked()
|
||||
{
|
||||
QStringList certFiles
|
||||
- = KFileDialog::getOpenFileNames(KUrl(), QLatin1String("application/x-x509-ca-cert"),
|
||||
+ = KFileDialog::getOpenFileNames(KUrl(), QLatin1String("*.pem *.cert *.crt *.der"),
|
||||
this, i18n("Pick Certificates"));
|
||||
|
||||
QList<QSslCertificate> certs;
|
@ -1,45 +1,7 @@
|
||||
diff -up kdelibs-4.3.85/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel kdelibs-4.3.85/kdecore/kconfig_compiler/checkkcfg.pl
|
||||
--- kdelibs-4.3.85/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel 2008-05-21 06:09:13.000000000 -0500
|
||||
+++ kdelibs-4.3.85/kdecore/kconfig_compiler/checkkcfg.pl 2009-12-18 08:39:50.000000000 -0600
|
||||
@@ -15,12 +15,12 @@ $file_cpp = "$filebase.cpp";
|
||||
|
||||
$kcfgc = $file . "c";
|
||||
|
||||
-$cmd = "./kconfig_compiler $file $kcfgc";
|
||||
+$cmd = "./kconfig_compiler4 $file $kcfgc";
|
||||
|
||||
#print "CMD $cmd\n";
|
||||
|
||||
if ( system( $cmd ) != 0 ) {
|
||||
- print STDERR "Unable to run kconfig_compiler\n";
|
||||
+ print STDERR "Unable to run kconfig_compiler4\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
diff -up kdelibs-4.3.85/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.3.85/kdecore/kconfig_compiler/CMakeLists.txt
|
||||
--- kdelibs-4.3.85/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel 2009-10-26 04:15:46.000000000 -0500
|
||||
+++ kdelibs-4.3.85/kdecore/kconfig_compiler/CMakeLists.txt 2009-12-18 08:39:50.000000000 -0600
|
||||
@@ -4,13 +4,13 @@
|
||||
set(kconfig_compiler_SRCS kconfig_compiler.cpp)
|
||||
|
||||
|
||||
-kde4_add_executable(kconfig_compiler NOGUI ${kconfig_compiler_SRCS})
|
||||
+kde4_add_executable(kconfig_compiler4 NOGUI ${kconfig_compiler_SRCS})
|
||||
|
||||
-target_link_libraries(kconfig_compiler ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
|
||||
+target_link_libraries(kconfig_compiler4 ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
|
||||
|
||||
# "export" this target too so we can use the LOCATION property of the imported target in
|
||||
# FindKDE4Internal.cmake to get the full path to the installed executable instead of using FIND_PROGRAM(), Alex
|
||||
-install(TARGETS kconfig_compiler EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
+install(TARGETS kconfig_compiler4 EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
|
||||
|
||||
########### install files ###############
|
||||
diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake
|
||||
--- kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel 2009-12-17 10:33:38.000000000 -0600
|
||||
+++ kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake 2009-12-18 08:39:50.000000000 -0600
|
||||
@@ -15,10 +15,10 @@
|
||||
diff -up kdelibs-4.9.95/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdelibs-4.9.95/cmake/modules/FindKDE4Internal.cmake
|
||||
--- kdelibs-4.9.95/cmake/modules/FindKDE4Internal.cmake.parallel_devel 2012-12-18 02:26:38.000000000 -0600
|
||||
+++ kdelibs-4.9.95/cmake/modules/FindKDE4Internal.cmake 2012-12-19 15:21:37.963466601 -0600
|
||||
@@ -38,10 +38,10 @@
|
||||
# The following variables are defined for the various tools required to
|
||||
# compile KDE software:
|
||||
#
|
||||
@ -52,7 +14,7 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
#
|
||||
# The following variables point to the location of the KDE libraries,
|
||||
# but shouldn't be used directly:
|
||||
@@ -138,7 +138,7 @@
|
||||
@@ -191,7 +191,7 @@
|
||||
# relative path to the file.
|
||||
#
|
||||
# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets)
|
||||
@ -61,12 +23,18 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
# for Qt Designer plugins.
|
||||
#
|
||||
# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN)
|
||||
@@ -421,25 +421,25 @@ if (_kdeBootStrapping)
|
||||
if (WIN32)
|
||||
@@ -509,31 +509,31 @@ if (_kdeBootStrapping)
|
||||
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} )
|
||||
# CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC
|
||||
if (NOT WINCE)
|
||||
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
|
||||
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
|
||||
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 )
|
||||
else (NOT WINCE)
|
||||
- set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
|
||||
+ set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
|
||||
set(KDE4_MEINPROC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/meinproc4 )
|
||||
endif(NOT WINCE)
|
||||
|
||||
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 )
|
||||
set(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kauth-policy-gen )
|
||||
@ -84,6 +52,7 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
|
||||
set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR})
|
||||
|
||||
|
||||
# when building kdelibs, make the kcfg rules depend on the binaries...
|
||||
- set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler)
|
||||
+ set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler4)
|
||||
@ -93,7 +62,7 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4)
|
||||
|
||||
set(KDE4_INSTALLED_VERSION_OK TRUE)
|
||||
@@ -487,7 +487,8 @@ else (_kdeBootStrapping)
|
||||
@@ -582,7 +582,8 @@ else (_kdeBootStrapping)
|
||||
|
||||
# KDE4_LIB_INSTALL_DIR and KDE4_INCLUDE_INSTALL_DIR are set in KDELibsDependencies.cmake,
|
||||
# use them to set the KDE4_LIB_DIR and KDE4_INCLUDE_DIR "public interface" variables
|
||||
@ -103,20 +72,30 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
set(KDE4_INCLUDE_DIR ${KDE4_INCLUDE_INSTALL_DIR} )
|
||||
|
||||
|
||||
@@ -503,10 +504,10 @@ else (_kdeBootStrapping)
|
||||
get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS )
|
||||
@@ -596,18 +597,18 @@ else (_kdeBootStrapping)
|
||||
|
||||
# get the build CONFIGURATIONS which were exported in this file, and use just the first
|
||||
# of them to get the location of the installed executables
|
||||
- get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS )
|
||||
+ get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler4 IMPORTED_CONFIGURATIONS )
|
||||
list(GET _importedConfigurations 0 _firstConfig)
|
||||
|
||||
if(NOT WINCE)
|
||||
- get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig})
|
||||
+ get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler4 LOCATION_${_firstConfig})
|
||||
get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig})
|
||||
else(NOT WINCE)
|
||||
- set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
|
||||
+ set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
|
||||
set(KDE4_MEINPROC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/meinproc4 )
|
||||
endif(NOT WINCE)
|
||||
get_target_property(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${KDE4_TARGET_PREFIX}kauth-policy-gen LOCATION_${_firstConfig})
|
||||
- get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig})
|
||||
+ get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets4 LOCATION_${_firstConfig})
|
||||
|
||||
# allow searching cmake modules in all given kde install locations (KDEDIRS based)
|
||||
execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
@@ -830,7 +831,8 @@ set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SY
|
||||
@@ -934,7 +935,8 @@ set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SY
|
||||
set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH}
|
||||
"${KDE4_BIN_INSTALL_DIR}" )
|
||||
|
||||
@ -126,7 +105,7 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
"${KDE4_LIB_INSTALL_DIR}" )
|
||||
|
||||
# under Windows dlls may be also installed in bin/
|
||||
@@ -1224,9 +1227,9 @@ macro (KDE4_PRINT_RESULTS)
|
||||
@@ -1363,9 +1365,9 @@ macro (KDE4_PRINT_RESULTS)
|
||||
endif (NOT _kdeBootStrapping)
|
||||
|
||||
if(KDE4_KCFGC_EXECUTABLE)
|
||||
@ -138,7 +117,7 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
endif(KDE4_KCFGC_EXECUTABLE)
|
||||
|
||||
if(AUTOMOC4_EXECUTABLE)
|
||||
@@ -1245,7 +1248,7 @@ if (KDE4Internal_FIND_REQUIRED AND NOT K
|
||||
@@ -1384,7 +1386,7 @@ if (KDE4Internal_FIND_REQUIRED AND NOT K
|
||||
endif (NOT KDE4_INSTALLED_VERSION_OK)
|
||||
|
||||
if (NOT KDE4_KCFGC_EXECUTABLE)
|
||||
@ -147,9 +126,74 @@ diff -up kdelibs-4.3.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
|
||||
endif (NOT KDE4_KCFGC_EXECUTABLE)
|
||||
|
||||
message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs")
|
||||
diff -up kdelibs-4.3.85/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.3.85/kdewidgets/CMakeLists.txt
|
||||
--- kdelibs-4.3.85/kdewidgets/CMakeLists.txt.parallel_devel 2009-09-23 14:23:44.000000000 -0500
|
||||
+++ kdelibs-4.3.85/kdewidgets/CMakeLists.txt 2009-12-18 08:39:50.000000000 -0600
|
||||
diff -up kdelibs-4.9.95/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel kdelibs-4.9.95/doc/api/doxygen-preprocess-kcfg.sh
|
||||
--- kdelibs-4.9.95/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel 2012-12-17 08:14:16.000000000 -0600
|
||||
+++ kdelibs-4.9.95/doc/api/doxygen-preprocess-kcfg.sh 2012-12-19 15:21:37.963466601 -0600
|
||||
@@ -2,9 +2,9 @@
|
||||
# Generates and cleans KConfigXT source code during a API dox build
|
||||
#
|
||||
|
||||
-kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler"
|
||||
+kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler4"
|
||||
if test -z "$kcfg_compiler"; then
|
||||
- echo "kconfig_compiler not found!"
|
||||
+ echo "kconfig_compiler4 not found!"
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
diff -up kdelibs-4.9.95/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel kdelibs-4.9.95/kdecore/kconfig_compiler/checkkcfg.pl
|
||||
--- kdelibs-4.9.95/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel 2012-12-17 08:14:16.000000000 -0600
|
||||
+++ kdelibs-4.9.95/kdecore/kconfig_compiler/checkkcfg.pl 2012-12-19 15:21:37.963466601 -0600
|
||||
@@ -15,12 +15,12 @@ $file_cpp = "$filebase.cpp";
|
||||
|
||||
$kcfgc = $file . "c";
|
||||
|
||||
-$cmd = "./kconfig_compiler $file $kcfgc";
|
||||
+$cmd = "./kconfig_compiler4 $file $kcfgc";
|
||||
|
||||
#print "CMD $cmd\n";
|
||||
|
||||
if ( system( $cmd ) != 0 ) {
|
||||
- print STDERR "Unable to run kconfig_compiler\n";
|
||||
+ print STDERR "Unable to run kconfig_compiler4\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
diff -up kdelibs-4.9.95/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.9.95/kdecore/kconfig_compiler/CMakeLists.txt
|
||||
--- kdelibs-4.9.95/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel 2012-12-17 08:14:16.000000000 -0600
|
||||
+++ kdelibs-4.9.95/kdecore/kconfig_compiler/CMakeLists.txt 2012-12-19 15:21:37.964466589 -0600
|
||||
@@ -11,13 +11,13 @@
|
||||
set(kconfig_compiler_SRCS kconfig_compiler.cpp)
|
||||
|
||||
|
||||
- kde4_add_executable(kconfig_compiler NOGUI ${kconfig_compiler_SRCS})
|
||||
+ kde4_add_executable(kconfig_compiler4 NOGUI ${kconfig_compiler_SRCS})
|
||||
|
||||
- target_link_libraries(kconfig_compiler ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
|
||||
+ target_link_libraries(kconfig_compiler4 ${QT_QTCORE_LIBRARY} ${QT_QTXML_LIBRARY} )
|
||||
|
||||
# "export" this target too so we can use the LOCATION property of the imported target in
|
||||
# FindKDE4Internal.cmake to get the full path to the installed executable instead of using FIND_PROGRAM(), Alex
|
||||
- install(TARGETS kconfig_compiler EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
+ install(TARGETS kconfig_compiler4 EXPORT kdelibsToolsTargets ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
||||
|
||||
|
||||
# # export this binary for cross-compilation
|
||||
diff -up kdelibs-4.9.95/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.9.95/kdeui/tests/kconfig_compiler/CMakeLists.txt
|
||||
--- kdelibs-4.9.95/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel 2012-12-17 08:14:16.000000000 -0600
|
||||
+++ kdelibs-4.9.95/kdeui/tests/kconfig_compiler/CMakeLists.txt 2012-12-19 15:21:37.964466589 -0600
|
||||
@@ -9,7 +9,7 @@ macro(GEN_KCFG_TEST_SOURCE _testName _sr
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.cpp ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h
|
||||
COMMAND ${KDE4_KCFGC_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc
|
||||
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler)
|
||||
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler4)
|
||||
|
||||
# set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h PROPERTIES GENERATED TRUE)
|
||||
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.moc )
|
||||
diff -up kdelibs-4.9.95/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.9.95/kdewidgets/CMakeLists.txt
|
||||
--- kdelibs-4.9.95/kdewidgets/CMakeLists.txt.parallel_devel 2012-12-17 08:14:16.000000000 -0600
|
||||
+++ kdelibs-4.9.95/kdewidgets/CMakeLists.txt 2012-12-19 15:21:37.964466589 -0600
|
||||
@@ -14,24 +14,24 @@ include_directories(
|
||||
set(makekdewidgets_SRCS makekdewidgets.cpp )
|
||||
|
||||
@ -168,10 +212,10 @@ diff -up kdelibs-4.3.85/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.3.85/
|
||||
|
||||
########### next target ###############
|
||||
|
||||
|
||||
if(QT_QTDESIGNER_FOUND)
|
||||
# get the name of the generated wrapper script (which sets up LD_LIBRARY_PATH)
|
||||
-get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets WRAPPER_SCRIPT)
|
||||
+get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets4 WRAPPER_SCRIPT)
|
||||
- get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets WRAPPER_SCRIPT)
|
||||
+ get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets4 WRAPPER_SCRIPT)
|
||||
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
|
||||
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kde.widgets
|
||||
@ -180,7 +224,25 @@ diff -up kdelibs-4.3.85/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.3.85/
|
||||
|
||||
set(kdewidgets_PART_SRCS
|
||||
classpreviews.cpp
|
||||
@@ -66,7 +66,7 @@ if (QT_QT3SUPPORT_FOUND)
|
||||
@@ -61,7 +61,7 @@ if(QT_QTDESIGNER_FOUND)
|
||||
if(NOT KDE_NO_DEPRECATED)
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdedeprecated.cpp
|
||||
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdedeprecated.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kdedeprecated.widgets
|
||||
- MAIN_DEPENDENCY kdedeprecated.widgets DEPENDS makekdewidgets)
|
||||
+ MAIN_DEPENDENCY kdedeprecated.widgets DEPENDS makekdewidgets4)
|
||||
|
||||
set(kdedeprecated_PART_SRCS
|
||||
classpreviews.cpp
|
||||
@@ -96,7 +96,7 @@ if(QT_QTDESIGNER_FOUND)
|
||||
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp
|
||||
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kdewebkit.widgets
|
||||
- MAIN_DEPENDENCY kdewebkit.widgets DEPENDS makekdewidgets)
|
||||
+ MAIN_DEPENDENCY kdewebkit.widgets DEPENDS makekdewidgets4)
|
||||
|
||||
set(kdewebkitwidgets_PART_SRCS
|
||||
classpreviews.cpp
|
||||
@@ -132,7 +132,7 @@ if(QT_QTDESIGNER_FOUND)
|
||||
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kde3supportwidgets.cpp
|
||||
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kde3supportwidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kde3support.widgets
|
||||
@ -189,30 +251,3 @@ diff -up kdelibs-4.3.85/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.3.85/
|
||||
|
||||
set(kde3supportwidgets_PART_SRCS
|
||||
classpreviews.cpp
|
||||
diff -up kdelibs-4.3.85/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.3.85/kdeui/tests/kconfig_compiler/CMakeLists.txt
|
||||
--- kdelibs-4.3.85/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel 2009-08-12 05:00:20.000000000 -0500
|
||||
+++ kdelibs-4.3.85/kdeui/tests/kconfig_compiler/CMakeLists.txt 2009-12-18 08:39:50.000000000 -0600
|
||||
@@ -9,7 +9,7 @@ macro(GEN_KCFG_TEST_SOURCE _testName _sr
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.cpp ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h
|
||||
COMMAND ${KDE4_KCFGC_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc
|
||||
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler)
|
||||
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc kconfig_compiler4)
|
||||
|
||||
# set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h PROPERTIES GENERATED TRUE)
|
||||
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.moc )
|
||||
diff -up kdelibs-4.3.85/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel kdelibs-4.3.85/doc/api/doxygen-preprocess-kcfg.sh
|
||||
--- kdelibs-4.3.85/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel 2008-05-21 06:07:26.000000000 -0500
|
||||
+++ kdelibs-4.3.85/doc/api/doxygen-preprocess-kcfg.sh 2009-12-18 08:39:50.000000000 -0600
|
||||
@@ -2,9 +2,9 @@
|
||||
# Generates and cleans KConfigXT source code during a API dox build
|
||||
#
|
||||
|
||||
-kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler"
|
||||
+kcfg_compiler="`kde4-config --prefix`/bin/kconfig_compiler4"
|
||||
if test -z "$kcfg_compiler"; then
|
||||
- echo "kconfig_compiler not found!"
|
||||
+ echo "kconfig_compiler4 not found!"
|
||||
exit 1;
|
||||
fi
|
||||
|
12
kdelibs-4.x-abrt.patch
Normal file
12
kdelibs-4.x-abrt.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up kdelibs-4.10.0/kdeui/kernel/kapplication.cpp.me kdelibs-4.10.0/kdeui/kernel/kapplication.cpp
|
||||
--- kdelibs-4.10.0/kdeui/kernel/kapplication.cpp.me 2013-02-28 15:24:41.194954639 +0100
|
||||
+++ kdelibs-4.10.0/kdeui/kernel/kapplication.cpp 2013-02-28 15:40:44.546470405 +0100
|
||||
@@ -853,7 +853,7 @@ void KApplicationPrivate::parseCommandLi
|
||||
if (!nocrashhandler && args->isSet("crashhandler"))
|
||||
{
|
||||
// enable drkonqi
|
||||
- KCrash::setDrKonqiEnabled(true);
|
||||
+ KCrash::setDrKonqiEnabled(false);
|
||||
}
|
||||
// Always set the app name, can be usefuls for apps that call setEmergencySaveFunction or enable AutoRestart
|
||||
KCrash::setApplicationName(args->appName());
|
44
kdelibs-kdebug288410.patch
Normal file
44
kdelibs-kdebug288410.patch
Normal file
@ -0,0 +1,44 @@
|
||||
diff --git a/solid/solid/backends/upower/upowerbattery.cpp b/solid/solid/backends/upower/upowerbattery.cpp
|
||||
index 7b5bdc4..8bd9343 100644
|
||||
--- a/solid/solid/backends/upower/upowerbattery.cpp
|
||||
+++ b/solid/solid/backends/upower/upowerbattery.cpp
|
||||
@@ -123,6 +123,7 @@ Solid::Battery::ChargeState Battery::chargeState() const
|
||||
void Battery::slotChanged()
|
||||
{
|
||||
if (m_device) {
|
||||
+ const QString udi = m_device.data()->udi();
|
||||
const int old_chargePercent = m_chargePercent;
|
||||
const int old_capacity = m_capacity;
|
||||
const Solid::Battery::ChargeState old_chargeState = m_chargeState;
|
||||
@@ -132,26 +133,26 @@ void Battery::slotChanged()
|
||||
|
||||
if (old_chargePercent != m_chargePercent)
|
||||
{
|
||||
- emit chargePercentChanged(m_chargePercent, m_device.data()->udi());
|
||||
+ emit chargePercentChanged(m_chargePercent, udi);
|
||||
}
|
||||
|
||||
if (old_capacity != m_capacity) {
|
||||
- emit capacityChanged(m_capacity, m_device.data()->udi());
|
||||
+ emit capacityChanged(m_capacity, udi);
|
||||
}
|
||||
|
||||
if (old_chargeState != m_chargeState)
|
||||
{
|
||||
- emit chargeStateChanged(m_chargeState, m_device.data()->udi());
|
||||
+ emit chargeStateChanged(m_chargeState, udi);
|
||||
}
|
||||
|
||||
if (old_isPlugged != m_isPlugged)
|
||||
{
|
||||
- emit plugStateChanged(m_isPlugged, m_device.data()->udi());
|
||||
+ emit plugStateChanged(m_isPlugged, udi);
|
||||
}
|
||||
|
||||
if (old_isPowerSupply != m_isPowerSupply)
|
||||
{
|
||||
- emit powerSupplyStateChanged(m_isPowerSupply, m_device.data()->udi());
|
||||
+ emit powerSupplyStateChanged(m_isPowerSupply, udi);
|
||||
}
|
||||
}
|
||||
}
|
128
kdelibs-no_fake_mimetypes.patch
Normal file
128
kdelibs-no_fake_mimetypes.patch
Normal file
@ -0,0 +1,128 @@
|
||||
diff -up kdelibs-4.14.23/mimetypes/kde.xml.no_fake_mimetypes kdelibs-4.14.23/mimetypes/kde.xml
|
||||
--- kdelibs-4.14.23/mimetypes/kde.xml.no_fake_mimetypes 2016-08-16 09:04:01.000000000 -0500
|
||||
+++ kdelibs-4.14.23/mimetypes/kde.xml 2016-08-28 08:39:55.307237091 -0500
|
||||
@@ -1786,124 +1786,6 @@ Notes:
|
||||
<glob pattern="*.abc"/>
|
||||
</mime-type>
|
||||
|
||||
- <!-- all/ fake mime types -->
|
||||
- <mime-type type="all/all">
|
||||
- <comment>all files and folders</comment>
|
||||
- <comment xml:lang="ar">كل الملفات و المجلدات</comment>
|
||||
- <comment xml:lang="ast">tolos ficheros y carpetes</comment>
|
||||
- <comment xml:lang="bg">всички файлове и папки</comment>
|
||||
- <comment xml:lang="bs">sve datoteke i direktorije</comment>
|
||||
- <comment xml:lang="ca">tots els fitxers i carpetes</comment>
|
||||
- <comment xml:lang="ca@valencia">tots els fitxers i carpetes</comment>
|
||||
- <comment xml:lang="cs">všechny soubory a složky</comment>
|
||||
- <comment xml:lang="da">alle filer og mapper</comment>
|
||||
- <comment xml:lang="de">Alle Dateien und Ordner</comment>
|
||||
- <comment xml:lang="el">Όλα τα αρχεία και οι φάκελοι</comment>
|
||||
- <comment xml:lang="en_GB">all files and folders</comment>
|
||||
- <comment xml:lang="es">todos los archivos y carpetas</comment>
|
||||
- <comment xml:lang="et">kõik failid ja kataloogid</comment>
|
||||
- <comment xml:lang="eu">fitxategi eta karpeta denak</comment>
|
||||
- <comment xml:lang="fi">kaikki tiedostot ja kansiot</comment>
|
||||
- <comment xml:lang="fr">Tous les fichiers et les dossiers</comment>
|
||||
- <comment xml:lang="ga">gach comhad agus fillteán</comment>
|
||||
- <comment xml:lang="gl">todos os ficheiros e cartafoles</comment>
|
||||
- <comment xml:lang="hr">sve datoteke i direktoriji</comment>
|
||||
- <comment xml:lang="hu">minden fájl és mappa</comment>
|
||||
- <comment xml:lang="ia">omne files e dossieres</comment>
|
||||
- <comment xml:lang="is">allar skrár og möppur</comment>
|
||||
- <comment xml:lang="it">tutti i file e le cartelle</comment>
|
||||
- <comment xml:lang="ja">すべてのファイルとフォルダ</comment>
|
||||
- <comment xml:lang="kk">бүкіл файлдар мен қапшықтар</comment>
|
||||
- <comment xml:lang="km">ឯកសារ និងថតទាំងអស់</comment>
|
||||
- <comment xml:lang="ko">모든 파일과 폴더</comment>
|
||||
- <comment xml:lang="lt">visi failai ir aplankai</comment>
|
||||
- <comment xml:lang="lv">visi faili un mapes</comment>
|
||||
- <comment xml:lang="ml">എല്ലാ ഫയലും ഫോള്ഡറുകളും</comment>
|
||||
- <comment xml:lang="mr">सर्व फाईल्स व संचयीका</comment>
|
||||
- <comment xml:lang="nb">al.le filer og mapper</comment>
|
||||
- <comment xml:lang="nds">All Dateien un Ornern</comment>
|
||||
- <comment xml:lang="nl">alle bestanden en mappen</comment>
|
||||
- <comment xml:lang="nn">alle filer og mapper</comment>
|
||||
- <comment xml:lang="pa">ਸਭ ਫਾਇਲਾਂ ਅਤੇ ਫੋਲਡਰ</comment>
|
||||
- <comment xml:lang="pl">wszystkie pliki i katalogi</comment>
|
||||
- <comment xml:lang="pt">todos os ficheiros e pastas</comment>
|
||||
- <comment xml:lang="pt_BR">todos os arquivos e pastas</comment>
|
||||
- <comment xml:lang="ro">toate fișierele și dosarele</comment>
|
||||
- <comment xml:lang="ru">все файлы и папки</comment>
|
||||
- <comment xml:lang="se">buot fiillat ja máhpat</comment>
|
||||
- <comment xml:lang="sk">všetky súbory a priečinky</comment>
|
||||
- <comment xml:lang="sl">vse datoteke in mape</comment>
|
||||
- <comment xml:lang="sr">сви фајлови и фасцикле</comment>
|
||||
- <comment xml:lang="sr@ijekavian">сви фајлови и фасцикле</comment>
|
||||
- <comment xml:lang="sr@ijekavianlatin">svi fajlovi i fascikle</comment>
|
||||
- <comment xml:lang="sr@latin">svi fajlovi i fascikle</comment>
|
||||
- <comment xml:lang="sv">alla filer och kataloger</comment>
|
||||
- <comment xml:lang="th">แฟ้มและโฟลเดอร์ทั้งหมด</comment>
|
||||
- <comment xml:lang="tr">tüm dosyalar ve dizinler</comment>
|
||||
- <comment xml:lang="ug">ھەممە ھۆججەت ۋە قىسقۇچلار</comment>
|
||||
- <comment xml:lang="uk">всі файли і теки</comment>
|
||||
- <comment xml:lang="zh_CN">全部文件和文件夹</comment>
|
||||
- <comment xml:lang="zh_TW">所有檔案與資料夾</comment>
|
||||
- </mime-type>
|
||||
- <mime-type type="all/allfiles">
|
||||
- <comment>all files</comment>
|
||||
- <comment xml:lang="ar">كل الملفات</comment>
|
||||
- <comment xml:lang="ast">tolos ficheros</comment>
|
||||
- <comment xml:lang="bg">всички файлове</comment>
|
||||
- <comment xml:lang="bs">sve datoteke</comment>
|
||||
- <comment xml:lang="ca">tots els fitxers</comment>
|
||||
- <comment xml:lang="ca@valencia">tots els fitxers</comment>
|
||||
- <comment xml:lang="cs">všechny soubory</comment>
|
||||
- <comment xml:lang="da">alle filer</comment>
|
||||
- <comment xml:lang="de">Alle Dateien</comment>
|
||||
- <comment xml:lang="el">Όλα τα αρχεία</comment>
|
||||
- <comment xml:lang="en_GB">all files</comment>
|
||||
- <comment xml:lang="es">todos los archivos</comment>
|
||||
- <comment xml:lang="et">kõik failid</comment>
|
||||
- <comment xml:lang="eu">fitxategi denak</comment>
|
||||
- <comment xml:lang="fi">kaikki tiedostot</comment>
|
||||
- <comment xml:lang="fr">Tous les fichiers</comment>
|
||||
- <comment xml:lang="ga">gach comhad</comment>
|
||||
- <comment xml:lang="gl">todos os ficheiros</comment>
|
||||
- <comment xml:lang="hr">sve datoteke</comment>
|
||||
- <comment xml:lang="hu">minden fájl</comment>
|
||||
- <comment xml:lang="ia">omne files</comment>
|
||||
- <comment xml:lang="is">allar skrár</comment>
|
||||
- <comment xml:lang="it">tutti i file</comment>
|
||||
- <comment xml:lang="ja">すべてのファイル</comment>
|
||||
- <comment xml:lang="kk">бүкіл файлдар</comment>
|
||||
- <comment xml:lang="km">ឯកសារទាំងអស់</comment>
|
||||
- <comment xml:lang="ko">모든 파일</comment>
|
||||
- <comment xml:lang="lt">visi failai</comment>
|
||||
- <comment xml:lang="lv">visi faili</comment>
|
||||
- <comment xml:lang="ml">എല്ലാ ഫയലും</comment>
|
||||
- <comment xml:lang="mr">सर्व फाईल्स</comment>
|
||||
- <comment xml:lang="nb">alle filer</comment>
|
||||
- <comment xml:lang="nds">All Dateien</comment>
|
||||
- <comment xml:lang="nl">alle bestanden</comment>
|
||||
- <comment xml:lang="nn">alle filer</comment>
|
||||
- <comment xml:lang="pa">ਸਭ ਫਾਇਲਾਂ</comment>
|
||||
- <comment xml:lang="pl">wszystkie pliki</comment>
|
||||
- <comment xml:lang="pt">todos os ficheiros</comment>
|
||||
- <comment xml:lang="pt_BR">todos os arquivos</comment>
|
||||
- <comment xml:lang="ro">toate fișierele</comment>
|
||||
- <comment xml:lang="ru">все файлы</comment>
|
||||
- <comment xml:lang="se">buot fiillat</comment>
|
||||
- <comment xml:lang="sk">všetky súbory</comment>
|
||||
- <comment xml:lang="sl">vse datoteke</comment>
|
||||
- <comment xml:lang="sr">сви фајлови</comment>
|
||||
- <comment xml:lang="sr@ijekavian">сви фајлови</comment>
|
||||
- <comment xml:lang="sr@ijekavianlatin">svi fajlovi</comment>
|
||||
- <comment xml:lang="sr@latin">svi fajlovi</comment>
|
||||
- <comment xml:lang="sv">alla filer</comment>
|
||||
- <comment xml:lang="th">แฟ้มทั้งหมด</comment>
|
||||
- <comment xml:lang="tr">tüm dosyalar</comment>
|
||||
- <comment xml:lang="ug">ھەممە ھۆججەتلەر</comment>
|
||||
- <comment xml:lang="uk">всі файли</comment>
|
||||
- <comment xml:lang="zh_CN">全部文件</comment>
|
||||
- <comment xml:lang="zh_TW">所有檔案</comment>
|
||||
- </mime-type>
|
||||
-
|
||||
<mime-type type="application/vnd.kde.fontspackage">
|
||||
<sub-class-of type="application/zip"/>
|
||||
<comment>fonts package</comment>
|
42
kdelibs-solid_qt_no_debug_output.patch
Normal file
42
kdelibs-solid_qt_no_debug_output.patch
Normal file
@ -0,0 +1,42 @@
|
||||
diff -up kdelibs-4.9.90/solid/solid/backends/hal/halstorageaccess.cpp.solid_qt_no_debug_output kdelibs-4.9.90/solid/solid/backends/hal/halstorageaccess.cpp
|
||||
--- kdelibs-4.9.90/solid/solid/backends/hal/halstorageaccess.cpp.solid_qt_no_debug_output 2012-11-14 09:58:29.000000000 -0600
|
||||
+++ kdelibs-4.9.90/solid/solid/backends/hal/halstorageaccess.cpp 2012-12-12 16:18:25.817495558 -0600
|
||||
@@ -340,9 +340,11 @@ bool StorageAccess::requestPassphrase()
|
||||
returnService, m_lastReturnObject,
|
||||
wId, appId);
|
||||
m_passphraseRequested = reply.isValid();
|
||||
+#ifndef QT_NO_DEBUG_STREAM
|
||||
if (!m_passphraseRequested) {
|
||||
qWarning() << "Failed to call the SolidUiServer, D-Bus said:" << reply.error();
|
||||
}
|
||||
+#endif
|
||||
return m_passphraseRequested;
|
||||
}
|
||||
|
||||
diff -up kdelibs-4.9.90/solid/solid/backends/udisks2/udisksstorageaccess.cpp.solid_qt_no_debug_output kdelibs-4.9.90/solid/solid/backends/udisks2/udisksstorageaccess.cpp
|
||||
--- kdelibs-4.9.90/solid/solid/backends/udisks2/udisksstorageaccess.cpp.solid_qt_no_debug_output 2012-11-14 09:58:29.000000000 -0600
|
||||
+++ kdelibs-4.9.90/solid/solid/backends/udisks2/udisksstorageaccess.cpp 2012-12-12 16:17:36.922022895 -0600
|
||||
@@ -341,9 +341,10 @@ bool StorageAccess::requestPassphrase()
|
||||
QDBusReply<void> reply = soliduiserver.call("showPassphraseDialog", udi, returnService,
|
||||
m_lastReturnObject, wId, appId);
|
||||
m_passphraseRequested = reply.isValid();
|
||||
+#ifndef QT_NO_DEBUG_STREAM
|
||||
if (!m_passphraseRequested)
|
||||
qWarning() << "Failed to call the SolidUiServer, D-Bus said:" << reply.error();
|
||||
-
|
||||
+#endif
|
||||
return m_passphraseRequested;
|
||||
}
|
||||
|
||||
diff -up kdelibs-4.9.90/solid/solid/CMakeLists.txt.solid_qt_no_debug_output kdelibs-4.9.90/solid/solid/CMakeLists.txt
|
||||
--- kdelibs-4.9.90/solid/solid/CMakeLists.txt.solid_qt_no_debug_output 2012-11-14 09:58:29.000000000 -0600
|
||||
+++ kdelibs-4.9.90/solid/solid/CMakeLists.txt 2012-12-12 16:17:36.922022895 -0600
|
||||
@@ -268,7 +268,7 @@ if(NOT WIN32 AND NOT APPLE)
|
||||
|
||||
if ( WITH_SOLID_UDISKS2 )
|
||||
message(STATUS "Building Solid UDisks2 backend." )
|
||||
- add_definitions(-DWITH_SOLID_UDISKS2)
|
||||
+ add_definitions(-DWITH_SOLID_UDISKS2 -DQT_NO_DEBUG_OUTPUT)
|
||||
set(solid_LIB_SRCS ${solid_LIB_SRCS}
|
||||
backends/udisks2/udisksmanager.cpp
|
||||
backends/udisks2/udisksdevice.cpp
|
2135
kdelibs.spec
2135
kdelibs.spec
File diff suppressed because it is too large
Load Diff
14
macros.kde-apps
Normal file
14
macros.kde-apps
Normal file
@ -0,0 +1,14 @@
|
||||
%kdelibs4 @@NAME@@
|
||||
%kdelibs4_epoch @@EPOCH@@
|
||||
%kdelibs4_version @@VERSION@@
|
||||
%kdelibs4_evr @@EVR@@
|
||||
|
||||
%kdelibs4_requires \
|
||||
Requires: kdelibs4%{?_isa} >= %{kdelibs4_version} \
|
||||
%{nil}
|
||||
|
||||
%kde_applications_version @@KDE_APPLICATIONS_VERSION@@
|
||||
|
||||
%kde_runtime_requires \
|
||||
Requires: kde-runtime >= %{kde_applications_version} \
|
||||
%{nil}
|
Loading…
Reference in New Issue
Block a user