commit:     82fae3a27ded4ae36eb919843643e60657b80be8
Author:     Mark Wright <gienah <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 25 07:28:47 2015 +0000
Commit:     Mark Wright <gienah <AT> gentoo <DOT> org>
CommitDate: Tue Aug 25 07:28:47 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82fae3a2

dev-lang/scala: bump 2.9 slot to 2.9.3

Package-Manager: portage-2.2.20.1

 dev-lang/scala/Manifest                      |  27 ++++
 dev-lang/scala/files/scala-2.9.2-java7.patch | 198 +++++++++++++++++++++++
 dev-lang/scala/scala-2.9.3.ebuild            | 228 +++++++++++++++++++++++++++
 3 files changed, 453 insertions(+)

diff --git a/dev-lang/scala/Manifest b/dev-lang/scala/Manifest
index 1c2fb70..d84119a 100644
--- a/dev-lang/scala/Manifest
+++ b/dev-lang/scala/Manifest
@@ -154,6 +154,33 @@ DIST scala-2.11.7-vizant.jar 15910 SHA256 
a54e19093725d0d085544553246e48607c1e6a
 DIST scala-2.11.7.tar.gz 6443003 SHA256 
1679ee604bc4e881b0d325e164c39c02dcfa711d53cd3115f5a6c9676c5915ef SHA512 
f74614a303bdc28068b212e9fe4aa499db4a5a9ff87bf1af93d6b3598784edd3f2e37cedbdbc20c9aa507965845b4b511bfc786ff82f31dbc3365af796062611
 WHIRLPOOL 
d7ebd8b9a6c34d90d7b7dd62d79406ff2776ed65037e93cd20c0ce2f954e3380896b67ee88813abe322303ebb7894070c68b1045ce71923ae26e876f1fa57a88
 DIST scala-2.9.2-gentoo-binary.tar.bz2 32370003 SHA256 
43e07596f28e723cf1e2d41ed95c312af8422059de8c229d18eadb46d487c9ca SHA512 
b0873dbe5d93b1665372c44f9473e1d4616f5347c26e0950cf2366b08e1f68069b1c527bda7bfcecb8af4afeaa1c9cae7d324d36509d5f2072e725310fd1cc7b
 WHIRLPOOL 
ffcba39e9f04eccadc16bda8770e42f2725fcf21172f7f6798f3849282c276d3671c93e0eaeb4a0a46a73a815cb31300302354f8e99ce888a5687739ab0f50f8
 DIST scala-2.9.2.tar.gz 38434121 SHA256 
1b931103051f4f6b2f8788ac6f5392b5f29e1109e97f0e19340ff6185fbab4ad SHA512 
c8ce17728976c506c90d2eec792904d39a16d35d153914a7c936e43e530f20d8cdf494287187c513393e2db7837b8ec9d417c56f6bb47be3b0501f2a57f52b63
 WHIRLPOOL 
08774dd06a6814a33a21643a0af361310ca8aae649968d4d411a3ffba32e855d320f052bda0707db356c01e1f4e1c1b0cafd67881d1666d046ad8934084e7635
+DIST scala-2.9.3-annotations.jar 2242 SHA256 
f2d057a006bba4253d069795284a7610f1c837af6a80c0057736099962e24bcc SHA512 
3ceee0b1361b9e0911c1ff060ad108a1d93f7ea3e82ef946401cd5f895cb06016ac0ecdfd095f99b11cfb28c4cef7705c1b564c7af644c5f19b45c14a413c4dd
 WHIRLPOOL 
51fa0efc5dd14cf8364e9639375511fc3e716bd520a193e6c17a2fe3f02eebd1529eb98fd3b382a6386baa5b779ebd0327e8f141aee172d11d9548d9921c58e1
+DIST scala-2.9.3-ant-contrib.jar 224277 SHA256 
be33a69818310b5c55e41dc11d48cd895f5f129da4b0d28c2f4c6c3e1cbcf3fc SHA512 
5ec325a55bb213226c86faf8a99951839319e9579956ae58e2ccfe84f62d2742542998f98eed3f0dc8f8f94635d6dff1fe02e3c0f5289df1f09027ae2b9bee83
 WHIRLPOOL 
aa713cc04b10c46adbbb8a5904e3fb34c6e32b67bb9a5f1a89768ceab8c31b977875c84434bc03c5b42105a4019f55cc10d806b0345c365a309e93d3f02e0a10
+DIST scala-2.9.3-ant-dotnet-1.0.jar 57795 SHA256 
40c18fcfb8c28e4ee82e53f72a3257db43bcba01e16ebd5a4550fc419edf30c1 SHA512 
72afc387cf9dbeb99e627ca7f35f919f627bbf3f072eb46036120695fb70311490593c255c2a2e79b684adb8f213d8ab591d4ceda5d5f2e6b6906a6977b38867
 WHIRLPOOL 
18aa33fe259bd52e2f37b903be39d462e8622ff744f990fc92871eaa4fe10ff69cd25b2c968cc353b3c5138cd3fffd755715aef6bb16c57b0b72e7e5fd1975e1
+DIST scala-2.9.3-ant.jar 1506140 SHA256 
0251dbb938740ace07a53675113eee753ba389db65aebc814b175af50321620e SHA512 
ddee72ca62adb20e700022609749a4d6cc848c94e597a7450226770c8b97aa2c1f7f23b7a1c6ac8acd63047101997ebd68c19b393ebffde9ff5c7bb1957cd18c
 WHIRLPOOL 
1b2b7e0289cb16f5131a9c0b1b6eb1279011e7af79fc470dd6dc2047afc7fa99bdeec6d9db4f46adb83f6110593118d0909a4b1fa6b01dc56890bf6d2785373b
+DIST scala-2.9.3-enums.jar 1372 SHA256 
95c53606c7113333ef95b4efbd3ae08af715ca49f71845a5d33150e6b7e9a072 SHA512 
3d2356b9f610e98a03f64cbdd18ee36138b68ba5b170bb9b78bc7449439c3870f6f5bc795f3e1b8d325daf468ae85c581b60d1d360c1ae68c70792ad62b9c1dc
 WHIRLPOOL 
30b26ba56a36272cf5973d3a89850cb3f5bff6c45a7a6bbd6ccf4ff342720bba89dfc0cdbe10058b770b7e73093ea948e574d5e081c36ab866f3bea9f0e14f95
+DIST scala-2.9.3-fjbg.jar 130721 SHA256 
bb13e449a369966b8d9d423aa31a4f0b628316e3c97e01e557978f7d6cf105f4 SHA512 
2e063d805452b060d638a4fa2fa1e636fa66c387dfad1d1bba9a58914111ff3534b447f7d4514cc6299c9233f568d97e5b69f0ab370aaba8e3a5255ab11cff63
 WHIRLPOOL 
89cf71f08232e33bfe49b80f64f7f1a6aa5221ce53d884f06c3e622e70737e76f5847abe21ca0c137259f14327e4f08bae7a3c30130a41a36bc00b57c9719e87
+DIST scala-2.9.3-forkjoin.jar 47215 SHA256 
c655d86013a72e5878ccd3110f176ff549a5a62d609f29b7bdd623334e8db01d SHA512 
c1cf920eeca924aaa6189b52719ff567967c696817fa75a28daea916c1f808f13c5402143c33fd6b21352ac41e38e2823ca56d4a949af047889eb6a6aae4b649
 WHIRLPOOL 
9cc002ea16cdde5ca4fa5aadc4359a416fe5aa07599c694ac99e4dbe4e9f3f438e6a3899157420a7cd74438ebff63a9d3721e4dd1f73fbda6143d633bc309645
+DIST scala-2.9.3-genericNest.jar 1136 SHA256 
c2c23341eec9fb379b57d7bf1156fedb3e2b9f97d2d5729fbfc7d766fd390faa SHA512 
32c3b3e14bc72db2572bf120c1fda49a369b27ff8ae6ae12f6d7b12fdffef4064b515671c8f1b6dbfd78209247f6a7b7b26e700dd70a105de3ca59f5185ff9d6
 WHIRLPOOL 
61b2d9f840fc0ed86a8207cf353a2f7b9bf8523d31b4e8f74eb21ecac1a405ed04c5a4a8e78a13d64b2dd186a7ec3885cd5e2514ad572e600e5744c3f15f74c5
+DIST scala-2.9.3-gentoo-binary.tar.bz2 34391262 SHA256 
5510aa9170e60cb8f179be6dbcab872c20b23a199ffa20db3f21a5cc054ef13e SHA512 
06beccc78f0d2bc4860cf429fd4af2781ae9ffa763af77068a00de5cb08b351eb92b2c7c17732a7ff4a52fca9cf699127ba3e331aceceb7c54d5c8b9f0c65021
 WHIRLPOOL 
5413692e3e54f6fab333ec2916a9863588bb06fce46f06af9c47a9d359f82a15834b1beef776f0f750a46ba0683ec871c723cae3799f8997a981075e377a0bef
+DIST scala-2.9.3-gnujaxp.jar 231445 SHA256 
65e6146fbab44e1640d8a0da588dfdbb9c185853e70d8b8c0da6949937b6af8a SHA512 
d632760bde6a761ae840a8cbde1f3b27da7a005408504085b5cfb6edd3e54b99924562ff464be55f2b89cf9617d9ec22d96625f71a805398d4125d3ab5ed7ea6
 WHIRLPOOL 
d56a54dd3395a543e2a705342c1faf41e67aa8ac81a3fe9eddd3fbe42adf4af80d43ffe3a22a24c08468d756a7618a082b694981e1f29c443ff15638175742c7
+DIST scala-2.9.3-instrumented.jar 24221 SHA256 
23a2118d0efc1f99e3f833340765cc28f09b8f24de18b064ea034813fb8cb51e SHA512 
dbba981bc5cc6c336a9076d7baf9b868381b8d8472e043d5d2b28621faf0cf69a252815c949eac643f18041c485cea12d05ca3638c2d57020ea713180e34050b
 WHIRLPOOL 
25193c7b18d8879388ef060048350498613aa50397f3bd62d99cc9a0e088b11b0170c311babd9a9661bd096482a7cc052ce785ee416fa8362ceaf5ead5cf43c9
+DIST scala-2.9.3-jline.jar 158705 SHA256 
e8b020b08e68b0f0adf37a28fc5cce02270d8ab1f754d482732982a5f91a9918 SHA512 
8776d2ed8725674a681dd27416847ea466013faf5120011169f7991d88be11431869fe9f26a91d10893544c116d00874a1ab6f639c6bdcdf58575a00e98b5aaa
 WHIRLPOOL 
3e84b0e0edb32ed0797a6d59aea7042954b017e9348f7dbbe7c74e9acd92b62633b574e4c37ad59f4280357c29f4d4bd54db4fd13981842b4dd3a583bc12ca5b
+DIST scala-2.9.3-jsr166_and_extra.jar 728574 SHA256 
e33a59e291bae8dbd2b37c6a4d5eae459a313db3a588f42c59ac5fd8edf6e13b SHA512 
40d949cfefc5111c79b79f085657d56aa046d1b318e6ad78de5869f61a6515c2076b70344be5ae3fb93a7b3f54f46a129e2536515b258e0d5bf2e670c5001306
 WHIRLPOOL 
ef8414d7862736cf072ff60fff5008f38dadcf826364cf21929fdfca7d331872d8097e6a6907dd500ef5d5a68964d8c2ed9ebeedf6470dc25ede269c1a8172b5
+DIST scala-2.9.3-maven-ant-tasks-2.1.1.jar 1314262 SHA256 
b8891b4a90aca2793ad385ab57216f51c4879c6ab7e927354f407b46510cab51 SHA512 
e3f0ff1d41ec31b2b64acb2ebcc175709714033589cb8e763f94aa80359c84f5d960c46dae713c9e37e1a09b977e7da617f8fe10a5b6fb30c55efd19bc307e68
 WHIRLPOOL 
