From 1f96cbc36d6135724cdde954133206463e34d2d0 Mon Sep 17 00:00:00 2001 From: Michael Marineau Date: Wed, 11 May 2016 17:49:21 -0700 Subject: [PATCH 1/3] update_engine: split live and current stable ebuilds Live ebuild needs different dependencies. Drop invalid arm64 stable keyword, the old revision of update_engine doesn't build on arm64. It is in package.provided instead. --- .../update_engine-0.1.0-r3.ebuild | 94 ++++++++++++++++++- 1 file changed, 93 insertions(+), 1 deletion(-) mode change 120000 => 100644 sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild deleted file mode 120000 index a0bfb1ef67..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild +++ /dev/null @@ -1 +0,0 @@ -update_engine-9999.ebuild \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild new file mode 100644 index 0000000000..3018460fa7 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild @@ -0,0 +1,93 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +CROS_WORKON_PROJECT="coreos/update_engine" +CROS_WORKON_REPO="git://github.com" +AUTOTOOLS_AUTORECONF=1 +# TODO: this can be disabled once -I.. is no longer used +AUTOTOOLS_IN_SOURCE_BUILD=1 + +CROS_WORKON_COMMIT="c88492c39ec0ad81bb26ae6efde7b4fc46a9804a" +KEYWORDS="amd64 arm x86" + +inherit autotools-utils flag-o-matic toolchain-funcs cros-workon systemd + +DESCRIPTION="CoreOS OS Update Engine" +HOMEPAGE="https://github.com/coreos/update_engine" +SRC_URI="" + +LICENSE="BSD" +SLOT="0" +IUSE="cros-debug cros_host -delta_generator symlink-usr" + +LIBCHROME_VERS="180609" + +RDEPEND="!coreos-base/coreos-installer + app-arch/bzip2 + coreos-base/coreos-au-key + coreos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] + dev-cpp/gflags + dev-libs/dbus-glib + dev-libs/glib + dev-libs/libxml2 + dev-libs/openssl + dev-libs/protobuf + dev-util/bsdiff + net-misc/curl + sys-fs/e2fsprogs" +DEPEND="dev-cpp/gmock + dev-cpp/gtest + ${RDEPEND}" + +src_configure() { + # Disable PIE when building for the SDK, this works around a bug that + # breaks using delta_generator from the update.zip bundle. + # https://code.google.com/p/chromium/issues/detail?id=394508 + # https://code.google.com/p/chromium/issues/detail?id=394241 + if use cros_host; then + append-flags -nopie + append-ldflags -nopie + fi + + local myeconfargs=( + $(use_enable cros-debug debug) + $(use_enable delta_generator) + ) + + autotools-utils_src_configure +} + +src_test() { + if use cros_host; then + autotools-utils_src_test + else + ewarn "Skipping tests on cross-compiled target platform..." + fi +} + +src_install() { + autotools-utils_src_install + + if use symlink-usr; then + dosym sbin/coreos-postinst /usr/postinst + else + dosym usr/sbin/coreos-postinst /postinst + fi + + systemd_dounit systemd/update-engine.service + systemd_dounit systemd/update-engine-stub.service + systemd_dounit systemd/update-engine-stub.timer + + systemd_enable_service multi-user.target update-engine.service + systemd_enable_service multi-user.target update-engine-stub.timer + + insinto /usr/share/dbus-1/services + doins com.coreos.update1.service + + insinto /usr/share/dbus-1/system.d + doins com.coreos.update1.conf + + # Install rule to remove old UpdateEngine.conf from /etc + systemd_dotmpfilesd "${FILESDIR}"/update-engine.conf +} From 4292c9852f3ad1ff3605c0dba47b5717c3a0bb0e Mon Sep 17 00:00:00 2001 From: Michael Marineau Date: Wed, 11 May 2016 18:06:27 -0700 Subject: [PATCH 2/3] update_engine: update live ebuild, adding glog and removing libchrome --- .../coreos-base/update_engine/update_engine-9999.ebuild | 6 +----- .../coreos-overlay/profiles/coreos/base/package.use | 3 +++ 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild index 9650fd7980..d1600bcaa3 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild @@ -5,8 +5,6 @@ EAPI=5 CROS_WORKON_PROJECT="coreos/update_engine" CROS_WORKON_REPO="git://github.com" AUTOTOOLS_AUTORECONF=1 -# TODO: this can be disabled once -I.. is no longer used -AUTOTOOLS_IN_SOURCE_BUILD=1 if [[ "${PV}" == 9999 ]]; then KEYWORDS="~amd64 ~arm ~arm64 ~x86" @@ -25,13 +23,11 @@ LICENSE="BSD" SLOT="0" IUSE="cros-debug cros_host -delta_generator symlink-usr" -LIBCHROME_VERS="180609" - RDEPEND="!coreos-base/coreos-installer app-arch/bzip2 coreos-base/coreos-au-key - coreos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] dev-cpp/gflags + dev-cpp/glog[gflags] dev-libs/dbus-glib dev-libs/glib dev-libs/libxml2 diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use index b096dfd572..739d48cf32 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.use @@ -72,3 +72,6 @@ sys-auth/sssd -manpages -python # needed for realmd build sys-auth/polkit introspection + +# enable logging command-line options in update_engine +dev-cpp/glog gflags From f53b3ffc8172f1ba32ac9cbc6bf6f83a0c498b09 Mon Sep 17 00:00:00 2001 From: Michael Marineau Date: Tue, 17 May 2016 23:21:41 -0700 Subject: [PATCH 3/3] update_engine: add slot dependency for protobuf Ensures that update_engine will get rebuilt when protobuf is upgraded. --- ...ate_engine-0.1.0-r3.ebuild => update_engine-0.1.0-r4.ebuild} | 2 +- .../coreos-base/update_engine/update_engine-9999.ebuild | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/{update_engine-0.1.0-r3.ebuild => update_engine-0.1.0-r4.ebuild} (99%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r4.ebuild similarity index 99% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r4.ebuild index 3018460fa7..f40d294dc3 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r3.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-0.1.0-r4.ebuild @@ -32,7 +32,7 @@ RDEPEND="!coreos-base/coreos-installer dev-libs/glib dev-libs/libxml2 dev-libs/openssl - dev-libs/protobuf + dev-libs/protobuf:= dev-util/bsdiff net-misc/curl sys-fs/e2fsprogs" diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild index d1600bcaa3..9ed9582032 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/update_engine/update_engine-9999.ebuild @@ -32,7 +32,7 @@ RDEPEND="!coreos-base/coreos-installer dev-libs/glib dev-libs/libxml2 dev-libs/openssl - dev-libs/protobuf + dev-libs/protobuf:= dev-util/bsdiff net-misc/curl sys-fs/e2fsprogs"