blob: da7c327ab899494b959021ada847639045562d08 [file] [log] [blame]
Leonardo Sandoval42065f32020-08-28 15:29:01 -05001#
2# Copyright (c) 2020, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6
7# Makefile rules to help creating docker images based on a fvp model tarballs
8
9# allow user to possible define other dir for model tarballs
10TGZ_DIR ?= .
11
12# directory for docker build work
13WORKSPACE ?= workspace
14
15# find all tarballs located at TGZ_DIR
16tgzs=$(shell ls $(TGZ_DIR)/F*.tgz 2>/dev/null)
17
18define create-docker-image
19# tag varible is used so uniquely identify a model
20# and it is used to workspace directory and docker tag
21 tag=$(shell ./create-model-tag.sh $@) && \
22 tarball=$(shell basename $@) && \
23 rm -rf $(WORKSPACE)/$${tag} && \
24 mkdir -p $(WORKSPACE)/$${tag} && \
25 cp $@ $(WORKSPACE)/$${tag} && \
Leonardo Sandoval8172d672021-04-22 19:22:11 -050026 cp setup-sshd $(WORKSPACE)/$${tag} && \
Leonardo Sandoval42065f32020-08-28 15:29:01 -050027 ./create-model-dockerfile.sh $${tarball} $(WORKSPACE)/$${tag} && \
28 docker build --tag fvp:$${tag} $(WORKSPACE)/$${tag} > /dev/null && \
29 echo "Docker image created" && \
30 echo "Docker image name: (fvp:$${tag})" && \
31 echo "Docker Model files:" && \
32 echo "$$(docker run fvp:$${tag} ls)" && \
33 echo "Dockerfile: $(WORKSPACE)/$${tag}/Dockerfile"
34endef
35
36ifeq ($(tgzs),)
37all:
38 @echo No model tarballs found && exit 0
39else
40all: $(tgzs)
41$(tgzs):
42 $(create-docker-image)
43endif
44
45clean:
46 rm -rf $(WORKSPACE)
47
48.PHONY: $(tgzs)