ATMOSPHERE_BUILD_CONFIGS := all: release define ATMOSPHERE_ADD_TARGET ATMOSPHERE_BUILD_CONFIGS += $(strip $1) $(strip $1): mesosphere$(strip $2).bin mesosphere$(strip $2).bin: kernel/kernel$(strip $2).bin kernel_ldr/kernel_ldr$(strip $2).bin @python build_mesosphere.py kernel_ldr/kernel_ldr$(strip $2).bin kernel/kernel$(strip $2).bin mesosphere$(strip $2).bin $(4) @echo "Built mesosphere$(strip $2).bin..." kernel/kernel$(strip $2).bin: check_libmeso$(strip $1) @$$(MAKE) -C kernel $(strip $1) $(3) kernel_ldr/kernel_ldr$(strip $2).bin: check_libmeso$(strip $1) @$$(MAKE) -C kernel_ldr $(strip $1) $(3) check_libmeso$(strip $1): @$$(MAKE) -C ../libraries/libmesosphere $(strip $1) $(3) clean-$(strip $1): @$$(MAKE) -C ../libraries/libmesosphere clean-$(strip $1) $(3) @$$(MAKE) -C kernel clean-$(strip $1) $(3) @$$(MAKE) -C kernel_ldr clean-$(strip $1) $(3) @rm -f mesosphere$(strip $2).bin endef $(eval $(call ATMOSPHERE_ADD_TARGET, release, ,,)) $(eval $(call ATMOSPHERE_ADD_TARGET, debug, _debug,,)) $(eval $(call ATMOSPHERE_ADD_TARGET, audit, _audit,,)) $(eval $(call ATMOSPHERE_ADD_TARGET, qemu_virt_release, _qemu_virt, \ ATMOSPHERE_BOARD="qemu-virt" \ ATMOSPHERE_CPU="arm-cortex-a57" \ , ../tests/TestSvc/TestSvc.kip \ )) $(eval $(call ATMOSPHERE_ADD_TARGET, qemu_virt_debug, _qemu_virt_debug, \ ATMOSPHERE_BOARD="qemu-virt" \ ATMOSPHERE_CPU="arm-cortex-a57" \ , ../tests/TestSvc/TestSvc.kip \ )) $(eval $(call ATMOSPHERE_ADD_TARGET, qemu_virt_audit, _qemu_virt_audit, \ ATMOSPHERE_BOARD="qemu-virt" \ ATMOSPHERE_CPU="arm-cortex-a57" \ , ../tests/TestSvc/TestSvc.kip \ )) clean: @$(MAKE) -C ../libraries/libmesosphere clean @$(MAKE) -C kernel clean @$(MAKE) -C kernel_ldr clean @rm -f mesosphere*.bin .PHONY: all clean $(foreach config,$(ATMOSPHERE_BUILD_CONFIGS),$(config) clean-$(config))