blob: 8ffc9c1a88d20d1e2379fdd5496f3af5dae110a9 [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} && \
26 ./create-model-dockerfile.sh $${tarball} $(WORKSPACE)/$${tag} && \
27 docker build --tag fvp:$${tag} $(WORKSPACE)/$${tag} > /dev/null && \
28 echo "Docker image created" && \
29 echo "Docker image name: (fvp:$${tag})" && \
30 echo "Docker Model files:" && \
31 echo "$$(docker run fvp:$${tag} ls)" && \
32 echo "Dockerfile: $(WORKSPACE)/$${tag}/Dockerfile"
33endef
34
35ifeq ($(tgzs),)
36all:
37 @echo No model tarballs found && exit 0
38else
39all: $(tgzs)
40$(tgzs):
41 $(create-docker-image)
42endif
43
44clean:
45 rm -rf $(WORKSPACE)
46
47.PHONY: $(tgzs)