containerd-packaging/Makefile.win

65 строки
1.9 KiB
Makefile

# Copyright 2018-2022 Docker Inc.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
include common/common.mk
.PHONY: src
src: src/github.com/containerd/containerd
ifdef CONTAINERD_DIR
src/github.com/containerd/containerd:
Xcopy /E /I "$(CONTAINERD_DIR)" $@
else
src/github.com/containerd/containerd:
git init $@
git -C $@ remote add origin "$(CONTAINERD_REMOTE)"
endif
.PHONY: checkout
checkout: src
@git -C src/github.com/containerd/containerd fetch --depth 1 origin "$(REF)"
@git -C src/github.com/containerd/containerd checkout -q FETCH_HEAD
# Windows builder, only difference is we installed make
windows-image: checkout
docker build \
--pull \
--build-arg GOLANG_IMAGE=$(GOLANG_IMAGE) \
-t dockereng/containerd-windows-builder \
-f dockerfiles/win.dockerfile \
.
echo 1 > $@
build/windows/%.exe: windows-image
Powershell.exe New-Item -ItemType Directory -Force -Path build/windows/
docker run \
--rm \
-v "$(CURDIR)/src/:C:/gopath/src" \
-v "$(CURDIR)/build/windows:C:/gopath/src/github.com/containerd/containerd/bin" \
-w "C:/gopath/src/github.com/containerd/containerd" \
dockereng/containerd-windows-builder \
make bin/$*
build/windows/containerd.zip: build/windows/containerd.exe build/windows/ctr.exe
Powershell.exe Compress-Archive -Force -Path 'build/windows/*.exe' -DestinationPath '$@'
.PHONY: archive
archive: build/windows/containerd.zip
.PHONY: clean
clean:
-$(RM) src
-$(RM) windows-image
-$(RM) build/windows