Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 546890 | Differences between
and this patch

Collapse All | Expand All

(-)a/app-office/libreoffice/Manifest (-5 / +10 lines)
Lines 1-12 Link Here
1
AUX libreoffice-4.3.5.2-remove-bashisms.patch 1330 SHA256 b477a07738fae7dadd324f1b792707cdda35b1f477cee43386b8a71ddbd090ea SHA512 850c1a252b141c6b32737f12766d7d6d9f0028eddcbc0b63bcfcaa70555a3a23f9e798c339176188c56e3769c1583a0b8c78feeade4f1120b0ddb2d02e2de6ed WHIRLPOOL ae5b0febeee433b82a55e130625ec52f8dbd859dfa39e4130ec16d7ca2deef061bd9c8a34e9ce96fdf3c6b18bf4c5fa48a382dfb7c22c069678ebaffd4252cba
1
AUX libreoffice-4.3.5.2-remove-bashisms.patch 1330 SHA256 b477a07738fae7dadd324f1b792707cdda35b1f477cee43386b8a71ddbd090ea SHA512 850c1a252b141c6b32737f12766d7d6d9f0028eddcbc0b63bcfcaa70555a3a23f9e798c339176188c56e3769c1583a0b8c78feeade4f1120b0ddb2d02e2de6ed WHIRLPOOL ae5b0febeee433b82a55e130625ec52f8dbd859dfa39e4130ec16d7ca2deef061bd9c8a34e9ce96fdf3c6b18bf4c5fa48a382dfb7c22c069678ebaffd4252cba
2
AUX libreoffice-4.4-system-pyuno.patch 1598 SHA256 444ba9a06a548952cd82f7ea2ff17e5bd7b04788dc894ef5376bf3440749de9e SHA512 043c78f923b941a1e8985ee16d8e6b23859207eac0f4fdc52fedbce0103d62309aa7aae14e19f8bb26bef9d4213dee9871fcc3770f99be84f3405573e32ced78 WHIRLPOOL 51f85f39847a587551b6887362557771a81b6abc59b926eace36f8e2eb61cd4895486c28d44fe38e77fc1b77b0ed4e142d65f4793bf2161c9d0c5c0abeca07f7
2
AUX libreoffice-4.4-system-pyuno.patch 1598 SHA256 444ba9a06a548952cd82f7ea2ff17e5bd7b04788dc894ef5376bf3440749de9e SHA512 043c78f923b941a1e8985ee16d8e6b23859207eac0f4fdc52fedbce0103d62309aa7aae14e19f8bb26bef9d4213dee9871fcc3770f99be84f3405573e32ced78 WHIRLPOOL 51f85f39847a587551b6887362557771a81b6abc59b926eace36f8e2eb61cd4895486c28d44fe38e77fc1b77b0ed4e142d65f4793bf2161c9d0c5c0abeca07f7
3
AUX libreoffice-4.4.0.3-gcc-4.9-Os-link-failure.patch 4304 SHA256 33c662ee9a0645b2827c3810f373b5fd84eafbfc9a0fb434cc8d0973daa4ae13 SHA512 6f001ce7dbca593a9c1c91e375df7e0631c2bdf87f84b3ec03fcfb460a698beaa2e99d5a79669aa2de549c47ba8faeb74947d855685db4475fd6f818ac38c5f2 WHIRLPOOL 488b28df2db267affcbe4b6ec956312b7da52d3deb51f64ee2e49388b2f29909c9994a8f597727a72383c81973c115539a8a47d74f5efeaa370aee2eada8367f
4
AUX libreoffice-4.4.0.3-telepathy-build-fix.patch 1503 SHA256 d23431960aa3898331b0e80f827c2eb224c3586bdaf9d2bb9dc10e2aa58ae6f3 SHA512 cf76698e851e31646ad7e6f9547d8c0917a047fa93b5132d00f0ea246945344f3e1df2376a9e3ffcd7ee7a4a200e24e213330482fddf50fc47558b5a9b949426 WHIRLPOOL 92e870da0ea77954d2b04e39887909a0cf20fe4277388be0074c01fac5c7adfa1cfed84333b3e7ae26f7866082bb1711ba453f877b8bc2b390d74a17d41830c0
3
AUX libreoffice-4.4.0.3-telepathy-build-fix.patch 1503 SHA256 d23431960aa3898331b0e80f827c2eb224c3586bdaf9d2bb9dc10e2aa58ae6f3 SHA512 cf76698e851e31646ad7e6f9547d8c0917a047fa93b5132d00f0ea246945344f3e1df2376a9e3ffcd7ee7a4a200e24e213330482fddf50fc47558b5a9b949426 WHIRLPOOL 92e870da0ea77954d2b04e39887909a0cf20fe4277388be0074c01fac5c7adfa1cfed84333b3e7ae26f7866082bb1711ba453f877b8bc2b390d74a17d41830c0
5
AUX libreoffice-4.4.1.2-add-kde4-open-url-script.patch 2144 SHA256 d35630cffc304652ad4e7df6d88dbd2ea499ae7a904a6b4c6a7eec9570ebee23 SHA512 2999f66d65e50cd06f8df1a48727407a6f4d0259d5d7dffedb3b750ed4876f93374b1a1a0aaa7d8e223e3a25ccbf05ca05d1a919fe36fc0eee0f7cd956a5949d WHIRLPOOL dbdd05bd29dcc37c94ee67ba4b1856b970a735af2ee3a468440f1edcb760a008fef2f62fb43ce2fef3626953786456652c8b606dea2b24650c72c1be66a976ef
4
AUX libreoffice-4.4.1.2-add-kde4-open-url-script.patch 2144 SHA256 d35630cffc304652ad4e7df6d88dbd2ea499ae7a904a6b4c6a7eec9570ebee23 SHA512 2999f66d65e50cd06f8df1a48727407a6f4d0259d5d7dffedb3b750ed4876f93374b1a1a0aaa7d8e223e3a25ccbf05ca05d1a919fe36fc0eee0f7cd956a5949d WHIRLPOOL dbdd05bd29dcc37c94ee67ba4b1856b970a735af2ee3a468440f1edcb760a008fef2f62fb43ce2fef3626953786456652c8b606dea2b24650c72c1be66a976ef
6
AUX libreoffice-4.4.1.2-fix-includes.patch 1149 SHA256 2044d4c997472a46e95c68fa8bec19c1424e9074fad05df9f1c0d220dec00281 SHA512 15defc8362fb0e53db32b75d9c4ece73e1ee8bd1cc05b4dd8f072f808e6943b385a5415513b237d3daa130dedce3c6ac6370e05ec0b4a25065ce27aadd269e92 WHIRLPOOL a643af5504f09003409cdbb4e9445481b448fc67c35ef5dc2e35a71301b138c3007e1d78f4bac6128137e37c41d4c6363447eeee44b6aeba8ac68729e4661ea7
5
AUX libreoffice-4.4.1.2-fix-includes.patch 1149 SHA256 2044d4c997472a46e95c68fa8bec19c1424e9074fad05df9f1c0d220dec00281 SHA512 15defc8362fb0e53db32b75d9c4ece73e1ee8bd1cc05b4dd8f072f808e6943b385a5415513b237d3daa130dedce3c6ac6370e05ec0b4a25065ce27aadd269e92 WHIRLPOOL a643af5504f09003409cdbb4e9445481b448fc67c35ef5dc2e35a71301b138c3007e1d78f4bac6128137e37c41d4c6363447eeee44b6aeba8ac68729e4661ea7
7
AUX libreoffice-4.4.1.2-improve-KDE4FilePicker.patch 5561 SHA256 b9ff37b20bd73011cda137d1dce5ef87c79972718019ae16e525bf5c1fd9cc56 SHA512 3deb4211367320fcbe59acc62083245267b7637758a06996d0e14f4db1e37c53fa282363de83177fd0b756e736d725cbbbfeac2059254bfa02748c23ecf8e4df WHIRLPOOL 6acf13a6d271fdc5f549028eb8c032f41e55c9e128c7c11f97931b6cbdd3c621ae76e58b1ea0bae343afd4b51b6deadd932db893f4134ed01b4b56cd8d63a4e4
8
AUX libreoffice-4.4.1.2-linux-musl.patch 1962 SHA256 5cf5a446e5769f6a2df01c5c10702514fe9178334d1e53d3c7df843ca72c6fa2 SHA512 5fb4d5bf5cab21a0c95a9e51a4a138b427a08677c34bc14287c3eb74926b606345d5185c76bbe8957043d79dc33d46cf4aaa5182642c7fb9136dc48ed9e7fabb WHIRLPOOL 3e089da32a5425f1e892c80635489fde99198a5b15e1be94b996c49f2cf77e45144f624d68d9c11aef921bce0ce0ac632d52af348335ba5d61ae6049e9c4282b
6
AUX libreoffice-4.4.1.2-linux-musl.patch 1962 SHA256 5cf5a446e5769f6a2df01c5c10702514fe9178334d1e53d3c7df843ca72c6fa2 SHA512 5fb4d5bf5cab21a0c95a9e51a4a138b427a08677c34bc14287c3eb74926b606345d5185c76bbe8957043d79dc33d46cf4aaa5182642c7fb9136dc48ed9e7fabb WHIRLPOOL 3e089da32a5425f1e892c80635489fde99198a5b15e1be94b996c49f2cf77e45144f624d68d9c11aef921bce0ce0ac632d52af348335ba5d61ae6049e9c4282b
9
AUX libreoffice-4.4.1.2-musl-fix-execinfo.patch 736 SHA256 7171dfa651a7ee81b4e13a9fd9131428d9a65af138cac4cb428ae6c3e4bcb1f3 SHA512 567123f990c4a47c2e4cebf99f3486150740015e647ca2b2521e606f3350fc55ceda6c7ac031302da34e8fc90747d66619334fcfda4e7b8998456fe3619ab860 WHIRLPOOL d25df4d89e5739f3586296569345c38d44aeb59c1f6ed83ddd9c76139e6e5b639506c5d761838c2faa70e8a30bb6b68b15c4bdf3255f7658542f70c91bffeb32
7
AUX libreoffice-4.4.1.2-musl-fix-execinfo.patch 736 SHA256 7171dfa651a7ee81b4e13a9fd9131428d9a65af138cac4cb428ae6c3e4bcb1f3 SHA512 567123f990c4a47c2e4cebf99f3486150740015e647ca2b2521e606f3350fc55ceda6c7ac031302da34e8fc90747d66619334fcfda4e7b8998456fe3619ab860 WHIRLPOOL d25df4d89e5739f3586296569345c38d44aeb59c1f6ed83ddd9c76139e6e5b639506c5d761838c2faa70e8a30bb6b68b15c4bdf3255f7658542f70c91bffeb32
8
AUX libreoffice-4.4.4.3-cleanup-IsNativeControlSupported.patch 7615 SHA256 a1c0a663966e306270d17fc63f0f2b5c62585eaa46b6c5c0e9becf7c30acd60b SHA512 ff607595107edc33d903b0bb010c36b4d17ca7d3a907fc151c32757255993f5cade5581376d89855727173ccc2c1e619f0af15e7773e0dcd98937325a82c6211 WHIRLPOOL 4e6dfa1704e6d48a681a3346801ab099085d141248be999e186ee55d15fca3f7554bb76ef5a118766a929ee74d4a802dc2ab9f3d1b46b7106a394e8dfbd73d10
9
AUX libreoffice-4.4.4.3-fix-KDE4-FileDialog.patch 2725 SHA256 c6f71a016d92405de995d731e1dbb7b40f6af9989096744a69a52de176645fb0 SHA512 5800219accbd9bbfcd66841ff1b1a338faddec33bfc73d1c958126ff53b7d3dbf410622d74597d98ad925af07a66eee23e076b436f73d5076c0f9b439f99cefd WHIRLPOOL 6cdbf5266d96fb37dc542f6c07c034badbe38f1a9cb2b39aa402d0b70d407f074f278209aecb3e4dfb6246b1cf97389d7ed7a59ccbbc9a2de0dc74d18519fae6
10
AUX libreoffice-4.4.4.3-improve-KDE4FilePicker.patch 5764 SHA256 3cb715491fbd91abdeb99477d19417bfc299376ec4532d5ef8826d4b9e001eee SHA512 11a860f9fb227e04e8f1d66ad54072d0117d6506a1e4d66a11876999a17bbac67b550f90cc8cf128d8cc81600eafa8bbcc49907657ccced2cbbf133c5acbe31c WHIRLPOOL 3f8bf68815132b0c436e8656d83208c4d5c30f45c069a33f6de28c54ccc3d7f2fe90413e3be34594cd0383ec9a448dd4ce2b0cca719f834d8671ddec22c47b5b
11
AUX libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch 3719 SHA256 d20df249f1773391aba12763fa9f7a247b9ba030fd358535fef2b5d7b45ce2ca SHA512 36600bebc040a4d50aa4abb628bb1a6d974332ec58e02f5034c4f3419d730a0db2b38a0c84374901cc5fde19ef8d2c716d88356bf4b372649536e3e665063c00 WHIRLPOOL e85716e1cf531df4cd86cfbd9e7f759aeba5cc79a825cac801d90c54a1a8c817a3ce5be1c41db39d2340f99e206d7bb271e11d4c4e84c7226d3ef7945171caba
10
DIST 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip 3519470 SHA256 d30b13f4ba2e3b6a2d4f020c0dee0a9fb9fc6fbcc2d561f36b78da4bf3802370 SHA512 a231eba4a1baca11766ef292ab45e302081115477fe23018652882923308856835cf8c9ecba61a5cf22543474ccef3136965d794a90c9e4e9e6dcc21f9af6e1a WHIRLPOOL c4b3b0c3e10171155e1d3431e8ab9b495dbf2fb924882024306bfb53f533f5b0231c06f47e3cfa77052013a816ea4cc5f237cc76fdb44a048fb6d5c177729aec
12
DIST 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip 3519470 SHA256 d30b13f4ba2e3b6a2d4f020c0dee0a9fb9fc6fbcc2d561f36b78da4bf3802370 SHA512 a231eba4a1baca11766ef292ab45e302081115477fe23018652882923308856835cf8c9ecba61a5cf22543474ccef3136965d794a90c9e4e9e6dcc21f9af6e1a WHIRLPOOL c4b3b0c3e10171155e1d3431e8ab9b495dbf2fb924882024306bfb53f533f5b0231c06f47e3cfa77052013a816ea4cc5f237cc76fdb44a048fb6d5c177729aec
11
DIST 185d60944ea767075d27247c3162b3bc-unowinreg.dll 12288 SHA256 eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6 SHA512 854b8ae29b57b40ba6bb6ff66e723a0e8dad053fcc2849f0ad763cd8a31352f4aeba9636fd4e3f0f2a0cd985a6f49b4261b9ace68d6be821ed42cfa7a73eb13c WHIRLPOOL 16eb79e3674250fcb760b9698b4980414052d20f720d946701d1915c9b8915b4af75378668653d29581b77c19fcdba8f51d1f834c286cfcefcf4a420f8fcc1d5
13
DIST 185d60944ea767075d27247c3162b3bc-unowinreg.dll 12288 SHA256 eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6 SHA512 854b8ae29b57b40ba6bb6ff66e723a0e8dad053fcc2849f0ad763cd8a31352f4aeba9636fd4e3f0f2a0cd985a6f49b4261b9ace68d6be821ed42cfa7a73eb13c WHIRLPOOL 16eb79e3674250fcb760b9698b4980414052d20f720d946701d1915c9b8915b4af75378668653d29581b77c19fcdba8f51d1f834c286cfcefcf4a420f8fcc1d5
12
DIST 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz 1652670 SHA256 390a5085651828b8fe12aa978b200f59b9155eedbb91a4be89bf7cf39eefdd4a SHA512 5664203e6426880041cdb227e91f79f00d2ca7ae28c6997f61b72cc599aac55838d082d2b2b551bd7a228424c350ddea5d41599b8ca58d444a2cd46c9206ea91 WHIRLPOOL 6486c48b73a4f79760b443cfd397b704eca0fd32b72304ae7e7cfa0f43583b0af15c7384548b5215ae57513ed8366c8f3a74630ab466ba19a63b346af8c5eaca
14
DIST 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz 1652670 SHA256 390a5085651828b8fe12aa978b200f59b9155eedbb91a4be89bf7cf39eefdd4a SHA512 5664203e6426880041cdb227e91f79f00d2ca7ae28c6997f61b72cc599aac55838d082d2b2b551bd7a228424c350ddea5d41599b8ca58d444a2cd46c9206ea91 WHIRLPOOL 6486c48b73a4f79760b443cfd397b704eca0fd32b72304ae7e7cfa0f43583b0af15c7384548b5215ae57513ed8366c8f3a74630ab466ba19a63b346af8c5eaca
Lines 15-22 DIST 4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 555 Link Here
15
DIST 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip 1521926 SHA256 1fb458d6aab06932693cc8a9b6e4e70944ee1ff052fa63606e3131df34e21753 SHA512 ec5ae23c8fe2f5efc377f7a9665039afadf28b4d8f2791379296766a5fbc9a3bf7548f9b0e3b3b07762229ec733a92ccbb69791ee0318c9c6f78f8e847253d3f WHIRLPOOL 8e446eb44188046b0e90694feba232f42c2e9f13d0f43783a18de37c94b86ff919b994931125c5d8001ecd320c1f4db5da482847304aa61646600a3bb33144b4
17
DIST 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip 1521926 SHA256 1fb458d6aab06932693cc8a9b6e4e70944ee1ff052fa63606e3131df34e21753 SHA512 ec5ae23c8fe2f5efc377f7a9665039afadf28b4d8f2791379296766a5fbc9a3bf7548f9b0e3b3b07762229ec733a92ccbb69791ee0318c9c6f78f8e847253d3f WHIRLPOOL 8e446eb44188046b0e90694feba232f42c2e9f13d0f43783a18de37c94b86ff919b994931125c5d8001ecd320c1f4db5da482847304aa61646600a3bb33144b4
16
DIST a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip 23150 SHA256 75823776fb51a9c526af904f1503a7afaaab900fba83eda64f8a41073724c870 SHA512 2d3835f7ac356805025cafedcad97faa48d0f5da386e6ac7b7451030059df8e2fdb0861ade07a576ebf9fb5b88a973585ab0437944b06aac9289d6898ba8586a WHIRLPOOL 60b98d9af2c83c0cf12a5a60ba30957d335b8b967cac07971e1edbc787b9caecd4b3c5bb480e8b38fe8109c1cf74439ebafae130c976182c2c15399f38f5d28c
18
DIST a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip 23150 SHA256 75823776fb51a9c526af904f1503a7afaaab900fba83eda64f8a41073724c870 SHA512 2d3835f7ac356805025cafedcad97faa48d0f5da386e6ac7b7451030059df8e2fdb0861ade07a576ebf9fb5b88a973585ab0437944b06aac9289d6898ba8586a WHIRLPOOL 60b98d9af2c83c0cf12a5a60ba30957d335b8b967cac07971e1edbc787b9caecd4b3c5bb480e8b38fe8109c1cf74439ebafae130c976182c2c15399f38f5d28c
17
DIST d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz 16525605 SHA256 1f188ac03a8aa4663223eca8c82f91a55293d066d67127082e29a7dba1a98c9f SHA512 d08a7fe432e8df47d1d8992a45bb5f33149cb75b90eb74b2f2e457628d21a94b17eae0045096b053d2a866bf7710c775581c3e417b5dfaf66601aa18071b7305 WHIRLPOOL 95dc6ec0fb293c3538c1d51241283edf4e21647dcfd10229233ab7c3f13f7c78e6bb02c4d292a7cd2a2ec95575d775f0395e837bbc88ab4ddbaa5adfd62be2f0
19
DIST d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz 16525605 SHA256 1f188ac03a8aa4663223eca8c82f91a55293d066d67127082e29a7dba1a98c9f SHA512 d08a7fe432e8df47d1d8992a45bb5f33149cb75b90eb74b2f2e457628d21a94b17eae0045096b053d2a866bf7710c775581c3e417b5dfaf66601aa18071b7305 WHIRLPOOL 95dc6ec0fb293c3538c1d51241283edf4e21647dcfd10229233ab7c3f13f7c78e6bb02c4d292a7cd2a2ec95575d775f0395e837bbc88ab4ddbaa5adfd62be2f0
18
DIST libreoffice-4.4.1.2.tar.xz 164055640 SHA256 4ed40b6554674dc0b010af0599b94066334fe80f3dc8a3fb34543f9d847b475d SHA512 0a7166ec0f3ce920e3473af14bb48568e88cb03f4c9a9d1c93fde70ca7f8518fcbb2e9e1df3177ed05408253b1737f7702e714553dd0c05c110a71ac27deace6 WHIRLPOOL ec85d5e56d4d96fdcc48d9a855c394d64404d189ae6e3f34ee8c1cab5226608dee78f29664d9f2fd2747357debe0505377189520594e0b19b8264cd00ac87990
20
DIST libreoffice-4.4.4.3.tar.xz 164365608 SHA256 31ac86daa4f842fe825c88262b99a032ba3c0620f6e01cb22a54af14bc3dda72 SHA512 fbe97d4f8db92348927dc7c8412631ad5187968357ebdc57f22936cea84c76ced3655aac4c6ebc936b0f96d3d36bafe163eea05ed2dca02e53724bd5a0396513 WHIRLPOOL a7938d94b8644cd736a7213c0c4931a9d857da7005972bc751f6157445839ce395fdb1b6b057dc6fd681cf86143cfe96c9b2126fef2d5de5ea000eb15c5bdb35
21
DIST libreoffice-4.4.5.2.tar.xz 164472672 SHA256 3aeb4f08918c6ca6ec12fc47c2be690d2180c2e41cc3136b6ed36185b89cec0d SHA512 15abecb02d8ca478cb7d006834c8670b9e42d3e5d8ec772e9a1d805dbd2ef1145092d1d4e3a6531f21eeb75210c1354e91c4d3abeec97103ad4c3092b7b7273b WHIRLPOOL a06c9e520e6f2b40c90cb703689527faf9ed6dbe0c0c3810ad276933daa21d56465c286d3de0fe6d5330be7968ae77cff1d30151d62fb34cc7fb57535e82edd6
19
DIST libreoffice-branding-gentoo-0.8.tar.xz 151568 SHA256 22722121be062742624e0634beae92289c75e6a99ed507d3bf0a05c5164e3c69 SHA512 785031a699b1d1895ce4b50ffc3ddf645f3a0ef9acdf37facfd18cf75db9484cb8f53a50abb63d6006ead76a80b6ff5aa99661063245ebb84bd64013d713de7f WHIRLPOOL 1f36652a52d501d6548cfa9aa013b3e3a1867aa2b0693d2274cf7816d4aa4e0cde3c7096cc71ed47cf74e5f96da2757bf537f553021f8fd86939accb227bf538
22
DIST libreoffice-branding-gentoo-0.8.tar.xz 151568 SHA256 22722121be062742624e0634beae92289c75e6a99ed507d3bf0a05c5164e3c69 SHA512 785031a699b1d1895ce4b50ffc3ddf645f3a0ef9acdf37facfd18cf75db9484cb8f53a50abb63d6006ead76a80b6ff5aa99661063245ebb84bd64013d713de7f WHIRLPOOL 1f36652a52d501d6548cfa9aa013b3e3a1867aa2b0693d2274cf7816d4aa4e0cde3c7096cc71ed47cf74e5f96da2757bf537f553021f8fd86939accb227bf538
20
DIST libreoffice-help-4.4.1.2.tar.xz 1875832 SHA256 07be8ca80e3552668f496584c2d9fbc3cce8a5e3947531c62c67bdf1bbb95d10 SHA512 a955c512535f85bfd21b03fa17c6431e7190002497c66f39022a0a37c022a81c6a07da2b212d9a844b11c28d0802f8ac75086ebfeff51d36ef962394c911d4e8 WHIRLPOOL 04d9f0794fd3677a5642197dd7abcb2e6d687adf4c6320ea2ddfc2a4fdaba3f07e18d04ac489a2e73c9c8fc247bc50aaa9f2bbc672664d4c03a7992eb31af720
23
DIST libreoffice-help-4.4.4.3.tar.xz 1876068 SHA256 80d2cb4c5ee1d97218741d4e65351763dd74a617df7a51fce275983bcc5e6bc9 SHA512 b3d05ab85b1c25c3cc045c7d5217fb61b8dfc54b58c54a04b442c678d2c51975e5aadf3e28ac3f17544dd7afd6770fd8115cd05e3878b80c378b8fed6bcc2b22 WHIRLPOOL 3204cfac0ef6d2cd741e2f319242da6943b46c82ba5635df45dc1f99c3049a542df00a31c4b48092bcfad1a6d6f5d4e3c1ba0a3248331c324c08d728f909cb27
21
EBUILD libreoffice-4.4.1.2-r99.ebuild 19294 SHA256 31183c9cfcd6956d96026a48c678c3bec7890f26954076c347a64ec17fd02406 SHA512 7e757e98ada7cc4a30077edd10aeba25605d0c852d3d75cfc496f946c01c9250efc6a40375cb0832ff2326047f5638404e6e878ea734edd999469dbf853997ad WHIRLPOOL 7154e18bcb9a2a5f6285239e3bc90ac6595a25751a1872077ac072e401f5867231afa5c55ac8d4da17880c13a1f1759661e9055c5e800c55a8ec309e4cd8b6c4
24
DIST libreoffice-help-4.4.5.2.tar.xz 1876044 SHA256 66044aaff17cdf4d523ceea00197381bb50d4cb86359be83016a838c27761681 SHA512 0d75f41fa3a7593c621fb3cd6e7f94fe24cb5d5251e05f9e67f58e6603853cceb2b4df2cb28228e7bf464d053b5ce068bcae752bdf6ba977fdde20882540c869 WHIRLPOOL 2715278ed374f8850ccd79e94682cc003b69501c7863c84b3dc609b0377277fa523bc8eba41d8045bff344b1cc70f08171f8acc1aebb47914a4ac190ee66bc49
25
EBUILD libreoffice-4.4.4.3-r99.ebuild 19144 SHA256 05461b74b7e4cb6bf2dd858b6f555e40c26d5b3473d762108ca1b35935c464ac SHA512 7aa7b0f40b18c6a675de7b60d8589b2403c613c4bce14ae4c39fb4a7e274738640a3b1907ba51f79115353cecc5ad399f508308eb12e700e12a89d56e693b661 WHIRLPOOL 1d520ac1407feeca6f6f84d3f199990bb3ce87f53f2f0d2e4c426b16a6d457876fb5a43fe690413d1d5c714ab04275119d7471eada6b165ba7cef5e18c85c293
26
EBUILD libreoffice-4.4.5.2-r99.ebuild 19262 SHA256 ec409e75f738c1bc30e8f2ce91f35a4ebb3683dbfe011196fc1945aaafaf79f4 SHA512 9d7f64f987caf298bd9196e67fdf88ec425ecac992568621e76646939f209d8203d6d6bb8c978fb4cab0dc81d911e6b2fb48e64287f25740bd3ce999084192e2 WHIRLPOOL 88613c49dff94fa0d26c3ec62290802e10d8d8225c672ad5702fe1bfbdf594ea8205a72bbccc416cadfbd3889c36538e703dde63b96549f1c61406ed4b1f4194
22
MISC metadata.xml 1170 SHA256 94d12aad619c0489c65857246c536b65ae98f1cd7fd698fc0cc3a59972887c6e SHA512 3baf086b2cb75fd88d1044df055e443d46824041d9741172769707f25b7e284ce96dd16292454c1321e0078546dd694770c4111669a4ad394cea7c5e4b5e1a5f WHIRLPOOL 4c326355000a944206b8b85a8a40f7467fb6012d38b2934c8534003e4a4c20046363fd6fa07f189a5cf082887771e581a28cf2910d78a1158f11be37324f7c87
27
MISC metadata.xml 1170 SHA256 94d12aad619c0489c65857246c536b65ae98f1cd7fd698fc0cc3a59972887c6e SHA512 3baf086b2cb75fd88d1044df055e443d46824041d9741172769707f25b7e284ce96dd16292454c1321e0078546dd694770c4111669a4ad394cea7c5e4b5e1a5f WHIRLPOOL 4c326355000a944206b8b85a8a40f7467fb6012d38b2934c8534003e4a4c20046363fd6fa07f189a5cf082887771e581a28cf2910d78a1158f11be37324f7c87
(-)a/app-office/libreoffice/files/libreoffice-4.4.0.3-gcc-4.9-Os-link-failure.patch (-80 lines)
Lines 1-80 Link Here
1
From 0e4b1d2127957459b79f41a96f1fa0061d399b3b Mon Sep 17 00:00:00 2001
2
From: Michael Stahl <mstahl@redhat.com>
3
Date: Sat, 14 Feb 2015 00:17:06 +0100
4
Subject: tdf#78174: toolkit: work around GCC 4.9 -Os link failure
5
6
A build with gcc (GCC) 4.9.2 20141101 (Red Hat 4.9.2-1) for 32-bit x86
7
fails because of these undefined symbols:
8
9
> nm --demangle workdir/CxxObject/svx/source/fmcomp/fmgridif.o | grep
10
 \\bWindowListenerMultiplexer::acquire
