# read environment variables from ./env include ./env export # use sudo (non interactively) when running as regular user ifneq ($(shell id -u),0) AS_ROOT := sudo -n endif CTR := $(AS_ROOT) podman MOUNT := $(AS_ROOT) mount UMOUNT := $(AS_ROOT) umount CP := cp GIT := git CTR_IMG_TAG := avans-linux CTRIZE := $(CTR) run --rm --interactive --tty CTRIZE += --volume .:/workdir:rw # CTRIZE += --volume /tmp:/tmp:rw CTRIZE += --user $(shell id -u):$(shell id -g) CTRIZE += --env-file ./env CTRIZE += $(CTR_IMG_TAG) .PHONY: all all: os_bootloader .PHONY: container_img container_img: Containerfile $(CTR) build --tag $(CTR_IMG_TAG) . # this list holds the .git files in each submodule folder (add # $(SUBMODULE_INIT) as prerequisite to require the submodules to exist) SUBMODULE_INIT += ./u-boot/.git $(SUBMODULE_INIT): $(GIT) submodule init $(GIT) submodule update .PHONY: os_bootloader os_bootloader: container_img $(SUBMODULE_INIT) $(CTRIZE) $(MAKE) -$(MAKEFLAGS) -C u-boot am335x_evm_config $(CTRIZE) $(MAKE) -$(MAKEFLAGS) -C u-boot # sd card block device prefix (assumed partition numbers, see readme.md) # SDCARD_BD_PREFIX := /dev/sdc SDCARD_BD_PREFIX := /dev/mmcblk0p load_bootloader: $(os_bootloader) mkdir -p /tmp/sdcard-boot $(MOUNT) $(SDCARD_BD_PREFIX)1 /tmp/sdcard-boot $(AS_ROOT) $(CP) u-boot/MLO u-boot/u-boot.img u-boot/u-boot.dtb /tmp/sdcard-boot $(UMOUNT) $(SDCARD_BD_PREFIX)1 format_sd: $(AS_ROOT) mkfs.vfat -n BOOT -F 32 $(SDCARD_BD_PREFIX)1 $(AS_ROOT) mkfs.ext4 -L ROOTFS -F $(SDCARD_BD_PREFIX)2