65 строки
1.9 KiB
Makefile
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
|