11
         U non-virtual thunk to WindowListenerMultiplexer::acquire()
12
13
They should probably be generated inline.  Work around by out-lining the
14
definition of the methods.
15
16
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64812
17
18
Change-Id: I318f7c39bdf1243be385bc6dc0a47862b22e92c5
19
(cherry picked from commit 6b3aa0fe4094e87290bd33a30bd6cd99ee78ce38)
20
Reviewed-on: https://gerrit.libreoffice.org/14509
21
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
22
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
23
24
diff --git a/include/toolkit/helper/macros.hxx b/include/toolkit/helper/macros.hxx
25
index e048e75..b212dff 100644
26
--- a/include/toolkit/helper/macros.hxx
27
+++ b/include/toolkit/helper/macros.hxx
28
@@ -112,8 +112,8 @@ class ClassName : public ListenerMultiplexerBase, public InterfaceName \
29
 public: \
30
     ClassName( ::cppu::OWeakObject& rSource ); \
31
     ::com::sun::star::uno::Any  SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; \
32
-    void                        SAL_CALL acquire() throw() SAL_OVERRIDE  { ListenerMultiplexerBase::acquire(); } \
33
-    void                        SAL_CALL release() throw() SAL_OVERRIDE  { ListenerMultiplexerBase::release(); } \
34
+    void                        SAL_CALL acquire() throw() SAL_OVERRIDE; \
35
+    void                        SAL_CALL release() throw() SAL_OVERRIDE; \
36
     void                        SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
37
 
38
 
39
@@ -124,8 +124,8 @@ class TOOLKIT_DLLPUBLIC ClassName : public ListenerMultiplexerBase, public Inter
40
 public: \
41
     ClassName( ::cppu::OWeakObject& rSource ); \
42
     ::com::sun::star::uno::Any  SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; \
43
-    void                        SAL_CALL acquire() throw() SAL_OVERRIDE  { ListenerMultiplexerBase::acquire(); } \
44
-    void                        SAL_CALL release() throw() SAL_OVERRIDE  { ListenerMultiplexerBase::release(); } \
45
+    void                        SAL_CALL acquire() throw() SAL_OVERRIDE; \
46
+    void                        SAL_CALL release() throw() SAL_OVERRIDE; \
47
     void                        SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
48
 
49
 
50
@@ -140,6 +140,8 @@ ClassName::ClassName( ::cppu::OWeakObject& rSource ) \
51
     : ListenerMultiplexerBase( rSource ) \
52
 { \
53
 } \
54
+void SAL_CALL ClassName::acquire() throw() { ListenerMultiplexerBase::acquire(); } \
55
+void SAL_CALL ClassName::release() throw() { ListenerMultiplexerBase::release(); } \
56
 ::com::sun::star::uno::Any ClassName::queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException, std::exception) \
