mirror of https://github.com/google/pebble
				
				
				
			
		
			
				
	
	
		
			90 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Makefile
		
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Makefile
		
	
	
	
| # Copyright (c) 2016 ARM Limited
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #    http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| # USAGE:
 | |
| # specify the board using the command line:
 | |
| # make BOARD=[mbed board name]
 | |
| 
 | |
| BOARD=$(subst [mbed] ,,$(shell mbed target))
 | |
| HEAPSIZE=16
 | |
| 
 | |
| DEBUG=0
 | |
| NO_JS=0
 | |
| MBED_VERBOSE=0
 | |
| 
 | |
| MBED_CLI_FLAGS=-j0 --source . --source ../../
 | |
| 
 | |
| EXTRA_SRC=
 | |
| 
 | |
| ifneq ($(EXTRA_SRC),)
 | |
| EXTRA_SRC_MOD=--source $(subst :, --source ,$(EXTRA_SRC))
 | |
| MBED_CLI_FLAGS += $(EXTRA_SRC_MOD)
 | |
| endif
 | |
| 
 | |
| EXTERN_BUILD_DIR=
 | |
| 
 | |
| ifneq ($(EXTERN_BUILD_DIR),)
 | |
| MBED_CLI_FLAGS += --build $(EXTERN_BUILD_DIR)
 | |
| endif
 | |
| 
 | |
| ifeq ($(DEBUG), 1)
 | |
| MBED_CLI_FLAGS += -o debug-info
 | |
| endif
 | |
| 
 | |
| ifeq ($(MBED_VERBOSE), 1)
 | |
| MBED_CLI_FLAGS += -v
 | |
| else ifeq ($(MBED_VERBOSE), 2)
 | |
| MBED_CLI_FLAGS += -vv
 | |
| endif
 | |
| 
 | |
| MBED_CLI_FLAGS += -D "CONFIG_MEM_HEAP_AREA_SIZE=(1024*$(HEAPSIZE))"
 | |
| MBED_CLI_FLAGS += -t GCC_ARM
 | |
| 
 | |
| .PHONY: all js2c getlibs rebuild library
 | |
| all: source/jerry_targetjs.h source/pins.cpp .mbed ../../.mbedignore
 | |
| 	mbed target $(BOARD)
 | |
| 	mbed compile $(MBED_CLI_FLAGS)
 | |
| 
 | |
| library: .mbed ../../.mbedignore
 | |
| 	# delete encoded js code if it exists
 | |
| 	rm -f source/jerry_targetjs.h
 | |
| 	mbed target $(BOARD)
 | |
| 	mbed compile $(MBED_CLI_FLAGS) --library
 | |
| 
 | |
| clean:
 | |
| 	rm -rf .build/$(BOARD)
 | |
| 
 | |
| js2c: js/main.js js/flash_leds.js
 | |
| 	python ../tools/js2c.py --ignore pins.js
 | |
| 
 | |
| source/pins.cpp: 
 | |
| 	python tools/generate_pins.py ${BOARD}
 | |
| 
 | |
| ifeq ($(NO_JS),0)
 | |
| source/jerry_targetjs.h: js2c
 | |
| else
 | |
| source/jerry_targetjs.h: ;
 | |
| endif
 | |
| 
 | |
| getlibs: .mbed
 | |
| 
 | |
| .mbed:
 | |
| 	mbed config root .
 | |
| 	mbed toolchain GCC_ARM
 | |
| 	mbed target $(BOARD)
 | |
| 	mbed deploy
 | |
| 
 | |
| ../../.mbedignore:
 | |
| 	cp ./template-mbedignore.txt ../../.mbedignore
 |