diff options
author | V3n3RiX <venerix@rogentos.ro> | 2015-05-17 02:40:46 +0100 |
---|---|---|
committer | V3n3RiX <venerix@rogentos.ro> | 2015-05-17 02:40:46 +0100 |
commit | bde22322915ae30f7d6df35a8e76db7e522e961d (patch) | |
tree | 5c33f6f26a87c2f4917838219ee0069bf9f95b75 | |
parent | 2edb8d6403eb04542e79586768299fe1f3b86353 (diff) | |
parent | cb614da9f4a21e7f89230fbf78ec447249547c96 (diff) |
Merge remote-tracking branch 'upstream/master'
54 files changed, 4769 insertions, 23 deletions
diff --git a/dev-vcs/git-cvs/Manifest b/dev-vcs/git-cvs/Manifest index aee0a87e..b59e1142 100644 --- a/dev-vcs/git-cvs/Manifest +++ b/dev-vcs/git-cvs/Manifest @@ -1,7 +1,16 @@ +DIST git-2.2.1.tar.xz 3590808 SHA256 09422dc9a0bdddf6bdd5b8634c71e1ed3125256c47424e6a2687701e764ef450 SHA512 66bccfa617d2c8e2e61e5aac9b8daef9d4dc151b85906af252cadef3306ecf792ad6d7869deb149f0d04f6e7c3e9f71119bfeece5690e61782fb357e5384027b WHIRLPOOL f288d0227f3ad3045fd7dcc7a7fa6e68cb29c3a4d363d6648aa4f09aa5742a4496c67d63d0ad120a1f8f9420b9ae30930b8ffb3229f176cf429f8b8c8a1d06e6 DIST git-2.2.2-Gentoo-patches.tar.gz 4605 SHA256 70613dd13269a919069deadda91e157928d4ea9ff3b3e54d7755552610275cd0 SHA512 cd7b27108a0cb9449c90c063d7506ae28004d95bc3379542adf77cd135345b591383b264398ede5d7ce946dca01cd064d30688ec6143588d969a1f9dfc896c8c WHIRLPOOL 1ecffa35d78eadda38a517f9c3b1e177e8a84541cabeba95ab670dfa9d8ada9a7f7817c592bd80e9e0b5993549d9e9c2c3325b2eda07a60164679b3048b1d403 +DIST git-2.2.2.tar.xz 3592264 SHA256 aa6d2efcc0c7bb9b9edc6d56d90921706b833972f1d2abe70f71be7838f22d05 SHA512 e3ca6f40de04ed940f521fff4c7e92446e40ad1627acc5b4c090ebf114dcf279d4b1f3efe1189ffa43192fce412165621fc12ea90e2f7d02a6a9ccda655dc69b WHIRLPOOL 9e20def83bbb9b11cb5982fc5f19b09767657ff80f02a237dff6ddaddd3209b4cfb9288bec1b6dc80c6a6db1869cfcaa90e2374279012fc8215771c1a58a1fc2 DIST git-2.3.0.tar.xz 3608648 SHA256 94b23a14d66df536cfe7de37551f55acf908f8bddf30a0f5325a255bb57b0aca SHA512 4be85d3ba3ffac6c55cce648ab6c0a6fe89164e9657480aeee0def79289dbcba486722756b1729d0cedda6012cd582b88129d483ce916bfe06cde5a423f05bc7 WHIRLPOOL d08762cf37536a347aabb2916dce9d482313c41a180b5c440481d9574e9a6c482eb18e0055410171478010e647ae353d70f7113fa07fd8d74bb77909e327ea75 DIST git-2.3.1.tar.xz 3609908 SHA256 1acc4b051576143eb41d80f5675476629588c7c5fb4e6a1dc2c4590f47c498b7 SHA512 f113a9e8c7f9879088de6fa6bfbe9363f25eac279d5eb218ea1f5186cd1c45609760f498a5c066196b3a6e15dd931960e94dcdc14685e8ef1c5c72524113c0cf WHIRLPOOL f1c15ded4f4785d244a5242c823fcf8d63d1c3408c1a1696c99926fdbcab76e23e40d3ee8225925e786ce8eae7597a73a7f9f6cd8e5f1ef7d599ac8b254f9951 +DIST git-2.4.0.tar.xz 3681516 SHA256 b33438dd94659958a74850aacae4a2b3a626baec36d7f29c266130b08045bb24 SHA512 0114c5d0dbfeed46e0ba1c8c0da463c52cae6954238547502f44d9050af0d921906beea96ff2c5f56a7c822200d9daa0f1d040f883c701b88a23ec81ac777138 WHIRLPOOL 1f4667b295e541d4f035de9e415636f317f590e104119a1b212cb321f25120df31e45ba88470ee883d1ea9a0033f2b307981c9d9e5807919475dbc5f81b6b22e +DIST git-htmldocs-2.2.1.tar.xz 975488 SHA256 dee32b06ecf26044169adf40d95cb301c4219416a65c94b89c6513a80f03863b SHA512 68843b883e2fd4f14646ff97ba9e5f3fd4de9f6bbf57a40e9c1bceb6578ebf497e50f2b808fdb4174966e26bf9ac068b44cfdf111652d15796f4f84a7406d336 WHIRLPOOL 771af06f8663eaaa6de4d117277ea05680671c6d72010653ad8e2b037b7a8d77b4a3733b6c48e4775971304b680d0df2596ed1cb4eedbf9948135912ac9509a3 +DIST git-htmldocs-2.2.2.tar.xz 976312 SHA256 41179ff0816189d583f290a227a73788002a319c7ff8c5cada970878c50b901d SHA512 b51b7d619e82d83b4f0b90d31bfccc30291a5beb48b2f5e5e59e75e91e5d772e89b560534a683648cd5480f4bf241f733efc87b30062ef5bb003bf0b5dbeed7f WHIRLPOOL c9dc7ac1a40559e4306d7d97a1619a272faf83d8b05c5a11f5f7b010566cd02fe853fee7eb550c6ccf744db446966a9696f9eb6feeee7ce4f976c6aa88b097d2 DIST git-htmldocs-2.3.0.tar.xz 980936 SHA256 e8e202bae7a89f22a815e15753e9742f2e140b3c0ca548e9a831cfdbfad3a873 SHA512 c4d226784d89469c8faa72f29ab87594682ba46b1887769e29f87ce0db1ac241c9568a8b1530e6d28d43a9861acf803f93dddcc1db59cbe97e21d7b9e374c565 WHIRLPOOL 5bb37b7e7b317ffbf842616b00caad54d4594748726063d2b66c2ccc5fc125a88001506ddff63b15ebaccd7e8a96399bad383eec13dbd8bdc40d5cf7f8696e2b DIST git-htmldocs-2.3.1.tar.xz 981748 SHA256 03bfc92c813a5cbbb34b61fdd7b9cf1226ad9b2b8388d24c649d915df3b93dad SHA512 da371b5a2b73a60681cd6f3b5385bee2668e0d617788194e454a531c2dab652c9b70920cb307858eb5ba15fd0c2d24635862e8f432946b0e9dfee8ee3fcb731a WHIRLPOOL 9334037067d797fd02ae0fd9f6d400ee14d68246755ac48e5897b404214923417728b04added2e05cb52cdc345b3ac9975752507e1e1278cedd74a33cac64b1b +DIST git-htmldocs-2.4.0.tar.xz 990744 SHA256 70ee1fdb70507c74832ac021e8940c8249d9b69f2b86aeaf0888ae41772e93a7 SHA512 03837e671a08f08ab7bd70676e234995b44a53ce27c648c50a6dd5ff97ba4400beb3d4b7874d6c8bde3a00624a7c2dc15d15299eb7ad9874d7dfd722f2c2256a WHIRLPOOL 4877dd0c5fb94f032d11d5d22a3e90e8352f68afb50400eca8c2f42e72adf40c7b9878c7998cacf16ed2011b85f965bcc5c44ecb3fd931783bd07b75b84b800b +DIST git-manpages-2.2.1.tar.xz 369796 SHA256 00f8357fd8ab9e3b397dd087b20d405ed141765d04f3f2162e65fdec7cb1e538 SHA512 9fea3a61afa7336c7da9a4c9c130ed4dd05bb3b5b1cc7fe5a3953109085169d9fb92aafd2b932e6b66ad93ac46e3b60ea05c0f311a8178b53bc1c2184773ada5 WHIRLPOOL f5d1f4d47a2bc244beb3a343db37fe6898fc121310cd6bec0d3292a3352a3c86e16b3538b22317419c760870fb511120a3b03c7bc0585bfaa15c1c7418a4e8ac +DIST git-manpages-2.2.2.tar.xz 369876 SHA256 d30688bb62763bf1b87f5eaf4c0a66c68999e479ccd2963108a5f6f82138147c SHA512 5c2220bb09f199ad4fe5c1bc20a813a6c62daab5e6e7fa87bf24861d25b7f7e0fdde215c4f59d8895badd7c361ed202e7837de48d2d54a155d24759db39dd4e1 WHIRLPOOL 45acc45663f13faf5b8197516bb934723bf84cd6db929443e2bd9fc3a915baf258ee93e782741e088a5f799115ea4ee6043225fc9ea9ec954feed21ba54c9be4 DIST git-manpages-2.3.0.tar.xz 370864 SHA256 1641d4fb67159961b4c295d2d5a05954bae19ebcaaa67728b6d72b70020b7842 SHA512 aa54b9fd96831a690848ef6df708d45999f03bc45aab3600bf578c998bbb225f54a8999ee5012996cb9d6f28d0d18c97209329cfba557b86d3dd0da7a23b1c1b WHIRLPOOL 817db829cd9e9eba93dc537531fd861278baa410d5a9aca09b2010f299d87c744b8a20d707052c6f8d470a5be74dba7a3bba3d20390915cc2a3eed47e84acb75 DIST git-manpages-2.3.1.tar.xz 370756 SHA256 c58b033af1b26baba78ffc940f4f5a0f16c3491a3f5708375d0bcf0d8031a940 SHA512 391ecf5e38921c9494b5f94e8f59d62f509934d1ef10f3b582632255a2bc62cbc894aa1bcd3018eb619516c1834b95bf7acbab6d73f859dbdcab094588fd4b61 WHIRLPOOL 01ed334a73bbb57c977e7f96fd63a7196b88be5560166df78c7250aa98e04dd48558a9775ddffba34d7c23318bc7d89eb53d06fae38b027349cdaabd39f107f2 +DIST git-manpages-2.4.0.tar.xz 372716 SHA256 b616dc6aa02dcac312e6aeae7af148913f76e1f851ba03ba340b4d2db316ecc7 SHA512 158bff66b9f73fc72d3ac6ac3246bebf831551c0ff1e9571913b952f5b891407ab4408ca2daa247869e50d43bb2e951eed6fdb3c39708c769630bbfc618f0efb WHIRLPOOL afed2ad93d6cf3deb571839d268a9aea66d4c2c8571b85a377a6ecd866df8ec8d07d22b65ddb9bc49ec7f16f8c9ecc54e936cd35325f2270264ae8d42e708b01 diff --git a/dev-vcs/git-cvs/git-cvs-2.4.0.ebuild b/dev-vcs/git-cvs/git-cvs-2.4.0.ebuild new file mode 100644 index 00000000..2318a2fa --- /dev/null +++ b/dev-vcs/git-cvs/git-cvs-2.4.0.ebuild @@ -0,0 +1,232 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +GENTOO_DEPEND_ON_PERL=no + +PYTHON_COMPAT=( python2_7 ) +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" +EGIT_MASTER=pu + +SAB_PATCHES_SRC=( "mirror://kogaion/dev-vcs/git/git-2.2.2-Gentoo-patches.tar.gz" ) +inherit sab-patches toolchain-funcs eutils multilib python-single-r1 ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_PN="${PN/-cvs}" +MY_P="${MY_PN}-${MY_PV}" + +DOC_VER=${MY_PV} + +DESCRIPTION="CVS module for GIT, the stupid content tracker" +HOMEPAGE="http://www.git-scm.com/" +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${MY_PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + doc? ( + ${SRC_URI_KORG}/${MY_PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${MY_PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + )" + KEYWORDS="~amd64 ~x86" +fi + +sab-patches_update_SRC_URI + +LICENSE="GPL-2" +SLOT="0" +IUSE="doc" + +RDEPEND="~dev-vcs/git-${PV}[-cvs,perl] + dev-perl/Error + dev-perl/Net-SMTP-SSL + dev-perl/Authen-SASL + >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite + ${PYTHON_DEPS}" +DEPEND="dev-lang/perl:=[-build(-)] + doc? ( + app-text/asciidoc + app-text/docbook2X + sys-apps/texinfo + app-text/xmlto + )" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + DEPEND="${DEPEND} + app-text/asciidoc" +fi + +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} +" + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local myopts + + # broken assumptions, because of broken build system ... + myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease" + myopts+=" INSTALL=install TAR=tar" + myopts+=" SHELL_PATH=${EPREFIX}/bin/sh" + myopts+=" SANE_TOOL_PATH=" + myopts+=" OLD_ICONV=" + myopts+=" NO_EXTERNAL_GREP=" + + # split ebuild: avoid collisions with dev-vcs/git's .mo files + myopts+=" NO_GETTEXT=YesPlease" + + # can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile + + myopts+=" INSTALLDIRS=vendor" + myopts+=" NO_SVN_TESTS=YesPlease" + + has_version '>=app-text/asciidoc-8.0' \ + && myopts+=" ASCIIDOC8=YesPlease" + myopts+=" ASCIIDOC_NO_ROFF=YesPlease" + + # Bug 290465: + # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim' + [[ "${CHOST}" == *-uclibc* ]] && \ + myopts+=" NO_NSEC=YesPlease" + + export MY_MAKEOPTS="${myopts}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + unpack ${MY_PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + use doc && \ + cd "${S}"/Documentation && \ + unpack ${MY_PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + fi + + sab-patches_unpack +} + +src_prepare() { + # see the git ebuild for the list of patches + sab-patches_apply_all + + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile contrib/svn-fe/Makefile || die "sed failed" + + # Fix docbook2texi command + sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \ + Documentation/Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL +} + +git_emake() { + # bug #326625: PERL_PATH, PERL_MM_OPT + # bug #320647: PYTHON_PATH + PYTHON_PATH="${PYTHON}" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PYTHON_PATH="${PYTHON_PATH}" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" + # This is the fix for bug #326625, but it also causes breakage, see bug + # #352693. + # PERL_PATH="${EPREFIX}/usr/bin/env perl" \ +} + +src_configure() { + exportmakeopts +} + +src_compile() { + #if use perl ; then + git_emake perl/PM.stamp || die "emake perl/PM.stamp failed" + git_emake perl/perl.mak || die "emake perl/perl.mak failed" + #fi + git_emake || die "emake failed" + + cd "${S}"/Documentation + if [[ ${PV} == *9999 ]] ; then + git_emake man \ + || die "emake man failed" + if use doc ; then + git_emake info html \ + || die "emake info html failed" + fi + else + if use doc ; then + git_emake info \ + || die "emake info html failed" + fi + fi +} + +src_install() { + git_emake install || die "make install failed" + + rm -rf "${ED}"usr/share/gitweb || die + rm -rf "${ED}"usr/share/git-core/templates || die + rm -rf "${ED}"usr/share/git-gui || die + rm -rf "${ED}"usr/share/gitk || die + + local myrelfile="" + for myfile in "${ED}"usr/libexec/git-core/* "${ED}"usr/$(get_libdir)/* "${ED}"usr/share/man/*/* "${ED}"usr/bin/* ; do + # image dir contains the keyword "cvs" + myrelfile="${myfile/${ED}}" + case "${myrelfile}" in + *cvs*) + true ;; + *) + rm -rf "${myfile}" || die ;; + esac + done + + local libdir="${ED}"usr/$(get_libdir) + if [ -d "${libdir}" ]; then + # must be empty + rmdir "${libdir}" || die + fi + + doman man*/*cvs* || die + if use doc; then + docinto / + dodoc Documentation/*cvs*.txt + dohtml -p / Documentation/*cvs*.html + fi + + # kill empty dirs from ${ED} + find "${ED}" -type d -empty -delete || die +} diff --git a/dev-vcs/git-gui-tools/Manifest b/dev-vcs/git-gui-tools/Manifest index 907657f6..a473135c 100644 --- a/dev-vcs/git-gui-tools/Manifest +++ b/dev-vcs/git-gui-tools/Manifest @@ -1,3 +1,6 @@ +DIST git-2.2.1.tar.xz 3590808 SHA256 09422dc9a0bdddf6bdd5b8634c71e1ed3125256c47424e6a2687701e764ef450 SHA512 66bccfa617d2c8e2e61e5aac9b8daef9d4dc151b85906af252cadef3306ecf792ad6d7869deb149f0d04f6e7c3e9f71119bfeece5690e61782fb357e5384027b WHIRLPOOL f288d0227f3ad3045fd7dcc7a7fa6e68cb29c3a4d363d6648aa4f09aa5742a4496c67d63d0ad120a1f8f9420b9ae30930b8ffb3229f176cf429f8b8c8a1d06e6 DIST git-2.2.2-Gentoo-patches.tar.gz 4605 SHA256 70613dd13269a919069deadda91e157928d4ea9ff3b3e54d7755552610275cd0 SHA512 cd7b27108a0cb9449c90c063d7506ae28004d95bc3379542adf77cd135345b591383b264398ede5d7ce946dca01cd064d30688ec6143588d969a1f9dfc896c8c WHIRLPOOL 1ecffa35d78eadda38a517f9c3b1e177e8a84541cabeba95ab670dfa9d8ada9a7f7817c592bd80e9e0b5993549d9e9c2c3325b2eda07a60164679b3048b1d403 +DIST git-2.2.2.tar.xz 3592264 SHA256 aa6d2efcc0c7bb9b9edc6d56d90921706b833972f1d2abe70f71be7838f22d05 SHA512 e3ca6f40de04ed940f521fff4c7e92446e40ad1627acc5b4c090ebf114dcf279d4b1f3efe1189ffa43192fce412165621fc12ea90e2f7d02a6a9ccda655dc69b WHIRLPOOL 9e20def83bbb9b11cb5982fc5f19b09767657ff80f02a237dff6ddaddd3209b4cfb9288bec1b6dc80c6a6db1869cfcaa90e2374279012fc8215771c1a58a1fc2 DIST git-2.3.0.tar.xz 3608648 SHA256 94b23a14d66df536cfe7de37551f55acf908f8bddf30a0f5325a255bb57b0aca SHA512 4be85d3ba3ffac6c55cce648ab6c0a6fe89164e9657480aeee0def79289dbcba486722756b1729d0cedda6012cd582b88129d483ce916bfe06cde5a423f05bc7 WHIRLPOOL d08762cf37536a347aabb2916dce9d482313c41a180b5c440481d9574e9a6c482eb18e0055410171478010e647ae353d70f7113fa07fd8d74bb77909e327ea75 DIST git-2.3.1.tar.xz 3609908 SHA256 1acc4b051576143eb41d80f5675476629588c7c5fb4e6a1dc2c4590f47c498b7 SHA512 f113a9e8c7f9879088de6fa6bfbe9363f25eac279d5eb218ea1f5186cd1c45609760f498a5c066196b3a6e15dd931960e94dcdc14685e8ef1c5c72524113c0cf WHIRLPOOL f1c15ded4f4785d244a5242c823fcf8d63d1c3408c1a1696c99926fdbcab76e23e40d3ee8225925e786ce8eae7597a73a7f9f6cd8e5f1ef7d599ac8b254f9951 +DIST git-2.4.0.tar.xz 3681516 SHA256 b33438dd94659958a74850aacae4a2b3a626baec36d7f29c266130b08045bb24 SHA512 0114c5d0dbfeed46e0ba1c8c0da463c52cae6954238547502f44d9050af0d921906beea96ff2c5f56a7c822200d9daa0f1d040f883c701b88a23ec81ac777138 WHIRLPOOL 1f4667b295e541d4f035de9e415636f317f590e104119a1b212cb321f25120df31e45ba88470ee883d1ea9a0033f2b307981c9d9e5807919475dbc5f81b6b22e diff --git a/dev-vcs/git-gui-tools/git-gui-tools-2.4.0.ebuild b/dev-vcs/git-gui-tools/git-gui-tools-2.4.0.ebuild new file mode 100644 index 00000000..1d30fbe7 --- /dev/null +++ b/dev-vcs/git-gui-tools/git-gui-tools-2.4.0.ebuild @@ -0,0 +1,205 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +# split ebuild providing only ->>> gitk, gitview, git-gui, git-citool + +GENTOO_DEPEND_ON_PERL=no + +# bug #329479: git-remote-testgit is not multiple-version aware +PYTHON_COMPAT=( python2_7 ) +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" +EGIT_MASTER=pu + +SAB_PATCHES_SRC=( "mirror://kogaion/dev-vcs/git/git-2.2.2-Gentoo-patches.tar.gz" ) +inherit sab-patches toolchain-funcs eutils python-single-r1 ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_PV="${MY_PV/-gui-tools}" +MY_P="${PN}-${MY_PV}" +MY_P="${MY_P/-gui-tools}" + +DESCRIPTION="GUI tools derived from git: gitk, git-gui and gitview" +HOMEPAGE="http://www.git-scm.com/" +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}" + KEYWORDS="~amd64 ~x86" +fi + +sab-patches_update_SRC_URI + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +# Common to both DEPEND and RDEPEND +CDEPEND=" + sys-libs/zlib + dev-lang/tk:=" + +RDEPEND="${CDEPEND} + ~dev-vcs/git-${PV} + dev-vcs/git[-gtk] + dev-vcs/git[-tk] + dev-vcs/git[python] + >=dev-python/pygtk-2.8[${PYTHON_USEDEP}] + >=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}] + ${PYTHON_DEPS}" + +DEPEND="${CDEPEND}" + +SITEFILE=50${PN}-gentoo.el +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} +" + +pkg_setup() { + #if use python ; then + python-single-r1_pkg_setup + #fi +} + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local myopts + + myopts+=" NO_EXPAT=YesPlease" + myopts+=" NO_CURL=YesPlease" + # broken assumptions, because of broken build system ... + myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease" + myopts+=" INSTALL=install TAR=tar" + myopts+=" SHELL_PATH=${EPREFIX}/bin/sh" + myopts+=" SANE_TOOL_PATH=" + myopts+=" OLD_ICONV=" + myopts+=" NO_EXTERNAL_GREP=" + + # split ebuild: avoid collisions with dev-vcs/git's .mo files + myopts+=" NO_GETTEXT=YesPlease" + + # can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile + + myopts+=" NO_PERL=YesPlease" + + # Bug 290465: + # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim' + [[ "${CHOST}" == *-uclibc* ]] && \ + myopts+=" NO_NSEC=YesPlease" + + export MY_MAKEOPTS="${myopts}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + cd "${S}" + #cp "${FILESDIR}"/GIT-VERSION-GEN . + fi + + sab-patches_unpack +} + +src_prepare() { + # see the git ebuild for the list of patches + sab-patches_apply_all + + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile contrib/svn-fe/Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL +} + +git_emake() { + PYTHON_PATH="${PYTHON}" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PYTHON_PATH="${PYTHON_PATH}" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" +} + +src_configure() { + exportmakeopts +} + +src_compile() { + git_emake || die "emake failed" +} + +src_install() { + git_emake \ + install || \ + die "make install failed" + + #if use python && use gtk ; then + python_doscript "${S}"/contrib/gitview/gitview + dodoc "${S}"/contrib/gitview/gitview.txt + #fi + + #find "${ED}"/usr/lib64/perl5/ \ + # -name .packlist \ + # -exec rm \{\} \; + + rm -r "${ED}"usr/share/git-core || die + rm -r "${ED}"usr/libexec/git-core/mergetools || die + + local myfile + + # be sure not to remove tools' lib/python-exec/* + for myfile in "${ED}"usr/lib*/python*; do + if [[ ! ${myfile} = */python-exec ]]; then + rm -r "${myfile}" || die "rm ${myfile} failed" + fi + done + + for myfile in "${ED}"usr/bin/*; do + case "$myfile" in + */gitview*|*/gitk*) + true ;; + *) + rm -f "$myfile" ;; + esac + done + + for myfile in "${ED}"usr/libexec/git-core/*; do + case "$myfile" in + */git-gui|*/git-gui--askpass|*/git-citool) + true ;; + *) + rm -f "$myfile" ;; + esac + done +} diff --git a/dev-vcs/git-subversion/Manifest b/dev-vcs/git-subversion/Manifest index aee0a87e..b59e1142 100644 --- a/dev-vcs/git-subversion/Manifest +++ b/dev-vcs/git-subversion/Manifest @@ -1,7 +1,16 @@ +DIST git-2.2.1.tar.xz 3590808 SHA256 09422dc9a0bdddf6bdd5b8634c71e1ed3125256c47424e6a2687701e764ef450 SHA512 66bccfa617d2c8e2e61e5aac9b8daef9d4dc151b85906af252cadef3306ecf792ad6d7869deb149f0d04f6e7c3e9f71119bfeece5690e61782fb357e5384027b WHIRLPOOL f288d0227f3ad3045fd7dcc7a7fa6e68cb29c3a4d363d6648aa4f09aa5742a4496c67d63d0ad120a1f8f9420b9ae30930b8ffb3229f176cf429f8b8c8a1d06e6 DIST git-2.2.2-Gentoo-patches.tar.gz 4605 SHA256 70613dd13269a919069deadda91e157928d4ea9ff3b3e54d7755552610275cd0 SHA512 cd7b27108a0cb9449c90c063d7506ae28004d95bc3379542adf77cd135345b591383b264398ede5d7ce946dca01cd064d30688ec6143588d969a1f9dfc896c8c WHIRLPOOL 1ecffa35d78eadda38a517f9c3b1e177e8a84541cabeba95ab670dfa9d8ada9a7f7817c592bd80e9e0b5993549d9e9c2c3325b2eda07a60164679b3048b1d403 +DIST git-2.2.2.tar.xz 3592264 SHA256 aa6d2efcc0c7bb9b9edc6d56d90921706b833972f1d2abe70f71be7838f22d05 SHA512 e3ca6f40de04ed940f521fff4c7e92446e40ad1627acc5b4c090ebf114dcf279d4b1f3efe1189ffa43192fce412165621fc12ea90e2f7d02a6a9ccda655dc69b WHIRLPOOL 9e20def83bbb9b11cb5982fc5f19b09767657ff80f02a237dff6ddaddd3209b4cfb9288bec1b6dc80c6a6db1869cfcaa90e2374279012fc8215771c1a58a1fc2 DIST git-2.3.0.tar.xz 3608648 SHA256 94b23a14d66df536cfe7de37551f55acf908f8bddf30a0f5325a255bb57b0aca SHA512 4be85d3ba3ffac6c55cce648ab6c0a6fe89164e9657480aeee0def79289dbcba486722756b1729d0cedda6012cd582b88129d483ce916bfe06cde5a423f05bc7 WHIRLPOOL d08762cf37536a347aabb2916dce9d482313c41a180b5c440481d9574e9a6c482eb18e0055410171478010e647ae353d70f7113fa07fd8d74bb77909e327ea75 DIST git-2.3.1.tar.xz 3609908 SHA256 1acc4b051576143eb41d80f5675476629588c7c5fb4e6a1dc2c4590f47c498b7 SHA512 f113a9e8c7f9879088de6fa6bfbe9363f25eac279d5eb218ea1f5186cd1c45609760f498a5c066196b3a6e15dd931960e94dcdc14685e8ef1c5c72524113c0cf WHIRLPOOL f1c15ded4f4785d244a5242c823fcf8d63d1c3408c1a1696c99926fdbcab76e23e40d3ee8225925e786ce8eae7597a73a7f9f6cd8e5f1ef7d599ac8b254f9951 +DIST git-2.4.0.tar.xz 3681516 SHA256 b33438dd94659958a74850aacae4a2b3a626baec36d7f29c266130b08045bb24 SHA512 0114c5d0dbfeed46e0ba1c8c0da463c52cae6954238547502f44d9050af0d921906beea96ff2c5f56a7c822200d9daa0f1d040f883c701b88a23ec81ac777138 WHIRLPOOL 1f4667b295e541d4f035de9e415636f317f590e104119a1b212cb321f25120df31e45ba88470ee883d1ea9a0033f2b307981c9d9e5807919475dbc5f81b6b22e +DIST git-htmldocs-2.2.1.tar.xz 975488 SHA256 dee32b06ecf26044169adf40d95cb301c4219416a65c94b89c6513a80f03863b SHA512 68843b883e2fd4f14646ff97ba9e5f3fd4de9f6bbf57a40e9c1bceb6578ebf497e50f2b808fdb4174966e26bf9ac068b44cfdf111652d15796f4f84a7406d336 WHIRLPOOL 771af06f8663eaaa6de4d117277ea05680671c6d72010653ad8e2b037b7a8d77b4a3733b6c48e4775971304b680d0df2596ed1cb4eedbf9948135912ac9509a3 +DIST git-htmldocs-2.2.2.tar.xz 976312 SHA256 41179ff0816189d583f290a227a73788002a319c7ff8c5cada970878c50b901d SHA512 b51b7d619e82d83b4f0b90d31bfccc30291a5beb48b2f5e5e59e75e91e5d772e89b560534a683648cd5480f4bf241f733efc87b30062ef5bb003bf0b5dbeed7f WHIRLPOOL c9dc7ac1a40559e4306d7d97a1619a272faf83d8b05c5a11f5f7b010566cd02fe853fee7eb550c6ccf744db446966a9696f9eb6feeee7ce4f976c6aa88b097d2 DIST git-htmldocs-2.3.0.tar.xz 980936 SHA256 e8e202bae7a89f22a815e15753e9742f2e140b3c0ca548e9a831cfdbfad3a873 SHA512 c4d226784d89469c8faa72f29ab87594682ba46b1887769e29f87ce0db1ac241c9568a8b1530e6d28d43a9861acf803f93dddcc1db59cbe97e21d7b9e374c565 WHIRLPOOL 5bb37b7e7b317ffbf842616b00caad54d4594748726063d2b66c2ccc5fc125a88001506ddff63b15ebaccd7e8a96399bad383eec13dbd8bdc40d5cf7f8696e2b DIST git-htmldocs-2.3.1.tar.xz 981748 SHA256 03bfc92c813a5cbbb34b61fdd7b9cf1226ad9b2b8388d24c649d915df3b93dad SHA512 da371b5a2b73a60681cd6f3b5385bee2668e0d617788194e454a531c2dab652c9b70920cb307858eb5ba15fd0c2d24635862e8f432946b0e9dfee8ee3fcb731a WHIRLPOOL 9334037067d797fd02ae0fd9f6d400ee14d68246755ac48e5897b404214923417728b04added2e05cb52cdc345b3ac9975752507e1e1278cedd74a33cac64b1b +DIST git-htmldocs-2.4.0.tar.xz 990744 SHA256 70ee1fdb70507c74832ac021e8940c8249d9b69f2b86aeaf0888ae41772e93a7 SHA512 03837e671a08f08ab7bd70676e234995b44a53ce27c648c50a6dd5ff97ba4400beb3d4b7874d6c8bde3a00624a7c2dc15d15299eb7ad9874d7dfd722f2c2256a WHIRLPOOL 4877dd0c5fb94f032d11d5d22a3e90e8352f68afb50400eca8c2f42e72adf40c7b9878c7998cacf16ed2011b85f965bcc5c44ecb3fd931783bd07b75b84b800b +DIST git-manpages-2.2.1.tar.xz 369796 SHA256 00f8357fd8ab9e3b397dd087b20d405ed141765d04f3f2162e65fdec7cb1e538 SHA512 9fea3a61afa7336c7da9a4c9c130ed4dd05bb3b5b1cc7fe5a3953109085169d9fb92aafd2b932e6b66ad93ac46e3b60ea05c0f311a8178b53bc1c2184773ada5 WHIRLPOOL f5d1f4d47a2bc244beb3a343db37fe6898fc121310cd6bec0d3292a3352a3c86e16b3538b22317419c760870fb511120a3b03c7bc0585bfaa15c1c7418a4e8ac +DIST git-manpages-2.2.2.tar.xz 369876 SHA256 d30688bb62763bf1b87f5eaf4c0a66c68999e479ccd2963108a5f6f82138147c SHA512 5c2220bb09f199ad4fe5c1bc20a813a6c62daab5e6e7fa87bf24861d25b7f7e0fdde215c4f59d8895badd7c361ed202e7837de48d2d54a155d24759db39dd4e1 WHIRLPOOL 45acc45663f13faf5b8197516bb934723bf84cd6db929443e2bd9fc3a915baf258ee93e782741e088a5f799115ea4ee6043225fc9ea9ec954feed21ba54c9be4 DIST git-manpages-2.3.0.tar.xz 370864 SHA256 1641d4fb67159961b4c295d2d5a05954bae19ebcaaa67728b6d72b70020b7842 SHA512 aa54b9fd96831a690848ef6df708d45999f03bc45aab3600bf578c998bbb225f54a8999ee5012996cb9d6f28d0d18c97209329cfba557b86d3dd0da7a23b1c1b WHIRLPOOL 817db829cd9e9eba93dc537531fd861278baa410d5a9aca09b2010f299d87c744b8a20d707052c6f8d470a5be74dba7a3bba3d20390915cc2a3eed47e84acb75 DIST git-manpages-2.3.1.tar.xz 370756 SHA256 c58b033af1b26baba78ffc940f4f5a0f16c3491a3f5708375d0bcf0d8031a940 SHA512 391ecf5e38921c9494b5f94e8f59d62f509934d1ef10f3b582632255a2bc62cbc894aa1bcd3018eb619516c1834b95bf7acbab6d73f859dbdcab094588fd4b61 WHIRLPOOL 01ed334a73bbb57c977e7f96fd63a7196b88be5560166df78c7250aa98e04dd48558a9775ddffba34d7c23318bc7d89eb53d06fae38b027349cdaabd39f107f2 +DIST git-manpages-2.4.0.tar.xz 372716 SHA256 b616dc6aa02dcac312e6aeae7af148913f76e1f851ba03ba340b4d2db316ecc7 SHA512 158bff66b9f73fc72d3ac6ac3246bebf831551c0ff1e9571913b952f5b891407ab4408ca2daa247869e50d43bb2e951eed6fdb3c39708c769630bbfc618f0efb WHIRLPOOL afed2ad93d6cf3deb571839d268a9aea66d4c2c8571b85a377a6ecd866df8ec8d07d22b65ddb9bc49ec7f16f8c9ecc54e936cd35325f2270264ae8d42e708b01 diff --git a/dev-vcs/git-subversion/git-subversion-2.4.0.ebuild b/dev-vcs/git-subversion/git-subversion-2.4.0.ebuild new file mode 100644 index 00000000..4cf7a57c --- /dev/null +++ b/dev-vcs/git-subversion/git-subversion-2.4.0.ebuild @@ -0,0 +1,262 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +GENTOO_DEPEND_ON_PERL=no + +PYTHON_COMPAT=( python2_7 ) +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" +EGIT_MASTER=pu + +SAB_PATCHES_SRC=( "mirror://kogaion/dev-vcs/git/git-2.2.2-Gentoo-patches.tar.gz" ) +inherit sab-patches toolchain-funcs eutils multilib python-single-r1 ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_PN="${PN/-subversion}" +MY_P="${MY_PN}-${MY_PV}" + +DOC_VER=${MY_PV} + +DESCRIPTION="Subversion module for GIT, the stupid content tracker" +HOMEPAGE="http://www.git-scm.com/" +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${MY_PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + doc? ( + ${SRC_URI_KORG}/${MY_PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${MY_PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + )" + KEYWORDS="~amd64 ~x86" +fi + +sab-patches_update_SRC_URI + +LICENSE="GPL-2" +SLOT="0" +IUSE="doc iconv nls +threads" + +RDEPEND="~dev-vcs/git-${PV}[-subversion,perl] + dev-perl/Error + dev-perl/Net-SMTP-SSL + dev-perl/Authen-SASL + dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey + ${PYTHON_DEPS}" +DEPEND="dev-lang/perl:=[-build(-)] + doc? ( + app-text/asciidoc + app-text/docbook2X + sys-apps/texinfo + app-text/xmlto + )" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + DEPEND="${DEPEND} + app-text/asciidoc" +fi + +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} +" + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local myopts + + # broken assumptions, because of broken build system ... + myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease" + myopts+=" INSTALL=install TAR=tar" + myopts+=" SHELL_PATH=${EPREFIX}/bin/sh" + myopts+=" SANE_TOOL_PATH=" + myopts+=" OLD_ICONV=" + myopts+=" NO_EXTERNAL_GREP=" + + # split ebuild: avoid collisions with dev-vcs/git's .mo files + myopts+=" NO_GETTEXT=YesPlease" + + # For svn-fe + #extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')" + extlibs="-lz -lssl -lcrypto ${S}/xdiff/lib.a $(usex threads -lpthread '')" + + # can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile + + myopts+=" INSTALLDIRS=vendor" + myopts+=" NO_SVN_TESTS=YesPlease" + myopts+=" NO_CVS=YesPlease" + + has_version '>=app-text/asciidoc-8.0' \ + && myopts+=" ASCIIDOC8=YesPlease" + myopts+=" ASCIIDOC_NO_ROFF=YesPlease" + + # Bug 290465: + # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim' + [[ "${CHOST}" == *-uclibc* ]] && \ + myopts+=" NO_NSEC=YesPlease" + + export MY_MAKEOPTS="${myopts}" + export EXTLIBS="${extlibs}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + unpack ${MY_PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + use doc && \ + cd "${S}"/Documentation && \ + unpack ${MY_PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + fi + + sab-patches_unpack + +} + +src_prepare() { + # see the git ebuild for the list of patches + sab-patches_apply_all + + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile contrib/svn-fe/Makefile || die "sed failed" + + # Fix docbook2texi command + sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \ + Documentation/Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL +} + +git_emake() { + # bug #326625: PERL_PATH, PERL_MM_OPT + # bug #320647: PYTHON_PATH + PYTHON_PATH="${PYTHON}" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PYTHON_PATH="${PYTHON_PATH}" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" + # This is the fix for bug #326625, but it also causes breakage, see bug + # #352693. + # PERL_PATH="${EPREFIX}/usr/bin/env perl" \ +} + +src_configure() { + exportmakeopts +} + +src_compile() { + #if use perl ; then + git_emake perl/PM.stamp || die "emake perl/PM.stamp failed" + git_emake perl/perl.mak || die "emake perl/perl.mak failed" + #fi + + git_emake || die "emake failed" + + cd "${S}"/Documentation + if [[ ${PV} == *9999 ]] ; then + git_emake man \ + || die "emake man failed" + if use doc ; then + git_emake info html \ + || die "emake info html failed" + fi + else + if use doc ; then + git_emake info \ + || die "emake info html failed" + fi + fi + + cd "${S}"/contrib/svn-fe + # by defining EXTLIBS we override the detection for libintl and + # libiconv, bug #516168 + local nlsiconv= + use nls && use !elibc_glibc && nlsiconv+=" -lintl" + use iconv && use !elibc_glibc && nlsiconv+=" -liconv" + git_emake EXTLIBS="${EXTLIBS} ${nlsiconv}" || die "emake svn-fe failed" + if use doc ; then + git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed" + fi +} + +src_install() { + git_emake \ + install || \ + die "make install failed" + + rm -r "${ED}"usr/share/gitweb || die + rm -r "${ED}"usr/bin || die + rm -r "${ED}"usr/share/git-core/templates || die + rm -r "${ED}"usr/share/git-gui || die + rm -r "${ED}"usr/share/gitk || die + + # avoid conflict with dev-vcs/git + # it looks weird but this binary is installed by git ebuild + # so removing in git-subversion + rm "${ED}"usr/libexec/git-core/git-remote-testsvn || die + + for myfile in "${ED}"usr/libexec/git-core/* "${ED}"usr/$(get_libdir)/* "${ED}"usr/share/man/*/*; do + case "$myfile" in + *svn*) + true ;; + *) + rm -r "${myfile}" || die ;; + esac + done + + local libdir=${ED}usr/$(get_libdir) + if [[ -d ${libdir} ]]; then + # must be empty + rmdir "${libdir}" || die + fi + + doman man*/*svn* || die + if use doc; then + docinto / + dodoc Documentation/*svn*.txt + dohtml -p / Documentation/*svn*.html + fi + + cd "${S}"/contrib/svn-fe + dobin svn-fe + dodoc svn-fe.txt + use doc && doman svn-fe.1 && dohtml svn-fe.html + cd "${S}" + + # kill empty dirs from ${ED} + find "${ED}" -type d -empty -delete || die +} diff --git a/dev-vcs/git/Manifest b/dev-vcs/git/Manifest index aee0a87e..b59e1142 100644 --- a/dev-vcs/git/Manifest +++ b/dev-vcs/git/Manifest @@ -1,7 +1,16 @@ +DIST git-2.2.1.tar.xz 3590808 SHA256 09422dc9a0bdddf6bdd5b8634c71e1ed3125256c47424e6a2687701e764ef450 SHA512 66bccfa617d2c8e2e61e5aac9b8daef9d4dc151b85906af252cadef3306ecf792ad6d7869deb149f0d04f6e7c3e9f71119bfeece5690e61782fb357e5384027b WHIRLPOOL f288d0227f3ad3045fd7dcc7a7fa6e68cb29c3a4d363d6648aa4f09aa5742a4496c67d63d0ad120a1f8f9420b9ae30930b8ffb3229f176cf429f8b8c8a1d06e6 DIST git-2.2.2-Gentoo-patches.tar.gz 4605 SHA256 70613dd13269a919069deadda91e157928d4ea9ff3b3e54d7755552610275cd0 SHA512 cd7b27108a0cb9449c90c063d7506ae28004d95bc3379542adf77cd135345b591383b264398ede5d7ce946dca01cd064d30688ec6143588d969a1f9dfc896c8c WHIRLPOOL 1ecffa35d78eadda38a517f9c3b1e177e8a84541cabeba95ab670dfa9d8ada9a7f7817c592bd80e9e0b5993549d9e9c2c3325b2eda07a60164679b3048b1d403 +DIST git-2.2.2.tar.xz 3592264 SHA256 aa6d2efcc0c7bb9b9edc6d56d90921706b833972f1d2abe70f71be7838f22d05 SHA512 e3ca6f40de04ed940f521fff4c7e92446e40ad1627acc5b4c090ebf114dcf279d4b1f3efe1189ffa43192fce412165621fc12ea90e2f7d02a6a9ccda655dc69b WHIRLPOOL 9e20def83bbb9b11cb5982fc5f19b09767657ff80f02a237dff6ddaddd3209b4cfb9288bec1b6dc80c6a6db1869cfcaa90e2374279012fc8215771c1a58a1fc2 DIST git-2.3.0.tar.xz 3608648 SHA256 94b23a14d66df536cfe7de37551f55acf908f8bddf30a0f5325a255bb57b0aca SHA512 4be85d3ba3ffac6c55cce648ab6c0a6fe89164e9657480aeee0def79289dbcba486722756b1729d0cedda6012cd582b88129d483ce916bfe06cde5a423f05bc7 WHIRLPOOL d08762cf37536a347aabb2916dce9d482313c41a180b5c440481d9574e9a6c482eb18e0055410171478010e647ae353d70f7113fa07fd8d74bb77909e327ea75 DIST git-2.3.1.tar.xz 3609908 SHA256 1acc4b051576143eb41d80f5675476629588c7c5fb4e6a1dc2c4590f47c498b7 SHA512 f113a9e8c7f9879088de6fa6bfbe9363f25eac279d5eb218ea1f5186cd1c45609760f498a5c066196b3a6e15dd931960e94dcdc14685e8ef1c5c72524113c0cf WHIRLPOOL f1c15ded4f4785d244a5242c823fcf8d63d1c3408c1a1696c99926fdbcab76e23e40d3ee8225925e786ce8eae7597a73a7f9f6cd8e5f1ef7d599ac8b254f9951 +DIST git-2.4.0.tar.xz 3681516 SHA256 b33438dd94659958a74850aacae4a2b3a626baec36d7f29c266130b08045bb24 SHA512 0114c5d0dbfeed46e0ba1c8c0da463c52cae6954238547502f44d9050af0d921906beea96ff2c5f56a7c822200d9daa0f1d040f883c701b88a23ec81ac777138 WHIRLPOOL 1f4667b295e541d4f035de9e415636f317f590e104119a1b212cb321f25120df31e45ba88470ee883d1ea9a0033f2b307981c9d9e5807919475dbc5f81b6b22e +DIST git-htmldocs-2.2.1.tar.xz 975488 SHA256 dee32b06ecf26044169adf40d95cb301c4219416a65c94b89c6513a80f03863b SHA512 68843b883e2fd4f14646ff97ba9e5f3fd4de9f6bbf57a40e9c1bceb6578ebf497e50f2b808fdb4174966e26bf9ac068b44cfdf111652d15796f4f84a7406d336 WHIRLPOOL 771af06f8663eaaa6de4d117277ea05680671c6d72010653ad8e2b037b7a8d77b4a3733b6c48e4775971304b680d0df2596ed1cb4eedbf9948135912ac9509a3 +DIST git-htmldocs-2.2.2.tar.xz 976312 SHA256 41179ff0816189d583f290a227a73788002a319c7ff8c5cada970878c50b901d SHA512 b51b7d619e82d83b4f0b90d31bfccc30291a5beb48b2f5e5e59e75e91e5d772e89b560534a683648cd5480f4bf241f733efc87b30062ef5bb003bf0b5dbeed7f WHIRLPOOL c9dc7ac1a40559e4306d7d97a1619a272faf83d8b05c5a11f5f7b010566cd02fe853fee7eb550c6ccf744db446966a9696f9eb6feeee7ce4f976c6aa88b097d2 DIST git-htmldocs-2.3.0.tar.xz 980936 SHA256 e8e202bae7a89f22a815e15753e9742f2e140b3c0ca548e9a831cfdbfad3a873 SHA512 c4d226784d89469c8faa72f29ab87594682ba46b1887769e29f87ce0db1ac241c9568a8b1530e6d28d43a9861acf803f93dddcc1db59cbe97e21d7b9e374c565 WHIRLPOOL 5bb37b7e7b317ffbf842616b00caad54d4594748726063d2b66c2ccc5fc125a88001506ddff63b15ebaccd7e8a96399bad383eec13dbd8bdc40d5cf7f8696e2b DIST git-htmldocs-2.3.1.tar.xz 981748 SHA256 03bfc92c813a5cbbb34b61fdd7b9cf1226ad9b2b8388d24c649d915df3b93dad SHA512 da371b5a2b73a60681cd6f3b5385bee2668e0d617788194e454a531c2dab652c9b70920cb307858eb5ba15fd0c2d24635862e8f432946b0e9dfee8ee3fcb731a WHIRLPOOL 9334037067d797fd02ae0fd9f6d400ee14d68246755ac48e5897b404214923417728b04added2e05cb52cdc345b3ac9975752507e1e1278cedd74a33cac64b1b +DIST git-htmldocs-2.4.0.tar.xz 990744 SHA256 70ee1fdb70507c74832ac021e8940c8249d9b69f2b86aeaf0888ae41772e93a7 SHA512 03837e671a08f08ab7bd70676e234995b44a53ce27c648c50a6dd5ff97ba4400beb3d4b7874d6c8bde3a00624a7c2dc15d15299eb7ad9874d7dfd722f2c2256a WHIRLPOOL 4877dd0c5fb94f032d11d5d22a3e90e8352f68afb50400eca8c2f42e72adf40c7b9878c7998cacf16ed2011b85f965bcc5c44ecb3fd931783bd07b75b84b800b +DIST git-manpages-2.2.1.tar.xz 369796 SHA256 00f8357fd8ab9e3b397dd087b20d405ed141765d04f3f2162e65fdec7cb1e538 SHA512 9fea3a61afa7336c7da9a4c9c130ed4dd05bb3b5b1cc7fe5a3953109085169d9fb92aafd2b932e6b66ad93ac46e3b60ea05c0f311a8178b53bc1c2184773ada5 WHIRLPOOL f5d1f4d47a2bc244beb3a343db37fe6898fc121310cd6bec0d3292a3352a3c86e16b3538b22317419c760870fb511120a3b03c7bc0585bfaa15c1c7418a4e8ac +DIST git-manpages-2.2.2.tar.xz 369876 SHA256 d30688bb62763bf1b87f5eaf4c0a66c68999e479ccd2963108a5f6f82138147c SHA512 5c2220bb09f199ad4fe5c1bc20a813a6c62daab5e6e7fa87bf24861d25b7f7e0fdde215c4f59d8895badd7c361ed202e7837de48d2d54a155d24759db39dd4e1 WHIRLPOOL 45acc45663f13faf5b8197516bb934723bf84cd6db929443e2bd9fc3a915baf258ee93e782741e088a5f799115ea4ee6043225fc9ea9ec954feed21ba54c9be4 DIST git-manpages-2.3.0.tar.xz 370864 SHA256 1641d4fb67159961b4c295d2d5a05954bae19ebcaaa67728b6d72b70020b7842 SHA512 aa54b9fd96831a690848ef6df708d45999f03bc45aab3600bf578c998bbb225f54a8999ee5012996cb9d6f28d0d18c97209329cfba557b86d3dd0da7a23b1c1b WHIRLPOOL 817db829cd9e9eba93dc537531fd861278baa410d5a9aca09b2010f299d87c744b8a20d707052c6f8d470a5be74dba7a3bba3d20390915cc2a3eed47e84acb75 DIST git-manpages-2.3.1.tar.xz 370756 SHA256 c58b033af1b26baba78ffc940f4f5a0f16c3491a3f5708375d0bcf0d8031a940 SHA512 391ecf5e38921c9494b5f94e8f59d62f509934d1ef10f3b582632255a2bc62cbc894aa1bcd3018eb619516c1834b95bf7acbab6d73f859dbdcab094588fd4b61 WHIRLPOOL 01ed334a73bbb57c977e7f96fd63a7196b88be5560166df78c7250aa98e04dd48558a9775ddffba34d7c23318bc7d89eb53d06fae38b027349cdaabd39f107f2 +DIST git-manpages-2.4.0.tar.xz 372716 SHA256 b616dc6aa02dcac312e6aeae7af148913f76e1f851ba03ba340b4d2db316ecc7 SHA512 158bff66b9f73fc72d3ac6ac3246bebf831551c0ff1e9571913b952f5b891407ab4408ca2daa247869e50d43bb2e951eed6fdb3c39708c769630bbfc618f0efb WHIRLPOOL afed2ad93d6cf3deb571839d268a9aea66d4c2c8571b85a377a6ecd866df8ec8d07d22b65ddb9bc49ec7f16f8c9ecc54e936cd35325f2270264ae8d42e708b01 diff --git a/dev-vcs/git/git-2.4.0.ebuild b/dev-vcs/git/git-2.4.0.ebuild new file mode 100644 index 00000000..4b3417c8 --- /dev/null +++ b/dev-vcs/git/git-2.4.0.ebuild @@ -0,0 +1,647 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +GENTOO_DEPEND_ON_PERL=no + +# bug #329479: git-remote-testgit is not multiple-version aware +PYTHON_COMPAT=( python2_7 ) +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" +EGIT_MASTER=pu + +SAB_PATCHES_SRC=( "mirror://kogaion/dev-vcs/git/git-2.2.2-Gentoo-patches.tar.gz" ) +inherit sab-patches toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_P="${PN}-${MY_PV}" + +DOC_VER=${MY_PV} + +DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team" +HOMEPAGE="http://www.git-scm.com/" +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + doc? ( + ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + )" + KEYWORDS="~amd64 ~x86" +fi + +sab-patches_update_SRC_URI + +LICENSE="GPL-2" +SLOT="0" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv mediawiki +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" + +# Common to both DEPEND and RDEPEND +CDEPEND=" + dev-libs/openssl:0= + sys-libs/zlib + pcre? ( dev-libs/libpcre ) + perl? ( dev-lang/perl:=[-build(-)] ) + tk? ( dev-lang/tk:= ) + curl? ( + net-misc/curl + webdav? ( dev-libs/expat ) + ) + emacs? ( virtual/emacs ) + gnome-keyring? ( gnome-base/libgnome-keyring )" + +RDEPEND="${CDEPEND} + gpg? ( app-crypt/gnupg ) + mediawiki? ( + dev-perl/HTML-Tree + dev-perl/MediaWiki-API + ) + perl? ( dev-perl/Error + dev-perl/Net-SMTP-SSL + dev-perl/Authen-SASL + cgi? ( virtual/perl-CGI highlight? ( app-text/highlight ) ) + cvs? ( >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite ) + subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey ) + ) + python? ( gtk? + ( + >=dev-python/pygtk-2.8[${PYTHON_USEDEP}] + >=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}] + ) + ${PYTHON_DEPS} )" + +# This is how info docs are created with Git: +# .txt/asciidoc --(asciidoc)---------> .xml/docbook +# .xml/docbook --(docbook2texi.pl)--> .texi +# .texi --(makeinfo)---------> .info +DEPEND="${CDEPEND} + doc? ( + app-text/asciidoc + app-text/docbook2X + sys-apps/texinfo + app-text/xmlto + ) + nls? ( sys-devel/gettext ) + test? ( app-crypt/gnupg )" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + DEPEND="${DEPEND} + app-text/asciidoc" +fi + +SITEFILE=50${PN}-gentoo.el +S="${WORKDIR}/${MY_P}" + +REQUIRED_USE=" + cgi? ( perl ) + cvs? ( perl ) + mediawiki? ( perl ) + subversion? ( perl ) + webdav? ( curl ) + gtk? ( python ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +pkg_setup() { + if use subversion && has_version "dev-vcs/subversion[dso]"; then + ewarn "Per Gentoo bugs #223747, #238586, when subversion is built" + ewarn "with USE=dso, there may be weird crashes in git-svn. You" + ewarn "have been warned." + fi + if use python ; then + python-single-r1_pkg_setup + fi +} + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local myopts + + if use blksha1 ; then + myopts+=" BLK_SHA1=YesPlease" + elif use ppcsha1 ; then + myopts+=" PPC_SHA1=YesPlease" + fi + + if use curl ; then + use webdav || myopts+=" NO_EXPAT=YesPlease" + else + myopts+=" NO_CURL=YesPlease" + fi + + # broken assumptions, because of broken build system ... + myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease" + myopts+=" INSTALL=install TAR=tar" + myopts+=" SHELL_PATH=${EPREFIX}/bin/sh" + myopts+=" SANE_TOOL_PATH=" + myopts+=" OLD_ICONV=" + myopts+=" NO_EXTERNAL_GREP=" + + # For svn-fe + extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')" + + # can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile + + use iconv \ + || myopts+=" NO_ICONV=YesPlease" + use nls \ + || myopts+=" NO_GETTEXT=YesPlease" + use tk \ + || myopts+=" NO_TCLTK=YesPlease" + use pcre \ + && myopts+=" USE_LIBPCRE=yes" \ + && extlibs+=" -lpcre" + use perl \ + && myopts+=" INSTALLDIRS=vendor" \ + || myopts+=" NO_PERL=YesPlease" + use python \ + || myopts+=" NO_PYTHON=YesPlease" + use subversion \ + || myopts+=" NO_SVN_TESTS=YesPlease" + use threads \ + && myopts+=" THREADED_DELTA_SEARCH=YesPlease" \ + || myopts+=" NO_PTHREADS=YesPlease" + use cvs \ + || myopts+=" NO_CVS=YesPlease" +# Disabled until ~m68k-mint can be keyworded again +# if [[ ${CHOST} == *-mint* ]] ; then +# myopts+=" NO_MMAP=YesPlease" +# myopts+=" NO_IPV6=YesPlease" +# myopts+=" NO_STRLCPY=YesPlease" +# myopts+=" NO_MEMMEM=YesPlease" +# myopts+=" NO_MKDTEMP=YesPlease" +# myopts+=" NO_MKSTEMPS=YesPlease" +# fi + if [[ ${CHOST} == ia64-*-hpux* ]]; then + myopts+=" NO_NSEC=YesPlease" + fi + if [[ ${CHOST} == *-*-aix* ]]; then + myopts+=" NO_FNMATCH_CASEFOLD=YesPlease" + fi + if [[ ${CHOST} == *-solaris* ]]; then + myopts+=" NEEDS_LIBICONV=YesPlease" + fi + + has_version '>=app-text/asciidoc-8.0' \ + && myopts+=" ASCIIDOC8=YesPlease" + myopts+=" ASCIIDOC_NO_ROFF=YesPlease" + + # Bug 290465: + # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim' + [[ "${CHOST}" == *-uclibc* ]] && \ + myopts+=" NO_NSEC=YesPlease" + + export MY_MAKEOPTS="${myopts}" + export EXTLIBS="${extlibs}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + use doc && \ + cd "${S}"/Documentation && \ + unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + cd "${S}" + #cp "${FILESDIR}"/GIT-VERSION-GEN . + fi + + sab-patches_unpack +} + +src_prepare() { + # bug #350330 - automagic CVS when we don't want it is bad. + # git-...-optional-cvs.patch + + # git-...-mw-vendor.patch + # git-...-svn-fe-linking.patch + sab-patches_apply_all + + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile contrib/svn-fe/Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL + + # Fix docbook2texi command + sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \ + Documentation/Makefile || die "sed failed" + + # Fix git-subtree missing DESTDIR + sed -i \ + -e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \ + -e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \ + contrib/subtree/Makefile +} + +git_emake() { + # bug #326625: PERL_PATH, PERL_MM_OPT + # bug #320647: PYTHON_PATH + PYTHON_PATH="" + use python && PYTHON_PATH="${PYTHON}" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PYTHON_PATH="${PYTHON_PATH}" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" + # This is the fix for bug #326625, but it also causes breakage, see bug + # #352693. + # PERL_PATH="${EPREFIX}/usr/bin/env perl" \ +} + +src_configure() { + exportmakeopts +} + +src_compile() { + if use perl ; then + git_emake perl/PM.stamp || die "emake perl/PM.stamp failed" + git_emake perl/perl.mak || die "emake perl/perl.mak failed" + fi + git_emake || die "emake failed" + + if use emacs ; then + elisp-compile contrib/emacs/git{,-blame}.el + fi + + if use perl && use cgi ; then + git_emake \ + gitweb/gitweb.cgi \ + || die "emake gitweb/gitweb.cgi failed" + fi + + if [[ ${CHOST} == *-darwin* ]]; then + cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain" + git_emake || die "emake credential-osxkeychain" + fi + + cd "${S}"/Documentation + if [[ ${PV} == *9999 ]] ; then + git_emake man \ + || die "emake man failed" + if use doc ; then + git_emake info html \ + || die "emake info html failed" + fi + else + if use doc ; then + git_emake info \ + || die "emake info html failed" + fi + fi + + if use subversion ; then + cd "${S}"/contrib/svn-fe + # by defining EXTLIBS we override the detection for libintl and + # libiconv, bug #516168 + local nlsiconv= + use nls && use !elibc_glibc && nlsiconv+=" -lintl" + use iconv && use !elibc_glibc && nlsiconv+=" -liconv" + git_emake EXTLIBS="${EXTLIBS} ${nlsiconv}" || die "emake svn-fe failed" + if use doc ; then + git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed" + fi + cd "${S}" + fi + + if use gnome-keyring ; then + cd "${S}"/contrib/credential/gnome-keyring + git_emake || die "emake git-credential-gnome-keyring failed" + fi + + cd "${S}"/contrib/subtree + git_emake + use doc && git_emake doc + + if use mediawiki ; then + cd "${S}"/contrib/mw-to-git + git_emake + fi +} + +src_install() { + git_emake \ + install || \ + die "make install failed" + + if [[ ${CHOST} == *-darwin* ]]; then + dobin contrib/credential/osxkeychain/git-credential-osxkeychain + fi + + # Depending on the tarball and manual rebuild of the documentation, the + # manpages may exist in either OR both of these directories. + if ! use cvs; then + find man? -name "*git*cvs*" | xargs rm + fi + find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157] + find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157] + + dodoc README Documentation/{SubmittingPatches,CodingGuidelines} + use doc && dodir /usr/share/doc/${PF}/html + for d in / /howto/ /technical/ ; do + docinto ${d} + dodoc Documentation${d}*.txt + use doc && dohtml -p ${d} Documentation${d}*.html + done + docinto / + # Upstream does not ship this pre-built :-( + use doc && doinfo Documentation/{git,gitman}.info + + newbashcomp contrib/completion/git-completion.bash ${PN} + bashcomp_alias git gitk + # Not really a bash-completion file (bug #477920) + # but still needed uncompressed (bug #507480) + insinto /usr/share/${PN} + doins contrib/completion/git-prompt.sh + + if use emacs ; then + elisp-install ${PN} contrib/emacs/git.{el,elc} + elisp-install ${PN} contrib/emacs/git-blame.{el,elc} + #elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc} + # don't add automatically to the load-path, so the sitefile + # can do a conditional loading + touch "${ED}${SITELISP}/${PN}/compat/.nosearch" + elisp-site-file-install "${FILESDIR}"/${SITEFILE} + fi + + if use python && use gtk ; then + python_doscript "${S}"/contrib/gitview/gitview + dodoc "${S}"/contrib/gitview/gitview.txt + fi + + #dobin contrib/fast-import/git-p4 # Moved upstream + #dodoc contrib/fast-import/git-p4.txt # Moved upstream + newbin contrib/fast-import/import-tars.perl import-tars + exeinto /usr/libexec/git-core/ + newexe contrib/git-resurrect.sh git-resurrect + + # git-subtree + cd "${S}"/contrib/subtree + git_emake install || die "Failed to emake install git-subtree" + if use doc ; then + git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree" + fi + newdoc README README.git-subtree + dodoc git-subtree.txt + cd "${S}" + + if use mediawiki ; then + cd "${S}"/contrib/mw-to-git + git_emake install + cd "${S}" + fi + + # diff-highlight + dobin contrib/diff-highlight/diff-highlight + newdoc contrib/diff-highlight/README README.diff-highlight + + # git-jump + exeinto /usr/libexec/git-core/ + doexe contrib/git-jump/git-jump + newdoc contrib/git-jump/README git-jump.txt + + # git-contacts + exeinto /usr/libexec/git-core/ + doexe contrib/contacts/git-contacts + dodoc contrib/contacts/git-contacts.txt + + if use gnome-keyring ; then + cd "${S}"/contrib/credential/gnome-keyring + dobin git-credential-gnome-keyring + fi + + if use subversion ; then + cd "${S}"/contrib/svn-fe + dobin svn-fe + dodoc svn-fe.txt + use doc && doman svn-fe.1 && dohtml svn-fe.html + cd "${S}" + fi + + dodir /usr/share/${PN}/contrib + # The following are excluded: + # completion - installed above + # credential/gnome-keyring TODO + # diff-highlight - done above + # emacs - installed above + # examples - these are stuff that is not used in Git anymore actually + # git-jump - done above + # gitview - installed above + # p4import - excluded because fast-import has a better one + # patches - stuff the Git guys made to go upstream to other places + # persistent-https - TODO + # mw-to-git - TODO + # subtree - build seperately + # svnimport - use git-svn + # thunderbird-patch-inline - fixes thunderbird + for i in \ + buildsystems convert-objects fast-import \ + hg-to-git hooks remotes2config.sh rerere-train.sh \ + stats workdir \ + ; do + cp -rf \ + "${S}"/contrib/${i} \ + "${ED}"/usr/share/${PN}/contrib \ + || die "Failed contrib ${i}" + done + + if use perl && use cgi ; then + # We used to install in /usr/share/${PN}/gitweb + # but upstream installs in /usr/share/gitweb + # so we will install a symlink and use their location for compat with other + # distros + dosym /usr/share/gitweb /usr/share/${PN}/gitweb + + # INSTALL discusses configuration issues, not just installation + docinto / + newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb + newdoc "${S}"/gitweb/README README.gitweb + + find "${ED}"/usr/lib64/perl5/ \ + -name .packlist \ + -exec rm \{\} \; + else + rm -rf "${ED}"/usr/share/gitweb + fi + + if ! use subversion ; then + rm -f "${ED}"/usr/libexec/git-core/git-svn \ + "${ED}"/usr/share/man/man1/git-svn.1* + fi + + if use xinetd ; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/git-daemon.xinetd git-daemon + fi + + if use !prefix ; then + newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon + newconfd "${FILESDIR}"/git-daemon.confd git-daemon + systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service" + systemd_dounit "${FILESDIR}/git-daemon.socket" + fi + + perl_delete_localpod + + # burn CVS with fire, see #373439 + if ! use cvs; then + rm -r "${ED}"/usr/bin/git-cvsserver \ + "${ED}"/usr/libexec/git-core/git-cvs* || die + fi +} + +src_test() { + local disabled="" #t7004-tag.sh" #520270 + local tests_cvs="t9200-git-cvsexportcommit.sh \ + t9400-git-cvsserver-server.sh \ + t9401-git-cvsserver-crlf.sh \ + t9402-git-cvsserver-refs.sh \ + t9600-cvsimport.sh \ + t9601-cvsimport-vendor-branch.sh \ + t9602-cvsimport-branches-tags.sh \ + t9603-cvsimport-patchsets.sh \ + t9604-cvsimport-timestamps.sh" + local tests_perl="t3701-add-interactive.sh \ + t5502-quickfetch.sh \ + t5512-ls-remote.sh \ + t5520-pull.sh \ + t7106-reset-unborn-branch.sh \ + t7501-commit.sh" + # Bug #225601 - t0004 is not suitable for root perm + # Bug #219839 - t1004 is not suitable for root perm + # t0001-init.sh - check for init notices EPERM* fails + local tests_nonroot="t0001-init.sh \ + t0004-unwritable.sh \ + t0070-fundamental.sh \ + t1004-read-tree-m-u-wf.sh \ + t3700-add.sh \ + t7300-clean.sh" + # t9100 still fails with symlinks in SVN 1.7 + local test_svn="t9100-git-svn-basic.sh" + + # Unzip is used only for the testcase code, not by any normal parts of Git. + if ! has_version app-arch/unzip ; then + einfo "Disabling tar-tree tests" + disabled="${disabled} t5000-tar-tree.sh" + fi + + cvs=0 + use cvs && let cvs=$cvs+1 + if [[ ${EUID} -eq 0 ]]; then + if [[ $cvs -eq 1 ]]; then + ewarn "Skipping CVS tests because CVS does not work as root!" + ewarn "You should retest with FEATURES=userpriv!" + disabled="${disabled} ${tests_cvs}" + fi + einfo "Skipping other tests that require being non-root" + disabled="${disabled} ${tests_nonroot}" + else + [[ $cvs -gt 0 ]] && \ + has_version dev-vcs/cvs && \ + let cvs=$cvs+1 + [[ $cvs -gt 1 ]] && \ + has_version "dev-vcs/cvs[server]" && \ + let cvs=$cvs+1 + if [[ $cvs -lt 3 ]]; then + einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])" + disabled="${disabled} ${tests_cvs}" + fi + fi + + if ! use perl ; then + einfo "Disabling tests that need Perl" + disabled="${disabled} ${tests_perl}" + fi + + einfo "Disabling tests that fail with SVN 1.7" + disabled="${disabled} ${test_svn}" + + # Reset all previously disabled tests + cd "${S}/t" + for i in *.sh.DISABLED ; do + [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}" + done + einfo "Disabled tests:" + for i in ${disabled} ; do + [[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i" + done + + # Avoid the test system removing the results because we want them ourselves + sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \ + -i "${S}"/t/Makefile + + # Clean old results first, must always run + cd "${S}/t" + nonfatal git_emake clean + + # Now run the tests, keep going if we hit an error, and don't terminate on + # failure + cd "${S}" + einfo "Start test run" + #MAKEOPTS=-j1 + nonfatal git_emake --keep-going test + rc=$? + + # Display nice results, now print the results + cd "${S}/t" + nonfatal git_emake aggregate-results + + # And bail if there was a problem + [ $rc -eq 0 ] || die "tests failed. Please file a bug." +} + +showpkgdeps() { + local pkg=$1 + shift + elog " $(printf "%-17s:" ${pkg}) ${@}" +} + +pkg_postinst() { + use emacs && elisp-site-regen + einfo "Please read /usr/share/bash-completion/git for Git bash command completion" + einfo "Please read /usr/share/git/git-prompt.sh for Git bash prompt" + einfo "Note that the prompt bash code is now in that separate script" + elog "These additional scripts need some dependencies:" + echo + showpkgdeps git-quiltimport "dev-util/quilt" + showpkgdeps git-instaweb \ + "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )" + echo +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/eclass/kogaion-kernel.eclass b/eclass/kogaion-kernel.eclass index 82892701..36c0888c 100644 --- a/eclass/kogaion-kernel.eclass +++ b/eclass/kogaion-kernel.eclass @@ -219,7 +219,7 @@ fi _get_real_kv_full() { if [[ "${KV_MAJOR}${KV_MINOR}" -eq 26 ]]; then echo "${ORIGINAL_KV_FULL}" - elif [[ "${OKV/.*}" = "3" ]]; then + elif [[ "${OKV/.*}" -ge "3" ]]; then # Linux 3.x support, KV_FULL is set to: 3.0-kogaion # need to add another final .0 to the version part echo "${ORIGINAL_KV_FULL/-/.0-}" @@ -359,7 +359,7 @@ else sys-apps/sed sys-devel/autoconf sys-devel/make - || ( >=sys-kernel/genkernel-next-5 >=sys-kernel/genkernel-3.4.45-r2 ) + || ( >=sys-kernel/genkernel-next-5[dmraid(+)?,mdadm(+)?] >=sys-kernel/genkernel-3.4.45-r2 ) arm? ( dev-embedded/u-boot-tools ) amd64? ( sys-apps/v86d ) x86? ( sys-apps/v86d ) @@ -433,11 +433,6 @@ kogaion-kernel_src_unpack() { sed -i "s/^EXTRAVERSION :=.*//" "${S}/Makefile" || die fi OKV="${okv}" - - # Let's handle EAPIs 0 and 1... - case ${EAPI:-0} in - 0|1) kogaion-kernel_src_prepare ;; - esac } kogaion-kernel_src_prepare() { @@ -770,7 +765,7 @@ _get_release_level() { echo "${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}$(_get_real_extraversion)" elif [[ "${KV_MAJOR}${KV_MINOR}" -eq 26 ]]; then echo "${KV_FULL}" - elif [[ "${OKV/.*}" = "3" ]] && [[ "${KV_PATCH}" = "0" ]]; then + elif [[ "${OKV/.*}" -ge "3" ]] && [[ "${KV_PATCH}" = "0" ]]; then # Linux 3.x support, KV_FULL is set to: 3.0-kogaion # need to add another final .0 to the version part echo "${KV_FULL/-/.0-}" @@ -959,9 +954,9 @@ kogaion-kernel_pkg_postrm() { # export all the available functions here case ${EAPI:-0} in - 0|1) extra_export_funcs= ;; - *) extra_export_funcs=src_prepare ;; + [01234]) + die "EAPI ${EAPI:-0} is not supported" esac -EXPORT_FUNCTIONS pkg_setup src_unpack ${extra_export_funcs} \ +EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare \ src_compile src_install pkg_preinst pkg_postinst pkg_prerm pkg_postrm diff --git a/net-irc/quassel-client/Manifest b/net-irc/quassel-client/Manifest index ca14171e..576911ef 100644 --- a/net-irc/quassel-client/Manifest +++ b/net-irc/quassel-client/Manifest @@ -1,2 +1,3 @@ DIST quassel-0.10.0.tar.bz2 2873233 SHA256 68228ce23aa3a992add3d00cb1e8b4863d8ca64bea99c881edf6d16ff9ec7c23 SHA512 e194d4f9bbcecedfebd72c48d5f1e2a4185ff9d69134629b79e532af8f3fa9841e3cb99a6aae30e9bd79440c08487eeb23d6d6914690b90d1ae0952bb6168693 WHIRLPOOL bedd3de56e7625219a2970842ff0b073abbdc3488c8efece112c92f277386d5a3b63bde100a6e3daf2d5c0011e515e9fef81b888feec58d2a6571b4f898e8578 DIST quassel-0.11.0.tar.bz2 2875387 SHA256 99a191b8bc2a410f7020b890ec57e0be49313f539da9f4843675bb108b0f4504 SHA512 51450559df2c0fee9a54b76a9342edb9a3b834f1f58edc556e0c1bf1f9366c846d95e7953e1b48c6ecf67ea4255b3574ed3ce537962eec222c5c03ab02852c1d WHIRLPOOL c2ffb7e052a5d412aec5d1b8bacc8cdb8144c20d62d699ca1d8972fd5e8fe6ce89da49251a02c22008061b344d9408b3f018b3b39623703b4d980c289cd5613a +DIST quassel-0.12.2.tar.bz2 3681838 SHA256 6bd6f79ecb88fb857bea7e89c767a3bd0f413ff01bae9298dd2e563478947897 SHA512 0c907982af0ba11af6ba5d075850149dc4d4df0c759a736dfaccdc01778958bd9b0137515c2d78a72a1b5aef6600cea47505de6ee905d83a51cf4e67d132911d WHIRLPOOL 947c47ab6a5db73fdda7d5e5fc3f618030e9c2cfd78f4f423b32332e6514b5c3b8d24423a6be8ee8bf81e2e4a973aa29578e776dba5e8f7ad947acbcb7aef497 diff --git a/net-irc/quassel-client/quassel-client-0.12.2.ebuild b/net-irc/quassel-client/quassel-client-0.12.2.ebuild new file mode 100644 index 00000000..1941ef23 --- /dev/null +++ b/net-irc/quassel-client/quassel-client-0.12.2.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit cmake-utils eutils + +EGIT_REPO_URI="git://git.quassel-irc.org/quassel" +[[ "${PV}" == "9999" ]] && inherit git-r3 +MY_P=${P/-client} +# MY_PN=${PN/-client} + +DESCRIPTION="Qt/KDE IRC client supporting a remote daemon for 24/7 connectivity (client only)" +HOMEPAGE="http://quassel-irc.org/" +[[ "${PV}" == "9999" ]] || SRC_URI="http://quassel-irc.org/pub/${MY_P/_/-}.tar.bz2" + +LICENSE="GPL-3" +KEYWORDS="~amd64 ~x86" +SLOT="0" +IUSE="ayatana crypt dbus debug kde phonon qt5 +ssl webkit" + +GUI_RDEPEND=" + qt5? ( + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dbus? ( + dev-libs/libdbusmenu-qt[qt5] + dev-qt/qtdbus:5 + ) + phonon? ( media-libs/phonon[qt5] ) + webkit? ( dev-qt/qtwebkit:5 ) + ) + !qt5? ( + dev-qt/qtgui:4 + ayatana? ( dev-libs/libindicate-qt ) + dbus? ( + dev-libs/libdbusmenu-qt[qt4(+)] + dev-qt/qtdbus:4 + kde? ( + kde-base/kdelibs:4 + ayatana? ( kde-misc/plasma-widget-message-indicator ) + ) + ) + phonon? ( || ( media-libs/phonon[qt4] dev-qt/qtphonon:4 ) ) + webkit? ( dev-qt/qtwebkit:4 ) + ) +" + +RDEPEND=" + ~net-irc/quassel-common-${PV} + sys-libs/zlib + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtnetwork:5[ssl?] + ) + !qt5? ( dev-qt/qtcore:4[ssl?] ) + ${GUI_RDEPEND} +" +DEPEND="${RDEPEND} + qt5? ( dev-qt/linguist-tools:5 ) +" + +S="${WORKDIR}/${MY_P/_/-}" + +src_configure() { + local mycmakeargs=( + $(cmake-utils_use_find_package ayatana IndicateQt) + $(cmake-utils_use_find_package crypt QCA2) + $(cmake-utils_use_find_package dbus dbusmenu-qt) + $(cmake-utils_use_find_package dbus dbusmenu-qt5) + $(cmake-utils_use_with kde) + "-DWITH_OXYGEN=OFF" + "-DWANT_MONO=OFF" + $(cmake-utils_use_find_package phonon) + $(cmake-utils_use_find_package phonon Phonon4Qt5) + $(cmake-utils_use_use qt5) + "-DWANT_CORE=OFF" + $(cmake-utils_use_with webkit) + "-DWANT_QTCLIENT=ON" + "-DEMBED_DATA=OFF" + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + rm -r "${ED}"usr/share/apps/ || die + rm -r "${ED}"usr/share/pixmaps || die + rm -r "${ED}"usr/share/icons || die + + insinto /usr/share/applications + doins data/quasselclient.desktop +} + +pkg_postinst() { + elog "To make use of quasselclient, install server, too." + elog "It is provided by net-irc/quassel-core and net-irc/quassel-core-bin." +} diff --git a/net-irc/quassel-common/Manifest b/net-irc/quassel-common/Manifest index ca14171e..576911ef 100644 --- a/net-irc/quassel-common/Manifest +++ b/net-irc/quassel-common/Manifest @@ -1,2 +1,3 @@ DIST quassel-0.10.0.tar.bz2 2873233 SHA256 68228ce23aa3a992add3d00cb1e8b4863d8ca64bea99c881edf6d16ff9ec7c23 SHA512 e194d4f9bbcecedfebd72c48d5f1e2a4185ff9d69134629b79e532af8f3fa9841e3cb99a6aae30e9bd79440c08487eeb23d6d6914690b90d1ae0952bb6168693 WHIRLPOOL bedd3de56e7625219a2970842ff0b073abbdc3488c8efece112c92f277386d5a3b63bde100a6e3daf2d5c0011e515e9fef81b888feec58d2a6571b4f898e8578 DIST quassel-0.11.0.tar.bz2 2875387 SHA256 99a191b8bc2a410f7020b890ec57e0be49313f539da9f4843675bb108b0f4504 SHA512 51450559df2c0fee9a54b76a9342edb9a3b834f1f58edc556e0c1bf1f9366c846d95e7953e1b48c6ecf67ea4255b3574ed3ce537962eec222c5c03ab02852c1d WHIRLPOOL c2ffb7e052a5d412aec5d1b8bacc8cdb8144c20d62d699ca1d8972fd5e8fe6ce89da49251a02c22008061b344d9408b3f018b3b39623703b4d980c289cd5613a +DIST quassel-0.12.2.tar.bz2 3681838 SHA256 6bd6f79ecb88fb857bea7e89c767a3bd0f413ff01bae9298dd2e563478947897 SHA512 0c907982af0ba11af6ba5d075850149dc4d4df0c759a736dfaccdc01778958bd9b0137515c2d78a72a1b5aef6600cea47505de6ee905d83a51cf4e67d132911d WHIRLPOOL 947c47ab6a5db73fdda7d5e5fc3f618030e9c2cfd78f4f423b32332e6514b5c3b8d24423a6be8ee8bf81e2e4a973aa29578e776dba5e8f7ad947acbcb7aef497 diff --git a/net-irc/quassel-common/quassel-common-0.12.2.ebuild b/net-irc/quassel-common/quassel-common-0.12.2.ebuild new file mode 100644 index 00000000..f9c85b60 --- /dev/null +++ b/net-irc/quassel-common/quassel-common-0.12.2.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit cmake-utils eutils + +EGIT_REPO_URI="git://git.quassel-irc.org/quassel" +[[ "${PV}" == "9999" ]] && inherit git-r3 + +DESCRIPTION="Qt/KDE IRC client supporting a remote daemon for 24/7 connectivity (common files)" +HOMEPAGE="http://quassel-irc.org/" +MY_P=${P/-common} +[[ "${PV}" == "9999" ]] || SRC_URI="http://quassel-irc.org/pub/${MY_P/_/-}.tar.bz2" + +LICENSE="GPL-3" +KEYWORDS="~amd64 ~x86" +SLOT="0" +IUSE="kde" + +RDEPEND="kde? ( + || ( kde-apps/oxygen-icons kde-base/oxygen-icons:4 ) )" +DEPEND="${RDEPEND} + !<net-irc/quassel-${PV} + !<net-irc/quassel-client-${PV}" + # -core(-bin) does not depend on it + +S="${WORKDIR}/${MY_P/_/-}" + +src_configure() { + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_make po +} + +src_install() { + # cmake-utils_src_install + + local mypath + + dodoc ChangeLog AUTHORS + + # /usr/share/icons/hicolor + for mypath in icons/hicolor/*/*/quassel*.png; do + if [ -f "${mypath}" ]; then + insinto "/usr/share/${mypath%/*}" + doins "${mypath}" || die "doins for icon failed" + fi + done + + # /usr/share/apps/quassel/icons/oxygen + if ! use kde; then + dodoc icons/README.Oxygen + local mydest + for mydest in COPYING AUTHORS CONTRIBUTING; do + newdoc "icons/oxygen/${mydest}" "${mydest}.Oxygen" + done + + for mypath in icons/oxygen{,_kde}/*/*/*.{svgz,png}; do + if [ -f "${mypath}" ]; then + mydest=${mypath/oxygen_kde/oxygen} + insinto "/usr/share/apps/quassel/${mydest%/*}" + doins "${mypath}" || die "doins for Oxygen icon failed" + fi + done + fi + + doicon icons/oxygen_kde/48x48/apps/quassel.png + + # /usr/share/apps/quassel/stylesheets + for mypath in data/stylesheets/*.qss; do + if [ -f "${mypath}" ]; then + insinto /usr/share/apps/quassel/stylesheets + doins "${mypath}" || die "doins for .qss file failed" + fi + done + + # /usr/share/apps/quassel/scripts + for mypath in data/scripts/*; do + if [ -f "${mypath}" ]; then + insinto /usr/share/apps/quassel/scripts + doins "${mypath/$CMAKE_BUILD_DIR}" || die "doins for script failed" + fi + done + + # /usr/share/apps/quassel/translations + for mypath in "${CMAKE_BUILD_DIR}"/po/*.qm; do + insinto /usr/share/apps/quassel/translations + doins "${mypath}" || die "doins for .qm file failed" + done + + insinto /usr/share/apps/quassel + doins data/networks.ini + + use kde && doins data/quassel.notifyrc +} diff --git a/net-irc/quassel-core/Manifest b/net-irc/quassel-core/Manifest index ca14171e..576911ef 100644 --- a/net-irc/quassel-core/Manifest +++ b/net-irc/quassel-core/Manifest @@ -1,2 +1,3 @@ DIST quassel-0.10.0.tar.bz2 2873233 SHA256 68228ce23aa3a992add3d00cb1e8b4863d8ca64bea99c881edf6d16ff9ec7c23 SHA512 e194d4f9bbcecedfebd72c48d5f1e2a4185ff9d69134629b79e532af8f3fa9841e3cb99a6aae30e9bd79440c08487eeb23d6d6914690b90d1ae0952bb6168693 WHIRLPOOL bedd3de56e7625219a2970842ff0b073abbdc3488c8efece112c92f277386d5a3b63bde100a6e3daf2d5c0011e515e9fef81b888feec58d2a6571b4f898e8578 DIST quassel-0.11.0.tar.bz2 2875387 SHA256 99a191b8bc2a410f7020b890ec57e0be49313f539da9f4843675bb108b0f4504 SHA512 51450559df2c0fee9a54b76a9342edb9a3b834f1f58edc556e0c1bf1f9366c846d95e7953e1b48c6ecf67ea4255b3574ed3ce537962eec222c5c03ab02852c1d WHIRLPOOL c2ffb7e052a5d412aec5d1b8bacc8cdb8144c20d62d699ca1d8972fd5e8fe6ce89da49251a02c22008061b344d9408b3f018b3b39623703b4d980c289cd5613a +DIST quassel-0.12.2.tar.bz2 3681838 SHA256 6bd6f79ecb88fb857bea7e89c767a3bd0f413ff01bae9298dd2e563478947897 SHA512 0c907982af0ba11af6ba5d075850149dc4d4df0c759a736dfaccdc01778958bd9b0137515c2d78a72a1b5aef6600cea47505de6ee905d83a51cf4e67d132911d WHIRLPOOL 947c47ab6a5db73fdda7d5e5fc3f618030e9c2cfd78f4f423b32332e6514b5c3b8d24423a6be8ee8bf81e2e4a973aa29578e776dba5e8f7ad947acbcb7aef497 diff --git a/net-irc/quassel-core/quassel-core-0.12.2.ebuild b/net-irc/quassel-core/quassel-core-0.12.2.ebuild new file mode 100644 index 00000000..6fa63448 --- /dev/null +++ b/net-irc/quassel-core/quassel-core-0.12.2.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit cmake-utils eutils pax-utils systemd user versionator + +EGIT_REPO_URI="git://git.quassel-irc.org/quassel" +[[ "${PV}" == "9999" ]] && inherit git-r3 + +DESCRIPTION="Qt/KDE IRC client - the \"core\" (server) component" +HOMEPAGE="http://quassel-irc.org/" +MY_P=${P/-core} +MY_PN=${PN/-core} +[[ "${PV}" == "9999" ]] || SRC_URI="http://quassel-irc.org/pub/${MY_P/_/-}.tar.bz2" + +LICENSE="GPL-3" +KEYWORDS="~amd64 ~x86" +SLOT="0" +IUSE="crypt postgres qt5 +ssl syslog" + +SERVER_RDEPEND=" + qt5? ( + dev-qt/qtscript:5 + postgres? ( dev-qt/qtsql:5[postgres] ) + !postgres? ( dev-qt/qtsql:5[sqlite] dev-db/sqlite:3[threadsafe(+),-secure-delete] ) + ) + !qt5? ( + dev-qt/qtscript:4 + crypt? ( + app-crypt/qca:2[qt4(+)] + || ( app-crypt/qca-ossl:2 app-crypt/qca:2[openssl] ) + ) + postgres? ( dev-qt/qtsql:4[postgres] ) + !postgres? ( dev-qt/qtsql:4[sqlite] dev-db/sqlite:3[threadsafe(+),-secure-delete] ) + ) + syslog? ( virtual/logger ) +" + +RDEPEND=" + sys-libs/zlib + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtnetwork:5[ssl?] + ) + !qt5? ( dev-qt/qtcore:4[ssl?] ) + ${SERVER_RDEPEND} +" +DEPEND=" + ${RDEPEND} + !net-irc/quassel-core-bin + " + +DOCS=( AUTHORS ChangeLog README ) + +S="${WORKDIR}/${MY_P/_/-}" + +pkg_setup() { + QUASSEL_DIR=/var/lib/${MY_PN} + QUASSEL_USER=${MY_PN} + # create quassel:quassel user + enewgroup "${QUASSEL_USER}" + enewuser "${QUASSEL_USER}" -1 -1 "${QUASSEL_DIR}" "${QUASSEL_USER}" +} + +src_configure() { + local mycmakeargs=( + "CMAKE_DISABLE_FIND_PACKAGE_IndicateQt=ON" + $(cmake-utils_use_find_package crypt QCA2) + # $(cmake-utils_use_find_package dbus dbusmenu-qt) + # $(cmake-utils_use_find_package dbus dbusmenu-qt5) + "-DWITH_KDE=OFF" + "-DWITH_OXYGEN=OFF" + "-DWANT_MONO=OFF" + + "CMAKE_DISABLE_FIND_PACKAGE_phonon=ON" + "CMAKE_DISABLE_FIND_PACKAGE_Phonon=ON" + "CMAKE_DISABLE_FIND_PACKAGE_PHONON=ON" + + "CMAKE_DISABLE_FIND_PACKAGE_Phonon4Qt5=ON" + $(cmake-utils_use_use qt5) + "-DWANT_CORE=ON" + "-DWITH_WEBKIT=OFF" + "-DWANT_QTCLIENT=OFF" + "-DEMBED_DATA=OFF" + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + rm -rf "${ED}"usr/share/apps/quassel/ || die + rm -f "${ED}"usr/share/pixmaps/quassel.png || die + rm -f "${ED}"usr/share/icons/hicolor/48x48/apps/quassel.png || die + + # server stuff + + # needs PAX marking wrt bug#346255 + pax-mark m "${ED}/usr/bin/quasselcore" + + # prepare folders in /var/ + keepdir "${QUASSEL_DIR}" + fowners "${QUASSEL_USER}":"${QUASSEL_USER}" "${QUASSEL_DIR}" + + # init scripts & systemd unit + newinitd "${FILESDIR}"/quasselcore.init quasselcore + newconfd "${FILESDIR}"/quasselcore.conf quasselcore + systemd_dounit "${FILESDIR}"/quasselcore.service + + # logrotate + insinto /etc/logrotate.d + newins "${FILESDIR}/quassel.logrotate" quassel +} + +pkg_postinst() { + einfo "If you want to generate SSL certificate remember to run:" + einfo " emerge --config =${CATEGORY}/${PF}" + + # server || monolithic + einfo "Quassel can use net-misc/oidentd package if installed on your system." + einfo "Consider installing it if you want to run quassel within identd daemon." + + # temporary info mesage + if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 7 ]]; then + echo + ewarn "Please note that all configuration moved from" + ewarn "/home/\${QUASSEL_USER}/.config/quassel-irc.org/" + ewarn "to: ${QUASSEL_DIR}." + echo + ewarn "For migration, stop the core, move quasselcore files (pretty much" + ewarn "everything apart from quasselclient.conf and settings.qss) into" + ewarn "new location and then start server again." + fi +} + +pkg_config() { + if use ssl; then + # generate the pem file only when it does not already exist + if [ ! -f "${QUASSEL_DIR}/quasselCert.pem" ]; then + einfo "Generating QUASSEL SSL certificate to: \"${QUASSEL_DIR}/quasselCert.pem\"" + openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ + -keyout "${QUASSEL_DIR}/quasselCert.pem" \ + -out "${QUASSEL_DIR}/quasselCert.pem" + # permissions for the key + chown ${QUASSEL_USER}:${QUASSEL_USER} "${QUASSEL_DIR}/quasselCert.pem" + chmod 400 "${QUASSEL_DIR}/quasselCert.pem" + else + einfo "Certificate \"${QUASSEL_DIR}/quasselCert.pem\" already exists." + einfo "Remove it if you want to create new one." + fi + fi +} diff --git a/net-irc/quassel/Manifest b/net-irc/quassel/Manifest index ca14171e..576911ef 100644 --- a/net-irc/quassel/Manifest +++ b/net-irc/quassel/Manifest @@ -1,2 +1,3 @@ DIST quassel-0.10.0.tar.bz2 2873233 SHA256 68228ce23aa3a992add3d00cb1e8b4863d8ca64bea99c881edf6d16ff9ec7c23 SHA512 e194d4f9bbcecedfebd72c48d5f1e2a4185ff9d69134629b79e532af8f3fa9841e3cb99a6aae30e9bd79440c08487eeb23d6d6914690b90d1ae0952bb6168693 WHIRLPOOL bedd3de56e7625219a2970842ff0b073abbdc3488c8efece112c92f277386d5a3b63bde100a6e3daf2d5c0011e515e9fef81b888feec58d2a6571b4f898e8578 DIST quassel-0.11.0.tar.bz2 2875387 SHA256 99a191b8bc2a410f7020b890ec57e0be49313f539da9f4843675bb108b0f4504 SHA512 51450559df2c0fee9a54b76a9342edb9a3b834f1f58edc556e0c1bf1f9366c846d95e7953e1b48c6ecf67ea4255b3574ed3ce537962eec222c5c03ab02852c1d WHIRLPOOL c2ffb7e052a5d412aec5d1b8bacc8cdb8144c20d62d699ca1d8972fd5e8fe6ce89da49251a02c22008061b344d9408b3f018b3b39623703b4d980c289cd5613a +DIST quassel-0.12.2.tar.bz2 3681838 SHA256 6bd6f79ecb88fb857bea7e89c767a3bd0f413ff01bae9298dd2e563478947897 SHA512 0c907982af0ba11af6ba5d075850149dc4d4df0c759a736dfaccdc01778958bd9b0137515c2d78a72a1b5aef6600cea47505de6ee905d83a51cf4e67d132911d WHIRLPOOL 947c47ab6a5db73fdda7d5e5fc3f618030e9c2cfd78f4f423b32332e6514b5c3b8d24423a6be8ee8bf81e2e4a973aa29578e776dba5e8f7ad947acbcb7aef497 diff --git a/net-irc/quassel/quassel-0.12.2.ebuild b/net-irc/quassel/quassel-0.12.2.ebuild new file mode 100644 index 00000000..49a42685 --- /dev/null +++ b/net-irc/quassel/quassel-0.12.2.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit cmake-utils eutils + +EGIT_REPO_URI="git://git.quassel-irc.org/quassel" +[[ "${PV}" == "9999" ]] && inherit git-r3 + +DESCRIPTION="Qt/KDE IRC client - monolithic client only (no remote daemon)" +HOMEPAGE="http://quassel-irc.org/" +[[ "${PV}" == "9999" ]] || SRC_URI="http://quassel-irc.org/pub/${P/_/-}.tar.bz2" + +LICENSE="GPL-3" +KEYWORDS="~amd64 ~x86" +SLOT="0" +# monolithic USE flag must be enabled for this package +IUSE="ayatana crypt dbus debug kde monolithic phonon postgres qt5 +server +ssl syslog webkit X" + +SERVER_RDEPEND=" + qt5? ( + dev-qt/qtscript:5 + postgres? ( dev-qt/qtsql:5[postgres] ) + !postgres? ( dev-qt/qtsql:5[sqlite] dev-db/sqlite:3[threadsafe(+),-secure-delete] ) + ) + !qt5? ( + dev-qt/qtscript:4 + crypt? ( + app-crypt/qca:2[qt4(+)] + || ( app-crypt/qca-ossl:2 app-crypt/qca:2[openssl] ) + ) + postgres? ( dev-qt/qtsql:4[postgres] ) + !postgres? ( dev-qt/qtsql:4[sqlite] dev-db/sqlite:3[threadsafe(+),-secure-delete] ) + ) + syslog? ( virtual/logger ) +" + +GUI_RDEPEND=" + qt5? ( + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dbus? ( + dev-libs/libdbusmenu-qt[qt5] + dev-qt/qtdbus:5 + ) + phonon? ( media-libs/phonon[qt5] ) + webkit? ( dev-qt/qtwebkit:5 ) + ) + !qt5? ( + dev-qt/qtgui:4 + ayatana? ( dev-libs/libindicate-qt ) + dbus? ( + dev-libs/libdbusmenu-qt[qt4(+)] + dev-qt/qtdbus:4 + kde? ( + kde-base/kdelibs:4 + ayatana? ( kde-misc/plasma-widget-message-indicator ) + ) + ) + phonon? ( || ( media-libs/phonon[qt4] dev-qt/qtphonon:4 ) ) + webkit? ( dev-qt/qtwebkit:4 ) + ) +" + +RDEPEND=" + ~net-irc/quassel-common-${PV} + sys-libs/zlib + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtnetwork:5[ssl?] + ) + !qt5? ( dev-qt/qtcore:4[ssl?] ) + monolithic? ( + ${SERVER_RDEPEND} + ${GUI_RDEPEND} + ) + !monolithic? ( + server? ( ${SERVER_RDEPEND} ) + X? ( ${GUI_RDEPEND} ) + ) +" +DEPEND="${RDEPEND} + qt5? ( dev-qt/linguist-tools:5 ) +" + +DOCS=( AUTHORS ChangeLog README ) + +S="${WORKDIR}/${P/_/-}" + +REQUIRED_USE=" + || ( X server monolithic ) + ayatana? ( || ( X monolithic ) ) + crypt? ( || ( server monolithic ) ) + dbus? ( || ( X monolithic ) ) + kde? ( phonon || ( X monolithic ) ) + phonon? ( || ( X monolithic ) ) + postgres? ( || ( server monolithic ) ) + qt5? ( !ayatana !crypt !kde phonon ) + syslog? ( || ( server monolithic ) ) + webkit? ( || ( X monolithic ) ) +" + +pkg_setup() { + # sanity check for the split ebuild + use monolithic || die "The 'monolithic' flag must be enabled!" +} + +src_configure() { + local mycmakeargs=( + $(cmake-utils_use_find_package ayatana IndicateQt) + $(cmake-utils_use_find_package crypt QCA2) + $(cmake-utils_use_find_package dbus dbusmenu-qt) + $(cmake-utils_use_find_package dbus dbusmenu-qt5) + $(cmake-utils_use_with kde) + "-DWITH_OXYGEN=OFF" + "-DWANT_MONO=ON" + $(cmake-utils_use_find_package phonon) + $(cmake-utils_use_find_package phonon Phonon4Qt5) + $(cmake-utils_use_use qt5) + "-DWANT_CORE=OFF" + $(cmake-utils_use_with webkit) + "-DWANT_QTCLIENT=OFF" + "-DEMBED_DATA=OFF" + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + rm -r "${ED}"usr/share/apps || die + rm -r "${ED}"usr/share/pixmaps || die + rm -r "${ED}"usr/share/icons || die + rm -r "${ED}"usr/share/applications || die + + insinto /usr/share/applications + doins data/quassel.desktop +} + +pkg_postinst() { + if use monolithic && use ssl ; then + elog "Information on how to enable SSL support for client/core connections" + elog "is available at http://bugs.quassel-irc.org/wiki/quassel-irc." + fi + + if use server || use monolithic ; then + einfo "Quassel can use net-misc/oidentd package if installed on your system." + einfo "Consider installing it if you want to run quassel within identd daemon." + fi +} diff --git a/net-misc/modemmanager/ChangeLog b/net-misc/modemmanager/ChangeLog new file mode 100644 index 00000000..b020c34f --- /dev/null +++ b/net-misc/modemmanager/ChangeLog @@ -0,0 +1,410 @@ +# ChangeLog for net-misc/modemmanager +# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/modemmanager/ChangeLog,v 1.87 2015/04/20 14:28:19 chainsaw Exp $ + +*modemmanager-1.4.6 (20 Apr 2015) + + 20 Apr 2015; Tony Vroon <chainsaw@gentoo.org> +modemmanager-1.4.6.ebuild: + Version bump, primarily improves error reporting. Tested on Sierra Wireless + EM3705 with Three UK LTE network. Herd approval by Alexandre "tetromino" + Rostovtsev. + + 15 Mar 2015; Pacho Ramos <pacho@gentoo.org> modemmanager-1.4.2.ebuild: + x86 stable, bug 534012 + + 15 Mar 2015; Pacho Ramos <pacho@gentoo.org> modemmanager-1.4.2.ebuild: + ppc64 stable, bug 534012 + + 15 Mar 2015; Pacho Ramos <pacho@gentoo.org> modemmanager-1.4.2.ebuild: + ppc stable, bug 534012 + + 14 Mar 2015; Pacho Ramos <pacho@gentoo.org> modemmanager-1.4.2.ebuild: + amd64 stable, bug 534012 + +*modemmanager-1.4.4 (07 Mar 2015) + + 07 Mar 2015; Pacho Ramos <pacho@gentoo.org> +modemmanager-1.4.4.ebuild: + Version bump + + 03 Mar 2015; Yixun Lan <dlan@gentoo.org> modemmanager-1.4.0.ebuild: + add arm64 support, tested on A53 board + +*modemmanager-1.4.2 (26 Jan 2015) + + 26 Jan 2015; Pacho Ramos <pacho@gentoo.org> +modemmanager-1.4.2.ebuild, + -modemmanager-1.2.0-r1.ebuild: + Version bump, drop old + + 01 Jan 2015; Markus Meier <maekke@gentoo.org> modemmanager-1.4.0.ebuild: + arm stable, bug #529964 + + 30 Dec 2014; Agostino Sarubbo <ago@gentoo.org> modemmanager-1.4.0.ebuild: + Stable for ppc64, wrt bug #529964 + + 28 Dec 2014; Agostino Sarubbo <ago@gentoo.org> modemmanager-1.4.0.ebuild: + Stable for ppc, wrt bug #529964 + + 19 Dec 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-1.4.0.ebuild: + amd64 stable, bug 529964 + + 18 Dec 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-1.4.0.ebuild: + x86 stable, bug 529964 + + 13 Nov 2014; Pacho Ramos <pacho@gentoo.org> + -files/01-org.freedesktop.ModemManager.pkla, + -files/01-org.freedesktop.ModemManager.rules, -modemmanager-0.6.0.0.ebuild: + Drop old (#508854) + + 11 Oct 2014; Markus Meier <maekke@gentoo.org> modemmanager-1.2.0-r1.ebuild: + arm stable, bug #512012 + +*modemmanager-1.4.0 (23 Sep 2014) + + 23 Sep 2014; Pacho Ramos <pacho@gentoo.org> +modemmanager-1.4.0.ebuild, + -files/modemmanager-0.6.0.0-multi-plugin-probing.patch, + -files/modemmanager-1.0.0-dbus-generation.patch, + -files/modemmanager-1.0.0-logging-serial.patch, -modemmanager-1.0.0-r2.ebuild, + -modemmanager-1.2.0.ebuild: + Version bump, drop old + + 12 Sep 2014; Vicente Olivert Riera <vincent@gentoo.org> + modemmanager-0.6.0.0.ebuild, modemmanager-1.0.0-r2.ebuild, + modemmanager-1.2.0-r1.ebuild, modemmanager-1.2.0.ebuild: + Add ~mips keyword + + 21 Aug 2014; Agostino Sarubbo <ago@gentoo.org> modemmanager-1.2.0-r1.ebuild: + Stable for ppc64, wrt bug #512012 + + 28 Jul 2014; Agostino Sarubbo <ago@gentoo.org> modemmanager-1.2.0-r1.ebuild: + Stable for ppc, wrt bug #512012 + + 24 Jul 2014; Samuli Suominen <ssuominen@gentoo.org> + modemmanager-0.6.0.0.ebuild, modemmanager-1.0.0-r2.ebuild, + modemmanager-1.2.0-r1.ebuild, modemmanager-1.2.0.ebuild: + Use get_udevdir instead of the deprecated udev_get_udevdir. Use + virtual/libgudev with := instead of virtual/udev for automatic rebuild. + + 04 May 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-1.2.0-r1.ebuild: + x86 stable, bug 508862 + + 04 May 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-1.2.0-r1.ebuild: + amd64 stable, bug 508862 + +*modemmanager-1.2.0-r1 (30 Apr 2014) + + 30 Apr 2014; Tony Vroon <chainsaw@gentoo.org> +modemmanager-1.2.0-r1.ebuild: + Enable MBIM support as well as introducing the dependency, closes bug + #509186. A stale --without-mbim line got left behind. Gnome herd commit + approval from tetromino. + +*modemmanager-1.2.0 (12 Apr 2014) + + 12 Apr 2014; Pacho Ramos <pacho@gentoo.org> +modemmanager-1.2.0.ebuild, + metadata.xml: + Version bump, add mbim support (#507188 by Leho Kraav) + + 08 Mar 2014; Pacho Ramos <pacho@gentoo.org> -modemmanager-0.6.0.0-r1.ebuild, + -modemmanager-0.7.991.ebuild, -modemmanager-1.0.0-r1.ebuild, + modemmanager-1.0.0-r2.ebuild: + RDEPEND on libqmi subslot (if it's added in the future there), drop old + + 22 Feb 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-0.6.0.0-r1.ebuild: + Fix wrong commit, bug 502160 + + 22 Feb 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-1.0.0-r2.ebuild: + Fix wrong commit, bug 502160 + + 22 Feb 2014; Pacho Ramos <pacho@gentoo.org> modemmanager-0.6.0.0-r1.ebuild, + modemmanager-1.0.0-r2.ebuild: + arch stable, bug 888 + + 08 Dec 2013; Pacho Ramos <pacho@gentoo.org> modemmanager-1.0.0-r2.ebuild: + x86 stable, bug #478252 + + 30 Nov 2013; Pacho Ramos <pacho@gentoo.org> modemmanager-1.0.0-r2.ebuild: + amd64 stable, bug #478252 + +*modemmanager-1.0.0-r2 (24 Jul 2013) + + 24 Jul 2013; Alexandre Rostovtsev <tetromino@gentoo.org> + +modemmanager-1.0.0-r2.ebuild, +files/01-org.freedesktop.ModemManager1.rules: + Update plugdev polkit rules for modemmanager's dbus interface changes. + +*modemmanager-1.0.0-r1 (24 Jul 2013) + + 24 Jul 2013; Pacho Ramos <pacho@gentoo.org> + +files/modemmanager-1.0.0-dbus-generation.patch, + +files/modemmanager-1.0.0-logging-serial.patch, +modemmanager-1.0.0-r1.ebuild, + -modemmanager-1.0.0.ebuild: + Apply upstream fixes, also solving dbus file generation (#477710 by Martin + Dummer). + + 20 Jul 2013; Pacho Ramos <pacho@gentoo.org> metadata.xml: + Redigest (#472866 by Albert W. Hopkins), also adopt the package + +*modemmanager-1.0.0 (20 Jul 2013) + + 20 Jul 2013; Pacho Ramos <pacho@gentoo.org> +modemmanager-1.0.0.ebuild, + -modemmanager-0.7.990.ebuild, -modemmanager-9999.ebuild: + Version bump, drop old. Also remove 9999 ebuild as nobody is really + maintaining it. + + 10 Jun 2013; Pacho Ramos <pacho@gentoo.org> modemmanager-0.7.991.ebuild: + Use just released tarball as before, not one generated from git snapshot. + +*modemmanager-0.7.991 (10 Jun 2013) + + 10 Jun 2013; Pacho Ramos <pacho@gentoo.org> +modemmanager-0.7.991.ebuild: + Version bump + +*modemmanager-0.6.0.0-r1 (12 Feb 2013) + + 12 Feb 2013; Alexandre Rostovtsev <tetromino@gentoo.org> + -files/modemmanager-0.5-glib-2.31.patch, -modemmanager-0.5.2.0-r3.ebuild, + +modemmanager-0.6.0.0-r1.ebuild, + +files/modemmanager-0.6.0.0-multi-plugin-probing.patch: + Add a patch to prevent multiple plugins from simultaneously controlling one + modem port (bug #456782, thanks to Tony Vroon). Drop old. + + 03 Feb 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Stable for arm, wrt bug #448006 + + 31 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Stable for ppc64, wrt bug #448006 + + 31 Jan 2013; Alexandre Rostovtsev <tetromino@gentoo.org> + modemmanager-0.7.990.ebuild, modemmanager-9999.ebuild: + Add qmi USE flags to 0.7.990 ebuild since libqmi-1.0.0 is now in portage. Add + missing gdbus-codegen dependency. + +*modemmanager-9999 (28 Jan 2013) +*modemmanager-0.7.990 (28 Jan 2013) + + 28 Jan 2013; Alexandre Rostovtsev <tetromino@gentoo.org> + +modemmanager-0.7.990.ebuild, +modemmanager-9999.ebuild, metadata.xml: + Add 0.8 development pre-release and a live git ebuild. 0.8 features improved + hardware support, and has a new dbus API which is incompatible with older + ModemManager releases. + + 28 Jan 2013; Alexandre Rostovtsev <tetromino@gentoo.org> + -modemmanager-0.4.ebuild, -modemmanager-0.5.2.0-r2.ebuild, + modemmanager-0.5.2.0-r3.ebuild, modemmanager-0.6.0.0.ebuild: + Fix license; ModemManager had switched from LGPL to GPL in 2009. Drop old. + + 27 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Stable for ppc, wrt bug #448006 + + 27 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Stable for x86, wrt bug #448006 + + 27 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Stable for amd64, wrt bug #448006 + + 06 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Add ~sparc, wrt bug #449220 + + 01 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Add ~alpha, wrt bug #449220 + + 01 Jan 2013; Agostino Sarubbo <ago@gentoo.org> modemmanager-0.6.0.0.ebuild: + Add ~ia64, wrt bug #449220 + + 02 Dec 2012; Samuli Suominen <ssuominen@gentoo.org> modemmanager-0.4.ebuild, + modemmanager-0.5.2.0-r2.ebuild, modemmanager-0.5.2.0-r3.ebuild, + modemmanager-0.6.0.0.ebuild: + Use virtual/udev instead of sys-fs/udev wrt #444398 + + 11 Oct 2012; Anthony G. Basile <blueness@gentoo.org> + modemmanager-0.5.2.0-r3.ebuild: + stable ppc ppc64, bug #430370 + + 07 Oct 2012; Pacho Ramos <pacho@gentoo.org> metadata.xml: + Drop maintainer as talked with him. + +*modemmanager-0.6.0.0 (13 Sep 2012) + + 13 Sep 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + -modemmanager-0.4_p20110205-r1.ebuild, -modemmanager-0.5.ebuild, + -modemmanager-0.5.2.0.ebuild, +modemmanager-0.6.0.0.ebuild: + Version bump with lots of SMS fixes and improved hardware support. Drop old. + + 23 Aug 2012; Markus Meier <maekke@gentoo.org> modemmanager-0.5.2.0-r3.ebuild: + arm stable, bug #430370 + + 17 Aug 2012; Johannes Huber <johu@gentoo.org> modemmanager-0.5.2.0-r3.ebuild: + Stable for x86, wrt bug #430370 + + 16 Aug 2012; Agostino Sarubbo <ago@gentoo.org> + modemmanager-0.5.2.0-r3.ebuild: + Stable for amd64, wrt bug #430370 + +*modemmanager-0.5.2.0-r3 (11 Aug 2012) + + 11 Aug 2012; Samuli Suominen <ssuominen@gentoo.org> + +modemmanager-0.5.2.0-r3.ebuild: + Query udev.pc pkg-config file for correct udevdir value. + +*modemmanager-0.5.2.0-r2 (05 Jul 2012) + + 05 Jul 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + -modemmanager-0.5.2.0-r1.ebuild, +modemmanager-0.5.2.0-r2.ebuild: + Move polkit rules.d file to /usr/share (bug #421577 comment #12, thanks to + Dennis Lissov). + + 04 Jul 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + files/01-org.freedesktop.ModemManager.rules: + Add a comment to the polkit-1/rules.d file. + +*modemmanager-0.5.2.0-r1 (04 Jul 2012) + + 04 Jul 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + +files/01-org.freedesktop.ModemManager.rules, + +modemmanager-0.5.2.0-r1.ebuild: + Install polkit-1/rules.d file for polkit-0.106 support (bug #421581, thanks + to Samuli Suominen). + + 27 Jun 2012; Samuli Suominen <ssuominen@gentoo.org> modemmanager-0.4.ebuild, + modemmanager-0.4_p20110205-r1.ebuild, modemmanager-0.5.ebuild, + modemmanager-0.5.2.0.ebuild: + inherit multilib.eclass for get_libdir function + + 27 Jun 2012; Samuli Suominen <ssuominen@gentoo.org> + modemmanager-0.5.2.0.ebuild: + .pkla files are only used by <sys-auth/polkit-0.106 wrt #421581 + + 24 May 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + modemmanager-0.4.ebuild, modemmanager-0.4_p20110205-r1.ebuild, + +files/modemmanager-0.5-glib-2.31.patch, modemmanager-0.5.ebuild: + Fix building old versions against >=glib-2.31. + + 05 May 2012; Jeff Horelick <jdhore@gentoo.org> modemmanager-0.4.ebuild, + modemmanager-0.4_p20110205-r1.ebuild, modemmanager-0.5.ebuild, + modemmanager-0.5.2.0.ebuild: + dev-util/pkgconfig -> virtual/pkgconfig + + 27 Mar 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + modemmanager-0.5.2.0.ebuild: + Fix pkg_postinst message. + +*modemmanager-0.5.2.0 (27 Mar 2012) + + 27 Mar 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + +files/01-org.freedesktop.ModemManager.pkla, +modemmanager-0.5.2.0.ebuild, + metadata.xml: + Version bump with lots of bugfixes. Allow users in plugdev group full control + over their modems if USE=policykit (bug #406421, thanks to Priit Laes). Add + myself to maintainers. + + 16 Feb 2012; Mike Frysinger <vapier@gentoo.org> modemmanager-0.5.ebuild: + Fix USE=doc depend and install so it actually does something. + +*modemmanager-0.5 (14 Aug 2011) + + 14 Aug 2011; Nirbheek Chauhan <nirbheek@gentoo.org> -modemmanager-0.3.ebuild, + -modemmanager-0.4_p20101211.ebuild, -modemmanager-0.4_p20110205.ebuild, + +modemmanager-0.5.ebuild: + Bump to 0.5, from gnome overlay, bug 378729 + +*modemmanager-0.4_p20110205-r1 (06 Jul 2011) + + 06 Jul 2011; Samuli Suominen <ssuominen@gentoo.org> + +modemmanager-0.4_p20110205-r1.ebuild: + Fix udev rules.d directory from /etc/udev to /lib/udev. + + 09 Jun 2011; Sebastian Pipping <sping@gentoo.org> modemmanager-0.3.ebuild, + modemmanager-0.4.ebuild, modemmanager-0.4_p20101211.ebuild, + modemmanager-0.4_p20110205.ebuild: + Add >=sys-fs/udev-171[gudev] as an alternative dependency to + >=sys-fs/udev-145[extras] (bug #370385) + +*modemmanager-0.4_p20110205 (04 Feb 2011) + + 04 Feb 2011; Robert Piasek <dagger@gentoo.org> + +modemmanager-0.4_p20110205.ebuild: + Add new snapshot of ModemManager + +*modemmanager-0.4_p20101211 (11 Dec 2010) + + 11 Dec 2010; Robert Piasek <dagger@gentoo.org> + +modemmanager-0.4_p20101211.ebuild: + New snapshot of ModemManager + + 28 Oct 2010; Samuli Suominen <ssuominen@gentoo.org> + modemmanager-0.4.ebuild: + ppc64 stable wrt #321593 + + 19 Oct 2010; Brent Baude <ranger@gentoo.org> modemmanager-0.4.ebuild: + Marking modemmanager-0.4 ppc for bug 321593 + + 20 Aug 2010; Markos Chandras <hwoarang@gentoo.org> + modemmanager-0.4.ebuild: + Stable on amd64 wrt bug #321593 + + 13 Aug 2010; Christian Faulhammer <fauli@gentoo.org> + modemmanager-0.4.ebuild: + stable x86, bug 321593 + +*modemmanager-0.4 (08 Jul 2010) + + 08 Jul 2010; Nirbheek Chauhan <nirbheek@gentoo.org> + +modemmanager-0.4.ebuild: + Bump to 0.4, new use-flag 'policykit', remove static libs and .la files, + fix deps, add elog about usb_modeswitch, add dist-version, add support for + ppp-2.4.5 (if/when it's added), fixes bug 326605 + + 07 Jul 2010; Samuli Suominen <ssuominen@gentoo.org> + modemmanager-0.3_p20100401.ebuild: + Missing dev-util/intltool and sys-devel/gettext DEPEND wrt #312887 by + Bjoern Ottervik. + +*modemmanager-0.3_p20100401 (01 Apr 2010) + + 01 Apr 2010; Robert Piasek <dagger@gentoo.org> + -modemmanager-0.2_p20091109.ebuild, -modemmanager-0.2_p20091123.ebuild, + +modemmanager-0.3_p20100401.ebuild: + New snapshot of ModemManager (bug #312587) + + 10 Mar 2010; Joseph Jezak <josejx@gentoo.org> modemmanager-0.3.ebuild: + Marked ~ppc/~ppc64 for bug #296548. + + 25 Jan 2010; Nirbheek Chauhan <nirbheek@gentoo.org> metadata.xml: + metadata.xml: add myself, fix indentation + +*modemmanager-0.3 (25 Jan 2010) + + 25 Jan 2010; Nirbheek Chauhan <nirbheek@gentoo.org> + +modemmanager-0.3.ebuild: + Bump to 0.3, needed for networkmanager-0.8 + +*modemmanager-0.2_p20091123 (23 Nov 2009) + + 23 Nov 2009; Robert Piasek <dagger@gentoo.org> + -modemmanager-0.2_p20090925.ebuild, +modemmanager-0.2_p20091123.ebuild: + New snapshot of modemmanager. Contains fixes for PPC. Special thanks to + papillon81 for helping to hunt this the problem down. + +*modemmanager-0.2_p20091109 (09 Nov 2009) + + 09 Nov 2009; Robert Piasek <dagger@gentoo.org> + -modemmanager-0.2_p20090824.ebuild, +modemmanager-0.2_p20091109.ebuild: + Version bump for development version of ModemManager + + 28 Sep 2009; Robert Piasek <dagger@gentoo.org> + modemmanager-0.2_p20090925.ebuild: + Disable -Werrors + +*modemmanager-0.2_p20090925 (25 Sep 2009) + + 25 Sep 2009; Robert Piasek <dagger@gentoo.org> + +modemmanager-0.2_p20090925.ebuild: + new snapshot + + 22 Sep 2009; Robert Piasek <dagger@gentoo.org> + modemmanager-0.2_p20090824.ebuild: + Added ARM keyword + +*modemmanager-0.2_p20090806 (13 Aug 2009) + + 13 Aug 2009; Robert Piasek <dagger@gentoo.org> + +modemmanager-0.2_p20090806.ebuild, +metadata.xml: + Initial ebuild of modemmanager diff --git a/net-misc/modemmanager/Manifest b/net-misc/modemmanager/Manifest new file mode 100644 index 00000000..b84e3460 --- /dev/null +++ b/net-misc/modemmanager/Manifest @@ -0,0 +1,4 @@ +DIST ModemManager-1.4.0.tar.xz 1313396 SHA256 efe12c30d4660a4694dec2a1ea68ea176f4dc3cb4b9e843929115943dc189ca0 SHA512 4c6ab92f6151c190585f83cbd5a50f283f1bea9a98207d81a9cc577a26ff9ff32b0b1efade0a1f44dfc5f77d96da999aede1626a1ddb2a97a9741884408685fb WHIRLPOOL 1c75bc86dea1fa9d5a7510cbc5cfdc2ea1a23e28a9d42ed30a7124f4f13535703eec3b240b9de2398562af11cfa3fa55c24cc5a5a55f4b1817e4a58217c98c22 +DIST ModemManager-1.4.2.tar.xz 1350604 SHA256 07d332fbe6f45f788f740810951e04042aaf023bd5ecf8ef0b3a06e37703585d SHA512 8be9387f78de5213ff77374ee2cba67c08301b29b2cd957c8bab86446d1227759833b9ecafb3caef590701f6422bae587db848391cf15c1dd16b5421e976a4c6 WHIRLPOOL 6a554a80ce53d1eb41f993ee5113a8f5606f20dde5c415f4c3375510bd5acb655f84ff5a17a5d678ba615810bcbc1366005b3d72dbab2b087a50f5e5352641a2 +DIST ModemManager-1.4.4.tar.xz 1395696 SHA256 1bf88861259772dc81e864e2faccfff0590d41676451a128c5f4e73550dd14d8 SHA512 66cc177b1fa0fef9da4c61a0019278fdcf00580b48ec4b0a01202b6132f887d64858871dcdc5965f8833eb85e49fe50f9406398961569d8e9a5d15003d1205cf WHIRLPOOL a9e960024c46bd3eeb39efaedd53a9401ebe88b3f158afc66908d0bdf4175b1ea31dadd229f9c9251167267e970ae3df177df26ab8075a0baf38d5794116d7ff +DIST ModemManager-1.4.6.tar.xz 1396764 SHA256 0cedabf46310f8c56630b116944f54ee64369c76c2f35f5f460ca19a8bb5a5cd SHA512 fb74961df2e3e1604de58838da6e8dd7cf80fee97dbfd71eb7f2df60cc319bf38df8c5706a5933856c500b014d3156066e608bb0820c967ddbd964bd9fc2fdec WHIRLPOOL 4f63ac160a4d4acddd2064a58204e6ba410543aefc936ffb753fbb15e004d089cf874ee2390df174638ae15f26f4cf7c7e720de793e69f0cd0b6a923558b0af1 diff --git a/net-misc/modemmanager/files/01-org.freedesktop.ModemManager1.rules b/net-misc/modemmanager/files/01-org.freedesktop.ModemManager1.rules new file mode 100644 index 00000000..7fca6472 --- /dev/null +++ b/net-misc/modemmanager/files/01-org.freedesktop.ModemManager1.rules @@ -0,0 +1,7 @@ +// Let users in plugdev group modify ModemManager +polkit.addRule(function(action, subject) { + if (/^org\.freedesktop\.ModemManager1\.(Device\.Control|Contacts|Messaging|Location)$/.test(action.id) && + subject.isInGroup("plugdev") && subject.active) { + return "yes"; + } +}); diff --git a/net-misc/modemmanager/metadata.xml b/net-misc/modemmanager/metadata.xml new file mode 100644 index 00000000..c10566d5 --- /dev/null +++ b/net-misc/modemmanager/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>gnome</herd> + <use> + <flag name="mbim">Enable MBIM modem protocol</flag> + <flag name="qmi">Enable support for the QMI modem protocol used by + devices with Qualcomm chipsets</flag> + <flag name="qmi-newest">Avoid deprecated QMI commands. Warning: may + cause incompatibility with older devices.</flag> + </use> +</pkgmetadata> diff --git a/net-misc/modemmanager/modemmanager-1.4.0.ebuild b/net-misc/modemmanager/modemmanager-1.4.0.ebuild new file mode 100644 index 00000000..3dfa1686 --- /dev/null +++ b/net-misc/modemmanager/modemmanager-1.4.0.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/modemmanager/modemmanager-1.4.0.ebuild,v 1.7 2015/03/03 09:32:56 dlan Exp $ + +EAPI="5" +GCONF_DEBUG="no" +GNOME2_LA_PUNT="yes" +VALA_MIN_API_VERSION="0.18" +VALA_USE_DEPEND="vapigen" + +inherit gnome2 user readme.gentoo udev vala + +DESCRIPTION="Modem and mobile broadband management libraries" +HOMEPAGE="http://cgit.freedesktop.org/ModemManager/ModemManager/" +SRC_URI="http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0/1" # subslot = dbus interface version, i.e. N in org.freedesktop.ModemManager${N} +KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ~mips ppc ppc64 ~sparc x86" +IUSE="+introspection mbim policykit +qmi qmi-newest vala" +REQUIRED_USE=" + qmi-newest? ( qmi ) + vala? ( introspection ) +" + +RDEPEND=" + >=dev-libs/glib-2.32:2 + virtual/libgudev:= + introspection? ( >=dev-libs/gobject-introspection-0.9.6 ) + mbim? ( >=net-libs/libmbim-1.10 ) + policykit? ( >=sys-auth/polkit-0.106[introspection] ) + qmi? ( >=net-libs/libqmi-1.6.0:= ) +" +DEPEND="${RDEPEND} + dev-util/gdbus-codegen + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + vala? ( $(vala_depend) ) +" + +S="${WORKDIR}/ModemManager-${PV}" + +src_prepare() { + DOC_CONTENTS="If your USB modem shows up as a Flash drive when you plug it in, + You should install sys-apps/usb_modeswitch which will automatically + switch it over to USB modem mode whenever you plug it in.\n" + + if use policykit; then + DOC_CONTENTS+="\nTo control your modem without needing to enter the root password, + add your user account to the 'plugdev' group." + fi + + use vala && vala_src_prepare + gnome2_src_prepare +} + +src_configure() { + gnome2_src_configure \ + --disable-more-warnings \ + --with-udev-base-dir="$(get_udevdir)" \ + --disable-static \ + --with-dist-version=${PVR} \ + $(use_enable introspection) \ + $(use_with mbim) \ + $(use_with policykit polkit) \ + $(use_with qmi) \ + $(use_with qmi-newest newest-qmi-commands) \ + $(use_enable vala) +} + +src_install() { + gnome2_src_install + + # Allow users in plugdev group full control over their modem + if use policykit; then + insinto /usr/share/polkit-1/rules.d/ + doins "${FILESDIR}"/01-org.freedesktop.ModemManager1.rules + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + gnome2_pkg_postinst + + use policykit && enewgroup plugdev + + # The polkit rules file moved to /usr/share + old_rules="${EROOT}etc/polkit-1/rules.d/01-org.freedesktop.ModemManager.rules" + if [[ -f "${old_rules}" ]]; then + case "$(md5sum ${old_rules})" in + c5ff02532cb1da2c7545c3069e5d0992* | 5c50f0dc603c0a56e2851a5ce9389335* ) + # Automatically delete the old rules.d file if the user did not change it + elog + elog "Removing old ${old_rules} ..." + rm -f "${old_rules}" || eerror "Failed, please remove ${old_rules} manually" + ;; + * ) + elog "The ${old_rules}" + elog "file moved to /usr/share/polkit-1/rules.d/ in >=modemmanager-0.5.2.0-r2" + elog "If you edited ${old_rules}" + elog "without changing its behavior, you may want to remove it." + ;; + esac + fi + + readme.gentoo_print_elog +} diff --git a/net-misc/modemmanager/modemmanager-1.4.2.ebuild b/net-misc/modemmanager/modemmanager-1.4.2.ebuild new file mode 100644 index 00000000..0fd6846c --- /dev/null +++ b/net-misc/modemmanager/modemmanager-1.4.2.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/modemmanager/modemmanager-1.4.2.ebuild,v 1.5 2015/03/15 13:31:29 pacho Exp $ + +EAPI="5" +GCONF_DEBUG="no" +GNOME2_LA_PUNT="yes" +VALA_USE_DEPEND="vapigen" + +inherit gnome2 user readme.gentoo udev vala + +DESCRIPTION="Modem and mobile broadband management libraries" +HOMEPAGE="http://cgit.freedesktop.org/ModemManager/ModemManager/" +SRC_URI="http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0/1" # subslot = dbus interface version, i.e. N in org.freedesktop.ModemManager${N} +KEYWORDS="~alpha amd64 ~arm ~ia64 ~mips ppc ppc64 ~sparc x86" +IUSE="+introspection mbim policykit +qmi qmi-newest vala gudev" +REQUIRED_USE=" + qmi-newest? ( qmi ) + vala? ( introspection ) +" + +RDEPEND=" + >=dev-libs/glib-2.32:2 + gudev? ( virtual/libgudev:= ) + introspection? ( >=dev-libs/gobject-introspection-0.9.6 ) + mbim? ( >=net-libs/libmbim-1.10 ) + policykit? ( >=sys-auth/polkit-0.106[introspection] ) + qmi? ( >=net-libs/libqmi-1.6.0:= ) +" +DEPEND="${RDEPEND} + dev-util/gdbus-codegen + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + vala? ( $(vala_depend) ) +" + +S="${WORKDIR}/ModemManager-${PV}" + +src_prepare() { + DOC_CONTENTS="If your USB modem shows up as a Flash drive when you plug it in, + You should install sys-apps/usb_modeswitch which will automatically + switch it over to USB modem mode whenever you plug it in.\n" + + if use policykit; then + DOC_CONTENTS+="\nTo control your modem without needing to enter the root password, + add your user account to the 'plugdev' group." + fi + + use vala && vala_src_prepare + gnome2_src_prepare +} + +src_configure() { + gnome2_src_configure \ + --disable-more-warnings \ + if use_gudev + --with-udev-base-dir="$(get_udevdir)" \ + fi + --disable-static \ + --with-dist-version=${PVR} \ + $(use_enable gudev) + $(use_enable introspection) \ + $(use_with mbim) \ + $(use_with policykit polkit) \ + $(use_with qmi) \ + $(use_with qmi-newest newest-qmi-commands) \ + $(use_enable vala) +} + +src_install() { + gnome2_src_install + + # Allow users in plugdev group full control over their modem + if use policykit; then + insinto /usr/share/polkit-1/rules.d/ + doins "${FILESDIR}"/01-org.freedesktop.ModemManager1.rules + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + gnome2_pkg_postinst + + use policykit && enewgroup plugdev + + # The polkit rules file moved to /usr/share + old_rules="${EROOT}etc/polkit-1/rules.d/01-org.freedesktop.ModemManager.rules" + if [[ -f "${old_rules}" ]]; then + case "$(md5sum ${old_rules})" in + c5ff02532cb1da2c7545c3069e5d0992* | 5c50f0dc603c0a56e2851a5ce9389335* ) + # Automatically delete the old rules.d file if the user did not change it + elog + elog "Removing old ${old_rules} ..." + rm -f "${old_rules}" || eerror "Failed, please remove ${old_rules} manually" + ;; + * ) + elog "The ${old_rules}" + elog "file moved to /usr/share/polkit-1/rules.d/ in >=modemmanager-0.5.2.0-r2" + elog "If you edited ${old_rules}" + elog "without changing its behavior, you may want to remove it." + ;; + esac + fi + + readme.gentoo_print_elog +} diff --git a/net-misc/modemmanager/modemmanager-1.4.4.ebuild b/net-misc/modemmanager/modemmanager-1.4.4.ebuild new file mode 100644 index 00000000..65f41240 --- /dev/null +++ b/net-misc/modemmanager/modemmanager-1.4.4.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/modemmanager/modemmanager-1.4.4.ebuild,v 1.1 2015/03/07 14:28:46 pacho Exp $ + +EAPI="5" +GCONF_DEBUG="no" +GNOME2_LA_PUNT="yes" +VALA_USE_DEPEND="vapigen" + +inherit gnome2 user readme.gentoo udev vala + +DESCRIPTION="Modem and mobile broadband management libraries" +HOMEPAGE="http://cgit.freedesktop.org/ModemManager/ModemManager/" +SRC_URI="http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0/1" # subslot = dbus interface version, i.e. N in org.freedesktop.ModemManager${N} +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" +IUSE="+introspection mbim policykit +qmi qmi-newest vala" +REQUIRED_USE=" + qmi-newest? ( qmi ) + vala? ( introspection ) +" + +RDEPEND=" + >=dev-libs/glib-2.32:2 + virtual/libgudev:= + introspection? ( >=dev-libs/gobject-introspection-0.9.6 ) + mbim? ( >=net-libs/libmbim-1.10 ) + policykit? ( >=sys-auth/polkit-0.106[introspection] ) + qmi? ( >=net-libs/libqmi-1.12.4:= ) +" +DEPEND="${RDEPEND} + dev-util/gdbus-codegen + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + vala? ( $(vala_depend) ) +" + +S="${WORKDIR}/ModemManager-${PV}" + +src_prepare() { + DOC_CONTENTS="If your USB modem shows up as a Flash drive when you plug it in, + You should install sys-apps/usb_modeswitch which will automatically + switch it over to USB modem mode whenever you plug it in.\n" + + if use policykit; then + DOC_CONTENTS+="\nTo control your modem without needing to enter the root password, + add your user account to the 'plugdev' group." + fi + + use vala && vala_src_prepare + gnome2_src_prepare +} + +src_configure() { + gnome2_src_configure \ + --disable-more-warnings \ + --with-udev-base-dir="$(get_udevdir)" \ + --disable-static \ + --with-dist-version=${PVR} \ + $(use_enable introspection) \ + $(use_with mbim) \ + $(use_with policykit polkit) \ + $(use_with qmi) \ + $(use_with qmi-newest newest-qmi-commands) \ + $(use_enable vala) +} + +src_install() { + gnome2_src_install + + # Allow users in plugdev group full control over their modem + if use policykit; then + insinto /usr/share/polkit-1/rules.d/ + doins "${FILESDIR}"/01-org.freedesktop.ModemManager1.rules + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + gnome2_pkg_postinst + + use policykit && enewgroup plugdev + + # The polkit rules file moved to /usr/share + old_rules="${EROOT}etc/polkit-1/rules.d/01-org.freedesktop.ModemManager.rules" + if [[ -f "${old_rules}" ]]; then + case "$(md5sum ${old_rules})" in + c5ff02532cb1da2c7545c3069e5d0992* | 5c50f0dc603c0a56e2851a5ce9389335* ) + # Automatically delete the old rules.d file if the user did not change it + elog + elog "Removing old ${old_rules} ..." + rm -f "${old_rules}" || eerror "Failed, please remove ${old_rules} manually" + ;; + * ) + elog "The ${old_rules}" + elog "file moved to /usr/share/polkit-1/rules.d/ in >=modemmanager-0.5.2.0-r2" + elog "If you edited ${old_rules}" + elog "without changing its behavior, you may want to remove it." + ;; + esac + fi + + readme.gentoo_print_elog +} diff --git a/net-misc/modemmanager/modemmanager-1.4.6.ebuild b/net-misc/modemmanager/modemmanager-1.4.6.ebuild new file mode 100644 index 00000000..6fec727d --- /dev/null +++ b/net-misc/modemmanager/modemmanager-1.4.6.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/modemmanager/modemmanager-1.4.6.ebuild,v 1.1 2015/04/20 14:28:19 chainsaw Exp $ + +EAPI="5" +GCONF_DEBUG="no" +GNOME2_LA_PUNT="yes" +VALA_USE_DEPEND="vapigen" + +inherit gnome2 user readme.gentoo udev vala + +DESCRIPTION="Modem and mobile broadband management libraries" +HOMEPAGE="http://cgit.freedesktop.org/ModemManager/ModemManager/" +SRC_URI="http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0/1" # subslot = dbus interface version, i.e. N in org.freedesktop.ModemManager${N} +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" +IUSE="+introspection mbim policykit +qmi qmi-newest vala" +REQUIRED_USE=" + qmi-newest? ( qmi ) + vala? ( introspection ) +" + +RDEPEND=" + >=dev-libs/glib-2.32:2 + virtual/libgudev:= + introspection? ( >=dev-libs/gobject-introspection-0.9.6 ) + mbim? ( >=net-libs/libmbim-1.10 ) + policykit? ( >=sys-auth/polkit-0.106[introspection] ) + qmi? ( >=net-libs/libqmi-1.12.4:= ) +" +DEPEND="${RDEPEND} + dev-util/gdbus-codegen + >=dev-util/intltool-0.40 + sys-devel/gettext + virtual/pkgconfig + vala? ( $(vala_depend) ) +" + +S="${WORKDIR}/ModemManager-${PV}" + +src_prepare() { + DOC_CONTENTS="If your USB modem shows up as a Flash drive when you plug it in, + You should install sys-apps/usb_modeswitch which will automatically + switch it over to USB modem mode whenever you plug it in.\n" + + if use policykit; then + DOC_CONTENTS+="\nTo control your modem without needing to enter the root password, + add your user account to the 'plugdev' group." + fi + + use vala && vala_src_prepare + gnome2_src_prepare +} + +src_configure() { + gnome2_src_configure \ + --disable-more-warnings \ + --with-udev-base-dir="$(get_udevdir)" \ + --disable-static \ + --with-dist-version=${PVR} \ + $(use_enable introspection) \ + $(use_with mbim) \ + $(use_with policykit polkit) \ + $(use_with qmi) \ + $(use_with qmi-newest newest-qmi-commands) \ + $(use_enable vala) +} + +src_install() { + gnome2_src_install + + # Allow users in plugdev group full control over their modem + if use policykit; then + insinto /usr/share/polkit-1/rules.d/ + doins "${FILESDIR}"/01-org.freedesktop.ModemManager1.rules + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + gnome2_pkg_postinst + + use policykit && enewgroup plugdev + + # The polkit rules file moved to /usr/share + old_rules="${EROOT}etc/polkit-1/rules.d/01-org.freedesktop.ModemManager.rules" + if [[ -f "${old_rules}" ]]; then + case "$(md5sum ${old_rules})" in + c5ff02532cb1da2c7545c3069e5d0992* | 5c50f0dc603c0a56e2851a5ce9389335* ) + # Automatically delete the old rules.d file if the user did not change it + elog + elog "Removing old ${old_rules} ..." + rm -f "${old_rules}" || eerror "Failed, please remove ${old_rules} manually" + ;; + * ) + elog "The ${old_rules}" + elog "file moved to /usr/share/polkit-1/rules.d/ in >=modemmanager-0.5.2.0-r2" + elog "If you edited ${old_rules}" + elog "without changing its behavior, you may want to remove it." + ;; + esac + fi + + readme.gentoo_print_elog +} diff --git a/sys-apps/systemd/Manifest b/sys-apps/systemd/Manifest new file mode 100644 index 00000000..30f6ac0c --- /dev/null +++ b/sys-apps/systemd/Manifest @@ -0,0 +1,4 @@ +DIST systemd-208-r1.tar.xz 2382904 SHA256 aa64fa864466fd5727005c55d61c092828b94b4f857272c0b503695022146390 SHA512 c21989b747f5e73ba2311919e1ae558132e4ab2e0d8715c25f51e5e90069e147a52e04280c736ecca6b675af7d79def576171a9b08aaeda45fcd52bcdca011cb WHIRLPOOL e86fdbf96c75c4c94c9507900a5696ff811f5439e0cb45bdc765dc42c62a855c9d2e7d3414df7ec7e18013d937c9148e42c861d0e28e8b4c2fabebd234fbee03 +DIST systemd-215.tar.xz 2888652 SHA256 ce76a3c05e7d4adc806a3446a5510c0c9b76a33f19adc32754b69a0945124505 SHA512 58de0bf7c43c309c2f8e4b7af16b46608a4ea39cbb280496fe5d43d76ea25545484f4ef62efce18be487c69134e4a038d8787f2c262484f92f7fc6feb3ae2f11 WHIRLPOOL 07389822b9f09cd91f360f3cbdcd0b5bf46ba1750dd1a4ad44fd2813436ef40b447b954d33582ffe83aebde618ecbeac4d2f3231d8afbf3975caf84f52b1053a +DIST systemd-216.tar.xz 3612960 SHA256 945d3db7d840d6ffe98aa68394428e13317161ae79905397faab6671619728f3 SHA512 f4eee6664368168eafd61939f1355ac21c7eeecce6247de98ef36f40bb6a942d12c006ced4ee15f3d8f11699c194990222d5a5115b45f2aa81f2a1abafebbdd2 WHIRLPOOL 505e09b55209a4f9d8cec077970571b2e1298e8db02946a6c79df139dece9d1a08e46c86ef6c8053274abfd46c9a5ea09157f5bc9dc1f7461322c596e84ef494 +DIST systemd-gentoo-patchset-208_p19.tar.bz2 7351 SHA256 3fce1d7ff628b0f49d4bf45eb7beb7d3b4a45c219464be47e4b04e5e16ace335 SHA512 d2ee48a46a8dc097f41d23c58c2c8f40841b42ce175d633ba0090543164c353449a911c5f314b1d1aa7937e51b97cc2608aa4590f0ff56140b42108b0e76a2e8 WHIRLPOOL 934fd88ee12ed72709e0b7aabe01f9e21417480156049af80eaa5413d50726aa49abc03e756bdeff45a4f82decaafa1f76539f16b2319e3c42a0a593f2096417 diff --git a/sys-apps/systemd/files/215-0001-always-check-for-__BYTE_ORDER-__BIG_ENDIAN-when-chec.patch b/sys-apps/systemd/files/215-0001-always-check-for-__BYTE_ORDER-__BIG_ENDIAN-when-chec.patch new file mode 100644 index 00000000..b29c10de --- /dev/null +++ b/sys-apps/systemd/files/215-0001-always-check-for-__BYTE_ORDER-__BIG_ENDIAN-when-chec.patch @@ -0,0 +1,116 @@ +From 28f6bb18cdea297164763db94e2366ca4857c9c7 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Fri, 11 Jul 2014 15:56:16 +0200 +Subject: [PATCH 1/2] always check for __BYTE_ORDER == __BIG_ENDIAN when + checking for endianess + +Let's always stick to glibc's way to determine byte order, and not mix +autoconf-specific checks with gcc checks. +--- + src/shared/architecture.h | 12 ++++++------ + src/shared/gpt.h | 4 ++-- + src/shared/time-dst.c | 6 +++--- + 3 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/src/shared/architecture.h b/src/shared/architecture.h +index 4821d5d..58e97e5 100644 +--- a/src/shared/architecture.h ++++ b/src/shared/architecture.h +@@ -80,7 +80,7 @@ Architecture uname_architecture(void); + # define native_architecture() ARCHITECTURE_X86 + # define LIB_ARCH_TUPLE "i386-linux-gnu" + #elif defined(__powerpc64__) +-# if defined(WORDS_BIGENDIAN) ++# if __BYTE_ORDER == __BIG_ENDIAN + # define native_architecture() ARCHITECTURE_PPC64 + # define LIB_ARCH_TUPLE "ppc64-linux-gnu" + # else +@@ -88,7 +88,7 @@ Architecture uname_architecture(void); + # error "Missing LIB_ARCH_TUPLE for PPC64LE" + # endif + #elif defined(__powerpc__) +-# if defined(WORDS_BIGENDIAN) ++# if __BYTE_ORDER == __BIG_ENDIAN + # define native_architecture() ARCHITECTURE_PPC + # define LIB_ARCH_TUPLE "powerpc-linux-gnu" + # else +@@ -117,7 +117,7 @@ Architecture uname_architecture(void); + # define native_architecture() ARCHITECTURE_SPARC + # define LIB_ARCH_TUPLE "sparc-linux-gnu" + #elif defined(__mips64__) +-# if defined(WORDS_BIGENDIAN) ++# if __BYTE_ORDER == __BIG_ENDIAN + # define native_architecture() ARCHITECTURE_MIPS64 + # error "Missing LIB_ARCH_TUPLE for MIPS64" + # else +@@ -125,7 +125,7 @@ Architecture uname_architecture(void); + # error "Missing LIB_ARCH_TUPLE for MIPS64_LE" + # endif + #elif defined(__mips__) +-# if defined(WORDS_BIGENDIAN) ++# if __BYTE_ORDER == __BIG_ENDIAN + # define native_architecture() ARCHITECTURE_MIPS + # define LIB_ARCH_TUPLE "mips-linux-gnu" + # else +@@ -136,7 +136,7 @@ Architecture uname_architecture(void); + # define native_architecture() ARCHITECTURE_ALPHA + # define LIB_ARCH_TUPLE "alpha-linux-gnu" + #elif defined(__aarch64__) +-# if defined(WORDS_BIGENDIAN) ++# if __BYTE_ORDER == __BIG_ENDIAN + # define native_architecture() ARCHITECTURE_ARM64_BE + # define LIB_ARCH_TUPLE "aarch64_be-linux-gnu" + # else +@@ -144,7 +144,7 @@ Architecture uname_architecture(void); + # define LIB_ARCH_TUPLE "aarch64-linux-gnu" + # endif + #elif defined(__arm__) +-# if defined(WORDS_BIGENDIAN) ++# if __BYTE_ORDER == __BIG_ENDIAN + # define native_architecture() ARCHITECTURE_ARM_BE + # if defined(__ARM_EABI__) + # if defined(__ARM_PCS_VFP) +diff --git a/src/shared/gpt.h b/src/shared/gpt.h +index 64090e0..278940b 100644 +--- a/src/shared/gpt.h ++++ b/src/shared/gpt.h +@@ -42,10 +42,10 @@ + # define GPT_ROOT_NATIVE GPT_ROOT_X86 + #endif + +-#if defined(__aarch64__) && !defined(WORDS_BIGENDIAN) ++#if defined(__aarch64__) && (__BYTE_ORDER != __BIG_ENDIAN) + # define GPT_ROOT_NATIVE GPT_ROOT_ARM_64 + # define GPT_ROOT_SECONDARY GPT_ROOT_ARM +-#elif defined(__arm__) && !defined(WORDS_BIGENDIAN) ++#elif defined(__arm__) && (__BYTE_ORDER != __BIG_ENDIAN) + # define GPT_ROOT_NATIVE GPT_ROOT_ARM + #endif + +diff --git a/src/shared/time-dst.c b/src/shared/time-dst.c +index ceca2fa..6195b11 100644 +--- a/src/shared/time-dst.c ++++ b/src/shared/time-dst.c +@@ -207,8 +207,8 @@ read_again: + if (type_idxs[i] >= num_types) + return -EINVAL; + +- if (BYTE_ORDER == BIG_ENDIAN ? sizeof(time_t) == 8 && trans_width == 4 +- : sizeof(time_t) == 4 || trans_width == 4) { ++ if (__BYTE_ORDER == __BIG_ENDIAN ? sizeof(time_t) == 8 && trans_width == 4 ++ : sizeof(time_t) == 4 || trans_width == 4) { + /* Decode the transition times, stored as 4-byte integers in + network (big-endian) byte order. We work from the end of + the array so as not to clobber the next element to be +@@ -216,7 +216,7 @@ read_again: + i = num_transitions; + while (i-- > 0) + transitions[i] = decode((char *)transitions + i * 4); +- } else if (BYTE_ORDER != BIG_ENDIAN && sizeof(time_t) == 8) { ++ } else if (__BYTE_ORDER != __BIG_ENDIAN && sizeof(time_t) == 8) { + /* Decode the transition times, stored as 8-byte integers in + network (big-endian) byte order. */ + for (i = 0; i < num_transitions; ++i) +-- +1.8.5.5 + diff --git a/sys-apps/systemd/files/215-0002-endian-explicitly-include-endian.h-wherever-we-want-.patch b/sys-apps/systemd/files/215-0002-endian-explicitly-include-endian.h-wherever-we-want-.patch new file mode 100644 index 00000000..71acac1b --- /dev/null +++ b/sys-apps/systemd/files/215-0002-endian-explicitly-include-endian.h-wherever-we-want-.patch @@ -0,0 +1,53 @@ +From 2281422746c00d2803911f2b4699eee6bc87ee04 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Fri, 11 Jul 2014 16:13:13 +0200 +Subject: [PATCH 2/2] endian: explicitly include endian.h wherever we want to + use __BYTE_ORDER + +--- + src/libsystemd/sd-bus/bus-protocol.h | 1 + + src/shared/architecture.h | 2 ++ + src/shared/gpt.h | 2 ++ + 3 files changed, 5 insertions(+) + +diff --git a/src/libsystemd/sd-bus/bus-protocol.h b/src/libsystemd/sd-bus/bus-protocol.h +index 5046d17..4f46468 100644 +--- a/src/libsystemd/sd-bus/bus-protocol.h ++++ b/src/libsystemd/sd-bus/bus-protocol.h +@@ -21,6 +21,7 @@ + along with systemd; If not, see <http://www.gnu.org/licenses/>. + ***/ + ++#include <endian.h> + + /* Endianness */ + +diff --git a/src/shared/architecture.h b/src/shared/architecture.h +index 58e97e5..38780d1 100644 +--- a/src/shared/architecture.h ++++ b/src/shared/architecture.h +@@ -21,6 +21,8 @@ + along with systemd; If not, see <http://www.gnu.org/licenses/>. + ***/ + ++#include <endian.h> ++ + #include "util.h" + + /* A cleaned up architecture definition. We don't want to get lost in +diff --git a/src/shared/gpt.h b/src/shared/gpt.h +index 278940b..ef3444f 100644 +--- a/src/shared/gpt.h ++++ b/src/shared/gpt.h +@@ -19,6 +19,8 @@ + along with systemd; If not, see <http://www.gnu.org/licenses/>. + ***/ + ++#include <endian.h> ++ + #include "sd-id128.h" + + /* We only support root disk discovery for x86, x86-64 and ARM for +-- +1.8.5.5 + diff --git a/sys-apps/systemd/files/215-0003-udev-exclude-MD-from-block-device-ownership-event-lo.patch b/sys-apps/systemd/files/215-0003-udev-exclude-MD-from-block-device-ownership-event-lo.patch new file mode 100644 index 00000000..c730242c --- /dev/null +++ b/sys-apps/systemd/files/215-0003-udev-exclude-MD-from-block-device-ownership-event-lo.patch @@ -0,0 +1,54 @@ +From 9d17a215fb30cb3e49db516a39c9bec2159004a7 Mon Sep 17 00:00:00 2001 +From: Kay Sievers <kay@vrfy.org> +Date: Thu, 24 Jul 2014 23:37:35 +0200 +Subject: [PATCH 3/3] udev: exclude MD from block device ownership event + locking + +MD instantiates devices at open(). This is incomptible with the +locking logic, as the "change" event emitted when stopping a +device will bring it back. +--- + src/udev/udevd.c | 23 +++++++---------------- + 1 file changed, 7 insertions(+), 16 deletions(-) + +diff --git a/src/udev/udevd.c b/src/udev/udevd.c +index a45d324..db935d6 100644 +--- a/src/udev/udevd.c ++++ b/src/udev/udevd.c +@@ -285,26 +285,17 @@ static void worker_new(struct event *event) + udev_event->exec_delay = exec_delay; + + /* +- * Take a "read lock" on the device node; this establishes ++ * Take a shared lock on the device node; this establishes + * a concept of device "ownership" to serialize device +- * access. External processes holding a "write lock" will ++ * access. External processes holding an exclusive lock will + * cause udev to skip the event handling; in the case udev +- * acquired the lock, the external process will block until ++ * acquired the lock, the external process can block until + * udev has finished its event handling. + */ +- +- /* +- * <kabi_> since we make check - device seems unused - we try +- * ioctl to deactivate - and device is found to be opened +- * <kay> sure, you try to take a write lock +- * <kay> if you get it udev is out +- * <kay> if you can't get it, udev is busy +- * <kabi_> we cannot deactivate openned device (as it is in-use) +- * <kay> maybe we should just exclude dm from that thing entirely +- * <kabi_> IMHO this sounds like a good plan for this moment +- */ +- if (streq_ptr("block", udev_device_get_subsystem(dev)) && +- !startswith(udev_device_get_sysname(dev), "dm-")) { ++ if (!streq_ptr(udev_device_get_action(dev), "remove") && ++ streq_ptr("block", udev_device_get_subsystem(dev)) && ++ !startswith(udev_device_get_sysname(dev), "dm-") && ++ !startswith(udev_device_get_sysname(dev), "md")) { + struct udev_device *d = dev; + + if (streq_ptr("partition", udev_device_get_devtype(d))) +-- +1.8.5.5 + diff --git a/sys-apps/systemd/files/216-lz4-build.patch b/sys-apps/systemd/files/216-lz4-build.patch new file mode 100644 index 00000000..65fe45cb --- /dev/null +++ b/sys-apps/systemd/files/216-lz4-build.patch @@ -0,0 +1,19 @@ +commit 10893a5cfa7d792ba171282c2ec46b85ed6aae0c +Author: Gustavo Sverzut Barbieri <gustavo.barbieri@intel.com> +Date: Thu Sep 25 18:08:02 2014 -0300 + + journal: build fix when LZ4 is enabled but XZ is not + +diff --git a/src/journal/journal-file.h b/src/journal/journal-file.h +index da2ef3b..6b4bf0d 100644 +--- a/src/journal/journal-file.h ++++ b/src/journal/journal-file.h +@@ -78,7 +78,7 @@ typedef struct JournalFile { + + Hashmap *chain_cache; + +-#ifdef HAVE_XZ ++#if defined(HAVE_XZ) || defined(HAVE_LZ4) + void *compress_buffer; + size_t compress_buffer_size; + #endif diff --git a/sys-apps/systemd/files/216-tmpfiles-setup-dev.patch b/sys-apps/systemd/files/216-tmpfiles-setup-dev.patch new file mode 100644 index 00000000..1fa4a3e7 --- /dev/null +++ b/sys-apps/systemd/files/216-tmpfiles-setup-dev.patch @@ -0,0 +1,21 @@ +From 8c94052ee543c3598a3c7b0c46688150aa2c6168 Mon Sep 17 00:00:00 2001 +From: Tom Gundersen <teg@jklm.no> +Date: Mon, 27 Oct 2014 17:15:42 +0100 +Subject: units: tmpfiles-setup-dev - allow unsafe file creation to happen in + /dev at boot + +This will allow us to mark static device nodes with '!' to indicate that they should only be created at early boot. + +diff --git a/units/systemd-tmpfiles-setup-dev.service.in b/units/systemd-tmpfiles-setup-dev.service.in +index f3833fd..0123a03 100644 +--- a/units/systemd-tmpfiles-setup-dev.service.in ++++ b/units/systemd-tmpfiles-setup-dev.service.in +@@ -17,4 +17,4 @@ ConditionCapability=CAP_SYS_MODULE + [Service] + Type=oneshot + RemainAfterExit=yes +-ExecStart=@rootbindir@/systemd-tmpfiles --prefix=/dev --create ++ExecStart=@rootbindir@/systemd-tmpfiles --prefix=/dev --create --boot +-- +cgit v0.10.2 + diff --git a/sys-apps/systemd/files/blacklist-146 b/sys-apps/systemd/files/blacklist-146 new file mode 100644 index 00000000..3e063a35 --- /dev/null +++ b/sys-apps/systemd/files/blacklist-146 @@ -0,0 +1,48 @@ +# This file lists modules which will not be loaded by udev, +# not at coldplugging and not on hotplug events. + +# Add your own entries to this file +# in the format "blacklist <name of module>" + +# Some examples: +# evbug is a debug tool and should be loaded explicitly +blacklist evbug + +# Autoloading eth1394 most of the time re-orders your network +# interfaces, and with buggy kernel 2.6.21, udev persistent-net +# is not able to rename these devices, so you get eth?_rename devices +# plus an exceeded 30sec boot timeout +blacklist eth1394 + +# You probably want this to not get the console beep loud on every tab :) +#blacklist pcspkr + +# these drivers are very simple, the HID drivers are usually preferred +#blacklist usbmouse +#blacklist usbkbd + +# Sometimes loading a framebuffer driver at boot gets the console black +#install pci:v*d*sv*sd*bc03sc*i* /bin/true + +# hplip and cups 1.4+ use raw USB devices, so it requires usblp not be loaded +blacklist usblp + +## make broadcom-sta happy +## <2012-12-08. +#blacklist ssb +#blacklist bcma +#blacklist brcmsmac +#blacklist b43 + +# make b43 happy (ditch broadcom-sta) +# 2012-12-08. Testing needed. +blacklist wl + +# keep nvidia-drivers working, sorry nouveau +blacklist nouveau + +# Known to cause kernel OOPS at boot +blacklist ite_cir + +# Prevents kernel message: Driver 'pcspkr' is already registered, aborting... +blacklist snd-pcsp diff --git a/sys-apps/systemd/metadata.xml b/sys-apps/systemd/metadata.xml new file mode 100644 index 00000000..04f7dcb3 --- /dev/null +++ b/sys-apps/systemd/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>systemd@gentoo.org</email> + <name>Gentoo systemd team</name> + </maintainer> + <use> + <!-- XXX: describe those two better --> + <flag name='audit'>Enable support for <pkg>sys-process/audit</pkg></flag> + <flag name='cryptsetup'>Use libcryptsetup</flag> + <flag name='efi'>Enable EFI support (installs bootctl)</flag> + <flag name='gcrypt'>Enable sealing of journal files using gcrypt</flag> + <flag name="gudev">enable libudev gobject interface</flag> + <flag name='http'>Enable embedded HTTP server in journald</flag> + <flag name='kmod'>Enable kernel module loading via <pkg>sys-apps/kmod</pkg></flag> + <flag name='qrcode'>Enable qrcode output support in journal</flag> + <flag name='vanilla'>Disable Gentoo-specific behavior and compatibility quirks</flag> + </use> +</pkgmetadata> diff --git a/sys-apps/systemd/systemd-208-r3.ebuild b/sys-apps/systemd/systemd-208-r3.ebuild new file mode 100644 index 00000000..6a9efc61 --- /dev/null +++ b/sys-apps/systemd/systemd-208-r3.ebuild @@ -0,0 +1,394 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +AUTOTOOLS_PRUNE_LIBTOOL_FILES=all +PYTHON_COMPAT=( python{2_7,3_2,3_3} ) +inherit autotools-utils bash-completion-r1 fcaps linux-info multilib \ + multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \ + user + +DESCRIPTION="System and service manager for Linux" +HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd" +SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz -> ${P}-r1.tar.xz + http://dev.gentoo.org/~mgorny/dist/${PN}-gentoo-patchset-${PV}_p19.tar.bz2" + +LICENSE="GPL-2 LGPL-2.1 MIT public-domain" +SLOT="0/1" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="acl audit cryptsetup doc +firmware-loader gcrypt gudev http introspection + +kmod lzma pam policykit python qrcode selinux tcpd test + vanilla xattr" + +MINKV="3.0" + +COMMON_DEPEND=">=sys-apps/dbus-1.6.8-r1 + >=sys-apps/util-linux-2.20 + sys-libs/libcap + acl? ( sys-apps/acl ) + audit? ( >=sys-process/audit-2 ) + cryptsetup? ( >=sys-fs/cryptsetup-1.6 ) + gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0 ) + gudev? ( >=dev-libs/glib-2[${MULTILIB_USEDEP}] ) + http? ( net-libs/libmicrohttpd ) + introspection? ( >=dev-libs/gobject-introspection-1.31.1 ) + kmod? ( >=sys-apps/kmod-14-r1 ) + lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] ) + pam? ( virtual/pam ) + python? ( ${PYTHON_DEPS} ) + qrcode? ( media-gfx/qrencode ) + selinux? ( sys-libs/libselinux ) + tcpd? ( sys-apps/tcp-wrappers ) + xattr? ( sys-apps/attr ) + abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" + +# baselayout-2.2 has /run +RDEPEND="${COMMON_DEPEND} + !app-admin/eselect-init + >=sys-apps/baselayout-2.2 + || ( + >=sys-apps/util-linux-2.22 + <sys-apps/sysvinit-2.88-r4 + ) + !sys-auth/nss-myhostname + !<sys-libs/glibc-2.10 + !sys-fs/udev" + +PDEPEND=">=sys-apps/hwids-20130717-r1[udev] + >=sys-fs/udev-init-scripts-25 + policykit? ( sys-auth/polkit ) + !vanilla? ( sys-apps/gentoo-systemd-integration )" + +# Newer linux-headers needed by ia64, bug #480218 +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils + app-text/docbook-xml-dtd:4.2 + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + dev-util/gperf + >=dev-util/intltool-0.50 + >=sys-devel/binutils-2.23.1 + >=sys-devel/gcc-4.6 + >=sys-kernel/linux-headers-${MINKV} + ia64? ( >=sys-kernel/linux-headers-3.9 ) + virtual/pkgconfig + doc? ( >=dev-util/gtk-doc-1.18 )" + +pkg_pretend() { + local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS ~DEVTMPFS ~DMIID + ~EPOLL ~FANOTIFY ~FHANDLE ~INOTIFY_USER ~IPV6 ~NET ~PROC_FS + ~SECCOMP ~SIGNALFD ~SYSFS ~TIMERFD + ~!IDE ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 + ~!GRKERNSEC_PROC" + + use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL" + use pam && CONFIG_CHECK+=" ~AUDITSYSCALL" + use xattr && CONFIG_CHECK+=" ~TMPFS_XATTR" + kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG" + use firmware-loader || CONFIG_CHECK+=" ~!FW_LOADER_USER_HELPER" + + if linux_config_exists; then + local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) + if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then + ewarn "It's recommended to set an empty value to the following kernel config option:" + ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" + fi + fi + + if [[ ${MERGE_TYPE} != binary ]]; then + if [[ $(gcc-major-version) -lt 4 + || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]] + then + eerror "systemd requires at least gcc 4.6 to build. Please switch the active" + eerror "gcc version using gcc-config." + die "systemd requires at least gcc 4.6" + fi + fi + + if [[ ${MERGE_TYPE} != buildonly ]]; then + if kernel_is -lt ${MINKV//./ }; then + ewarn "Kernel version at least ${MINKV} required" + fi + + if ! use firmware-loader && kernel_is -lt 3 8; then + ewarn "You seem to be using kernel older than 3.8. Those kernel versions" + ewarn "require systemd with USE=firmware-loader to support loading" + ewarn "firmware. Missing this flag may cause some hardware not to work." + fi + + check_extra_config + fi +} + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}"/${PN}-gentoo-patchset*/*.patch + ) + + # Bug 463376 + sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die + + autotools-utils_src_prepare +} + +multilib_src_configure() { + local myeconfargs=( + --localstatedir=/var + --with-pamlibdir=$(getpam_mod_dir) + # avoid bash-completion dep + --with-bashcompletiondir="$(get_bashcompdir)" + # make sure we get /bin:/sbin in $PATH + --enable-split-usr + # disable sysv compatibility + --with-sysvinit-path= + --with-sysvrcnd-path= + # no deps + --enable-efi + --enable-ima + # optional components/dependencies + $(use_enable acl) + $(use_enable audit) + $(use_enable cryptsetup libcryptsetup) + $(use_enable doc gtk-doc) + $(use_enable gcrypt) + $(use_enable gudev) + $(use_enable http microhttpd) + $(use_enable introspection) + $(use_enable kmod) + $(use_enable lzma xz) + $(use_enable pam) + $(use_enable policykit polkit) + $(use_enable python python-devel) + $(use python && echo PYTHON_CONFIG=/usr/bin/python-config-${EPYTHON#python}) + $(use_enable qrcode qrencode) + $(use_enable selinux) + $(use_enable tcpd tcpwrap) + $(use_enable test tests) + $(use_enable xattr) + + # not supported (avoid automagic deps in the future) + --disable-chkconfig + + # hardcode a few paths to spare some deps + QUOTAON=/usr/sbin/quotaon + QUOTACHECK=/usr/sbin/quotacheck + ) + + # Keep using the one where the rules were installed. + MY_UDEVDIR=$(get_udevdir) + + if use firmware-loader; then + myeconfargs+=( + --with-firmware-path="/lib/firmware/updates:/lib/firmware" + ) + fi + + if ! multilib_is_native_abi; then + myeconfargs+=( + ac_cv_search_cap_init= + ac_cv_header_sys_capability_h=yes + DBUS_CFLAGS=' ' + DBUS_LIBS=' ' + + --disable-acl + --disable-audit + --disable-gcrypt + --disable-gtk-doc + --disable-introspection + --disable-kmod + --disable-libcryptsetup + --disable-microhttpd + --disable-pam + --disable-polkit + --disable-qrencode + --disable-selinux + --disable-tcpwrap + --disable-tests + --disable-xattr + --disable-xz + --disable-python-devel + ) + fi + + # Work around bug 463846. + tc-export CC + + autotools-utils_src_configure +} + +multilib_src_compile() { + local mymakeopts=( + udevlibexecdir="${MY_UDEVDIR}" + ) + + if multilib_is_native_abi; then + emake "${mymakeopts[@]}" + else + # prerequisites for gudev + use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h} + + echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \ + emake "${mymakeopts[@]}" -f Makefile -f - gentoo + fi +} + +multilib_src_test() { + multilib_is_native_abi || continue + + default +} + +multilib_src_install() { + local mymakeopts=( + # automake fails with parallel libtool relinking + # https://bugs.gentoo.org/show_bug.cgi?id=491398 + -j1 + + udevlibexecdir="${MY_UDEVDIR}" + dist_udevhwdb_DATA= + DESTDIR="${D}" + ) + + if multilib_is_native_abi; then + emake "${mymakeopts[@]}" install + else + mymakeopts+=( + install-libLTLIBRARIES + install-pkgconfiglibDATA + install-includeHEADERS + # safe to call unconditionally, 'installs' empty list + install-libgudev_includeHEADERS + install-pkgincludeHEADERS + ) + + emake "${mymakeopts[@]}" + fi +} + +multilib_src_install_all() { + prune_libtool_files --modules + einstalldocs + + # we just keep sysvinit tools, so no need for the mans + rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \ + || die + rm "${D}"/usr/share/man/man1/init.1 || die + + # Disable storing coredumps in journald, bug #433457 + mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die + + # Preserve empty dirs in /etc & /var, bug #437008 + keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \ + /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd + + # Symlink /etc/sysctl.conf for easy migration. + dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf + + # Offer a default blacklist that should cover the most + # common use cases. + insinto /etc/modprobe.d + newins "${FILESDIR}"/blacklist-146 blacklist.conf +} + +migrate_locale() { + local envd_locale_def="${EROOT%/}/etc/env.d/02locale" + local envd_locale=( "${EROOT%/}"/etc/env.d/??locale ) + local locale_conf="${EROOT%/}/etc/locale.conf" + + if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then + # if locale.conf does not exist... + if [[ -e ${envd_locale} ]]; then + # ...either copy env.d/??locale if there's one + ebegin "Moving ${envd_locale} to ${locale_conf}" + mv "${envd_locale}" "${locale_conf}" + eend ${?} || FAIL=1 + else + # ...or create a dummy default + ebegin "Creating ${locale_conf}" + cat > "${locale_conf}" <<-EOF + # This file has been created by the sys-apps/systemd ebuild. + # See locale.conf(5) and localectl(1). + + # LANG=${LANG} + EOF + eend ${?} || FAIL=1 + fi + fi + + if [[ ! -L ${envd_locale} ]]; then + # now, if env.d/??locale is not a symlink (to locale.conf)... + if [[ -e ${envd_locale} ]]; then + # ...warn the user that he has duplicate locale settings + ewarn + ewarn "To ensure consistent behavior, you should replace ${envd_locale}" + ewarn "with a symlink to ${locale_conf}. Please migrate your settings" + ewarn "and create the symlink with the following command:" + ewarn "ln -s -n -f ../locale.conf ${envd_locale}" + ewarn + else + # ...or just create the symlink if there's nothing here + ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink" + ln -n -s ../locale.conf "${envd_locale_def}" + eend ${?} || FAIL=1 + fi + fi +} + +pkg_postinst() { + enewgroup systemd-journal + if use http; then + enewgroup systemd-journal-gateway + enewuser systemd-journal-gateway -1 -1 -1 systemd-journal-gateway + fi + systemd_update_catalog + + # Keep this here in case the database format changes so it gets updated + # when required. Despite that this file is owned by sys-apps/hwids. + if has_version "sys-apps/hwids[udev]"; then + udevadm hwdb --update --root="${ROOT%/}" + fi + + udev_reload || FAIL=1 + + # Bug 468876 + fcaps cap_dac_override,cap_sys_ptrace=ep usr/bin/systemd-detect-virt + + # Bug 465468, make sure locales are respect, and ensure consistency + # between OpenRC & systemd + migrate_locale + + if [[ ${FAIL} ]]; then + eerror "One of the postinst commands failed. Please check the postinst output" + eerror "for errors. You may need to clean up your system and/or try installing" + eerror "systemd again." + eerror + fi + + if [[ ! -L "${ROOT}"/etc/mtab ]]; then + ewarn "Upstream mandates the /etc/mtab file should be a symlink to /proc/mounts." + ewarn "Not having it is not supported by upstream and will cause tools like 'df'" + ewarn "and 'mount' to not work properly. Please run:" + ewarn " # ln -sf '${ROOT}proc/self/mounts' '${ROOT}etc/mtab'" + ewarn + fi + + if ! has_version sys-apps/systemd-ui; then + elog "To get additional features, a number of optional runtime dependencies may" + elog "be installed:" + elog "- sys-apps/systemd-ui: for GTK+ systemadm UI and gnome-ask-password-agent" + fi +} + +pkg_prerm() { + # If removing systemd completely, remove the catalog database. + if [[ ! ${REPLACED_BY_VERSION} ]]; then + rm -f -v "${EROOT}"/var/lib/systemd/catalog/database + fi +} diff --git a/sys-apps/systemd/systemd-215-r3.ebuild b/sys-apps/systemd/systemd-215-r3.ebuild new file mode 100644 index 00000000..a1f1efe6 --- /dev/null +++ b/sys-apps/systemd/systemd-215-r3.ebuild @@ -0,0 +1,521 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +AUTOTOOLS_PRUNE_LIBTOOL_FILES=all +PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4} ) +inherit autotools-utils bash-completion-r1 linux-info multilib \ + multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \ + user + +DESCRIPTION="System and service manager for Linux" +HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd" +SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz" + +LICENSE="GPL-2 LGPL-2.1 MIT public-domain" +SLOT="0/2" +KEYWORDS="alpha amd64 arm ~ia64 ppc ~ppc64 ~sparc x86" +IUSE="acl audit cryptsetup doc elfutils +firmware-loader gcrypt gudev http + introspection kdbus +kmod lzma pam policykit python qrcode +seccomp selinux + ssl test vanilla" + +MINKV="3.8" + +COMMON_DEPEND=">=sys-apps/util-linux-2.20:0= + sys-libs/libcap:0= + acl? ( sys-apps/acl:0= ) + audit? ( >=sys-process/audit-2:0= ) + cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= ) + elfutils? ( >=dev-libs/elfutils-0.158:0= ) + gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) + gudev? ( >=dev-libs/glib-2.34.3:2=[${MULTILIB_USEDEP}] ) + http? ( + >=net-libs/libmicrohttpd-0.9.33:0= + ssl? ( >=net-libs/gnutls-3.1.4:0= ) + ) + introspection? ( >=dev-libs/gobject-introspection-1.31.1:0= ) + kmod? ( >=sys-apps/kmod-15:0= ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] ) + pam? ( virtual/pam:= ) + python? ( ${PYTHON_DEPS} ) + qrcode? ( media-gfx/qrencode:0= ) + seccomp? ( sys-libs/libseccomp:0= ) + selinux? ( sys-libs/libselinux:0= ) + abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" + +# baselayout-2.2 has /run +RDEPEND="${COMMON_DEPEND} + !app-admin/eselect-init + >=sys-apps/baselayout-2.2 + || ( + >=sys-apps/util-linux-2.22 + <sys-apps/sysvinit-2.88-r4 + ) + !sys-auth/nss-myhostname + !<sys-libs/glibc-2.14 + !sys-fs/udev" + +# sys-apps/dbus: the daemon only (+ build-time lib dep for tests) +PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd] + >=sys-apps/hwids-20130717-r1[udev] + >=sys-fs/udev-init-scripts-25 + policykit? ( sys-auth/polkit ) + !vanilla? ( sys-apps/gentoo-systemd-integration )" + +# Newer linux-headers needed by ia64, bug #480218 +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils:0 + dev-util/gperf + >=dev-util/intltool-0.50 + >=sys-apps/coreutils-8.16 + >=sys-devel/binutils-2.23.1 + >=sys-devel/gcc-4.6 + >=sys-kernel/linux-headers-${MINKV} + ia64? ( >=sys-kernel/linux-headers-3.9 ) + virtual/pkgconfig + doc? ( >=dev-util/gtk-doc-1.18 ) + python? ( dev-python/lxml[${PYTHON_USEDEP}] ) + test? ( >=sys-apps/dbus-1.6.8-r1:0 )" + +src_prepare() { + local PATCHES=( + "${FILESDIR}/${PV}-0001-always-check-for-__BYTE_ORDER-__BIG_ENDIAN-when-chec.patch" + "${FILESDIR}/${PV}-0002-endian-explicitly-include-endian.h-wherever-we-want-.patch" + "${FILESDIR}/${PV}-0003-udev-exclude-MD-from-block-device-ownership-event-lo.patch" + ) + + # Bug 463376 + sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die + + # http://thread.gmane.org/gmane.comp.sysutils.systemd.devel/20815 + touch src/core/org.freedesktop.systemd1.policy.in.in || die + + # http://thread.gmane.org/gmane.comp.sysutils.systemd.devel/21074 + touch units/emergency.service.in || die + + autotools-utils_src_prepare +} + +pkg_pretend() { + local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS ~DEVTMPFS ~DMIID + ~EPOLL ~FANOTIFY ~FHANDLE ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS + ~SECCOMP ~SIGNALFD ~SYSFS ~TIMERFD ~TMPFS_XATTR + ~!IDE ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 + ~!GRKERNSEC_PROC" + + use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL" + kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG" + use firmware-loader || CONFIG_CHECK+=" ~!FW_LOADER_USER_HELPER" + + if linux_config_exists; then + local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) + if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then + ewarn "It's recommended to set an empty value to the following kernel config option:" + ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" + fi + fi + + if [[ ${MERGE_TYPE} != binary ]]; then + if [[ $(gcc-major-version) -lt 4 + || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]] + then + eerror "systemd requires at least gcc 4.6 to build. Please switch the active" + eerror "gcc version using gcc-config." + die "systemd requires at least gcc 4.6" + fi + fi + + if [[ ${MERGE_TYPE} != buildonly ]]; then + if kernel_is -lt ${MINKV//./ }; then + ewarn "Kernel version at least ${MINKV} required" + fi + + if ! use firmware-loader && kernel_is -lt 3 8; then + ewarn "You seem to be using kernel older than 3.8. Those kernel versions" + ewarn "require systemd with USE=firmware-loader to support loading" + ewarn "firmware. Missing this flag may cause some hardware not to work." + fi + + check_extra_config + fi +} + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + # Keep using the one where the rules were installed. + MY_UDEVDIR=$(get_udevdir) + # Fix systems broken by bug #509454. + [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev + + multilib-minimal_src_configure +} + +multilib_native_enable() { + if multilib_is_native_abi; then + echo "--enable-${1}" + else + echo "--disable-${1}" + fi +} + +multilib_src_configure() { + local myeconfargs=( + # disable -flto since it is an optimization flag + # and makes distcc less effective + cc_cv_CFLAGS__flto=no + + # Workaround for bug 516346 + --enable-dependency-tracking + + --disable-maintainer-mode + --localstatedir=/var + --with-pamlibdir=$(getpam_mod_dir) + # avoid bash-completion dep + --with-bashcompletiondir="$(get_bashcompdir)" + # make sure we get /bin:/sbin in $PATH + --enable-split-usr + # disable sysv compatibility + --with-sysvinit-path= + --with-sysvrcnd-path= + # no deps + --enable-efi + --enable-ima + + # Optional components/dependencies + $(multilib_native_use_enable acl) + $(multilib_native_use_enable audit) + $(multilib_native_use_enable cryptsetup libcryptsetup) + $(multilib_native_use_enable doc gtk-doc) + $(multilib_native_use_enable elfutils) + $(use_enable gcrypt) + $(use_enable gudev) + $(multilib_native_use_enable http microhttpd) + $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls) + $(multilib_native_use_enable introspection) + $(use_enable kdbus) + $(multilib_native_use_enable kmod) + $(use_enable lzma xz) + $(multilib_native_use_enable pam) + $(multilib_native_use_enable policykit polkit) + $(multilib_native_use_with python) + $(multilib_native_use_enable python python-devel) + $(multilib_native_use_enable qrcode qrencode) + $(multilib_native_use_enable seccomp) + $(multilib_native_use_enable selinux) + $(multilib_native_use_enable test tests) + $(multilib_native_use_enable test dbus) + + # Disable optional binaries for non-native abis + $(multilib_native_enable backlight) + $(multilib_native_enable binfmt) + $(multilib_native_enable bootchart) + $(multilib_native_enable coredump) + $(multilib_native_enable hostnamed) + $(multilib_native_enable localed) + $(multilib_native_enable logind) + $(multilib_native_enable machined) + $(multilib_native_enable networkd) + $(multilib_native_enable quotacheck) + $(multilib_native_enable randomseed) + $(multilib_native_enable readahead) + $(multilib_native_enable resolved) + $(multilib_native_enable rfkill) + $(multilib_native_enable sysusers) + $(multilib_native_enable timedated) + $(multilib_native_enable timesyncd) + $(multilib_native_enable tmpfiles) + $(multilib_native_enable vconsole) + + # not supported (avoid automagic deps in the future) + --disable-apparmor + --disable-chkconfig + + # hardcode a few paths to spare some deps + QUOTAON=/usr/sbin/quotaon + QUOTACHECK=/usr/sbin/quotacheck + + # dbus paths + --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d" + --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services" + --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services" + --with-dbusinterfacedir="${EPREFIX}/usr/share/dbus-1/interfaces" + + --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" + ) + + if use firmware-loader; then + myeconfargs+=( + --with-firmware-path="/lib/firmware/updates:/lib/firmware" + ) + fi + + # Added for testing; this is UNSUPPORTED by the Gentoo systemd team! + if [[ -n ${ROOTPREFIX+set} ]]; then + myeconfargs+=( + --with-rootprefix="${ROOTPREFIX}" + --with-rootlibdir="${ROOTPREFIX}/$(get_libdir)" + ) + fi + + if ! multilib_is_native_abi; then + myeconfargs+=( + ac_cv_search_cap_init= + ac_cv_header_sys_capability_h=yes + ) + fi + + # Work around bug 463846. + tc-export CC + + autotools-utils_src_configure +} + +multilib_src_compile() { + local mymakeopts=( + udevlibexecdir="${MY_UDEVDIR}" + ) + + if multilib_is_native_abi; then + emake "${mymakeopts[@]}" + else + # prerequisites for gudev + use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h} + + echo 'gentoo: $(BUILT_SOURCES)' | \ + emake "${mymakeopts[@]}" -f Makefile -f - gentoo + echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \ + emake "${mymakeopts[@]}" -f Makefile -f - gentoo + fi +} + +multilib_src_test() { + multilib_is_native_abi || continue + + default +} + +multilib_src_install() { + local mymakeopts=( + # automake fails with parallel libtool relinking + # https://bugs.gentoo.org/show_bug.cgi?id=491398 + -j1 + + udevlibexecdir="${MY_UDEVDIR}" + dist_udevhwdb_DATA= + DESTDIR="${D}" + ) + + if multilib_is_native_abi; then + emake "${mymakeopts[@]}" install + else + mymakeopts+=( + install-libLTLIBRARIES + install-pkgconfiglibDATA + install-includeHEADERS + # safe to call unconditionally, 'installs' empty list + install-libgudev_includeHEADERS + install-pkgincludeHEADERS + ) + + emake "${mymakeopts[@]}" + fi + + # install compat pkg-config files + local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc ) + emake "${mymakeopts[@]}" install-pkgconfiglibDATA \ + pkgconfiglib_DATA="${pcfiles[*]}" + + # Create symlinks for old libs + dosym libsystemd.so "/usr/$(get_libdir)/libsystemd-daemon.so" + dosym libsystemd.so "/usr/$(get_libdir)/libsystemd-id128.so" + dosym libsystemd.so "/usr/$(get_libdir)/libsystemd-journal.so" + dosym libsystemd.so "/usr/$(get_libdir)/libsystemd-login.so" + + # Kogaion: create systemd-run symlink in /bin. lvm2 lvmetad has a + # udev rule that expects systemd-run to be in /bin. And lvmetad is + # used by Anaconda. + dosym "../usr/bin/systemd-run" "/bin/systemd-run" +} + +multilib_src_install_all() { + prune_libtool_files --modules + einstalldocs + + # we just keep sysvinit tools, so no need for the mans + rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \ + || die + rm "${D}"/usr/share/man/man1/init.1 || die + + # Disable storing coredumps in journald, bug #433457 + mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die + + # Preserve empty dirs in /etc & /var, bug #437008 + keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \ + /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd + + # Symlink /etc/sysctl.conf for easy migration. + dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf + + # If we install these symlinks, there is no way for the sysadmin to remove them + # permanently. + rm -f "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service + rm -f "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service + rm -f "${D}"/etc/systemd/system/multi-user.target.wants/systemd-timesyncd.service + rm -rf "${D}"/etc/systemd/system/network-online.target.wants + + # Offer a default blacklist that should cover the most + # common use cases. + insinto /etc/modprobe.d + newins "${FILESDIR}"/blacklist-146 blacklist.conf +} + +migrate_locale() { + local envd_locale_def="${EROOT%/}/etc/env.d/02locale" + local envd_locale=( "${EROOT%/}"/etc/env.d/??locale ) + local locale_conf="${EROOT%/}/etc/locale.conf" + + if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then + # If locale.conf does not exist... + if [[ -e ${envd_locale} ]]; then + # ...either copy env.d/??locale if there's one + ebegin "Moving ${envd_locale} to ${locale_conf}" + mv "${envd_locale}" "${locale_conf}" + eend ${?} || FAIL=1 + else + # ...or create a dummy default + ebegin "Creating ${locale_conf}" + cat > "${locale_conf}" <<-EOF + # This file has been created by the sys-apps/systemd ebuild. + # See locale.conf(5) and localectl(1). + + # LANG=${LANG} + EOF + eend ${?} || FAIL=1 + fi + fi + + if [[ ! -L ${envd_locale} ]]; then + # now, if env.d/??locale is not a symlink (to locale.conf)... + if [[ -e ${envd_locale} ]]; then + # ...warn the user that he has duplicate locale settings + ewarn + ewarn "To ensure consistent behavior, you should replace ${envd_locale}" + ewarn "with a symlink to ${locale_conf}. Please migrate your settings" + ewarn "and create the symlink with the following command:" + ewarn "ln -s -n -f ../locale.conf ${envd_locale}" + ewarn + else + # ...or just create the symlink if there's nothing here + ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink" + ln -n -s ../locale.conf "${envd_locale_def}" + eend ${?} || FAIL=1 + fi + fi +} + +migrate_net_name_slot() { + # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null, + # do the same for 80-net-setup-link.rules to keep the old behavior + local net_move=no + local net_name_slot_sym=no + local net_rules_path="${EROOT%/}"/etc/udev/rules.d + local net_name_slot="${net_rules_path}"/80-net-name-slot.rules + local net_setup_link="${net_rules_path}"/80-net-setup-link.rules + if [[ -e ${net_setup_link} ]]; then + net_move=no + elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then + net_move=yes + elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then + net_move=yes + net_name_slot_sym=yes + fi + if [[ ${net_move} == yes ]]; then + ebegin "Copying ${net_name_slot} to ${net_setup_link}" + + if [[ ${net_name_slot_sym} == yes ]]; then + ln -nfs /dev/null "${net_setup_link}" + else + cp "${net_name_slot}" "${net_setup_link}" + fi + eend $? || FAIL=1 + fi +} + +pkg_postinst() { + newusergroup() { + enewgroup "$1" + enewuser "$1" -1 -1 -1 "$1" + } + + enewgroup input + enewgroup systemd-journal + newusergroup systemd-bus-proxy + newusergroup systemd-network + newusergroup systemd-resolve + newusergroup systemd-timesync + use http && newusergroup systemd-journal-gateway + + systemd_update_catalog + + # Keep this here in case the database format changes so it gets updated + # when required. Despite that this file is owned by sys-apps/hwids. + if has_version "sys-apps/hwids[udev]"; then + udevadm hwdb --update --root="${ROOT%/}" + fi + + udev_reload || FAIL=1 + + # Bug 465468, make sure locales are respect, and ensure consistency + # between OpenRC & systemd + migrate_locale + + # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules + migrate_net_name_slot + + if [[ ${FAIL} ]]; then + eerror "One of the postinst commands failed. Please check the postinst output" + eerror "for errors. You may need to clean up your system and/or try installing" + eerror "systemd again." + eerror + fi + + if [[ ! -L "${ROOT}"/etc/mtab ]]; then + ewarn "Upstream mandates the /etc/mtab file should be a symlink to /proc/mounts." + ewarn "Not having it is not supported by upstream and will cause tools like 'df'" + ewarn "and 'mount' to not work properly. Please run:" + ewarn " # ln -sf '${ROOT}proc/self/mounts' '${ROOT}etc/mtab'" + ewarn + fi + + if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then + ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable" + ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf" + ewarn "to /run/systemd/resolve/resolv.conf" + ewarn + fi + + if ! has_version sys-apps/systemd-ui; then + elog "To get additional features, a number of optional runtime dependencies may" + elog "be installed:" + elog "- sys-apps/systemd-ui: for GTK+ systemadm UI and gnome-ask-password-agent" + fi + + if has_version sys-apps/openrc && + ! has_version sys-fs/udev-init-scripts; then + elog "If you plan to boot using OpenRC and udev or eudev, you" + elog "need to install the udev-init-scripts package." + fi +} + +pkg_prerm() { + # If removing systemd completely, remove the catalog database. + if [[ ! ${REPLACED_BY_VERSION} ]]; then + rm -f -v "${EROOT}"/var/lib/systemd/catalog/database + fi +} diff --git a/sys-apps/systemd/systemd-216-r3.ebuild b/sys-apps/systemd/systemd-216-r3.ebuild new file mode 100644 index 00000000..143febdc --- /dev/null +++ b/sys-apps/systemd/systemd-216-r3.ebuild @@ -0,0 +1,526 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/systemd/systemd-216-r3.ebuild,v 1.9 2015/04/27 12:35:00 ago Exp $ + +EAPI=5 + +AUTOTOOLS_PRUNE_LIBTOOL_FILES=all +PYTHON_COMPAT=( python{2_7,3_3,3_4} ) +inherit autotools-utils bash-completion-r1 linux-info multilib \ + multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \ + user + +DESCRIPTION="System and service manager for Linux" +HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd" +SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz" + +LICENSE="GPL-2 LGPL-2.1 MIT public-domain" +SLOT="0/2" +KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86" +IUSE="acl apparmor audit cryptsetup curl doc elfutils +firmware-loader gcrypt gudev http + idn introspection kdbus +kmod lz4 lzma pam policykit python qrcode +seccomp + selinux ssl sysv-utils test vanilla" + +MINKV="3.8" + +COMMON_DEPEND=">=sys-apps/util-linux-2.20:0= + sys-libs/libcap:0= + !<sys-libs/glibc-2.16 + acl? ( sys-apps/acl:0= ) + apparmor? ( sys-libs/libapparmor:0= ) + audit? ( >=sys-process/audit-2:0= ) + cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= ) + curl? ( net-misc/curl:0= ) + elfutils? ( >=dev-libs/elfutils-0.158:0= ) + gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) + gudev? ( >=dev-libs/glib-2.34.3:2=[${MULTILIB_USEDEP}] ) + http? ( + >=net-libs/libmicrohttpd-0.9.33:0= + ssl? ( >=net-libs/gnutls-3.1.4:0= ) + ) + idn? ( net-dns/libidn:0= ) + introspection? ( >=dev-libs/gobject-introspection-1.31.1:0= ) + kmod? ( >=sys-apps/kmod-15:0= ) + lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] ) + pam? ( virtual/pam:= ) + python? ( ${PYTHON_DEPS} ) + qrcode? ( media-gfx/qrencode:0= ) + seccomp? ( sys-libs/libseccomp:0= ) + selinux? ( sys-libs/libselinux:0= ) + sysv-utils? ( + !sys-apps/systemd-sysv-utils + !sys-apps/sysvinit + >=sys-apps/util-linux-2.24.1-r2 ) + abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" + +# baselayout-2.2 has /run +RDEPEND="${COMMON_DEPEND} + !app-admin/eselect-init + >=sys-apps/baselayout-2.2 + || ( + >=sys-apps/util-linux-2.22 + <sys-apps/sysvinit-2.88-r4 + ) + !sys-auth/nss-myhostname + !sys-fs/udev" + +# sys-apps/dbus: the daemon only (+ build-time lib dep for tests) +PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd] + >=sys-apps/hwids-20130717-r1[udev] + >=sys-fs/udev-init-scripts-25 + policykit? ( sys-auth/polkit ) + !vanilla? ( sys-apps/gentoo-systemd-integration )" + +# Newer linux-headers needed by ia64, bug #480218 +DEPEND="${COMMON_DEPEND} + app-arch/xz-utils:0 + dev-util/gperf + >=dev-util/intltool-0.50 + >=sys-apps/coreutils-8.16 + >=sys-devel/binutils-2.23.1 + >=sys-devel/gcc-4.6 + >=sys-kernel/linux-headers-${MINKV} + ia64? ( >=sys-kernel/linux-headers-3.9 ) + virtual/pkgconfig + doc? ( >=dev-util/gtk-doc-1.18 ) + python? ( dev-python/lxml[${PYTHON_USEDEP}] ) + test? ( >=sys-apps/dbus-1.6.8-r1:0 )" + +PATCHES=( + "${FILESDIR}/216-lz4-build.patch" + "${FILESDIR}/216-tmpfiles-setup-dev.patch" +) + +src_prepare() { + # Bug 463376 + sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die + + autotools-utils_src_prepare +} + +pkg_pretend() { + local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS ~DEVTMPFS ~DMIID + ~EPOLL ~FANOTIFY ~FHANDLE ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS + ~SECCOMP ~SIGNALFD ~SYSFS ~TIMERFD ~TMPFS_XATTR + ~!IDE ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 + ~!GRKERNSEC_PROC" + + use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL" + kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG" + use firmware-loader || CONFIG_CHECK+=" ~!FW_LOADER_USER_HELPER" + + if linux_config_exists; then + local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) + if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then + ewarn "It's recommended to set an empty value to the following kernel config option:" + ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" + fi + fi + + if [[ ${MERGE_TYPE} != binary ]]; then + if [[ $(gcc-major-version) -lt 4 + || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]] + then + eerror "systemd requires at least gcc 4.6 to build. Please switch the active" + eerror "gcc version using gcc-config." + die "systemd requires at least gcc 4.6" + fi + fi + + if [[ ${MERGE_TYPE} != buildonly ]]; then + if kernel_is -lt ${MINKV//./ }; then + ewarn "Kernel version at least ${MINKV} required" + fi + + if ! use firmware-loader && kernel_is -lt 3 8; then + ewarn "You seem to be using kernel older than 3.8. Those kernel versions" + ewarn "require systemd with USE=firmware-loader to support loading" + ewarn "firmware. Missing this flag may cause some hardware not to work." + fi + + check_extra_config + fi +} + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + # Keep using the one where the rules were installed. + MY_UDEVDIR=$(get_udevdir) + # Fix systems broken by bug #509454. + [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev + + multilib-minimal_src_configure +} + +multilib_native_enable() { + if multilib_is_native_abi; then + echo "--enable-${1}" + else + echo "--disable-${1}" + fi +} + +multilib_src_configure() { + local myeconfargs=( + # disable -flto since it is an optimization flag + # and makes distcc less effective + cc_cv_CFLAGS__flto=no + + # Workaround for bug 516346 + --enable-dependency-tracking + + --disable-maintainer-mode + --localstatedir=/var + --with-pamlibdir=$(getpam_mod_dir) + # avoid bash-completion dep + --with-bashcompletiondir="$(get_bashcompdir)" + # make sure we get /bin:/sbin in $PATH + --enable-split-usr + # For testing. + --with-rootprefix="${ROOTPREFIX-/usr}" + --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)" + # disable sysv compatibility + --with-sysvinit-path= + --with-sysvrcnd-path= + # no deps + --enable-efi + --enable-ima + + # Optional components/dependencies + $(multilib_native_use_enable acl) + $(multilib_native_use_enable apparmor) + $(multilib_native_use_enable audit) + $(multilib_native_use_enable cryptsetup libcryptsetup) + $(multilib_native_use_enable curl libcurl) + $(multilib_native_use_enable doc gtk-doc) + $(multilib_native_use_enable elfutils) + $(use_enable gcrypt) + $(use_enable gudev) + $(multilib_native_use_enable http microhttpd) + $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls) + $(multilib_native_use_enable idn libidn) + $(multilib_native_use_enable introspection) + $(use_enable kdbus) + $(multilib_native_use_enable kmod) + $(use_enable lz4) + $(use_enable lzma xz) + $(multilib_native_use_enable pam) + $(multilib_native_use_enable policykit polkit) + $(multilib_native_use_with python) + $(multilib_native_use_enable python python-devel) + $(multilib_native_use_enable qrcode qrencode) + $(multilib_native_use_enable seccomp) + $(multilib_native_use_enable selinux) + $(multilib_native_use_enable test tests) + $(multilib_native_use_enable test dbus) + + # Disable optional binaries for non-native abis + $(multilib_native_enable backlight) + $(multilib_native_enable binfmt) + $(multilib_native_enable bootchart) + $(multilib_native_enable coredump) + $(multilib_native_enable firstboot) + $(multilib_native_enable hostnamed) + $(multilib_native_enable localed) + $(multilib_native_enable logind) + $(multilib_native_enable machined) + $(multilib_native_enable networkd) + $(multilib_native_enable quotacheck) + $(multilib_native_enable randomseed) + $(multilib_native_enable readahead) + $(multilib_native_enable resolved) + $(multilib_native_enable rfkill) + $(multilib_native_enable sysusers) + $(multilib_native_enable timedated) + $(multilib_native_enable timesyncd) + $(multilib_native_enable tmpfiles) + $(multilib_native_enable vconsole) + + # not supported (avoid automagic deps in the future) + --disable-chkconfig + + # hardcode a few paths to spare some deps + QUOTAON=/usr/sbin/quotaon + QUOTACHECK=/usr/sbin/quotacheck + + # dbus paths + --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d" + --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services" + --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services" + --with-dbusinterfacedir="${EPREFIX}/usr/share/dbus-1/interfaces" + + --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" + ) + + if use firmware-loader; then + myeconfargs+=( + --with-firmware-path="/lib/firmware/updates:/lib/firmware" + ) + fi + + if ! multilib_is_native_abi; then + myeconfargs+=( + ac_cv_search_cap_init= + ac_cv_header_sys_capability_h=yes + ) + fi + + # Work around bug 463846. + tc-export CC + + autotools-utils_src_configure +} + +multilib_src_compile() { + local mymakeopts=( + udevlibexecdir="${MY_UDEVDIR}" + ) + + if multilib_is_native_abi; then + emake "${mymakeopts[@]}" + else + # prerequisites for gudev + use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h} + + echo 'gentoo: $(BUILT_SOURCES)' | \ + emake "${mymakeopts[@]}" -f Makefile -f - gentoo + echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \ + emake "${mymakeopts[@]}" -f Makefile -f - gentoo + fi +} + +multilib_src_test() { + multilib_is_native_abi || continue + + default +} + +multilib_src_install() { + local mymakeopts=( + # automake fails with parallel libtool relinking + # https://bugs.gentoo.org/show_bug.cgi?id=491398 + -j1 + + udevlibexecdir="${MY_UDEVDIR}" + dist_udevhwdb_DATA= + DESTDIR="${D}" + ) + + if multilib_is_native_abi; then + emake "${mymakeopts[@]}" install + else + mymakeopts+=( + install-libLTLIBRARIES + install-pkgconfiglibDATA + install-includeHEADERS + # safe to call unconditionally, 'installs' empty list + install-libgudev_includeHEADERS + install-pkgincludeHEADERS + ) + + emake "${mymakeopts[@]}" + fi + + # install compat pkg-config files + local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc ) + emake "${mymakeopts[@]}" install-pkgconfiglibDATA \ + pkgconfiglib_DATA="${pcfiles[*]}" + + # Kogaion: create systemd-run symlink in /bin. lvm2 lvmetad has a + # udev rule that expects systemd-run to be in /bin. And lvmetad is + # used by Anaconda. + dosym "../usr/bin/systemd-run" "/bin/systemd-run" +} + +multilib_src_install_all() { + prune_libtool_files --modules + einstalldocs + + if use sysv-utils; then + for app in halt poweroff reboot runlevel shutdown telinit; do + dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app} + done + dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init + else + # we just keep sysvinit tools, so no need for the mans + rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \ + || die + rm "${D}"/usr/share/man/man1/init.1 || die + fi + + # Disable storing coredumps in journald, bug #433457 + mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die + + # Preserve empty dirs in /etc & /var, bug #437008 + keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \ + /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \ + /var/log/journal/remote + + # Symlink /etc/sysctl.conf for easy migration. + dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf + + # If we install these symlinks, there is no way for the sysadmin to remove them + # permanently. + rm -f "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service + rm -f "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service + rm -f "${D}"/etc/systemd/system/multi-user.target.wants/systemd-timesyncd.service + rm -rf "${D}"/etc/systemd/system/network-online.target.wants + + # Offer a default blacklist that should cover the most + # common use cases. + insinto /etc/modprobe.d + newins "${FILESDIR}"/blacklist-146 blacklist.conf +} + +migrate_locale() { + local envd_locale_def="${EROOT%/}/etc/env.d/02locale" + local envd_locale=( "${EROOT%/}"/etc/env.d/??locale ) + local locale_conf="${EROOT%/}/etc/locale.conf" + + if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then + # If locale.conf does not exist... + if [[ -e ${envd_locale} ]]; then + # ...either copy env.d/??locale if there's one + ebegin "Moving ${envd_locale} to ${locale_conf}" + mv "${envd_locale}" "${locale_conf}" + eend ${?} || FAIL=1 + else + # ...or create a dummy default + ebegin "Creating ${locale_conf}" + cat > "${locale_conf}" <<-EOF + # This file has been created by the sys-apps/systemd ebuild. + # See locale.conf(5) and localectl(1). + + # LANG=${LANG} + EOF + eend ${?} || FAIL=1 + fi + fi + + if [[ ! -L ${envd_locale} ]]; then + # now, if env.d/??locale is not a symlink (to locale.conf)... + if [[ -e ${envd_locale} ]]; then + # ...warn the user that he has duplicate locale settings + ewarn + ewarn "To ensure consistent behavior, you should replace ${envd_locale}" + ewarn "with a symlink to ${locale_conf}. Please migrate your settings" + ewarn "and create the symlink with the following command:" + ewarn "ln -s -n -f ../locale.conf ${envd_locale}" + ewarn + else + # ...or just create the symlink if there's nothing here + ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink" + ln -n -s ../locale.conf "${envd_locale_def}" + eend ${?} || FAIL=1 + fi + fi +} + +migrate_net_name_slot() { + # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null, + # do the same for 80-net-setup-link.rules to keep the old behavior + local net_move=no + local net_name_slot_sym=no + local net_rules_path="${EROOT%/}"/etc/udev/rules.d + local net_name_slot="${net_rules_path}"/80-net-name-slot.rules + local net_setup_link="${net_rules_path}"/80-net-setup-link.rules + if [[ -e ${net_setup_link} ]]; then + net_move=no + elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then + net_move=yes + elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then + net_move=yes + net_name_slot_sym=yes + fi + if [[ ${net_move} == yes ]]; then + ebegin "Copying ${net_name_slot} to ${net_setup_link}" + + if [[ ${net_name_slot_sym} == yes ]]; then + ln -nfs /dev/null "${net_setup_link}" + else + cp "${net_name_slot}" "${net_setup_link}" + fi + eend $? || FAIL=1 + fi +} + +pkg_postinst() { + newusergroup() { + enewgroup "$1" + enewuser "$1" -1 -1 -1 "$1" + } + + enewgroup input + enewgroup systemd-journal + newusergroup systemd-bus-proxy + newusergroup systemd-journal-gateway + newusergroup systemd-journal-remote + newusergroup systemd-journal-upload + newusergroup systemd-network + newusergroup systemd-resolve + newusergroup systemd-timesync + use http && newusergroup systemd-journal-gateway + + systemd_update_catalog + + # Keep this here in case the database format changes so it gets updated + # when required. Despite that this file is owned by sys-apps/hwids. + if has_version "sys-apps/hwids[udev]"; then + udevadm hwdb --update --root="${ROOT%/}" + fi + + udev_reload || FAIL=1 + + # Bug 465468, make sure locales are respect, and ensure consistency + # between OpenRC & systemd + migrate_locale + + # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules + migrate_net_name_slot + + if [[ ${FAIL} ]]; then + eerror "One of the postinst commands failed. Please check the postinst output" + eerror "for errors. You may need to clean up your system and/or try installing" + eerror "systemd again." + eerror + fi + + if [[ ! -L "${ROOT}"/etc/mtab ]]; then + ewarn "Upstream mandates the /etc/mtab file should be a symlink to /proc/mounts." + ewarn "Not having it is not supported by upstream and will cause tools like 'df'" + ewarn "and 'mount' to not work properly. Please run:" + ewarn " # ln -sf '${ROOT}proc/self/mounts' '${ROOT}etc/mtab'" + ewarn + fi + + if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then + ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable" + ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf" + ewarn "to /run/systemd/resolve/resolv.conf" + ewarn + fi + + if ! has_version sys-apps/systemd-ui; then + elog "To get additional features, a number of optional runtime dependencies may" + elog "be installed:" + elog "- sys-apps/systemd-ui: for GTK+ systemadm UI and gnome-ask-password-agent" + fi + + if has_version sys-apps/openrc && + ! has_version sys-fs/udev-init-scripts; then + elog "If you plan to boot using OpenRC and udev or eudev, you" + elog "need to install the udev-init-scripts package." + fi +} + +pkg_prerm() { + # If removing systemd completely, remove the catalog database. + if [[ ! ${REPLACED_BY_VERSION} ]]; then + rm -f -v "${EROOT}"/var/lib/systemd/catalog/database + fi +} diff --git a/sys-kernel/kogaion-sources/Manifest b/sys-kernel/kogaion-sources/Manifest index d5300b5c..5f1a2e61 100644 --- a/sys-kernel/kogaion-sources/Manifest +++ b/sys-kernel/kogaion-sources/Manifest @@ -3,3 +3,4 @@ DIST linux-3.14.10+kogaion.tar.xz 80986232 SHA256 d3fc515f4a3847a3a3342111c0ed26 DIST linux-3.14.15+kogaion.tar.xz 74388480 SHA256 c528102ea9a621f5a319289068a5ba4603182ff442a0e16ffbd619a6f3d9c808 SHA512 9a32fa01a89f9eef05f8947e5b6c0abdec46bd164b8625ea8f2785b26906c5786ea4521975e3fa0043d0f35284207dbc5c9c211a3e9f4c75eb7ca8522768b1a3 WHIRLPOOL 857a1396168b6df6fbffd93a9a70d9772bbda0062c2704cf6ceacf48878c9a91a97c5ce30ba7b793765ec84db7dc3b1e47d7b092da81513374208caa8a756449 DIST linux-3.14.25+kogaion.tar.xz 81157888 SHA256 21274d45038d2d0d740131ea33451c731a25f16ea6545d642d6b442a22ae7f03 SHA512 db1f40c46a4d0f134ff4d57d31d0bb91e54349db8cc42efa8b2f864264741efaf5c885be936f1f171d4662c74ce4aea159b4cc2a99d9a2f3ecb799994e0f74cf WHIRLPOOL 7ce418bbf4f7997a330e96cdbc6d5366b7eb0b94a7925c556bbf2be406daf9ce2a79afc3ceaad44f3d50f09e04284835c54e05dacb7f2150d9a149534c717a9c DIST linux-3.14.30+kogaion.tar.xz 81183748 SHA256 fa1ec3d87065345a7cf6f8d339df4e277c8c735a2ed4fc5eb2550f05a135e7f1 SHA512 50d71b4387485d778aafbe50df19888d68f1b3a37ffe4be1bcf76ff93f51a505871590ef46e8b98cbaec9911e72318fe67d4f368b7f4755887845f1695cf45d6 WHIRLPOOL ea46bfb373279998f837603e59c6eba0a4716b79b9666b03ef9fa03a31d856d2e6bb5cae24fc2959ee834e20aeca105a3c4e8b0cd3f1bad70f5c122c015e8de6 +DIST linux-3.14.40+kogaion.tar.xz 81204428 SHA256 36223e1af2d585efc21415660fa475286a3d578c5197eba48c364e7ac424eb6f SHA512 bde4132b02ca28e3bdaddf0b132913091a43183311fc0b114e3d44926d0bb022187fb0fc9feaa4eca18d9f15477553208f410a9ee7aeac2c0e725902b68ab110 WHIRLPOOL 9fcd630ef87e6cf131db5565558c58af6f6e4941233b0a86e626a84a2d8bb226c94c92f6a209403bb3fc4b34363cbeeea7f145c06c5d037134f05c4d95b42e5b diff --git a/sys-kernel/kogaion-sources/kogaion-sources-3.14.40.ebuild b/sys-kernel/kogaion-sources/kogaion-sources-3.14.40.ebuild new file mode 100644 index 00000000..69db2638 --- /dev/null +++ b/sys-kernel/kogaion-sources/kogaion-sources-3.14.40.ebuild @@ -0,0 +1,23 @@ +# Copyright 2004-2013 Sabayon Linux +# Copyright 2004-2014 Kogaion, Argent and ArgOS Linux +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +K_ROGKERNEL_NAME="kogaion" +K_ROGKERNEL_URI_CONFIG="yes" +K_ROGKERNEL_SELF_TARBALL_NAME="kogaion" +K_ONLY_SOURCES="1" +K_ROGKERNEL_FORCE_SUBLEVEL="0" +K_KERNEL_NEW_VERSIONING="1" + +inherit kogaion-kernel + +KEYWORDS="~amd64 ~arm ~x86" +DESCRIPTION="Official Kogaion Linux Standard kernel sources" +RESTRICT="mirror" +IUSE="sources_standalone" + +DEPEND="${DEPEND} + sources_standalone? ( !=sys-kernel/linux-kogaion-${PVR} ) + !sources_standalone? ( =sys-kernel/linux-kogaion-${PVR} )" diff --git a/sys-kernel/linux-kogaion/Manifest b/sys-kernel/linux-kogaion/Manifest index 8e3f15aa..8c7283d1 100644 --- a/sys-kernel/linux-kogaion/Manifest +++ b/sys-kernel/linux-kogaion/Manifest @@ -3,3 +3,4 @@ DIST linux-3.14.10+kogaion.tar.xz 80986232 SHA256 d3fc515f4a3847a3a3342111c0ed26 DIST linux-3.14.15+kogaion.tar.xz 80986180 SHA256 ca267e1803602b2f3936179d4037b270cc327e450a2991d13c546a0e280f45d6 SHA512 8362a643a4864c419d847764e8b29c4268b608bae4e5f4349186a34be595f71de7461ceb0683415d12b1a521fb82271d281a11b7b19bcc28b6375bdc7937c4ab WHIRLPOOL 583923aa5206cc8a2c03dc64f020c5933678b16db1e4942d6880586dac29d4ac19763fcbf8a655817db23a6bcb61657ba467e025e1aa815b29efdb0d682d1143 DIST linux-3.14.25+kogaion.tar.xz 81157888 SHA256 21274d45038d2d0d740131ea33451c731a25f16ea6545d642d6b442a22ae7f03 SHA512 db1f40c46a4d0f134ff4d57d31d0bb91e54349db8cc42efa8b2f864264741efaf5c885be936f1f171d4662c74ce4aea159b4cc2a99d9a2f3ecb799994e0f74cf WHIRLPOOL 7ce418bbf4f7997a330e96cdbc6d5366b7eb0b94a7925c556bbf2be406daf9ce2a79afc3ceaad44f3d50f09e04284835c54e05dacb7f2150d9a149534c717a9c DIST linux-3.14.30+kogaion.tar.xz 81183748 SHA256 fa1ec3d87065345a7cf6f8d339df4e277c8c735a2ed4fc5eb2550f05a135e7f1 SHA512 50d71b4387485d778aafbe50df19888d68f1b3a37ffe4be1bcf76ff93f51a505871590ef46e8b98cbaec9911e72318fe67d4f368b7f4755887845f1695cf45d6 WHIRLPOOL ea46bfb373279998f837603e59c6eba0a4716b79b9666b03ef9fa03a31d856d2e6bb5cae24fc2959ee834e20aeca105a3c4e8b0cd3f1bad70f5c122c015e8de6 +DIST linux-3.14.40+kogaion.tar.xz 81204428 SHA256 36223e1af2d585efc21415660fa475286a3d578c5197eba48c364e7ac424eb6f SHA512 bde4132b02ca28e3bdaddf0b132913091a43183311fc0b114e3d44926d0bb022187fb0fc9feaa4eca18d9f15477553208f410a9ee7aeac2c0e725902b68ab110 WHIRLPOOL 9fcd630ef87e6cf131db5565558c58af6f6e4941233b0a86e626a84a2d8bb226c94c92f6a209403bb3fc4b34363cbeeea7f145c06c5d037134f05c4d95b42e5b diff --git a/sys-kernel/linux-kogaion/linux-kogaion-3.14.40.ebuild b/sys-kernel/linux-kogaion/linux-kogaion-3.14.40.ebuild new file mode 100644 index 00000000..a8ff21b3 --- /dev/null +++ b/sys-kernel/linux-kogaion/linux-kogaion-3.14.40.ebuild @@ -0,0 +1,30 @@ +# Copyright 2004-2013 Sabayon Linux +# Copyright 2015 Kogaion +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit versionator + +K_ROGKERNEL_SELF_TARBALL_NAME="kogaion" +K_REQUIRED_LINUX_FIRMWARE_VER="20150320" +K_ROGKERNEL_FORCE_SUBLEVEL="0" +K_ROGKERNEL_PATCH_UPSTREAM_TARBALL="0" + +_ver="$(get_version_component_range 1-2)" +if use arm; then + K_KERNEL_IMAGE_NAME="uImage dtbs" +elif [ "${_ver}" = "3.9" ]; then + K_ROGKERNEL_ZFS="1" +fi +K_KERNEL_NEW_VERSIONING="1" + +K_MKIMAGE_RAMDISK_ADDRESS="0x81000000" +K_MKIMAGE_RAMDISK_ENTRYPOINT="0x00000000" +K_MKIMAGE_KERNEL_ADDRESS="0x80008000" + +inherit kogaion-kernel + +KEYWORDS="~amd64 ~x86" +DESCRIPTION="Official Kogaion Linux Standard kernel image" +RESTRICT="mirror" diff --git a/www-apps/gitweb/Manifest b/www-apps/gitweb/Manifest index 26f21d92..ba481d02 100644 --- a/www-apps/gitweb/Manifest +++ b/www-apps/gitweb/Manifest @@ -1,2 +1,5 @@ +DIST git-2.1.3.tar.xz 3542704 SHA256 fe1b06aefa73e8d86cbd352523fc0950b8904ae2ec47085b22b7880f45de6f57 SHA512 8a8e4c0a580fb7647f8689ce126c3d97dc7b2c2f8c72087b7fef2b876590f0cfb8298ba756298ab1dfbb2350d17328c2adef11bd72049f757593f05f18d9fac3 WHIRLPOOL 9314a3820598e3ae949d1a0d61ffb2b46f3e6b86bf8483f90a0bdd472e532f5e612d68cd9822ead51a49a8d99fb3e5b9981a7d4130e07f279e5a32db4fc0d673 +DIST git-2.2.1.tar.xz 3590808 SHA256 09422dc9a0bdddf6bdd5b8634c71e1ed3125256c47424e6a2687701e764ef450 SHA512 66bccfa617d2c8e2e61e5aac9b8daef9d4dc151b85906af252cadef3306ecf792ad6d7869deb149f0d04f6e7c3e9f71119bfeece5690e61782fb357e5384027b WHIRLPOOL f288d0227f3ad3045fd7dcc7a7fa6e68cb29c3a4d363d6648aa4f09aa5742a4496c67d63d0ad120a1f8f9420b9ae30930b8ffb3229f176cf429f8b8c8a1d06e6 DIST git-2.2.2.tar.xz 3592264 SHA256 aa6d2efcc0c7bb9b9edc6d56d90921706b833972f1d2abe70f71be7838f22d05 SHA512 e3ca6f40de04ed940f521fff4c7e92446e40ad1627acc5b4c090ebf114dcf279d4b1f3efe1189ffa43192fce412165621fc12ea90e2f7d02a6a9ccda655dc69b WHIRLPOOL 9e20def83bbb9b11cb5982fc5f19b09767657ff80f02a237dff6ddaddd3209b4cfb9288bec1b6dc80c6a6db1869cfcaa90e2374279012fc8215771c1a58a1fc2 DIST git-2.3.0.tar.xz 3608648 SHA256 94b23a14d66df536cfe7de37551f55acf908f8bddf30a0f5325a255bb57b0aca SHA512 4be85d3ba3ffac6c55cce648ab6c0a6fe89164e9657480aeee0def79289dbcba486722756b1729d0cedda6012cd582b88129d483ce916bfe06cde5a423f05bc7 WHIRLPOOL d08762cf37536a347aabb2916dce9d482313c41a180b5c440481d9574e9a6c482eb18e0055410171478010e647ae353d70f7113fa07fd8d74bb77909e327ea75 +DIST git-2.4.0.tar.xz 3681516 SHA256 b33438dd94659958a74850aacae4a2b3a626baec36d7f29c266130b08045bb24 SHA512 0114c5d0dbfeed46e0ba1c8c0da463c52cae6954238547502f44d9050af0d921906beea96ff2c5f56a7c822200d9daa0f1d040f883c701b88a23ec81ac777138 WHIRLPOOL 1f4667b295e541d4f035de9e415636f317f590e104119a1b212cb321f25120df31e45ba88470ee883d1ea9a0033f2b307981c9d9e5807919475dbc5f81b6b22e diff --git a/www-apps/gitweb/gitweb-2.4.0.ebuild b/www-apps/gitweb/gitweb-2.4.0.ebuild new file mode 100644 index 00000000..06446b1f --- /dev/null +++ b/www-apps/gitweb/gitweb-2.4.0.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +GENTOO_DEPEND_ON_PERL=no + +[[ ${PV} == *9999 ]] && SCM="git-2" +EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git" +EGIT_MASTER=pu + +inherit toolchain-funcs eutils ${SCM} + +MY_PV="${PV/_rc/.rc}" +MY_PV="${MY_PV/gitweb/git}" +MY_P="${PN}-${MY_PV}" +MY_P="${MY_P/gitweb/git}" + +DESCRIPTION="A web interface to git" +HOMEPAGE="http://www.git-scm.com/" +if [[ "$PV" != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_GOOG="http://git-core.googlecode.com/files" + SRC_URI_KORG="mirror://kernel/software/scm/git" + SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX} + ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="highlight" + +# Common to both DEPEND and RDEPEND +CDEPEND=" + ~dev-vcs/git-${PV} + sys-libs/zlib + dev-lang/perl:=[-build(-)] + dev-libs/libpcre + dev-lang/tk:=" + +RDEPEND="${CDEPEND} + dev-vcs/git[-cgi] + dev-perl/Error + dev-perl/Net-SMTP-SSL + dev-perl/Authen-SASL + virtual/perl-CGI highlight? ( app-text/highlight )" + +DEPEND="${CDEPEND}" + +SITEFILE=50${PN}-gentoo.el +S="${WORKDIR}/${MY_P}" + +src_unpack() { + if [[ "${PV}" != *9999 ]]; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + cd "${S}" + else + git-2_src_unpack + cd "${S}" + #cp "${FILESDIR}"/GIT-VERSION-GEN . + fi + +} + +src_prepare() { + epatch_user + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile || die "sed failed" + + # Never install the private copy of Error.pm (bug #296310) + sed -i \ + -e '/private-Error.pm/s,^,#,' \ + perl/Makefile.PL +} + +git_emake() { + local MY_MAKEOPTS="INSTALLDIRS=vendor" + emake ${MY_MAKEOPTS} \ + DESTDIR="${D}" \ + OPTCFLAGS="${CFLAGS}" \ + OPTLDFLAGS="${LDFLAGS}" \ + OPTCC="$(tc-getCC)" \ + OPTAR="$(tc-getAR)" \ + prefix="${EPREFIX}"/usr \ + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \ + sysconfdir="${EPREFIX}"/etc \ + PERL_PATH="${EPREFIX}/usr/bin/env perl" \ + PERL_MM_OPT="" \ + GIT_TEST_OPTS="--no-color" \ + V=1 \ + "$@" +} + +src_configure() { + einfo "Nothing to configure." +} + +src_compile() { + git_emake perl/PM.stamp || die "emake perl/PM.stamp failed" + git_emake perl/perl.mak || die "emake perl/perl.mak failed" + + git_emake \ + gitweb \ + || die "emake gitweb failed" +} + +src_install() { + #if use perl && use cgi ; then + # dosym /usr/share/gitweb /usr/share/${PN}/gitweb + + # INSTALL discusses configuration issues, not just installation + docinto / + newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb + newdoc "${S}"/gitweb/README README.gitweb + + find "${ED}"/usr/lib64/perl5/ \ + -name .packlist \ + -exec rm \{\} \; + #else + # rm -rf "${ED}"/usr/share/gitweb + #fi + + exeinto /usr/share/gitweb/ + doexe "${S}"/gitweb/gitweb.cgi + + insinto /usr/share/gitweb/static + doins "${S}"/gitweb/static/*.png + doins "${S}"/gitweb/static/*.css + doins "${S}"/gitweb/static/*.js + + # Maybe not needed, but it's created when non-split ebuild is used too. + dosym /usr/share/gitweb /usr/share/git/gitweb + + # perl_delete_localpod from perl-module: not needed +} + +showpkgdeps() { + local pkg=$1 + shift + elog " $(printf "%-17s:" ${pkg}) ${@}" +} + +pkg_postinst() { + elog "These additional scripts need some dependencies:" + echo + showpkgdeps git-quiltimport "dev-util/quilt" + showpkgdeps git-instaweb \ + "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )" + echo +} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.39.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.39.ebuild index b73da653..6dccd0c1 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.39.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.39.ebuild @@ -369,7 +369,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-304.125.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-304.125.ebuild index 9cc09954..0ef41a65 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-304.125.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-304.125.ebuild @@ -336,7 +336,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-331.67.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-331.67.ebuild index d5000db7..673d18a1 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-331.67.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-331.67.ebuild @@ -341,7 +341,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-337.25.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-337.25.ebuild index ccb93726..b255c92c 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-337.25.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-337.25.ebuild @@ -319,7 +319,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-340.32.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-340.32.ebuild index ccb93726..b255c92c 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-340.32.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-340.32.ebuild @@ -319,7 +319,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-340.76.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-340.76.ebuild index ccb93726..b255c92c 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-340.76.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-340.76.ebuild @@ -319,7 +319,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-343.36.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-343.36.ebuild index ccb93726..b255c92c 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-343.36.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-343.36.ebuild @@ -319,7 +319,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-346.35.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-346.35.ebuild index d02de75b..dcf657ba 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-346.35.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-346.35.ebuild @@ -318,9 +318,11 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then + set -ex sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else + set ex eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." fi diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-346.59.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-346.59.ebuild index d02de75b..c3de9c45 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-346.59.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-346.59.ebuild @@ -319,7 +319,7 @@ pkg_preinst() { local videogroup="$(getent group video | cut -d ':' -f 3)" if [ -n "${videogroup}" ]; then sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf + -e "s:VIDEOGID:${videogroup}:g" "${ROOT}"/etc/modprobe.d/nvidia.conf else eerror "Failed to determine the video group gid." die "Failed to determine the video group gid." diff --git a/x11-themes/cristal-blue/Manifest b/x11-themes/cristal-blue/Manifest index c6872fc0..a471b8b8 100644 --- a/x11-themes/cristal-blue/Manifest +++ b/x11-themes/cristal-blue/Manifest @@ -1,4 +1,3 @@ DIST cristal-blue-1.3.1.tar.gz 5639 SHA256 90921e2da2077321ef42c9950141f4b3f1e93291c9cef8f1cfae7459181e697e SHA512 33d42c2fdaffe3097ac5dc1303a6a6aa3536e7c29ddac23f6409b5aaf52853fea524c8756f66ca520248fb3833a4d7bc33d073e25e068bf09e60bf9ef5d46968 WHIRLPOOL 8cb249ed25f3373cd48d448c3603cf6d1abfd4addd4fc27d4705005dc92b5cd16599a7d8bd5e72dce968eab5d80037fa80bb58bfaa3adbef34e57cae2d0f44fa DIST cristal-cursor.gz 5615 SHA256 7739d1aa63d1a3eb682579f7ed699de230bf262d4fec473dd691137d424ff5ab SHA512 4f5a4ccb4ba69c9aaf64d35cc6e8691f5c8932076c6b337cd11ac7cb50f0ad71e1cca25eabf20ab9ac579db57205a58962e39d4e450ead9776acbf646b732e43 WHIRLPOOL 5b5a2418b02d329c7cbfc23b74ba04816b6337d1b69b4dea8131ee319de34205627cd833500e8d32e09b07976c85b50fa5c4179fa624d21420bb5f1124cc3680 DIST cristal-oxigen-1.3.1.emerald 5648 SHA256 27bbb6ee75706ef7bcf4f21530ff0b76bfc8387dc49e126dca41fd87fea051c5 SHA512 a4cf8dc64f181c38c31b523188b18a9797f98ce20f62b5c718270f9645f941b274b5b36a1f28b6576ad91956b0eff1e6b6d11d12270ea382f54715fb2068ae8b WHIRLPOOL a8dabcadea792554f88f0f5c7515d06f8774b8f842769235259beb7dfc9b2f907860b777fc64894521e9f97ba1453cd2210d1e828dab34d4829f24bb1f5a811e -EBUILD cristal-blue-1.3.1.ebuild 1348 SHA256 c8e60d4decbe851dd5fcee2ea38fa016450a324e39758d30288c71a48316308d SHA512 e87ca83a245a29de7c82180d754dc36884dce5e68ebe3be192ae2a90e91c593dd170344e2960d5e893076a8cf37a970a060ddc9ea716471ccef8baf78a160a92 WHIRLPOOL d2f864634121f270a2d39add3209122cbc2f6f8ebb343f5558285ec21c0f19a89ef81c2b93de37efcf8aaac7030ab4a8f914e60dce2c7a626b01cf8c5f4e2c46 diff --git a/x11-themes/cristal-blue/cristal-blue-1.3.1.ebuild b/x11-themes/cristal-blue/cristal-blue-1.3.1.ebuild index e83886ea..bd973e27 100644 --- a/x11-themes/cristal-blue/cristal-blue-1.3.1.ebuild +++ b/x11-themes/cristal-blue/cristal-blue-1.3.1.ebuild @@ -6,7 +6,7 @@ EAPI=5 DESCRIPTION="Cristal-Blue Rogentos theme" HOMEPAGE="http://rogentos.ro" -SRC_URI="http://pkg2.rogentos.ro/~noxis/distro/${CATEGORY}/${PN}-${PV}.tar.gz +SRC_URI="http://bpr.buepink.ro/~rogentos/distro/${CATEGORY}/${PN}-${PV}.tar.gz http://pkg.rogentos.ro/~rogentos/distro/${CATEGORY}/${PN}-${PV}.tar.gz emerald? ( http://pkg2.rogentos.ro/~noxis/distro/${CATEGORY}/cristal-oxigen-${PV}.emerald ) cursor? ( http://pkg3.rogentos.ro/~noxis/distro/${CATEGORY}/cristal-cursor.gz ) " diff --git a/x11-themes/kogaion-artwork-isolinux/Manifest b/x11-themes/kogaion-artwork-isolinux/Manifest index 4e5a4e7c..321a3edc 100644 --- a/x11-themes/kogaion-artwork-isolinux/Manifest +++ b/x11-themes/kogaion-artwork-isolinux/Manifest @@ -1,3 +1,3 @@ DIST kogaion-artwork-isolinux-1.tar.gz 62342 SHA256 20d84fa20f8231d4960abc1e8b50f81d3929ad69a893627677900ca183b0aa19 SHA512 c9777a3651b1ea0d2224f52f4f4f33586aff3cc61aba9102804aad3c3af34c1f8e29df600e4ff639a97a1799ee1b1c2b8db81ae593220400fbe5ab7102848564 WHIRLPOOL acdae085cb588ac1bebeb3a5c09287b09792ccfc79352320b6e0c8f9b7284f094fb7904ab447eef64b4684b7c12e9273c72f54c0d2513320565fd771a40d4adb -DIST kogaion-artwork-isolinux-2.1.tar.gz 19116 SHA256 cba8312a0f73fc15c3a2d54a8ae1b455403539b9a9e7a5e326fb0198380e3045 SHA512 09a76c8feea5fb348523d8caa4f491c03ad348c709ffadfe2e7129b096f09e41f8e8937b5521d4b90d0183785349f3dee0c232ae062add4af2c65a2fc31ad3e5 WHIRLPOOL 2afde698580ec255d495b0050a8580a2569b57887fdcdafa0cb042a250ed52ff054b2b425f69adacb66b8cdda82bf4972435ba8f3aec8449dabd8ef37aea4181 +DIST kogaion-artwork-isolinux-2.1.tar.gz 15411 SHA256 14815e6fed890440b0df3d4e39a8b6f6b3bdad1b8f6f1ebca6c409ec4306f474 SHA512 df097782c481d24f627f75490547662ff5bf72d383873f8d7b0dc0d22cfae1ae2ec7a7a4965fd39f2b114fdbabcd9e5e45d81a3d507e164f72e29ea76bcbc508 WHIRLPOOL 1385711a22716f0178fb03cfebce3625f484390ae4396094bb50eb84f11c1c015c82b59ccd7cb2ef15d1cc15e53c5f0b656180e077da7b0e37859f62088fdc60 DIST kogaion-artwork-isolinux-2.tar.gz 15405 SHA256 60a84645fea79482648e70d318968f733e7870545e062e021bc8e19e5941337b SHA512 5643eefb054174163e390c0eb4a3e0effdd98f1cbbf01d7c454226ad4a53a27a447e61c9c363b5ad58cebeb20dcba3cb3398a2d10b08e9659bc7569eccaaabf8 WHIRLPOOL b57a56f4f499de047e57aa9bd9dc77d1b0dce7d3a0f30533f9b3d02d2fa2bdcb94c391fe2ba0a2415ef7d7bfecd4764364c1e4dd2248ead37b88037838b1a121 |