57
 { \
58
     ::com::sun::star::uno::Any aRet = ::cppu::queryInterface( rType, \
59
diff --git a/toolkit/source/helper/listenermultiplexer.cxx b/toolkit/source/helper/listenermultiplexer.cxx
60
index 797fad2..b109c5f 100644
61
--- a/toolkit/source/helper/listenermultiplexer.cxx
62
+++ b/toolkit/source/helper/listenermultiplexer.cxx
63
@@ -47,6 +47,15 @@ EventListenerMultiplexer::EventListenerMultiplexer( ::cppu::OWeakObject& rSource
64
 {
65
 }
66
 
67
+void SAL_CALL EventListenerMultiplexer::acquire() throw ()
68
+{
69
+    return ListenerMultiplexerBase::acquire();
70
+}
71
+void SAL_CALL EventListenerMultiplexer::release() throw ()
72
+{
73
+    return ListenerMultiplexerBase::release();
74
+}
75
+
76
 // ::com::sun::star::uno::XInterface
77
 ::com::sun::star::uno::Any EventListenerMultiplexer::queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException, std::exception)
78
 {
79
-- 
80
cgit v0.10.2
(-)a/app-office/libreoffice/files/libreoffice-4.4.1.2-improve-KDE4FilePicker.patch (-192 lines)
Lines 1-192 Link Here
1
Merged upstream commits:
2
3
6fc55b9abd783b624241d56e34751ea495adbd7d	"KDE4: actually apply file dialog operation mode"
4
b613270a730ace29dd1b16b29be2222b34f34a5d	"KDE4: improve default load and save dialog titles"
5
6
7
diff -u b/vcl/unx/kde4/KDE4FilePicker.cxx b/vcl/unx/kde4/KDE4FilePicker.cxx
8
--- b/vcl/unx/kde4/KDE4FilePicker.cxx
9
+++ b/vcl/unx/kde4/KDE4FilePicker.cxx
10
@@ -58,6 +58,8 @@
11
 
12
 #include "generic/geninst.h"
13
 
14
+#include "svids.hrc"
15
+
16
 using namespace ::com::sun::star;
17
 using namespace ::com::sun::star::ui::dialogs;
18
 using namespace ::com::sun::star::ui::dialogs::TemplateDescription;
19
@@ -109,7 +111,6 @@
20
 
21
 KDE4FilePicker::KDE4FilePicker( const uno::Reference<uno::XComponentContext>& )
22
     : KDE4FilePicker_Base(_helperMutex)
23
-    , _resMgr( ResMgr::CreateResMgr("fps_office") )
24
     , allowRemoteUrls( false )
25
 {
26
     _extraControls = new QWidget();
27
@@ -128,8 +129,7 @@
28
 #endif
29
 
30
     setMultiSelectionMode( false );
31
-    //default mode
32
-    _dialog->setOperationMode(KFileDialog::Opening);
33
+    _dialog->setConfirmOverwrite( true );
34
 
35
     // XExecutableDialog functions
36
     connect( this, SIGNAL( setTitleSignal( const OUString & ) ),
37
@@ -202,7 +202,6 @@
38
         SalYieldMutexReleaser aReleaser;
39
         return Q_EMIT cleanupProxySignal();
40
     }
41
-    delete _resMgr;
42
     delete _dialog;
43
 }
44
 
45
@@ -524,6 +523,24 @@
46
     return toOUString(label);
47
 }
48
 
49
+QString KDE4FilePicker::getResString( sal_Int16 aRedId )
50
+{
51
+    QString aResString;
52
+
53
+    if( aRedId < 0 )
54
+        return aResString;
55
+
56
+    try
57
+    {
58
+        aResString = toQString(ResId(aRedId, *ImplGetResMgr()).toString());
59
+    }
60
+    catch(...)
61
+    {
62
+    }
63
+
64
+    return aResString.replace('~', '&');
65
+}
66
+
67
 void KDE4FilePicker::addCustomControl(sal_Int16 controlId)
68
 {
69
     QWidget* widget = 0;
70
@@ -532,37 +549,37 @@
71
     switch (controlId)
72
     {
73
         case CHECKBOX_AUTOEXTENSION:
74
-            resId = STR_SVT_FILEPICKER_AUTO_EXTENSION;
75
+            resId = STR_FPICKER_AUTO_EXTENSION;
76
             break;
77
         case CHECKBOX_PASSWORD:
78
-            resId = STR_SVT_FILEPICKER_PASSWORD;
79
+            resId = STR_FPICKER_PASSWORD;
80
             break;
81
         case CHECKBOX_FILTEROPTIONS:
82
-            resId = STR_SVT_FILEPICKER_FILTER_OPTIONS;
83
+            resId = STR_FPICKER_FILTER_OPTIONS;
84
             break;
85
         case CHECKBOX_READONLY:
86
-            resId = STR_SVT_FILEPICKER_READONLY;
87
+            resId = STR_FPICKER_READONLY;
88
             break;
89
         case CHECKBOX_LINK:
90
-            resId = STR_SVT_FILEPICKER_INSERT_AS_LINK;
91
+            resId = STR_FPICKER_INSERT_AS_LINK;
92
             break;
93
         case CHECKBOX_PREVIEW:
94
-            resId = STR_SVT_FILEPICKER_SHOW_PREVIEW;
95
+            resId = STR_FPICKER_SHOW_PREVIEW;
96
             break;
97
         case CHECKBOX_SELECTION:
98
-            resId = STR_SVT_FILEPICKER_SELECTION;
99
+            resId = STR_FPICKER_SELECTION;
100
             break;
101
         case PUSHBUTTON_PLAY:
102
-            resId = STR_SVT_FILEPICKER_PLAY;
103
+            resId = STR_FPICKER_PLAY;
104
             break;
105
         case LISTBOX_VERSION:
106
-            resId = STR_SVT_FILEPICKER_VERSION;
107
+            resId = STR_FPICKER_VERSION;
108
             break;
109
         case LISTBOX_TEMPLATE:
110
-            resId = STR_SVT_FILEPICKER_TEMPLATES;
111
+            resId = STR_FPICKER_TEMPLATES;
112
             break;
113
         case LISTBOX_IMAGE_TEMPLATE:
114
-            resId = STR_SVT_FILEPICKER_IMAGE_TEMPLATE;
115
+            resId = STR_FPICKER_IMAGE_TEMPLATE;
116
             break;
117
         case LISTBOX_VERSION_LABEL:
118
         case LISTBOX_TEMPLATE_LABEL:
119
@@ -581,16 +598,7 @@
120
         case CHECKBOX_PREVIEW:
121
         case CHECKBOX_SELECTION:
122
         {
123
-            QString label;
124
-
125
-            if (_resMgr && resId != -1)
126
-            {
127
-                OUString s(ResId(resId, *_resMgr).toString());
128
-                label = toQString(s);
129
-                label.replace("~", "&");
130
-            }
131
-
132
-            widget = new QCheckBox(label, _extraControls);
133
+            widget = new QCheckBox(getResString(resId), _extraControls);
134
 
135
             // the checkbox is created even for CHECKBOX_AUTOEXTENSION to simplify
136
             // code, but the checkbox is hidden and ignored
137
@@ -719,8 +727,22 @@
138
                     1 );
139
     }
140
 
141
-    _dialog->setOperationMode(operationMode);
142
-    _dialog->setConfirmOverwrite(true);
143
+    _dialog->setOperationMode( operationMode );
144
+
145
+    sal_Int16 resId = -1;
146
+    switch (_dialog->operationMode())
147
+    {
148
+    case KFileDialog::Opening:
149
+        resId = STR_FPICKER_OPEN;
150
+        break;
151
+    case KFileDialog::Saving:
152
+        resId = STR_FPICKER_SAVE;
153
+        break;
154
+    default:
155
+        break;
156
+    }
157
+
158
+    _dialog->setCaption(getResString(resId));
159
 }
160
 
161
 void SAL_CALL KDE4FilePicker::cancel()
162
only in patch2:
163
unchanged:
164
--- a/vcl/unx/kde4/KDE4FilePicker.hxx
165
+++ b/vcl/unx/kde4/KDE4FilePicker.hxx
166
@@ -41,8 +41,6 @@ class KFileDialog;
167
 class QWidget;
168
 class QLayout;
169
 
170
-class ResMgr;
171
-
172
 typedef ::cppu::WeakComponentImplHelper5
173
 <   ::com::sun::star::ui::dialogs::XFilePicker2
174
 ,   ::com::sun::star::ui::dialogs::XFilePicker3
175
@@ -61,8 +59,6 @@ protected:
176
 
177
     ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFilePickerListener > m_xListener;
178
 
179
-    ResMgr *_resMgr;
180
-
181
     //the dialog to display
182
     KFileDialog* _dialog;
183
 
184
@@ -225,6 +221,8 @@ private:
185
     //add a custom control widget to the file dialog
186
     void addCustomControl(sal_Int16 controlId);
187
 
188
+    QString getResString( sal_Int16 aRedId );
189
+
190
 private Q_SLOTS:
191
     void cleanupProxy();
192
     void checkProtocol();
(-)a/app-office/libreoffice/files/libreoffice-4.4.4.3-cleanup-IsNativeControlSupported.patch (+212 lines)
Line 0 Link Here
1
Merged upstream commits:
2
3
88e16529fc7b0e312b68e38295348c93b437aad8	"tdf#92110 KDE4: cleanup IsNativeControlSupported"
4
57792314c7b05f71c66834ee47bfaa09003df765	"tdf#92115 KDE4: better listbox theming"
5
6
7
diff -u b/vcl/unx/kde4/KDESalGraphics.cxx b/vcl/unx/kde4/KDESalGraphics.cxx
8
--- b/vcl/unx/kde4/KDESalGraphics.cxx
9
+++ b/vcl/unx/kde4/KDESalGraphics.cxx
10
@@ -85,47 +85,43 @@
11
 
12
 bool KDESalGraphics::IsNativeControlSupported( ControlType type, ControlPart part )
13
 {
14
-    if (type == CTRL_PUSHBUTTON) return true;
15
-
16
-    if (type == CTRL_MENUBAR) return true;
17
-
18
-    if (type == CTRL_MENU_POPUP) return true;
19
-
20
-    if (type == CTRL_EDITBOX) return true;
21
-
22
-    if (type == CTRL_COMBOBOX) return true;
23
-
24
-    if (type == CTRL_TOOLBAR) return true;
25
-
26
-    if (type == CTRL_CHECKBOX) return true;
27
-
28
-    if (type == CTRL_LISTBOX) return true;
29
-
30
-    if (type == CTRL_LISTNODE) return true;
31
-
32
-    if (type == CTRL_FRAME) return true;
33
-
34
-    if (type == CTRL_SCROLLBAR) return true;
35
-
36
-    if (type == CTRL_WINDOW_BACKGROUND) return true;
37
-
38
-    if (type == CTRL_SPINBOX && (part == PART_ENTIRE_CONTROL || part == HAS_BACKGROUND_TEXTURE) ) return true;
39
-
40
-    // no spinbuttons for KDE, paint spinbox complete
41
-    //if (type == CTRL_SPINBUTTONS) return true;
42
-
43
-    if (type == CTRL_GROUPBOX) return true;
44
-
45
-    if (type == CTRL_FIXEDLINE) return true;
46
-
47
-    if (type == CTRL_TOOLTIP) return true;
48
+    switch (type)
49
+    {
50
+        case CTRL_PUSHBUTTON:
51
+        case CTRL_RADIOBUTTON:
52
+        case CTRL_CHECKBOX:
53
+        case CTRL_TOOLTIP:
54
+        case CTRL_PROGRESS:
55
+        case CTRL_LISTNODE:
56
+            return (part == PART_ENTIRE_CONTROL);
57
+
58
+        case CTRL_MENUBAR:
59
+        case CTRL_MENU_POPUP:
60
+        case CTRL_EDITBOX:
61
+        case CTRL_COMBOBOX:
62
+        case CTRL_TOOLBAR:
63
+        case CTRL_FRAME:
64
+        case CTRL_SCROLLBAR:
65
+        case CTRL_WINDOW_BACKGROUND:
66
+        case CTRL_GROUPBOX:
67
+        case CTRL_FIXEDLINE:
68
+            return true;
69
+
70
+        case CTRL_LISTBOX:
71
+            return (part == PART_ENTIRE_CONTROL
72
+                 || part == PART_SUB_EDIT
73
+                 || part == PART_WINDOW
74
+                 || part == PART_BUTTON_DOWN);
75
 
76
-    if (type == CTRL_RADIOBUTTON) return true;
77
+        case CTRL_SPINBOX:
78
+            return (part == PART_ENTIRE_CONTROL || part == HAS_BACKGROUND_TEXTURE);
79
 
80
-    if (type == CTRL_SLIDER && (part == PART_TRACK_HORZ_AREA || part == PART_TRACK_VERT_AREA) )
81
-        return true;
82
+        case CTRL_SLIDER:
83
+            return (part == PART_TRACK_HORZ_AREA || part == PART_TRACK_VERT_AREA);
84
 
85
-    if ( (type == CTRL_PROGRESS) && (part == PART_ENTIRE_CONTROL) ) return true;
86
+        default:
87
+            break;
88
+    }
89
 
90
     return false;
91
 }
92
@@ -221,15 +217,15 @@
93
                                         const ImplControlValue& value,
94
                                         const OUString& )
95
 {
96
-    if( lastPopupRect.isValid() && ( type != CTRL_MENU_POPUP || part != PART_MENU_ITEM ))
97
-        lastPopupRect = QRect();
98
-
99
-    // put not implemented types here
100
-    if (type == CTRL_SPINBUTTONS)
101
-    {
102
+    bool nativeSupport = IsNativeControlSupported( type, part );
103
+    if( ! nativeSupport ) {
104
+        assert( ! nativeSupport && "drawNativeControl called without native support!" );
105
         return false;
106
     }
107
 
108
+    if( lastPopupRect.isValid() && ( type != CTRL_MENU_POPUP || part != PART_MENU_ITEM ))
109
+        lastPopupRect = QRect();
110
+
111
     bool returnVal = true;
112
 
113
     QRect widgetRect = region2QRect(rControlRegion);
114
@@ -414,24 +410,26 @@
115
     }
116
     else if (type == CTRL_LISTBOX)
117
     {
118
-        if( part == PART_WINDOW )
119
-        {
120
-            lcl_drawFrame( QStyle::PE_Frame, m_image,
121
-                           vclStateValue2StateFlag(nControlState, value) );
122
-        }
123
-        else
124
-        {
125
-            QStyleOptionComboBox option;
126
-            if (part == PART_SUB_EDIT)
127
-            {
128
+        QStyleOptionComboBox option;
129
+        switch (part) {
130
+            case PART_WINDOW:
131
+                lcl_drawFrame( QStyle::PE_Frame, m_image,
132
+                               vclStateValue2StateFlag(nControlState, value) );
133
+                break;
134
+            case PART_SUB_EDIT:
135
                 draw( QStyle::CE_ComboBoxLabel, &option, m_image,
136
                       vclStateValue2StateFlag(nControlState, value) );
137
-            }
138
-            else
139
-            {
140
+                break;
141
+            case PART_ENTIRE_CONTROL:
142
+                draw( QStyle::CC_ComboBox, &option, m_image,
143
+                      vclStateValue2StateFlag(nControlState, value) );
144
+                break;
145
+            case PART_BUTTON_DOWN:
146
+                m_image->fill( Qt::transparent );
147
+                option.subControls = QStyle::SC_ComboBoxArrow;
148
                 draw( QStyle::CC_ComboBox, &option, m_image,
149
                       vclStateValue2StateFlag(nControlState, value) );
150
-            }
151
+                break;
152
         }
153
     }
154
     else if (type == CTRL_LISTNODE)
155
@@ -652,6 +650,12 @@
156
                                              const OUString&,
157
                                              Rectangle &nativeBoundingRegion, Rectangle &nativeContentRegion )
158
 {
159
+    bool nativeSupport = IsNativeControlSupported( type, part );
160
+    if( ! nativeSupport ) {
161
+        assert( ! nativeSupport && "drawNativeControl called without native support!" );
162
+        return false;
163
+    }
164
+
165
     bool retVal = false;
166
 
167
     QRect boundingRect = region2QRect( controlRegion );
168
@@ -733,8 +737,6 @@
169
             {
170
                 case PART_ENTIRE_CONTROL:
171
                 {
172
-                    int size = QApplication::style()->pixelMetric(QStyle::PM_ComboBoxFrameWidth) - 2;
173
-
174
                     // find out the minimum size that should be used
175
                     // assume contents is a text ling
176
                     int nHeight = QApplication::fontMetrics().height();
177
@@ -747,8 +749,10 @@
178
                     // FIXME: why this difference between comboboxes and listboxes ?
179
                     // because a combobox has a sub edit and that is positioned
180
                     // inside the outer bordered control ?
181
-                    if( type == CTRL_COMBOBOX )
182
+                    if( type == CTRL_COMBOBOX ) {
183
+                        int size = QApplication::style()->pixelMetric(QStyle::PM_ComboBoxFrameWidth) - 2;
184
                         contentRect.adjust(-size,-size,size,size);
185
+                    }
186
                     retVal = true;
187
                     break;
188
                 }
189
@@ -761,13 +765,22 @@
190
                     retVal = true;
191
                     break;
192
                 case PART_SUB_EDIT:
193
+                {
194
                     contentRect = QApplication::style()->subControlRect(
195
                         QStyle::CC_ComboBox, &cbo, QStyle::SC_ComboBoxEditField );
196
 
197
-                    contentRect.translate( boundingRect.left(), boundingRect.top() );
198
+                    int hmargin = QApplication::style()->pixelMetric(
199
+                            QStyle::PM_FocusFrameHMargin, &styleOption);
200
+                    int vmargin = QApplication::style()->pixelMetric(
201
+                            QStyle::PM_FocusFrameVMargin, &styleOption);
202
+
203
+                    contentRect.translate( boundingRect.left() + hmargin, boundingRect.top() + vmargin );
204
+                    contentRect.adjust( 0, 0, -2 * hmargin, -2 * vmargin );
205
+                    boundingRect = contentRect;
206
 
207
                     retVal = true;
208
                     break;
209
+                }
210
                 case PART_WINDOW:
211
                     retVal = true;
212
                     break;
(-)a/app-office/libreoffice/files/libreoffice-4.4.4.3-fix-KDE4-FileDialog.patch (+76 lines)
Line 0 Link Here
1
From e7352d5ada69f212dc813c4cbd257d036e7a27c8 Mon Sep 17 00:00:00 2001
2
From: Juergen Funk <juergen.funk_ml@cib.de>
3
Date: Fri, 3 Jul 2015 08:33:03 +0200
4
Subject: tdf#92517 KDE4-FileDialog: "Save as" has wrong Filter
5
MIME-Version: 1.0
6
Content-Type: text/plain; charset=UTF-8
7
Content-Transfer-Encoding: 8bit
8
9
Fixing follow
10
 - The order of calling: first should be set the filter, after
11
   that can be set the current filter
12
 - change the function from "setCurrentFilter" to "setCurrentItem"
13
   When you set the filter over "setCurrentFilter" you need the full
14
   search string "extention|description" e.g. "*.docx|Microsoft Word.."
15
 - Not need the escape of slash (with that can not find
16
   "Microsoft Word 2007/2010 XML (.docx))"
17
18
Change-Id: Ie4f7d6fd619b391487ee944c3e745c855600ee54
19
Reviewed-on: https://gerrit.libreoffice.org/16721
20
Tested-by: Jenkins <ci@libreoffice.org>
21
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
22
(cherry picked from commit a93cfd5afb9072de00fc4b2a070f23ebdad6e4fe)
23
Reviewed-on: https://gerrit.libreoffice.org/16890
24
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
25
Tested-by: Caolán McNamara <caolanm@redhat.com>
26
27
diff --git a/vcl/unx/kde4/KDE4FilePicker.cxx b/vcl/unx/kde4/KDE4FilePicker.cxx
28
index 4615bd4..a638955 100644
29
--- a/vcl/unx/kde4/KDE4FilePicker.cxx
30
+++ b/vcl/unx/kde4/KDE4FilePicker.cxx
31
@@ -250,6 +250,10 @@ sal_Int16 SAL_CALL KDE4FilePicker::execute()
32
 
33
     _dialog->clearFilter();
34
     _dialog->setFilter(_filter);
35
+
36
+    if(!_currentFilter.isNull())
37
+        _dialog->filterWidget()->setCurrentItem(_currentFilter);
38
+
39
     _dialog->filterWidget()->setEditable(false);
40
 
41
     VCLKDEApplication::preDialogSetup();
42
@@ -384,9 +388,7 @@ void SAL_CALL KDE4FilePicker::setCurrentFilter( const OUString &title )
43
         return Q_EMIT setCurrentFilterSignal( title );
44
     }
45
 
46
-    QString t = toQString(title);
47
-    t.replace("/", "\\/");
48
-    _dialog->filterWidget()->setCurrentFilter(t);
49
+    _currentFilter = toQString(title);
50
 }
51
 
52
 OUString SAL_CALL KDE4FilePicker::getCurrentFilter()
53
@@ -633,6 +635,7 @@ void SAL_CALL KDE4FilePicker::initialize( const uno::Sequence<uno::Any> &args )
54
     }
55
 
56
     _filter.clear();
57
+    _currentFilter.clear();
58
 
59
     // parameter checking
60
     uno::Any arg;
61
diff --git a/vcl/unx/kde4/KDE4FilePicker.hxx b/vcl/unx/kde4/KDE4FilePicker.hxx
62
index 98e9af6..ff3a8602 100644
63
--- a/vcl/unx/kde4/KDE4FilePicker.hxx
64
+++ b/vcl/unx/kde4/KDE4FilePicker.hxx
65
@@ -66,6 +66,8 @@ protected:
66
 
67
     //running filter string to add to dialog
68
     QString _filter;
69
+    // string to set the current filter
70
+    QString _currentFilter;
71
 
72
     //mapping of SAL control ID's to created custom controls
73
     QHash<sal_Int16, QWidget*> _customWidgets;
74
-- 
75
cgit v0.10.2
76
(-)a/app-office/libreoffice/files/libreoffice-4.4.4.3-improve-KDE4FilePicker.patch (+193 lines)
Line 0 Link Here
1
Merged upstream commits:
2
3
6fc55b9abd783b624241d56e34751ea495adbd7d	"KDE4: actually apply file dialog operation mode"
4
b613270a730ace29dd1b16b29be2222b34f34a5d	"KDE4: improve default load and save dialog titles"
5
2b999dd6da5a90db66afe852a007fab8c62ffaec	"vcl: kde4: loplugin:staticmethods"
6
3e8c14df67a43d3088ed7df0a2b0d96a4bc42d57	"tdf#92353 FileSave: Not confirmed for overwrite a file (unix)"
7
8
9
diff -u b/vcl/unx/kde4/KDE4FilePicker.cxx b/vcl/unx/kde4/KDE4FilePicker.cxx
10
--- b/vcl/unx/kde4/KDE4FilePicker.cxx
11
+++ b/vcl/unx/kde4/KDE4FilePicker.cxx
12
@@ -58,6 +58,8 @@
13
 
14
 #include "generic/geninst.h"
15
 
16
+#include "svids.hrc"
17
+
18
 using namespace ::com::sun::star;
19
 using namespace ::com::sun::star::ui::dialogs;
20
 using namespace ::com::sun::star::ui::dialogs::TemplateDescription;
21
@@ -109,7 +111,6 @@
22
 
23
 KDE4FilePicker::KDE4FilePicker( const uno::Reference<uno::XComponentContext>& )
24
     : KDE4FilePicker_Base(_helperMutex)
25
-    , _resMgr( ResMgr::CreateResMgr("fps_office") )
26
     , allowRemoteUrls( false )
27
 {
28
     _extraControls = new QWidget();
29
@@ -128,8 +129,6 @@
30
 #endif
31
 
32
     setMultiSelectionMode( false );
33
-    //default mode
34
-    _dialog->setOperationMode(KFileDialog::Opening);
35
 
36
     // XExecutableDialog functions
37
     connect( this, SIGNAL( setTitleSignal( const OUString & ) ),
38
@@ -202,7 +201,6 @@
39
         SalYieldMutexReleaser aReleaser;
40
         return Q_EMIT cleanupProxySignal();
41
     }
42
-    delete _resMgr;
43
     delete _dialog;
44
 }
45
 
46
@@ -524,6 +522,24 @@
47
     return toOUString(label);
48
 }
49
 
50
+QString KDE4FilePicker::getResString( sal_Int16 aRedId )
51
+{
52
+    QString aResString;
53
+
54
+    if( aRedId < 0 )
55
+        return aResString;
56
+
57
+    try
58
+    {
59
+        aResString = toQString(ResId(aRedId, *ImplGetResMgr()).toString());
60
+    }
61
+    catch(...)
62
+    {
63
+    }
64
+
65
+    return aResString.replace('~', '&');
66
+}
67
+
68
 void KDE4FilePicker::addCustomControl(sal_Int16 controlId)
69
 {
70
     QWidget* widget = 0;
71
@@ -532,37 +548,37 @@
72
     switch (controlId)
73
     {
74
         case CHECKBOX_AUTOEXTENSION:
75
-            resId = STR_SVT_FILEPICKER_AUTO_EXTENSION;
76
+            resId = STR_FPICKER_AUTO_EXTENSION;
77
             break;
78
         case CHECKBOX_PASSWORD:
79
-            resId = STR_SVT_FILEPICKER_PASSWORD;
80
+            resId = STR_FPICKER_PASSWORD;
81
             break;
82
         case CHECKBOX_FILTEROPTIONS:
83
-            resId = STR_SVT_FILEPICKER_FILTER_OPTIONS;
84
+            resId = STR_FPICKER_FILTER_OPTIONS;
85
             break;
86
         case CHECKBOX_READONLY:
87
-            resId = STR_SVT_FILEPICKER_READONLY;
88
+            resId = STR_FPICKER_READONLY;
89
             break;
90
         case CHECKBOX_LINK:
91
-            resId = STR_SVT_FILEPICKER_INSERT_AS_LINK;
92
+            resId = STR_FPICKER_INSERT_AS_LINK;
93
             break;
94
         case CHECKBOX_PREVIEW:
95
-            resId = STR_SVT_FILEPICKER_SHOW_PREVIEW;
96
+            resId = STR_FPICKER_SHOW_PREVIEW;
97
             break;
98
         case CHECKBOX_SELECTION:
99
-            resId = STR_SVT_FILEPICKER_SELECTION;
100
+            resId = STR_FPICKER_SELECTION;
101
             break;
102
         case PUSHBUTTON_PLAY:
103
-            resId = STR_SVT_FILEPICKER_PLAY;
104
+            resId = STR_FPICKER_PLAY;
105
             break;
106
         case LISTBOX_VERSION:
107
-            resId = STR_SVT_FILEPICKER_VERSION;
108
+            resId = STR_FPICKER_VERSION;
109
             break;
110
         case LISTBOX_TEMPLATE:
111
-            resId = STR_SVT_FILEPICKER_TEMPLATES;
112
+            resId = STR_FPICKER_TEMPLATES;
113
             break;
114
         case LISTBOX_IMAGE_TEMPLATE:
115
-            resId = STR_SVT_FILEPICKER_IMAGE_TEMPLATE;
116
+            resId = STR_FPICKER_IMAGE_TEMPLATE;
117
             break;
118
         case LISTBOX_VERSION_LABEL:
119
         case LISTBOX_TEMPLATE_LABEL:
120
@@ -581,16 +597,7 @@
121
         case CHECKBOX_PREVIEW:
122
         case CHECKBOX_SELECTION:
123
         {
124
-            QString label;
125
-
126
-            if (_resMgr && resId != -1)
127
-            {
128
-                OUString s(ResId(resId, *_resMgr).toString());
129
-                label = toQString(s);
130
-                label.replace("~", "&");
131
-            }
132
-
133
-            widget = new QCheckBox(label, _extraControls);
134
+            widget = new QCheckBox(getResString(resId), _extraControls);
135
 
136
             // the checkbox is created even for CHECKBOX_AUTOEXTENSION to simplify
137
             // code, but the checkbox is hidden and ignored
138
@@ -719,8 +726,23 @@
139
                     1 );
140
     }
141
 
142
-    _dialog->setOperationMode(operationMode);
143
-    _dialog->setConfirmOverwrite(true);
144
+    _dialog->setOperationMode( operationMode );
145
+
146
+    sal_Int16 resId = -1;
147
+    switch (_dialog->operationMode())
148
+    {
149
+    case KFileDialog::Opening:
150
+        resId = STR_FPICKER_OPEN;
151
+        break;
152
+    case KFileDialog::Saving:
153
+        resId = STR_FPICKER_SAVE;
154
+        _dialog->setConfirmOverwrite( true );
155
+        break;
156
+    default:
157
+        break;
158
+    }
159
+
160
+    _dialog->setCaption(getResString(resId));
161
 }
162
 
163
 void SAL_CALL KDE4FilePicker::cancel()
164
diff -u b/vcl/unx/kde4/KDE4FilePicker.hxx b/vcl/unx/kde4/KDE4FilePicker.hxx
165
--- b/vcl/unx/kde4/KDE4FilePicker.hxx
166
+++ b/vcl/unx/kde4/KDE4FilePicker.hxx
167
@@ -41,8 +41,6 @@
168
 class QWidget;
169
 class QLayout;
170
 
171
-class ResMgr;
172
-
173
 typedef ::cppu::WeakComponentImplHelper5
174
 <   ::com::sun::star::ui::dialogs::XFilePicker2
175
 ,   ::com::sun::star::ui::dialogs::XFilePicker3
176
@@ -61,8 +59,6 @@
177
 
178
     ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFilePickerListener > m_xListener;
179
 
180
-    ResMgr *_resMgr;
181
-
182
     //the dialog to display
183
     KFileDialog* _dialog;
184
 
185
@@ -225,6 +221,8 @@
186
     //add a custom control widget to the file dialog
187
     void addCustomControl(sal_Int16 controlId);
188
 
189
+    static QString getResString( sal_Int16 aRedId );
190
+
191
 private Q_SLOTS:
192
     void cleanupProxy();
193
     void checkProtocol();
(-)a/app-office/libreoffice/files/libreoffice-4.4.5.2-fix-KDE4-listbox-regression.patch (+80 lines)
Line 0 Link Here
1
From ef126328c3ad35d51395abc461c3d64429f91c26 Mon Sep 17 00:00:00 2001
2
From: Jan-Marek Glogowski <glogow@fbihome.de>
3
Date: Thu, 30 Jul 2015 18:10:03 +0200
4
Subject: tdf#92903 KDE4: fix listbox regression from 92115
5
6
So at least in case of the CTRL_LISTBOX, getNativeControlRegion is
7
called for a type and part unsupported by IsNativeControlSupported.
8
9
For whatever reason, this results in broken listboxes drawn in
10
Base's "Table Design" dialog, when selecting "field type", which
11
draws the listbox on top of the cell.
12
13
To make it worse, it seems the listbox is actually drawn to a
14
smaller space then the actual requirement. Appearently it seems to
15
use the content rect, instead of the bounding rect.
16
17
So in addition to fixing the drawing, this patch increases the
18
listbox bounding rect, which looks too large in normal dialogs, but
19
makes the Base's listbox better readable.
20
21
Change-Id: I112ec038fd20ad33facd260d16b5d68b508d2bd0
22
Reviewed-on: https://gerrit.libreoffice.org/17438
23
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
24
Tested-by: Katarina Behrens <Katarina.Behrens@cib.de>
25
26
diff --git a/vcl/unx/kde4/KDESalGraphics.cxx b/vcl/unx/kde4/KDESalGraphics.cxx
27
index 3e79e1e..eeb741f 100644
28
--- a/vcl/unx/kde4/KDESalGraphics.cxx
29
+++ b/vcl/unx/kde4/KDESalGraphics.cxx
30
@@ -108,10 +108,7 @@ bool KDESalGraphics::IsNativeControlSupported( ControlType type, ControlPart par
31
             return true;
32
 
33
         case CTRL_LISTBOX:
34
-            return (part == PART_ENTIRE_CONTROL
35
-                 || part == PART_SUB_EDIT
36
-                 || part == PART_WINDOW
37
-                 || part == PART_BUTTON_DOWN);
38
+            return (part == PART_ENTIRE_CONTROL || part == HAS_BACKGROUND_TEXTURE);
39
 
40
         case CTRL_SPINBOX:
41
             return (part == PART_ENTIRE_CONTROL || part == HAS_BACKGROUND_TEXTURE);
42
@@ -650,12 +647,6 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part,
43
                                              const OUString&,
44
                                              Rectangle &nativeBoundingRegion, Rectangle &nativeContentRegion )
45
 {
46
-    bool nativeSupport = IsNativeControlSupported( type, part );
47
-    if( ! nativeSupport ) {
48
-        assert( ! nativeSupport && "drawNativeControl called without native support!" );
49
-        return false;
50
-    }
51
-
52
     bool retVal = false;
53
 
54
     QRect boundingRect = region2QRect( controlRegion );
55
@@ -753,6 +744,14 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part,
56
                         int size = QApplication::style()->pixelMetric(QStyle::PM_ComboBoxFrameWidth) - 2;
57
                         contentRect.adjust(-size,-size,size,size);
58
                     }
59
+                    else {
60
+                        int hmargin = QApplication::style()->pixelMetric(
61
+                                QStyle::PM_FocusFrameHMargin, &styleOption);
62
+                        int vmargin = QApplication::style()->pixelMetric(
63
+                                QStyle::PM_FocusFrameVMargin, &styleOption);
64
+                        boundingRect.translate( -hmargin, -vmargin );
65
+                        boundingRect.adjust( -hmargin, -vmargin, 2 * hmargin, 2 * vmargin );
66
+                    }
67
                     retVal = true;
68
                     break;
69
                 }
