diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-09-25 19:33:39 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-09-28 08:31:11 +0100 |
commit | ad6182343997a405079870a2fe91c4e0c6b94595 (patch) | |
tree | 4aa7483cd0ad7de54338afc8e7971417abe1dd81 /dev-libs/libcgroup | |
parent | e8f81810baa21f490d6910e8e2d424546b72a333 (diff) |
gentoo resync : 25.09.2019
Diffstat (limited to 'dev-libs/libcgroup')
-rw-r--r-- | dev-libs/libcgroup/Manifest | 7 | ||||
-rw-r--r-- | dev-libs/libcgroup/files/cgconfig.confd | 4 | ||||
-rw-r--r-- | dev-libs/libcgroup/files/cgconfig.initd | 117 | ||||
-rw-r--r-- | dev-libs/libcgroup/files/cgconfig.service | 17 | ||||
-rw-r--r-- | dev-libs/libcgroup/files/cgred.confd | 17 | ||||
-rw-r--r-- | dev-libs/libcgroup/files/cgred.initd | 41 | ||||
-rw-r--r-- | dev-libs/libcgroup/files/cgrules.service | 16 | ||||
-rw-r--r-- | dev-libs/libcgroup/libcgroup-0.41-r6.ebuild | 108 |
8 files changed, 144 insertions, 183 deletions
diff --git a/dev-libs/libcgroup/Manifest b/dev-libs/libcgroup/Manifest index 68c10eb12d26..f80c5134697d 100644 --- a/dev-libs/libcgroup/Manifest +++ b/dev-libs/libcgroup/Manifest @@ -1,15 +1,14 @@ -AUX cgconfig.confd 131 BLAKE2B f27cde041032bf921c76b3911283021c5106d1cca47455fe72b95d83a07e98438f832bf0e3c2b78ac2b69b042e1c0e0c10bfa3d6472570c6f5847d28556e6b6b SHA512 9bb289c20c3230414888e82be2b7a1389ac652143bcbbc746d0731c46a2f1404b4bc8154c90b59ebc53520107fe2f04c9eb5df742451887947b8a3b7a4c31f00 AUX cgconfig.confd-r1 205 BLAKE2B e68daec204e2daa5103bcba2e2e40cd93c9e3d97d85927f21f84443efb8281bdb2464f75f0b9e33244557d4b119e32d774191c20a3e7d50752a2df2204cfda5d SHA512 f5f1d0d09266417276f93434ad47116452e1ab18d736ce08e7c63f797b2d2180a490cdef1f3dd9d960c88426f1dc5b12dcf72b09de765d52d281feceffe7550d -AUX cgconfig.initd 2923 BLAKE2B 5a7ba5cb3ce260dae0b20a428e6d8787d8749e14109273610a329f9d1daa15ed3d641e246e32e7721aa3c186ecc75ebe7f87dbf3a5f1fc3ece1b8da3755c64a4 SHA512 705b6df9ac93e8978dc697c497344096cad2b01961eb5c7b4a3ab89e80dc904b5d0076ad3b1e0478e1a86bcffe37b37591f001efcb21eb6f8b68cd14edc7c006 AUX cgconfig.initd-r1 1052 BLAKE2B 6da1fed6741a9f21e31506f6306a5a10d8e82ed1e65ed0b53e6ee466d5496b25f5aaf521a037755d6ee87bb4c520a7915880f040ba99dd6a0f8f279d913bb810 SHA512 66303411c98355b1fe5e0eb58b797887f9971604902afb2f95738b64b1fd9dd42fc8cb22c65e10c264d68ef2d7cd85f58247fed08d650ccbe0a5756ec780ea3c -AUX cgred.confd 485 BLAKE2B 93bb177b184deb718836e0abba411fd6f007cf376bebe2babe8f6567df3255ee3316c2b7a2e14a5a31f141b2dcf0fa55c199ebc54a795e125f00dcfcd2155752 SHA512 871b7e7df26bf6b4164d5ec04e9998b0bd3f354e75ba2306b330e382eadd38ad044f85cfaa122a5a2e600fb4f39e1a7fe7778551a05dfc3e0ae095621c965996 +AUX cgconfig.service 442 BLAKE2B bb7b06c4eafeffde3b712589f3f3840b38bf8b9236272782cbfedd4272d935c2e69b8297593057ba6d1c8a49844259a4975fe0a2512c89fd607446fb7a6f2fe6 SHA512 77b0b1c0305ae6d3bc301285c4c8f6f0e22ff81fea8bcd42f1c0f9b0c828cdc0f82eec9389fe4de6ebd5e3303609ae6d4ee854560bf2fe2dd5c2b52441f64177 AUX cgred.confd-r2 160 BLAKE2B 17bc7c1ce54d490071324a670ecb150027e322c938f305930330a8505af3b9f332e8a80b25ae65a363319c2e14b071a4544713179cbf6882d92063e744bf4bda SHA512 5b83b2413e36184671cfd7d654fa0b06940360790aed3c235cdb8eb168c17a703c1a72654fdbf57459ac493f79fd87e90deb33e89297929ca5f681dfa80a7078 -AUX cgred.initd 950 BLAKE2B eb42533e40d33af728a460bb495a62a39662cea47edbb2223c880092ea9b792423ad4a1873a2b14846de8640bad575bb7bd5196bddaa565745487cc2fe658cf5 SHA512 cfa70c25c40c29d3dc1249f808f58365fa5ec09f4918edd971ac088a33a810cefa15c7ccf5b7ce75813301b104bf5fad23f752363600c10af7f1ecbb30f4aa15 AUX cgred.initd-r1 457 BLAKE2B 6d2a79af91daaf77be9530d69473aa8b67c24fc7be2366486b2c2e82ae8962160576d8d778c5ac817aeb17a9371b1db0127853a4c431844d268a9e371755a8f1 SHA512 2ef66c697b56e4c29c4a224480a6a7270205359d254c07847e57feb8d5e219cd0d0c2c4f6161f9e6c001f14a9419f9be18b3fd1750d7b4e5a0082985821062bc +AUX cgrules.service 345 BLAKE2B 493c16a8f384985e3dbac135b7b2d9ecbe001cc088ca5adde57f7a50923d8ead3c92a69efac378aa3204b91c0f11df87ff2e2501021f8d7c0c628466c4958844 SHA512 89ce81191bf75ec584380105bc318df486e79e85941eabcc005c7b0163a608e3551c08f59701701529471019f8c1bd97b4bbc86491dd15fb3cc289b114bca4e7 AUX libcgroup-0.41-remove-umask.patch 975 BLAKE2B f9f377e840b972733f0aa5afb101d01aca286a2dbe779ddb435b57283b745fcf2dd00a6dfd59964523e45eb031decace34264c4ec323ca9cb12c138f23285fac SHA512 2c601724362492311b15654328478848d5277597a1301463b6dc774ad254c20d698beeb9ba383996187f485699e68a11bc54e2a775c17d4bede28b5ff599c678 AUX libcgroup-0.41-reorder-headers.patch 953 BLAKE2B dcc4936227cfc67ddc0c32b207403326236b22a05814349385833a887598014277e99744825e4d6ec0e64ccdf35bb19b470d685d5f2ebf1957130ea1af071a01 SHA512 4f8d4b49668dc0ddae373ab922422a0e933cb6c46af05d01da498c657b5a8df1ea62e644b8ac3db7e7818d33ba21c06d1902b7915f6aaf76f8f96107515433d4 AUX libcgroup-0.41-replace_DECLS.patch 5193 BLAKE2B d22bded7e356b31e9f1e8ceec50f7987311f36453ffd13acaf48e95eacce06052c19a89aedfbcd068218a5fdefc26e5aec737d1c00576f25fdef0b1fe658513a SHA512 c7601810e491764c30e8adfadd65e1b1b578a07af24df62cc9a7b291622d806fc196a98e01957b5acbd3bca072617bd0ff54cae200a8e6c21b5cca4d18cd45db AUX libcgroup-0.41-replace_INLCUDES.patch 3064 BLAKE2B 1947d306117beb62dba48d46b9e3caa7e2d5195c6d661b2d061c982220b7d3d92d42d4ef23172e34bf32be2e54b6c82c531aa839432e0489c2abe463b93e25f4 SHA512 17c8fa471347da4973969b954f966501d54889050766dfdd225235dd4539bb4249d57e719fa7a894aadc2e0f7296d233c89c44c96291a9266c958ca3a319541b DIST libcgroup-0.41.tar.bz2 500120 BLAKE2B 3410b430aa58613b5b9abedba05bef99b1b8a1fd619d55fb446ab951e052a336efc918879217055bceee886a03d97c3ff46028a87e8231212653a886cfb80521 SHA512 1aedb02cd2ce3bc2e2a328a247a92976ad0978ca4d3aee4eb671fbcc6bb270348efc78dcf84f27fc500f8bfb9bb57c7d6e4d429ef2bc69e4e5118b7cd895a6bd EBUILD libcgroup-0.41-r5.ebuild 2424 BLAKE2B 3c6c60afca6aa1e70ea5f19cb2b3622fee78859ede6b9e5d7d515b4689524acb503f56bff562db03289926c2b5ec8e60734722c36c25a0de6fd1c20d81640caf SHA512 8a30f0acc708652af2e772d6869f80e03e5f71fd7920b65c89846f4520ff77493ee6459eed50ae23d1cfbbcd9953ee7fd1ef0c48d65846d1dbededbba3d7fee7 +EBUILD libcgroup-0.41-r6.ebuild 2664 BLAKE2B 16da1e437cd2ed2000e062f2d5f13b73b80b9aef961938b9f237718de2f23406562b42a34d4ba997343aaf113b7264114ef7d424fa95789d38b1c43a95dac50f SHA512 576bc5ba764eeda2f0ab063a68d7514492755e8b5ebb2bfbe4f0afac98952df66cba2d6cf65e102f9e16c61efc5ca0781d7d647a3480f207ef894680d72e06ae MISC metadata.xml 700 BLAKE2B 4638c1287da7cb72c04f77ab1f8c9a46888f0c45194a1221fcc03e2f0ea0b148e7edd4608d2bf61a527dcd8f1701f91a123ecde3118b5f93bad67e56afd6e714 SHA512 faddc728ee6971cbf5e52bc89999f3bec9d312fe04d2c876a2ee69e6533ca1ba85350d0b504bff0c7da668b58a3531606fb3d67cb4f6925c08f65df2190ec0c1 diff --git a/dev-libs/libcgroup/files/cgconfig.confd b/dev-libs/libcgroup/files/cgconfig.confd deleted file mode 100644 index e41730ae0ea5..000000000000 --- a/dev-libs/libcgroup/files/cgconfig.confd +++ /dev/null @@ -1,4 +0,0 @@ -# /etc/conf.d/cgconfig: config file for /etc/init.d/cgconfig - -# Configuration file location -#CONFIG_FILE=/etc/cgroup/cgconfig.conf diff --git a/dev-libs/libcgroup/files/cgconfig.initd b/dev-libs/libcgroup/files/cgconfig.initd deleted file mode 100644 index f182b92ff843..000000000000 --- a/dev-libs/libcgroup/files/cgconfig.initd +++ /dev/null @@ -1,117 +0,0 @@ -#!/sbin/openrc-run -# -# Control Groups Configuration Startup -# -# This script runs the cgconfigparser utility to parse and setup -# the control group filesystem. It uses ${CONFIG_FILE} -# and parses the configuration specified in there. -# -CGCONFIGPARSER="/usr/sbin/cgconfigparser" -CGROUP_FS="cgroup" -CONFIG_FILE=${CONFIG_FILE:-"/etc/cgroup/cgconfig.conf"} -MOUNTS_FILE="/proc/mounts" -RULES_FILE="/etc/cgroup/cgrules.conf" - -# Support multiple mount points -MAX_INDEX=0 -declare -a MOUNT_POINTS MOUNT_OPTIONS - -move_all_to_init_class() { - local i - for i in $(seq 1 ${MAX_INDEX}); do - cd ${MOUNT_POINTS[$i]} - - if grep -qw ${MOUNT_POINTS[$i]} ${MOUNTS_FILE}; then - local directory - for directory in $(find . -depth -type d); do - if [[ ${directory} != "." ]]; then - # cat fails with "Argument list too long" error - sed -nu p < ${directory}/tasks > tasks - rmdir ${directory} - fi - done - else - ewarn "Resource control filesystem not mounted" - fi - - cd - >/dev/null - done -} - -parse_mounts() { - local device mount_point fs_type options other - while read device mount_point fs_type options other; do - if grep -q ${device} <<< ${CGROUP_FS}; then - let MAX_INDEX++ - MOUNT_POINTS[${MAX_INDEX}]=${mount_point} - MOUNT_OPTIONS[${MAX_INDEX}]=${options} - fi - done < ${MOUNTS_FILE} -} - -umount_fs() { - local i - for i in $(seq 1 ${MAX_INDEX}); do - umount ${MOUNT_POINTS[$i]} - rmdir ${MOUNT_POINTS[$i]} - done -} - -start() { - ebegin "Starting cgconfig service" - - # Mount filesystem and create cgroups - if ! ${CGCONFIGPARSER} -l ${CONFIG_FILE} >/dev/null; then - eend 1 "Failed to parse ${CONFIG_FILE}" - return 1 - fi - - parse_mounts - - # Find default cgroup name in rules file - local default_cgroup - if [[ -f ${RULES_FILE} ]]; then - local user controller - read user controller default_cgroup <<< $(grep -m1 '^\*\s' ${RULES_FILE}) - if [[ $default_cgroup == "*" ]]; then - ewarn "${RULES_FILE} incorrect" - ewarn "Overriding it" - default_cgroup= - fi - fi - # Use predefined name if none was found - if [[ -z ${default_cgroup} ]]; then - default_cgroup=sysdefault - fi - - # Create a default cgroup for tasks to return back to - local i - for i in $(seq 1 ${MAX_INDEX}); do - # Ignore if directory already exists - mkdir -p ${MOUNT_POINTS[$i]}/${default_cgroup} - find ${MOUNT_POINTS[$i]}/ -name tasks | xargs chmod a+rw - chmod go-w ${MOUNT_POINTS[$i]}/tasks - - # Special rule for cpusets - if grep -qw cpuset <<< ${MOUNT_OPTIONS[$i]}; then - cat ${MOUNT_POINTS[$i]}/cpuset.cpus > ${MOUNT_POINTS[$i]}/${default_cgroup}/cpuset.cpus - cat ${MOUNT_POINTS[$i]}/cpuset.mems > ${MOUNT_POINTS[$i]}/${default_cgroup}/cpuset.mems - fi - - # Classify everything to default cgroup - local j - for j in $(ps --no-headers -eL o tid); do - echo $j > ${MOUNT_POINTS[$i]}/${default_cgroup}/tasks 2>/dev/null - done - done - - eend 0 -} - -stop() { - ebegin "Stopping cgconfig service" - parse_mounts - move_all_to_init_class - umount_fs - eend 0 -} diff --git a/dev-libs/libcgroup/files/cgconfig.service b/dev-libs/libcgroup/files/cgconfig.service new file mode 100644 index 000000000000..d2948ff825b7 --- /dev/null +++ b/dev-libs/libcgroup/files/cgconfig.service @@ -0,0 +1,17 @@ +[Unit] +Description=Control Group configuration service + +# The service should be able to start as soon as possible, +# before any 'normal' services: +DefaultDependencies=no +Conflicts=shutdown.target +Before=basic.target shutdown.target + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/sbin/cgconfigparser -l /etc/cgroup/cgconfig.conf -s 1664 +ExecStop=/usr/sbin/cgclear -l /etc/cgroup/cgconfig.conf -e + +[Install] +WantedBy=sysinit.target diff --git a/dev-libs/libcgroup/files/cgred.confd b/dev-libs/libcgroup/files/cgred.confd deleted file mode 100644 index 663ffc0c7dbd..000000000000 --- a/dev-libs/libcgroup/files/cgred.confd +++ /dev/null @@ -1,17 +0,0 @@ -# /etc/conf.d/cgred.conf: config file for /etc/init.d/cgred - -# Uncomment the following line to log to specified file instead of syslog -#LOG_FILE="/var/log/cgrulesengd.log" - -# Uncomment the second line to run CGroup Rules Engine in non-daemon mode -#NODAEMON="" -NODAEMON="--nodaemon" - -# Uncomment the second line to disable logging for CGroup Rules Engine -# Uncomment the third line to enable more verbose logging. -#LOG="" -LOG="--nolog" -#LOG="-v" - -# PID file -PID_FILE=/var/run/cgred.pid diff --git a/dev-libs/libcgroup/files/cgred.initd b/dev-libs/libcgroup/files/cgred.initd deleted file mode 100644 index d507e09a8154..000000000000 --- a/dev-libs/libcgroup/files/cgred.initd +++ /dev/null @@ -1,41 +0,0 @@ -#!/sbin/openrc-run -# -# CGroups Rules Engine Daemon -# -# This is a daemon for automatically classifying processes into cgroups based -# on UID/GID. -# -opts="${opts} reload" - -CGRULESENGD="/usr/sbin/cgrulesengd" -PID_FILE=${PID_FILE:-"/var/run/cgred.pid"} - -depend() { - need cgconfig - use logger -} - -start() { - local options="${NODAEMON} ${LOG}" - if [[ -n "${LOG_FILE}" ]]; then - options="${options} --log-file=${LOG_FILE}" - fi - - ebegin "Starting CGroup Rules Engine Daemon" - start-stop-daemon --start --pidfile "${PID_FILE}" --make-pidfile \ - --background --exec "${CGRULESENGD}" -- ${options} >/dev/null - eend $? -} - -stop() { - ebegin "Stopping CGroup Rules Engine Daemon" - start-stop-daemon --stop --pidfile "${PID_FILE}" --exec "${CGRULESENGD}" - eend $? -} - -reload() { - ebegin "Reloading CGroup Rules Engine Daemon" - start-stop-daemon --stop --signal USR2 --oknodo --background \ - --pidfile "${PID_FILE}" --make-pidfile --exec "${CGRULESENGD}" - eend $? -} diff --git a/dev-libs/libcgroup/files/cgrules.service b/dev-libs/libcgroup/files/cgrules.service new file mode 100644 index 000000000000..2c6426bf9520 --- /dev/null +++ b/dev-libs/libcgroup/files/cgrules.service @@ -0,0 +1,16 @@ +[Unit] +Description=Control Group rules service + +# The service should be able to start as soon as possible, +# before any 'normal' services: +DefaultDependencies=no +Conflicts=shutdown.target +Before=basic.target shutdown.target +After=cgconfig.service + +[Service] +Type=simple +ExecStart=/usr/sbin/cgrulesengd -n -f - + +[Install] +WantedBy=sysinit.target diff --git a/dev-libs/libcgroup/libcgroup-0.41-r6.ebuild b/dev-libs/libcgroup/libcgroup-0.41-r6.ebuild new file mode 100644 index 000000000000..f0164a2fa06c --- /dev/null +++ b/dev-libs/libcgroup/libcgroup-0.41-r6.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic linux-info pam systemd + +DESCRIPTION="Tools and libraries to configure and manage kernel control groups" +HOMEPAGE="http://libcg.sourceforge.net/" +SRC_URI="mirror://sourceforge/project/libcg/${PN}/v${PV}/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +IUSE="+daemon elibc_musl pam static-libs test +tools" +REQUIRED_USE="daemon? ( tools )" + +# Use mount cgroup to build directory +# sandbox restricted to trivial build, +RESTRICT="test" + +BDEPEND=" + sys-devel/bison + sys-devel/flex + elibc_musl? ( sys-libs/fts-standalone ) +" +DEPEND="pam? ( virtual/pam )" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-replace-DECLS.patch + "${FILESDIR}"/${P}-replace-INLCUDES.patch + "${FILESDIR}"/${P}-reorder-headers.patch + "${FILESDIR}"/${P}-remove-umask.patch +) + +pkg_setup() { + local CONFIG_CHECK="~CGROUPS" + if use daemon; then + CONFIG_CHECK="${CONFIG_CHECK} ~CONNECTOR ~PROC_EVENTS" + fi + linux-info_pkg_setup +} + +PATCHES=( + "${FILESDIR}"/${P}-replace_DECLS.patch + "${FILESDIR}"/${P}-replace_INLCUDES.patch + "${FILESDIR}"/${P}-reorder-headers.patch + "${FILESDIR}"/${P}-remove-umask.patch +) + +src_prepare() { + default + # Change rules file location + sed -e 's:/etc/cgrules.conf:/etc/cgroup/cgrules.conf:' \ + -i src/libcgroup-internal.h || die "sed failed" + sed -e 's:/etc/cgconfig.conf:/etc/cgroup/cgconfig.conf:' \ + -i src/libcgroup-internal.h || die "sed failed" + sed -e 's:\(pam_cgroup_la_LDFLAGS.*\):\1\ -avoid-version:' \ + -i src/pam/Makefile.am || die "sed failed" + sed -e 's#/var/run#/run#g' -i configure.in || die "sed failed" + + # If we're not running tests, don't bother building them. + if ! use test; then + sed -i '/^SUBDIRS/s:tests::' Makefile.am || die + fi + + # Workaround configure.in + mv configure.in configure.ac || die + + eautoreconf +} + +src_configure() { + local my_conf + + if use pam; then + my_conf=" --enable-pam-module-dir=$(getpam_mod_dir) " + fi + + use elibc_musl && append-ldflags "-lfts" + econf \ + $(use_enable static-libs static) \ + $(use_enable daemon) \ + $(use_enable pam) \ + $(use_enable tools) \ + ${my_conf} +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die + + insinto /etc/cgroup + doins samples/*.conf + + if use tools; then + newconfd "${FILESDIR}"/cgconfig.confd-r1 cgconfig + newinitd "${FILESDIR}"/cgconfig.initd-r1 cgconfig + systemd_dounit "${FILESDIR}"/cgconfig.service + systemd_dounit "${FILESDIR}"/cgrules.service + fi + + if use daemon; then + newconfd "${FILESDIR}"/cgred.confd-r2 cgred + newinitd "${FILESDIR}"/cgred.initd-r1 cgred + fi +} |