The package rpms/moby-engine.git has added or updated architecture specific content in
its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/moby-engine.git/commit/?id=3596b9....
Change:
-ExcludeArch: ppc64
Thanks.
Full change:
============
commit 3596b9c63566049d48696bffdc906cb6ef761a92
Author: Maxwell G <gotmax(a)e.email>
Date: Sun Jan 30 21:00:55 2022 -0600
Fixes FTBFS. Closes rhbz#2046748.
Use %gobuild instead of Makefile to build binaries
Add explanatory comments.
Normalize install commands
Make compliant with SourceURL Guidelines
Remove no longer necessary `ExcludeArch: ppc64`.
diff --git a/.gitignore b/.gitignore
index 46ba8e8..41df84d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,3 +29,6 @@ moby-v20.10.10.tar.gz
/moby-v20.10.11.tar.gz
/cli-v20.10.12.tar.gz
/moby-v20.10.12.tar.gz
+/cli-20.10.12.tar.gz
+/moby-20.10.12.tar.gz
+/tini-de40ad0.tar.gz
diff --git a/moby-engine.spec b/moby-engine.spec
index 3029b32..9d79ad0 100644
--- a/moby-engine.spec
+++ b/moby-engine.spec
@@ -14,12 +14,14 @@
%global service_name %{origname}
# moby
-%global git_moby
https://github.com/%{newname}/%{newname}
+%global goipath_moby
github.com/%{service_name}/%{service_name}
+%global git_moby https://%{goipath_moby}
%global commit_moby e2f740de442bac52b280bc485a3ca5b31567d938
%global shortcommit_moby %(c=%{commit_moby}; echo ${c:0:7})
# cli
-%global git_cli
https://github.com/%{origname}/cli
+%global goipath_cli
github.com/%{origname}/cli
+%global git_cli https://%{goipath_cli}
%global commit_cli 485636f4b90ed5a91a1f403e65ffced469c641a
%global shortcommit_cli %(c=%{commit_cli}; echo ${c:0:7})
@@ -30,14 +32,12 @@
Name: %{newname}-engine
Version: 20.10.12
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: The open-source application container engine
License: ASL 2.0
-# no golang / go-md2man for ppc64
-ExcludeArch: ppc64
-Source0: %{git_moby}/archive/v%{version}.tar.gz#/moby-v%{version}.tar.gz
-Source1: %{git_cli}/archive/v%{version}.tar.gz#/cli-v%{version}.tar.gz
-Source2: %{git_tini}/archive/%{commit_tini}.tar.gz
+Source0: %{git_moby}/archive/v%{version}/moby-%{version}.tar.gz
+Source1: %{git_cli}/archive/v%{version}/cli-%{version}.tar.gz
+Source2: %{git_tini}/archive/%{commit_tini}/tini-%{shortcommit_tini}.tar.gz
Source3: %{service_name}.service
Source4: %{service_name}.sysconfig
URL:
https://www.%{origname}.com
@@ -373,95 +373,96 @@ sed -i '/env bash/d'
cli-%{version}/contrib/completion/bash/docker
tar zxf %{SOURCE2}
%build
-export GOPATH="/usr/share/gocode"
-mkdir -p _build
+mkdir -p _build/bin
# build docker-proxy / libnetwork
(
- export LDFLAGS="-linkmode=external"
- %gobuild -o _build/%{service_name}-proxy
github.com/%{service_name}/libnetwork/cmd/proxy
+
+ # Build binary using `golang-github-docker-libnetwork-devel`
+ # (
github.com/docker/libnetwork) installed in system GOPATH.
+ export GOPATH="%{_datadir}/gocode"
+ %gobuild -o _build/bin/%{service_name}-proxy
github.com/%{service_name}/libnetwork/cmd/proxy
)
-# build tini
+# build tini (installed as %%{service_name}-init)
(
cd tini-%{commit_tini}
%cmake .
make tini-static -C "%{__cmake_builddir}"
)
+%global buildtime %(date --utc --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}"
+"%Y-%m-%dT%H:%M:%SZ")
# build engine
(
mkdir -p
src/github.com/%{service_name}
- ln -fns ../../..
src/github.com/%{service_name}/%{service_name}
+ # Link source and vendored deps into local GOPATH.
+ ln -fns ../../.. src/%{goipath_moby}
+ # Build using source and vendored deps in local GOPATH.
export GOPATH="${PWD}"
export GO111MODULE=off
- # export LDFLAGS="-w"
- # export LDFLAGS+=" -X
github.com/docker/docker/dockerversion.Version=%{version}"
- # export LDFLAGS+=" -X
github.com/docker/docker/dockerversion.GitCommit=%{shortcommit_moby}"
- # export LDFLAGS+=" -X
github.com/docker/docker/dockerversion.IAmStatic=false"
- # export LDFLAGS+=" -X
'github.com/docker/docker/dockerversion.BuildTime=$(date -u --rfc-3339 ns)'"
+ export LDFLAGS="-w"
+ export LDFLAGS+=" -X
github.com/docker/docker/dockerversion.Version=%{version}"
+ export LDFLAGS+=" -X
github.com/docker/docker/dockerversion.GitCommit=%{shortcommit_moby}"
+ export LDFLAGS+=" -X
github.com/docker/docker/dockerversion.IAmStatic=false"
+ export LDFLAGS+=" -X
'github.com/docker/docker/dockerversion.BuildTime=%{buildtime}'"
export DOCKER_BUILDTAGS="seccomp selinux journald"
- # %%gobuild -o _build/%%{service_name}d
github.com/%%{service_name}/%%{service_name}/cmd/dockerd
- VERSION=%{version} DOCKER_GITCOMMIT=%{shortcommit_moby} bash -x hack/make.sh
dynbinary
- mv bundles/dynbinary-daemon/dockerd-%{version} _build/dockerd
+ %gobuild -o _build/bin/%{service_name}d %{goipath_moby}/cmd/%{service_name}d
+ # VERSION=%%{version} DOCKER_GITCOMMIT=%%{shortcommit_moby} bash sh dynbinary
+ # mv bundles/dynbinary-daemon/dockerd-%{version} _build/bin/dockerd
)
# build cli
(
cd cli-%{version}
mkdir -p
src/github.com/%{service_name}
- ln -fns ../../..
src/github.com/%{service_name}/cli
- export DISABLE_WARN_OUTSIDE_CONTAINER=1
+ # Link source and vendored deps into local GOPATH.
+ ln -fns ../../.. src/%{goipath_cli}
+ # export DISABLE_WARN_OUTSIDE_CONTAINER=1
+ # Build using source and vendored deps in local GOPATH.
export GOPATH="${PWD}"
export GO111MODULE=off
- make VERSION=%{version} GITCOMMIT=%{shortcommit_cli} dynbinary
+ export LDFLAGS="\
+ -w \
+ -X
\"github.com/docker/cli/cli/version.GitCommit=%{shortcommit_cli}\" \
+ -X \"github.com/docker/cli/cli/version.BuildTime=%{buildtime}\" \
+ -X \"github.com/docker/cli/cli/version.Version=%{version}\" \
+ "
+ %gobuild -o ../_build/bin/%{service_name} %{goipath_cli}/cmd/%{service_name}
+ # make VERSION=%%{version} GITCOMMIT=%%{shortcommit_cli} dynbinary
man/md2man-all.sh
)
%install
-install -dp %{buildroot}%{_bindir}
-install -dp %{buildroot}%{_libexecdir}/%{service_name}
-
# install binary
-install -p -m 755 cli-%{version}/build/%{service_name}
%{buildroot}%{_bindir}/%{service_name}
-install -p -m 755 _build/%{service_name}d %{buildroot}%{_bindir}/%{service_name}d
+install -Dpm 755 _build/bin/%{service_name} _build/bin/%{service_name}d -t
%{buildroot}%{_bindir}/
# install proxy
-install -p -m 755 _build/%{service_name}-proxy
%{buildroot}%{_libexecdir}/%{service_name}/%{service_name}-proxy
+install -Dpm 755 _build/bin/%{service_name}-proxy -t
%{buildroot}%{_libexecdir}/%{service_name}/
# install tini
-install -p -m 755 tini-%{commit_tini}/%{__cmake_builddir}/tini-static
%{buildroot}%{_libexecdir}/%{service_name}/%{service_name}-init
+install -Dpm 755 tini-%{commit_tini}/%{__cmake_builddir}/tini-static
%{buildroot}%{_libexecdir}/%{service_name}/%{service_name}-init
# install udev rules
-install -dp %{buildroot}%{_prefix}/lib/udev/rules.d
-install -p -m 644 contrib/udev/80-%{service_name}.rules
%{buildroot}%{_usr}/lib/udev/rules.d/80-%{service_name}.rules
+install -Dpm 644 contrib/udev/80-%{service_name}.rules -t
%{buildroot}%{_usr}/lib/udev/rules.d/
# add init scripts
-install -dp %{buildroot}%{_unitdir}
-install -p -m 644 %{SOURCE3} %{buildroot}%{_unitdir}
-install -p -m 644 contrib/init/systemd/docker.socket %{buildroot}%{_unitdir}
+install -Dpm 644 %{SOURCE3} contrib/init/systemd/docker.socket -t
%{buildroot}%{_unitdir}/
# for additional args
-install -dp %{buildroot}%{_sysconfdir}/sysconfig
-install -p -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/%{service_name}
+install -Dpm 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/%{service_name}
# add bash, zsh, and fish completions
-install -dp %{buildroot}%{_datadir}/bash-completion/completions
-install -dp %{buildroot}%{_datadir}/zsh/site-functions
-install -dp %{buildroot}%{_datadir}/fish/vendor_completions.d
-install -p -m 644 cli-%{version}/contrib/completion/bash/%{service_name}
%{buildroot}%{_datadir}/bash-completion/completions/%{service_name}
-install -p -m 644 cli-%{version}/contrib/completion/zsh/_%{service_name}
%{buildroot}%{_datadir}/zsh/site-functions/_%{service_name}
-install -p -m 644 cli-%{version}/contrib/completion/fish/%{service_name}.fish
%{buildroot}%{_datadir}/fish/vendor_completions.d/%{service_name}.fish
+install -Dpm 644 cli-%{version}/contrib/completion/bash/%{service_name} -t
%{buildroot}%{_datadir}/bash-completion/completions/
+install -Dpm 644 cli-%{version}/contrib/completion/zsh/_%{service_name} -t
%{buildroot}%{_datadir}/zsh/site-functions/
+install -Dpm 644 cli-%{version}/contrib/completion/fish/%{service_name}.fish -t
%{buildroot}%{_datadir}/fish/vendor_completions.d/
# install manpages
-install -dp %{buildroot}%{_mandir}/man{1,5,8}
-install -p -m 644 cli-%{version}/man/man1/*.1 %{buildroot}%{_mandir}/man1
-install -p -m 644 cli-%{version}/man/man5/*.5 %{buildroot}%{_mandir}/man5
-install -p -m 644 cli-%{version}/man/man8/*.8 %{buildroot}%{_mandir}/man8
+install -Dpm 644 cli-%{version}/man/man1/*.1 -t %{buildroot}%{_mandir}/man1/
+install -Dpm 644 cli-%{version}/man/man5/*.5 -t %{buildroot}%{_mandir}/man5/
+install -Dpm 644 cli-%{version}/man/man8/*.8 -t %{buildroot}%{_mandir}/man8/
# add nano files
-install -dp %{buildroot}%{_datadir}/nano
-install -p -m 644 contrib/syntax/nano/Dockerfile.nanorc
%{buildroot}%{_datadir}/nano/Dockerfile.nanorc
+install -Dpm 644 contrib/syntax/nano/Dockerfile.nanorc -t %{buildroot}%{_datadir}/nano/
for cli_file in LICENSE MAINTAINERS NOTICE README.md; do
cp "cli-%{version}/$cli_file" "cli-$cli_file"
@@ -509,6 +510,14 @@ getent group %{service_name} >/dev/null || groupadd -r
%{service_name} || :
%{_datadir}/nano/Dockerfile.nanorc
%changelog
+* Mon Jan 31 2022 Maxwell G <gotmax(a)e.email> - 20.10.12-3
+- Fixes FTBFS. Closes rhbz#2046748.
+- Use %%gobuild instead of Makefile to build binaries
+- Add explanatory comments.
+- Normalize install commands
+- Make compliant with SourceURL Guidelines
+- Remove no longer necessary `ExcludeArch: ppc64`.
+
* Thu Jan 20 2022 Fedora Release Engineering <releng(a)fedoraproject.org> -
20.10.12-2
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
diff --git a/sources b/sources
index 82474c0..0067477 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (cli-v20.10.12.tar.gz) =
ac7c997f5751f2e34b9bcb9f026d3d0c2cd58c32a13e9255536b0eb0d7eabd81c42f2d608c0fe7725322b619f2360818b08379e847d598dd0bec570602ad224f
-SHA512 (de40ad007797e0dcd8b7126f27bb87401d224240.tar.gz) =
6e21fbcc8ab0daf2f2ac407f8d85373d2873d4b1e7d010056e4dd7071183fe1ede9dadf116c520e68a6226d5eb9d5ede383729327630600ed85080c1586bf3bb
-SHA512 (moby-v20.10.12.tar.gz) =
f4122c8cbc67e6b7703856dc76d6f15d7fab1b2001d4916b89958d5319c16d8b8445881841ef4804e8d47d64694184aec1be93e22d7baceb021c4a99c2c03753
+SHA512 (cli-20.10.12.tar.gz) =
ac7c997f5751f2e34b9bcb9f026d3d0c2cd58c32a13e9255536b0eb0d7eabd81c42f2d608c0fe7725322b619f2360818b08379e847d598dd0bec570602ad224f
+SHA512 (moby-20.10.12.tar.gz) =
f4122c8cbc67e6b7703856dc76d6f15d7fab1b2001d4916b89958d5319c16d8b8445881841ef4804e8d47d64694184aec1be93e22d7baceb021c4a99c2c03753
+SHA512 (tini-de40ad0.tar.gz) =
6e21fbcc8ab0daf2f2ac407f8d85373d2873d4b1e7d010056e4dd7071183fe1ede9dadf116c520e68a6226d5eb9d5ede383729327630600ed85080c1586bf3bb
commit e33b768788c06852f6a86af30a2711b0527e60e6
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Jan 20 20:10:55 2022 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/moby-engine.spec b/moby-engine.spec
index e54c060..3029b32 100644
--- a/moby-engine.spec
+++ b/moby-engine.spec
@@ -30,7 +30,7 @@
Name: %{newname}-engine
Version: 20.10.12
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: The open-source application container engine
License: ASL 2.0
# no golang / go-md2man for ppc64
@@ -509,6 +509,9 @@ getent group %{service_name} >/dev/null || groupadd -r
%{service_name} || :
%{_datadir}/nano/Dockerfile.nanorc
%changelog
+* Thu Jan 20 2022 Fedora Release Engineering <releng(a)fedoraproject.org> -
20.10.12-2
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
+
* Tue Jan 11 2022 Maxwell G <gotmax(a)e.email> - 20.10.12-1
- Update to 20.10.12. Fixes rhbz#2032534.
- Install zsh completions to the correct directory. Fixes rhbz#2038888.