70
@@ -776,7 +775,6 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part,
71
 
72
                     contentRect.translate( boundingRect.left() + hmargin, boundingRect.top() + vmargin );
73
                     contentRect.adjust( 0, 0, -2 * hmargin, -2 * vmargin );
74
-                    boundingRect = contentRect;
75
 
76
                     retVal = true;
77
                     break;
78
-- 
79
cgit v0.10.2
80
(-)a/app-office/libreoffice/libreoffice-4.4.1.2-r99.ebuild (-619 lines)
Lines 1-619 Link Here
1
# Copyright 1999-2015 Gentoo Foundation
2
# Distributed under the terms of the GNU General Public License v2
3
# $Header: /var/cvsroot/gentoo-x86/app-office/libreoffice/libreoffice-4.4.1.2.ebuild,v 1.6 2015/04/11 20:43:16 dilfridge Exp $
4
5
EAPI=5
6
7
KDE_REQUIRED="optional"
8
QT_MINIMAL="4.7.4"
9
KDE_SCM="git"
10
CMAKE_REQUIRED="never"
11
12
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
13
PYTHON_REQ_USE="threads,xml"
14
15
# experimental ; release ; old
16
# Usually the tarballs are moved a lot so this should make
17
# everyone happy.
18
DEV_URI="
19
	http://dev-builds.libreoffice.org/pre-releases/src
20
	http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
21
	http://download.documentfoundation.org/libreoffice/old/${PV}/
22
"
23
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
24
ADDONS_URI="http://dev-www.libreoffice.org/src/"
25
26
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
27
# PATCHSET="${P}-patchset-01.tar.xz"
28
29
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-r3"
30
inherit base multiprocessing autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic versionator ${SCM_ECLASS}
31
unset SCM_ECLASS
32
33
DESCRIPTION="LibreOffice, a full office productivity suite"
34
HOMEPAGE="http://www.libreoffice.org"
35
SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
36
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
37
38
# Split modules following git/tarballs
39
# Core MUST be first!
40
# Help is used for the image generator
41
MODULES="core help"
42
# Only release has the tarballs
43
if [[ ${PV} != *9999* ]]; then
44
	for i in ${DEV_URI}; do
45
		for mod in ${MODULES}; do
46
			if [[ ${mod} == core ]]; then
47
				SRC_URI+=" ${i}/${P}.tar.xz"
48
			else
49
				SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
50
			fi
51
		done
52
		unset mod
53
	done
54
	unset i
