Add Makefile command line variables to enable docker and podman

Instead of having to edit the Makefile, we can now do:

make DOCKER=1
make PODMAN=1

Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
pull/180/head
Anton Blanchard 4 years ago committed by Anton Blanchard
parent 224e7734a8
commit 6326efaca4

@ -1,20 +1,29 @@
GHDL=ghdl GHDL ?= ghdl
GHDLFLAGS=--std=08 --work=unisim GHDLFLAGS=--std=08 --work=unisim
CFLAGS=-O2 -Wall CFLAGS=-O2 -Wall


# We need a version of GHDL built with either the LLVM or gcc backend. # We need a version of GHDL built with either the LLVM or gcc backend.
# Fedora provides this, but other distros may not. Another option is to use # Fedora provides this, but other distros may not. Another option is to use
# the Docker image. # the Docker image.
# DOCKER ?= 0
# Uncomment one of these to build with Docker or podman PODMAN ?= 0
#DOCKER=docker
DOCKER=podman ifeq ($(DOCKER), 1)
# DOCKERBIN=docker
# Uncomment these lines to build with Docker/podman USE_DOCKER=1
endif

ifeq ($(PODMAN), 1)
DOCKERBIN=podman
USE_DOCKER=1
endif

ifeq ($(USE_DOCKER), 1)
PWD = $(shell pwd) PWD = $(shell pwd)
DOCKERARGS = run --rm -v $(PWD):/src:z -w /src DOCKERARGS = run --rm -v $(PWD):/src:z -w /src
GHDL = $(DOCKER) $(DOCKERARGS) ghdl/ghdl:buster-llvm-7 ghdl GHDL = $(DOCKERBIN) $(DOCKERARGS) ghdl/ghdl:buster-llvm-7 ghdl
CC = $(DOCKER) $(DOCKERARGS) ghdl/ghdl:buster-llvm-7 gcc CC = $(DOCKERBIN) $(DOCKERARGS) ghdl/ghdl:buster-llvm-7 gcc
endif


all = core_tb icache_tb dcache_tb multiply_tb dmi_dtm_tb divider_tb \ all = core_tb icache_tb dcache_tb multiply_tb dmi_dtm_tb divider_tb \
rotator_tb countzero_tb wishbone_bram_tb soc_reset_tb rotator_tb countzero_tb wishbone_bram_tb soc_reset_tb

@ -37,7 +37,7 @@ cd ../../../
appears not to). ghdl with the LLVM backend is likely easier to build. appears not to). ghdl with the LLVM backend is likely easier to build.


If building ghdl from scratch is too much for you, the microwatt Makefile If building ghdl from scratch is too much for you, the microwatt Makefile
supports using Docker or podman images. Read through the Makefile for details. supports using Docker or Podman.


- Next build microwatt: - Next build microwatt:


@ -45,6 +45,17 @@ cd ../../../
git clone https://github.com/antonblanchard/microwatt git clone https://github.com/antonblanchard/microwatt
cd microwatt cd microwatt
make make
```

To build using Docker:
```
make DOCKER=1
```

and to build using Podman:

```
make PODMAN=1
``` ```


- Link in the micropython image: - Link in the micropython image:

Loading…
Cancel
Save