diff options
author | Zac Medico <zmedico@gentoo.org> | 2016-04-16 23:07:32 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2016-04-16 23:08:47 -0700 |
commit | 362d0f1dc895c2d7103757248688a7398cd6a5e0 (patch) | |
tree | 367bbfbc998993e07fc4f770738d3505511f73d8 /app-emulation/rkt | |
parent | dev-ruby/riel: cleanup (diff) | |
download | gentoo-362d0f1dc895c2d7103757248688a7398cd6a5e0.tar.gz gentoo-362d0f1dc895c2d7103757248688a7398cd6a5e0.tar.bz2 gentoo-362d0f1dc895c2d7103757248688a7398cd6a5e0.zip |
app-emulation/rkt: version bump to 1.4.0
Package-Manager: portage-2.2.28
Diffstat (limited to 'app-emulation/rkt')
-rw-r--r-- | app-emulation/rkt/Manifest | 1 | ||||
-rw-r--r-- | app-emulation/rkt/rkt-1.4.0.ebuild | 189 |
2 files changed, 190 insertions, 0 deletions
diff --git a/app-emulation/rkt/Manifest b/app-emulation/rkt/Manifest index ff6fa23ba5d2..c9d72b5a1fae 100644 --- a/app-emulation/rkt/Manifest +++ b/app-emulation/rkt/Manifest @@ -2,6 +2,7 @@ DIST kvmtool-3c8aec9e2b5066412390559629dabeb7816ee8f2.tar.gz 241486 SHA256 a3e65 DIST linux-4.3.1.tar.xz 86900452 SHA256 11faaff6e7546038b868f524cdf42a5a1b67be9fdfd37d931723a8deb1811b72 SHA512 640db1a15db2e18f912e8ea93b01c784740d1a9957dc1d5580809448adb0713edfb02b7172f61362f0f362800c88f09dcc8165005250a757fbd942b59e36ba16 WHIRLPOOL f5de4ea768ad7a5cad21705c24b79773522207ffbc85209676b1a4ce067e031330ded68e2201953c477c3dae743f95521da230194be90be900afa30f39f943c5 DIST rkt-1.1.0.tar.gz 2426666 SHA256 df93dffc1deff470a5bebaa2610a07df8f48e69f660c81de0a31de13d7f7bfa5 SHA512 ef444843f411cd2d1fcd02f606bf5d0971eb314d708d1d54d07af9e3d69e1d74a7812456fd7cc46372ca6e42cfd5ac6af6b7b67e22890396f58d8982c0af1373 WHIRLPOOL 0579f5efd28d473ab4a0874d7218268a2a1143118b9f3e39670a683f05c7fb3b1b952aee75f0c923d76bc457c4d933c3c9b329f99960fa0a95cde2573225288b DIST rkt-1.3.0.tar.gz 2450145 SHA256 0468c5b1079da8df65db9ebd0b712f64509acf6c8d6b34b780b6e787271d9b30 SHA512 f00500ddc1af85bc5ebe23b1a28e517e5f321f8c4c2434b71931b326cca5d4a10af4d54648a22634dc5039c7ca305539736b88a63b16fed1be897af0e22b64aa WHIRLPOOL 3f6c7ee950637ee16373ea43a23b1189c097d771748624be8a5794c734b0cb44b1b249cd424bcddf0ef5ec1761e08b8d53de71b5375ae35a9aa2ca7c3d4b91d6 +DIST rkt-1.4.0.tar.gz 2506968 SHA256 1ce98ff74aef3dc2c43025f2b458e6dbfeb6c7f756a313f4ecc2827fc84ce031 SHA512 3e97ddf0d2c1c892d1df6a82e4db7bdf1520a474e4aa56020a4c3c8b6bb81d1a2378baff0d002436ceed4dfb8a2a0faa502b12d5924df435e7d869f2c30901f9 WHIRLPOOL 2f45f2b50de046903c37318b725e2c6ff269c968eaa08370b8d74e63d42c00dece5354ca9e7c94fdd8180841f89116d760eee92886ed34ec65d2e3383d08c86f DIST rkt-pxe-794.1.0.img 185121072 SHA256 d513e27d2412d8fdaa2456786703346f10c24a62480d2036ca5c31b3d5a0df16 SHA512 f36324e9736bb0c533706c45d4146bed2efcb3ee2cb842c3624a62399835808c0df2aef56495a12b30f67c47fd84e93e34b10c57e4aa6d0450402d5e21c6f88c WHIRLPOOL 099851022b11aa29d004bbcef316a7cceeb5efa43f8069cdf1858888e7550f938fd9f9ec53eb63c313b5c1b93b0569f578a50fc5bae28b4d30c451a2ffd2adba DIST rkt-pxe-991.0.0.img 226115454 SHA256 33697d3d7c7458bbb160a5eb889ced34b001c35e22e10c86235042eb57ae51ed SHA512 1b785d8454381d47eb53062433bda5645650420b58821ac00119a92032ba4d669c974871eafe7e414ad349952974cfdf6812f85af69d3286b7bfe2fc2d04c52f WHIRLPOOL d9f103a0c5a78c8a4403a17e805872703cd5d4fe34e5395c381216538a15f58a7678c7d744ac8aa90ed4dd850a614ca52487cb50e5687c812488a3cdbdff2de0 DIST systemd-222.tar.gz 4015599 SHA256 b49f51f9855127987adc98aad3b6d608e4e53eaa029b629f2ea2089ce0234f34 SHA512 83f0acf0ca90c89c902c268af6eef4b61380a30380013cbe89c929357959f51682cd3961a6a4f772abc09d5ca09404ae290edf2c3253fab1b20dc2b5b3ecde47 WHIRLPOOL dd0151034de374b072e70448e7a9ff47693df0190e8a2a11488593400d3d7e53e0a91d86037d027c750584089e6c68e58c437647d608a72f8826f091e3253879 diff --git a/app-emulation/rkt/rkt-1.4.0.ebuild b/app-emulation/rkt/rkt-1.4.0.ebuild new file mode 100644 index 000000000000..8074ce104b01 --- /dev/null +++ b/app-emulation/rkt/rkt-1.4.0.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=yes +AUTOTOOLS_IN_SOURCE_BUILD=yes + +inherit autotools-utils flag-o-matic systemd toolchain-funcs + +KEYWORDS="~amd64" + +PXE_VERSION="991.0.0" +PXE_SYSTEMD_VERSION="v225" +KVM_LINUX_VERSION="4.3.1" +KVMTOOL_VERSION="3c8aec9e2b5066412390559629dabeb7816ee8f2" +PXE_URI="http://alpha.release.core-os.net/amd64-usr/${PXE_VERSION}/coreos_production_pxe_image.cpio.gz" +PXE_FILE="${PN}-pxe-${PXE_VERSION}.img" + +SRC_URI="https://github.com/coreos/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz +rkt_stage1_coreos? ( $PXE_URI -> $PXE_FILE ) +rkt_stage1_kvm? ( + https://kernel.googlesource.com/pub/scm/linux/kernel/git/will/kvmtool/+archive/${KVMTOOL_VERSION}.tar.gz -> kvmtool-${KVMTOOL_VERSION}.tar.gz + mirror://kernel/linux/kernel/v4.x/linux-${KVM_LINUX_VERSION}.tar.xz + ${PXE_URI} -> ${PXE_FILE} +) +rkt_stage1_src? ( https://github.com/systemd/systemd/archive/${PXE_SYSTEMD_VERSION}.tar.gz -> systemd-${PXE_SYSTEMD_VERSION#v}.tar.gz )" + +DESCRIPTION="A CLI for running app containers, and an implementation of the App +Container Spec." +HOMEPAGE="https://github.com/coreos/rkt" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="doc examples +rkt_stage1_coreos +rkt_stage1_fly rkt_stage1_host rkt_stage1_kvm rkt_stage1_src +actool systemd" +REQUIRED_USE="|| ( rkt_stage1_coreos rkt_stage1_fly rkt_stage1_host rkt_stage1_kvm rkt_stage1_src ) rkt_stage1_host? ( systemd )" + +DEPEND=">=dev-lang/go-1.5 + app-arch/cpio + app-crypt/trousers + sys-fs/squashfs-tools + dev-perl/Capture-Tiny" + +RDEPEND="!app-emulation/rocket + rkt_stage1_host? ( systemd? ( + >=sys-apps/systemd-222 + app-shells/bash:0 + ) )" + +BUILDDIR="build-${P}" +STAGE1_DEFAULT_LOCATION="/usr/share/rkt/stage1.aci" + +src_unpack() { + local x + for x in ${A}; do + case ${x} in + *.img|linux-*) continue ;; + kvmtool-*) + mkdir kvmtool || die + pushd kvmtool >/dev/null || die + unpack ${x} + popd >/dev/null || die + ;; + *) + unpack ${x} + esac + done +} + +src_prepare() { + # disable git fetch of systemd + sed -e 's~^include makelib/git.mk$~'\ +'ifneq ($(wildcard $(RKT_STAGE1_SYSTEMD_SRC)),)\n\n'\ +'get_systemd_sources: | $(UFS_SYSTEMDDIR)\n'\ +'\tmv "$(RKT_STAGE1_SYSTEMD_SRC)" "$(UFS_SYSTEMD_SRCDIR)"\n\n'\ +'$(UFS_SYSTEMD_CONFIGURE): get_systemd_sources\n\n'\ +'else ifneq ($(wildcard $(UFS_SYSTEMD_SRCDIR)),)\n\n'\ +'else\n'\ +'\t\0\n'\ +'endif~' -i stage1/usr_from_src/usr_from_src.mk || die + + # disable git fetch of kvmtool + sed -e 's~^include makelib/git.mk$~'\ +'ifneq ($(wildcard $(shell echo "$${WORKDIR}/kvmtool")),)\n\n'\ +'$(call forward-vars, get_lkvm_sources, LKVM_SRCDIR)\n'\ +'get_lkvm_sources: | $(LKVM_TMPDIR)\n'\ +'\tmv "$${WORKDIR}/kvmtool" "$(LKVM_SRCDIR)"\n\n'\ +'$(LKVM_PATCH_STAMP): get_lkvm_sources\n\n'\ +'else ifneq ($(wildcard $(LKVM_SRCDIR)),)\n\n'\ +'else\n'\ +'\t\0\n'\ +'endif~' -i stage1/usr_from_kvm/lkvm.mk || die + + # disable fetch of kernel sources + sed -e 's|wget .*|ln -s "$${DISTDIR}/linux-'${KVM_LINUX_VERSION}'.tar.xz" "$@"|' \ + -i stage1/usr_from_kvm/kernel.mk || die + + if use rkt_stage1_host; then + # Make systemdUnitsPath consistent with host + sed -e 's|\(systemdUnitsPath := \).*|\1"'$(systemd_get_systemunitdir)'"|' \ + -i stage1/init/init.go || die + fi + + autotools-utils_src_prepare +} + +src_configure() { + local flavors myeconfargs=( + --with-stage1-default-images-directory="/usr/share/rkt" + --with-stage1-default-location="${STAGE1_DEFAULT_LOCATION}" + ) + + # enable flavors (first is default) + use rkt_stage1_host && flavors+=",host" + use rkt_stage1_src && flavors+=",src" + use rkt_stage1_coreos && flavors+=",coreos" + use rkt_stage1_fly && flavors+=",fly" + use rkt_stage1_kvm && flavors+=",kvm" + myeconfargs+=( --with-stage1-flavors="${flavors#,}" ) + + if use rkt_stage1_src; then + myeconfargs+=( + --with-stage1-systemd-version=${PXE_SYSTEMD_VERSION} + --with-stage1-systemd-src="${WORKDIR}/systemd-${PXE_SYSTEMD_VERSION#v}" + ) + fi + + if use rkt_stage1_coreos || use rkt_stage1_kvm; then + myeconfargs+=( + --with-coreos-local-pxe-image-path="${DISTDIR}/${PXE_FILE}" + --with-coreos-local-pxe-image-systemd-version="${PXE_SYSTEMD_VERSION}" + ) + fi + + # Go's 6l linker does not support PIE, disable so cgo binaries + # which use 6l+gcc for linking can be built correctly. + if gcc-specs-pie; then + append-ldflags -nopie + fi + + export CC=$(tc-getCC) + export CGO_ENABLED=1 + export CGO_CFLAGS="${CFLAGS}" + export CGO_CPPFLAGS="${CPPFLAGS}" + export CGO_CXXFLAGS="${CXXFLAGS}" + export CGO_LDFLAGS="${LDFLAGS}" + export BUILDDIR + + autotools-utils_src_configure +} + +src_compile() { + local arch=${ARCH} + case ${arch} in + amd64) arch=x86_64;; + esac + ARCH=${arch} autotools-utils_src_compile +} + +src_install() { + dodoc README.md + use doc && dodoc -r Documentation + use examples && dodoc -r examples + use actool && dobin "${S}/${BUILDDIR}/bin/actool" + + dobin "${S}/${BUILDDIR}/bin/rkt" + + insinto /usr/share/rkt + doins "${S}/${BUILDDIR}/bin/"*.aci + + # create symlink for default stage1 image path + if use rkt_stage1_host; then + dosym stage1-host.aci "${STAGE1_DEFAULT_LOCATION}" + elif use rkt_stage1_src; then + dosym stage1-src.aci "${STAGE1_DEFAULT_LOCATION}" + elif use rkt_stage1_coreos; then + dosym stage1-coreos.aci "${STAGE1_DEFAULT_LOCATION}" + elif use rkt_stage1_fly; then + dosym stage1-fly.aci "${STAGE1_DEFAULT_LOCATION}" + elif use rkt_stage1_kvm; then + dosym stage1-kvm.aci "${STAGE1_DEFAULT_LOCATION}" + fi + + systemd_dounit "${S}"/dist/init/systemd/${PN}-gc.service + systemd_dounit "${S}"/dist/init/systemd/${PN}-gc.timer + systemd_dounit "${S}"/dist/init/systemd/${PN}-metadata.service + systemd_dounit "${S}"/dist/init/systemd/${PN}-metadata.socket +} |