73c44ea6aba4a3c697f64d08475b4c17bdc929ac9f320a25714fbe7cdc2939ad334deb7a90eb6c950cce8ba402d19bc2615a104788bafed7d247b997d3146743
+DIST scala-2.9.3-methvsfield.jar 609 SHA256 
730b33d098319d969760f2250dc6924c9f85f94a8a2eb2b2a025dcf05378d9c6 SHA512 
6db923ed7059bc91c8442d5804ccd8336e94f5202b3dcc348a4eb5026f09e1e86862f6e94818beae9ad42fcdc8e51df4d59a27109903a8ccb78054425ae47a71
 WHIRLPOOL 
d5362d5fc2795ff0671f386429840bb4f84173f9308e34c2b0eb585fb7cacbd308ab87c42f2fd407597abc4f010e8ffde600dd30addcd63c2d71c2d5f22f1582
+DIST scala-2.9.3-midpapi10.jar 364901 SHA256 
5c52910612714d5a0d090f1a1ad0dc9f9c77bfdc25fde8b84d9388bbcf42126b SHA512 
5b2c9d4b2732c6eb74804e20f0e4315700ee18fa769a1bd9028ba0d742d71578e433dc0625ebd37c842e8f8f952c02c6f0d93a3e0c4b73e1c9d4fbf132839780
 WHIRLPOOL 
0d07e058b276c1f6db6405cea01a803e15999c198755cf778c63ecfb45223ca04faf4b88749be6bcdf7c4be45af2d1d7f3b072121b8a549543bf72daf28e5f91
+DIST scala-2.9.3-msil.jar 299354 SHA256 
6be6c31b441205bcd9083a306803e99b459b215f939e412196ac10606e613bb4 SHA512 
d09885a71b0010c0b08a15b625ce92dafe37e542e0e6413b88759d443e7bd6aedd4a0656d71ec262c54004ced38c4587e1ab2344db251b542c79d10c60e8e931
 WHIRLPOOL 
e81b3cbd8403d78395f82ddba092bc54a5f5616dc8ecb6215e1e25c3cff7ed22fc73c4a19668f911b4954b1ddd00b9bbe0ec1addb7d1a1cd77aa460fb72a6ce8
+DIST scala-2.9.3-nest.jar 2920 SHA256 
3c7cf1a1b9fe9ad2abf3bfcedaa17a976c72f4bccb0e0c7dbcf7ecf27bc20aa5 SHA512 
5eaaa870e06b5e00efb1f6ccced71343e8aa01578ea2b320b2d051f2df3713df9c500f074cc74a9e3c5cc509e03cf9c71265329bf2ddb3e82cb331524202fa38
 WHIRLPOOL 
1d73b612946a6a226841d3e0ad8cb3ebb06997c70e94feb1f9236e4e58a93c429cc7cdecaa4175fd5b78920253bcc157f798593b6a8eacb873b3d9a51284be34
+DIST scala-2.9.3-plugins.jar 4181 SHA256 
13313e0c3a42bb401377ab4f228e3c81db482c8f33295c6a1d021fc3c9727871 SHA512 
d44427df9acf4611acb492b6268b65f63a8be2d47ef29598bf5d242f702af57f0ee2eff52378b8371755d5ddf58c79d48b18a6a056ee9fee5091e478ce5ec1a2
 WHIRLPOOL 
b2e846b5965ea7f04844b4c49e3fcc2f5b3f0e31669a662557bd36a113dd94372bae55d46f1986e03099c6f51217bf10986e5e265874854ba479c36d041a1e41
+DIST scala-2.9.3-push.jar 8886289 SHA256 
58eb2b8c501bbff0e78074a058e3fc160012a80952c1cc96ed301d8a08d7e98d SHA512 
b5539d381c8978ac57fc4258696e4cb552f47917178152b38b5683e42ed60da4d9da198a0344652f201541a71f92afd2ac8b3c3d3ec5266a8c222e9661d8a06a
 WHIRLPOOL 
8fa6522a0fd9939f4ffd443b55e7a5adbb93a9dc5cbad569ccecd6be77ecd259eadbdb16c2c7eab6d9f175fbf33746faf9c41cf4d1050e7f576b86119301e126
+DIST scala-2.9.3-scala-compiler.jar 11422560 SHA256 
d574e8ebb7df50149f1d59d422bf555343e641be08a4f3953b836d2203a6d251 SHA512 
37be543367ce402faf8145afbda579ada62c985103cba9aef8e0458c24af3a3ecbb307fc8f6c228f0e134df167a50ecbf67f30b00e03029afdcb527569d6da0d
 WHIRLPOOL 
ca03ef48b2b1b251e33337cdfac5c3d37f6e127f366d1d5432aae11fdb94cf0f855c17b87147f6c8d116d9ce0653c419289acfdd8783afb42d4882b58ebdf2a0
+DIST scala-2.9.3-scala-library-src.jar 1306388 SHA256 
eda04ef8f04bd3f1fd676de51cad77874a88cdf49d867593a0d9a320c4cff523 SHA512 
0d7f452e4c81ae7fdb236aac4261c876e73728b31e033fb5f055a4ede9b8b407d66f9c42e1d3b999b9cbb28300b9b49e475743f645dbb246a40d095dc5dd8f6b
 WHIRLPOOL 
2080282277c3ceff176a5a9f5f815457ae9404fc1e0b38a087888ddf2510a2e5faaac0a596fa1e642b7c0e937b05ae109de2be19b112867766a2ca9870a01761
+DIST scala-2.9.3-scala-library.jar 9925007 SHA256 
fd1302b17372f85a553f670145d15c5ac349b676518ecd739a467b467d40da60 SHA512 
8cce84864aeb701143b20d27e0819bfa6bc3e2193aff7197ec8a16796c23a20a169c9ce57bea01ccd5a1c32066e6d4033d23dd7f3b26634a34881c0eab523c30
 WHIRLPOOL 
