Skip to content

Commit 386b42b

Browse files
Merge pull request openshift#153 from multi-arch/master
Enable all Linux arches in cli-artifacts
2 parents cfead21 + e949088 commit 386b42b

File tree

3 files changed

+22
-5
lines changed

3 files changed

+22
-5
lines changed

Makefile

+18-1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ GO_BUILD_PACKAGES :=$(strip \
2323
GO_BUILD_FLAGS :=-tags 'include_gcs include_oss containers_image_openpgp gssapi'
2424
GO_BUILD_FLAGS_DARWIN :=-tags 'include_gcs include_oss containers_image_openpgp'
2525
GO_BUILD_FLAGS_WINDOWS :=-tags 'include_gcs include_oss containers_image_openpgp'
26+
GO_BUILD_FLAGS_LINUX_CROSS :=-tags 'include_gcs include_oss containers_image_openpgp'
2627

2728
OUTPUT_DIR :=_output
2829
CROSS_BUILD_BINDIR :=$(OUTPUT_DIR)/bin
@@ -79,7 +80,23 @@ cross-build-windows-amd64:
7980
+@GOOS=windows GOARCH=amd64 $(MAKE) --no-print-directory build GO_BUILD_PACKAGES:=./cmd/oc GO_BUILD_FLAGS:="$(GO_BUILD_FLAGS_WINDOWS)" GO_BUILD_BINDIR:=$(CROSS_BUILD_BINDIR)/windows_amd64
8081
.PHONY: cross-build-windows-amd64
8182

82-
cross-build: cross-build-darwin-amd64 cross-build-windows-amd64
83+
cross-build-linux-amd64:
84+
+@GOOS=linux GOARCH=amd64 $(MAKE) --no-print-directory build GO_BUILD_PACKAGES:=./cmd/oc GO_BUILD_FLAGS:="$(GO_BUILD_FLAGS_LINUX_CROSS)" GO_BUILD_BINDIR:=$(CROSS_BUILD_BINDIR)/linux_amd64
85+
.PHONY: cross-build-linux-amd64
86+
87+
cross-build-linux-arm64:
88+
+@GOOS=linux GOARCH=arm64 $(MAKE) --no-print-directory build GO_BUILD_PACKAGES:=./cmd/oc GO_BUILD_FLAGS:="$(GO_BUILD_FLAGS_LINUX_CROSS)" GO_BUILD_BINDIR:=$(CROSS_BUILD_BINDIR)/linux_arm64
89+
.PHONY: cross-build-linux-arm64
90+
91+
cross-build-linux-ppc64le:
92+
+@GOOS=linux GOARCH=ppc64le $(MAKE) --no-print-directory build GO_BUILD_PACKAGES:=./cmd/oc GO_BUILD_FLAGS:="$(GO_BUILD_FLAGS_LINUX_CROSS)" GO_BUILD_BINDIR:=$(CROSS_BUILD_BINDIR)/linux_ppc64le
93+
.PHONY: cross-build-linux-ppc64le
94+
95+
cross-build-linux-s390x:
96+
+@GOOS=linux GOARCH=s390x $(MAKE) --no-print-directory build GO_BUILD_PACKAGES:=./cmd/oc GO_BUILD_FLAGS:="$(GO_BUILD_FLAGS_LINUX_CROSS)" GO_BUILD_BINDIR:=$(CROSS_BUILD_BINDIR)/linux_s390x
97+
.PHONY: cross-build-linux-s390x
98+
99+
cross-build: cross-build-darwin-amd64 cross-build-windows-amd64 cross-build-linux-amd64 cross-build-linux-arm64 cross-build-linux-ppc64le cross-build-linux-s390x
83100
.PHONY: cross-build
84101

85102
clean-cross-build:

images/cli-artifacts/Dockerfile.rhel

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ FROM registry.svc.ci.openshift.org/ocp/builder:golang-1.12 AS builder
44
WORKDIR /go/src/github.com/openshift/oc
55
COPY . .
66
RUN yum install -y --setopt=skip_missing_names_on_install=False gpgme-devel libassuan-devel
7-
RUN make cross-build-darwin-amd64 cross-build-windows-amd64 --warn-undefined-variables
7+
RUN make cross-build --warn-undefined-variables
88

99
FROM registry.svc.ci.openshift.org/ocp/4.2:cli
10-
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/darwin_amd64/oc /usr/share/openshift/mac/oc
11-
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/windows_amd64/oc.exe /usr/share/openshift/windows/oc.exe
10+
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/ /usr/share/openshift/
11+
RUN mkdir /usr/share/openshift/mac /usr/share/openshift/windows && ln /usr/share/openshift/darwin_amd64/oc /usr/share/openshift/mac/oc && ln /usr/share/openshift/windows_amd64/oc.exe /usr/share/openshift/windows/oc.exe
1212
LABEL io.k8s.display-name="OpenShift Clients" \
1313
io.k8s.description="OpenShift is a platform for developing, building, and deploying containerized applications." \
1414
io.openshift.tags="openshift,cli"

oc.spec

+1-1
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ GOARCH=s390x
100100

101101
%ifarch x86_64
102102
# Create Binaries for all supported arches
103-
%{make} cross-build GO_BUILD_PACKAGES:='./cmd/oc'
103+
%{make} cross-build-darwin-amd64 cross-build-windows-amd64 GO_BUILD_PACKAGES:='./cmd/oc'
104104
%endif
105105

106106
%install

0 commit comments

Comments
 (0)