You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					47 lines
				
				1.3 KiB
			
		
		
			
		
	
	
					47 lines
				
				1.3 KiB
			|   
											8 years ago
										 | #
 | ||
|  | #             LUFA Library
 | ||
|  | #     Copyright (C) Dean Camera, 2017.
 | ||
|  | #
 | ||
|  | #  dean [at] fourwalledcubicle [dot] com
 | ||
|  | #           www.lufa-lib.org
 | ||
|  | #
 | ||
|  | 
 | ||
|  | # Makefile to build all the LUFA Host Demos. Call with "make all" to
 | ||
|  | # rebuild all Host demos.
 | ||
|  | 
 | ||
|  | # Projects are pre-cleaned before each one is built, to ensure any
 | ||
|  | # custom LUFA library build options are reflected in the compiled
 | ||
|  | # code.
 | ||
|  | 
 | ||
|  | PROJECT_DIRECTORIES := $(shell ls -d */) | ||
|  | 
 | ||
|  | # This makefile is potentially infinitely recursive if something really bad
 | ||
|  | # happens when determining the set of project directories - hard-abort if
 | ||
|  | # more than 10 levels deep to avoid angry emails.
 | ||
|  | ifeq ($(MAKELEVEL), 10) | ||
|  |    $(error EMERGENCY ABORT: INFINITE RECURSION DETECTED) | ||
|  | endif | ||
|  | 
 | ||
|  | # Need to special-case building without a per-project object directory
 | ||
|  | ifeq ($(OBJDIR),) | ||
|  |    # If no target specified, force "clean all" and disallow parallel build | ||
|  |    ifeq ($(MAKECMDGOALS),) | ||
|  |       MAKECMDGOALS := clean all | ||
|  |       .NOTPARALLEL: | ||
|  |    endif | ||
|  | 
 | ||
|  |    # If one of the targets is to build, force "clean" beforehand and disallow parallel build | ||
|  |    ifneq ($(findstring all, $(MAKECMDGOALS)),) | ||
|  |       MAKECMDGOALS := clean $(MAKECMDGOALS) | ||
|  |       .NOTPARALLEL: | ||
|  |    endif | ||
|  | endif | ||
|  | 
 | ||
|  | %: $(PROJECT_DIRECTORIES) | ||
|  | 	@echo . > /dev/null | ||
|  | 
 | ||
|  | $(PROJECT_DIRECTORIES): | ||
|  | 	@$(MAKE) -C $@ $(MAKECMDGOALS) | ||
|  | 
 | ||
|  | .PHONY: $(PROJECT_DIRECTORIES) |