diff options
author | Repository mirror & CI <repomirrorci@gentoo.org> | 2021-05-10 12:07:07 +0000 |
---|---|---|
committer | Repository mirror & CI <repomirrorci@gentoo.org> | 2021-05-10 12:07:07 +0000 |
commit | 8f155d74106d4e8f4d2c9d77e00d617a4d0bcda8 (patch) | |
tree | f65e6179255e9268eec35f12a3cd27575e855ffd | |
parent | 2021-05-10 09:37:18 UTC (diff) | |
parent | profiles/package.mask: removed net-nds/jxplorer (diff) | |
download | gentoo-8f155d74106d4e8f4d2c9d77e00d617a4d0bcda8.tar.gz gentoo-8f155d74106d4e8f4d2c9d77e00d617a4d0bcda8.tar.bz2 gentoo-8f155d74106d4e8f4d2c9d77e00d617a4d0bcda8.zip |
Merge updates from master
-rw-r--r-- | app-admin/sudo/Manifest | 1 | ||||
-rw-r--r-- | app-admin/sudo/sudo-1.9.7_rc1.ebuild | 254 | ||||
-rw-r--r-- | dev-lang/xsb/Manifest | 2 | ||||
-rw-r--r-- | dev-lang/xsb/metadata.xml | 3 | ||||
-rw-r--r-- | dev-lang/xsb/xsb-4.0.0.ebuild | 212 | ||||
-rw-r--r-- | dev-python/pivy/Manifest | 1 | ||||
-rw-r--r-- | dev-python/pivy/files/pivy-0.6.4-find-SoQt.patch | 31 | ||||
-rw-r--r-- | dev-python/pivy/pivy-0.6.5.ebuild | 41 | ||||
-rw-r--r-- | dev-python/pivy/pivy-0.6.6.ebuild | 2 | ||||
-rw-r--r-- | dev-util/glade/glade-3.38.2.ebuild | 2 | ||||
-rw-r--r-- | net-libs/libmicrohttpd/Manifest | 1 | ||||
-rw-r--r-- | net-libs/libmicrohttpd/libmicrohttpd-0.9.73.ebuild | 59 | ||||
-rw-r--r-- | net-nds/jxplorer/jxplorer-3.3.1.2-r1.ebuild (renamed from net-nds/jxplorer/jxplorer-3.3.1.2.ebuild) | 5 | ||||
-rw-r--r-- | profiles/package.mask | 6 | ||||
-rw-r--r-- | sys-apps/smartmontools/smartmontools-7.2.ebuild | 2 | ||||
-rw-r--r-- | sys-fs/cryfs/Manifest | 1 | ||||
-rw-r--r-- | sys-fs/cryfs/cryfs-0.10.3.ebuild | 102 | ||||
-rw-r--r-- | sys-fs/cryfs/files/cryfs-0.10.3-gcc11.patch | 271 | ||||
-rw-r--r-- | sys-fs/sysfsutils/sysfsutils-2.1.1.ebuild | 2 |
19 files changed, 913 insertions, 85 deletions
diff --git a/app-admin/sudo/Manifest b/app-admin/sudo/Manifest index c37d2480b40a..b2238cbe88ba 100644 --- a/app-admin/sudo/Manifest +++ b/app-admin/sudo/Manifest @@ -1,2 +1,3 @@ DIST sudo-1.9.5p2.tar.gz 4012277 BLAKE2B 41913887463e4f775564af8d614fb5ed762200aa777dc789ec333842d4f432323474fc952a531fe929b33607cdfbcd18d7fe7470a15d67139deaf855841ed11f SHA512 f0fe914963c31a6f8ab6c86847ff6cdd125bd5a839b27f46dcae03963f4fc413b3d4cca54c1979feb825c8479b44c7df0642c07345c941eecf6f9f1e03ea0e27 DIST sudo-1.9.6p1.tar.gz 4119888 BLAKE2B 02bdb551c46cff11ac56e64937c64e6a29ccd8e0af34ea2f6b33c223bee8f7ad958d0fc3d7ef8ef12bf5bc82565769b923ff112a3f3d6bf6999fa4f6ea55e38e SHA512 632dfe72f04ce9a7a5a7236fcd5c09ce4535e695ced49d24dd848e3a7b1bea7380df44188b9e475af4271069539b5a5816948a98fbb0649ebebaba8b4c4b7745 +DIST sudo-1.9.7rc1.tar.gz 4195574 BLAKE2B 0760443877921faee83bc9561070659eefe02f966b17eb67719b4298417b147787296387e9868050b70ea95ff20b9f8ae986476fe347d27af0b01df11b82bead SHA512 6b73f0bb495e7e6217faaf18cd47c7753a17e4a6470bdb2cd2d2b0f3eda8cc5adde58a61faad6b4f0228617a6e586edd1c8350b15b3c15f98ed78311e0fb6f45 diff --git a/app-admin/sudo/sudo-1.9.7_rc1.ebuild b/app-admin/sudo/sudo-1.9.7_rc1.ebuild new file mode 100644 index 000000000000..4d5f317bd544 --- /dev/null +++ b/app-admin/sudo/sudo-1.9.7_rc1.ebuild @@ -0,0 +1,254 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit pam multilib libtool systemd tmpfiles toolchain-funcs + +MY_P="${P/_/}" +MY_P="${MY_P/beta/b}" + +DESCRIPTION="Allows users or groups to run commands as other users" +HOMEPAGE="https://www.sudo.ws/" +if [[ ${PV} == "9999" ]] ; then + inherit mercurial + EHG_REPO_URI="https://www.sudo.ws/repos/sudo" +else + uri_prefix= + case ${P} in + *_beta*|*_rc*) uri_prefix=beta/ ;; + esac + + SRC_URI="https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz + ftp://ftp.sudo.ws/pub/sudo/${uri_prefix}${MY_P}.tar.gz" + if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~sparc-solaris" + fi +fi + +# Basic license is ISC-style as-is, some files are released under +# 3-clause BSD license +LICENSE="ISC BSD" +SLOT="0" +IUSE="gcrypt ldap nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd" + +DEPEND=" + sys-libs/zlib:= + gcrypt? ( dev-libs/libgcrypt:= ) + ldap? ( + >=net-nds/openldap-2.1.30-r1 + sasl? ( + dev-libs/cyrus-sasl + net-nds/openldap[sasl] + ) + ) + pam? ( sys-libs/pam ) + sasl? ( dev-libs/cyrus-sasl ) + skey? ( >=sys-auth/skey-1.1.5-r1 ) + ssl? ( dev-libs/openssl:0= ) + sssd? ( sys-auth/sssd[sudo] ) +" +RDEPEND=" + ${DEPEND} + >=app-misc/editor-wrapper-3 + virtual/editor + ldap? ( dev-lang/perl ) + pam? ( sys-auth/pambase ) + selinux? ( sec-policy/selinux-sudo ) + sendmail? ( virtual/mta ) +" +BDEPEND=" + sys-devel/bison + virtual/pkgconfig +" + +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + ?? ( pam skey ) + ?? ( gcrypt ssl ) +" + +MAKEOPTS+=" SAMPLES=" + +src_prepare() { + default + elibtoolize +} + +set_secure_path() { + # first extract the default ROOTPATH from build env + SECURE_PATH=$(unset ROOTPATH; . "${EPREFIX}"/etc/profile.env; + echo "${ROOTPATH}") + case "${SECURE_PATH}" in + */usr/sbin*) ;; + *) SECURE_PATH=$(unset PATH; + . "${EPREFIX}"/etc/profile.env; echo "${PATH}") + ;; + esac + if [[ -z ${SECURE_PATH} ]] ; then + ewarn " Failed to detect SECURE_PATH, please report this" + fi + + # then remove duplicate path entries + cleanpath() { + local newpath thisp IFS=: + for thisp in $1 ; do + if [[ :${newpath}: != *:${thisp}:* ]] ; then + newpath+=:${thisp} + else + einfo " Duplicate entry ${thisp} removed..." + fi + done + SECURE_PATH=${newpath#:} + } + cleanpath /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin${SECURE_PATH:+:${SECURE_PATH}} + + # finally, strip gcc paths #136027 + rmpath() { + local e newpath thisp IFS=: + for thisp in ${SECURE_PATH} ; do + for e ; do [[ ${thisp} == ${e} ]] && continue 2 ; done + newpath+=:${thisp} + done + SECURE_PATH=${newpath#:} + } + rmpath '*/gcc-bin/*' '*/gnat-gcc-bin/*' '*/gnat-gcc/*' +} + +src_configure() { + local SECURE_PATH + set_secure_path + tc-export PKG_CONFIG #767712 + + # audit: somebody got to explain me how I can test this before I + # enable it.. - Diego + # plugindir: autoconf code is crappy and does not delay evaluation + # until `make` time, so we have to use a full path here rather than + # basing off other values. + myeconfargs=( + # requires some python eclass + --disable-python + --enable-tmpfiles.d="${EPREFIX}"/usr/lib/tmpfiles.d + --enable-zlib=system + --with-editor="${EPREFIX}"/usr/libexec/editor + --with-env-editor + --with-plugindir="${EPREFIX}"/usr/$(get_libdir)/sudo + --with-rundir="${EPREFIX}"/run/sudo + --with-vardir="${EPREFIX}"/var/db/sudo + --without-linux-audit + --without-opie + $(use_enable gcrypt) + $(use_enable nls) + $(use_enable sasl) + $(use_enable ssl openssl) + $(use_with ldap) + $(use_with ldap ldap_conf_file /etc/ldap.conf.sudo) + $(use_with offensive insults) + $(use_with offensive all-insults) + $(use_with pam) + $(use_with pam pam-login) + $(use_with secure-path secure-path "${SECURE_PATH}") + $(use_with selinux) + $(use_with sendmail) + $(use_with skey) + $(use_with sssd) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + if use ldap ; then + dodoc README.LDAP + + cat <<-EOF > "${T}"/ldap.conf.sudo + # See ldap.conf(5) and README.LDAP for details + # This file should only be readable by root + + # supported directives: host, port, ssl, ldap_version + # uri, binddn, bindpw, sudoers_base, sudoers_debug + # tls_{checkpeer,cacertfile,cacertdir,randfile,ciphers,cert,key} + EOF + + if use sasl ; then + cat <<-EOF >> "${T}"/ldap.conf.sudo + + # SASL directives: use_sasl, sasl_mech, sasl_auth_id + # sasl_secprops, rootuse_sasl, rootsasl_auth_id, krb5_ccname + EOF + fi + + insinto /etc + doins "${T}"/ldap.conf.sudo + fperms 0440 /etc/ldap.conf.sudo + + insinto /etc/openldap/schema + newins doc/schema.OpenLDAP sudo.schema + fi + + if use pam; then + pamd_mimic system-auth sudo auth account session + pamd_mimic system-auth sudo-i auth account session + fi + + keepdir /var/db/sudo/lectured + fperms 0700 /var/db/sudo/lectured + fperms 0711 /var/db/sudo #652958 + + # Don't install into /run as that is a tmpfs most of the time + # (bug #504854) + rm -rf "${ED}"/run || die + + find "${ED}" -type f -name "*.la" -delete || die #697812 +} + +pkg_postinst() { + tmpfiles_process sudo.conf + + #652958 + local sudo_db="${EROOT}/var/db/sudo" + if [[ "$(stat -c %a "${sudo_db}")" -ne 711 ]] ; then + chmod 711 "${sudo_db}" || die + fi + + if use ldap ; then + ewarn + ewarn "sudo uses the /etc/ldap.conf.sudo file for ldap configuration." + ewarn + if grep -qs '^[[:space:]]*sudoers:' "${ROOT}"/etc/nsswitch.conf ; then + ewarn "In 1.7 series, LDAP is no more consulted, unless explicitly" + ewarn "configured in /etc/nsswitch.conf." + ewarn + ewarn "To make use of LDAP, add this line to your /etc/nsswitch.conf:" + ewarn " sudoers: ldap files" + ewarn + fi + fi + if use prefix ; then + ewarn + ewarn "To use sudo, you need to change file ownership and permissions" + ewarn "with root privileges, as follows:" + ewarn + ewarn " # chown root:root ${EPREFIX}/usr/bin/sudo" + ewarn " # chown root:root ${EPREFIX}/usr/lib/sudo/sudoers.so" + ewarn " # chown root:root ${EPREFIX}/etc/sudoers" + ewarn " # chown root:root ${EPREFIX}/etc/sudoers.d" + ewarn " # chown root:root ${EPREFIX}/var/db/sudo" + ewarn " # chmod 4111 ${EPREFIX}/usr/bin/sudo" + ewarn + fi + + elog "To use the -A (askpass) option, you need to install a compatible" + elog "password program from the following list. Starred packages will" + elog "automatically register for the use with sudo (but will not force" + elog "the -A option):" + elog "" + elog " [*] net-misc/ssh-askpass-fullscreen" + elog " net-misc/x11-ssh-askpass" + elog "" + elog "You can override the choice by setting the SUDO_ASKPASS environmnent" + elog "variable to the program you want to use." +} diff --git a/dev-lang/xsb/Manifest b/dev-lang/xsb/Manifest index 1abb9f57770e..946420c4970e 100644 --- a/dev-lang/xsb/Manifest +++ b/dev-lang/xsb/Manifest @@ -1,2 +1,4 @@ +DIST XSB-4-0-0.tar.gz 15340635 BLAKE2B 4832185a64c6c5786ae78e111c25cd3a5ffc2f80aec9c0c83f030ead482868c77b0d7abbfdf0d113b56fea395eb7e69ca2970a82ea70004fb78c0bf4de258a9d SHA512 fed1e0db4874db2508e0c1e716be20cbfbc4f7ed4c16e0b220750cfb3dfceb78bbdce0f8564b68c400af1bc2b8f9e3b35014e8849bba1705bddfab824f41e816 DIST XSB38.tar.gz 13830570 BLAKE2B 60a6ab38435348d09e2d08bc65ca62c06b38495b72f40a6f3f10fe8d23949bfed0c580c9be0c8304d8a88a53b227bb695870b558d67f33a47543de6c1529180f SHA512 457c691450afcf3ed4e2fffc28deaef0949ef4bbf6fd69b504acc6507fbb144f2c6e427a25da2b6346b15b82e803c02d1b6962af698d16c1fcb9a3d56160ea30 DIST xsb-3.8.0-gentoo-patchset-5.tar.gz 7748 BLAKE2B 291beb7a2bf567708119eb200e06fd0d6ac976b5eaea9646d9b5fe9fe67908e01f48b1e55e36fc98f7fe75ee4b654422bc0f9c565e00ac75fe36cccd0439bc2b SHA512 cd3762545bb0b0c5532607741f5946658cacf062c21913c8261988a2162ab848d860ae5a0d11d7a4b8b36994f7fbc91c6e6b4fa607e8cc6ebed434dbf421dec1 +DIST xsb-4.0.0-gentoo-patchset-0.tar.gz 10227 BLAKE2B 6d64faad36af2a1d5e74c5ac32940158bd8e08ae04d0a28e818d4295e2e4e12f99a0eee24605767a586fc6273ff330eb2a140d6106d605e4beb864f01c518014 SHA512 8c125237473d9c21cfe261bfd5a78dbd68ecd1d2a8a828bac55cfc33a74ba72994a4727b568dc90febef13f637d0b1cfe583fa097bd5cf8e758a74e142374a00 diff --git a/dev-lang/xsb/metadata.xml b/dev-lang/xsb/metadata.xml index cabb7385917b..b10e89771921 100644 --- a/dev-lang/xsb/metadata.xml +++ b/dev-lang/xsb/metadata.xml @@ -8,4 +8,7 @@ <upstream> <remote-id type="sourceforge">xsb</remote-id> </upstream> + <use> + <flag name="mariadb">Enable support for the mariadb database backend</flag> + </use> </pkgmetadata> diff --git a/dev-lang/xsb/xsb-4.0.0.ebuild b/dev-lang/xsb/xsb-4.0.0.ebuild new file mode 100644 index 000000000000..7449fc08ff15 --- /dev/null +++ b/dev-lang/xsb/xsb-4.0.0.ebuild @@ -0,0 +1,212 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PATCHSET_VER="0" + +inherit autotools java-pkg-opt-2 + +DESCRIPTION="XSB is a logic programming and deductive database system" +HOMEPAGE="http://xsb.sourceforge.net" +SRC_URI="mirror://sourceforge/xsb/XSB-4-0-0.tar.gz + https://dev.gentoo.org/~keri/distfiles/xsb/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="curl debug iodbc java mariadb mysql odbc pcre threads xml" + +RDEPEND="curl? ( net-misc/curl ) + iodbc? ( dev-db/libiodbc ) + java? ( >=virtual/jdk-1.8:* ) + mariadb? ( dev-db/mariadb-connector-c:= ) + mysql? ( dev-db/mysql-connector-c:0= ) + odbc? ( dev-db/unixODBC ) + pcre? ( dev-libs/libpcre ) + xml? ( dev-libs/libxml2 )" + +DEPEND="${RDEPEND}" + +S="${WORKDIR}"/XSB + +PATCHES=( "${WORKDIR}/${PV}" ) + +src_prepare() { + default + cd "${S}"/build + eautoconf + + if use mariadb ; then + sed -i \ + -e "s:mysqlclient:mariadb:" \ + -e "s:mysql_config:mariadb_config:" \ + "${S}"/packages/dbdrivers/mysql/configure \ + "${S}"/packages/dbdrivers/mysql/mysql_driver_config.P + fi + + find "${S}"/packages -name Installation_summary \ + | xargs rm -f || die +} + +src_configure() { + cd "${S}"/build + + econf \ + --prefix=/usr/$(get_libdir) \ + --disable-optimization \ + --disable-ccmpl \ + --without-smodels \ + $(use_with odbc) \ + $(use_with iodbc) \ + $(use_enable threads mt) \ + $(use_enable debug) + + if use curl ; then + cd "${S}"/packages/curl + econf + fi + + if use mysql || use mariadb ; then + local impl=$(usex mariadb mariadb mysql) + cd "${S}"/packages/dbdrivers/mysql + econf \ + --with-mysql-incdir=/usr/include/${impl} + fi + + if use odbc ; then + cd "${S}"/packages/dbdrivers/odbc + econf + fi + + if use pcre ; then + cd "${S}"/packages/pcre + econf + fi + + if use xml ; then + cd "${S}"/packages/xpath + econf + fi +} + +src_compile() { + cd "${S}"/build + + default + + # All XSB Packages are compiled using a single Prolog engine. + # Consequently they must all be compiled using a single make job. + + cd "${S}"/packages + rm -f *.xwam + emake -j1 + + if use curl ; then + emake -j1 curl + emake -j1 sgml + if use xml ; then + emake -j1 xpath + fi + fi + + if use mysql || use mariadb ; then + emake -j1 mysql + fi + + if use odbc ; then + emake -j1 odbc + fi + + if use pcre ; then + emake -j1 pcre + fi +} + +src_install() { + cd "${S}"/build + default + + local XSB_INSTALL_DIR=/usr/$(get_libdir)/xsb-${PV} + dosym ${XSB_INSTALL_DIR}/bin/xsb /usr/bin/xsb + + cd "${S}"/packages + local PACKAGES=${XSB_INSTALL_DIR}/packages + insinto ${PACKAGES} + doins *.xwam + + insinto ${PACKAGES}/chr + doins chr/*.xwam + + insinto ${PACKAGES}/clpqr + doins clpqr/*.xwam + + insinto ${PACKAGES}/gap + doins gap/*.xwam + + insinto ${PACKAGES}/justify + doins justify/*.xwam + doins justify/*.H + + insinto ${PACKAGES}/regmatch + doins regmatch/*.xwam + insinto ${PACKAGES}/regmatch/cc + doins regmatch/cc/*.H + + insinto ${PACKAGES}/slx + doins slx/*.xwam + + insinto ${PACKAGES}/wildmatch + doins wildmatch/*.xwam + insinto ${PACKAGES}/wildmatch/cc + doins wildmatch/cc/*.H + + if use curl ; then + insinto ${PACKAGES}/curl + doins curl/*.xwam + insinto ${PACKAGES}/curl/cc + doins curl/cc/*.H + insinto ${PACKAGES}/sgml + doins sgml/*.xwam + insinto ${PACKAGES}/sgml/cc + doins sgml/cc/*.H + insinto ${PACKAGES}/sgml/cc/dtd + doins sgml/cc/dtd/* + if use xml ; then + insinto ${PACKAGES}/xpath + doins xpath/*xwam + insinto ${PACKAGES}/xpath/cc + doins xpath/cc/*.H + fi + fi + + if use mysql || use mariadb || use odbc ; then + insinto ${PACKAGES}/dbdrivers + doins dbdrivers/*.xwam + doins dbdrivers/*.H + insinto ${PACKAGES}/dbdrivers/cc + doins dbdrivers/cc/*.H + if use mysql || use mariadb ; then + insinto ${PACKAGES}/dbdrivers/mysql + doins dbdrivers/mysql/*.xwam + insinto ${PACKAGES}/dbdrivers/mysql/cc + doins dbdrivers/mysql/cc/*.H + fi + if use odbc ; then + insinto ${PACKAGES}/dbdrivers/odbc + doins dbdrivers/odbc/*.xwam + insinto ${PACKAGES}/dbdrivers/odbc/cc + doins dbdrivers/odbc/cc/*.H + fi + fi + + if use pcre ; then + insinto ${PACKAGES}/pcre + doins pcre/*.xwam + insinto ${PACKAGES}/pcre/cc + doins pcre/cc/*.H + fi + + cd "${S}" + dodoc FAQ README +} diff --git a/dev-python/pivy/Manifest b/dev-python/pivy/Manifest index 49189d75a6a5..4c03580a9fd3 100644 --- a/dev-python/pivy/Manifest +++ b/dev-python/pivy/Manifest @@ -1,2 +1 @@ -DIST pivy-0.6.5.tar.gz 6614159 BLAKE2B 2652feb26137b2deda8b76083d3bd9018303ca0a0236ea97e83e9ff24ddeda30462a25ac1b20b0d3e718fc9f83ae5ebf7116a5c0d94debcc5b6d729792230655 SHA512 6cf0b1ac348336609f42f6a72df7ffdc3e1042a4f8fc6e2b725ca38f09476c70bafa14c1f083d1badeb5b37b974a0fbf5806ea71d44d734b9ab9b125ce7f8695 DIST pivy-0.6.6.tar.gz 6618471 BLAKE2B 5bcf2479bf26628e3dfe59c1440901368442de2f32a5680ef1af10d49239d8c73b79809495d7227937fd7784af1e1ded27f93f0255793e713add0c1cc35b8e5d SHA512 e260c6abd0aede7621d5fed66eeceb98a32634af84370ef713d70d583ec017cded4be682fd7e70e5faa19988a5e032a9d2f2308b8ae6dd9495d76e884de1d80c diff --git a/dev-python/pivy/files/pivy-0.6.4-find-SoQt.patch b/dev-python/pivy/files/pivy-0.6.4-find-SoQt.patch deleted file mode 100644 index 4d8a6fdd8889..000000000000 --- a/dev-python/pivy/files/pivy-0.6.4-find-SoQt.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 1c9ffef4d85327fe517bdcf7e11c339a4862ba2e Mon Sep 17 00:00:00 2001 -From: Bernd Waibel <waebbl@gmail.com> -Date: Wed, 12 Jun 2019 21:21:34 +0200 -Subject: [PATCH] CMakeLists.txt: remove NONE keyword for languages from - project definition. This solves a bug where SoQt is not found on Gentoo - systems (see https://github.com/waebbl/waebbl-gentoo/issues/42) -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Thanks to QÍN Yuhào for coming up with this fix. - -Suggested-by: QÍN Yuhào <qinyh18@mails.tsinghua.edu.cn> -Signed-off-by: Bernd Waibel <waebbl@gmail.com> ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 76d0d06..48bd3c0 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,4 +1,4 @@ --project(pivy_cmake_setup NONE) -+project(pivy_cmake_setup) - cmake_minimum_required(VERSION 3.5) - - --- -2.21.0 - diff --git a/dev-python/pivy/pivy-0.6.5.ebuild b/dev-python/pivy/pivy-0.6.5.ebuild deleted file mode 100644 index d72586655e36..000000000000 --- a/dev-python/pivy/pivy-0.6.5.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} ) -DISTUTILS_USE_SETUPTOOLS=no - -inherit distutils-r1 - -DESCRIPTION="Coin3D bindings for Python" -HOMEPAGE="https://github.com/coin3d/pivy" - -if [[ ${PV} == *9999 ]]; then - inherit git-r3 - PIVY_REPO_URI="https://github.com/coin3d/pivy.git" -else - SRC_URI="https://github.com/coin3d/pivy/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="amd64 x86" -fi - -LICENSE="ISC" -SLOT="0" -IUSE="+quarter soqt" - -REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} - || ( quarter soqt ) -" - -RDEPEND=" - >=media-libs/coin-4.0.0 - quarter? ( media-libs/quarter ) - soqt? ( >=media-libs/SoQt-1.6.0 ) -" -DEPEND="${RDEPEND}" -BDEPEND="dev-lang/swig" - -PATCHES=( "${FILESDIR}/${PN}-0.6.4-find-SoQt.patch" ) - -DOCS=( AUTHORS HACKING NEWS README.md THANKS ) diff --git a/dev-python/pivy/pivy-0.6.6.ebuild b/dev-python/pivy/pivy-0.6.6.ebuild index 840079762e22..8de008d6a5c1 100644 --- a/dev-python/pivy/pivy-0.6.6.ebuild +++ b/dev-python/pivy/pivy-0.6.6.ebuild @@ -16,7 +16,7 @@ if [[ ${PV} == *9999 ]]; then PIVY_REPO_URI="https://github.com/coin3d/pivy.git" else SRC_URI="https://github.com/coin3d/pivy/archive/${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~x86" + KEYWORDS="amd64 x86" fi LICENSE="ISC" diff --git a/dev-util/glade/glade-3.38.2.ebuild b/dev-util/glade/glade-3.38.2.ebuild index ed4b0ab35d3c..ebf254857d28 100644 --- a/dev-util/glade/glade-3.38.2.ebuild +++ b/dev-util/glade/glade-3.38.2.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://glade.gnome.org/" LICENSE="GPL-2+ FDL-1.1+" SLOT="3.10/13" # subslot = suffix of libgladeui-2.so -KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ~ppc ppc64 ~sparc x86" +KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~sparc x86" IUSE="gjs gtk-doc +introspection python webkit" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" diff --git a/net-libs/libmicrohttpd/Manifest b/net-libs/libmicrohttpd/Manifest index f0e37d33206d..5fdb923bbc79 100644 --- a/net-libs/libmicrohttpd/Manifest +++ b/net-libs/libmicrohttpd/Manifest @@ -1,2 +1,3 @@ DIST libmicrohttpd-0.9.68.tar.gz 1884342 BLAKE2B 3f74c48917fa19753a617242fa07b99a69510a14a802609d038964d927516f8f52b4330d0eee2c7b98096b2d840158e4945310edef290224ea256d9616fb4d94 SHA512 9daaab5fb35fef6f2a19b7e08eeb8473aeb0a67631808a8d7a7f78a09cb621ca5d32dbbbca616865a40afb92f8c6495f9e2ba1674880af8011a2bc798c070a13 DIST libmicrohttpd-0.9.72.tar.gz 1693553 BLAKE2B 24d9284d8cab65d4a5b6b7f3a5b860dfd8cf69b21e44ee05ae2f7561b766a72d2dbb7f57849a31c22454e211befa74e058f78814b79e7876b3d14c7252ab5800 SHA512 9695e2fb08785e4b60342226ef3a0af22da4d80f127e7db9ec80ce844f70d0d781b30af207d58d8eb691b85a5fe4691cb9ecf887ca86f5e059a05259ae041316 +DIST libmicrohttpd-0.9.73.tar.gz 1738675 BLAKE2B 63845b1b7fa0aa8ce29e9917521e10bd59fa0d27658e87ef3273d5014adf5cd9514a2d84465a573df03b44dcd50da7d157ef9c4952107ebba49efdfb398476c2 SHA512 473996b087ac6734ab577a1c7681c6c0b0136e04e34e13c3b50fd758358c1516017ad79097e0c57792786f6dd0208834374c09238113efed13bb4be11ef649d3 diff --git a/net-libs/libmicrohttpd/libmicrohttpd-0.9.73.ebuild b/net-libs/libmicrohttpd/libmicrohttpd-0.9.73.ebuild new file mode 100644 index 000000000000..d881dcb779b6 --- /dev/null +++ b/net-libs/libmicrohttpd/libmicrohttpd-0.9.73.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit multilib-minimal + +MY_P="${P/_/}" + +DESCRIPTION="Small C library to run an HTTP server as part of another application" +HOMEPAGE="https://www.gnu.org/software/libmicrohttpd/" +SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" +S="${WORKDIR}"/${MY_P} + +LICENSE="LGPL-2.1" +SLOT="0/12" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="+epoll ssl static-libs test thread-names" +RESTRICT="!test? ( test )" + +# libcurl is linked to for tests and the +# curl binary is used during tests too +# if available +RDEPEND="ssl? ( >net-libs/gnutls-2.12.20:= )" +DEPEND="${RDEPEND} + test? ( net-misc/curl[ssl?] )" +BDEPEND="virtual/pkgconfig + test? ( net-misc/curl[ssl?] )" + +DOCS=( AUTHORS NEWS README ChangeLog ) + +multilib_src_configure() { + ECONF_SOURCE="${S}" \ + econf \ + --enable-shared \ + $(use_enable static-libs static) \ + --disable-nls \ + --enable-bauth \ + --enable-dauth \ + --disable-examples \ + --enable-messages \ + --enable-postprocessor \ + --enable-httpupgrade \ + --disable-experimental \ + --disable-heavy-tests \ + $(use_enable thread-names) \ + $(use_enable epoll) \ + $(use_enable test curl) \ + $(use_enable ssl https) \ + $(use_with ssl gnutls) +} + +multilib_src_install_all() { + default + + if ! use static-libs; then + find "${ED}" -name '*.la' -delete || die + fi +} diff --git a/net-nds/jxplorer/jxplorer-3.3.1.2.ebuild b/net-nds/jxplorer/jxplorer-3.3.1.2-r1.ebuild index bb3b3a84fc6d..f04c1b33ba7c 100644 --- a/net-nds/jxplorer/jxplorer-3.3.1.2.ebuild +++ b/net-nds/jxplorer/jxplorer-3.3.1.2-r1.ebuild @@ -13,20 +13,21 @@ S="${WORKDIR}/${PN}" LICENSE="CAOSL" SLOT="0" -IUSE="" KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" RESTRICT="test" +# needs java stuff that is missing in java > 1.8 os has to be restricted COMMON_DEPEND=" >=dev-java/javahelp-2.0.02_p46:0 " RDEPEND="${COMMON_DEPEND} - >=virtual/jre-1.5 + virtual/jre:1.8 " DEPEND="${COMMON_DEPEND} virtual/jdk:1.8 test? ( dev-java/junit:0 ) " +BDEPEND="app-arch/unzip" JAVA_ANT_REWRITE_CLASSPATH="yes" EANT_GENTOO_CLASSPATH="javahelp" diff --git a/profiles/package.mask b/profiles/package.mask index fcbc4ab925fe..0a9d154c5446 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -116,12 +116,6 @@ media-sound/entagged-tageditor media-sound/protux # Miroslav Šulc <fordfrog@gentoo.org> (2021-05-05) -# no consumers, last release in 2013 -# removal in 30 days -# see bug: https://bugs.gentoo.org/787638 -net-nds/jxplorer - -# Miroslav Šulc <fordfrog@gentoo.org> (2021-05-05) # no consumers, last release in 2011 # removal in 30 days # see bug: https://bugs.gentoo.org/787656 diff --git a/sys-apps/smartmontools/smartmontools-7.2.ebuild b/sys-apps/smartmontools/smartmontools-7.2.ebuild index f5821fb60d50..d534a7dc2e2e 100644 --- a/sys-apps/smartmontools/smartmontools-7.2.ebuild +++ b/sys-apps/smartmontools/smartmontools-7.2.ebuild @@ -10,7 +10,7 @@ if [[ ${PV} == "9999" ]] ; then inherit subversion else SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" - KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos" fi DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation" diff --git a/sys-fs/cryfs/Manifest b/sys-fs/cryfs/Manifest index bb4b24ade0c0..f06ae97762b9 100644 --- a/sys-fs/cryfs/Manifest +++ b/sys-fs/cryfs/Manifest @@ -1 +1,2 @@ DIST cryfs-0.10.2.tar.xz 7902252 BLAKE2B 704d124ed32a8a958f400188af99498cedb706ccfc004131b677a113b6ab2733942becb1ab64fd06d0b9d5b39f7abe832b3b0669caaf2b6feb7c6577c8c7fbfd SHA512 e49dd6d1e402d968cc4df0e8ca0460a01a27e4e73482041dca0fa9cde905a91d12e2bda18d257a044335e32e316b9363cecf374eb2ca621924b394dd2fabcb8f +DIST cryfs-0.10.3.tar.xz 7908228 BLAKE2B e1c816bd2ceb125573f5385c6ddb316a600275f0b907d89d3ab32f2050f1a0874ebbfd3db7b452b41d20dcbdd01bf59210a0a96c5bfee079ce222307d4c55596 SHA512 a1325c79cb253219bb092fd68399d6ec68aaf3d78bc95608582ab0c239dfaa0361416531cd1051661e4699b1e79867547710ea55d23e5697ebd4421c937d5b87 diff --git a/sys-fs/cryfs/cryfs-0.10.3.ebuild b/sys-fs/cryfs/cryfs-0.10.3.ebuild new file mode 100644 index 000000000000..05cf0d45dc4f --- /dev/null +++ b/sys-fs/cryfs/cryfs-0.10.3.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) +inherit cmake flag-o-matic linux-info python-any-r1 + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/cryfs/cryfs" +else + SRC_URI="https://github.com/cryfs/cryfs/releases/download/${PV}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + S="${WORKDIR}" +fi + +DESCRIPTION="Encrypted FUSE filesystem that conceals metadata" +HOMEPAGE="https://www.cryfs.org/" + +LICENSE="LGPL-3 MIT" +SLOT="0" +IUSE="custom-optimization debug test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/boost-1.65.1:= + >=dev-libs/crypto++-8.2.0:= + net-misc/curl:= + >=sys-fs/fuse-2.8.6:0 + dev-libs/openssl:0= +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + test? ( dev-cpp/gtest ) +" + +PATCHES=( + # TODO upstream: + "${FILESDIR}/${PN}-0.10.2-unbundle-libs.patch" + "${FILESDIR}/${PN}-0.10.2-install-targets.patch" + # From upstream + "${FILESDIR}/${PN}-0.10.3-gcc11.patch" +) + +pkg_setup() { + local CONFIG_CHECK="~FUSE_FS" + local WARNING_FUSE_FS="CONFIG_FUSE_FS is required for cryfs support." + + check_extra_config +} + +src_prepare() { + cmake_src_prepare + + # don't install compressed manpage + cmake_comment_add_subdirectory doc + + # remove tests that require internet access to comply with Gentoo policy + sed -e "/CurlHttpClientTest.cpp/d" -e "/FakeHttpClientTest.cpp/d" \ + -i test/cpp-utils/CMakeLists.txt || die + + # /dev/fuse access denied + sed -e "/CliTest_IntegrityCheck/d" \ + -i test/cryfs-cli/CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=( + -DBoost_USE_STATIC_LIBS=OFF + -DCRYFS_UPDATE_CHECKS=OFF + -DBUILD_SHARED_LIBS=OFF + -DUSE_SYSTEM_LIBS=ON + -DBUILD_TESTING=$(usex test) + ) + + use custom-optimization || append-flags -O3 + use debug || append-flags -DNDEBUG + + cmake_src_configure +} + +src_test() { + local TMPDIR="${T}" + local tests_failed=() + + # fspp fuse tests hang, bug # 699044 + for i in gitversion cpp-utils parallelaccessstore blockstore blobstore cryfs cryfs-cli ; do + "${BUILD_DIR}"/test/${i}/${i}-test || tests_failed+=( "${i}" ) + done + + if [[ -n ${tests_failed[@]} ]] ; then + eerror "The following tests failed:" + eerror "${tests_failed[@]}" + die "At least one test failed" + fi +} + +src_install() { + cmake_src_install + doman doc/man/cryfs.1 +} diff --git a/sys-fs/cryfs/files/cryfs-0.10.3-gcc11.patch b/sys-fs/cryfs/files/cryfs-0.10.3-gcc11.patch new file mode 100644 index 000000000000..9a7252ba506b --- /dev/null +++ b/sys-fs/cryfs/files/cryfs-0.10.3-gcc11.patch @@ -0,0 +1,271 @@ +https://github.com/cryfs/cryfs/commit/27587ea1acec5f939a31217f1c43953378f18821.patch +https://bugs.gentoo.org/786459 + +From 27587ea1acec5f939a31217f1c43953378f18821 Mon Sep 17 00:00:00 2001 +From: Sebastian Messmer <messmer@cryfs.org> +Date: Sat, 8 May 2021 14:44:27 -0700 +Subject: [PATCH] Fixed an issue when compiling with GCC 11, see + https://github.com/cryfs/cryfs/issues/389 + +--- +--- a/src/blobstore/implementations/onblocks/datanodestore/DataNodeView.h ++++ b/src/blobstore/implementations/onblocks/datanodestore/DataNodeView.h +@@ -67,7 +67,7 @@ class DataNodeView final { + + static DataNodeView create(blockstore::BlockStore *blockStore, const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { + ASSERT(data.size() <= layout.datasizeBytes(), "Data is too large for node"); +- cpputils::Data serialized = _serialize(layout, formatVersion, depth, size, std::move(data)); ++ cpputils::Data serialized = serialize_(layout, formatVersion, depth, size, std::move(data)); + ASSERT(serialized.size() == layout.blocksizeBytes(), "Wrong block size"); + auto block = blockStore->create(serialized); + return DataNodeView(std::move(block)); +@@ -75,7 +75,7 @@ class DataNodeView final { + + static DataNodeView initialize(cpputils::unique_ref<blockstore::Block> block, const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { + ASSERT(data.size() <= DataNodeLayout(block->size()).datasizeBytes(), "Data is too large for node"); +- cpputils::Data serialized = _serialize(layout, formatVersion, depth, size, std::move(data)); ++ cpputils::Data serialized = serialize_(layout, formatVersion, depth, size, std::move(data)); + ASSERT(serialized.size() == block->size(), "Block has wrong size"); + block->write(serialized.data(), 0, serialized.size()); + return DataNodeView(std::move(block)); +@@ -83,7 +83,7 @@ class DataNodeView final { + + static DataNodeView overwrite(blockstore::BlockStore *blockStore, const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, const blockstore::BlockId &blockId, cpputils::Data data) { + ASSERT(data.size() <= layout.datasizeBytes(), "Data is too large for node"); +- cpputils::Data serialized = _serialize(layout, formatVersion, depth, size, std::move(data)); ++ cpputils::Data serialized = serialize_(layout, formatVersion, depth, size, std::move(data)); + auto block = blockStore->overwrite(blockId, std::move(serialized)); + return DataNodeView(std::move(block)); + } +@@ -143,7 +143,7 @@ class DataNodeView final { + } + + private: +- static cpputils::Data _serialize(const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { ++ static cpputils::Data serialize_(const DataNodeLayout &layout, uint16_t formatVersion, uint8_t depth, uint32_t size, cpputils::Data data) { + cpputils::Data result(layout.blocksizeBytes()); + cpputils::serialize<uint16_t>(result.dataOffset(layout.FORMAT_VERSION_OFFSET_BYTES), formatVersion); + cpputils::serialize<uint8_t>(result.dataOffset(layout.DEPTH_OFFSET_BYTES), depth); +--- a/src/cryfs/filesystem/fsblobstore/utils/DirEntry.cpp ++++ b/src/cryfs/filesystem/fsblobstore/utils/DirEntry.cpp +@@ -11,55 +11,55 @@ namespace cryfs { + + namespace { + template<typename DataType> +- size_t _serialize(void* dst, const DataType& obj) { ++ size_t serialize_(void* dst, const DataType& obj) { + cpputils::serialize<DataType>(dst, obj); + return sizeof(DataType); + } + + template<typename DataType> +- DataType _deserialize(const char** src) { ++ DataType deserialize_(const char** src) { + DataType result = cpputils::deserialize<DataType>(*src); + *src += sizeof(DataType); + return result; + } + +- constexpr size_t _serializedTimeValueSize() { ++ constexpr size_t serializedTimeValueSize_() { + return sizeof(uint64_t) + sizeof(uint32_t); + } + +- unsigned int _serializeTimeValue(uint8_t *dest, timespec value) { ++ unsigned int serializeTimeValue_(uint8_t *dest, timespec value) { + unsigned int offset = 0; +- offset += _serialize<uint64_t>(dest + offset, value.tv_sec); +- offset += _serialize<uint32_t>(dest + offset, value.tv_nsec); +- ASSERT(offset == _serializedTimeValueSize(), "serialized to wrong size"); ++ offset += serialize_<uint64_t>(dest + offset, value.tv_sec); ++ offset += serialize_<uint32_t>(dest + offset, value.tv_nsec); ++ ASSERT(offset == serializedTimeValueSize_(), "serialized to wrong size"); + return offset; + } + +- timespec _deserializeTimeValue(const char **pos) { ++ timespec deserializeTimeValue_(const char **pos) { + timespec value{}; +- value.tv_sec = _deserialize<uint64_t>(pos); +- value.tv_nsec = _deserialize<uint32_t>(pos); ++ value.tv_sec = deserialize_<uint64_t>(pos); ++ value.tv_nsec = deserialize_<uint32_t>(pos); + return value; + } + +- unsigned int _serializeString(uint8_t *dest, const string &value) { ++ unsigned int serializeString_(uint8_t *dest, const string &value) { + std::memcpy(dest, value.c_str(), value.size()+1); + return value.size() + 1; + } + +- string _deserializeString(const char **pos) { ++ string deserializeString_(const char **pos) { + size_t length = strlen(*pos); + string value(*pos, length); + *pos += length + 1; + return value; + } + +- unsigned int _serializeBlockId(uint8_t *dest, const BlockId &blockId) { ++ unsigned int serializeBlockId_(uint8_t *dest, const BlockId &blockId) { + blockId.ToBinary(dest); + return blockId.BINARY_LENGTH; + } + +- BlockId _deserializeBlockId(const char **pos) { ++ BlockId deserializeBlockId_(const char **pos) { + BlockId blockId = BlockId::FromBinary(*pos); + *pos += BlockId::BINARY_LENGTH; + return blockId; +@@ -75,35 +75,35 @@ namespace cryfs { + _mode.hasDirFlag()) + ", " + std::to_string(_mode.hasSymlinkFlag()) + ", " + std::to_string(static_cast<uint8_t>(_type)) + ); + unsigned int offset = 0; +- offset += _serialize<uint8_t>(dest + offset, static_cast<uint8_t>(_type)); +- offset += _serialize<uint32_t>(dest + offset, _mode.value()); +- offset += _serialize<uint32_t>(dest + offset, _uid.value()); +- offset += _serialize<uint32_t>(dest + offset, _gid.value()); +- offset += _serializeTimeValue(dest + offset, _lastAccessTime); +- offset += _serializeTimeValue(dest + offset, _lastModificationTime); +- offset += _serializeTimeValue(dest + offset, _lastMetadataChangeTime); +- offset += _serializeString(dest + offset, _name); +- offset += _serializeBlockId(dest + offset, _blockId); ++ offset += serialize_<uint8_t>(dest + offset, static_cast<uint8_t>(_type)); ++ offset += serialize_<uint32_t>(dest + offset, _mode.value()); ++ offset += serialize_<uint32_t>(dest + offset, _uid.value()); ++ offset += serialize_<uint32_t>(dest + offset, _gid.value()); ++ offset += serializeTimeValue_(dest + offset, _lastAccessTime); ++ offset += serializeTimeValue_(dest + offset, _lastModificationTime); ++ offset += serializeTimeValue_(dest + offset, _lastMetadataChangeTime); ++ offset += serializeString_(dest + offset, _name); ++ offset += serializeBlockId_(dest + offset, _blockId); + ASSERT(offset == serializedSize(), "Didn't write correct number of elements"); + } + + const char *DirEntry::deserializeAndAddToVector(const char *pos, vector<DirEntry> *result) { +- fspp::Dir::EntryType type = static_cast<fspp::Dir::EntryType>(_deserialize<uint8_t>(&pos)); +- fspp::mode_t mode = fspp::mode_t(_deserialize<uint32_t>(&pos)); +- fspp::uid_t uid = fspp::uid_t(_deserialize<uint32_t>(&pos)); +- fspp::gid_t gid = fspp::gid_t(_deserialize<uint32_t>(&pos)); +- timespec lastAccessTime = _deserializeTimeValue(&pos); +- timespec lastModificationTime = _deserializeTimeValue(&pos); +- timespec lastMetadataChangeTime = _deserializeTimeValue(&pos); +- string name = _deserializeString(&pos); +- BlockId blockId = _deserializeBlockId(&pos); ++ fspp::Dir::EntryType type = static_cast<fspp::Dir::EntryType>(deserialize_<uint8_t>(&pos)); ++ fspp::mode_t mode = fspp::mode_t(deserialize_<uint32_t>(&pos)); ++ fspp::uid_t uid = fspp::uid_t(deserialize_<uint32_t>(&pos)); ++ fspp::gid_t gid = fspp::gid_t(deserialize_<uint32_t>(&pos)); ++ timespec lastAccessTime = deserializeTimeValue_(&pos); ++ timespec lastModificationTime = deserializeTimeValue_(&pos); ++ timespec lastMetadataChangeTime = deserializeTimeValue_(&pos); ++ string name = deserializeString_(&pos); ++ BlockId blockId = deserializeBlockId_(&pos); + + result->emplace_back(type, name, blockId, mode, uid, gid, lastAccessTime, lastModificationTime, lastMetadataChangeTime); + return pos; + } + + size_t DirEntry::serializedSize() const { +- return 1 + sizeof(uint32_t) + sizeof(uint32_t) + sizeof(uint32_t) + 3*_serializedTimeValueSize() + ( ++ return 1 + sizeof(uint32_t) + sizeof(uint32_t) + sizeof(uint32_t) + 3*serializedTimeValueSize_() + ( + _name.size() + 1) + _blockId.BINARY_LENGTH; + } + } +--- a/src/cryfs/localstate/LocalStateMetadata.cpp ++++ b/src/cryfs/localstate/LocalStateMetadata.cpp +@@ -30,10 +30,10 @@ LocalStateMetadata::LocalStateMetadata(uint32_t myClientId, Hash encryptionKeyHa + + LocalStateMetadata LocalStateMetadata::loadOrGenerate(const bf::path &statePath, const Data& encryptionKey, bool allowReplacedFilesystem) { + auto metadataFile = statePath / "metadata"; +- auto loaded = _load(metadataFile); ++ auto loaded = load_(metadataFile); + if (loaded == none) { + // If it couldn't be loaded, generate a new client id. +- return _generate(metadataFile, encryptionKey); ++ return generate_(metadataFile, encryptionKey); + } + + if (!allowReplacedFilesystem && loaded->_encryptionKeyHash.digest != cpputils::hash::hash(encryptionKey, loaded->_encryptionKeyHash.salt).digest) { +@@ -42,22 +42,22 @@ LocalStateMetadata LocalStateMetadata::loadOrGenerate(const bf::path &statePath, + return *loaded; + } + +-optional<LocalStateMetadata> LocalStateMetadata::_load(const bf::path &metadataFilePath) { ++optional<LocalStateMetadata> LocalStateMetadata::load_(const bf::path &metadataFilePath) { + ifstream file(metadataFilePath.string()); + if (!file.good()) { + // State file doesn't exist + return none; + } +- return _deserialize(file); ++ return deserialize_(file); + } + +-void LocalStateMetadata::_save(const bf::path &metadataFilePath) const { ++void LocalStateMetadata::save_(const bf::path &metadataFilePath) const { + ofstream file(metadataFilePath.string(), std::ios::trunc); +- _serialize(file); ++ serialize_(file); + } + + namespace { +-uint32_t _generateClientId() { ++uint32_t generateClientId_() { + uint32_t result; + do { + result = cpputils::deserialize<uint32_t>(Random::PseudoRandom().getFixedSize<sizeof(uint32_t)>().data()); +@@ -82,8 +82,8 @@ optional<uint32_t> _tryLoadClientIdFromLegacyFile(const bf::path &metadataFilePa + #endif + } + +-LocalStateMetadata LocalStateMetadata::_generate(const bf::path &metadataFilePath, const Data& encryptionKey) { +- uint32_t myClientId = _generateClientId(); ++LocalStateMetadata LocalStateMetadata::generate_(const bf::path &metadataFilePath, const Data& encryptionKey) { ++ uint32_t myClientId = generateClientId_(); + #ifndef CRYFS_NO_COMPATIBILITY + // In the old format, this was stored in a "myClientId" file. If that file exists, load it from there. + optional<uint32_t> legacy = _tryLoadClientIdFromLegacyFile(metadataFilePath); +@@ -93,11 +93,11 @@ LocalStateMetadata LocalStateMetadata::_generate(const bf::path &metadataFilePat + #endif + + LocalStateMetadata result(myClientId, cpputils::hash::hash(encryptionKey, cpputils::hash::generateSalt())); +- result._save(metadataFilePath); ++ result.save_(metadataFilePath); + return result; + } + +-void LocalStateMetadata::_serialize(ostream& stream) const { ++void LocalStateMetadata::serialize_(ostream& stream) const { + ptree pt; + pt.put<uint32_t>("myClientId", myClientId()); + pt.put<string>("encryptionKey.salt", _encryptionKeyHash.salt.ToString()); +@@ -106,7 +106,7 @@ void LocalStateMetadata::_serialize(ostream& stream) const { + write_json(stream, pt); + } + +-LocalStateMetadata LocalStateMetadata::_deserialize(istream& stream) { ++LocalStateMetadata LocalStateMetadata::deserialize_(istream& stream) { + try { + ptree pt; + read_json(stream, pt); +--- a/src/cryfs/localstate/LocalStateMetadata.h ++++ b/src/cryfs/localstate/LocalStateMetadata.h +@@ -20,11 +20,11 @@ class LocalStateMetadata final { + const uint32_t _myClientId; + const cpputils::hash::Hash _encryptionKeyHash; + +- static boost::optional<LocalStateMetadata> _load(const boost::filesystem::path &metadataFilePath); +- static LocalStateMetadata _deserialize(std::istream& stream); +- static LocalStateMetadata _generate(const boost::filesystem::path &metadataFilePath, const cpputils::Data& encryptionKey); +- void _save(const boost::filesystem::path &metadataFilePath) const; +- void _serialize(std::ostream& stream) const; ++ static boost::optional<LocalStateMetadata> load_(const boost::filesystem::path &metadataFilePath); ++ static LocalStateMetadata deserialize_(std::istream& stream); ++ static LocalStateMetadata generate_(const boost::filesystem::path &metadataFilePath, const cpputils::Data& encryptionKey); ++ void save_(const boost::filesystem::path &metadataFilePath) const; ++ void serialize_(std::ostream& stream) const; + + LocalStateMetadata(uint32_t myClientId, cpputils::hash::Hash encryptionKey); + }; diff --git a/sys-fs/sysfsutils/sysfsutils-2.1.1.ebuild b/sys-fs/sysfsutils/sysfsutils-2.1.1.ebuild index 2e2bbef7dcf5..f6d6c7a47465 100644 --- a/sys-fs/sysfsutils/sysfsutils-2.1.1.ebuild +++ b/sys-fs/sysfsutils/sysfsutils-2.1.1.ebuild @@ -10,7 +10,7 @@ SRC_URI="https://github.com/linux-ras/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz LICENSE="GPL-2 LGPL-2.1" SLOT="0" -KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" IUSE="static-libs" src_prepare() { |