55
fi
56
unset DEV_URI
57
58
# Really required addons
59
# These are bundles that can't be removed for now due to huge patchsets.
60
# If you want them gone, patches are welcome.
61
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
62
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
63
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
64
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
65
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
66
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
67
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
68
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
69
SRC_URI+=" ${ADDONS_SRC}"
70
71
unset ADDONS_URI
72
unset EXT_URI
73
unset ADDONS_SRC
74
75
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
76
+gtk gtk3 jemalloc kde mysql odk postgres telepathy test vlc"
77
78
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
79
# Unpackaged separate extensions:
80
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
81
# hunart: only on ooo extensions -> fubared download path somewhere on sf
82
# numbertext, typo, validator, watch-window: ^^
83
# oooblogger: no homepage or anything
84
# Extensions that need extra work:
85
for lo_xt in ${LO_EXTS}; do
86
	IUSE+=" libreoffice_extensions_${lo_xt}"
87
done
88
unset lo_xt
89
90
LICENSE="|| ( LGPL-3 MPL-1.1 )"
91
SLOT="0"
92
[[ ${PV} == *9999* ]] || \
93
KEYWORDS="amd64 ~arm x86 ~amd64-linux ~x86-linux"
94
95
COMMON_DEPEND="
96
	${PYTHON_DEPS}
97
	app-arch/zip
98
	app-arch/unzip
99
	>=app-text/hunspell-1.3.2-r3
100
	app-text/mythes
101
	>=app-text/libabw-0.1.0
102
	>=app-text/libexttextcat-3.2
103
	>=app-text/libebook-0.1.1
104
	>=app-text/libetonyek-0.1.1
105
	app-text/liblangtag
106
	>=app-text/libmspub-0.1.0
107
	>=app-text/libmwaw-0.3.4
108
	>=app-text/libodfgen-0.1.0
109
	app-text/libwpd:0.10[tools]
110
	app-text/libwpg:0.3
111
	>=app-text/libwps-0.3.0
112
	>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
113
	>=dev-cpp/clucene-2.3.3.4-r2
114
	=dev-cpp/libcmis-0.5*
115
	dev-db/unixODBC
116
	>=dev-libs/boost-1.55:=
117
	dev-libs/expat
118
	>=dev-libs/hyphen-2.7.1
119
	>=dev-libs/icu-4.8.1.1:=
120
	>=dev-libs/liborcus-0.7.0
121
	>=dev-libs/librevenge-0.0.1
122
	>=dev-libs/nspr-4.8.8
123
	>=dev-libs/nss-3.12.9
124
	>=dev-lang/perl-5.0
125
	>=dev-libs/openssl-1.0.0d:0
126
	>=dev-libs/redland-1.0.16
127
	media-gfx/graphite2
128
	>=media-libs/fontconfig-2.8.0
129
	media-libs/freetype:2
130
	>=media-libs/glew-1.10
131
	>=media-libs/harfbuzz-0.9.18:=[icu(+)]
132
	media-libs/lcms:2
133
	>=media-libs/libpng-1.4:0=
134
	>=media-libs/libcdr-0.1.0
135
	>=media-libs/libfreehand-0.1.0
136
	media-libs/libpagemaker
137
	>=media-libs/libvisio-0.1.0
138
	>=net-misc/curl-7.21.4
139
	net-libs/neon
140
	net-nds/openldap
141
	sci-mathematics/lpsolve
142
	virtual/jpeg:0
143
	>=x11-libs/cairo-1.10.0[X]
144
	x11-libs/libXinerama
145
	x11-libs/libXrandr
146
	x11-libs/libXrender
147
	virtual/glu
148
	virtual/opengl
149
	bluetooth? ( net-wireless/bluez )
150
	coinmp? ( sci-libs/coinor-mp )
151
	collada? ( >=media-libs/opencollada-1.2.2_p20150207 )
152
	cups? ( net-print/cups )
153
	dbus? ( >=dev-libs/dbus-glib-0.92 )
154
	eds? ( gnome-extra/evolution-data-server )
155
	firebird? ( >=dev-db/firebird-2.5 )
156
	gltf? ( media-libs/libgltf )
157
	gnome? ( gnome-base/gconf:2 )
158
	gtk? (
159
		x11-libs/gdk-pixbuf[X]
160
		>=x11-libs/gtk+-2.24:2
161
	)
162
	gtk3? ( >=x11-libs/gtk+-3.2:3 )
163
	gstreamer? (
164
		media-libs/gstreamer:1.0
165
		media-libs/gst-plugins-base:1.0
166
	)
167
	jemalloc? ( dev-libs/jemalloc )
168
	libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
169
	libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
170
	libreoffice_extensions_wiki-publisher? (
171
		dev-java/commons-codec:0
172
		dev-java/commons-httpclient:3
173
		dev-java/commons-lang:2.1
174
		dev-java/commons-logging:0
175
		dev-java/tomcat-servlet-api:3.0
176
	)
177
	mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
178
	postgres? ( >=dev-db/postgresql-9.0[kerberos] )
179
	telepathy? (
180
		dev-libs/glib:2
181
		>=net-libs/telepathy-glib-0.18.0
182
		>=x11-libs/gtk+-2.24:2
183
	)
184
"
185
186
RDEPEND="${COMMON_DEPEND}
187
	!app-office/libreoffice-bin
188
	!app-office/libreoffice-bin-debug
189
	!<app-office/openoffice-bin-3.4.0-r1
190
	!app-office/openoffice
191
	media-fonts/libertine
192
	media-fonts/liberation-fonts
193
	media-fonts/urw-fonts
194
	java? ( >=virtual/jre-1.6 )
195
	kde? ( || ( $(add_kdeapps_dep kioclient) $(add_kdebase_dep kioclient) ) )
196
	vlc? ( media-video/vlc )
197
"
198
199
if [[ ${PV} != *9999* ]]; then
200
	PDEPEND="=app-office/libreoffice-l10n-$(get_version_component_range 1-2)*"
201
else
202
	# Translations are not reliable on live ebuilds
203
	# rather force people to use english only.
204
	PDEPEND="!app-office/libreoffice-l10n"
205
fi
206
207
# FIXME: cppunit should be moved to test conditional
208
#        after everything upstream is under gbuild
209
#        as dmake execute tests right away
210
DEPEND="${COMMON_DEPEND}
211
	>=dev-libs/libatomic_ops-7.2d
212
	>=dev-libs/libxml2-2.7.8
213
	dev-libs/libxslt
214
	dev-perl/Archive-Zip
215
	dev-util/cppunit
216
	>=dev-util/gperf-3
217
	dev-util/intltool
218
	>=dev-util/mdds-0.10.3:=
219
	media-libs/glm
220
	net-misc/npapi-sdk
221
	>=sys-apps/findutils-4.4.2
222
	sys-devel/bison
223
	sys-apps/coreutils
224
	sys-devel/flex
225
	sys-devel/gettext
226
	>=sys-devel/make-3.82
227
	sys-devel/ucpp
228
	sys-libs/zlib
229
	virtual/pkgconfig
230
	x11-libs/libXt
231
	x11-libs/libXtst
232
	x11-proto/randrproto
233
	x11-proto/xextproto
234
	x11-proto/xineramaproto
235
	x11-proto/xproto
236
	java? (
237
		>=virtual/jdk-1.6
238
		>=dev-java/ant-core-1.7
239
	)
240
	odk? ( >=app-doc/doxygen-1.8.4 )
241
	test? ( dev-util/cppunit )
242
"
243
244
PATCHES=(
245
	# not upstreamable stuff
246
	"${FILESDIR}/${PN}-4.4-system-pyuno.patch"
247
248
	# from 4.4 branch
249
	"${FILESDIR}/${PN}-4.4.0.3-gcc-4.9-Os-link-failure.patch" # bug 538348
250
251
	# from master branch
252
	"${FILESDIR}/${PN}-4.4.0.3-telepathy-build-fix.patch"
253
	"${FILESDIR}/${PN}-4.4.1.2-add-kde4-open-url-script.patch"
254
	"${FILESDIR}/${PN}-4.4.1.2-improve-KDE4FilePicker.patch"
255
	"${FILESDIR}/${PN}-4.3.5.2-remove-bashisms.patch" # bug 525454
256
	"${FILESDIR}/${PN}-4.4.1.2-musl-fix-execinfo.patch"
257
	"${FILESDIR}/${PN}-4.4.1.2-fix-includes.patch"
258
	"${FILESDIR}/${PN}-4.4.1.2-linux-musl.patch"
259
)
260
261
REQUIRED_USE="
262
	${PYTHON_REQUIRED_USE}
263
	bluetooth? ( dbus )
264
	collada? ( gltf )
265
	gnome? ( gtk )
266
	eds? ( gnome )
267
	telepathy? ( gtk )
268
	libreoffice_extensions_nlpsolver? ( java )
269
	libreoffice_extensions_scripting-beanshell? ( java )
270
	libreoffice_extensions_scripting-javascript? ( java )
271
	libreoffice_extensions_wiki-publisher? ( java )
