mirror of https://github.com/containers/podman.git
Merge pull request #4762 from NevilleC/nc-issue4367
Generate binaries only if there are changes in src code.
This commit is contained in:
commit
2d8f1c8fda
|
@ -34,6 +34,6 @@ if [ ! -d conmon ]; then
|
||||||
git clone -n --quiet https://github.com/containers/conmon
|
git clone -n --quiet https://github.com/containers/conmon
|
||||||
fi
|
fi
|
||||||
pushd conmon
|
pushd conmon
|
||||||
git checkout --detach 6f3572558b97bc60dd8f8c7f0807748e6ce2c440
|
git checkout --detach d532caebc788fafdd2a305b68cd1983b4039bea4
|
||||||
git archive --prefix "conmon/" --format "tar.gz" HEAD -o "../build/conmon.tar.gz"
|
git archive --prefix "conmon/" --format "tar.gz" HEAD -o "../build/conmon.tar.gz"
|
||||||
popd
|
popd
|
||||||
|
|
18
Makefile
18
Makefile
|
@ -35,6 +35,7 @@ BUILDTAGS ?= \
|
||||||
PYTHON ?= $(shell command -v python python3|head -n1)
|
PYTHON ?= $(shell command -v python python3|head -n1)
|
||||||
PKG_MANAGER ?= $(shell command -v dnf yum|head -n1)
|
PKG_MANAGER ?= $(shell command -v dnf yum|head -n1)
|
||||||
|
|
||||||
|
SOURCES = $(shell find . -name "*.go")
|
||||||
|
|
||||||
GO_BUILD=$(GO) build
|
GO_BUILD=$(GO) build
|
||||||
# Go module support: set `-mod=vendor` to use the vendored sources
|
# Go module support: set `-mod=vendor` to use the vendored sources
|
||||||
|
@ -164,11 +165,15 @@ test/checkseccomp/checkseccomp: .gopathok $(wildcard test/checkseccomp/*.go)
|
||||||
test/goecho/goecho: .gopathok $(wildcard test/goecho/*.go)
|
test/goecho/goecho: .gopathok $(wildcard test/goecho/*.go)
|
||||||
$(GO_BUILD) -ldflags '$(LDFLAGS_PODMAN)' -o $@ $(PROJECT)/test/goecho
|
$(GO_BUILD) -ldflags '$(LDFLAGS_PODMAN)' -o $@ $(PROJECT)/test/goecho
|
||||||
|
|
||||||
podman: .gopathok $(PODMAN_VARLINK_DEPENDENCIES) ## Build with podman
|
bin/podman: .gopathok $(SOURCES) go.mod go.sum $(PODMAN_VARLINK_DEPENDENCIES) ## Build with podman
|
||||||
$(GO_BUILD) $(BUILDFLAGS) -gcflags '$(GCFLAGS)' -asmflags '$(ASMFLAGS)' -ldflags '$(LDFLAGS_PODMAN)' -tags "$(BUILDTAGS)" -o bin/$@ $(PROJECT)/cmd/podman
|
$(GO_BUILD) $(BUILDFLAGS) -gcflags '$(GCFLAGS)' -asmflags '$(ASMFLAGS)' -ldflags '$(LDFLAGS_PODMAN)' -tags "$(BUILDTAGS)" -o $@ $(PROJECT)/cmd/podman
|
||||||
|
|
||||||
podman-remote: .gopathok $(PODMAN_VARLINK_DEPENDENCIES) ## Build with podman on remote environment
|
podman: bin/podman
|
||||||
$(GO_BUILD) $(BUILDFLAGS) -gcflags '$(GCFLAGS)' -asmflags '$(ASMFLAGS)' -ldflags '$(LDFLAGS_PODMAN)' -tags "$(BUILDTAGS) remoteclient" -o bin/$@ $(PROJECT)/cmd/podman
|
|
||||||
|
bin/podman-remote: .gopathok $(SOURCES) go.mod go.sum $(PODMAN_VARLINK_DEPENDENCIES) ## Build with podman on remote environment
|
||||||
|
$(GO_BUILD) $(BUILDFLAGS) -gcflags '$(GCFLAGS)' -asmflags '$(ASMFLAGS)' -ldflags '$(LDFLAGS_PODMAN)' -tags "$(BUILDTAGS) remoteclient" -o $@ $(PROJECT)/cmd/podman
|
||||||
|
|
||||||
|
podman-remote: bin/podman-remote
|
||||||
|
|
||||||
.PHONY: podman.msi
|
.PHONY: podman.msi
|
||||||
podman.msi: podman-remote podman-remote-windows install-podman-remote-windows-docs ## Will always rebuild exe as there is no podman-remote-windows.exe target to verify timestamp
|
podman.msi: podman-remote podman-remote-windows install-podman-remote-windows-docs ## Will always rebuild exe as there is no podman-remote-windows.exe target to verify timestamp
|
||||||
|
@ -544,7 +549,6 @@ vendor-in-container:
|
||||||
podman run --privileged --rm --env HOME=/root -v `pwd`:/src -w /src docker.io/library/golang:1.13 make vendor
|
podman run --privileged --rm --env HOME=/root -v `pwd`:/src -w /src docker.io/library/golang:1.13 make vendor
|
||||||
|
|
||||||
.PHONY: \
|
.PHONY: \
|
||||||
.gopathok \
|
|
||||||
binaries \
|
binaries \
|
||||||
changelog \
|
changelog \
|
||||||
clean \
|
clean \
|
||||||
|
@ -572,4 +576,6 @@ package: ## Build rpm packages
|
||||||
./contrib/build_rpm.sh
|
./contrib/build_rpm.sh
|
||||||
|
|
||||||
package-install: package ## Install rpm packages
|
package-install: package ## Install rpm packages
|
||||||
sudo ${PKG_MANAGER} -y install --allowerasing ${HOME}/rpmbuild/RPMS/*/*.rpm
|
sudo ${PKG_MANAGER} -y remove podman podman-remote
|
||||||
|
sudo ${PKG_MANAGER} -y clean all
|
||||||
|
sudo ${PKG_MANAGER} -y install ${HOME}/rpmbuild/RPMS/*/*.rpm
|
||||||
|
|
|
@ -30,22 +30,26 @@ declare -a PKGS=(device-mapper-devel \
|
||||||
)
|
)
|
||||||
|
|
||||||
if [[ $pkg_manager == *dnf ]]; then
|
if [[ $pkg_manager == *dnf ]]; then
|
||||||
|
# We need to enable PowerTools if we want to get
|
||||||
|
# install all the pkgs we define in PKGS
|
||||||
|
sudo dnf config-manager --set-enabled PowerTools
|
||||||
|
|
||||||
PKGS+=(python3-devel \
|
PKGS+=(python3-devel \
|
||||||
python3-varlink \
|
python3-varlink \
|
||||||
)
|
)
|
||||||
# btrfs-progs-devel is not available in CentOS/RHEL-8
|
|
||||||
if ! grep -i -q 'Red Hat\|CentOS' /etc/redhat-release; then
|
|
||||||
PKGS+=(btrfs-progs-devel)
|
|
||||||
fi
|
|
||||||
# disable doc until go-md2man rpm becomes available
|
|
||||||
# disable debug to avoid error: Empty %files file ~/rpmbuild/BUILD/libpod-.../debugsourcefiles.list
|
|
||||||
export extra_arg="--without doc --without debug"
|
|
||||||
else
|
|
||||||
if ! grep -i -q 'Red Hat\|CentOS' /etc/redhat-release; then
|
|
||||||
PKGS+=(golang-github-cpuguy83-go-md2man)
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# btrfs-progs-devel is not available in CentOS/RHEL-8
|
||||||
|
if ! (grep -i 'Red Hat\|CentOS' /etc/redhat-release | grep " 8" ); then
|
||||||
|
PKGS+=(golang-github-cpuguy83-go-md2man \
|
||||||
|
btrfs-progs-devel \
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# disable doc until go-md2man rpm becomes available
|
||||||
|
# disable debug to avoid error: Empty %files file ~/rpmbuild/BUILD/libpod-.../debugsourcefiles.list
|
||||||
|
export extra_arg="--without doc --without debug"
|
||||||
|
|
||||||
echo ${PKGS[*]}
|
echo ${PKGS[*]}
|
||||||
sudo $pkg_manager install -y ${PKGS[*]}
|
sudo $pkg_manager install -y ${PKGS[*]}
|
||||||
|
|
||||||
|
@ -56,3 +60,6 @@ if [ -d ~/rpmbuild/BUILD ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rpmbuild --rebuild ${extra_arg:-} podman-*.src.rpm
|
rpmbuild --rebuild ${extra_arg:-} podman-*.src.rpm
|
||||||
|
|
||||||
|
# clean up src.rpm as it's been built
|
||||||
|
sudo rm -f podman-*.src.rpm
|
||||||
|
|
|
@ -39,7 +39,7 @@
|
||||||
# People want conmon packaged with the copr rpm
|
# People want conmon packaged with the copr rpm
|
||||||
%global import_path_conmon github.com/containers/conmon
|
%global import_path_conmon github.com/containers/conmon
|
||||||
%global git_conmon https://%{import_path_conmon}
|
%global git_conmon https://%{import_path_conmon}
|
||||||
%global commit_conmon 6f3572558b97bc60dd8f8c7f0807748e6ce2c440
|
%global commit_conmon d532caebc788fafdd2a305b68cd1983b4039bea4
|
||||||
%global shortcommit_conmon %(c=%{commit_conmon}; echo ${c:0:7})
|
%global shortcommit_conmon %(c=%{commit_conmon}; echo ${c:0:7})
|
||||||
|
|
||||||
Name: podman
|
Name: podman
|
||||||
|
@ -79,7 +79,6 @@ Requires: runc
|
||||||
Requires: skopeo-containers
|
Requires: skopeo-containers
|
||||||
Requires: containernetworking-plugins >= 0.6.0-3
|
Requires: containernetworking-plugins >= 0.6.0-3
|
||||||
Requires: iptables
|
Requires: iptables
|
||||||
Requires: oci-systemd-hook
|
|
||||||
%if 0%{?rhel} <= 7
|
%if 0%{?rhel} <= 7
|
||||||
Requires: container-selinux
|
Requires: container-selinux
|
||||||
%else
|
%else
|
||||||
|
|
Loading…
Reference in New Issue