4250fa13103d89d6c43e6e0d75bea3e6d55d68658acee5f2569c1894cce68862faea5d2a9aa228c05a77021f1a966261ea3daf762c3b50df2d54fb5b60273176
+DIST scala-2.9.3-scalacheck.jar 746629 SHA256 
342a299d74fed72353b75f1265d7252c0f8d57939fc09c1b966a73f4bf07289e SHA512 
d7f4eceefb271215a4fa240b40d38261607bab8a30afd7459e6d7eb561146aaad0e746bddb6ff4d25233908fe0c95947558f850b81c223d6066f22095f30dd2e
 WHIRLPOOL 
85088b00f1292891a9e8d6d9e4778d978398c7128500a7fc2d8cbd9e206f31e2c6df367fdc784730b47c2bc265dd7c77649dab9f3482b3ed4c7953f9bd74cb13
+DIST scala-2.9.3-scalatest.jar 1827900 SHA256 
43869b4171972901bce5a89b1ba8b8474c7e75538321dcdfb41e37d089edbac8 SHA512 
2d77d1239d544d572660d8b2a8355bf7a03137a3d05d41b5f2ab214edab05ef038d3e05082d5adafe16b6cda41440c075f49a130c3c7ff053c6d8844000d2f2b
 WHIRLPOOL 
68d804ab21f3caa0e459d8d8b1c926b6f69140cb64a96b72d95605f9f04845510cd47b369b3d73d5e944912fa2f0d06cfb02c75f89087d8f27effbdfa4d9ccd1
+DIST scala-2.9.3-vizant.jar 15910 SHA256 
a54e19093725d0d085544553246e48607c1e6ab65575ae0ff721b788118461d6 SHA512 
4464d7349016f4999199e227e8eaf7bb3ef6b7e38ad0e8e710faad55df2e1243d99b53b9a789a1ffd3c39aef0d979dffc543f4691feae68cfa743e51bcf61390
 WHIRLPOOL 
1b957b8b850f79309c3577a2dcac52a620fa54f810f242a02c52bbcee1cc9c5818785baa7db8e2b82b850bcb56b528c4dd07cdfad2f991c0025293ca02c0dc99
+DIST scala-2.9.3.tar.gz 3973977 SHA256 
5736497f84d375804eb6351a5e9db7cf8dad0861a5d4294fc7e8f741c840573e SHA512 
896b04ffc5579f1f2a081c677da5c11bf163b89696d061e7c7404fbb684640dd78f7d88bdef89822dad6dfb20717d4b84da239a84c4b65bbdf84a604e1577e76
 WHIRLPOOL 
4812e6e844c169f187eb7802ec65f0d9b72efa62765f8113d351a2cdd8ab6ee7d8234b9def8643d91e80d04b4049d8793aec7d794af7e2845813488308d44614
 DIST scala-compiler-src.jar 2462738 SHA256 
ca43298237583dfd362ab4d773ef0f791a075d9187ecf30cc8ee4f4b7ae12e76 SHA512 
a71eab8ada2fd23aa1408577dc3bde28847484643618a752ab68bbe5c8a4ef19ad852ace6f44c8e66668e6b6098de8b0cb3eb8d0c4674ed332562463b43a8a38
 WHIRLPOOL 
8cc711357fe2b393c1e28a3ebd0249fb633c1135c6c4d8819c6ab14081c9fbbb4c1e0a6b84eb9a5711c9874814e54676905da90a1d8d6c5e28213e189bb0f37b
 DIST scala-compiler.jar 15095501 SHA256 
dbad9d1e0e300c62945d8d8aa21ebfa614e1f7b1c8378550b0314aa006be21c0 SHA512 
98588884da2a01af5df9898f5d3055cbf5fa04af7d5f87bd6076dbfca329a7f2fa5645fa87cc14720204e00dc540971f8c44b2233fd4706db0df00ce8978349f
 WHIRLPOOL 
311db7bc73ac1584403b12ea8c712a4b6a0450c502328ac26d7d9e051db4f5dd185dfc1c7c8304d32991c374fc2ed3c89cf8cfd61759f9049e1b5e55f4a7c54c
 DIST scala-library-src.jar 1378653 SHA256 
4a347825a0856a14803ec2c9cc205e192f19f15e417d334f4d22276d898d0dfd SHA512 
06b0944c53b145c71239ec5aa90a78fbdee8130508f02d6cecd4c6c5e26878f19751471ba5d54c80e8d1380645787512c6e7566471675f0c9e3f0c29e38b4ff7
 WHIRLPOOL 
27fcbc2e52d52b30a8d0f1d68caaf8fb0f201d1509609aa361aaae412f0ceb6d95e6c3c4210b60027eae1ebb406ba3bdad770a2b087145572255b452bf0028bc

