Sync with portage [Sat Apr 13 23:45:20 MSK 2019].
This commit is contained in:
parent
90d20968ab
commit
11c7042695
1027 changed files with 10350 additions and 10658 deletions
Binary file not shown.
Binary file not shown.
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
@ -9,7 +9,7 @@ DESCRIPTION="A device I/O monitoring tool"
|
|||
HOMEPAGE="https://github.com/donaldmcintosh/dio"
|
||||
SRC_URI="https://github.com/donaldmcintosh/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
DIST keepassxc-2.3.4-src.tar.xz 4137176 BLAKE2B bbf8dbef5fb365f3c0d9332454b2b3bce7d4e411f43939ae683428ca669a459f1662bb8b1a1da228bc9447ee15349a5cd558e4fdfcc5194f22401f56003fd0f0 SHA512 edca22ef9d7c553d21d8ea6115a5635265176acc56fdf055f1961a3e65046de49ed5b67eb68ecf4f925226fb5bca140d5d473a5082301168f6a8bb7979f562a8
|
||||
DIST keepassxc-2.4.0-src.tar.xz 3252104 BLAKE2B 7c82822f6fb0eaf6b5d086aebdf4927af215339f92e7f52104e05d5ff301461a1ad816d8a39b377c717e975001c9295ec6d8b2f2003a2215c05931eb9acb5c73 SHA512 b7295f5983237606efd236955dc73d477992d944e547eeb2c3a267d846e70ce6f83e489f58e3bd9b5bb21decabd9052a4ea7b98bd98e8283abbb678ae19e5559
|
||||
DIST keepassxc-2.4.1-src.tar.xz 3277856 BLAKE2B 64ed15987f26fd884db8fec9dc8e5d9ecd1ab9c298c2c35ee41f5aacd51bf3cd512c8ca0370ccc294d4f1ac6214678d2a3a4d8c47441c01ae8e858252018ec97 SHA512 4369043700d3de4fece0a1dd0f8aab3f621df379bc9d0214b4c70ab72d081f978104aa09fd39c4b4bf8b8df8f78266835dc206c31e7174bdf872a977c0d79502
|
||||
|
|
|
@ -24,7 +24,7 @@ fi
|
|||
|
||||
LICENSE="LGPL-2.1 GPL-2 GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="autotype browser debug network test yubikey"
|
||||
IUSE="autotype browser debug +network test yubikey"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/argon2:=
|
||||
|
@ -59,11 +59,6 @@ PDEPEND="
|
|||
x11-misc/xsel
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-dont_call_mandb.patch"
|
||||
"${FILESDIR}/${P}-build_fix.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
use test || \
|
||||
sed -e "/^find_package(Qt5Test/d" -i CMakeLists.txt || die
|
||||
|
@ -79,6 +74,7 @@ src_configure() {
|
|||
-DWITH_XC_BROWSER="$(usex browser)"
|
||||
-DWITH_XC_NETWORKING="$(usex network)"
|
||||
-DWITH_XC_SSHAGENT=ON
|
||||
-DWITH_XC_UPDATECHECK=OFF
|
||||
-DWITH_XC_YUBIKEY="$(usex yubikey)"
|
||||
)
|
||||
if [[ "${PV}" == *_beta* ]] ; then
|
|
@ -24,7 +24,7 @@ fi
|
|||
|
||||
LICENSE="LGPL-2.1 GPL-2 GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="autotype browser debug network test yubikey"
|
||||
IUSE="autotype browser debug +network test yubikey"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/argon2:=
|
||||
|
@ -74,6 +74,7 @@ src_configure() {
|
|||
-DWITH_XC_BROWSER="$(usex browser)"
|
||||
-DWITH_XC_NETWORKING="$(usex network)"
|
||||
-DWITH_XC_SSHAGENT=ON
|
||||
-DWITH_XC_UPDATECHECK=OFF
|
||||
-DWITH_XC_YUBIKEY="$(usex yubikey)"
|
||||
)
|
||||
if [[ "${PV}" == *_beta* ]] ; then
|
||||
|
|
|
@ -10,7 +10,7 @@ SRC_URI="https://github.com/hvisage/${PN}/archive/${P}.tar.gz"
|
|||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x64-cygwin ~x86-fbsd"
|
||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x64-cygwin ~x86-fbsd"
|
||||
IUSE="unicode"
|
||||
|
||||
RDEPEND=">=dev-libs/libpcre-3.4"
|
||||
|
|
Binary file not shown.
|
@ -1,2 +1 @@
|
|||
DIST clamav-0.100.1.tar.gz 16154415 BLAKE2B df4ddde28b0b263765f4a571a407390b30aa6fe58d07e1b8fe427e70141219fb3d7c5addfbf30a350c6c08324dee1ec3dd80319306df7578ed87138c6513b99d SHA512 13a4e050e030ac3d1cc07b12bdd56c455e266e0b205a4c9bc9f18e53f6d8913a66eed2296abf857f395227ab0ed5c7bc90bc357bcb314dc9e18a9c6177dcc5b2
|
||||
DIST clamav-0.101.2.tar.gz 21722932 BLAKE2B 5c2960e678510a6f829fc9333e05a45a57a704e13eb407e0f890dd5553a1f9644eb3b1122c677755237b8c682127319d447a508087bc9130d14cd2cfec92896a SHA512 f9ea4589a8081acf7b6d454d1a068da05ae6574a9070a08f9438935795cb6dc084ffb9222b11fb1623f31962f859e6536a2f5bd1de29ef6b9b314efa5edc8c7e
|
||||
|
|
|
@ -1,165 +0,0 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools eutils flag-o-matic user systemd
|
||||
|
||||
DESCRIPTION="Clam Anti-Virus Scanner"
|
||||
HOMEPAGE="https://www.clamav.net/"
|
||||
SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* alpha"
|
||||
IUSE="bzip2 doc clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs system-libmspack test uclibc"
|
||||
|
||||
CDEPEND="bzip2? ( app-arch/bzip2 )
|
||||
clamdtop? ( sys-libs/ncurses:0 )
|
||||
iconv? ( virtual/libiconv )
|
||||
metadata-analysis-api? ( dev-libs/json-c:= )
|
||||
milter? ( || ( mail-filter/libmilter mail-mta/sendmail ) )
|
||||
>=sys-libs/zlib-1.2.2:=
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
sys-devel/libtool
|
||||
|| ( dev-libs/libpcre2 >dev-libs/libpcre-6 )
|
||||
system-libmspack? ( dev-libs/libmspack )
|
||||
!!<app-antivirus/clamav-0.99"
|
||||
# hard block clamav < 0.99 due to linking problems Bug #567680
|
||||
# openssl is now *required* see this link as to why
|
||||
# https://blog.clamav.net/2014/02/introducing-openssl-as-dependency-to.html
|
||||
DEPEND="${CDEPEND}
|
||||
virtual/pkgconfig
|
||||
test? ( dev-libs/check )"
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-clamav )"
|
||||
|
||||
DOCS=( docs/clamdoc.pdf docs/phishsigs_howto.pdf docs/signatures.pdf )
|
||||
HTML_DOCS=( docs/html )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/clamav-0.100.0_autotools.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup clamav
|
||||
enewuser clamav -1 -1 /dev/null clamav
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use ppc64 && append-flags -mminimal-toc
|
||||
use uclibc && export ac_cv_type_error_t=yes
|
||||
|
||||
econf \
|
||||
$(use_enable bzip2) \
|
||||
$(use_enable clamdtop) \
|
||||
$(use_enable ipv6) \
|
||||
$(use_enable milter) \
|
||||
$(use_enable static-libs static) \
|
||||
$(use_enable test check) \
|
||||
$(use_with iconv) \
|
||||
$(use_with metadata-analysis-api libjson /usr) \
|
||||
$(use_with system-libmspack) \
|
||||
--cache-file="${S}"/config.cache \
|
||||
--disable-experimental \
|
||||
--disable-gcc-vcheck \
|
||||
--disable-zlib-vcheck \
|
||||
--enable-id-check \
|
||||
--with-dbdir="${EPREFIX}"/var/lib/clamav \
|
||||
--with-zlib="${EPREFIX}"/usr \
|
||||
--disable-llvm
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
rm -rf "${ED}"/var/lib/clamav
|
||||
newinitd "${FILESDIR}"/clamd.initd-r6 clamd
|
||||
newconfd "${FILESDIR}"/clamd.conf-r1 clamd
|
||||
|
||||
systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/clamav.conf"
|
||||
systemd_newunit "${FILESDIR}/clamd_at.service" "clamd@.service"
|
||||
systemd_dounit "${FILESDIR}/clamd.service"
|
||||
systemd_dounit "${FILESDIR}/freshclamd.service"
|
||||
|
||||
keepdir /var/lib/clamav
|
||||
fowners clamav:clamav /var/lib/clamav
|
||||
keepdir /var/log/clamav
|
||||
fowners clamav:clamav /var/log/clamav
|
||||
|
||||
dodir /etc/logrotate.d
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/clamav.logrotate clamav
|
||||
|
||||
# Modify /etc/{clamd,freshclam}.conf to be usable out of the box
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.pid:" \
|
||||
-e "s:.*\(LocalSocket\) .*:\1 ${EPREFIX}/var/run/clamav/clamd.sock:" \
|
||||
-e "s:.*\(User\) .*:\1 clamav:" \
|
||||
-e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
|
||||
-e "s:^\#\(LogTime\).*:\1 yes:" \
|
||||
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
|
||||
"${ED}"/etc/clamd.conf.sample || die
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/freshclam.pid:" \
|
||||
-e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \
|
||||
-e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
|
||||
-e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamd.conf:" \
|
||||
-e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
|
||||
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
|
||||
"${ED}"/etc/freshclam.conf.sample || die
|
||||
|
||||
if use milter ; then
|
||||
# MilterSocket one to include ' /' because there is a 2nd line for
|
||||
# inet: which we want to leave
|
||||
##dodoc "${FILESDIR}"/clamav-milter.README.gentoo
|
||||
sed -i -e "s:^\(Example\):\# \1:" \
|
||||
-e "s:.*\(PidFile\) .*:\1 ${EPREFIX}/var/run/clamav/clamav-milter.pid:" \
|
||||
-e "s+^\#\(ClamdSocket\) .*+\1 unix:${EPREFIX}/var/run/clamav/clamd.sock+" \
|
||||
-e "s:.*\(User\) .*:\1 clamav:" \
|
||||
-e "s+^\#\(MilterSocket\) /.*+\1 unix:${EPREFIX}/var/run/clamav/clamav-milter.sock+" \
|
||||
-e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \
|
||||
-e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
|
||||
"${ED}"/etc/clamav-milter.conf.sample || die
|
||||
cat >> "${ED}"/etc/conf.d/clamd <<-EOF
|
||||
MILTER_NICELEVEL=19
|
||||
START_MILTER=no
|
||||
EOF
|
||||
|
||||
systemd_newunit "${FILESDIR}/clamav-milter.service-r1" clamav-milter.service
|
||||
fi
|
||||
|
||||
if use doc; then
|
||||
einstalldocs
|
||||
doman docs/man/*.[1-8]
|
||||
fi
|
||||
|
||||
for i in clamd freshclam clamav-milter
|
||||
do
|
||||
[[ -f "${D}"/etc/"${i}".conf.sample ]] && mv "${D}"/etc/"${i}".conf{.sample,}
|
||||
done
|
||||
|
||||
prune_libtool_files --all
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake quick-check
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use milter ; then
|
||||
elog "For simple instructions how to setup the clamav-milter read the"
|
||||
elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
|
||||
fi
|
||||
if test -z $(find "${ROOT}"var/lib/clamav -maxdepth 1 -name 'main.c*' -print -quit) ; then
|
||||
ewarn "You must run freshclam manually to populate the virus database files"
|
||||
ewarn "before starting clamav for the first time.\n"
|
||||
fi
|
||||
}
|
|
@ -11,7 +11,7 @@ SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
|
|||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
|
||||
IUSE="bzip2 doc clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs test uclibc xml"
|
||||
|
||||
CDEPEND="bzip2? ( app-arch/bzip2 )
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
<use>
|
||||
<flag name="clamdtop">A Top like tool which shows what clamd is currently scanning amongst other things</flag>
|
||||
<flag name="metadata-analysis-api">Enables collection of file property metadata using ClamAV API for analysis by ClamAV bytecode programs.</flag>
|
||||
<flag name="system-libmspack">Use system libmspack instead of built in</flag>
|
||||
<flag name="xml">DMG and XAR support</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
|
|
Binary file not shown.
|
@ -28,7 +28,7 @@ RDEPEND="
|
|||
app-arch/lz4
|
||||
virtual/acl
|
||||
dev-python/llfuse[${PYTHON_USEDEP}]
|
||||
dev-python/msgpack[${PYTHON_USEDEP}]
|
||||
<=dev-python/msgpack-0.6.1[${PYTHON_USEDEP}]
|
||||
dev-python/pyzmq[${PYTHON_USEDEP}]
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
libressl? ( dev-libs/libressl:0= )
|
||||
|
|
Binary file not shown.
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
@ -9,7 +9,7 @@ DESCRIPTION="CPU testing utilities in optimized assembler for maximum loading"
|
|||
HOMEPAGE="https://downloads.bl4ckb0x.de/pages.sbcglobal.net/redelm/"
|
||||
SRC_URI="https://downloads.bl4ckb0x.de/pages.sbcglobal.net/redelm/${PN}_${MY_PV}_tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="-* ~amd64 ~arm ~x86"
|
||||
KEYWORDS="-* amd64 ~arm ~x86"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ SRC_URI="https://people.seas.harvard.edu/~apw/${PN}/${P}.tar.gz -> ${P}-r1.tar.g
|
|||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 sparc ~x86"
|
||||
KEYWORDS="amd64 ~arm ~mips ~ppc ~ppc64 sparc ~x86"
|
||||
IUSE="static"
|
||||
|
||||
src_configure() {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
@ -9,7 +9,7 @@ DESCRIPTION="A HTTP benchmarking tool"
|
|||
HOMEPAGE="https://www.github.com/wg/wrk"
|
||||
SRC_URI="https://www.github.com/wg/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
LICENSE="Apache-2.0 BSD MIT"
|
||||
SLOT="0"
|
||||
IUSE="libressl"
|
||||
|
|
Binary file not shown.
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
@ -6,7 +6,7 @@ EAPI=7
|
|||
inherit toolchain-funcs autotools
|
||||
|
||||
DESCRIPTION="A collection of several tools related to OpenPGP"
|
||||
HOMEPAGE="http://pgp-tools.alioth.debian.org/"
|
||||
HOMEPAGE="https://salsa.debian.org/signing-party-team/signing-party"
|
||||
SRC_URI="mirror://debian/pool/main/s/signing-party/${PN}_${PV}.orig.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
@ -6,7 +6,7 @@ EAPI=7
|
|||
inherit toolchain-funcs autotools
|
||||
|
||||
DESCRIPTION="A collection of several tools related to OpenPGP"
|
||||
HOMEPAGE="http://pgp-tools.alioth.debian.org/"
|
||||
HOMEPAGE="https://salsa.debian.org/signing-party-team/signing-party"
|
||||
SRC_URI="mirror://debian/pool/main/s/signing-party/${PN}_${PV}.orig.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
|
|
|
@ -9,7 +9,7 @@ DESCRIPTION="Shamir's Secret Sharing Scheme"
|
|||
HOMEPAGE="http://point-at-infinity.org/ssss/"
|
||||
SRC_URI="http://point-at-infinity.org/${PN}/${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
|
||||
|
|
Binary file not shown.
|
@ -14,10 +14,10 @@ LICENSE="CC-BY-SA-3.0"
|
|||
SLOT="live"
|
||||
IUSE="html twoside"
|
||||
|
||||
# texlive-bibtexextra: plainurl.bst
|
||||
# texlive-latexextra: chngcntr, isodate, marginnote, paralist, tocbibind
|
||||
# texlive-mathscience: algorithm, algorithmic
|
||||
# leaflet used by eapi-cheatsheet
|
||||
# leaflet: used by eapi-cheatsheet
|
||||
# tl-bibtexextra: unsrturl.bst
|
||||
# tl-latexextra: chngcntr, gitinfo2, isodate, marginnote, paralist, tocbibind
|
||||
# tl-mathscience: algorithm, algorithmic
|
||||
BDEPEND="dev-tex/leaflet
|
||||
dev-texlive/texlive-bibtexextra
|
||||
dev-texlive/texlive-fontsrecommended
|
||||
|
|
Binary file not shown.
|
@ -1,4 +1 @@
|
|||
DIST emacs-26.1.90.tar.xz 43892340 BLAKE2B 8ee12a6f8d6dd1a8084864d53818cd9127a95b7da632db14c831d2f9d4848aa11bb8a9d92bf8bf0348ea4e2fa75de45408d284680255e5a2b9845ada1acbc7fc SHA512 b2e7e9c1015c221e8665426528703bfe336734b7830d731d5f3a7c50ce423b2a8bdada7f934e5f31dbe81b4f06623bddafe48e9da4727cb728564d569ff0b188
|
||||
DIST emacs-26.1.91.tar.xz 43892592 BLAKE2B dba455ddacdda6faef66bf3869e21da9f94eef81e0987a280634e5186e8c441ac841ad917059ad8d0b36722d308f166d24c5770505b71219cd6979547f8cea10 SHA512 2c09b8ae0e035d20c8dcebda8ca56167a374c465f7ad8e55f97fc10355cffe709b196efa38474580c5b3584263b676fa5b8d9fa1434d4fc77d7d9cc941260a4b
|
||||
DIST emacs-26.1.92.tar.xz 44387596 BLAKE2B d0581658f95c7408ba0d3e107a0622212e94f8930c355228a999d591dcea7ba533d4f3b288f63bc2a1ffb2aac197c053ec5c48f80810fe4e1c097ae75e20505d SHA512 c01be13055644f00094e096a9ec39dfaa4fc999718931d6003425ef74741ab0ca638a377e2903fbffc32c3e344fde5e93b2657a48600493fc25daa82a34fc4d2
|
||||
DIST emacs-27.0.50_pre20180831.tar.xz 28668124 BLAKE2B fae74d9885889b042142f580e971c73c193306dca26b42dd87ac3d3d765312ce6695511d7d31a047d79803982f6345c4c319a3d83cea1313080170da97482fa2 SHA512 43b32d8943dc897dfc0c1fddb4261a196d3a604add5bcf87a93748125f15db2cac762d3550d6593b80e961ae35d543adc4d5937bac77970c658f93dba26f17e4
|
||||
|
|
|
@ -1,412 +0,0 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||
EGIT_BRANCH="emacs-26"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
else
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
|
||||
mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} != ${PV} ]] && S="${WORKDIR}/emacs"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="26"
|
||||
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk gtk2 gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm xwidgets zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses:0=
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gpm? ( sys-libs/gpm )
|
||||
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||
kerberos? ( virtual/krb5 )
|
||||
lcms? ( media-libs/lcms:2 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
mailutils? ( net-mail/mailutils[clients] )
|
||||
!mailutils? ( net-libs/liblockfile )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? ( net-libs/gnutls:0= )
|
||||
systemd? ( sys-apps/systemd )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib:0= )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0=
|
||||
<media-gfx/imagemagick-7:0= )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
x11-libs/libXrender
|
||||
cairo? ( >=x11-libs/cairo-1.12.18 )
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk2? ( x11-libs/gtk+:2 )
|
||||
!gtk2? (
|
||||
x11-libs/gtk+:3
|
||||
xwidgets? (
|
||||
net-libs/webkit-gtk:4=
|
||||
x11-libs/libXcomposite
|
||||
)
|
||||
)
|
||||
)
|
||||
!gtk? (
|
||||
motif? (
|
||||
>=x11-libs/motif-2.3:0
|
||||
x11-libs/libXpm
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!motif? (
|
||||
Xaw3d? (
|
||||
x11-libs/libXaw3d
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!Xaw3d? ( athena? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
X? ( x11-base/xorg-proto )"
|
||||
|
||||
BDEPEND="virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )"
|
||||
# pax_kernel? ( sys-apps/attr )
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
DEPEND="${DEPEND}
|
||||
sys-apps/texinfo"
|
||||
fi
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||
|| die "unable to sed ctags.1"
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with cairo)"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-cairo"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use cairo && ewarn \
|
||||
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f line
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
while read line; do ewarn "${line}"; done <<-EOF
|
||||
Your version of GTK+ will have problems with closing open
|
||||
displays. This is no problem if you just use one display, but
|
||||
if you use more than one and close one of them Emacs may crash.
|
||||
See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
|
||||
If you intend to use more than one display, then it is strongly
|
||||
recommended that you compile Emacs with the Athena/Lucid or the
|
||||
Motif toolkit instead.
|
||||
EOF
|
||||
if use gtk2; then
|
||||
myconf+=" --with-x-toolkit=gtk2 --without-xwidgets"
|
||||
use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk2\" is set."
|
||||
else
|
||||
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||
fi
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
if ! use gtk; then
|
||||
use gtk2 && ewarn \
|
||||
"USE flag \"gtk2\" has no effect if \"gtk\" is not set."
|
||||
use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--without-compress-install \
|
||||
--without-hesiod \
|
||||
--without-pop \
|
||||
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with dynamic-loading modules) \
|
||||
$(use_with games gameuser ":gamestat") \
|
||||
$(use_with gpm) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with lcms lcms2) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with mailutils) \
|
||||
$(use_with selinux) \
|
||||
$(use_with ssl gnutls) \
|
||||
$(use_with systemd libsystemd) \
|
||||
$(use_with threads) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Disable sandbox when dumping. For the unbelievers, see bug #131505
|
||||
emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|
||||
|| die "moving emacs executable failed"
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|
||||
|| die "moving emacs man page failed"
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||
|| die "moving info dir failed"
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{appdata,applications,icons}
|
||||
rm -rf "${ED}/usr/$(get_libdir)"
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS CONTRIBUTE
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||
|| die "install-info failed"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
|
@ -1,412 +0,0 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||
EGIT_BRANCH="emacs-26"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
else
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
|
||||
mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} != ${PV} ]] && S="${WORKDIR}/emacs"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="26"
|
||||
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk gtk2 gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm xwidgets zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses:0=
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gpm? ( sys-libs/gpm )
|
||||
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||
kerberos? ( virtual/krb5 )
|
||||
lcms? ( media-libs/lcms:2 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
mailutils? ( net-mail/mailutils[clients] )
|
||||
!mailutils? ( net-libs/liblockfile )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? ( net-libs/gnutls:0= )
|
||||
systemd? ( sys-apps/systemd )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib:0= )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0=
|
||||
<media-gfx/imagemagick-7:0= )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
x11-libs/libXrender
|
||||
cairo? ( >=x11-libs/cairo-1.12.18 )
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk2? ( x11-libs/gtk+:2 )
|
||||
!gtk2? (
|
||||
x11-libs/gtk+:3
|
||||
xwidgets? (
|
||||
net-libs/webkit-gtk:4=
|
||||
x11-libs/libXcomposite
|
||||
)
|
||||
)
|
||||
)
|
||||
!gtk? (
|
||||
motif? (
|
||||
>=x11-libs/motif-2.3:0
|
||||
x11-libs/libXpm
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!motif? (
|
||||
Xaw3d? (
|
||||
x11-libs/libXaw3d
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!Xaw3d? ( athena? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
X? ( x11-base/xorg-proto )"
|
||||
|
||||
BDEPEND="virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )"
|
||||
# pax_kernel? ( sys-apps/attr )
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
DEPEND="${DEPEND}
|
||||
sys-apps/texinfo"
|
||||
fi
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 \
|
||||
|| die "unable to sed ctags.1"
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with cairo)"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-cairo"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use cairo && ewarn \
|
||||
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f line
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
while read line; do ewarn "${line}"; done <<-EOF
|
||||
Your version of GTK+ will have problems with closing open
|
||||
displays. This is no problem if you just use one display, but
|
||||
if you use more than one and close one of them Emacs may crash.
|
||||
See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
|
||||
If you intend to use more than one display, then it is strongly
|
||||
recommended that you compile Emacs with the Athena/Lucid or the
|
||||
Motif toolkit instead.
|
||||
EOF
|
||||
if use gtk2; then
|
||||
myconf+=" --with-x-toolkit=gtk2 --without-xwidgets"
|
||||
use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk2\" is set."
|
||||
else
|
||||
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||
fi
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
if ! use gtk; then
|
||||
use gtk2 && ewarn \
|
||||
"USE flag \"gtk2\" has no effect if \"gtk\" is not set."
|
||||
use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--without-compress-install \
|
||||
--without-hesiod \
|
||||
--without-pop \
|
||||
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with dynamic-loading modules) \
|
||||
$(use_with games gameuser ":gamestat") \
|
||||
$(use_with gpm) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with lcms lcms2) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with mailutils) \
|
||||
$(use_with selinux) \
|
||||
$(use_with ssl gnutls) \
|
||||
$(use_with systemd libsystemd) \
|
||||
$(use_with threads) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Disable sandbox when dumping. For the unbelievers, see bug #131505
|
||||
emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|
||||
|| die "moving emacs executable failed"
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|
||||
|| die "moving emacs man page failed"
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|
||||
|| die "moving info dir failed"
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{appdata,applications,icons}
|
||||
rm -rf "${ED}/usr/$(get_libdir)"
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS CONTRIBUTE
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed"
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" \
|
||||
|| die "install-info failed"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
|
@ -1,408 +0,0 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||
EGIT_BRANCH="emacs-26"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
else
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
|
||||
mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} != ${PV} ]] && S="${WORKDIR}/emacs"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="26"
|
||||
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk gtk2 gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm xwidgets zlib"
|
||||
REQUIRED_USE="?? ( aqua X )"
|
||||
|
||||
RDEPEND="sys-libs/ncurses:0=
|
||||
>=app-eselect/eselect-emacs-1.16
|
||||
>=app-emacs/emacs-common-gentoo-1.5[games?,X?]
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gpm? ( sys-libs/gpm )
|
||||
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||
kerberos? ( virtual/krb5 )
|
||||
lcms? ( media-libs/lcms:2 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
mailutils? ( net-mail/mailutils[clients] )
|
||||
!mailutils? ( net-libs/liblockfile )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? ( net-libs/gnutls:0= )
|
||||
systemd? ( sys-apps/systemd )
|
||||
zlib? ( sys-libs/zlib )
|
||||
X? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-misc/xbitmaps
|
||||
gconf? ( >=gnome-base/gconf-2.26.2 )
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib:0= )
|
||||
jpeg? ( virtual/jpeg:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:0 )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0=
|
||||
<media-gfx/imagemagick-7:0= )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
x11-libs/libXrender
|
||||
cairo? ( >=x11-libs/cairo-1.12.18 )
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
gtk2? ( x11-libs/gtk+:2 )
|
||||
!gtk2? (
|
||||
x11-libs/gtk+:3
|
||||
xwidgets? (
|
||||
net-libs/webkit-gtk:4=
|
||||
x11-libs/libXcomposite
|
||||
)
|
||||
)
|
||||
)
|
||||
!gtk? (
|
||||
motif? (
|
||||
>=x11-libs/motif-2.3:0
|
||||
x11-libs/libXpm
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!motif? (
|
||||
Xaw3d? (
|
||||
x11-libs/libXaw3d
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!Xaw3d? ( athena? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
) )
|
||||
)
|
||||
)
|
||||
)"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
X? ( x11-base/xorg-proto )"
|
||||
|
||||
BDEPEND="virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )"
|
||||
# pax_kernel? ( sys-apps/attr )
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
DEPEND="${DEPEND}
|
||||
sys-apps/texinfo"
|
||||
fi
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
||||
SITEFILE="20${PN}-${SLOT}-gentoo.el"
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use sh; then
|
||||
replace-flags "-O[1-9]" -O0 #262359
|
||||
elif use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" $(use_with gconf)"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with cairo)"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-cairo"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use cairo && ewarn \
|
||||
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f line
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
while read line; do ewarn "${line}"; done <<-EOF
|
||||
Your version of GTK+ will have problems with closing open
|
||||
displays. This is no problem if you just use one display, but
|
||||
if you use more than one and close one of them Emacs may crash.
|
||||
See <https://bugzilla.gnome.org/show_bug.cgi?id=85715>.
|
||||
If you intend to use more than one display, then it is strongly
|
||||
recommended that you compile Emacs with the Athena/Lucid or the
|
||||
Motif toolkit instead.
|
||||
EOF
|
||||
if use gtk2; then
|
||||
myconf+=" --with-x-toolkit=gtk2 --without-xwidgets"
|
||||
use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk2\" is set."
|
||||
else
|
||||
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||
fi
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
if ! use gtk; then
|
||||
use gtk2 && ewarn \
|
||||
"USE flag \"gtk2\" has no effect if \"gtk\" is not set."
|
||||
use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||
fi
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --without-x --without-ns"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--without-compress-install \
|
||||
--without-hesiod \
|
||||
--without-pop \
|
||||
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with dynamic-loading modules) \
|
||||
$(use_with games gameuser ":gamestat") \
|
||||
$(use_with gpm) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with lcms lcms2) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with mailutils) \
|
||||
$(use_with selinux) \
|
||||
$(use_with ssl gnutls) \
|
||||
$(use_with systemd libsystemd) \
|
||||
$(use_with threads) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Disable sandbox when dumping. For the unbelievers, see bug #131505
|
||||
emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
|
||||
|
||||
# move info dir to avoid collisions with the dir file generated by portage
|
||||
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
|
||||
rm -rf "${ED}"/usr/share/{appdata,applications,icons}
|
||||
rm -rf "${ED}/usr/$(get_libdir)"
|
||||
rm -rf "${ED}"/var
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||
X
|
||||
;;; ${PN}-${SLOT} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share/info
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS CONTRIBUTE
|
||||
|
||||
if use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
|
||||
fi
|
||||
|
||||
DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
|
||||
through the Emacs eselect module, which also redirects man and info
|
||||
pages. Therefore, several Emacs versions can be installed at the
|
||||
same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
|
||||
strongly recommended that you use app-admin/emacs-updater to rebuild
|
||||
all byte-compiled elisp files of the installed Emacs packages."
|
||||
use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
|
||||
it into /Applications by yourself."
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# move Info dir file to correct name
|
||||
local infodir=/usr/share/info/${EMACS_SUFFIX} f
|
||||
if [[ -f ${ED}${infodir}/dir.orig ]]; then
|
||||
mv "${ED}"${infodir}/dir{.orig,} || die
|
||||
elif [[ -d "${ED}"${infodir} ]]; then
|
||||
# this should not happen in EAPI 4
|
||||
ewarn "Regenerating Info directory index in ${infodir} ..."
|
||||
rm -f "${ED}"${infodir}/dir{,.*}
|
||||
for f in "${ED}"${infodir}/*; do
|
||||
if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then
|
||||
install-info --info-dir="${ED}"${infodir} "${f}" || die
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
|
||||
# refresh symlinks in case any installed files have changed
|
||||
eselect emacs set ${EMACS_SUFFIX}
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
|
@ -121,6 +121,9 @@ BDEPEND="virtual/pkgconfig
|
|||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
DEPEND="${DEPEND}
|
||||
sys-apps/texinfo"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
!=app-editors/emacs-${PV%.*}*"
|
||||
fi
|
||||
|
||||
EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
|
|
@ -12,4 +12,4 @@ DIST emacs-25.3.tar.xz 42854740 BLAKE2B 4f4e2572bbef48b75c561497fc22046081e56099
|
|||
DIST emacs-26.1-patches-1.tar.xz 1296 BLAKE2B 5e3cef3130b35a362d67f853686625d207e9af29ffb27753b6aa00327e30cc06b3cd7ed339b214b12fb00137654521c21e2252ecd83a79258bb9636406ab032c SHA512 6e4b0bdbf98d5130a6cd41fb0a8c3d641bf0b8d46f150d1f10f2d659e0418c14198d8990df13f3266437bb128f5fc7db8456458f5f547f2c12cc59da4fea3c8e
|
||||
DIST emacs-26.1-patches-2.tar.xz 2740 BLAKE2B 43a58137d6096fd6b49688192b65e97446cd31691b18c2e69c8980ff1d93caa66ff670f06456df91411fd74396deaa1899c7afb6c0a4bbc98d4c2d9bd7ed7d40 SHA512 31c1714d130a02692c65dd1371662100f9fbf33a8df30b8bad8fa688ab993e0a596101a4765a7859801d1f66e729c9fca748e70b9919e5b2a777d39fcbe92c21
|
||||
DIST emacs-26.1.tar.xz 44258932 BLAKE2B 5b5ea6a506228507af18417c3f94c2d6ea482c25d13ec5e0bee9ec6a65e80c52c870162b4671e80a82f8310784c802924609f2f87d504b1a97617c44d859566f SHA512 537c2cfdd281151b360002419dde6280c313e07a937ed96405c67f754b3401ec5541091a3c0aa6690929bc33dd79e8e0d8844e7a6b014b7798c63cb15de210c2
|
||||
DIST emacs-26.2-rc1.tar.xz 44405668 BLAKE2B 05d1788b974328f53c654daa9e6fc50138271c5805dfeefae088b74450245368d25f7a721d636a3c771d5abd4bba75b1b05ef312ace7c821b8fd59d2c1f82e30 SHA512 27c5551adb0641dee6bbd962dcefece6465f0ce1c37da1be0ab56966e04c277ad8db35763ce56fd35a4643f60c6576c36aa27cac695f62bd4e4e7501d09654b5
|
||||
DIST emacs-26.2.tar.xz 44406808 BLAKE2B 23c23958b177f032082fc5e71ebccc4a88c10b19258ec22608d7bade37dc58d5f8aa4a74e86114c72ea8be8fc299b6c9af5af283f28bd7e965830e587f1bdc93 SHA512 c223ff5c51ca8bdf887bacb2dc37b08a637d39ed6f887cc24f67397e46fe5fdb68f33f21b97300b985c749f32aa09080d33103271637ed4ce5d9f2ea34ce9fe1
|
||||
|
|
|
@ -7,7 +7,7 @@ inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
|
|||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
SRC_URI="mirror://gnu-alpha/emacs/pretest/emacs-${PV/_/-}.tar.xz"
|
||||
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="26"
|
|
@ -4,3 +4,4 @@ DIST vim-8.0.1699.tar.gz 13546105 BLAKE2B cabf29d5a89c55e2fe3bc5e39eb499412f5907
|
|||
DIST vim-8.1.0034.tar.gz 13652586 BLAKE2B 98dac6b37c04ea8c15f0b0e2e4145d6529138e0532e92751fd07be04a2180519135d386dfc19e7f12c8eb37b3e15ee81ba357680d453afab56d96299b69cb511 SHA512 b2b85035c6c60a09e903d8f6deb500e42ab8bfc2f9a5b959d0055a8e02dab3a91d5460fd5028e6634c5ef6ab034186b7155e341fa25e84b9851290708e892d19
|
||||
DIST vim-8.1.0412.tar.gz 13857501 BLAKE2B 6925184359b8b36cb546c9fcba4bb01755455aa87171ea7328ece411a5a5ced45096b8bef8561059bbff9a3ade565e0648fd18dd091d6faad0eb8a67321337a5 SHA512 3f458c039a636d7d3e398f8aa9cba4b4ae650c00038618c4776959b6feb0a1e3ac56be2912c3d85cba8e8f301661a62d71acd34a4dd75dc4dc000a94bf1b237e
|
||||
DIST vim-8.1.0648.tar.gz 14061964 BLAKE2B 79bf52d8574167471c93942904dc2b4ad5648ec365561494bbad45c779154b75b0fff1d90229516e938371f1eaa5808659cb2181b150c4c13bf8501bd9987b38 SHA512 d41676a6bb6bc442f4946ca021b2835d7ea0e54fbefe1bfc728241e1bf203cc696b707fcca6f25c877660283a790cefa4259fbd14de88fd4db7390701189c454
|
||||
DIST vim-8.1.1155.tar.gz 14141750 BLAKE2B f15470768fbdc4e02552b8711626c3ad9647ec5b74ebaa3f82a4f32c050405ef0cf3f29d1e5bdbb4de008bf16262b8cdc81ff153e2694a184523cd913624e8e0 SHA512 0cdc42090958f4c91c13aeeefac0abc4feaa629d8b90c04bd01d5e23efefe21e6316e1b2c3b6015ecf9577573faea9a1b6660de8a2959642e65582dbe9c7f5c6
|
||||
|
|
370
app-editors/gvim/gvim-8.1.1155.ebuild
Normal file
370
app-editors/gvim/gvim-8.1.1155.ebuild
Normal file
|
@ -0,0 +1,370 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
VIM_VERSION="8.1"
|
||||
PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby24 ruby25 ruby26"
|
||||
|
||||
inherit vim-doc flag-o-matic xdg-utils gnome2-utils bash-completion-r1 prefix python-single-r1 ruby-single
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
|
||||
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="GUI version of the Vim text editor"
|
||||
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="vim"
|
||||
IUSE="acl aqua cscope debug gtk gtk2 lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
|
||||
REQUIRED_USE="
|
||||
luajit? ( lua )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=app-eselect/eselect-vi-1.1
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libXext
|
||||
x11-libs/libXt
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
!aqua? (
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libXft
|
||||
)
|
||||
!gtk? (
|
||||
gtk2? (
|
||||
>=x11-libs/gtk+-2.6:2
|
||||
x11-libs/libXft
|
||||
)
|
||||
!gtk2? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
neXt? ( x11-libs/neXtaw )
|
||||
!neXt? ( x11-libs/libXaw )
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
cscope? ( dev-util/cscope )
|
||||
lua? (
|
||||
luajit? ( dev-lang/luajit:2= )
|
||||
!luajit? ( dev-lang/lua:0[deprecated] )
|
||||
)
|
||||
nls? ( virtual/libintl )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
session? ( x11-libs/libSM )
|
||||
tcl? ( dev-lang/tcl:0= )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/autoconf
|
||||
virtual/pkgconfig
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
# temporarily use PDEPEND to allow upgrades past icon file collision, bug #673880
|
||||
PDEPEND="~app-editors/vim-core-${PV}"
|
||||
|
||||
# various failures (bugs #630042 and #682320)
|
||||
RESTRICT="test"
|
||||
|
||||
S=${WORKDIR}/vim-${PV}
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug 82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
# Gnome sandbox silliness. bug #114475.
|
||||
mkdir -p "${T}"/home || die
|
||||
export HOME="${T}"/home
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999* ]]; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
eapply "${WORKDIR}"/patches/
|
||||
fi
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i -e \
|
||||
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug 29398 (27 Sep 2003 agriffis)
|
||||
sed -i -e \
|
||||
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
|
||||
# this is NeXT, but it's actually just a file in dev-libs/9libs
|
||||
# This fixes bug 43885 (20 Mar 2004 agriffis)
|
||||
sed -i -e \
|
||||
's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
|
||||
sed -i -e \
|
||||
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
|
||||
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=()
|
||||
|
||||
# Fix bug 37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i -e \
|
||||
's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
rm -v src/auto/configure || die "rm failed"
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
local file
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e ${file} ]]; then
|
||||
addwrite $file
|
||||
fi
|
||||
done
|
||||
|
||||
use debug && append-flags "-DDEBUG"
|
||||
|
||||
myconf=(
|
||||
--with-features=huge
|
||||
--disable-gpm
|
||||
--enable-multibyte
|
||||
--with-gnome=no
|
||||
$(use_enable acl)
|
||||
$(use_enable cscope)
|
||||
$(use_enable lua luainterp)
|
||||
$(use_with luajit)
|
||||
$(use_enable netbeans)
|
||||
$(use_enable nls)
|
||||
$(use_enable perl perlinterp)
|
||||
$(use_enable python pythoninterp)
|
||||
$(use_enable python python3interp)
|
||||
$(use_with python python-command $(type -P $(eselect python show --python2)))
|
||||
$(use_with python python3-command $(type -P $(eselect python show --python3)))
|
||||
$(use_enable racket mzschemeinterp)
|
||||
$(use_enable ruby rubyinterp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable session xsmp)
|
||||
$(use_enable tcl tclinterp)
|
||||
)
|
||||
|
||||
# --with-features=huge forces on cscope even if we --disable it. We need
|
||||
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
|
||||
if ! use cscope; then
|
||||
sed -i -e \
|
||||
'/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope"
|
||||
fi
|
||||
|
||||
# gvim's GUI preference order is as follows:
|
||||
# aqua CARBON (not tested)
|
||||
# -aqua gtk GTK3
|
||||
# -aqua -gtk gtk2 GTK2
|
||||
# -aqua -gtk -gtk motif MOTIF
|
||||
# -aqua -gtk -gtk -motif neXt NEXTAW
|
||||
# -aqua -gtk -gtk -motif -neXt ATHENA
|
||||
echo ; echo
|
||||
if use aqua; then
|
||||
einfo "Building gvim with the Carbon GUI"
|
||||
myconf+=(
|
||||
--enable-darwin
|
||||
--enable-gui=carbon
|
||||
)
|
||||
elif use gtk; then
|
||||
myconf+=( --enable-gtk3-check )
|
||||
einfo "Building gvim with the gtk+-3 GUI"
|
||||
myconf+=( --enable-gui=gtk3 )
|
||||
elif use gtk2; then
|
||||
myconf+=( --enable-gtk2-check )
|
||||
einfo "Building gvim with the gtk+-2 GUI"
|
||||
myconf+=( --enable-gui=gtk2 )
|
||||
elif use motif; then
|
||||
einfo "Building gvim with the MOTIF GUI"
|
||||
myconf+=( --enable-gui=motif )
|
||||
elif use neXt; then
|
||||
einfo "Building gvim with the neXtaw GUI"
|
||||
myconf+=( --enable-gui=nextaw )
|
||||
else
|
||||
einfo "Building gvim with the Athena GUI"
|
||||
myconf+=( --enable-gui=athena )
|
||||
fi
|
||||
echo ; echo
|
||||
|
||||
# let package manager strip binaries
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# keep prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
if [[ ${CHOST} == *-interix* ]]; then
|
||||
# avoid finding of this function, to avoid having to patch either
|
||||
# configure or the source, which would be much more hackish.
|
||||
# after all vim does it right, only interix is badly broken (again)
|
||||
export ac_cv_func_sigaction=no
|
||||
fi
|
||||
|
||||
econf \
|
||||
--with-modified-by=Gentoo-${PVR} \
|
||||
--with-vim-name=gvim \
|
||||
--with-x \
|
||||
"${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The following allows emake to be used
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo
|
||||
einfo "Starting vim tests. Several error messages will be shown"
|
||||
einfo "while the tests run. This is normal behaviour and does not"
|
||||
einfo "indicate a fault."
|
||||
einfo
|
||||
ewarn "If the tests fail, your terminal may be left in a strange"
|
||||
ewarn "state. Usually, running 'reset' will fix this."
|
||||
einfo
|
||||
|
||||
# Don't let vim talk to X
|
||||
unset DISPLAY
|
||||
|
||||
# Make gvim not try to connect to X. See :help gui-x11-start in vim for how
|
||||
# this evil trickery works.
|
||||
ln -s "${S}"/src/gvim "${S}"/src/testvim || die
|
||||
|
||||
# Make sure our VIMPROG is used.
|
||||
sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die
|
||||
|
||||
# Don't do additional GUI tests.
|
||||
emake -j1 VIMPROG=../testvim -C src/testdir nongui
|
||||
}
|
||||
|
||||
# Call eselect vi update with --if-unset
|
||||
# to respect user's choice (bug 187449)
|
||||
eselect_vi_update() {
|
||||
einfo "Calling eselect vi update..."
|
||||
eselect vi update --if-unset
|
||||
eend $?
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
dobin src/gvim
|
||||
dosym gvim /usr/bin/gvimdiff
|
||||
dosym gvim /usr/bin/evim
|
||||
dosym gvim /usr/bin/eview
|
||||
dosym gvim /usr/bin/gview
|
||||
dosym gvim /usr/bin/rgvim
|
||||
dosym gvim /usr/bin/rgview
|
||||
|
||||
emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons
|
||||
|
||||
dodir /usr/share/man/man1
|
||||
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed"
|
||||
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed"
|
||||
echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \
|
||||
die "echo failed"
|
||||
|
||||
insinto /etc/vim
|
||||
newins "${FILESDIR}"/gvimrc-r1 gvimrc
|
||||
eprefixify "${ED}"/etc/vim/gvimrc
|
||||
|
||||
# bash completion script, bug #79018.
|
||||
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
|
||||
|
||||
# don't install vim desktop file
|
||||
rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Update fdo mime stuff, bug #78394
|
||||
xdg_desktop_database_update
|
||||
|
||||
# Update icon cache
|
||||
gnome2_icon_cache_update
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Update fdo mime stuff, bug #78394
|
||||
xdg_desktop_database_update
|
||||
|
||||
# Update icon cache
|
||||
gnome2_icon_cache_update
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
}
|
|
@ -3,9 +3,9 @@
|
|||
|
||||
EAPI=6
|
||||
VIM_VERSION="8.1"
|
||||
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6,3_7} )
|
||||
PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby23 ruby24 ruby25"
|
||||
USE_RUBY="ruby24 ruby25 ruby26"
|
||||
|
||||
inherit vim-doc flag-o-matic xdg-utils gnome2-utils bash-completion-r1 prefix python-single-r1 ruby-single
|
||||
|
||||
|
@ -24,7 +24,7 @@ HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
|||
|
||||
SLOT="0"
|
||||
LICENSE="vim"
|
||||
IUSE="acl aqua cscope debug gnome gtk gtk3 lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
|
||||
IUSE="acl aqua cscope debug gtk gtk2 lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
|
||||
REQUIRED_USE="
|
||||
luajit? ( lua )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
|
@ -40,16 +40,16 @@ RDEPEND="
|
|||
x11-libs/libXt
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
!aqua? (
|
||||
gtk3? (
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libXft
|
||||
)
|
||||
!gtk3? (
|
||||
gtk? (
|
||||
!gtk? (
|
||||
gtk2? (
|
||||
>=x11-libs/gtk+-2.6:2
|
||||
x11-libs/libXft
|
||||
)
|
||||
!gtk? (
|
||||
!gtk2? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
neXt? ( x11-libs/neXtaw )
|
||||
|
@ -73,12 +73,14 @@ RDEPEND="
|
|||
tcl? ( dev-lang/tcl:0= )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-util/ctags
|
||||
sys-devel/autoconf
|
||||
virtual/pkgconfig
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
# various failures (bugs #630042 and #682320)
|
||||
RESTRICT="test"
|
||||
|
||||
S=${WORKDIR}/vim-${PV}
|
||||
|
||||
pkg_setup() {
|
||||
|
@ -189,6 +191,7 @@ src_configure() {
|
|||
--with-features=huge
|
||||
--disable-gpm
|
||||
--enable-multibyte
|
||||
--with-gnome=no
|
||||
$(use_enable acl)
|
||||
$(use_enable cscope)
|
||||
$(use_enable lua luainterp)
|
||||
|
@ -215,13 +218,12 @@ src_configure() {
|
|||
fi
|
||||
|
||||
# gvim's GUI preference order is as follows:
|
||||
# aqua CARBON (not tested)
|
||||
# -aqua gtk3 GTK3
|
||||
# -aqua -gtk3 gnome GNOME2
|
||||
# -aqua -gtk3 -gnome gtk GTK2
|
||||
# -aqua -gtk -gtk3 motif MOTIF
|
||||
# -aqua -gtk -gtk3 -motif neXt NEXTAW
|
||||
# -aqua -gtk -gtk3 -motif -neXt ATHENA
|
||||
# aqua CARBON (not tested)
|
||||
# -aqua gtk GTK3
|
||||
# -aqua -gtk gtk2 GTK2
|
||||
# -aqua -gtk -gtk motif MOTIF
|
||||
# -aqua -gtk -gtk -motif neXt NEXTAW
|
||||
# -aqua -gtk -gtk -motif -neXt ATHENA
|
||||
echo ; echo
|
||||
if use aqua; then
|
||||
einfo "Building gvim with the Carbon GUI"
|
||||
|
@ -229,19 +231,14 @@ src_configure() {
|
|||
--enable-darwin
|
||||
--enable-gui=carbon
|
||||
)
|
||||
elif use gtk3; then
|
||||
elif use gtk; then
|
||||
myconf+=( --enable-gtk3-check )
|
||||
einfo "Building gvim with the gtk+-3 GUI"
|
||||
myconf+=( --enable-gui=gtk3 )
|
||||
elif use gtk; then
|
||||
elif use gtk2; then
|
||||
myconf+=( --enable-gtk2-check )
|
||||
if use gnome; then
|
||||
einfo "Building gvim with the Gnome 2 GUI"
|
||||
myconf+=( --enable-gui=gnome2 )
|
||||
else
|
||||
einfo "Building gvim with the gtk+-2 GUI"
|
||||
myconf+=( --enable-gui=gtk2 )
|
||||
fi
|
||||
einfo "Building gvim with the gtk+-2 GUI"
|
||||
myconf+=( --enable-gui=gtk2 )
|
||||
elif use motif; then
|
||||
einfo "Building gvim with the MOTIF GUI"
|
||||
myconf+=( --enable-gui=motif )
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
</maintainer>
|
||||
<use>
|
||||
<flag name="cscope">Enable cscope interface</flag>
|
||||
<flag name="gtk2">Enable GTK+2 interface</flag>
|
||||
<flag name="gtk3">Enable GTK+3 interface</flag>
|
||||
<flag name="netbeans">Include netbeans external editor integration support</flag>
|
||||
<flag name="racket">Enable support for Scheme using <pkg>dev-scheme/racket</pkg></flag>
|
||||
|
|
|
@ -10,7 +10,7 @@ if [[ ${PV} == "9999" ]] ; then
|
|||
else
|
||||
MY_P="${PN}-${PV/_}"
|
||||
SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.gz"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="GNU GPL'd Pico clone with more functionality"
|
||||
|
|
|
@ -4,3 +4,4 @@ DIST vim-8.0.1699.tar.gz 13546105 BLAKE2B cabf29d5a89c55e2fe3bc5e39eb499412f5907
|
|||
DIST vim-8.1.0034.tar.gz 13652586 BLAKE2B 98dac6b37c04ea8c15f0b0e2e4145d6529138e0532e92751fd07be04a2180519135d386dfc19e7f12c8eb37b3e15ee81ba357680d453afab56d96299b69cb511 SHA512 b2b85035c6c60a09e903d8f6deb500e42ab8bfc2f9a5b959d0055a8e02dab3a91d5460fd5028e6634c5ef6ab034186b7155e341fa25e84b9851290708e892d19
|
||||
DIST vim-8.1.0412.tar.gz 13857501 BLAKE2B 6925184359b8b36cb546c9fcba4bb01755455aa87171ea7328ece411a5a5ced45096b8bef8561059bbff9a3ade565e0648fd18dd091d6faad0eb8a67321337a5 SHA512 3f458c039a636d7d3e398f8aa9cba4b4ae650c00038618c4776959b6feb0a1e3ac56be2912c3d85cba8e8f301661a62d71acd34a4dd75dc4dc000a94bf1b237e
|
||||
DIST vim-8.1.0648.tar.gz 14061964 BLAKE2B 79bf52d8574167471c93942904dc2b4ad5648ec365561494bbad45c779154b75b0fff1d90229516e938371f1eaa5808659cb2181b150c4c13bf8501bd9987b38 SHA512 d41676a6bb6bc442f4946ca021b2835d7ea0e54fbefe1bfc728241e1bf203cc696b707fcca6f25c877660283a790cefa4259fbd14de88fd4db7390701189c454
|
||||
DIST vim-8.1.1155.tar.gz 14141750 BLAKE2B f15470768fbdc4e02552b8711626c3ad9647ec5b74ebaa3f82a4f32c050405ef0cf3f29d1e5bdbb4de008bf16262b8cdc81ff153e2694a184523cd913624e8e0 SHA512 0cdc42090958f4c91c13aeeefac0abc4feaa629d8b90c04bd01d5e23efefe21e6316e1b2c3b6015ecf9577573faea9a1b6660de8a2959642e65582dbe9c7f5c6
|
||||
|
|
225
app-editors/vim-core/vim-core-8.1.1155.ebuild
Normal file
225
app-editors/vim-core/vim-core-8.1.1155.ebuild
Normal file
|
@ -0,0 +1,225 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
VIM_VERSION="8.1"
|
||||
inherit estack vim-doc flag-o-matic bash-completion-r1 prefix desktop gnome2-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
|
||||
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="vim and gvim shared files"
|
||||
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="vim"
|
||||
IUSE="nls acl minimal"
|
||||
|
||||
DEPEND="sys-devel/autoconf"
|
||||
# avoid icon file collision bug #673880
|
||||
RDEPEND="!!<app-editors/gvim-8.1.0648"
|
||||
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
|
||||
|
||||
S=${WORKDIR}/vim-${PV}
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug 82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
# Gnome sandbox silliness. bug #114475.
|
||||
mkdir -p "${T}"/home || die "mkdir -p failed"
|
||||
export HOME="${T}"/home
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999* ]] ; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
eapply "${WORKDIR}"/patches
|
||||
fi
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i \
|
||||
-e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "sed failed"
|
||||
|
||||
# See #77841. We remove this file after the tarball extraction.
|
||||
rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug 29398 (27 Sep 2003 agriffis)
|
||||
sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
|
||||
# this is NeXT, but it's actually just a file in dev-libs/9libs
|
||||
# This fixes bug 43885 (20 Mar 2004 agriffis)
|
||||
sed -i 's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die "sed failed"
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
|
||||
sed -i -e \
|
||||
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
|
||||
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
# Fix bug 37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
|
||||
# Remove src/auto/configure file.
|
||||
rm -v src/auto/configure || die "rm configure failed"
|
||||
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e "${file}" ]]; then
|
||||
addwrite $file
|
||||
fi
|
||||
done
|
||||
|
||||
# Let Portage do the stripping. Some people like that.
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# Keep Gentoo Prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=" --without-local-dir"
|
||||
|
||||
econf \
|
||||
--with-modified-by=Gentoo-${PVR} \
|
||||
--enable-gui=no \
|
||||
--without-x \
|
||||
--disable-darwin \
|
||||
--disable-perlinterp \
|
||||
--disable-pythoninterp \
|
||||
--disable-rubyinterp \
|
||||
--disable-gpm \
|
||||
--disable-selinux \
|
||||
$(use_enable nls) \
|
||||
$(use_enable acl) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
emake tools
|
||||
}
|
||||
|
||||
src_test() { :; }
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
dodir /usr/{bin,share/{man/man1,vim}}
|
||||
emake -C src \
|
||||
installruntime \
|
||||
installmanlinks \
|
||||
installmacros \
|
||||
installtutor \
|
||||
installtutorbin \
|
||||
installtools \
|
||||
install-languages \
|
||||
DESTDIR="${D}" \
|
||||
BINDIR="${EPREFIX}"/usr/bin \
|
||||
MANDIR="${EPREFIX}"/usr/share/man \
|
||||
DATADIR="${EPREFIX}"/usr/share
|
||||
|
||||
keepdir ${vimfiles}/keymap
|
||||
|
||||
# default vimrc is installed by vim-core since it applies to
|
||||
# both vim and gvim
|
||||
insinto /etc/vim/
|
||||
newins "${FILESDIR}"/vimrc-r5 vimrc
|
||||
eprefixify "${ED}"/etc/vim/vimrc
|
||||
|
||||
if use minimal; then
|
||||
# To save space, install only a subset of the files.
|
||||
# Helps minimalize the livecd, bug 65144.
|
||||
eshopts_push -s extglob
|
||||
|
||||
rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die "rm failed"
|
||||
rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die "rm failed"
|
||||
rm -v "${ED}"/usr/bin/vimtutor || die "rm failed"
|
||||
|
||||
local keep_colors="default"
|
||||
ignore=$(rm -fr "${ED}${vimfiles}"/colors/!(${keep_colors}).vim )
|
||||
|
||||
local keep_syntax="conf|crontab|fstab|inittab|resolv|sshdconfig"
|
||||
# tinkering with the next line might make bad things happen ...
|
||||
keep_syntax="${keep_syntax}|syntax|nosyntax|synload"
|
||||
ignore=$(rm -fr "${ED}${vimfiles}"/syntax/!(${keep_syntax}).vim )
|
||||
|
||||
eshopts_pop
|
||||
fi
|
||||
|
||||
newbashcomp "${FILESDIR}"/xxd-completion xxd
|
||||
|
||||
# install gvim icon since both vim/gvim desktop files reference it
|
||||
doicon -s scalable "${FILESDIR}"/gvim.svg
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update icon cache
|
||||
gnome2_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update icon cache
|
||||
gnome2_icon_cache_update
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
|
|
@ -4,3 +4,4 @@ DIST vim-8.0.1699.tar.gz 13546105 BLAKE2B cabf29d5a89c55e2fe3bc5e39eb499412f5907
|
|||
DIST vim-8.1.0034.tar.gz 13652586 BLAKE2B 98dac6b37c04ea8c15f0b0e2e4145d6529138e0532e92751fd07be04a2180519135d386dfc19e7f12c8eb37b3e15ee81ba357680d453afab56d96299b69cb511 SHA512 b2b85035c6c60a09e903d8f6deb500e42ab8bfc2f9a5b959d0055a8e02dab3a91d5460fd5028e6634c5ef6ab034186b7155e341fa25e84b9851290708e892d19
|
||||
DIST vim-8.1.0412.tar.gz 13857501 BLAKE2B 6925184359b8b36cb546c9fcba4bb01755455aa87171ea7328ece411a5a5ced45096b8bef8561059bbff9a3ade565e0648fd18dd091d6faad0eb8a67321337a5 SHA512 3f458c039a636d7d3e398f8aa9cba4b4ae650c00038618c4776959b6feb0a1e3ac56be2912c3d85cba8e8f301661a62d71acd34a4dd75dc4dc000a94bf1b237e
|
||||
DIST vim-8.1.0648.tar.gz 14061964 BLAKE2B 79bf52d8574167471c93942904dc2b4ad5648ec365561494bbad45c779154b75b0fff1d90229516e938371f1eaa5808659cb2181b150c4c13bf8501bd9987b38 SHA512 d41676a6bb6bc442f4946ca021b2835d7ea0e54fbefe1bfc728241e1bf203cc696b707fcca6f25c877660283a790cefa4259fbd14de88fd4db7390701189c454
|
||||
DIST vim-8.1.1155.tar.gz 14141750 BLAKE2B f15470768fbdc4e02552b8711626c3ad9647ec5b74ebaa3f82a4f32c050405ef0cf3f29d1e5bdbb4de008bf16262b8cdc81ff153e2694a184523cd913624e8e0 SHA512 0cdc42090958f4c91c13aeeefac0abc4feaa629d8b90c04bd01d5e23efefe21e6316e1b2c3b6015ecf9577573faea9a1b6660de8a2959642e65582dbe9c7f5c6
|
||||
|
|
320
app-editors/vim/vim-8.1.1155.ebuild
Normal file
320
app-editors/vim/vim-8.1.1155.ebuild
Normal file
|
@ -0,0 +1,320 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
VIM_VERSION="8.1"
|
||||
PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby24 ruby25 ruby26"
|
||||
|
||||
inherit vim-doc flag-o-matic bash-completion-r1 python-single-r1 ruby-single desktop xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Vim, an improved vi-style text editor"
|
||||
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="vim"
|
||||
IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux tcl terminal vim-pager"
|
||||
REQUIRED_USE="
|
||||
luajit? ( lua )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
vim-pager? ( !minimal )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=app-eselect/eselect-vi-1.1
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
nls? ( virtual/libintl )
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
cscope? ( dev-util/cscope )
|
||||
gpm? ( >=sys-libs/gpm-1.19.3 )
|
||||
lua? (
|
||||
luajit? ( dev-lang/luajit:2= )
|
||||
!luajit? ( dev-lang/lua:0[deprecated] )
|
||||
)
|
||||
!minimal? ( ~app-editors/vim-core-${PV} )
|
||||
vim-pager? ( app-editors/vim-core[-minimal] )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
tcl? ( dev-lang/tcl:0= )
|
||||
X? ( x11-libs/libXt )
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
sys-devel/autoconf
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug 82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
# Gnome sandbox silliness. bug #114475.
|
||||
mkdir -p "${T}"/home || die "mkdir failed"
|
||||
export HOME="${T}"/home
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999* ]] ; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
eapply "${WORKDIR}"/patches/
|
||||
fi
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i -e \
|
||||
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug 29398 (27 Sep 2003 agriffis)
|
||||
sed -i -e \
|
||||
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
|
||||
# this is NeXT, but it's actually just a file in dev-libs/9libs
|
||||
# This fixes bug 43885 (20 Mar 2004 agriffis)
|
||||
sed -i -e \
|
||||
's/ libc\.h / /' \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# conditionally make the manpager.sh script
|
||||
if use vim-pager; then
|
||||
cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
|
||||
#!/bin/sh
|
||||
sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
|
||||
vim \\
|
||||
-c 'let no_plugin_maps = 1' \\
|
||||
-c 'set nolist nomod ft=man ts=8' \\
|
||||
-c 'let g:showmarks_enable=0' \\
|
||||
-c 'runtime! macros/less.vim' -
|
||||
_EOF_
|
||||
fi
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die "sed failed"
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
sed -i -e \
|
||||
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
|
||||
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=()
|
||||
|
||||
# Fix bug 37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
rm src/auto/configure || die "rm failed"
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e "${file}" ]]; then
|
||||
addwrite $file
|
||||
fi
|
||||
done
|
||||
|
||||
if use minimal; then
|
||||
myconf=(
|
||||
--with-features=tiny
|
||||
--disable-nls
|
||||
--disable-multibyte
|
||||
--disable-acl
|
||||
--enable-gui=no
|
||||
--without-x
|
||||
--disable-darwin
|
||||
--disable-luainterp
|
||||
--disable-perlinterp
|
||||
--disable-pythoninterp
|
||||
--disable-mzschemeinterp
|
||||
--disable-rubyinterp
|
||||
--disable-selinux
|
||||
--disable-tclinterp
|
||||
--disable-gpm
|
||||
)
|
||||
else
|
||||
use debug && append-flags "-DDEBUG"
|
||||
|
||||
myconf=(
|
||||
--with-features=huge
|
||||
--enable-multibyte
|
||||
$(use_enable acl)
|
||||
$(use_enable cscope)
|
||||
$(use_enable gpm)
|
||||
$(use_enable lua luainterp)
|
||||
$(usex lua "--with-lua-prefix=${EPREFIX}/usr" "")
|
||||
$(use_with luajit)
|
||||
$(use_enable nls)
|
||||
$(use_enable perl perlinterp)
|
||||
$(use_enable python pythoninterp)
|
||||
$(use_enable python python3interp)
|
||||
$(use_with python python-command $(type -P $(eselect python show --python2)))
|
||||
$(use_with python python3-command $(type -P $(eselect python show --python3)))
|
||||
$(use_enable racket mzschemeinterp)
|
||||
$(use_enable ruby rubyinterp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable tcl tclinterp)
|
||||
$(use_enable terminal)
|
||||
)
|
||||
|
||||
# --with-features=huge forces on cscope even if we --disable it. We need
|
||||
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
|
||||
if ! use cscope; then
|
||||
sed -i -e \
|
||||
'/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
|
||||
fi
|
||||
|
||||
# don't test USE=X here ... see bug #19115
|
||||
# but need to provide a way to link against X ... see bug #20093
|
||||
myconf+=(
|
||||
--enable-gui=no
|
||||
--disable-darwin
|
||||
$(use_with X x)
|
||||
)
|
||||
fi
|
||||
|
||||
# let package manager strip binaries
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# keep prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
econf \
|
||||
--with-modified-by=Gentoo-${PVR} \
|
||||
"${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The following allows emake to be used
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo
|
||||
einfo "Starting vim tests. Several error messages will be shown"
|
||||
einfo "while the tests run. This is normal behaviour and does not"
|
||||
einfo "indicate a fault."
|
||||
einfo
|
||||
ewarn "If the tests fail, your terminal may be left in a strange"
|
||||
ewarn "state. Usually, running 'reset' will fix this."
|
||||
einfo
|
||||
|
||||
# Don't let vim talk to X
|
||||
unset DISPLAY
|
||||
|
||||
emake -j1 -C src/testdir nongui
|
||||
}
|
||||
|
||||
# Call eselect vi update with --if-unset
|
||||
# to respect user's choice (bug 187449)
|
||||
eselect_vi_update() {
|
||||
einfo "Calling eselect vi update..."
|
||||
eselect vi update --if-unset
|
||||
eend $?
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
# Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
|
||||
# managed by eselect-vi
|
||||
dobin src/vim
|
||||
dosym vim /usr/bin/vimdiff
|
||||
dosym vim /usr/bin/rvim
|
||||
dosym vim /usr/bin/rview
|
||||
if use vim-pager ; then
|
||||
dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
|
||||
dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
|
||||
insinto ${vimfiles}/macros
|
||||
doins runtime/macros/manpager.sh
|
||||
fperms a+x ${vimfiles}/macros/manpager.sh
|
||||
fi
|
||||
|
||||
domenu runtime/vim.desktop
|
||||
|
||||
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
|
||||
|
||||
# keep in sync with 'complete ... -F' list
|
||||
bashcomp_alias vim ex vi view rvim rview vimdiff
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
|
||||
# update desktop file mime cache
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
|
||||
# update desktop file mime cache
|
||||
xdg_desktop_database_update
|
||||
}
|
|
@ -3,9 +3,9 @@
|
|||
|
||||
EAPI=6
|
||||
VIM_VERSION="8.1"
|
||||
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6,3_7} )
|
||||
PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby23 ruby24 ruby25"
|
||||
USE_RUBY="ruby24 ruby25 ruby26"
|
||||
|
||||
inherit vim-doc flag-o-matic bash-completion-r1 python-single-r1 ruby-single desktop xdg-utils
|
||||
|
||||
|
@ -27,6 +27,7 @@ IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby seli
|
|||
REQUIRED_USE="
|
||||
luajit? ( lua )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
vim-pager? ( !minimal )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
|
@ -40,10 +41,8 @@ RDEPEND="
|
|||
luajit? ( dev-lang/luajit:2= )
|
||||
!luajit? ( dev-lang/lua:0[deprecated] )
|
||||
)
|
||||
!minimal? (
|
||||
~app-editors/vim-core-${PV}
|
||||
dev-util/ctags
|
||||
)
|
||||
!minimal? ( ~app-editors/vim-core-${PV} )
|
||||
vim-pager? ( app-editors/vim-core[-minimal] )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
|
|
Binary file not shown.
|
@ -1 +1 @@
|
|||
DIST open-vm-tools-10.3.5-10430147.tar.gz 4623854 BLAKE2B a2bc0ed099cd713820aea17f01131fb4ffcdefedc04b2edb217b4a96c6c9a4007f8ecc80c40445580abffaf3fb0f67be3ca9f3df7a55d368109a53da91e0db77 SHA512 2f2b3d9a8d39b01904cf845936b51a468ba61a29ca64635f842451ca9fd90bf5a770967e4c332319327c6f920ac4fb06d304e185c18ab8898aeb4fcd491a4a1f
|
||||
DIST open-vm-tools-10.3.10-12406962.tar.gz 4625419 BLAKE2B 1cc3759740f1384e5ae53d3afb8e49e7546c078914ff8d2da12782cb19bcf513d4cd7a0650179eece6ed17fc29bcfc2fd67f629e1d02edeabaf09d401d7922b9 SHA512 fd35794896c2de5a3b6c7fad0e86558ae0f16c7ab09c791d0d9b8a61cff8052d3d5fcfd19613f793251050f86edda2335b29f49503b3fee41f48495b2ab80a0a
|
||||
|
|
|
@ -5,10 +5,6 @@
|
|||
<email>floppym@gentoo.org</email>
|
||||
<name>Mike Gilbert</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>vmware@gentoo.org</email>
|
||||
<name>Gentoo VMware Project</name>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
The Open Virtual Machine Tools (open-vm-tools) are the open source
|
||||
implementation of VMware Tools. They are a set of guest operating system
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 2007-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
@ -7,7 +7,7 @@ inherit autotools linux-info pam systemd toolchain-funcs user
|
|||
|
||||
DESCRIPTION="Opensourced tools for VMware guests"
|
||||
HOMEPAGE="https://github.com/vmware/open-vm-tools"
|
||||
MY_P="${P}-10430147"
|
||||
MY_P="${P}-12406962"
|
||||
SRC_URI="https://github.com/vmware/open-vm-tools/releases/download/stable-${PV}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
Binary file not shown.
|
@ -9,7 +9,7 @@ SRC_URI="mirror://gentoo/fontconfig.eselect-${PV}.bz2"
|
|||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=app-admin/eselect-1.2.3
|
||||
|
|
|
@ -1,35 +0,0 @@
|
|||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="gnat module for eselect"
|
||||
HOMEPAGE="https://www.gentoo.org"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc x86"
|
||||
|
||||
IUSE=""
|
||||
RDEPEND="app-admin/eselect"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
MODULEDIR="/usr/share/eselect/modules"
|
||||
|
||||
# NOTE!!
|
||||
# This path is duplicated in gnat-eselect module,
|
||||
# adjust in both locations!
|
||||
LIBDIR="/usr/share/gnat/lib"
|
||||
|
||||
src_install() {
|
||||
dodir ${MODULEDIR}
|
||||
insinto ${MODULEDIR}
|
||||
newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
|
||||
dodir ${LIBDIR}
|
||||
insinto ${LIBDIR}
|
||||
newins "${FILESDIR}"/gnat-common-${PVR}.bash gnat-common.bash
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="gnat module for eselect"
|
||||
HOMEPAGE="https://www.gentoo.org"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
|
||||
IUSE=""
|
||||
RDEPEND="app-admin/eselect"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
MODULEDIR="/usr/share/eselect/modules"
|
||||
|
||||
# NOTE!!
|
||||
# This path is duplicated in gnat-eselect module,
|
||||
# adjust in both locations!
|
||||
LIBDIR="/usr/share/gnat/lib"
|
||||
|
||||
src_install() {
|
||||
dodir ${MODULEDIR}
|
||||
insinto ${MODULEDIR}
|
||||
newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
|
||||
dodir ${LIBDIR}
|
||||
insinto ${LIBDIR}
|
||||
# !ATTN!
|
||||
# Make sure to adjust version of installed file to a proper one if there is
|
||||
# a change!
|
||||
newins "${FILESDIR}"/gnat-common-${PVR}.bash gnat-common.bash
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="gnat module for eselect"
|
||||
HOMEPAGE="https://www.gentoo.org"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
|
||||
IUSE=""
|
||||
RDEPEND="app-admin/eselect"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
MODULEDIR="/usr/share/eselect/modules"
|
||||
|
||||
# NOTE!!
|
||||
# This path is duplicated in gnat-eselect module,
|
||||
# adjust in both locations!
|
||||
LIBDIR="/usr/share/gnat/lib"
|
||||
|
||||
src_install() {
|
||||
dodir ${MODULEDIR}
|
||||
insinto ${MODULEDIR}
|
||||
newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
|
||||
dodir ${LIBDIR}
|
||||
insinto ${LIBDIR}
|
||||
# !ATTN!
|
||||
# Make sure to adjust version of installed file to a proper one if there is
|
||||
# a change!
|
||||
newins "${FILESDIR}"/gnat-common-1.3-r1.bash gnat-common.bash
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="gnat module for eselect"
|
||||
HOMEPAGE="https://www.gentoo.org"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~x86 ~sparc"
|
||||
|
||||
IUSE=""
|
||||
RDEPEND=">=app-admin/eselect-1.2.5"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
MODULEDIR="/usr/share/eselect/modules"
|
||||
|
||||
# NOTE!!
|
||||
# This path is duplicated in gnat-eselect module,
|
||||
# adjust in both locations!
|
||||
LIBDIR="/usr/share/gnat/lib"
|
||||
|
||||
src_install() {
|
||||
dodir ${MODULEDIR}
|
||||
insinto ${MODULEDIR}
|
||||
newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
|
||||
dodir ${LIBDIR}
|
||||
insinto ${LIBDIR}
|
||||
# !ATTN!
|
||||
# Make sure to adjust version of installed file to a proper one if there is
|
||||
# a change!
|
||||
newins "${FILESDIR}"/gnat-common-${PV}.bash gnat-common.bash
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="gnat module for eselect"
|
||||
HOMEPAGE="https://www.gentoo.org"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86 ~sparc"
|
||||
|
||||
IUSE=""
|
||||
RDEPEND=">=app-admin/eselect-1.2.5"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
MODULEDIR="/usr/share/eselect/modules"
|
||||
|
||||
# NOTE!!
|
||||
# This path is duplicated in gnat-eselect module,
|
||||
# adjust in both locations!
|
||||
LIBDIR="/usr/share/gnat/lib"
|
||||
|
||||
src_install() {
|
||||
dodir ${MODULEDIR}
|
||||
insinto ${MODULEDIR}
|
||||
newins "${FILESDIR}"/gnat.eselect-${PV} gnat.eselect
|
||||
dodir ${LIBDIR}
|
||||
insinto ${LIBDIR}
|
||||
# !ATTN!
|
||||
# Make sure to adjust version of installed file to a proper one if there is
|
||||
# a change!
|
||||
newins "${FILESDIR}"/gnat-common-1.4-r1.bash gnat-common.bash
|
||||
}
|
|
@ -1,222 +0,0 @@
|
|||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
#
|
||||
# Original Author: George Shapovalov <george@gentoo.org>
|
||||
# Purpose: Contains common vars/locations and functions for use by gnat.eclass,
|
||||
# gnat.eselect and gnatbuild.eclass.
|
||||
#
|
||||
# NOTE!!!
|
||||
# This code should just define vars (try to limit these!) and simple functions.
|
||||
# No bash extensions!!
|
||||
# That is, no portage or eclass constructs are allowed!
|
||||
#
|
||||
|
||||
|
||||
|
||||
# ----------------------------------
|
||||
# Globals
|
||||
|
||||
# Environmantal stuff (for env update)
|
||||
SPECSDIR="/usr/share/gnat/eselect"
|
||||
ENVDIR="/etc/env.d"
|
||||
MARKER="55gnat-"
|
||||
|
||||
# User configurable settings
|
||||
SETTINGSDIR="/etc/ada"
|
||||
PRIMELIST="${SETTINGSDIR}/primary_compilers"
|
||||
|
||||
## Lib install locations
|
||||
##
|
||||
## Gnat profile dependent files go under under ${LibTop}/${Gnat_Profile}/${PN}
|
||||
## and common files go unde SpecsDir, DataDir
|
||||
#PREFIX=/usr
|
||||
## Replace %LIBDIR% below with $(get_libdir) in eclasses and ebuilds (top level Ok, inherit multilib)
|
||||
## or $(profile2libdir ${profile}) in this code, eselect module or anywhere
|
||||
## outside portage (as profile will be available only during actual execution, this only should
|
||||
## be done inside corresponding functions).
|
||||
#AdalibSpecsDir=${PREFIX}/include/ada
|
||||
#AdalibDataDir=${PREFIX}/share/ada
|
||||
#AdalibLibTop=${PREFIX}/%LIBDIR%/ada
|
||||
|
||||
|
||||
# ------------------------------------
|
||||
# Helpers
|
||||
#
|
||||
|
||||
# get_all_profile_components splits gnat profile and returns pace separated list of its components:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu gcc 4.1
|
||||
# args:
|
||||
# $1 - the string to split
|
||||
get_all_profile_components() {
|
||||
local GnatSLOT=${1##*-}
|
||||
local remainder=${1%-*}
|
||||
local GnatPkg=${remainder##*-}
|
||||
remainder=${remainder%-gnat-*}
|
||||
echo "${remainder} ${GnatPkg} ${GnatSLOT}"
|
||||
}
|
||||
|
||||
# similar to above, returns only SLOT component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> 4.1
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_SLOT() {
|
||||
echo "${1##*-}"
|
||||
}
|
||||
|
||||
# returns only Pkg component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> gcc
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_Pkg() {
|
||||
local remainder=${1%-*}
|
||||
echo "${remainder##*-}"
|
||||
}
|
||||
|
||||
# returns only Arch component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_Arch() {
|
||||
echo ${1%-gnat-*}
|
||||
}
|
||||
|
||||
|
||||
|
||||
## -------------------------------------------
|
||||
# gnat profile and lib detection functions
|
||||
|
||||
|
||||
# create a list of all gnat env.d files
|
||||
# for now use trivial implementation - store name of active profile in the
|
||||
# env file name, so it gets called 55gnat-${ARCH}-${PN}-${SLOT}
|
||||
get_env_list() {
|
||||
for fn in ${ENVDIR}/${MARKER}*; do
|
||||
echo $(basename ${fn})
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
|
||||
# find all installed compilers and return a list
|
||||
find_all_compilers() {
|
||||
[[ ! -d ${SPECSDIR} ]] && exit
|
||||
for fn in ${SPECSDIR}/*; do
|
||||
[[ ! -d ${fn} ]] && echo $(basename ${fn});
|
||||
done
|
||||
}
|
||||
|
||||
# find installed primary compilers and return a list
|
||||
find_primary_compilers() {
|
||||
[[ ! -f ${PRIMELIST} ]] && exit
|
||||
for fn in $(cat ${PRIMELIST}); do
|
||||
[[ -f ${SPECSDIR}/${fn} ]] && echo ${fn};
|
||||
done
|
||||
}
|
||||
|
||||
# find installed libs and return a list
|
||||
find_all_libs() {
|
||||
[[ ! -d ${SPECSDIR} ]] && exit
|
||||
for fn in ${SPECSDIR}/*; do
|
||||
[[ -d ${fn} ]] && echo $(basename ${fn});
|
||||
done
|
||||
}
|
||||
|
||||
# find libs that have been built for a given profile
|
||||
# Arguments:
|
||||
# $1 - gnat profile for which to detect active libs
|
||||
find_libs4profile() {
|
||||
libs=( $(find_all_libs) )
|
||||
|
||||
for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
|
||||
[[ -f ${SPECSDIR}/${libs[$i]}/$1 ]] && echo "${libs[$i]}"
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
## -----------------------
|
||||
# main action - central part of do_set and helpers
|
||||
|
||||
|
||||
# extracts values of the passed var definition from given spec file
|
||||
# params:
|
||||
# $1: spec file (as generated by gnabuild.eclass)
|
||||
# $2: variable name
|
||||
get_var_from_spec() {
|
||||
local var=$(grep -e "^ *$2=" $1|cut -d= -f2)
|
||||
echo ${var}
|
||||
}
|
||||
|
||||
|
||||
# Cycle through given libs and form a ':' separated list of settings for the given
|
||||
# var. Returned string starts with ':' if there is any non-empty setting,
|
||||
# otherwise returns empty string. Repeating settings are omitted, that is
|
||||
# unique entry is added only first time it is encountered. No need to have some
|
||||
# common dir listed many times in PATH for example.
|
||||
#
|
||||
# params:
|
||||
# $1 - name of env var to process
|
||||
# $2 - name of gnat profile
|
||||
# $3.. - list of libs to check (to avoid its composition every time)
|
||||
# - the list is expanded to list of args at the point of call
|
||||
get_lib_var_settings() {
|
||||
local envVar=$1
|
||||
local toset=$2
|
||||
#echo "get_lib_var_settings params:$@" >> /tmp/eselect-gnat.rep
|
||||
if [[ "none" != ${3} ]]; then
|
||||
local envString
|
||||
local specLine
|
||||
while [[ -n $3 ]]; do
|
||||
specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
|
||||
#echo "$3:${specLine}." >> /tmp/eselect-gnat.rep
|
||||
if [[ -n ${specLine} ]] && [[ ! ${envString} =~ ${specLine} ]]; then
|
||||
envString="${envString}:${specLine}"
|
||||
fi
|
||||
shift
|
||||
done
|
||||
echo "${envString}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
||||
# The action!
|
||||
# Part common for do_set and do_update of gnat.eselect, also used in gnat.eclass
|
||||
# to set environment during lib build and installation
|
||||
#
|
||||
# params:
|
||||
# $1 - profile to set (toset param inside)
|
||||
# $2 - envfile
|
||||
|
||||
generate_envFile() {
|
||||
local toset=$1
|
||||
local envfile=$2
|
||||
|
||||
local binpath="$(get_var_from_spec ${SPECSDIR}/${toset} binpath)"
|
||||
local libexecpath="$(get_var_from_spec ${SPECSDIR}/${toset} libexecpath)"
|
||||
local libs=( $(find_libs4profile ${toset}) )
|
||||
#echo "generate_envFile: ${libs[@]}" >> /tmp/eselect-gnat.rep
|
||||
if (( 0 == ${#libs[@]} )); then
|
||||
libs="none"
|
||||
fi
|
||||
|
||||
local MyPath="${binpath}:${libexecpath}$(get_lib_var_settings PATH ${toset} ${libs[@]})"
|
||||
echo "PATH=${MyPath}" > "${envfile}"
|
||||
echo "ROOTPATH=${MyPath}" >> "${envfile}"
|
||||
echo "MANPATH=$(get_var_from_spec ${SPECSDIR}/${toset} manpath)$(get_lib_var_settings MANPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "INFOPATH=$(get_var_from_spec ${SPECSDIR}/${toset} infopath)$(get_lib_var_settings INFOPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
# the next three use the common base
|
||||
local libBase=$(get_var_from_spec ${SPECSDIR}/${toset} ldpath)
|
||||
echo "LDPATH=${libBase}:${libBase}/adalib$(get_lib_var_settings LDPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "ADA_INCLUDE_PATH=${libBase}/adainclude$(get_lib_var_settings ADA_INCLUDE_PATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "ADA_OBJECTS_PATH=${libBase}/adalib$(get_lib_var_settings ADA_OBJECTS_PATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
# ADA_PROJECT_PATH may not be set in any of the installed packages,
|
||||
# we should only create this line if cumulative var is non-empty
|
||||
My_ProjectPath=$(get_lib_var_settings ADA_PROJECT_PATH ${toset} ${libs[@]})
|
||||
if [[ -n ${My_ProjectPath} ]]; then
|
||||
echo "ADA_PROJECT_PATH=${My_ProjectPath}" >> "${envfile}"
|
||||
fi
|
||||
}
|
||||
|
|
@ -1,225 +0,0 @@
|
|||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
#
|
||||
# Author: George Shapovalov <george@gentoo.org>
|
||||
# Purpose: Contains common vars/locations and functions for use by gnat.eclass,
|
||||
# gnat.eselect and gnatbuild.eclass.
|
||||
#
|
||||
# NOTE!!!
|
||||
# This code should just define vars (try to limit these!) and simple functions.
|
||||
# No bash extensions!!
|
||||
# That is, no portage or eclass constructs are allowed!
|
||||
#
|
||||
|
||||
|
||||
|
||||
# ----------------------------------
|
||||
# Globals
|
||||
|
||||
# Environmantal stuff (for env update)
|
||||
SPECSDIR="/usr/share/gnat/eselect"
|
||||
ENVDIR="/etc/env.d"
|
||||
MARKER="55gnat-"
|
||||
|
||||
# User configurable settings
|
||||
SETTINGSDIR="/etc/ada"
|
||||
PRIMELIST="${SETTINGSDIR}/primary_compilers"
|
||||
|
||||
## Lib install locations
|
||||
##
|
||||
## Gnat profile dependent files go under under ${LibTop}/${Gnat_Profile}/${PN}
|
||||
## and common files go unde SpecsDir, DataDir
|
||||
#PREFIX=/usr
|
||||
## Replace %LIBDIR% below with $(get_libdir) in eclasses and ebuilds (top level Ok, inherit multilib)
|
||||
## or $(profile2libdir ${profile}) in this code, eselect module or anywhere
|
||||
## outside portage (as profile will be available only during actual execution, this only should
|
||||
## be done inside corresponding functions).
|
||||
#AdalibSpecsDir=${PREFIX}/include/ada
|
||||
#AdalibDataDir=${PREFIX}/share/ada
|
||||
#AdalibLibTop=${PREFIX}/%LIBDIR%/ada
|
||||
|
||||
|
||||
# ------------------------------------
|
||||
# Helpers
|
||||
#
|
||||
|
||||
# get_all_profile_components splits gnat profile and returns pace separated list of its components:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu gcc 4.1
|
||||
# args:
|
||||
# $1 - the string to split
|
||||
get_all_profile_components() {
|
||||
local GnatSLOT=${1##*-}
|
||||
local remainder=${1%-*}
|
||||
local GnatPkg=${remainder##*-}
|
||||
remainder=${remainder%-gnat-*}
|
||||
echo "${remainder} ${GnatPkg} ${GnatSLOT}"
|
||||
}
|
||||
|
||||
# similar to above, returns only SLOT component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> 4.1
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_SLOT() {
|
||||
echo "${1##*-}"
|
||||
}
|
||||
|
||||
# returns only Pkg component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> gcc
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_Pkg() {
|
||||
local remainder=${1%-*}
|
||||
echo "${remainder##*-}"
|
||||
}
|
||||
|
||||
# returns only Arch component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_Arch() {
|
||||
echo ${1%-gnat-*}
|
||||
}
|
||||
|
||||
|
||||
|
||||
## -------------------------------------------
|
||||
# gnat profile and lib detection functions
|
||||
|
||||
|
||||
# create a list of all gnat env.d files
|
||||
# for now use trivial implementation - store name of active profile in the
|
||||
# env file name, so it gets called 55gnat-${ARCH}-${PN}-${SLOT}
|
||||
get_env_list() {
|
||||
for fn in ${ENVDIR}/${MARKER}*; do
|
||||
echo $(basename ${fn})
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
|
||||
# find all installed compilers and return a list
|
||||
find_all_compilers() {
|
||||
[[ ! -d ${SPECSDIR} ]] && exit
|
||||
for fn in ${SPECSDIR}/*; do
|
||||
[[ ! -d ${fn} ]] && echo $(basename ${fn});
|
||||
done
|
||||
}
|
||||
|
||||
# find installed primary compilers and return a list
|
||||
find_primary_compilers() {
|
||||
[[ ! -f ${PRIMELIST} ]] && exit
|
||||
for fn in $(cat ${PRIMELIST}); do
|
||||
[[ -f ${SPECSDIR}/${fn} ]] && echo ${fn};
|
||||
done
|
||||
}
|
||||
|
||||
# find installed libs and return a list
|
||||
find_all_libs() {
|
||||
[[ ! -d ${SPECSDIR} ]] && exit
|
||||
for fn in ${SPECSDIR}/*; do
|
||||
[[ -d ${fn} ]] && echo $(basename ${fn});
|
||||
done
|
||||
}
|
||||
|
||||
# find libs that have been built for a given profile
|
||||
# Arguments:
|
||||
# $1 - gnat profile for which to detect active libs
|
||||
find_libs4profile() {
|
||||
libs=( $(find_all_libs) )
|
||||
|
||||
for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
|
||||
[[ -f ${SPECSDIR}/${libs[$i]}/$1 ]] && echo "${libs[$i]}"
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
## -----------------------
|
||||
# main action - central part of do_set and helpers
|
||||
|
||||
|
||||
# extracts values of the passed var definition from given spec file
|
||||
# params:
|
||||
# $1: spec file (as generated by gnabuild.eclass)
|
||||
# $2: variable name
|
||||
get_var_from_spec() {
|
||||
local var=$(grep -e "^ *$2=" $1|cut -d= -f2)
|
||||
echo ${var}
|
||||
}
|
||||
|
||||
|
||||
# Cycle through given libs and form a ':' separated list of settings for the given
|
||||
# var. Repeating settings are omitted, that is unique entry is added only first
|
||||
# time it is encountered.
|
||||
#
|
||||
# params:
|
||||
# $1 - name of env var to process
|
||||
# $2 - name of gnat profile
|
||||
# $3.. - list of libs to check (to avoid its composition every time)
|
||||
# - the list is expanded to list of args at the point of call
|
||||
get_lib_var_settings() {
|
||||
local envVar=$1
|
||||
local toset=$2
|
||||
#echo "get_lib_var_settings params:$@" >> /tmp/eselect-gnat.rep
|
||||
if [[ "none" != ${3} ]]; then
|
||||
local envString
|
||||
local specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
|
||||
if [[ -n ${specLine} ]]; then
|
||||
envString="${specLine}"
|
||||
fi
|
||||
shift
|
||||
#
|
||||
while [[ -n $3 ]]; do
|
||||
specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
|
||||
#echo "$3:${specLine}." >> /tmp/eselect-gnat.rep
|
||||
if [[ -n ${specLine} ]] && [[ ! ${envString} =~ ${specLine} ]]; then
|
||||
envString="${envString}:${specLine}"
|
||||
fi
|
||||
shift
|
||||
done
|
||||
echo "${envString}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
||||
# The action!
|
||||
# Part common for do_set and do_update of gnat.eselect, also used in gnat.eclass
|
||||
# to set environment during lib build and installation
|
||||
#
|
||||
# params:
|
||||
# $1 - profile to set (toset param inside)
|
||||
# $2 - envfile
|
||||
|
||||
generate_envFile() {
|
||||
local toset=$1
|
||||
local envfile=$2
|
||||
|
||||
local binpath="$(get_var_from_spec ${SPECSDIR}/${toset} binpath)"
|
||||
local libexecpath="$(get_var_from_spec ${SPECSDIR}/${toset} libexecpath)"
|
||||
local libs=( $(find_libs4profile ${toset}) )
|
||||
#echo "generate_envFile: ${libs[@]}" >> /tmp/eselect-gnat.rep
|
||||
if (( 0 == ${#libs[@]} )); then
|
||||
libs="none"
|
||||
fi
|
||||
|
||||
local MyPath="${binpath}:${libexecpath}:$(get_lib_var_settings PATH ${toset} ${libs[@]})"
|
||||
echo "PATH=${MyPath}" > "${envfile}"
|
||||
echo "ROOTPATH=${MyPath}" >> "${envfile}"
|
||||
echo "MANPATH=$(get_var_from_spec ${SPECSDIR}/${toset} manpath):$(get_lib_var_settings MANPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "INFOPATH=$(get_var_from_spec ${SPECSDIR}/${toset} infopath):$(get_lib_var_settings INFOPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
# the next three use the common base
|
||||
local libBase=$(get_var_from_spec ${SPECSDIR}/${toset} ldpath)
|
||||
echo "LDPATH=${libBase}:${libBase}/adalib:$(get_lib_var_settings LDPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "ADA_INCLUDE_PATH=${libBase}/adainclude:$(get_lib_var_settings ADA_INCLUDE_PATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "ADA_OBJECTS_PATH=${libBase}/adalib:$(get_lib_var_settings ADA_OBJECTS_PATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
# ADA_PROJECT_PATH may not be set in any of the installed packages,
|
||||
# we should only create this line if cumulative var is non-empty
|
||||
My_ProjectPath=$(get_lib_var_settings ADA_PROJECT_PATH ${toset} ${libs[@]})
|
||||
if [[ -n ${My_ProjectPath} ]]; then
|
||||
echo "ADA_PROJECT_PATH=${My_ProjectPath}" >> "${envfile}"
|
||||
fi
|
||||
}
|
||||
|
|
@ -1,225 +0,0 @@
|
|||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
#
|
||||
# Author: George Shapovalov <george@gentoo.org>
|
||||
# Purpose: Contains common vars/locations and functions for use by gnat.eclass,
|
||||
# gnat.eselect and gnatbuild.eclass.
|
||||
#
|
||||
# NOTE!!!
|
||||
# This code should just define vars (try to limit these!) and simple functions.
|
||||
# No bash extensions!!
|
||||
# That is, no portage or eclass constructs are allowed!
|
||||
#
|
||||
|
||||
|
||||
|
||||
# ----------------------------------
|
||||
# Globals
|
||||
|
||||
# Environmantal stuff (for env update)
|
||||
SPECSDIR="/usr/share/gnat/eselect"
|
||||
ENVDIR="/etc/env.d"
|
||||
MARKER="55gnat-"
|
||||
|
||||
# User configurable settings
|
||||
SETTINGSDIR="/etc/ada"
|
||||
PRIMELIST="${SETTINGSDIR}/primary_compilers"
|
||||
|
||||
## Lib install locations
|
||||
##
|
||||
## Gnat profile dependent files go under under ${LibTop}/${Gnat_Profile}/${PN}
|
||||
## and common files go unde SpecsDir, DataDir
|
||||
#PREFIX=/usr
|
||||
## Replace %LIBDIR% below with $(get_libdir) in eclasses and ebuilds (top level Ok, inherit multilib)
|
||||
## or $(profile2libdir ${profile}) in this code, eselect module or anywhere
|
||||
## outside portage (as profile will be available only during actual execution, this only should
|
||||
## be done inside corresponding functions).
|
||||
#AdalibSpecsDir=${PREFIX}/include/ada
|
||||
#AdalibDataDir=${PREFIX}/share/ada
|
||||
#AdalibLibTop=${PREFIX}/%LIBDIR%/ada
|
||||
|
||||
|
||||
# ------------------------------------
|
||||
# Helpers
|
||||
#
|
||||
|
||||
# get_all_profile_components splits gnat profile and returns pace separated list of its components:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu gcc 4.1
|
||||
# args:
|
||||
# $1 - the string to split
|
||||
get_all_profile_components() {
|
||||
local GnatSLOT=${1##*-}
|
||||
local remainder=${1%-*}
|
||||
local GnatPkg=${remainder##*-}
|
||||
remainder=${remainder%-gnat-*}
|
||||
echo "${remainder} ${GnatPkg} ${GnatSLOT}"
|
||||
}
|
||||
|
||||
# similar to above, returns only SLOT component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> 4.1
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_SLOT() {
|
||||
echo "${1##*-}"
|
||||
}
|
||||
|
||||
# returns only Pkg component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> gcc
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_Pkg() {
|
||||
local remainder=${1%-*}
|
||||
echo "${remainder##*-}"
|
||||
}
|
||||
|
||||
# returns only Arch component:
|
||||
# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu
|
||||
# args:
|
||||
# $1 - the string to extract the slot from
|
||||
get_gnat_Arch() {
|
||||
echo ${1%-gnat-*}
|
||||
}
|
||||
|
||||
|
||||
|
||||
## -------------------------------------------
|
||||
# gnat profile and lib detection functions
|
||||
|
||||
|
||||
# create a list of all gnat env.d files
|
||||
# for now use trivial implementation - store name of active profile in the
|
||||
# env file name, so it gets called 55gnat-${ARCH}-${PN}-${SLOT}
|
||||
get_env_list() {
|
||||
for fn in ${ENVDIR}/${MARKER}*; do
|
||||
echo $(basename ${fn})
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
|
||||
# find all installed compilers and return a list
|
||||
find_all_compilers() {
|
||||
[[ ! -d ${SPECSDIR} ]] && exit
|
||||
for fn in ${SPECSDIR}/*; do
|
||||
[[ ! -d ${fn} ]] && echo $(basename ${fn});
|
||||
done
|
||||
}
|
||||
|
||||
# find installed primary compilers and return a list
|
||||
find_primary_compilers() {
|
||||
[[ ! -f ${PRIMELIST} ]] && exit
|
||||
for fn in $(cat ${PRIMELIST}); do
|
||||
[[ -f ${SPECSDIR}/${fn} ]] && echo ${fn};
|
||||
done
|
||||
}
|
||||
|
||||
# find installed libs and return a list
|
||||
find_all_libs() {
|
||||
[[ ! -d ${SPECSDIR} ]] && exit
|
||||
for fn in ${SPECSDIR}/*; do
|
||||
[[ -d ${fn} ]] && echo $(basename ${fn});
|
||||
done
|
||||
}
|
||||
|
||||
# find libs that have been built for a given profile
|
||||
# Arguments:
|
||||
# $1 - gnat profile for which to detect active libs
|
||||
find_libs4profile() {
|
||||
libs=( $(find_all_libs) )
|
||||
|
||||
for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
|
||||
[[ -f ${SPECSDIR}/${libs[$i]}/$1 ]] && echo "${libs[$i]}"
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
## -----------------------
|
||||
# main action - central part of do_set and helpers
|
||||
|
||||
|
||||
# extracts values of the passed var definition from given spec file
|
||||
# params:
|
||||
# $1: spec file (as generated by gnabuild.eclass)
|
||||
# $2: variable name
|
||||
get_var_from_spec() {
|
||||
local var=$(grep -e "^ *$2=" $1|cut -d= -f2)
|
||||
echo ${var}
|
||||
}
|
||||
|
||||
|
||||
# Cycle through given libs and form a ':' separated list of settings for the given
|
||||
# var. Repeating settings are omitted, that is unique entry is added only first
|
||||
# time it is encountered.
|
||||
#
|
||||
# params:
|
||||
# $1 - name of env var to process
|
||||
# $2 - name of gnat profile
|
||||
# $3.. - list of libs to check (to avoid its composition every time)
|
||||
# - the list is expanded to list of args at the point of call
|
||||
get_lib_var_settings() {
|
||||
local envVar=$1
|
||||
local toset=$2
|
||||
#echo "get_lib_var_settings params:$@" >> /tmp/eselect-gnat.rep
|
||||
if [[ "none" != ${3} ]]; then
|
||||
local envString
|
||||
local specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
|
||||
if [[ -n ${specLine} ]]; then
|
||||
envString="${specLine}"
|
||||
fi
|
||||
shift
|
||||
#
|
||||
while [[ -n $3 ]]; do
|
||||
specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar})
|
||||
#echo "$3:${specLine}." >> /tmp/eselect-gnat.rep
|
||||
if [[ -n ${specLine} ]] && [[ ! ${envString} =~ ${specLine} ]]; then
|
||||
envString="${envString}:${specLine}"
|
||||
fi
|
||||
shift
|
||||
done
|
||||
echo "${envString}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
||||
# The action!
|
||||
# Part common for do_set and do_update of gnat.eselect, also used in gnat.eclass
|
||||
# to set environment during lib build and installation
|
||||
#
|
||||
# params:
|
||||
# $1 - profile to set (toset param inside)
|
||||
# $2 - envfile
|
||||
|
||||
generate_envFile() {
|
||||
local toset=$1
|
||||
local envfile=$2
|
||||
|
||||
local binpath="$(get_var_from_spec ${SPECSDIR}/${toset} binpath)"
|
||||
local libexecpath="$(get_var_from_spec ${SPECSDIR}/${toset} libexecpath)"
|
||||
local libs=( $(find_libs4profile ${toset}) )
|
||||
#echo "generate_envFile: ${libs[@]}" >> /tmp/eselect-gnat.rep
|
||||
if (( 0 == ${#libs[@]} )); then
|
||||
libs="none"
|
||||
fi
|
||||
|
||||
local MyPath="${binpath}:${libexecpath}:$(get_lib_var_settings PATH ${toset} ${libs[@]})"
|
||||
echo "PATH=${MyPath}" > "${envfile}"
|
||||
echo "ROOTPATH=${MyPath}" >> "${envfile}"
|
||||
echo "MANPATH=$(get_var_from_spec ${SPECSDIR}/${toset} manpath):$(get_lib_var_settings MANPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "INFOPATH=$(get_var_from_spec ${SPECSDIR}/${toset} infopath):$(get_lib_var_settings INFOPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
# the next three use the common base
|
||||
local libBase=$(get_var_from_spec ${SPECSDIR}/${toset} ldpath)
|
||||
echo "LDPATH=${libBase}:${libBase}/adalib:$(get_lib_var_settings LDPATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "ADA_INCLUDE_PATH=${libBase}/adainclude:$(get_lib_var_settings ADA_INCLUDE_PATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
echo "ADA_OBJECTS_PATH=${libBase}/adalib:$(get_lib_var_settings ADA_OBJECTS_PATH ${toset} ${libs[@]})" >> "${envfile}"
|
||||
# ADA_PROJECT_PATH may not be set in any of the installed packages,
|
||||
# we should only create this line if cumulative var is non-empty
|
||||
My_ProjectPath=$(get_lib_var_settings ADA_PROJECT_PATH ${toset} ${libs[@]})
|
||||
if [[ -n ${My_ProjectPath} ]]; then
|
||||
echo "ADA_PROJECT_PATH=${My_ProjectPath}" >> "${envfile}"
|
||||
fi
|
||||
}
|
||||
|
|
@ -1,206 +0,0 @@
|
|||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
DESCRIPTION="Manage the installed gnat compilers"
|
||||
MAINTAINER="ada@gentoo.org"
|
||||
SVN_DATE='$Date: 2015/03/31 16:48:57 $'
|
||||
VERSION=$(svn_date_to_version "${SVN_DATE}" )
|
||||
|
||||
# "inheriting" common stuff
|
||||
# this crude sourcing has to stay the way it is, as common code
|
||||
# cannot be part of some eclass (bug #192505)
|
||||
. /usr/share/gnat/lib/gnat-common.bash
|
||||
|
||||
|
||||
### Phylosophy
|
||||
# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR}
|
||||
# Each lib creates a dir with its name under ${SPECSDIR} and populates it with
|
||||
# similar specs files (same name scheme)
|
||||
# Recognizing gnat specs from lib specs is then eazy - test entry for being a
|
||||
# dir, then just check what gnat profiles are installed for each lib..
|
||||
# doset then creates env file that combines settings for gnat and for the
|
||||
# corresponding profile of each installed lib..
|
||||
|
||||
|
||||
### Helpers
|
||||
|
||||
# return *the* name of the active profile, checking that we do not have multiple
|
||||
# env files.
|
||||
# There can be only one!
|
||||
get_current_gnat() {
|
||||
local profiles=( $(get_env_list) )
|
||||
|
||||
if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi
|
||||
|
||||
if (( 1 == ${#profiles[@]} )); then
|
||||
local active=${profiles[0]#${MARKER}}
|
||||
else
|
||||
die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!"
|
||||
fi
|
||||
|
||||
if [ -f ${SPECSDIR}/${active} ]; then
|
||||
echo ${active}
|
||||
else
|
||||
die -q "the active env.d profile does not correspond to any installed gnat!"
|
||||
fi
|
||||
}
|
||||
|
||||
# check if the passed arg represents the installed gnat and return it or
|
||||
# not_found
|
||||
# takes args:
|
||||
# $1 - list ID to check
|
||||
get_name_from_list() {
|
||||
compiler=$1
|
||||
|
||||
compilers=( $(find_all_compilers) )
|
||||
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
|
||||
if [[ ${compilers[$i]} == ${compiler} ]] ; then
|
||||
echo ${compiler}
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
echo "(not-found)"
|
||||
}
|
||||
|
||||
|
||||
# removes env files (for compiler and libs)
|
||||
# params:
|
||||
# $1: the name of profile for which to remove env file
|
||||
unset_env() {
|
||||
rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null
|
||||
}
|
||||
|
||||
|
||||
### show action ###
|
||||
|
||||
describe_show() {
|
||||
echo "Show the active gnat compiler/profile and installed libs"
|
||||
}
|
||||
|
||||
do_show() {
|
||||
write_list_start "Current gnat version:"
|
||||
active=$(get_current_gnat)
|
||||
if [ ! -z ${active} ] ; then # not sure why [ -n ] does not do the same
|
||||
write_kv_list_entry "$active" ""
|
||||
libs=( $(find_libs4profile ${active}) )
|
||||
write_list_start "Active libs:"
|
||||
write_numbered_list "${libs[@]}"
|
||||
else
|
||||
write_kv_list_entry "(none set)" ""
|
||||
fi
|
||||
}
|
||||
|
||||
### list action ###
|
||||
|
||||
describe_list() {
|
||||
echo "List installed gnat compilers and libs"
|
||||
}
|
||||
|
||||
do_list() {
|
||||
compilers=( $(find_all_compilers ) )
|
||||
active=$(get_current_gnat)
|
||||
|
||||
write_list_start "Available gnat compilers:"
|
||||
|
||||
if [[ -n ${compilers[@]} ]] ; then
|
||||
local i
|
||||
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
|
||||
linkversion=${compilers[${i}]}
|
||||
|
||||
[[ $linkversion == $active ]] && \
|
||||
compilers[${i}]="${compilers[${i}]} $(highlight '*' )"
|
||||
done
|
||||
write_numbered_list "${compilers[@]}"
|
||||
|
||||
# now the libs
|
||||
libs=( $(find_all_libs) )
|
||||
write_list_start "Installed libs:"
|
||||
for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
|
||||
[ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \
|
||||
libs[${i}]="${libs[${i}]} $(highlight '*' )"
|
||||
done
|
||||
write_numbered_list "${libs[@]}"
|
||||
else
|
||||
write_kv_list_entry "(none found)" ""
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
### set action ###
|
||||
|
||||
describe_set() {
|
||||
echo "Set active gnat compiler"
|
||||
}
|
||||
|
||||
# The set action. Parameters:
|
||||
# $1 - name of profile to set, obligatory, passed by eselect
|
||||
# $2 - optional, name of env file to generate. Used from gnat.eclass.
|
||||
do_set() {
|
||||
if [[ -z ${1} ]] ; then
|
||||
# no parameter
|
||||
die -q "You didn't tell me which gnat to use"
|
||||
fi
|
||||
|
||||
local toset=$(get_name_from_list $1)
|
||||
if [[ ${toset} == "(not-found)" ]] ; then
|
||||
die -q "I don't recognise the selection"
|
||||
fi
|
||||
|
||||
# the action!
|
||||
# in this implementation simply create an appropriate env file
|
||||
local active=$(get_current_gnat)
|
||||
if [[ -z ${2} ]] ; then
|
||||
local envfile="${ENVDIR}/${MARKER}${toset}"
|
||||
|
||||
# now we need to remove an old env file, which is guaranteed to
|
||||
# be unique by get_current_gnat above
|
||||
if [[ -n ${active} ]] ; then
|
||||
unset_env ${active}
|
||||
fi
|
||||
# just for a good measure remove the one we are going to write
|
||||
unset_env ${toset}
|
||||
else
|
||||
local envfile="$2"
|
||||
fi
|
||||
|
||||
generate_envFile ${toset} ${envfile}
|
||||
|
||||
# force update environment
|
||||
# should be replaced with "do_action env update" when #172472 gets resolved
|
||||
env-update &> /dev/null
|
||||
}
|
||||
|
||||
|
||||
|
||||
### update action ###
|
||||
#
|
||||
# This action regenerates the /etc/env.d file for the current profile. Basically
|
||||
# the same as set, only it does not take any parameters. It should be called from ebuilds
|
||||
# installing Ada libs
|
||||
|
||||
describe_update() {
|
||||
echo "Update active gnat profile picking up new libs."
|
||||
}
|
||||
|
||||
do_update() {
|
||||
local toset=$(get_current_gnat)
|
||||
local envfile="${ENVDIR}/${MARKER}${toset}"
|
||||
generate_envFile ${toset} ${envfile}
|
||||
do_action env update &> /dev/null
|
||||
}
|
||||
|
||||
### unset action ###
|
||||
|
||||
describe_unset() {
|
||||
echo "Remove settings for currently active gnat"
|
||||
}
|
||||
|
||||
do_unset() {
|
||||
local active=$(get_current_gnat)
|
||||
# check whether we have any profile set before removing anything..
|
||||
if [[ -n ${active} ]] ; then
|
||||
unset_env ${active}
|
||||
do_action env update &> /dev/null
|
||||
fi
|
||||
}
|
|
@ -1,229 +0,0 @@
|
|||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
DESCRIPTION="Manage the installed gnat compilers"
|
||||
MAINTAINER="ada@gentoo.org"
|
||||
SVN_DATE='$Date: 2015/03/31 16:48:57 $'
|
||||
VERSION=$(svn_date_to_version "${SVN_DATE}" )
|
||||
|
||||
# "inheriting" common stuff
|
||||
# this crude sourcing has to stay the way it is, as common code
|
||||
# cannot be part of some eclass (bug #192505)
|
||||
. /usr/share/gnat/lib/gnat-common.bash
|
||||
|
||||
|
||||
### Phylosophy
|
||||
# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR}
|
||||
# Each lib creates a dir with its name under ${SPECSDIR} and populates it with
|
||||
# similar specs files (same name scheme)
|
||||
# Recognizing gnat specs from lib specs is then eazy - test entry for being a
|
||||
# dir, then just check what gnat profiles are installed for each lib..
|
||||
# doset then creates env file that combines settings for gnat and for the
|
||||
# corresponding profile of each installed lib..
|
||||
|
||||
|
||||
### Helpers
|
||||
|
||||
# return *the* name of the active profile, checking that we do not have multiple
|
||||
# env files.
|
||||
# There can be only one!
|
||||
get_current_gnat() {
|
||||
local profiles=( $(get_env_list) )
|
||||
|
||||
if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi
|
||||
|
||||
if (( 1 == ${#profiles[@]} )); then
|
||||
local active=${profiles[0]#${MARKER}}
|
||||
else
|
||||
die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!"
|
||||
fi
|
||||
|
||||
echo ${active}
|
||||
# disabling this check, as we want to use get_current_gnat with empty profile
|
||||
# as an indication that last gnat in SLOT was removed
|
||||
# if [ -f ${SPECSDIR}/${active} ]; then
|
||||
# echo ${active}
|
||||
# else
|
||||
# die -q "the active env.d profile does not correspond to any installed gnat!"
|
||||
# fi
|
||||
}
|
||||
|
||||
# validity check that was removed from get_current_gnat, in case we need it
|
||||
# somewhere..
|
||||
# Arguments:
|
||||
# $1 - name of the gnat profiel to check
|
||||
profile_is_valid() {
|
||||
if [[ -n $1 ]] ; then
|
||||
[[ -f ${SPECSDIR}/$1 ]] || return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# check if the passed arg represents the installed gnat and return it or
|
||||
# not_found
|
||||
# takes args:
|
||||
# $1 - list ID to check
|
||||
get_name_from_list() {
|
||||
compiler=$1
|
||||
|
||||
compilers=( $(find_all_compilers) )
|
||||
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
|
||||
if [[ ${compilers[$i]} == ${compiler} ]] ; then
|
||||
echo ${compiler}
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
echo "(not-found)"
|
||||
}
|
||||
|
||||
|
||||
# removes env files (for compiler and libs)
|
||||
# params:
|
||||
# $1: the name of profile for which to remove env file
|
||||
unset_env() {
|
||||
rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null
|
||||
}
|
||||
|
||||
|
||||
### show action ###
|
||||
|
||||
describe_show() {
|
||||
echo "Show the active gnat compiler/profile and installed libs"
|
||||
}
|
||||
|
||||
do_show() {
|
||||
active=$(get_current_gnat)
|
||||
if $(profile_is_valid ${active}); then
|
||||
write_list_start "Current gnat version:"
|
||||
if [[ -n ${active} ]] ; then
|
||||
write_kv_list_entry "$active" ""
|
||||
libs=( $(find_libs4profile ${active}) )
|
||||
write_list_start "Active libs:"
|
||||
write_numbered_list "${libs[@]}"
|
||||
else
|
||||
write_kv_list_entry "(none set)" ""
|
||||
fi
|
||||
else
|
||||
write_error_msg "The active profile in ${ENVDIR} is not valid! Please set a valid profile!"
|
||||
fi
|
||||
}
|
||||
|
||||
### list action ###
|
||||
|
||||
describe_list() {
|
||||
echo "List installed gnat compilers and libs"
|
||||
}
|
||||
|
||||
do_list() {
|
||||
compilers=( $(find_all_compilers ) )
|
||||
active=$(get_current_gnat)
|
||||
|
||||
write_list_start "Available gnat compilers:"
|
||||
|
||||
if [[ -n ${compilers[@]} ]] ; then
|
||||
local i
|
||||
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
|
||||
linkversion=${compilers[${i}]}
|
||||
|
||||
[[ $linkversion == $active ]] && \
|
||||
compilers[${i}]="${compilers[${i}]} $(highlight '*' )"
|
||||
done
|
||||
write_numbered_list "${compilers[@]}"
|
||||
|
||||
# now the libs
|
||||
libs=( $(find_all_libs) )
|
||||
write_list_start "Installed libs:"
|
||||
for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
|
||||
[ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \
|
||||
libs[${i}]="${libs[${i}]} $(highlight '*' )"
|
||||
done
|
||||
write_numbered_list "${libs[@]}"
|
||||
else
|
||||
write_kv_list_entry "(none found)" ""
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
### set action ###
|
||||
|
||||
describe_set() {
|
||||
echo "Set active gnat compiler"
|
||||
}
|
||||
|
||||
# The set action. Parameters:
|
||||
# $1 - name of profile to set, obligatory, passed by eselect
|
||||
# $2 - optional, name of env file to generate. Used from gnat.eclass.
|
||||
do_set() {
|
||||
if [[ -z ${1} ]] ; then
|
||||
# no parameter
|
||||
die -q "You didn't tell me which gnat to use"
|
||||
fi
|
||||
|
||||
local toset=$(get_name_from_list $1)
|
||||
if [[ ${toset} == "(not-found)" ]] ; then
|
||||
die -q "I don't recognise the selection"
|
||||
fi
|
||||
|
||||
# the action!
|
||||
# in this implementation simply create an appropriate env file
|
||||
local active=$(get_current_gnat)
|
||||
if [[ -z ${2} ]] ; then
|
||||
local envfile="${ENVDIR}/${MARKER}${toset}"
|
||||
|
||||
# now we need to remove an old env file, which is guaranteed to
|
||||
# be unique by get_current_gnat above
|
||||
if [[ -n ${active} ]] ; then
|
||||
unset_env ${active}
|
||||
fi
|
||||
# just for a good measure remove the one we are going to write
|
||||
unset_env ${toset}
|
||||
else
|
||||
local envfile="$2"
|
||||
fi
|
||||
|
||||
generate_envFile ${toset} ${envfile}
|
||||
|
||||
# force update environment
|
||||
# should be replaced with "do_action env update" when #172472 gets resolved
|
||||
env-update &> /dev/null
|
||||
}
|
||||
|
||||
|
||||
|
||||
### update action ###
|
||||
#
|
||||
# This action regenerates the /etc/env.d file for the current profile. Basically
|
||||
# the same as set, only it does not take any parameters. It should be called from ebuilds
|
||||
# installing Ada libs or in the pkg_postrm in gnatbuild.eclass, to clean up the
|
||||
# profile if last gnat in SLOT was removed.
|
||||
|
||||
describe_update() {
|
||||
echo "Update active gnat profile picking up new libs."
|
||||
}
|
||||
|
||||
do_update() {
|
||||
local toset=$(get_current_gnat)
|
||||
local envfile="${ENVDIR}/${MARKER}${toset}"
|
||||
# now check whether to update or unset the profile
|
||||
if $(profile_is_valid ${toset}); then
|
||||
generate_envFile ${toset} ${envfile}
|
||||
else
|
||||
unset_env ${toset}
|
||||
fi
|
||||
do_action env update &> /dev/null
|
||||
}
|
||||
|
||||
### unset action ###
|
||||
|
||||
describe_unset() {
|
||||
echo "Remove settings for currently active gnat"
|
||||
}
|
||||
|
||||
do_unset() {
|
||||
local active=$(get_current_gnat)
|
||||
# check whether we have any profile set before removing anything..
|
||||
if [[ -n ${active} ]] ; then
|
||||
unset_env ${active}
|
||||
do_action env update &> /dev/null
|
||||
fi
|
||||
}
|
|
@ -1,225 +0,0 @@
|
|||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
DESCRIPTION="Manage the installed gnat compilers"
|
||||
MAINTAINER="ada@gentoo.org"
|
||||
SVN_DATE='$Date: 2015/03/31 16:48:57 $'
|
||||
VERSION=$(svn_date_to_version "${SVN_DATE}" )
|
||||
|
||||
# "inheriting" common stuff
|
||||
# this crude sourcing has to stay the way it is, as common code
|
||||
# cannot be part of some eclass (bug #192505)
|
||||
. /usr/share/gnat/lib/gnat-common.bash
|
||||
|
||||
|
||||
### Phylosophy
|
||||
# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR}
|
||||
# Each lib creates a dir with its name under ${SPECSDIR} and populates it with
|
||||
# similar specs files (same name scheme)
|
||||
# Recognizing gnat specs from lib specs is then eazy - test entry for being a
|
||||
# dir, then just check what gnat profiles are installed for each lib..
|
||||
# doset then creates env file that combines settings for gnat and for the
|
||||
# corresponding profile of each installed lib..
|
||||
|
||||
|
||||
### Helpers
|
||||
|
||||
# return *the* name of the active profile, checking that we do not have multiple
|
||||
# env files.
|
||||
# There can be only one!
|
||||
get_current_gnat() {
|
||||
local profiles=( $(get_env_list) )
|
||||
|
||||
if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi
|
||||
|
||||
if (( 1 == ${#profiles[@]} )); then
|
||||
local active=${profiles[0]#${MARKER}}
|
||||
else
|
||||
die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!"
|
||||
fi
|
||||
|
||||
echo ${active}
|
||||
# disabling this check, as we want to use get_current_gnat with empty profile
|
||||
# as an indication that last gnat in SLOT was removed
|
||||
# if [ -f ${SPECSDIR}/${active} ]; then
|
||||
# echo ${active}
|
||||
# else
|
||||
# die -q "the active env.d profile does not correspond to any installed gnat!"
|
||||
# fi
|
||||
}
|
||||
|
||||
# validity check that was removed from get_current_gnat, in case we need it
|
||||
# somewhere..
|
||||
# Arguments:
|
||||
# $1 - name of the gnat profiel to check
|
||||
profile_is_valid() {
|
||||
if [[ -n $1 ]] ; then
|
||||
[[ -f ${SPECSDIR}/$1 ]] || return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# check if the passed arg represents the installed gnat and return it or
|
||||
# not_found
|
||||
# takes args:
|
||||
# $1 - list ID to check
|
||||
get_name_from_list() {
|
||||
compiler=$1
|
||||
|
||||
compilers=( $(find_all_compilers) )
|
||||
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
|
||||
if [[ ${compilers[$i]} == ${compiler} ]] ; then
|
||||
echo ${compiler}
|
||||
return
|
||||
fi
|
||||
done
|
||||
|
||||
echo "(not-found)"
|
||||
}
|
||||
|
||||
|
||||
# removes env files (for compiler and libs)
|
||||
# params:
|
||||
# $1: the name of profile for which to remove env file
|
||||
unset_env() {
|
||||
rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null
|
||||
}
|
||||
|
||||
|
||||
### show action ###
|
||||
|
||||
describe_show() {
|
||||
echo "Show the active gnat compiler/profile and installed libs"
|
||||
}
|
||||
|
||||
do_show() {
|
||||
active=$(get_current_gnat)
|
||||
if $(profile_is_valid ${active}); then
|
||||
write_list_start "Current gnat version:"
|
||||
if [[ -n ${active} ]] ; then
|
||||
write_kv_list_entry "$active" ""
|
||||
libs=( $(find_libs4profile ${active}) )
|
||||
write_list_start "Active libs:"
|
||||
write_numbered_list "${libs[@]}"
|
||||
else
|
||||
write_kv_list_entry "(none set)" ""
|
||||
fi
|
||||
else
|
||||
write_error_msg "The active profile in ${ENVDIR} is not valid! Please set a valid profile!"
|
||||
fi
|
||||
}
|
||||
|
||||
### list action ###
|
||||
|
||||
describe_list() {
|
||||
echo "List installed gnat compilers and libs"
|
||||
}
|
||||
|
||||
do_list() {
|
||||
compilers=( $(find_all_compilers ) )
|
||||
active=$(get_current_gnat)
|
||||
|
||||
write_list_start "Available gnat compilers:"
|
||||
|
||||
local i
|
||||
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
|
||||
linkversion=${compilers[${i}]}
|
||||
|
||||
[[ $linkversion == $active ]] && \
|
||||
compilers[${i}]=$(highlight_marker "${compilers[${i}]}")
|
||||
done
|
||||
write_numbered_list -m "(none)" "${compilers[@]}"
|
||||
|
||||
# now the libs
|
||||
libs=( $(find_all_libs) )
|
||||
write_list_start "Installed libs:"
|
||||
for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do
|
||||
[ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \
|
||||
libs[${i}]=$(highlight_marker "${libs[${i}]}")
|
||||
done
|
||||
write_numbered_list -m "(no libs)" "${libs[@]}"
|
||||
}
|
||||
|
||||
|
||||
### set action ###
|
||||
|
||||
describe_set() {
|
||||
echo "Set active gnat compiler"
|
||||
}
|
||||
|
||||
# The set action. Parameters:
|
||||
# $1 - name of profile to set, obligatory, passed by eselect
|
||||
# $2 - optional, name of env file to generate. Used from gnat.eclass.
|
||||
do_set() {
|
||||
if [[ -z ${1} ]] ; then
|
||||
# no parameter
|
||||
die -q "You didn't tell me which gnat to use"
|
||||
fi
|
||||
|
||||
local toset=$(get_name_from_list $1)
|
||||
if [[ ${toset} == "(not-found)" ]] ; then
|
||||
die -q "I don't recognise the selection"
|
||||
fi
|
||||
|
||||
# the action!
|
||||
# in this implementation simply create an appropriate env file
|
||||
local active=$(get_current_gnat)
|
||||
if [[ -z ${2} ]] ; then
|
||||
local envfile="${ENVDIR}/${MARKER}${toset}"
|
||||
|
||||
# now we need to remove an old env file, which is guaranteed to
|
||||
# be unique by get_current_gnat above
|
||||
if [[ -n ${active} ]] ; then
|
||||
unset_env ${active}
|
||||
fi
|
||||
# just for a good measure remove the one we are going to write
|
||||
unset_env ${toset}
|
||||
else
|
||||
local envfile="$2"
|
||||
fi
|
||||
|
||||
generate_envFile ${toset} ${envfile}
|
||||
|
||||
# force update environment
|
||||
# should be replaced with "do_action env update" when #172472 gets resolved
|
||||
env-update &> /dev/null
|
||||
}
|
||||
|
||||
|
||||
|
||||
### update action ###
|
||||
#
|
||||
# This action regenerates the /etc/env.d file for the current profile. Basically
|
||||
# the same as set, only it does not take any parameters. It should be called from ebuilds
|
||||
# installing Ada libs or in the pkg_postrm in gnatbuild.eclass, to clean up the
|
||||
# profile if last gnat in SLOT was removed.
|
||||
|
||||
describe_update() {
|
||||
echo "Update active gnat profile picking up new libs."
|
||||
}
|
||||
|
||||
do_update() {
|
||||
local toset=$(get_current_gnat)
|
||||
local envfile="${ENVDIR}/${MARKER}${toset}"
|
||||
# now check whether to update or unset the profile
|
||||
if $(profile_is_valid ${toset}); then
|
||||
generate_envFile ${toset} ${envfile}
|
||||
else
|
||||
unset_env ${toset}
|
||||
fi
|
||||
do_action env update &> /dev/null
|
||||
}
|
||||
|
||||
### unset action ###
|
||||
|
||||
describe_unset() {
|
||||
echo "Remove settings for currently active gnat"
|
||||
}
|
||||
|
||||
do_unset() {
|
||||
local active=$(get_current_gnat)
|
||||
# check whether we have any profile set before removing anything..
|
||||
if [[ -n ${active} ]] ; then
|
||||
unset_env ${active}
|
||||
do_action env update &> /dev/null
|
||||
fi
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!--maintainer-needed-->
|
||||
<longdescription>The eselect module for the supported gnat compilers.</longdescription>
|
||||
</pkgmetadata>
|
Binary file not shown.
|
@ -1,2 +1 @@
|
|||
DIST asciinema-2.0.1.tar.gz 48597 BLAKE2B 9179d19c3c6980f35004145fc109dfa938fa020e1982389f7309c7716f8e18914fb8db46e74b2d778b043399d00a3348e499e9fc1849f5f02e1a729c8bde6084 SHA512 abc7e2a83032520d42b45524fbd103bd974b6857274fbb923b274d11f0a81a8d06cd1e97f1b7d6432a47e1ded6df5e37e52c69caaf7f15b1bf8b53f17dfc07d1
|
||||
DIST asciinema-2.0.2.tar.gz 50058 BLAKE2B db04e21f41b76a7b2be1ca119b2c0a2ff29c9e525c35180d2506722b12c7d139087d0a102bd984cecd7d69e2da0ce8ac0f4bc83c631bc1373fecc8de2d29f107 SHA512 27ae831494c2532270940c3e0fedc87ebbdc1e9d8d24c37d1b63d3f74d9722d38e867fa1b46656249e5b0a84ed7ed32bb21da65f06e9c6a8b787aebdce2068f3
|
||||
|
|
|
@ -1,32 +0,0 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python3_{4,5,6} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Command line recorder for asciinema.org service"
|
||||
HOMEPAGE="https://asciinema.org/ https://pypi.org/project/asciinema/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
IUSE="test"
|
||||
|
||||
DEPEND="
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
test? ( dev-python/nose[${PYTHON_USEDEP}] )
|
||||
"
|
||||
|
||||
DOCS=( CHANGELOG.md CONTRIBUTING.md README.md doc/asciicast-v1.md )
|
||||
|
||||
python_test() {
|
||||
nosetests || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
distutils-r1_src_install
|
||||
doman man/asciinema.1
|
||||
}
|
|
@ -12,7 +12,7 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
IUSE="test"
|
||||
|
||||
BDEPEND="
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
@ -9,7 +9,7 @@ DESCRIPTION="A GPL'd perl server for house automation"
|
|||
HOMEPAGE="https://www.fhem.de/"
|
||||
SRC_URI="https://www.fhem.de/${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
IUSE="doc"
|
||||
|
|
|
@ -1,80 +0,0 @@
|
|||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 6344b4e..5f0c74d 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -48,7 +48,7 @@ AM_YFLAGS = --warnings=all -d
|
||||
lib_LTLIBRARIES = libjq.la
|
||||
libjq_la_SOURCES = ${LIBJQ_SRC}
|
||||
libjq_la_LIBADD = -lm
|
||||
-libjq_la_LDFLAGS = $(onig_LDFLAGS) -export-symbols-regex '^j[qv]_' -version-info 1:4:0
|
||||
+libjq_la_LDFLAGS = -export-symbols-regex '^j[qv]_' -version-info 1:4:0
|
||||
|
||||
if WIN32
|
||||
libjq_la_LIBADD += -lshlwapi
|
||||
@@ -137,15 +137,6 @@ jq.1: $(srcdir)/jq.1.prebuilt
|
||||
endif
|
||||
|
||||
|
||||
-### Build oniguruma
|
||||
-
|
||||
-if BUILD_ONIGURUMA
|
||||
-libjq_la_LIBADD += modules/oniguruma/src/.libs/libonig.la
|
||||
-SUBDIRS = modules/oniguruma
|
||||
-endif
|
||||
-
|
||||
-AM_CFLAGS += $(onig_CFLAGS)
|
||||
-
|
||||
### Packaging
|
||||
|
||||
docs/site.yml: configure.ac
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 280694c..0c5d86f 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -236,45 +236,20 @@ AC_ARG_WITH([oniguruma],
|
||||
[try this for a non-standard install prefix of the oniguruma library])], ,
|
||||
[with_oniguruma=yes])
|
||||
|
||||
-onig_CFLAGS=
|
||||
-onig_LDFLAGS=
|
||||
-build_oniguruma=no
|
||||
AS_IF([test "x$with_oniguruma" != xno], [
|
||||
save_CFLAGS="$CFLAGS"
|
||||
save_LDFLAGS="$LDFLAGS"
|
||||
- AS_IF([test "x$with_oniguruma" != xyes], [
|
||||
- AS_IF([test "x$with_oniguruma" = xbuiltin], [
|
||||
- build_oniguruma=yes
|
||||
- ], [
|
||||
- onig_CFLAGS="-I${with_oniguruma}/include"
|
||||
- onig_LDFLAGS="-L${with_oniguruma}/lib"
|
||||
- ])
|
||||
- ])
|
||||
AS_IF([test "x$build_oniguruma" = xno], [
|
||||
# check for ONIGURUMA library, either in /usr or where requested
|
||||
- CFLAGS="$CFLAGS $onig_CFLAGS"
|
||||
- LDFLAGS="$LDFLAGS $onig_LDFLAGS"
|
||||
AC_CHECK_HEADER("oniguruma.h",
|
||||
AC_CHECK_LIB([onig],[onig_version]))
|
||||
# handle check results
|
||||
AS_IF([test "x$ac_cv_lib_onig_onig_version" != "xyes"], [
|
||||
- build_oniguruma=yes
|
||||
- AC_MSG_NOTICE([Oniguruma was not found. Will use the packaged oniguruma.])
|
||||
+ AC_MSG_ERROR(oniguruma.h not found)
|
||||
])
|
||||
])
|
||||
- AS_IF([test "x$build_oniguruma" = xyes -a -f "${srcdir}/modules/oniguruma/configure.ac" ], [
|
||||
- onig_CFLAGS="-I${srcdir}/modules/oniguruma/src"
|
||||
- onig_LDFLAGS="-L${srcdir}/modules/oniguruma/src -Wl,-rpath,${libdir}"
|
||||
- AC_CONFIG_SUBDIRS([modules/oniguruma])
|
||||
- AC_DEFINE([HAVE_LIBONIG],1,[Define to 1 if the system includes libonig])
|
||||
- ])
|
||||
- CFLAGS="$save_CFLAGS"
|
||||
- LDFLAGS="$save_LDFLAGS"
|
||||
])
|
||||
-AC_SUBST(onig_CFLAGS)
|
||||
-AC_SUBST(onig_LDFLAGS)
|
||||
|
||||
-AM_CONDITIONAL([BUILD_ONIGURUMA], [test "x$build_oniguruma" = xyes])
|
||||
AC_SUBST([BUNDLER], ["$bundle_cmd"])
|
||||
|
||||
AC_CONFIG_MACRO_DIR([config/m4])
|
27
app-misc/jq/files/jq-1.6-r3-never-bundle-oniguruma.patch
Normal file
27
app-misc/jq/files/jq-1.6-r3-never-bundle-oniguruma.patch
Normal file
|
@ -0,0 +1,27 @@
|
|||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 6344b4e..86d968e 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -47,7 +47,7 @@ AM_YFLAGS = --warnings=all -d
|
||||
|
||||
lib_LTLIBRARIES = libjq.la
|
||||
libjq_la_SOURCES = ${LIBJQ_SRC}
|
||||
-libjq_la_LIBADD = -lm
|
||||
+libjq_la_LIBADD = -lm $(onig_LIBS)
|
||||
libjq_la_LDFLAGS = $(onig_LDFLAGS) -export-symbols-regex '^j[qv]_' -version-info 1:4:0
|
||||
|
||||
if WIN32
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 280694c..d96026e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -249,6 +249,9 @@ AS_IF([test "x$with_oniguruma" != xno], [
|
||||
onig_CFLAGS="-I${with_oniguruma}/include"
|
||||
onig_LDFLAGS="-L${with_oniguruma}/lib"
|
||||
])
|
||||
+ ], [
|
||||
+ # with_oniguruma == yes
|
||||
+ PKG_CHECK_MODULES([onig], [oniguruma])
|
||||
])
|
||||
AS_IF([test "x$build_oniguruma" = xno], [
|
||||
# check for ONIGURUMA library, either in /usr or where requested
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
@ -14,20 +14,21 @@ SLOT="0"
|
|||
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x64-macos"
|
||||
IUSE="oniguruma static-libs"
|
||||
|
||||
ONIGURUMA_MINPV='>=dev-libs/oniguruma-6.1.3' # Keep this in sync with bundled modules/oniguruma/
|
||||
DEPEND="
|
||||
>=sys-devel/bison-3.0
|
||||
sys-devel/flex
|
||||
oniguruma? ( dev-libs/oniguruma:=[static-libs?] )
|
||||
oniguruma? ( ${ONIGURUMA_MINPV}:=[static-libs?] )
|
||||
"
|
||||
RDEPEND="
|
||||
!static-libs? (
|
||||
oniguruma? ( dev-libs/oniguruma[static-libs?] )
|
||||
oniguruma? ( ${ONIGURUMA_MINPV}[static-libs?] )
|
||||
)
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/jq-1.6-never-bundle-oniguruma.patch
|
||||
"${FILESDIR}"/jq-1.6-r3-never-bundle-oniguruma.patch
|
||||
"${FILESDIR}"/jq-1.6-runpath.patch
|
||||
"${FILESDIR}"/jq-1.6-segfault-fix.patch
|
||||
)
|
||||
|
@ -36,6 +37,12 @@ src_prepare() {
|
|||
sed -i -r "s:(m4_define\(\[jq_version\],) .+\):\1 \[${PV}\]):" \
|
||||
configure.ac || die
|
||||
|
||||
# jq-1.6-r3-never-bundle-oniguruma makes sure we build with the system oniguruma,
|
||||
# but the bundled copy of oniguruma still gets eautoreconf'd since it
|
||||
# exists; save the cycles by nuking it.
|
||||
sed -i -e '/modules\/oniguruma/d' Makefile.am || die
|
||||
rm -rf "${S}"/modules/oniguruma || die
|
||||
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
@ -48,7 +55,7 @@ src_configure() {
|
|||
--disable-maintainer-mode
|
||||
--enable-rpathhack
|
||||
$(use_enable static-libs static)
|
||||
$(use_with oniguruma)
|
||||
$(use_with oniguruma oniguruma yes)
|
||||
)
|
||||
econf "${econfargs[@]}"
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
@ -12,7 +12,7 @@ HOMEPAGE="https://www.kryoflux.com"
|
|||
SRC_URI="https://www.kryoflux.com/download/${MY_P}.tar.bz2
|
||||
gui? ( https://www.kryoflux.com/kryoflux-ui.jar )"
|
||||
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
KEYWORDS="-* amd64 ~x86"
|
||||
LICENSE="SPS"
|
||||
SLOT="0"
|
||||
IUSE="demos doc fast-firmware gui static"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
@ -11,7 +11,7 @@ SRC_URI="https://web.archive.org/web/20170225160711/http://download.gna.org/${PN
|
|||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
RDEPEND="media-libs/netpbm:="
|
||||
DEPEND="${RDEPEND}"
|
||||
|
|
Binary file not shown.
|
@ -12,7 +12,7 @@ HOMEPAGE="https://pybliographer.org"
|
|||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
KEYWORDS="amd64 ~ppc ~x86"
|
||||
|
||||
IUSE=""
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
|
Binary file not shown.
|
@ -11,7 +11,7 @@ SRC_URI="https://github.com/vaeth/eix/releases/download/v${PV}/${P}.tar.xz"
|
|||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="debug doc nls sqlite"
|
||||
|
||||
BOTHDEPEND="nls? ( virtual/libintl )
|
||||
|
|
Binary file not shown.
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
@ -10,7 +10,7 @@ inherit autotools python-single-r1 readme.gentoo-r1
|
|||
DESCRIPTION="A plain text human readable/writable document format"
|
||||
HOMEPAGE="http://asciidoc.org/"
|
||||
SRC_URI="https://github.com/asciidoc/asciidoc/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=4
|
||||
|
@ -9,7 +9,7 @@ DESCRIPTION="Perl script that converts Texinfo to HTML"
|
|||
HOMEPAGE="http://www.nongnu.org/texi2html/"
|
||||
SRC_URI="mirror://nongnu/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="CC-SA-1.0 FDL-1.3 GPL-2"
|
||||
LICENSE="GPL-2+ || ( GPL-2 CC-BY-SA-1.0 ) Texinfo-manual LGPL-2+ MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="unicode"
|
||||
|
|
Binary file not shown.
1
dev-cpp/rttr/Manifest
Normal file
1
dev-cpp/rttr/Manifest
Normal file
|
@ -0,0 +1 @@
|
|||
DIST rttr-0.9.6-src.tar.gz 1137269 BLAKE2B 53bb4ed75e20a82d2bd2e6c5667efe1ba6b6f2d8a83a3bd486870daeae57a36cdcb9f2acb6d47a6d1b2f36f00a262170efa4e321f6e7faf8d2c35c431bf47133 SHA512 7e0d4fa87f83feda0b926d4d0e52aaf0f369f25fe7e23e5ffe86c0bba159e8353cef44eed37611a81e8ccc8d6facb36942f940d0d0b965f873177d7078f91cf4
|
25
dev-cpp/rttr/files/rttr-0.9.6-cmake.patch
Normal file
25
dev-cpp/rttr/files/rttr-0.9.6-cmake.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
Install cmake files to the correct directory.
|
||||
|
||||
Avoid installing docs to the wrong directory (will be installed by the ebuild instead).
|
||||
|
||||
--- a/CMake/config.cmake
|
||||
+++ b/CMake/config.cmake
|
||||
@@ -69,7 +69,7 @@
|
||||
|
||||
set(RTTR_INSTALL_FULL_LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}")
|
||||
|
||||
- set(RTTR_CMAKE_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/rttr/cmake")
|
||||
+ set(RTTR_CMAKE_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/rttr")
|
||||
set(RTTR_ADDITIONAL_FILES_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/rttr")
|
||||
|
||||
elseif(WIN32)
|
||||
@@ -169,8 +169,4 @@
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/CMake/rttr-config-version.cmake"
|
||||
DESTINATION ${RTTR_CMAKE_CONFIG_INSTALL_DIR}
|
||||
COMPONENT Devel)
|
||||
-
|
||||
- install(FILES "${LICENSE_FILE}" "${README_FILE}"
|
||||
- DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR}
|
||||
- PERMISSIONS OWNER_READ)
|
||||
endif()
|
||||
|
13
dev-cpp/rttr/files/rttr-0.9.6-permission.patch
Normal file
13
dev-cpp/rttr/files/rttr-0.9.6-permission.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
Avoid installing headers with mode 700.
|
||||
|
||||
--- a/CMake/utility.cmake
|
||||
+++ b/CMake/utility.cmake
|
||||
@@ -165,7 +165,7 @@
|
||||
getNameOfDir(CMAKE_CURRENT_SOURCE_DIR DIRNAME)
|
||||
if (${shouldInstall})
|
||||
if (NOT ${FULL_HEADER_PATH} MATCHES ".*_p.h$") # we don't want to install header files which are marked as private
|
||||
- install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS OWNER_READ)
|
||||
+ install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
30
dev-cpp/rttr/files/rttr-0.9.6-tests.patch
Normal file
30
dev-cpp/rttr/files/rttr-0.9.6-tests.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
Avoid running a custom testsuite unconditionally.
|
||||
|
||||
--- a/src/unit_tests/CMakeLists.txt
|
||||
+++ b/src/unit_tests/CMakeLists.txt
|
||||
@@ -54,17 +54,17 @@
|
||||
endif()
|
||||
|
||||
# run tests
|
||||
-add_custom_target(run_tests ALL
|
||||
- COMMAND "$<TARGET_FILE:unit_tests>"
|
||||
- DEPENDS unit_tests
|
||||
- COMMENT "Running unit_tests")
|
||||
+#add_custom_target(run_tests ALL
|
||||
+# COMMAND "$<TARGET_FILE:unit_tests>"
|
||||
+# DEPENDS unit_tests
|
||||
+# COMMENT "Running unit_tests")
|
||||
|
||||
-set_target_properties(run_tests PROPERTIES
|
||||
- FOLDER "Testing")
|
||||
+#set_target_properties(run_tests PROPERTIES
|
||||
+# FOLDER "Testing")
|
||||
|
||||
add_subdirectory(plugin)
|
||||
|
||||
add_dependencies(unit_tests unit_test_plugin)
|
||||
|
||||
message(STATUS "Scanning " ${PROJECT_NAME} " module finished!")
|
||||
-message(STATUS "")
|
||||
\ No newline at end of file
|
||||
+message(STATUS "")
|
18
dev-cpp/rttr/files/rttr-0.9.6-werror.patch
Normal file
18
dev-cpp/rttr/files/rttr-0.9.6-werror.patch
Normal file
|
@ -0,0 +1,18 @@
|
|||
This causes build failures with modern GCC, and is against Gentoo policy in any case.
|
||||
|
||||
--- a/CMake/utility.cmake
|
||||
+++ b/CMake/utility.cmake
|
||||
@@ -392,11 +392,9 @@
|
||||
####################################################################################
|
||||
function( set_compiler_warnings target)
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||
- set(WARNINGS "-Werror"
|
||||
- "-Wall")
|
||||
+ set(WARNINGS "-Wall")
|
||||
elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
- set(WARNINGS "-Werror"
|
||||
- "-Wall")
|
||||
+ set(WARNINGS "-Wall")
|
||||
elseif(MSVC)
|
||||
set(WARNINGS "/WX"
|
||||
"/W4")
|
|
@ -2,10 +2,9 @@
|
|||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>netmon@gentoo.org</email>
|
||||
<name>Gentoo network monitoring and analysis project</name>
|
||||
<email>kde@gentoo.org</email>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="sourceforge">netcat6</remote-id>
|
||||
<remote-id type="github">rttrorg/rttr</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
34
dev-cpp/rttr/rttr-0.9.6.ebuild
Normal file
34
dev-cpp/rttr/rttr-0.9.6.ebuild
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake-utils
|
||||
|
||||
DESCRIPTION="Run Time Type Reflection - library adding reflection to C++"
|
||||
HOMEPAGE="https://www.rttr.org/"
|
||||
SRC_URI="https://github.com/rttrorg/${PN}/releases/download/v${PV}/${P}-src.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-cmake.patch"
|
||||
"${FILESDIR}/${P}-permission.patch"
|
||||
"${FILESDIR}/${P}-tests.patch"
|
||||
"${FILESDIR}/${P}-werror.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_DOCUMENTATION=off #broken
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
"${S}"/bin/unit_tests || die
|
||||
}
|
Binary file not shown.
1
dev-games/freecell-solver/Manifest
Normal file
1
dev-games/freecell-solver/Manifest
Normal file
|
@ -0,0 +1 @@
|
|||
DIST freecell-solver-5.6.0.tar.xz 392468 BLAKE2B 9b8a22eca95da8675a252bec947dc5edad35a492ce9b04db5bf956e9a8c7051a9ca38902f9704e1f789fe28ce3326515690b2070cbb0318d299fdb8446ec9d1a SHA512 aac86e9bfb5849ffd99c669d8cfdd79272bc2f2a9a7f085e22f775b26fa45fc404efbb7520d23469e96c54c3596e776c8f459e679127de9ec0bc065c82bff246
|
46
dev-games/freecell-solver/freecell-solver-5.6.0.ebuild
Normal file
46
dev-games/freecell-solver/freecell-solver-5.6.0.ebuild
Normal file
|
@ -0,0 +1,46 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_6 )
|
||||
inherit cmake-utils python-single-r1
|
||||
|
||||
DESCRIPTION="C library for automatically solving Freecell and some other solitaire variants"
|
||||
HOMEPAGE="https://fc-solve.shlomifish.org/"
|
||||
SRC_URI="https://fc-solve.shlomifish.org/downloads/fc-solve/${P}.tar.xz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
dev-python/pysol_cards[${PYTHON_USEDEP}]
|
||||
dev-python/random2[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-perl/Path-Tiny
|
||||
dev-perl/Template-Toolkit
|
||||
"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
src_prepare() {
|
||||
sed -i -e "s|share/doc/freecell-solver/|share/doc/${P}|" CMakeLists.txt || die
|
||||
|
||||
python_fix_shebang board_gen
|
||||
|
||||
cmake-utils_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_STATIC_LIBRARY=OFF
|
||||
-DFCS_BUILD_DOCS=OFF
|
||||
-DFCS_WITH_TEST_SUITE=OFF #requires unpackaged dependencies
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
10
dev-games/freecell-solver/metadata.xml
Normal file
10
dev-games/freecell-solver/metadata.xml
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>kde@gentoo.org</email>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">shlomif/fc-solve</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
|
@ -1,4 +1 @@
|
|||
DIST tiled-1.2.0.tar.gz 17007687 BLAKE2B 6bb5a34a19868574801a69015f6a05b299dd5b34df865cacf5d2a747a62ae731b80778fe49a432c5487cbfa3d30186dc80011cc8882cb86ac347fb35a7421cbc SHA512 9c0c151348a90344b355e9bc8a7c9d38e2203d48474e8cf496e2c08cc75f764042e4355db2827f0e3518a1c03bfbcc79be7ba643c44c50430c7ecec09fbb8563
|
||||
DIST tiled-1.2.1.tar.gz 16773680 BLAKE2B 1b7c662863d931dadd46d20c90822659b71fe5c7432cc6486813a6db533057d9db9768c2d14832a74b0f768c29b3d340cdc28a67df830ca984ad824610afe662 SHA512 9a66d41ed991b6af226c9456758f27bf5cf2e8d1059042fb684b003608509c0d0e13776710e777bab0e12f55223e4fca4048a07661c36a3273f9c6c5cbf7fa5d
|
||||
DIST tiled-1.2.2.tar.gz 16846444 BLAKE2B c359a75c5a3de8b9f9e52f2e772df9e6bc4ff7200330309e071f5497e80916a3512b47d47d6c502e186e95807a899fec7795d4246621ed988523468542a69b68 SHA512 b488f30f258d13e1513df7398b04e76153803c9384f94c0167d0a971c72e9c26f39eeceb8d587b36509b1c92e5e2f4df3c0cc41f49d66db2c1d9cf5b4b985be3
|
||||
DIST tiled-1.2.3.tar.gz 16848125 BLAKE2B cc2ab2a2ab14a575da1f47a415e1c544de9a80417ea5a081684893bad253fc742f89f5e17739bfe0617f859f6921ab214c2e8bdefe321545008b277684e654b1 SHA512 0c9e818872b1e8de67ff8d943dc47abb63667bc45917b29dca959b0a32594be4ffb156469375c0f5c4a4fa71ee85b05c018c58a2f581a860405cbb12c9c0aac5
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
Bug: https://bugs.gentoo.org/667000
|
||||
|
||||
From 1f039bc40c730cdd93df8213795bbb0fcb634dfe Mon Sep 17 00:00:00 2001
|
||||
From: Michael Palimaka <kensington@gentoo.org>
|
||||
Date: Thu, 11 Oct 2018 22:51:03 +1100
|
||||
Subject: [PATCH] Add missing include.
|
||||
|
||||
---
|
||||
src/tiled/newsfeed.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/tiled/newsfeed.cpp b/src/tiled/newsfeed.cpp
|
||||
index ddf988c3..2e2e12b9 100644
|
||||
--- a/src/tiled/newsfeed.cpp
|
||||
+++ b/src/tiled/newsfeed.cpp
|
||||
@@ -22,6 +22,7 @@
|
||||
|
||||
#include "preferences.h"
|
||||
|
||||
+#include <QDebug>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QSettings>
|
||||
--
|
||||
2.18.1
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python3_6 )
|
||||
inherit gnome2-utils multilib python-single-r1 qmake-utils xdg
|
||||
|
||||
DESCRIPTION="A general purpose tile map editor"
|
||||
HOMEPAGE="https://www.mapeditor.org/"
|
||||
SRC_URI="https://github.com/bjorn/tiled/archive/v${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD BSD-2 GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64"
|
||||
IUSE="examples python"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-qt/qtcore-5.9:5
|
||||
>=dev-qt/qtgui-5.9:5
|
||||
>=dev-qt/qtnetwork-5.9:5
|
||||
>=dev-qt/qtwidgets-5.9:5
|
||||
sys-libs/zlib
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-qt/linguist-tools:5
|
||||
"
|
||||
|
||||
DOCS=( AUTHORS COPYING NEWS.md README.md )
|
||||
PATCHES=( "${FILESDIR}/${P}-qt-5.11.patch" )
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5 LIBDIR="/usr/$(get_libdir)" PREFIX="/usr" DISABLE_PYTHON_PLUGIN="$(usex !python)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake INSTALL_ROOT="${D}" install
|
||||
|
||||
einstalldocs
|
||||
|
||||
if use examples ; then
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
dodoc -r examples
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
|
@ -1,63 +0,0 @@
|
|||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python3_6 )
|
||||
inherit gnome2-utils multilib python-single-r1 qmake-utils xdg
|
||||
|
||||
DESCRIPTION="A general purpose tile map editor"
|
||||
HOMEPAGE="https://www.mapeditor.org/"
|
||||
SRC_URI="https://github.com/bjorn/tiled/archive/v${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD BSD-2 GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="examples python"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-qt/qtcore-5.9:5
|
||||
>=dev-qt/qtgui-5.9:5
|
||||
>=dev-qt/qtnetwork-5.9:5
|
||||
>=dev-qt/qtwidgets-5.9:5
|
||||
sys-libs/zlib
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-qt/linguist-tools:5
|
||||
"
|
||||
|
||||
DOCS=( AUTHORS COPYING NEWS.md README.md )
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5 LIBDIR="/usr/$(get_libdir)" PREFIX="/usr" DISABLE_PYTHON_PLUGIN="$(usex !python)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake INSTALL_ROOT="${D}" install
|
||||
|
||||
einstalldocs
|
||||
|
||||
if use examples ; then
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
dodoc -r examples
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
|
@ -1,63 +0,0 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python3_6 )
|
||||
inherit gnome2-utils multilib python-single-r1 qmake-utils xdg
|
||||
|
||||
DESCRIPTION="A general purpose tile map editor"
|
||||
HOMEPAGE="https://www.mapeditor.org/"
|
||||
SRC_URI="https://github.com/bjorn/tiled/archive/v${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD BSD-2 GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="examples python"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-qt/qtcore-5.9:5
|
||||
>=dev-qt/qtgui-5.9:5
|
||||
>=dev-qt/qtnetwork-5.9:5
|
||||
>=dev-qt/qtwidgets-5.9:5
|
||||
sys-libs/zlib
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-qt/linguist-tools:5
|
||||
"
|
||||
|
||||
DOCS=( AUTHORS COPYING NEWS.md README.md )
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5 LIBDIR="/usr/$(get_libdir)" PREFIX="/usr" DISABLE_PYTHON_PLUGIN="$(usex !python)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake INSTALL_ROOT="${D}" install
|
||||
|
||||
einstalldocs
|
||||
|
||||
if use examples ; then
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
dodoc -r examples
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
|
@ -12,7 +12,7 @@ SRC_URI="https://github.com/bjorn/tiled/archive/v${PV}/${P}.tar.gz"
|
|||
|
||||
LICENSE="BSD BSD-2 GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
KEYWORDS="amd64"
|
||||
IUSE="examples python"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
|
Binary file not shown.
1
dev-go/logrus/Manifest
Normal file
1
dev-go/logrus/Manifest
Normal file
|
@ -0,0 +1 @@
|
|||
DIST logrus-1.4.1.tar.gz 40811 BLAKE2B cde067ff74800153f555e3f9f00021d4cd9d11adadfa6df6b3da0cf86cc7a8cf7137e5d8e12adc7fdfd45022e9dc0c309a6e23ec4b50d9b9cfc37d73038e21b9 SHA512 7e8e215abb0a7909602378caf8ad746b73f3097b56d2ffd81fc7fb4c9a6b68dd8be25ad452cb19b02d7129e0abbb1e29aca51d91a9421ecdec711abcb97da268
|
21
dev-go/logrus/logrus-1.4.1.ebuild
Normal file
21
dev-go/logrus/logrus-1.4.1.ebuild
Normal file
|
@ -0,0 +1,21 @@
|
|||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EGO_PN=github.com/sirupsen/logrus
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
inherit golang-vcs
|
||||
else
|
||||
KEYWORDS="~amd64"
|
||||
SRC_URI="https://${EGO_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
inherit golang-vcs-snapshot
|
||||
fi
|
||||
inherit golang-build
|
||||
|
||||
DESCRIPTION="Structured, pluggable logging for Go"
|
||||
HOMEPAGE="https://github.com/sirupsen/logrus"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
DEPEND="dev-go/go-sys:="
|
||||
RDEPEND=""
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue