mirror of
https://github.com/google/pebble.git
synced 2025-03-26 21:19:07 +00:00
89 lines
2 KiB
Makefile
89 lines
2 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
|