diff --git a/dev-lang/scala/files/scala-2.9.2-java7.patch 
b/dev-lang/scala/files/scala-2.9.2-java7.patch
new file mode 100644
index 0000000..1cf8c8b
--- /dev/null
+++ b/dev-lang/scala/files/scala-2.9.2-java7.patch
@@ -0,0 +1,198 @@
+diff -Nru scala-2.9.2-sources/src/swing/scala/swing/ComboBox.scala 
scala-2.9.2-sources-gil/src/swing/scala/swing/ComboBox.scala
+--- scala-2.9.2-sources/src/swing/scala/swing/ComboBox.scala   2012-03-18 
17:09:24.000000000 +0100
++++ scala-2.9.2-sources-gil/src/swing/scala/swing/ComboBox.scala       
2012-11-23 17:09:08.353124190 +0100
+@@ -11,7 +11,7 @@
+ package scala.swing
+ 
+ import event._
+-import javax.swing.{JList, JComponent, JComboBox, JTextField, ComboBoxModel, 
AbstractListModel, ListCellRenderer}
++import javax.swing.{ JComponent, JComboBox, JTextField, ComboBoxModel, 
AbstractListModel, ListCellRenderer }
+ import java.awt.event.ActionListener
+ 
+ object ComboBox {
+@@ -120,10 +120,10 @@
+   implicit def floatEditor(c: ComboBox[Float]): Editor[Float] = new 
BuiltInEditor(c)(s => s.toFloat, s => s.toString)
+   implicit def doubleEditor(c: ComboBox[Double]): Editor[Double] = new 
BuiltInEditor(c)(s => s.toDouble, s => s.toString)
+ 
+-  def newConstantModel[A](items: Seq[A]): ComboBoxModel = {
+-    new AbstractListModel with ComboBoxModel {
++  def newConstantModel[A](items: Seq[A]): ComboBoxModel[A] = {
++    new AbstractListModel[A] with ComboBoxModel[A] {
+       private var selected: A = if (items.isEmpty) null.asInstanceOf[A] else 
items(0)
+-      def getSelectedItem: AnyRef = selected.asInstanceOf[AnyRef]
++      def getSelectedItem = selected.asInstanceOf[AnyRef]
+       def setSelectedItem(a: Any) {
+         if ((selected != null && selected != a) ||
+             selected == null && a != null) {
+@@ -131,7 +131,7 @@
+           fireContentsChanged(this, -1, -1)
+         }
+       }
+-      def getElementAt(n: Int) = items(n).asInstanceOf[AnyRef]
++      def getElementAt(n: Int) = items(n).asInstanceOf[A]
+       def getSize = items.size
+     }
+   }
+@@ -159,7 +159,7 @@
+  * @see javax.swing.JComboBox
+  */
+ class ComboBox[A](items: Seq[A]) extends Component with Publisher {
+-  override lazy val peer: JComboBox = new 
JComboBox(ComboBox.newConstantModel(items)) with SuperMixin
++  override lazy val peer: JComboBox[A] = new 
JComboBox(ComboBox.newConstantModel(items)) with SuperMixin
+ 
+   object selection extends Publisher {
+     def index: Int = peer.getSelectedIndex
+@@ -184,7 +184,8 @@
+    * of the component to its own defaults _after_ the renderer has been
+    * configured. That's Swing's principle of most suprise.
+    */
+-  def renderer: ListView.Renderer[A] = 
ListView.Renderer.wrap(peer.getRenderer)
++  def renderer: ListView.Renderer[A] = 
ListView.Renderer.wrap[A](peer.getRenderer.asInstanceOf[ListCellRenderer[A]])
++  // def renderer: ListView.Renderer[A] = 
ListView.Renderer.wrap(peer.getRenderer)
+   def renderer_=(r: ListView.Renderer[A]) { peer.setRenderer(r.peer) }
+ 
+   /* XXX: currently not safe to expose:
+@@ -203,8 +204,8 @@
+     peer.setEditor(editor(this).comboBoxPeer)
+   }
+ 
+-  def prototypeDisplayValue: Option[A] = 
toOption[A](peer.getPrototypeDisplayValue)
++  def prototypeDisplayValue: Option[A] = Option(peer.getPrototypeDisplayValue)
+   def prototypeDisplayValue_=(v: Option[A]) {
+-    peer.setPrototypeDisplayValue(v map toAnyRef orNull)
++    peer.setPrototypeDisplayValue((v map toAnyRef).orNull.asInstanceOf[A])
+   }
+ }
+diff -Nru scala-2.9.2-sources/src/swing/scala/swing/ListView.scala 
scala-2.9.2-sources-gil/src/swing/scala/swing/ListView.scala
+--- scala-2.9.2-sources/src/swing/scala/swing/ListView.scala   2012-03-18 
17:09:26.000000000 +0100
++++ scala-2.9.2-sources-gil/src/swing/scala/swing/ListView.scala       
2012-11-23 17:20:45.704030454 +0100
+@@ -24,21 +24,21 @@
+     val MultiInterval = Value(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION)
+   }
+ 
+-  def wrap[A](c: JList) = new ListView[A] {
++  def wrap[A](c: JList[A]) = new ListView[A] {
+     override lazy val peer = c
+   }
+ 
+   object Renderer {
+-    def wrap[A](r: ListCellRenderer): Renderer[A] = new Wrapped[A](r)
++    def wrap[A](r: ListCellRenderer[A]): Renderer[A] = new Wrapped[A](r)
+ 
+     /**
+      * Wrapper for <code>javax.swing.ListCellRenderer<code>s
+      */
+-      class Wrapped[A](override val peer: ListCellRenderer) extends 
Renderer[A] {
+-        def componentFor(list: ListView[_], isSelected: Boolean, focused: 
Boolean, a: A, index: Int) = {
++      class Wrapped[A](override val peer: ListCellRenderer[A]) extends 
Renderer[A] {
++        def componentFor(list: ListView[_ <: A], isSelected: Boolean, 
focused: Boolean, a: A, index: Int) = {
+         Component.wrap(peer.getListCellRendererComponent(list.peer, a, index, 
isSelected, focused).asInstanceOf[JComponent])
++        }
+       }
+-      }
+ 
+     /**
+      * Returns a renderer for items of type <code>A</code>. The given function
+@@ -55,8 +55,8 @@
+      * </code>
+      */
+     def apply[A,B](f: A => B)(implicit renderer: Renderer[B]): Renderer[A] = 
new Renderer[A] {
+-      def componentFor(list: ListView[_], isSelected: Boolean, focused: 
Boolean, a: A, index: Int): Component =
+-        renderer.componentFor(list, isSelected, focused, f(a), index)
++      def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: 
Boolean, a: A, index: Int): Component =
++        renderer.componentFor(list.asInstanceOf[ListView[_ <: B]], 
isSelected, focused, f(a), index)
+     }
+   }
+ 
+@@ -69,11 +69,11 @@
+    * @see javax.swing.ListCellRenderer
+    */
+   abstract class Renderer[-A] {
+-    def peer: ListCellRenderer = new ListCellRenderer {
+-      def getListCellRendererComponent(list: JList, a: Any, index: Int, 
isSelected: Boolean, focused: Boolean) =
+-        componentFor(ListView.wrap[A](list), isSelected, focused, 
a.asInstanceOf[A], index).peer
++    def peer: ListCellRenderer[_ >: A] = new ListCellRenderer[A] {
++      def getListCellRendererComponent(list: JList[_ <: A], a: A, index: Int, 
isSelected: Boolean, focused: Boolean) =
++        componentFor(ListView.wrap[A](list.asInstanceOf[JList[A]]), 
isSelected, focused, a, index).peer
+     }
+-    def componentFor(list: ListView[_], isSelected: Boolean, focused: 
Boolean, a: A, index: Int): Component
++    def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: 
Boolean, a: A, index: Int): Component
+   }
+ 
+   /**
+@@ -110,7 +110,7 @@
+     /**
+      * Configures the component before returning it.
+      */
+-    def componentFor(list: ListView[_], isSelected: Boolean, focused: 
Boolean, a: A, index: Int): Component = {
++    def componentFor(list: ListView[_ <: A], isSelected: Boolean, focused: 
Boolean, a: A, index: Int): Component = {
+       preConfigure(list, isSelected, focused, a, index)
+       configure(list, isSelected, focused, a, index)
+       component
+@@ -123,10 +123,10 @@
+    * that renders the string returned from an item's <code>toString</code>.
+    */
+   implicit object GenericRenderer extends Renderer[Any] {
+-    override lazy val peer: ListCellRenderer = new DefaultListCellRenderer
+-    def componentFor(list: ListView[_], isSelected: Boolean, focused: 
Boolean, a: Any, index: Int): Component = {
+-      val c = peer.getListCellRendererComponent(list.peer, a, index, 
isSelected, focused).asInstanceOf[JComponent]
+-      Component.wrap(c)
++    override lazy val peer: ListCellRenderer[Any] = (new 
DefaultListCellRenderer).asInstanceOf[ListCellRenderer[Any]]
++    def componentFor(list: ListView[_ <: Any], isSelected: Boolean, focused: 
Boolean, a: Any, index: Int): Component = {
++      val c = peer.getListCellRendererComponent(list.peer, a, index, 
isSelected, focused)
++      Component.wrap(c.asInstanceOf[JComponent])
+     }
+   }
+ }
+@@ -142,34 +142,34 @@
+  */
+ class ListView[A] extends Component {
+   import ListView._
+-  override lazy val peer: JList = new JList with SuperMixin
++  override lazy val peer: JList[A] = new JList[A] with SuperMixin
+ 
+   def this(items: Seq[A]) = {
+     this()
+     listData = items
+   }
+ 
+-  protected class ModelWrapper(val items: Seq[A]) extends AbstractListModel {
+-    def getElementAt(n: Int) = items(n).asInstanceOf[AnyRef]
++  protected class ModelWrapper[A](val items: Seq[A]) extends 
AbstractListModel[A] {
++    def getElementAt(n: Int) = items(n)
+     def getSize = items.size
+   }
+ 
+   def listData: Seq[A] = peer.getModel match {
+-    case model: ModelWrapper => model.items
+-    case model @ _ => new Seq[A] { selfSeq =>
++    case model: ModelWrapper[a] => model.items
++    case model => new Seq[A] { selfSeq =>
+      def length = model.getSize
+      def iterator = new Iterator[A] {
+        var idx = 0
+        def next = { idx += 1; apply(idx-1) }
+        def hasNext = idx < selfSeq.length
+      }
+-     def apply(n: Int) = model.getElementAt(n).asInstanceOf[A]
++     def apply(n: Int): A = model.getElementAt(n)
+     }
+   }
+ 
+   def listData_=(items: Seq[A]) {
+-    peer.setModel(new AbstractListModel {
+-      def getElementAt(n: Int) = items(n).asInstanceOf[AnyRef]
++    peer.setModel(new AbstractListModel[A] {
++      def getElementAt(n: Int) = items(n)
+       def getSize = items.size
+     })
+   }
+@@ -227,7 +227,7 @@
+     def adjusting = peer.getSelectionModel.getValueIsAdjusting
+   }
+ 
+-  def renderer: ListView.Renderer[A] = 
ListView.Renderer.wrap(peer.getCellRenderer)
++  def renderer: ListView.Renderer[A] = 
ListView.Renderer.wrap[A](peer.getCellRenderer.asInstanceOf[ListCellRenderer[A]])
+   def renderer_=(r: ListView.Renderer[A]) { peer.setCellRenderer(r.peer) }
+ 
+   def fixedCellWidth = peer.getFixedCellWidth

diff --git a/dev-lang/scala/scala-2.9.3.ebuild 
b/dev-lang/scala/scala-2.9.3.ebuild
new file mode 100644
index 0000000..fbb26b8
--- /dev/null
+++ b/dev-lang/scala/scala-2.9.3.ebuild
@@ -0,0 +1,228 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source"
+JAVA_ANT_DISABLE_ANT_CORE_DEP="yes"
+EANT_TEST_TARGET="test.suite"
+
+inherit eutils check-reqs java-pkg-2 java-ant-2 versionator
+
+MY_P="${PN}-sources-${PV}"
+SV="$(get_version_component_range 1-2)"
+
+# creating the binary:
+# JAVA_PKG_FORCE_VM="$available-1.7" USE="doc source" ebuild scala-*.ebuild 
compile
+# cd $WORDKIR
+# tar -cjf scala-2.9.3-gentoo-binary.tar.bz2 scala-2.9.3/dists \
+# scala-2.9.3//docs/TODO
+
+# In the pullJarFiles function in tools/binary-repo-lib.sh it executes find 
commands
+# to search for .desired.sha1 files, which contain sha1 hashes that are 
appended
+# to ${BURI} along with the subdirectory and filename to form the list of jar 
files
+# listed in SRC_URI.  The output of this find command can be hacked into the 
desired format:
+# find . -name \*.desired.sha1 -exec sed -e 's@\([0-9a-f]*\).*@\1@' {} \; 
-print
+# After editing it into the desired format: sort -t / -k 3 file
+
+BURI="http://repo.typesafe.com/typesafe/scala-sha-bootstrap/org/scala-lang/bootstrap";
+
+declare -a JURI=(
+       
"${BURI}/8b6ba65c8146217333f0762087fe2340d572e832/docs/examples/plugintemplate/lib/scalatest.jar
 -> ${P}-scalatest.jar"
+       "${BURI}/7b456ca6b93900f96e58cc8371f03d90a9c1c8d1/lib/ant/ant.jar -> 
${P}-ant.jar"
+       
"${BURI}/3fc1e35ca8c991fc3488548f7a276bd9053c179d/lib/ant/ant-dotnet-1.0.jar -> 
${P}-ant-dotnet-1.0.jar"
+       
"${BURI}/943cd5c8802b2a3a64a010efb86ec19bac142e40/lib/ant/ant-contrib.jar -> 
${P}-ant-contrib.jar"
+       
"${BURI}/7e50e3e227d834695f1e0bf018a7326e06ee4c86/lib/ant/maven-ant-tasks-2.1.1.jar
 -> ${P}-maven-ant-tasks-2.1.1.jar"
+       "${BURI}/2c61d6e9a912b3253194d5d6d3e1db7e2545ac4b/lib/ant/vizant.jar -> 
${P}-vizant.jar"
+       "${BURI}/12c479a33ee283599fdb7aa91d6a1df0197a52cf/lib/forkjoin.jar -> 
${P}-forkjoin.jar"
+       "${BURI}/bd8e22a955eeb82671c5fdb8a7a14bc7f25e9eb1/lib/fjbg.jar -> 
${P}-fjbg.jar"
+       "${BURI}/545b37930819a1196705e582a232abfeb252cc8d/lib/jline.jar -> 
${P}-jline.jar"
+       "${BURI}/6597e6f74113e952a4233c451c973f5ac7f2b705/lib/midpapi10.jar -> 
${P}-midpapi10.jar"
+       "${BURI}/58f64cd00399c724e7d526e5bdcbce3e2b79f78b/lib/msil.jar -> 
${P}-msil.jar"
+       
"${BURI}/5f31fab985a3efc21229297810c625b0a2593757/lib/scala-compiler.jar -> 
${P}-scala-compiler.jar"
+       "${BURI}/c52dbed261e4870a504cef24518484b335a38067/lib/scala-library.jar 
-> ${P}-scala-library.jar"
+       
"${BURI}/364c3b992bdebeac9fafb187e1acbece45644de7/lib/scala-library-src.jar -> 
${P}-scala-library-src.jar"
+       
"${BURI}/0392ecdeb306263c471ce51fa368223388b82b61/test/benchmarks/lib/jsr166_and_extra.jar
 -> ${P}-jsr166_and_extra.jar"
+       
"${BURI}/02fe2ed93766323a13f22c7a7e2ecdcd84259b6c/test/files/lib/annotations.jar
 -> ${P}-annotations.jar"
+       
"${BURI}/981392dbd1f727b152cd1c908c5fce60ad9d07f7/test/files/lib/enums.jar -> 
${P}-enums.jar"
+       
"${BURI}/b1ec8a095cec4902b3609d74d274c04365c59c04/test/files/lib/genericNest.jar
 -> ${P}-genericNest.jar"
+       
"${BURI}/be8454d5e7751b063ade201c225dcedefd252775/test/files/lib/methvsfield.jar
 -> ${P}-methvsfield.jar"
+       
"${BURI}/cd33e0a0ea249eb42363a2f8ba531186345ff68c/test/files/lib/nest.jar -> 
${P}-nest.jar"
+       
"${BURI}/77dca656258fe983ec64461860ab1ca0f7e2fd65/test/files/lib/scalacheck.jar 
-> ${P}-scalacheck.jar"
+       
"${BURI}/2546f965f6718b000c4e6ef73559c11084177bd8/test/files/speclib/instrumented.jar
 -> ${P}-instrumented.jar"
+       
"${BURI}/f174c50c4363c492362a05c72dd45b0da18fdcd8/test/pending/neg/plugin-after-terminal/lib/plugins.jar
 -> ${P}-plugins.jar"
+       
"${BURI}/d7b100ad483484b598b7cd643424bd2e33898a0d/test/pending/neg/plugin-before-parser/lib/plugins.jar
 -> ${P}-plugins.jar"
+       
"${BURI}/7e6be9e33a87194e7061f94f6be115619f91ada2/test/pending/neg/plugin-cyclic-dependency/lib/plugins.jar
 -> ${P}-plugins.jar"
+       
"${BURI}/2bda582b574287429ad5ee2e1d9a3effc88b0a5f/test/pending/neg/plugin-multiple-rafter/lib/plugins.jar
 -> ${P}-plugins.jar"
+       
"${BURI}/af91fd67ccef349e7f8ea662615e17796a339485/test/pending/neg/plugin-rafter-before-1/lib/plugins.jar
 -> ${P}-plugins.jar"
+       
"${BURI}/8cccde4914da2058dca893783c231cda23855603/test/pending/neg/plugin-rightafter-terminal/lib/plugins.jar
 -> ${P}-plugins.jar"
+       
"${BURI}/ee000286d00c5209d5644462c1cfea87fc8b1342/test/pending/pos/t1380/gnujaxp.jar
 -> ${P}-gnujaxp.jar"
+       "${BURI}/a1883f4304d5aa65e1f6ee6aad5900c62dd81079/tools/push.jar -> 
${P}-push.jar"
+)
+
+DESCRIPTION="The Scala Programming Language"
+HOMEPAGE="http://www.scala-lang.org/";
+SRC_URI="!binary?
+(      https://github.com/scala/scala/archive/v${PV}.tar.gz -> ${P}.tar.gz
+       ${JURI[@]}
+)
+binary? ( https://dev.gentoo.org/~gienah/files/dist/${P}-gentoo-binary.tar.bz2 
)"
+
+LICENSE="BSD"
+SLOT="${SV}/${PV}"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x86-macos"
+
+IUSE="binary emacs examples"
+
+COMMON_DEP="dev-java/ant-core:0
+       dev-java/hawtjni-runtime:0"
+
+DEPEND="${COMMON_DEP}
+       java-virtuals/jdk-with-com-sun:0
+       !binary? (
+               =virtual/jdk-1.7*
+               dev-java/ant-core:0
+               dev-java/ant-contrib:0
+               dev-java/ant-nodeps:0
+               media-gfx/graphviz
+       )
+       binary? (
+               || ( =virtual/jdk-1.7* =virtual/jdk-1.8* )
+       )
+       app-arch/xz-utils:0"
+
+RDEPEND="${COMMON_DEP}
+       >=virtual/jre-1.7
+       app-eselect/eselect-scala
+       !dev-lang/scala-bin:0"
+
+PDEPEND="emacs? ( app-emacs/scala-mode:0 )"
+
+S="${WORKDIR}/${P}"
+
+CHECKREQS_MEMORY="1536M"
+
+pkg_setup() {
+       java-pkg-2_pkg_setup
+
+       if ! use binary; then
+               debug-print "Checking for sufficient physical RAM"
+
+               ewarn "This package can fail to build with memory allocation 
errors in some cases."
+               ewarn "If you are unable to build from sources, please try 
USE=binary"
+               ewarn "for this package. See bug #181390 for more information."
+
+               check-reqs_pkg_setup
+       fi
+}
+
+src_unpack() {
+       # Unpack tar files only.
+       for f in ${A} ; do
+               [[ ${f} == *".tar."* ]] && unpack ${f}
+       done
+}
+
+java_prepare() {
+       java-pkg_getjars ant-core,hawtjni-runtime
+
+       if ! use binary; then
+               local a
+               for a in "${JURI[@]}"
+               do
+                       echo "${a}"
+                       local g="${a/* -> /}"
+                       echo "${g}"
+                       local j="${a/ -> */}"
+                       echo "${j}"
+                       cp -p "${DISTDIR}/${g}" "${S}/${j#${BURI}/*/}" || die
+               done
+               epatch "${FILESDIR}/${PN}-2.9.2-java7.patch"
+               # gentoo patch (by gienah) to stop it calling git log in the 
build
+               epatch "${FILESDIR}/${P}-no-git.patch"
+               # Note: to bump scala, some things to try are:
+               # 1. update all the sha1s in JURI
+               # 2. remove the 
https://dev.gentoo.org/~gienah/snapshots/${P}-maven-deps.tar.gz from SRC_URI
+               # 3. try emerge scala.  Check if it downloads more stuff in 
src_compile to ${WORKDIR}/.m2
+               # or /var/tmp/portage/.m2 or /root/.m2
+               # 4. tar up all the .m2 junk into ${P}-maven-deps.tar.gz and 
add it to SRC_URI.
+               sed -e 's@-Xmx1024M@-Xmx1536M@' \
+                       -e 's@-XX:MaxPermSize=128M@-XX:MaxPermSize=256M@' \
+                       -i "${S}/test/partest" \
+                       || die "Could not change increase memory size in 
${S}/test/partest"
+       fi
+}
+
+src_compile() {
+       if ! use binary; then
+               #unset ANT_OPTS as this is set in the build.xml
+               #sets -X type variables which might come back to bite me
+               unset ANT_OPTS
+
+               # reported in bugzilla that multiple launches use less resources
+               # https://bugs.gentoo.org/show_bug.cgi?id=282023
+               eant all.clean
+               eant -Djavac.args="-encoding UTF-8" -Duser.home="${WORKDIR}" \
+                       fastdist-opt
+               if use doc; then
+                       # The separate build for doc is to workaround this 
problem that occurs
+                       # with one "fastdist docscomp" build (still fails with 
MaxPermSize=384M)
+                       # java.lang.OutOfMemoryError: PermGen space
+                       eant -Djavac.args="-encoding UTF-8" 
-Duser.home="${WORKDIR}" \
+                               docscomp
+                       eant -Djavac.args="-encoding UTF-8" 
-Duser.home="${WORKDIR}" \
+                               docs
+               fi
+       else
+               einfo "Skipping compilation, USE=binary is set."
+       fi
+}
+
+src_test() {
+       java-pkg-2_src_test
+}
+
+src_install() {
+       cd dists/latest || die
+       local SCALADIR="/usr/share/${PN}-${SV}"
+       exeinto "${SCALADIR}/bin"
+       doexe $(find bin/ -type f ! -iname '*.bat')
+       dodir "${SCALADIR}/lib"
+       insinto "${SCALADIR}/lib"
+       pushd lib || die
+       for j in *.jar; do
+               local i="$(echo "${j}" | sed -e "s@[_-][0-9.-]*\[email protected]@")"
+               newins "${j}" "${i}"
+               java-pkg_regjar "${ED}${SCALADIR}/lib/${i}"
+       done
+       popd
+
+       dodir /usr/bin
+       for b in $(find bin/ -type f ! -iname '*.bat'); do
+               local _name=$(basename "${b}")
+               dosym "${SCALADIR}/bin/${_name}" "/usr/bin/${_name}-${SV}"
+       done
+
+       pushd man/man1 || die
+       for i in *.1; do
+               newman "${i}" "${i/./-${SV}.}"
+       done
+       popd
+
+       #sources are .scala so no use for java-pkg_dosrc
+       if use source; then
+               dodir "${SCALADIR}/src"
+               insinto "${SCALADIR}/src"
+               doins src/*-src.jar
+       fi
+
+       local docdir="doc/${PN}-devel-docs"
+       dodoc doc/README ../../docs/TODO || die
+       if use doc; then
+               java-pkg_dojavadoc "${docdir}/api"
+               dohtml -r "${docdir}/tools" || die
+       fi
+
+       use examples && java-pkg_doexamples "${docdir}/examples"
+}

Reply via email to