272
"
273
274
CHECKREQS_MEMORY="512M"
275
CHECKREQS_DISK_BUILD="6G"
276
277
pkg_pretend() {
278
	local pgslot
279
280
	if [[ ${MERGE_TYPE} != binary ]]; then
281
		check-reqs_pkg_pretend
282
283
		if [[ $(gcc-major-version) -lt 4 ]] || \
284
				 ( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
285
				; then
286
			eerror "Compilation with gcc older than 4.6 is not supported"
287
			die "Too old gcc found."
288
		fi
289
	fi
290
291
	# Ensure pg version but we have to be sure the pg is installed (first
292
	# install on clean system)
293
	if use postgres && has_version dev-db/postgresql; then
294
		 pgslot=$(postgresql-config show)
295
		 if [[ ${pgslot//.} < 90 ]] ; then
296
			eerror "PostgreSQL slot must be set to 9.0 or higher."
297
			eerror "    postgresql-config set 9.0"
298
			die "PostgreSQL slot is not set to 9.0 or higher."
299
		 fi
300
	fi
301
}
302
303
pkg_setup() {
304
	java-pkg-opt-2_pkg_setup
305
	kde4-base_pkg_setup
306
	python-single-r1_pkg_setup
307
308
	[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
309
}
310
311
src_unpack() {
312
	local mod mod2 dest tmplfile tmplname mypv
313
314
	[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
315
	use branding && unpack "${BRANDING}"
316
317
	if [[ ${PV} != *9999* ]]; then
318
		unpack "${P}.tar.xz"
319
		for mod in ${MODULES}; do
320
			[[ ${mod} == core ]] && continue
321
			unpack "${PN}-${mod}-${PV}.tar.xz"
322
		done
323
	else
324
		for mod in ${MODULES}; do
325
			mypv=${PV/.9999}
326
			[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
327
			EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
328
			[[ ${mod} != core ]] && EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-${mod}-${PV}"
329
			EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
330
			git-r3_src_unpack
331
			if [[ ${mod} != core ]]; then
332
				mod2=${mod}
333
				# mapping does not match on help
334
				[[ ${mod} == help ]] && mod2="helpcontent2"
335
				mkdir -p "${S}/${mod2}/" || die
336
				mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
337
				rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
338
			fi
339
		done
340
		unset EGIT_CHECKOUT_DIR EGIT_REPO_URI EGIT_BRANCH
341
	fi
342
}
343
344
src_prepare() {
345
	# optimization flags
346
	export GMAKE_OPTIONS="${MAKEOPTS}"
347
	# System python 2.7 enablement:
348
	export PYTHON_CFLAGS=$(python_get_CFLAGS)
349
	export PYTHON_LIBS=$(python_get_LIBS)
350
351
	if use collada; then
352
		export OPENCOLLADA_CFLAGS="-I/usr/include/opencollada/COLLADABaseUtils -I/usr/include/opencollada/COLLADAFramework -I/usr/include/opencollada/COLLADASaxFrameworkLoader -I/usr/include/opencollada/GeneratedSaxParser"
353
		export OPENCOLLADA_LIBS="-L /usr/$(get_libdir)/opencollada -lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lGeneratedSaxParser"
354
	fi
355
356
	# patchset
357
	if [[ -n ${PATCHSET} ]]; then
358
		EPATCH_FORCE="yes" \
359
		EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
360
		EPATCH_SUFFIX="patch" \
361
		epatch
362
	fi
363
364
	base_src_prepare
365
366
	AT_M4DIR="m4" eautoreconf
367
	# hack in the autogen.sh
368
	touch autogen.lastrun
369
370
	# system pyuno mess
371
	sed \
372
		-e "s:%eprefix%:${EPREFIX}:g" \
373
		-e "s:%libdir%:$(get_libdir):g" \
374
		-i pyuno/source/module/uno.py \
375
		-i pyuno/source/officehelper.py || die
376
	# sed in the tests
377
	sed -i \
378
		-e 's#all : build unitcheck#all : build#g' \
379
		solenv/gbuild/Module.mk || die
380
	sed -i \
381
		-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
382
		-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
383
		Makefile.in || die
384
385
	if use branding; then
386
		# hack...
387
		mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
388
	fi
389
}
390
391
src_configure() {
392
	local java_opts
393
	local internal_libs
394
	local lo_ext
395
	local ext_opts
396
397
	# sane: just sane.h header that is used for scan in writer, not
398
	#       linked or anything else, worthless to depend on
399
	# vigra: just uses templates from there
400
	#        it is serious pain in the ass for packaging
401
	#        should be replaced by boost::gil if someone interested
402
	internal_libs+="
403
		--without-system-sane
404
		--without-system-vigra
405
	"
406
407
	# libreoffice extensions handling
408
	for lo_xt in ${LO_EXTS}; do
409
		if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
410
			ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
411
		else
412
			ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
413
		fi
414
	done
415
416
	if use java; then
417
		# hsqldb: system one is too new
418
		java_opts="
419
			--without-junit
420
			--without-system-hsqldb
421
			--with-ant-home="${ANT_HOME}"
422
			--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
423
			--with-jvm-path="${EPREFIX}/usr/lib/"
424
		"
425
426
		use libreoffice_extensions_scripting-beanshell && \
427
			java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
428
429
		use libreoffice_extensions_scripting-javascript && \
430
			java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
431
432
		if use libreoffice_extensions_wiki-publisher; then
433
			java_opts+="
434
				--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
435
				--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
436
				--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
437
				--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
438
				--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
439
			"
440
		fi
441
	fi
442
443
	# system headers/libs/...: enforce using system packages
444
	# --enable-cairo: ensure that cairo is always required
445
	# --enable-graphite: disabling causes build breakages
446
	# --enable-*-link: link to the library rather than just dlopen on runtime
447
	# --enable-release-build: build the libreoffice as release
448
	# --disable-fetch-external: prevent dowloading during compile phase
449
	# --disable-gnome-vfs: old gnome virtual fs support
450
	# --disable-kdeab: kde3 adressbook
451
	# --disable-kde: kde3 support
452
	# --disable-systray: quickstarter does not actually work at all so do not
453
	#   promote it
454
	# --enable-extension-integration: enable any extension integration support
455
	# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
456
	# --disable-report-builder: too much java packages pulled in without pkgs
457
	econf \
458
		--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
459
		--with-system-headers \
460
		--with-system-libs \
461
		--with-system-jars \
462
		--with-system-dicts \
463
		--enable-cairo-canvas \
464
		--enable-graphite \
465
		--enable-largefile \
466
		--enable-mergelibs \
467
		--enable-neon \
468
		--enable-python=system \
469
		--enable-randr \
470
		--enable-randr-link \
471
		--enable-release-build \
472
		--disable-hardlink-deliver \
473
		--disable-ccache \
474
		--disable-crashdump \
475
		--disable-dependency-tracking \
476
		--disable-epm \
477
		--disable-fetch-external \
478
		--disable-gnome-vfs \
479
		--disable-gstreamer-0-10 \
480
		--disable-report-builder \
481
		--disable-kdeab \
482
		--disable-kde \
483
		--disable-online-update \
484
		--disable-systray \
485
		--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
486
		--with-build-version="Gentoo official package" \
487
		--enable-extension-integration \
488
		--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
489
		--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
490
		--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
491
		--with-external-tar="${DISTDIR}" \
492
		--with-lang="" \
493
		--with-parallelism=$(makeopts_jobs) \
494
		--with-system-ucpp \
495
		--with-vendor="Gentoo Foundation" \
496
		--with-x \
497
		--without-fonts \
498
		--without-myspell-dicts \
499
		--without-help \
500
		--with-helppack-integration \
501
		--without-sun-templates \
502
		$(use_enable bluetooth sdremote-bluetooth) \
503
		$(use_enable coinmp) \
504
		$(use_enable collada) \
505
		$(use_enable cups) \
506
		$(use_enable debug) \
507
		$(use_enable dbus) \
508
		$(use_enable eds evolution2) \
509
		$(use_enable firebird firebird-sdbc) \
510
		$(use_enable gltf) \
511
		$(use_enable gnome gconf) \
512
		$(use_enable gnome gio) \
513
		$(use_enable gnome lockdown) \
514
		$(use_enable gstreamer gstreamer-1-0) \
515
		$(use_enable gtk) \
516
		$(use_enable gtk3) \
517
		$(use_enable kde kde4) \
518
		$(use_enable mysql ext-mariadb-connector) \
519
		$(use_enable odk) \
520
		$(use_enable postgres postgresql-sdbc) \
521
		$(use_enable telepathy) \
522
		$(use_enable vlc) \
523
		$(use_with coinmp system-coinmp) \
524
		$(use_with collada system-opencollada) \
525
		$(use_with gltf system-libgltf) \
526
		$(use_with java) \
527
		$(use_with mysql system-mysql-cppconn) \
528
		$(use_with odk doxygen) \
529
		${internal_libs} \
530
		${java_opts} \
531
		${ext_opts}
532
}
533
534
src_compile() {
535
	# more and more LO stuff tries to use OpenGL, including tests during build
536
	# bug 501508, bug 540624, bug 545974 and probably more
537
	addpredict /dev/dri
538
	addpredict /dev/ati
539
	addpredict /dev/nvidiactl
540
541
	# hack for offlinehelp, this needs fixing upstream at some point
542
	# it is broken because we send --without-help
543
	# https://bugs.freedesktop.org/show_bug.cgi?id=46506
544
	(
545
		grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
546
		source "${T}/config_host.mk" 2&> /dev/null
547
548
		local path="${WORKDIR}/helpcontent2/source/auxiliary/"
549
		mkdir -p "${path}" || die
550
551
		echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
552
		perl "${S}/helpcontent2/helpers/create_ilst.pl" \
553
			-dir=icon-themes/galaxy/res/helpimg \
554
			> "${path}/helpimg.ilst"
555
		[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
556
	)
557
558
	local target
559
	use test && target="build" || target="build-nocheck"
560
561
	# this is not a proper make script
562
	make ${target} || die
563
}
564
565
src_test() {
566
	make unitcheck || die
567
	make slowcheck || die
568
}
569
570
src_install() {
571
	# This is not Makefile so no buildserver
572
	make DESTDIR="${D}" distro-pack-install -o build -o check || die
573
574
	# Fix bash completion placement
575
	newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
576
	bashcomp_alias \
577
		libreoffice \
578
		unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
579
	rm -rf "${ED}"/etc/ || die
580
581
	if use branding; then
582
		insinto /usr/$(get_libdir)/${PN}/program
583
		newins "${WORKDIR}/branding-sofficerc" sofficerc
584
		dodir /etc/env.d
585
		echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
586
	fi
587
588
	# Hack for offlinehelp, this needs fixing upstream at some point.
589
	# It is broken because we send --without-help
590
	# https://bugs.freedesktop.org/show_bug.cgi?id=46506
591
	insinto /usr/$(get_libdir)/libreoffice/help
592
	doins xmlhelp/util/*.xsl
593
594
	# Remove desktop files for support to old installs that can't parse mime
595
	rm -rf "${ED}"/usr/share/mimelnk/
596
597
	# FIXME: Hack add missing file
598
	insinto /usr/$(get_libdir)/${PN}/program
599
	doins "${S}"/instdir/program/libsaxlo.so
600
601
	pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
602
	pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
603
}
604
605
pkg_preinst() {
606
	# Cache updates - all handled by kde eclass for all environments
607
	kde4-base_pkg_preinst
608
}
609
610
pkg_postinst() {
611
	kde4-base_pkg_postinst
612
613
	use java || \
614
		ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
615
}
616
617
pkg_postrm() {
618
	kde4-base_pkg_postrm
619
}
(-)a/app-office/libreoffice/libreoffice-4.4.4.3-r99.ebuild (+618 lines)
Line 0 Link Here
1
# Copyright 1999-2015 Gentoo Foundation
2
# Distributed under the terms of the GNU General Public License v2
3
# $Id$
4
5
EAPI=5
6
7
KDE_REQUIRED="optional"
8
QT_MINIMAL="4.7.4"
9
KDE_SCM="git"
10
CMAKE_REQUIRED="never"
11
12
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
13
PYTHON_REQ_USE="threads,xml"
14
15
# experimental ; release ; old
16
# Usually the tarballs are moved a lot so this should make
17
# everyone happy.
18
DEV_URI="
19
	http://dev-builds.libreoffice.org/pre-releases/src
20
	http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
21
	http://download.documentfoundation.org/libreoffice/old/${PV}/
22
"
23
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
24
ADDONS_URI="http://dev-www.libreoffice.org/src/"
25
26
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
27
# PATCHSET="${P}-patchset-01.tar.xz"
28
29
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-r3"
30
inherit base multiprocessing autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic versionator ${SCM_ECLASS}
31
unset SCM_ECLASS
32
33
DESCRIPTION="LibreOffice, a full office productivity suite"
34
HOMEPAGE="http://www.libreoffice.org"
35
SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
36
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
37
38
# Split modules following git/tarballs
39
# Core MUST be first!
40
# Help is used for the image generator
41
MODULES="core help"
42
# Only release has the tarballs
43
if [[ ${PV} != *9999* ]]; then
44
	for i in ${DEV_URI}; do
45
		for mod in ${MODULES}; do
46
			if [[ ${mod} == core ]]; then
47
				SRC_URI+=" ${i}/${P}.tar.xz"
48
			else
49
				SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
50
			fi
51
		done
52
		unset mod
53
	done
54
	unset i
55
fi
56
unset DEV_URI
57
58
# Really required addons
59
# These are bundles that can't be removed for now due to huge patchsets.
60
# If you want them gone, patches are welcome.
61
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
62
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
63
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
64
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
65
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
66
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
67
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
68
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
69
SRC_URI+=" ${ADDONS_SRC}"
70
71
unset ADDONS_URI
72
unset EXT_URI
73
unset ADDONS_SRC
74
75
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
76
+gtk gtk3 jemalloc kde mysql odk postgres telepathy test vlc"
77
78
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
79
# Unpackaged separate extensions:
80
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
81
# hunart: only on ooo extensions -> fubared download path somewhere on sf
82
# numbertext, typo, validator, watch-window: ^^
83
# oooblogger: no homepage or anything
84
# Extensions that need extra work:
85
for lo_xt in ${LO_EXTS}; do
86
	IUSE+=" libreoffice_extensions_${lo_xt}"
87
done
88
unset lo_xt
89
90
LICENSE="|| ( LGPL-3 MPL-1.1 )"
91
SLOT="0"
92
[[ ${PV} == *9999* ]] || \
93
KEYWORDS="amd64 ~arm x86"
94
95
COMMON_DEPEND="
96
	${PYTHON_DEPS}
97
	app-arch/zip
98
	app-arch/unzip
99
	>=app-text/hunspell-1.3.2-r3
100
	app-text/mythes
101
	>=app-text/libabw-0.1.0
102
	>=app-text/libexttextcat-3.2
103
	>=app-text/libebook-0.1.1
104
	>=app-text/libetonyek-0.1.1
105
	app-text/liblangtag
106
	>=app-text/libmspub-0.1.0
107
	>=app-text/libmwaw-0.3.4
108
	>=app-text/libodfgen-0.1.0
109
	app-text/libwpd:0.10[tools]
110
	app-text/libwpg:0.3
111
	=app-text/libwps-0.3*
112
	>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
113
	>=dev-cpp/clucene-2.3.3.4-r2
114
	=dev-cpp/libcmis-0.5*
115
	dev-db/unixODBC
116
	>=dev-libs/boost-1.55:=
117
	dev-libs/expat
118
	>=dev-libs/hyphen-2.7.1
119
	>=dev-libs/icu-4.8.1.1:=
120
	=dev-libs/liborcus-0.7*
121
	>=dev-libs/librevenge-0.0.1
122
	>=dev-libs/nspr-4.8.8
123
	>=dev-libs/nss-3.12.9
124
	>=dev-lang/perl-5.0
125
	>=dev-libs/openssl-1.0.0d:0
126
	>=dev-libs/redland-1.0.16
127
	media-gfx/graphite2
128
	>=media-libs/fontconfig-2.8.0
129
	media-libs/freetype:2
130
	>=media-libs/glew-1.10
131
	>=media-libs/harfbuzz-0.9.18:=[icu(+)]
132
	media-libs/lcms:2
133
	>=media-libs/libpng-1.4:0=
134
	>=media-libs/libcdr-0.1.0
135
	>=media-libs/libfreehand-0.1.0
136
	media-libs/libpagemaker
137
	>=media-libs/libvisio-0.1.0
138
	>=net-misc/curl-7.21.4
139
	net-libs/neon
140
	net-nds/openldap
141
	sci-mathematics/lpsolve
142
	virtual/jpeg:0
143
	>=x11-libs/cairo-1.10.0[X]
144
	x11-libs/libXinerama
145
	x11-libs/libXrandr
146
	x11-libs/libXrender
147
	virtual/glu
148
	virtual/opengl
149
	bluetooth? ( net-wireless/bluez )
150
	coinmp? ( sci-libs/coinor-mp )
151
	collada? ( >=media-libs/opencollada-1.2.2_p20150207 )
152
	cups? ( net-print/cups )
153
	dbus? ( >=dev-libs/dbus-glib-0.92 )
154
	eds? ( gnome-extra/evolution-data-server )
155
	firebird? ( >=dev-db/firebird-2.5 )
156
	gltf? ( media-libs/libgltf )
157
	gnome? ( gnome-base/gconf:2 )
158
	gtk? (
159
		x11-libs/gdk-pixbuf[X]
160
		>=x11-libs/gtk+-2.24:2
161
	)
162
	gtk3? ( >=x11-libs/gtk+-3.2:3 )
163
	gstreamer? (
164
		media-libs/gstreamer:1.0
165
		media-libs/gst-plugins-base:1.0
166
	)
167
	jemalloc? ( dev-libs/jemalloc )
168
	libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
169
	libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
170
	libreoffice_extensions_wiki-publisher? (
171
		dev-java/commons-codec:0
172
		dev-java/commons-httpclient:3
173
		dev-java/commons-lang:2.1
174
		dev-java/commons-logging:0
175
		dev-java/tomcat-servlet-api:3.0
176
	)
177
	mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
178
	postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
179
	telepathy? (
180
		dev-libs/glib:2
181
		>=net-libs/telepathy-glib-0.18.0
182
		>=x11-libs/gtk+-2.24:2
183
	)
184
"
185
186
RDEPEND="${COMMON_DEPEND}
187
	!app-office/libreoffice-bin
188
	!app-office/libreoffice-bin-debug
189
	!<app-office/openoffice-bin-3.4.0-r1
190
	!app-office/openoffice
191
	media-fonts/libertine
192
	media-fonts/liberation-fonts
193
	media-fonts/urw-fonts
194
	java? ( >=virtual/jre-1.6 )
195
	kde? ( $(add_kdeapps_dep kioclient) )
196
	vlc? ( media-video/vlc )
197
"
198
199
if [[ ${PV} != *9999* ]]; then
200
	PDEPEND="=app-office/libreoffice-l10n-$(get_version_component_range 1-2)*"
201
else
202
	# Translations are not reliable on live ebuilds
203
	# rather force people to use english only.
204
	PDEPEND="!app-office/libreoffice-l10n"
205
fi
206
207
# FIXME: cppunit should be moved to test conditional
208
#        after everything upstream is under gbuild
209
#        as dmake execute tests right away
210
DEPEND="${COMMON_DEPEND}
211
	>=dev-libs/libatomic_ops-7.2d
212
	>=dev-libs/libxml2-2.7.8
213
	dev-libs/libxslt
214
	dev-perl/Archive-Zip
215
	dev-util/cppunit
216
	>=dev-util/gperf-3
217
	dev-util/intltool
218
	>=dev-util/mdds-0.11.2:=
219
	media-libs/glm
220
	net-misc/npapi-sdk
221
	>=sys-apps/findutils-4.4.2
222
	sys-devel/bison
223
	sys-apps/coreutils
224
	sys-devel/flex
225
	sys-devel/gettext
226
	>=sys-devel/make-3.82
227
	sys-devel/ucpp
228
	sys-libs/zlib
229
	virtual/pkgconfig
230
	x11-libs/libXt
231
	x11-libs/libXtst
232
	x11-proto/randrproto
233
	x11-proto/xextproto
234
	x11-proto/xineramaproto
235
	x11-proto/xproto
236
	java? (
237
		>=virtual/jdk-1.6
238
		>=dev-java/ant-core-1.7
239
	)
240
	odk? ( >=app-doc/doxygen-1.8.4 )
241
	test? ( dev-util/cppunit )
242
"
243
244
PATCHES=(
245
	# not upstreamable stuff
246
	"${FILESDIR}/${PN}-4.4-system-pyuno.patch"
247
248
	# from master branch
249
	"${FILESDIR}/${PN}-4.3.5.2-remove-bashisms.patch" # bug 525454
250
	"${FILESDIR}/${PN}-4.4.0.3-telepathy-build-fix.patch"
251
	"${FILESDIR}/${PN}-4.4.1.2-add-kde4-open-url-script.patch"
252
	"${FILESDIR}/${PN}-4.4.4.3-improve-KDE4FilePicker.patch"
253
	"${FILESDIR}/${PN}-4.4.4.3-fix-KDE4-FileDialog.patch"
254
	"${FILESDIR}/${PN}-4.4.4.3-cleanup-IsNativeControlSupported.patch"
255
	"${FILESDIR}/${PN}-4.4.1.2-fix-includes.patch"
256
	"${FILESDIR}/${PN}-4.4.1.2-linux-musl.patch"
257
	"${FILESDIR}/${PN}-4.4.1.2-musl-fix-execinfo.patch"
258
)
259
260
REQUIRED_USE="
261
	${PYTHON_REQUIRED_USE}
262
	bluetooth? ( dbus )
263
	collada? ( gltf )
264
	gnome? ( gtk )
265
	eds? ( gnome )
266
	telepathy? ( gtk )
267
	libreoffice_extensions_nlpsolver? ( java )
268
	libreoffice_extensions_scripting-beanshell? ( java )
269
	libreoffice_extensions_scripting-javascript? ( java )
270
	libreoffice_extensions_wiki-publisher? ( java )
271
"
272
273
CHECKREQS_MEMORY="512M"
274
CHECKREQS_DISK_BUILD="6G"
275
276
pkg_pretend() {
277
	local pgslot
278
279
	if [[ ${MERGE_TYPE} != binary ]]; then
280
		check-reqs_pkg_pretend
281
282
		if [[ $(gcc-major-version) -lt 4 ]] || \
283
				 ( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
284
				; then
285
			eerror "Compilation with gcc older than 4.6 is not supported"
286
			die "Too old gcc found."
287
		fi
288
	fi
289
290
	# Ensure pg version but we have to be sure the pg is installed (first
291
	# install on clean system)
292
	if use postgres && has_version dev-db/postgresql; then
293
		 pgslot=$(postgresql-config show)
294
		 if [[ ${pgslot//.} < 90 ]] ; then
295
			eerror "PostgreSQL slot must be set to 9.0 or higher."
296
			eerror "    postgresql-config set 9.0"
297
			die "PostgreSQL slot is not set to 9.0 or higher."
298
		 fi
299
	fi
300
}
301
302
pkg_setup() {
303
	java-pkg-opt-2_pkg_setup
304
	kde4-base_pkg_setup
305
	python-single-r1_pkg_setup
306
307
	[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
308
}
309
310
src_unpack() {
311
	local mod mod2 dest tmplfile tmplname mypv
312
313
	[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
314
	use branding && unpack "${BRANDING}"
315
316
	if [[ ${PV} != *9999* ]]; then
317
		unpack "${P}.tar.xz"
318
		for mod in ${MODULES}; do
319
			[[ ${mod} == core ]] && continue
320
			unpack "${PN}-${mod}-${PV}.tar.xz"
321
		done
322
	else
323
		for mod in ${MODULES}; do
324
			mypv=${PV/.9999}
325
			[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
326
			EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
327
			[[ ${mod} != core ]] && EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-${mod}-${PV}"
328
			EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
329
			git-r3_src_unpack
330
			if [[ ${mod} != core ]]; then
331
				mod2=${mod}
332
				# mapping does not match on help
333
				[[ ${mod} == help ]] && mod2="helpcontent2"
334
				mkdir -p "${S}/${mod2}/" || die
335
				mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
336
				rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
337
			fi
338
		done
339
		unset EGIT_CHECKOUT_DIR EGIT_REPO_URI EGIT_BRANCH
340
	fi
341
}
342
343
src_prepare() {
344
	# optimization flags
345
	export GMAKE_OPTIONS="${MAKEOPTS}"
346
	# System python 2.7 enablement:
347
	export PYTHON_CFLAGS=$(python_get_CFLAGS)
348
	export PYTHON_LIBS=$(python_get_LIBS)
349
350
	if use collada; then
351
		export OPENCOLLADA_CFLAGS="-I/usr/include/opencollada/COLLADABaseUtils -I/usr/include/opencollada/COLLADAFramework -I/usr/include/opencollada/COLLADASaxFrameworkLoader -I/usr/include/opencollada/GeneratedSaxParser"
352
		export OPENCOLLADA_LIBS="-L /usr/$(get_libdir)/opencollada -lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lGeneratedSaxParser"
353
	fi
354
355
	# patchset
356
	if [[ -n ${PATCHSET} ]]; then
357
		EPATCH_FORCE="yes" \
358
		EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
359
		EPATCH_SUFFIX="patch" \
360
		epatch
361
	fi
362
363
	base_src_prepare
364
365
	AT_M4DIR="m4" eautoreconf
366
	# hack in the autogen.sh
367
	touch autogen.lastrun
368
369
	# system pyuno mess
370
	sed \
371
		-e "s:%eprefix%:${EPREFIX}:g" \
372
		-e "s:%libdir%:$(get_libdir):g" \
373
		-i pyuno/source/module/uno.py \
374
		-i pyuno/source/officehelper.py || die
375
	# sed in the tests
376
	sed -i \
377
		-e 's#all : build unitcheck#all : build#g' \
378
		solenv/gbuild/Module.mk || die
379
	sed -i \
380
		-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
381
		-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
382
		Makefile.in || die
383
384
	if use branding; then
385
		# hack...
386
		mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
387
	fi
388
}
389
390
src_configure() {
391
	local java_opts
392
	local internal_libs
393
	local lo_ext
394
	local ext_opts
395
396
	# sane: just sane.h header that is used for scan in writer, not
397
	#       linked or anything else, worthless to depend on
398
	# vigra: just uses templates from there
399
	#        it is serious pain in the ass for packaging
400
	#        should be replaced by boost::gil if someone interested
401
	internal_libs+="
402
		--without-system-sane
403
		--without-system-vigra
404
	"
405
406
	# libreoffice extensions handling
407
	for lo_xt in ${LO_EXTS}; do
408
		if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
409
			ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
410
		else
411
			ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
412
		fi
413
	done
414
415
	if use java; then
416
		# hsqldb: system one is too new
417
		java_opts="
418
			--without-junit
419
			--without-system-hsqldb
420
			--with-ant-home="${ANT_HOME}"
421
			--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
422
			--with-jvm-path="${EPREFIX}/usr/lib/"
423
		"
424
425
		use libreoffice_extensions_scripting-beanshell && \
426
			java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
427
428
		use libreoffice_extensions_scripting-javascript && \
429
			java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
430
431
		if use libreoffice_extensions_wiki-publisher; then
432
			java_opts+="
433
				--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
434
				--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
435
				--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
436
				--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
437
				--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
438
			"
439
		fi
440
	fi
441
442
	# system headers/libs/...: enforce using system packages
443
	# --enable-cairo: ensure that cairo is always required
444
	# --enable-graphite: disabling causes build breakages
445
	# --enable-*-link: link to the library rather than just dlopen on runtime
446
	# --enable-release-build: build the libreoffice as release
447
	# --disable-fetch-external: prevent dowloading during compile phase
448
	# --disable-gnome-vfs: old gnome virtual fs support
449
	# --disable-kdeab: kde3 adressbook
450
	# --disable-kde: kde3 support
451
	# --disable-systray: quickstarter does not actually work at all so do not
452
	#   promote it
453
	# --enable-extension-integration: enable any extension integration support
454
	# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
455
	# --disable-report-builder: too much java packages pulled in without pkgs
456
	econf \
457
		--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
458
		--with-system-headers \
459
		--with-system-libs \
460
		--with-system-jars \
461
		--with-system-dicts \
462
		--enable-cairo-canvas \
463
		--enable-graphite \
464
		--enable-largefile \
465
		--enable-mergelibs \
466
		--enable-neon \
467
		--enable-python=system \
468
		--enable-randr \
469
		--enable-randr-link \
470
		--enable-release-build \
471
		--disable-hardlink-deliver \
472
		--disable-ccache \
473
		--disable-crashdump \
474
		--disable-dependency-tracking \
475
		--disable-epm \
476
		--disable-fetch-external \
477
		--disable-gnome-vfs \
478
		--disable-gstreamer-0-10 \
479
		--disable-report-builder \
480
		--disable-kdeab \
481
		--disable-kde \
482
		--disable-online-update \
483
		--disable-systray \
484
		--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
485
		--with-build-version="Gentoo official package" \
486
		--enable-extension-integration \
487
		--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
488
		--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
489
		--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
490
		--with-external-tar="${DISTDIR}" \
491
		--with-lang="" \
492
		--with-parallelism=$(makeopts_jobs) \
493
		--with-system-ucpp \
494
		--with-vendor="Gentoo Foundation" \
495
		--with-x \
496
		--without-fonts \
497
		--without-myspell-dicts \
498
		--without-help \
499
		--with-helppack-integration \
500
		--without-sun-templates \
501
		$(use_enable bluetooth sdremote-bluetooth) \
502
		$(use_enable coinmp) \
503
		$(use_enable collada) \
504
		$(use_enable cups) \
505
		$(use_enable debug) \
506
		$(use_enable dbus) \
507
		$(use_enable eds evolution2) \
508
		$(use_enable firebird firebird-sdbc) \
509
		$(use_enable gltf) \
510
		$(use_enable gnome gconf) \
511
		$(use_enable gnome gio) \
512
		$(use_enable gnome lockdown) \
513
		$(use_enable gstreamer gstreamer-1-0) \
514
		$(use_enable gtk) \
515
		$(use_enable gtk3) \
516
		$(use_enable kde kde4) \
517
		$(use_enable mysql ext-mariadb-connector) \
518
		$(use_enable odk) \
519
		$(use_enable postgres postgresql-sdbc) \
520
		$(use_enable telepathy) \
521
		$(use_enable vlc) \
522
		$(use_with coinmp system-coinmp) \
523
		$(use_with collada system-opencollada) \
524
		$(use_with gltf system-libgltf) \
525
		$(use_with java) \
526
		$(use_with mysql system-mysql-cppconn) \
527
		$(use_with odk doxygen) \
528
		${internal_libs} \
529
		${java_opts} \
530
		${ext_opts}
531
}
532
533
src_compile() {
534
	# more and more LO stuff tries to use OpenGL, including tests during build
535
	# bug 501508, bug 540624, bug 545974 and probably more
536
	addpredict /dev/dri
537
	addpredict /dev/ati
538
	addpredict /dev/nvidiactl
539
540
	# hack for offlinehelp, this needs fixing upstream at some point
541
	# it is broken because we send --without-help
542
	# https://bugs.freedesktop.org/show_bug.cgi?id=46506
543
	(
544
		grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
545
		source "${T}/config_host.mk" 2&> /dev/null
546
547
		local path="${WORKDIR}/helpcontent2/source/auxiliary/"
548
		mkdir -p "${path}" || die
549
550
		echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
551
		perl "${S}/helpcontent2/helpers/create_ilst.pl" \
552
			-dir=icon-themes/galaxy/res/helpimg \
553
			> "${path}/helpimg.ilst"
554
		[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
555
	)
556
557
	local target
558
	use test && target="build" || target="build-nocheck"
559
560
	# this is not a proper make script
561
	make ${target} || die
562
}
563
564
src_test() {
565
	make unitcheck || die
566
	make slowcheck || die
567
}
568
569
src_install() {
570
	# This is not Makefile so no buildserver
571
	make DESTDIR="${D}" distro-pack-install -o build -o check || die
572
573
	# Fix bash completion placement
574
	newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
575
	bashcomp_alias \
576
		libreoffice \
577
		unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
578
	rm -rf "${ED}"/etc/ || die
579
580
	if use branding; then
581
		insinto /usr/$(get_libdir)/${PN}/program
582
		newins "${WORKDIR}/branding-sofficerc" sofficerc
583
		dodir /etc/env.d
584
		echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
585
	fi
586
587
	# Hack for offlinehelp, this needs fixing upstream at some point.
588
	# It is broken because we send --without-help
589
	# https://bugs.freedesktop.org/show_bug.cgi?id=46506
590
	insinto /usr/$(get_libdir)/libreoffice/help
591
	doins xmlhelp/util/*.xsl
592
593
	# Remove desktop files for support to old installs that can't parse mime
594
	rm -rf "${ED}"/usr/share/mimelnk/
595
596
	# FIXME: Hack add missing file
597
	insinto /usr/$(get_libdir)/${PN}/program
598
	doins "${S}"/instdir/program/libsaxlo.so
599
600
	pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
601
	pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
602
}
603
604
pkg_preinst() {
605
	# Cache updates - all handled by kde eclass for all environments
606
	kde4-base_pkg_preinst
607
}
608
609
pkg_postinst() {
610
	kde4-base_pkg_postinst
611
612
	use java || \
613
		ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
614
}
615
616
pkg_postrm() {
617
	kde4-base_pkg_postrm
618
}
(-)a/app-office/libreoffice/libreoffice-4.4.5.2-r99.ebuild (+624 lines)
Line 0 Link Here
1
# Copyright 1999-2015 Gentoo Foundation
2
# Distributed under the terms of the GNU General Public License v2
3
# $Id$
4
5
EAPI=5
6
7
KDE_REQUIRED="optional"
8
QT_MINIMAL="4.7.4"
9
KDE_SCM="git"
10
CMAKE_REQUIRED="never"
11
12
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
13
PYTHON_REQ_USE="threads,xml"
14
15
# experimental ; release ; old
16
# Usually the tarballs are moved a lot so this should make
17
# everyone happy.
18
DEV_URI="
19
	http://dev-builds.libreoffice.org/pre-releases/src
20
	http://download.documentfoundation.org/libreoffice/src/${PV:0:5}/
21
	http://download.documentfoundation.org/libreoffice/old/${PV}/
22
"
23
EXT_URI="http://ooo.itc.hu/oxygenoffice/download/libreoffice"
24
ADDONS_URI="http://dev-www.libreoffice.org/src/"
25
26
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
27
# PATCHSET="${P}-patchset-01.tar.xz"
28
29
[[ ${PV} == *9999* ]] && SCM_ECLASS="git-r3"
30
inherit base multiprocessing autotools bash-completion-r1 check-reqs eutils java-pkg-opt-2 kde4-base pax-utils python-single-r1 multilib toolchain-funcs flag-o-matic versionator ${SCM_ECLASS}
31
unset SCM_ECLASS
32
33
DESCRIPTION="LibreOffice, a full office productivity suite"
34
HOMEPAGE="http://www.libreoffice.org"
35
SRC_URI="branding? ( http://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
36
[[ -n ${PATCHSET} ]] && SRC_URI+=" http://dev.gentooexperimental.org/~scarabeus/${PATCHSET}"
37
38
# Split modules following git/tarballs
39
# Core MUST be first!
40
# Help is used for the image generator
41
MODULES="core help"
42
# Only release has the tarballs
43
if [[ ${PV} != *9999* ]]; then
44
	for i in ${DEV_URI}; do
45
		for mod in ${MODULES}; do
46
			if [[ ${mod} == core ]]; then
47
				SRC_URI+=" ${i}/${P}.tar.xz"
48
			else
49
				SRC_URI+=" ${i}/${PN}-${mod}-${PV}.tar.xz"
50
			fi
51
		done
52
		unset mod
53
	done
54
	unset i
55
fi
56
unset DEV_URI
57
58
# Really required addons
59
# These are bundles that can't be removed for now due to huge patchsets.
60
# If you want them gone, patches are welcome.
61
ADDONS_SRC+=" ${ADDONS_URI}/d62650a6f908e85643e557a236ea989c-vigra1.6.0.tar.gz"
62
ADDONS_SRC+=" ${ADDONS_URI}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz" # modifies source code
63
ADDONS_SRC+=" collada? ( ${ADDONS_URI}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 )"
64
ADDONS_SRC+=" java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
65
ADDONS_SRC+=" libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" # no release for 8 years, should we package it?
66
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" # Does not build with 1.6 rhino at all
67
ADDONS_SRC+=" libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" # requirement of rhino
68
ADDONS_SRC+=" odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" # not packageable
69
SRC_URI+=" ${ADDONS_SRC}"
70
71
unset ADDONS_URI
72
unset EXT_URI
73
unset ADDONS_SRC
74
75
IUSE="bluetooth +branding coinmp collada +cups dbus debug eds firebird gltf gnome gstreamer
76
+gtk gtk3 jemalloc kde mysql odk postgres telepathy test vlc"
77
78
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
79
# Unpackaged separate extensions:
80
# diagram: lo has 0.9.5 upstream is weirdly patched 0.9.4 -> wtf?
81
# hunart: only on ooo extensions -> fubared download path somewhere on sf
82
# numbertext, typo, validator, watch-window: ^^
83
# oooblogger: no homepage or anything
84
# Extensions that need extra work:
85
for lo_xt in ${LO_EXTS}; do
86
	IUSE+=" libreoffice_extensions_${lo_xt}"
87
done
88
unset lo_xt
89
90
LICENSE="|| ( LGPL-3 MPL-1.1 )"
91
SLOT="0"
92
[[ ${PV} == *9999* ]] || \
93
KEYWORDS="~amd64 ~arm ~x86"
94
95
COMMON_DEPEND="
96
	${PYTHON_DEPS}
97
	app-arch/zip
98
	app-arch/unzip
99
	>=app-text/hunspell-1.3.2-r3
100
	app-text/mythes
101
	>=app-text/libabw-0.1.0
102
	>=app-text/libexttextcat-3.2
103
	>=app-text/libebook-0.1.1
104
	>=app-text/libetonyek-0.1.1
105
	app-text/liblangtag
106
	>=app-text/libmspub-0.1.0
107
	>=app-text/libmwaw-0.3.4
108
	>=app-text/libodfgen-0.1.0
109
	app-text/libwpd:0.10[tools]
110
	app-text/libwpg:0.3
111
	=app-text/libwps-0.3*
112
	>=app-text/poppler-0.16:=[xpdf-headers(+),cxx]
113
	>=dev-cpp/clucene-2.3.3.4-r2
114
	=dev-cpp/libcmis-0.5*
115
	dev-db/unixODBC
116
	>=dev-libs/boost-1.55:=
117
	dev-libs/expat
118
	>=dev-libs/hyphen-2.7.1
119
	>=dev-libs/icu-4.8.1.1:=
120
	=dev-libs/liborcus-0.7*
121
	>=dev-libs/librevenge-0.0.1
122
	>=dev-libs/nspr-4.8.8
123
	>=dev-libs/nss-3.12.9
124
	>=dev-lang/perl-5.0
125
	>=dev-libs/openssl-1.0.0d:0
126
	>=dev-libs/redland-1.0.16
127
	media-gfx/graphite2
128
	>=media-libs/fontconfig-2.8.0
129
	media-libs/freetype:2
130
	>=media-libs/glew-1.10
131
	>=media-libs/harfbuzz-0.9.18:=[icu(+)]
132
	media-libs/lcms:2
133
	>=media-libs/libpng-1.4:0=
134
	>=media-libs/libcdr-0.1.0
135
	>=media-libs/libfreehand-0.1.0
136
	media-libs/libpagemaker
137
	>=media-libs/libvisio-0.1.0
138
	>=net-misc/curl-7.21.4
139
	net-libs/neon
140
	net-nds/openldap
141
	sci-mathematics/lpsolve
142
	virtual/jpeg:0
143
	>=x11-libs/cairo-1.10.0[X]
144
	x11-libs/libXinerama
145
	x11-libs/libXrandr
146
	x11-libs/libXrender
147
	virtual/glu
148
	virtual/opengl
149
	bluetooth? ( net-wireless/bluez )
150
	coinmp? ( sci-libs/coinor-mp )
151
	collada? ( >=media-libs/opencollada-1.2.2_p20150207 )
152
	cups? ( net-print/cups )
153
	dbus? ( >=dev-libs/dbus-glib-0.92 )
154
	eds? ( gnome-extra/evolution-data-server )
155
	firebird? ( >=dev-db/firebird-2.5 )
156
	gltf? ( media-libs/libgltf )
157
	gnome? ( gnome-base/gconf:2 )
158
	gtk? (
159
		x11-libs/gdk-pixbuf[X]
160
		>=x11-libs/gtk+-2.24:2
161
	)
162
	gtk3? ( >=x11-libs/gtk+-3.2:3 )
163
	gstreamer? (
164
		media-libs/gstreamer:1.0
165
		media-libs/gst-plugins-base:1.0
166
	)
167
	jemalloc? ( dev-libs/jemalloc )
168
	libreoffice_extensions_scripting-beanshell? ( >=dev-java/bsh-2.0_beta4 )
169
	libreoffice_extensions_scripting-javascript? ( dev-java/rhino:1.6 )
170
	libreoffice_extensions_wiki-publisher? (
171
		dev-java/commons-codec:0
172
		dev-java/commons-httpclient:3
173
		dev-java/commons-lang:2.1
174
		dev-java/commons-logging:0
175
		dev-java/tomcat-servlet-api:3.0
176
	)
177
	mysql? ( >=dev-db/mysql-connector-c++-1.1.0 )
178
	postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
179
	telepathy? (
180
		dev-libs/glib:2
181
		>=net-libs/telepathy-glib-0.18.0
182
		>=x11-libs/gtk+-2.24:2
183
	)
184
"
185
186
RDEPEND="${COMMON_DEPEND}
187
	!app-office/libreoffice-bin
188
	!app-office/libreoffice-bin-debug
189
	!<app-office/openoffice-bin-3.4.0-r1
190
	!app-office/openoffice
191
	media-fonts/libertine
192
	media-fonts/liberation-fonts
193
	media-fonts/urw-fonts
194
	java? ( >=virtual/jre-1.6 )
195
	kde? ( $(add_kdeapps_dep kioclient) )
196
	vlc? ( media-video/vlc )
197
"
198
199
if [[ ${PV} != *9999* ]]; then
200
	PDEPEND="=app-office/libreoffice-l10n-$(get_version_component_range 1-2)*"
201
else
202
	# Translations are not reliable on live ebuilds
203
	# rather force people to use english only.
204
	PDEPEND="!app-office/libreoffice-l10n"
205
fi
206
207
# FIXME: cppunit should be moved to test conditional
208
#        after everything upstream is under gbuild
209
#        as dmake execute tests right away
210
DEPEND="${COMMON_DEPEND}
211
	>=dev-libs/libatomic_ops-7.2d
212
	>=dev-libs/libxml2-2.7.8
213
	dev-libs/libxslt
214
	dev-perl/Archive-Zip
215
	dev-util/cppunit
216
	>=dev-util/gperf-3
217
	dev-util/intltool
218
	>=dev-util/mdds-0.11.2:=
219
	media-libs/glm
220
	net-misc/npapi-sdk
221
	>=sys-apps/findutils-4.4.2
222
	sys-devel/bison
223
	sys-apps/coreutils
224
	sys-devel/flex
225
	sys-devel/gettext
226
	>=sys-devel/make-3.82
227
	sys-devel/ucpp
228
	sys-libs/zlib
229
	virtual/pkgconfig
230
	x11-libs/libXt
231
	x11-libs/libXtst
232
	x11-proto/randrproto
233
	x11-proto/xextproto
234
	x11-proto/xineramaproto
235
	x11-proto/xproto
236
	java? (
237
		>=virtual/jdk-1.6
238
		>=dev-java/ant-core-1.7
239
	)
240
	odk? ( >=app-doc/doxygen-1.8.4 )
241
	test? ( dev-util/cppunit )
242
"
243
244
PATCHES=(
245
	# not upstreamable stuff
246
	"${FILESDIR}/${PN}-4.4-system-pyuno.patch"
247
248
	# from 5.0 branch
249
	"${FILESDIR}/${PN}-4.3.5.2-remove-bashisms.patch" # bug 525454
250
	"${FILESDIR}/${PN}-4.4.0.3-telepathy-build-fix.patch"
251
	"${FILESDIR}/${PN}-4.4.1.2-add-kde4-open-url-script.patch"
252
	"${FILESDIR}/${PN}-4.4.4.3-improve-KDE4FilePicker.patch"
253
	"${FILESDIR}/${PN}-4.4.4.3-fix-KDE4-FileDialog.patch"
254
	"${FILESDIR}/${PN}-4.4.4.3-cleanup-IsNativeControlSupported.patch"
255
256
	# from master branch
257
	"${FILESDIR}/${PN}-4.4.5.2-fix-KDE4-listbox-regression.patch"
258
259
	# musl fixes
260
	"${FILESDIR}/libreoffice-4.4.1.2-fix-includes.patch"
261
	"${FILESDIR}/libreoffice-4.4.1.2-linux-musl.patch"
262
	"${FILESDIR}/libreoffice-4.4.1.2-musl-fix-execinfo.patch"
263
264
)
265
266
REQUIRED_USE="
267
	${PYTHON_REQUIRED_USE}
268
	bluetooth? ( dbus )
269
	collada? ( gltf )
270
	gnome? ( gtk )
271
	eds? ( gnome )
272
	telepathy? ( gtk )
273
	libreoffice_extensions_nlpsolver? ( java )
274
	libreoffice_extensions_scripting-beanshell? ( java )
275
	libreoffice_extensions_scripting-javascript? ( java )
276
	libreoffice_extensions_wiki-publisher? ( java )
277
"
278
279
CHECKREQS_MEMORY="512M"
280
CHECKREQS_DISK_BUILD="6G"
281
282
pkg_pretend() {
283
	local pgslot
284
285
	if [[ ${MERGE_TYPE} != binary ]]; then
286
		check-reqs_pkg_pretend
287
288
		if [[ $(gcc-major-version) -lt 4 ]] || \
289
				 ( [[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ]] ) \
290
				; then
291
			eerror "Compilation with gcc older than 4.6 is not supported"
292
			die "Too old gcc found."
293
		fi
294
	fi
295
296
	# Ensure pg version but we have to be sure the pg is installed (first
297
	# install on clean system)
298
	if use postgres && has_version dev-db/postgresql; then
299
		 pgslot=$(postgresql-config show)
300
		 if [[ ${pgslot//.} < 90 ]] ; then
301
			eerror "PostgreSQL slot must be set to 9.0 or higher."
302
			eerror "    postgresql-config set 9.0"
303
			die "PostgreSQL slot is not set to 9.0 or higher."
304
		 fi
305
	fi
306
}
307
308
pkg_setup() {
309
	java-pkg-opt-2_pkg_setup
310
	kde4-base_pkg_setup
311
	python-single-r1_pkg_setup
312
313
	[[ ${MERGE_TYPE} != binary ]] && check-reqs_pkg_setup
314
}
315
316
src_unpack() {
317
	local mod mod2 dest tmplfile tmplname mypv
318
319
	[[ -n ${PATCHSET} ]] && unpack ${PATCHSET}
320
	use branding && unpack "${BRANDING}"
321
322
	if [[ ${PV} != *9999* ]]; then
323
		unpack "${P}.tar.xz"
324
		for mod in ${MODULES}; do
325
			[[ ${mod} == core ]] && continue
326
			unpack "${PN}-${mod}-${PV}.tar.xz"
327
		done
328
	else
329
		for mod in ${MODULES}; do
330
			mypv=${PV/.9999}
331
			[[ ${mypv} != ${PV} ]] && EGIT_BRANCH="${PN}-${mypv/./-}"
332
			EGIT_CHECKOUT_DIR="${WORKDIR}/${P}"
333
			[[ ${mod} != core ]] && EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-${mod}-${PV}"
334
			EGIT_REPO_URI="git://anongit.freedesktop.org/${PN}/${mod}"
335
			git-r3_src_unpack
336
			if [[ ${mod} != core ]]; then
337
				mod2=${mod}
338
				# mapping does not match on help
339
				[[ ${mod} == help ]] && mod2="helpcontent2"
340
				mkdir -p "${S}/${mod2}/" || die
341
				mv -n "${WORKDIR}/${PN}-${mod}-${PV}"/* "${S}/${mod2}" || die
342
				rm -rf "${WORKDIR}/${PN}-${mod}-${PV}"
343
			fi
344
		done
345
		unset EGIT_CHECKOUT_DIR EGIT_REPO_URI EGIT_BRANCH
346
	fi
347
}
348
349
src_prepare() {
350
	# optimization flags
351
	export GMAKE_OPTIONS="${MAKEOPTS}"
352
	# System python 2.7 enablement:
353
	export PYTHON_CFLAGS=$(python_get_CFLAGS)
354
	export PYTHON_LIBS=$(python_get_LIBS)
355
356
	if use collada; then
357
		export OPENCOLLADA_CFLAGS="-I/usr/include/opencollada/COLLADABaseUtils -I/usr/include/opencollada/COLLADAFramework -I/usr/include/opencollada/COLLADASaxFrameworkLoader -I/usr/include/opencollada/GeneratedSaxParser"
358
		export OPENCOLLADA_LIBS="-L /usr/$(get_libdir)/opencollada -lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lGeneratedSaxParser"
359
	fi
360
361
	# patchset
362
	if [[ -n ${PATCHSET} ]]; then
363
		EPATCH_FORCE="yes" \
364
		EPATCH_SOURCE="${WORKDIR}/${PATCHSET/.tar.xz/}" \
365
		EPATCH_SUFFIX="patch" \
366
		epatch
367
	fi
368
369
	base_src_prepare
370
371
	AT_M4DIR="m4" eautoreconf
372
	# hack in the autogen.sh
373
	touch autogen.lastrun
374
375
	# system pyuno mess
376
	sed \
377
		-e "s:%eprefix%:${EPREFIX}:g" \
378
		-e "s:%libdir%:$(get_libdir):g" \
379
		-i pyuno/source/module/uno.py \
380
		-i pyuno/source/officehelper.py || die
381
	# sed in the tests
382
	sed -i \
383
		-e 's#all : build unitcheck#all : build#g' \
384
		solenv/gbuild/Module.mk || die
385
	sed -i \
386
		-e 's#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g' \
387
		-e 's#Makefile.gbuild all slowcheck#Makefile.gbuild all#g' \
388
		Makefile.in || die
389
390
	if use branding; then
391
		# hack...
392
		mv -v "${WORKDIR}/branding-intro.png" "${S}/icon-themes/galaxy/brand/intro.png" || die
393
	fi
394
}
395
396
src_configure() {
397
	local java_opts
398
	local internal_libs
399
	local lo_ext
400
	local ext_opts
401
402
	# sane: just sane.h header that is used for scan in writer, not
403
	#       linked or anything else, worthless to depend on
404
	# vigra: just uses templates from there
405
	#        it is serious pain in the ass for packaging
406
	#        should be replaced by boost::gil if someone interested
407
	internal_libs+="
408
		--without-system-sane
409
		--without-system-vigra
410
	"
411
412
	# libreoffice extensions handling
413
	for lo_xt in ${LO_EXTS}; do
414
		if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
415
			ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt})"
416
		else
417
			ext_opts+=" $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt})"
418
		fi
419
	done
420
421
	if use java; then
422
		# hsqldb: system one is too new
423
		java_opts="
424
			--without-junit
425
			--without-system-hsqldb
426
			--with-ant-home="${ANT_HOME}"
427
			--with-jdk-home=$(java-config --jdk-home 2>/dev/null)
428
			--with-jvm-path="${EPREFIX}/usr/lib/"
429
		"
430
431
		use libreoffice_extensions_scripting-beanshell && \
432
			java_opts+=" --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar)"
433
434
		use libreoffice_extensions_scripting-javascript && \
435
			java_opts+=" --with-rhino-jar=$(java-pkg_getjar rhino-1.6 js.jar)"
436
437
		if use libreoffice_extensions_wiki-publisher; then
438
			java_opts+="
439
				--with-commons-codec-jar=$(java-pkg_getjar commons-codec commons-codec.jar)
440
				--with-commons-httpclient-jar=$(java-pkg_getjar commons-httpclient-3 commons-httpclient.jar)
441
				--with-commons-lang-jar=$(java-pkg_getjar commons-lang-2.1 commons-lang.jar)
442
				--with-commons-logging-jar=$(java-pkg_getjar commons-logging commons-logging.jar)
443
				--with-servlet-api-jar=$(java-pkg_getjar tomcat-servlet-api-3.0 servlet-api.jar)
444
			"
445
		fi
446
	fi
447
448
	# system headers/libs/...: enforce using system packages
449
	# --enable-cairo: ensure that cairo is always required
450
	# --enable-graphite: disabling causes build breakages
451
	# --enable-*-link: link to the library rather than just dlopen on runtime
452
	# --enable-release-build: build the libreoffice as release
453
	# --disable-fetch-external: prevent dowloading during compile phase
454
	# --disable-gnome-vfs: old gnome virtual fs support
455
	# --disable-kdeab: kde3 adressbook
456
	# --disable-kde: kde3 support
457
	# --disable-systray: quickstarter does not actually work at all so do not
458
	#   promote it
459
	# --enable-extension-integration: enable any extension integration support
460
	# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
461
	# --disable-report-builder: too much java packages pulled in without pkgs
462
	econf \
463
		--docdir="${EPREFIX}/usr/share/doc/${PF}/" \
464
		--with-system-headers \
465
		--with-system-libs \
466
		--with-system-jars \
467
		--with-system-dicts \
468
		--enable-cairo-canvas \
469
		--enable-graphite \
470
		--enable-largefile \
471
		--enable-mergelibs \
472
		--enable-neon \
473
		--enable-python=system \
474
		--enable-randr \
475
		--enable-randr-link \
476
		--enable-release-build \
477
		--disable-hardlink-deliver \
478
		--disable-ccache \
479
		--disable-crashdump \
480
		--disable-dependency-tracking \
481
		--disable-epm \
482
		--disable-fetch-external \
483
		--disable-gnome-vfs \
484
		--disable-gstreamer-0-10 \
485
		--disable-report-builder \
486
		--disable-kdeab \
487
		--disable-kde \
488
		--disable-online-update \
489
		--disable-systray \
490
		--with-alloc=$(use jemalloc && echo "jemalloc" || echo "system") \
491
		--with-build-version="Gentoo official package" \
492
		--enable-extension-integration \
493
		--with-external-dict-dir="${EPREFIX}/usr/share/myspell" \
494
		--with-external-hyph-dir="${EPREFIX}/usr/share/myspell" \
495
		--with-external-thes-dir="${EPREFIX}/usr/share/myspell" \
496
		--with-external-tar="${DISTDIR}" \
497
		--with-lang="" \
498
		--with-parallelism=$(makeopts_jobs) \
499
		--with-system-ucpp \
500
		--with-vendor="Gentoo Foundation" \
501
		--with-x \
502
		--without-fonts \
503
		--without-myspell-dicts \
504
		--without-help \
505
		--with-helppack-integration \
506
		--without-sun-templates \
507
		$(use_enable bluetooth sdremote-bluetooth) \
508
		$(use_enable coinmp) \
509
		$(use_enable collada) \
510
		$(use_enable cups) \
511
		$(use_enable debug) \
512
		$(use_enable dbus) \
513
		$(use_enable eds evolution2) \
514
		$(use_enable firebird firebird-sdbc) \
515
		$(use_enable gltf) \
516
		$(use_enable gnome gconf) \
517
		$(use_enable gnome gio) \
518
		$(use_enable gnome lockdown) \
519
		$(use_enable gstreamer gstreamer-1-0) \
520
		$(use_enable gtk) \
521
		$(use_enable gtk3) \
522
		$(use_enable kde kde4) \
523
		$(use_enable mysql ext-mariadb-connector) \
524
		$(use_enable odk) \
525
		$(use_enable postgres postgresql-sdbc) \
526
		$(use_enable telepathy) \
527
		$(use_enable vlc) \
528
		$(use_with coinmp system-coinmp) \
529
		$(use_with collada system-opencollada) \
530
		$(use_with gltf system-libgltf) \
531
		$(use_with java) \
532
		$(use_with mysql system-mysql-cppconn) \
533
		$(use_with odk doxygen) \
534
		${internal_libs} \
535
		${java_opts} \
536
		${ext_opts}
537
}
538
539
src_compile() {
540
	# more and more LO stuff tries to use OpenGL, including tests during build
541
	# bug 501508, bug 540624, bug 545974 and probably more
542
	addpredict /dev/dri
543
	addpredict /dev/ati
544
	addpredict /dev/nvidiactl
545
546
	# hack for offlinehelp, this needs fixing upstream at some point
547
	# it is broken because we send --without-help
548
	# https://bugs.freedesktop.org/show_bug.cgi?id=46506
549
	(
550
		grep "^export" "${S}/config_host.mk" > "${T}/config_host.mk"
551
		source "${T}/config_host.mk" 2&> /dev/null
552
553
		local path="${WORKDIR}/helpcontent2/source/auxiliary/"
554
		mkdir -p "${path}" || die
555
556
		echo "perl \"${S}/helpcontent2/helpers/create_ilst.pl\" -dir=icon-themes/galaxy/res/helpimg > \"${path}/helpimg.ilst\""
557
		perl "${S}/helpcontent2/helpers/create_ilst.pl" \
558
			-dir=icon-themes/galaxy/res/helpimg \
559
			> "${path}/helpimg.ilst"
560
		[[ -s "${path}/helpimg.ilst" ]] || ewarn "The help images list is empty, something is fishy, report a bug."
561
	)
562
563
	local target
564
	use test && target="build" || target="build-nocheck"
565
566
	# this is not a proper make script
567
	make ${target} || die
568
}
569
570
src_test() {
571
	make unitcheck || die
572
	make slowcheck || die
573
}
574
575
src_install() {
576
	# This is not Makefile so no buildserver
577
	make DESTDIR="${D}" distro-pack-install -o build -o check || die
578
579
	# Fix bash completion placement
580
	newbashcomp "${ED}"/etc/bash_completion.d/libreoffice.sh ${PN}
581
	bashcomp_alias \
582
		libreoffice \
583
		unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
584
	rm -rf "${ED}"/etc/ || die
585
586
	if use branding; then
587
		insinto /usr/$(get_libdir)/${PN}/program
588
		newins "${WORKDIR}/branding-sofficerc" sofficerc
589
		dodir /etc/env.d
590
		echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN}
591
	fi
592
593
	# Hack for offlinehelp, this needs fixing upstream at some point.
594
	# It is broken because we send --without-help
595
	# https://bugs.freedesktop.org/show_bug.cgi?id=46506
596
	insinto /usr/$(get_libdir)/libreoffice/help
597
	doins xmlhelp/util/*.xsl
598
599
	# Remove desktop files for support to old installs that can't parse mime
600
	rm -rf "${ED}"/usr/share/mimelnk/
601
602
	# FIXME: Hack add missing file
603
	insinto /usr/$(get_libdir)/${PN}/program
604
	doins "${S}"/instdir/program/libsaxlo.so
605
606
	pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/soffice.bin
607
	pax-mark -m "${ED}"/usr/$(get_libdir)/libreoffice/program/unopkg.bin
608
}
609
610
pkg_preinst() {
611
	# Cache updates - all handled by kde eclass for all environments
612
	kde4-base_pkg_preinst
613
}
614
615
pkg_postinst() {
616
	kde4-base_pkg_postinst
617
618
	use java || \
619
		ewarn 'If you plan to use lbase application you should enable java or you will get various crashes.'
620
}
621
622
pkg_postrm() {
623
	kde4-base_pkg_postrm
624
}

Return to bug 546890