diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use.mask b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use.mask index 57ed8872d4..672dbe1d30 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use.mask +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use.mask @@ -3,3 +3,6 @@ dev-vcs/git cvs perl subversion # not needed, requires cython dev-lang/yasm python + +# not needed, requires dev-lang/python-exec +sys-apps/util-linux python diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/Manifest index e4c47c83e5..70de86c45b 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/Manifest @@ -1 +1,29 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +AUX crypto-loop.confd 412 SHA256 188c945e5e6c54cb14874057c625ff30b72fb33d3d5648e53de2f231a3375600 SHA512 fdcb4e3a267afd1bbc836e368918da7edc709fc8a61e45b53ec3694a79722ebfda0f3bcbeb053c665a6552241c5a915b76f142bff07757a7c018446000dd7bd0 WHIRLPOOL 7e0c95f46bc7c5474f950a0da93d9eefda7962385e1f425f2ae3dd931f7119fb5efa5ca0a470706bdbde661a001bb3797cf6e5f2735f346efb69aed5d66146e7 +AUX crypto-loop.initd 1729 SHA256 b8329250c865e79a1e761d713c2270c99d5fe96e0d5a7ca646946fab65c4b810 SHA512 89983743c2277c2c88e7f77cd38ce0e2cc56255f7f314dcce74c5cbffe607323f888d00ef115a660ec6c52802b347d8e0d8cc0a411644f20118d776c88f9725b WHIRLPOOL 3f3256788ba61e2ce147b38144b739c4f7d0ed7bc1b8936b1bf4f33d4a0bce4cd17a49d81a573009601a597fff081170845b5cdf400dc8b7160022943538c7d9 +AUX util-linux-2.24-fix-fdisk-on-alpha.patch 416 SHA256 9979cc2136d5d321c4dec08b8c42c419bc8e8a63299fa83a1174e9aaac5a3fb7 SHA512 69f77774dfe58ae56d21c20cb45ae494a8948426d33275cd790de1e290a3592f5bf0645c3ceaf64f344422de7259e6edf6ca5ff744ce9a9030b59c30d9637126 WHIRLPOOL f1b02433071c32aa815c9e6daa19c25d543126fe8a794024efbdf6732ec7b1963310d792174a630f7acd0583ca9e18df8ef86a40d495104023aca2fe14e9e41e +AUX util-linux-2.24-last-tests.patch 4513 SHA256 61be31970f0aced6a8423e1f0ab35751f0dcd9e24265eb3221a8e0e14cae731f SHA512 f9be688b0a074ca3e93139fcd78c4a28b892b9cafedc70d92b08f695131631349044d1eb42b4534db9c09f656e503d400dc59b220234668cba206888ad43cd1a WHIRLPOOL fa1057d0b9d99a92f53975c468e7488d47b2a801d42141233c88b01a9bde66ae489cf862505f3eadfb6c7e99172d202e37ec4bc5cd7d97e2fdc6e043df3335f9 +AUX util-linux-2.24-skip-last-tests.patch 1003 SHA256 5ccbab17e26cc9b592b534b9b3e72b6a23dbdd04718f6360cb7d8886221ffa4d SHA512 9d89530f203c8a50e1def8164669b93ce1c1509d4da112c9db56cea9e29288c32964978e06ababa8e6c00222813d7a99bc35e0a7cfc17d8cd63804b629c9165c WHIRLPOOL 0e7c1cd6a4bdc94fdad3582f1855992d375238438d165627d60cddda8d1314c759b6e34171c5d00890956acdf9641ad5bf955f980fd142545b1ef468caa90be6 +DIST util-linux-2.22.2.tar.xz 3100832 SHA256 929b517fa39b16a61ec536514e08940a381b92befc629d0348e3097920dd2f12 SHA512 4b6ae8e6091f4f3c21c1b1d361660767380c4965e40e2222724122b60cc1be1b10149b86f2559b3b72f42675fb790bc3ea86e159233d00c44ee39ec9373317c1 WHIRLPOOL 2e784e92abf4a055c6f0bf55914b0a17d21ac370eb30df2b6d68c0521743ec5306603d9ec60ac0bee75c51f20b2ca8cd76cdccf6256e5098ec42f16359a8b5d7 DIST util-linux-2.23.2.tar.xz 3383052 SHA256 7c4042bd91f621250d7b3b2f34e3b11921a32c7f080c149dcc0c7ce62a8a7cac SHA512 dcccf8e3a3892a2ac98eea0a7e1c24c1b612ef10b466a8b34d8ebe6c2d49778bc9e8bfb1866ce0daa6db387396659120c290c5b36f47864c4d513b5ed15f9618 WHIRLPOOL 525d1043b985fc8238a023caf79c5ebf8f105e9e2c3730b70f19f2e8e0ecbf4984ab6a6a1a6edc2bb41f0b2067e6a788a0c5fb41ad00e84bf0c1bfd5b53cf7f6 +DIST util-linux-2.24.1.tar.xz 3543692 SHA256 835eb6232cfab0118ef2e4fd649de0ba9f5bd1b8cbf9a7d4d84594541dec8410 SHA512 5636e1c57bd57954518e90ff0f079810cc2927f52bb925dde556ce2744a088577f8adbc19c19b2bd079efd253406767faa44d1de5f557e024762522e647f044b WHIRLPOOL 25862a85788eb1c275c7e06f3d2be8e6a9605811665e06a4b21d1e274fc4a5e19dd03e5c52061ee5d98ce8c86ba757a7f8076683edb603ad0c43c05ab5e52a51 +DIST util-linux-2.24.2.tar.xz 3586580 SHA256 1243d6c07f1c5b38aa4c3814c81a71c24cba7dafe08942916bf216a90a460ff0 SHA512 a0c03876ef19fa09e434e3e5362fb3f3e0a254b3b39a623ac7a9a207d06afce00366792244ed0fac86931f8340c046620660f33c3444a07a12037182fc191240 WHIRLPOOL 4b8185e1832145c050a8aa0761ae017d846ed58cd7e07710e4c32bf92a8f6e530bddb56dab70c8025eddb4cafafed79e658b0aced3a190b61b508078a438a9ed +EBUILD util-linux-2.22.2.ebuild 3295 SHA256 3756908b5207220298b26b2c0b7b610b980f1930b407477e19d7963bb47bb2d4 SHA512 89ae42d872f9c42499b0a69c869751192925a0c5c1b1c4a9e1300eef9805dd85308cdbd3fee72da57403aab6048bc99f35be7500ba8eb59d59eb7bf9481f4be8 WHIRLPOOL d623c111441dfc979990995733b9c79ab69e1d54e34df9e1b14869af6d74811de7da8a09d58062a7cdfc5cde49d608f03e9e42af030e3c41712fe4ca0408b614 +EBUILD util-linux-2.23.2-r2.ebuild 3565 SHA256 4c94a28f1200b2eb8aae3795b41f2b2efe23d08a0d36ae8501c8f5873841ce91 SHA512 2cd14a0194d01db5ee0a284556dfe04739b4c7e0420cd2921108a32212d7f027b51b545e67c3148c42f024764f8bd23c3ad81f4cfca69784714ac5baea07c8ef WHIRLPOOL fac7b406e4143df4e56ffd4e72bec3732c3b84703be42b4f76b91d13b61f97108c4fdfa356baadd328caef0c5f40a1c420a74340998edf2001d65411b79aeae2 +EBUILD util-linux-2.24.1-r2.ebuild 4130 SHA256 a2bc50f994ff17185a3680841110ab1a320f51b3ff96291ac28b4d0440761895 SHA512 1253cb5bb86ad131ae32817bc45924804a8e48819a45314f75117fb1035f24100edd2b61a9241cb9bea0855c2877fd6fa51d56ae8dd8014ccac711efe9d04172 WHIRLPOOL 7b98c36037379421ed154c0e86f5fe308c0dc8458df01b9d87dc0110f4053292b16ce6d96949e2f5f3f315dea1a5d538b8e713ac52e2eca40cffabe75f3b7976 +EBUILD util-linux-2.24.1-r3.ebuild 5152 SHA256 a633ca41cd7c268dd69851eab1c3befe8b58f62a77b9f5b69c3fb1fa4cba1ed7 SHA512 11a77703a5aad1ddcb4690bf21520c4d619ceac0c2e3ecda456aa2bf12e96ceb120a0b6ecfac26a20b3e4d8d2caf206970e810873c8c67ec1224d6c8441fff6b WHIRLPOOL 54996623a7433e6d8eb693c58e8411752b4b6cf70abad25410ab6b9f2cc293fcc4c0283c42b603fc09a62be7442f974f54f60f4612bb10b43898963a73d9f002 +EBUILD util-linux-2.24.2.ebuild 5092 SHA256 d8172d92c5e27b2b68e43ce3239e9bad82500368c684abccdfe7f64abddc2eb8 SHA512 ed4460b145138e8861c76f00192cdae2e20fe06cf7ba4e78477d3b3d612a7f031e2aace84f9474b14a40e89c547599515daee9c23e05f91cde10eb8e7d1b9f8b WHIRLPOOL b10b111f8b57945811f6f8be3e7f82e1ca57556a977cd450abde13b1416c07c75c5d12570e82ffaff723b6e81074402977361b73662f840180a08093f4d26da3 +EBUILD util-linux-9999.ebuild 4878 SHA256 ed0234c6ae85ed64d9d105eef4dd83774704c5dfddb888bc1c209245b67bde33 SHA512 962fa4b76ca001a14e1442e2eba51988796640a50a5ebd574b7dca544c1aa37d8195c9452342b1eda5dd9c126f2550977539518d65fa9cc3954741cf6476dbe6 WHIRLPOOL d00bfbf0a201c68acc313eb6b72c3ec1a5fa8db549eff3f6ad1ad5ac9b5a6c2e01d700b09caf89b93684706bddd3646f4851ffca3eba98896b250e3829ca4180 +MISC ChangeLog 73593 SHA256 127450dc328c9806bcc446b371dc61a6fc05d90fcc861db1ca3427ebafc8c9db SHA512 0e816cb98707b3a542162782af1cd41e24e95b6a8028ea3965cd4ecfe362eeb48666f48e3992d35099293a73096ed31a4a71dd6f3cee41a2e57e744a6c5f6e37 WHIRLPOOL e1a3b89faba6b233889c4402f32df9a141ed67917343276d02c757f127d826df8cc1ad3c1bae0efbb718e60704bcb88f88a287ba916e0e3cd65ab84e34cdac5c +MISC metadata.xml 1019 SHA256 62affc682c5c13f06f677085089543d447e7a94315cbc8f8291f8ff771e68af0 SHA512 345eb075280ced11dd52ceb37ca3f971953c00ed6a47c281281c0e8f197863a94b8c0dd7781ef91b85d53696b2b877cdbaa60a39cca1bc3c39c10f160b148e11 WHIRLPOOL 41204aed1d5a7e0a1ebcf36ffb28d88eba79d83162c134e09e02eec490d54cf2ae22b2896a2dee73dca6ad7a7d411d8f545c23581c55e90e252f80b4722f1a7a +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iJwEAQEIAAYFAlO9kbkACgkQG9wOWsQutdYbnQQAjRLy7KEGd30INA5SVxSpHQKi +N0QVHxgMtB8p2jRR1Dmnz+uJVAxF9+9PIGzG7MXDet78lA2glh4MWTwQAwWeZehp +lzjArk+GRh4adSuqOSVBUeGMikQZz0+7Wr+pftsd4EOErwAXEZZ3A8yo5yp6Dnsf +eHFZNt2SAJ2PpnWOzJM= +=B5qc +-----END PGP SIGNATURE----- diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/crypto-loop.confd b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/crypto-loop.confd new file mode 100644 index 0000000000..6a88434620 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/crypto-loop.confd @@ -0,0 +1,9 @@ +# /etc/conf.d/crypto-loop: Configuration file for /etc/init.d/crypto-loop + +# More info can be found in the init.d script + +# Specify loopback configurations here. The format of this file is +# shown in the following commented-out example. One line per loopback +# configuration. For possible hash values, see `man hashalot`. + +# loop=/dev/loop0 hash='' cipher=serpent keysize=256 device=/dev/system/test other='' diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/crypto-loop.initd b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/crypto-loop.initd new file mode 100755 index 0000000000..853bae2756 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/crypto-loop.initd @@ -0,0 +1,70 @@ +#!/sbin/runscript +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/util-linux/files/crypto-loop.initd,v 1.4 2008/10/26 03:16:48 vapier Exp $ + +depend() { + if [ -x /etc/init.d/root ]; then + need root + else + need checkroot + fi + need modules + before localmount +} + +start() { + local status="0" + + ebegin "Starting crypto loop devices" + + if [ -e /etc/conf.d/crypto-loop ] ; then + egrep "^loop" /etc/conf.d/crypto-loop | \ + while read loopline ; do + eval ${loopline} + + local configured=$(awk -v MOUNT="${device}" \ + '($2 == MOUNT) { print "yes" }' /proc/mounts) + + if [ "${configured}" != "yes" ] ; then + einfo " Loop ${loop} on device ${device} (cipher ${cipher}, key size ${keysize}): " + + if [ -n "${hash}" ] ; then + /usr/sbin/hashalot -n ${keysize} ${hash} /dev/null) ; do + losetup ${loop} > /dev/null 2>&1 + if [ $? -eq 0 ] ; then + ( umount ${loop} || swapoff "${loop}" ) >/dev/null 2>&1 + if ! /sbin/losetup -d ${loop} > /dev/null 2>&1; then + ewarn "Failure deconfiguring ${loop}." + status=1 + fi + fi + done + ewend ${status} +} + + +# vim:ts=4 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch new file mode 100644 index 0000000000..f01a55d6e6 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch @@ -0,0 +1,13 @@ +--- libfdisk/src/bsd.c.orig 2014-06-11 10:15:47.000000000 +0200 ++++ libfdisk/src/bsd.c 2014-06-11 10:16:18.000000000 +0200 +@@ -787,8 +787,10 @@ + case 0x06: /* DOS 16-bit >=32M */ + case 0xe1: /* DOS access */ + case 0xe3: /* DOS R/O */ ++#if !defined (__alpha__) + case 0xf2: /* DOS secondary */ + return BSD_FS_MSDOS; ++#endif + case 0x07: /* OS/2 HPFS */ + return BSD_FS_HPFS; + default: diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch new file mode 100644 index 0000000000..77cf478e39 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch @@ -0,0 +1,86 @@ +https://bugs.gentoo.org/501408 + +From 3c76515abd2e80dc1da03041eb868b8c1e596fb1 Mon Sep 17 00:00:00 2001 +From: Sami Kerola +Date: Sun, 16 Feb 2014 23:54:18 +0000 +Subject: [PATCH] tests: align last.1 with recent phantom detection + +None existing account is not still-logged-in but gone mysteriously, +assuming wtmp logout markup is missing. + +Signed-off-by: Sami Kerola +--- + tests/expected/last/last | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/tests/expected/last/last b/tests/expected/last/last +index 2ff5cc1..dfb140b 100644 +--- a/tests/expected/last/last ++++ b/tests/expected/last/last +@@ -1,6 +1,6 @@ + ~~~ basic output ~~~ + rick long never-gonna-logo Thu Jan 1 00:00 - 03:14 (24855+03:14) +-torvalds linux hobby Mon Aug 26 00:57 still logged in ++torvalds linux hobby Mon Aug 26 00:57 gone - no logout + reboot system boot system-name Wed Aug 28 18:00 still running + reboot system boot system-name Wed Aug 28 16:00 - 17:00 (01:00) + IPv4 root dns-server Wed Aug 28 13:00 - 14:00 (01:00) +@@ -17,7 +17,7 @@ accounti foo nine Wed Aug 28 03:00 - 04:00 (01:00) + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ include system ~~~ + rick long never-gonna-logo Thu Jan 1 00:00 - 03:14 (24855+03:14) +-torvalds linux hobby Mon Aug 26 00:57 still logged in ++torvalds linux hobby Mon Aug 26 00:57 gone - no logout + reboot system boot system-name Wed Aug 28 18:00 still running + shutdown system down system-name Wed Aug 28 17:00 - 18:00 (01:00) + reboot system boot system-name Wed Aug 28 16:00 - 17:00 (01:00) +@@ -47,16 +47,16 @@ IPv4 root Wed Aug 28 13:00 - 14:00 (01:00) a.root-servers.net + + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ show ip ~~~ +-torvalds linux 128.214.205.14 Mon Aug 26 00:57 still logged in ++torvalds linux 128.214.205.14 Mon Aug 26 00:57 gone - no logout + + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ no host ~~~ +-torvalds linux Mon Aug 26 00:57 still logged in ++torvalds linux Mon Aug 26 00:57 gone - no logout + + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ full times ~~~ + rick long never-gonna-logo Thu Jan 1 00:00:00 1970 - Tue Jan 19 03:14:07 2038 (24855+03:14) +-torvalds linux hobby Mon Aug 26 00:57:08 1991 still logged in ++torvalds linux hobby Mon Aug 26 00:57:08 1991 gone - no logout + reboot system boot system-name Wed Aug 28 18:00:00 2013 still running + reboot system boot system-name Wed Aug 28 16:00:00 2013 - Wed Aug 28 17:00:00 2013 (01:00) + IPv4 root dns-server Wed Aug 28 13:00:00 2013 - Wed Aug 28 14:00:00 2013 (01:00) +@@ -73,7 +73,7 @@ accounti foo nine Wed Aug 28 03:00:00 2013 - Wed Aug 28 04: + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ no time ~~~ + rick long never-gonna-logo (24855+03:14) +-torvalds linux hobby logged in ++torvalds linux hobby - no logout + reboot system boot system-name running + reboot system boot system-name (01:00) + IPv4 root dns-server (01:00) +@@ -90,7 +90,7 @@ accounti foo nine (01:00) + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ iso-8601 time ~~~ + rick long never-gonna-logout 1970-01-01T00:00:00+0000 - 2038-01-19T03:14:07+0000 (24855+03:14) +-torvalds linux hobby 1991-08-26T00:57:08+0000 still logged in ++torvalds linux hobby 1991-08-26T00:57:08+0000 gone - no logout + reboot system boot system-name 2013-08-28T18:00:00+0000 still running + reboot system boot system-name 2013-08-28T16:00:00+0000 - 2013-08-28T17:00:00+0000 (01:00) + IPv4 root dns-server 2013-08-28T13:00:00+0000 - 2013-08-28T14:00:00+0000 (01:00) +@@ -115,7 +115,7 @@ accounti foo nine Wed Aug 28 03:00 - 04:00 (01:00) + wtmp begins Wed Aug 28 03:00:00 2013 + ~~~ present ~~~ + rick long never-gonna-logo Thu Jan 1 00:00 - 03:14 (24855+03:14) +-torvalds linux hobby Mon Aug 26 00:57 still logged in ++torvalds linux hobby Mon Aug 26 00:57 gone - no logout + runlevel foo one Wed Aug 28 11:00 - 12:00 (01:00) + + wtmp begins Wed Aug 28 03:00:00 2013 +-- +1.8.5.5 + diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch new file mode 100644 index 0000000000..5148053d27 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch @@ -0,0 +1,41 @@ +From 6b55612b9ad1193a042f3c3a1d9216e63b0d2907 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Sun, 22 Dec 2013 18:17:15 -0500 +Subject: [PATCH] tests: last: skip when last is not enabled + +References: https://bugs.gentoo.org/489794 +Signed-off-by: Mike Frysinger +--- + tests/ts/last/ipv6 | 2 ++ + tests/ts/last/last | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/tests/ts/last/ipv6 b/tests/ts/last/ipv6 +index 8e2b01e..60b72bd 100755 +--- a/tests/ts/last/ipv6 ++++ b/tests/ts/last/ipv6 +@@ -18,6 +18,8 @@ TS_DESC="last ipv6" + . $TS_TOPDIR/functions.sh + ts_init "$*" + ++[ -x $TS_CMD_LAST ] || ts_skip "last not enabled" ++ + export LANG=C + export TZ=GMT + +diff --git a/tests/ts/last/last b/tests/ts/last/last +index 4ad38cb..83b7f8d 100755 +--- a/tests/ts/last/last ++++ b/tests/ts/last/last +@@ -18,6 +18,8 @@ TS_DESC="last" + . $TS_TOPDIR/functions.sh + ts_init "$*" + ++[ -x $TS_CMD_LAST ] || ts_skip "last not enabled" ++ + export LANG=C + export TZ=GMT + +-- +1.8.4.3 + diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/util-linux-2.24.2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/util-linux-2.24.2.ebuild new file mode 100644 index 0000000000..50d767042c --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/util-linux/util-linux-2.24.2.ebuild @@ -0,0 +1,175 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/util-linux/util-linux-2.24.2.ebuild,v 1.4 2014/06/18 20:46:09 mgorny Exp $ + +EAPI="4" + +PYTHON_COMPAT=( python2_7 python3_{2,3} ) + +inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \ + python-single-r1 multilib-minimal + +MY_PV=${PV/_/-} +MY_P=${PN}-${MY_PV} + +if [[ ${PV} == 9999 ]] ; then + inherit git-2 autotools + EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git" +else + KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux" + SRC_URI="mirror://kernel/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz" +fi + +DESCRIPTION="Various useful Linux utilities" +HOMEPAGE="http://www.kernel.org/pub/linux/utils/util-linux/" + +LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain" +SLOT="0" +IUSE="bash-completion caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode" + +RDEPEND="!sys-process/schedutils + !sys-apps/setarch + !=sys-libs/ncurses-5.2-r2 ) + pam? ( sys-libs/pam ) + python? ( ${PYTHON_DEPS} ) + selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] ) + slang? ( sys-libs/slang ) + udev? ( virtual/udev ) + abi_x86_32? ( + !<=app-emulation/emul-linux-x86-baselibs-20140406-r2 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32] + )" +DEPEND="${RDEPEND} + virtual/pkgconfig + nls? ( sys-devel/gettext ) + test? ( sys-devel/bc ) + virtual/os-headers" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}/0002-lsblk-add-PARTTYPE-tag.patch" + + if [[ ${PV} == 9999 ]] ; then + po/update-potfiles + eautoreconf + fi + epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408 + # http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9237 + epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch + find tests/ -name bigyear -delete #489794 + elibtoolize +} + +lfs_fallocate_test() { + # Make sure we can use fallocate with LFS #300307 + cat <<-EOF > "${T}"/fallocate.${ABI}.c + #define _GNU_SOURCE + #include + main() { return fallocate(0, 0, 0, 0); } + EOF + append-lfs-flags + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \ + || export ac_cv_func_fallocate=no + rm -f "${T}"/fallocate.${ABI}.c +} + +multilib_src_configure() { + lfs_fallocate_test + export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486 + ECONF_SOURCE=${S} \ + econf \ + --docdir="/usr/share/doc/${PF}" \ + --enable-fs-paths-extra=/usr/sbin:/bin:/usr/bin \ + $(multilib_native_use_enable nls) \ + --enable-agetty \ + --with-bashcompletiondir="$(get_bashcompdir)" \ + $(multilib_native_use_enable bash-completion) \ + $(multilib_native_use_enable caps setpriv) \ + $(multilib_native_use_enable cramfs) \ + $(multilib_native_use_enable cytune) \ + $(multilib_native_use_enable fdformat) \ + --with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \ + --disable-kill \ + --disable-login \ + $(multilib_native_use_enable tty-helpers mesg) \ + --disable-nologin \ + --enable-partx \ + $(multilib_native_use_with python) \ + --enable-raw \ + --enable-rename \ + --disable-reset \ + --enable-schedutils \ + --disable-su \ + $(multilib_native_use_enable tty-helpers wall) \ + $(multilib_native_use_enable tty-helpers write) \ + $(multilib_native_use_enable suid makeinstall-chown) \ + $(multilib_native_use_enable suid makeinstall-setuid) \ + $(use_with selinux) \ + $(multilib_native_use_with slang) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with udev) \ + $(tc-has-tls || echo --disable-tls) +} + +multilib_src_compile() { + if multilib_is_native_abi; then + default + else + # build libraries only + emake -f Makefile -f - mylibs \ + <<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)' + fi +} + +multilib_src_test() { + multilib_is_native_abi && emake check +} + +multilib_src_install() { + if multilib_is_native_abi; then + default + else + emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \ + install-pkgconfigDATA install-uuidincHEADERS \ + install-nodist_blkidincHEADERS install-nodist_mountincHEADERS + fi + + if multilib_is_native_abi; then + # need the libs in / + gen_usr_ldscript -a blkid mount uuid + + use python && python_optimize + fi +} + +multilib_src_install_all() { + dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*} + + # e2fsprogs-libs didnt install .la files, and .pc work fine + prune_libtool_files +} + +pkg_postinst() { + if ! use tty-helpers; then + elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers." + fi + + if [[ -z ${REPLACING_VERSIONS} ]]; then + elog "The agetty util now clears the terminal by default. You" + elog "might want to add --noclear to your /etc/inittab lines." + fi +}