aboutsummaryrefslogtreecommitdiff
path: root/targets/baremetal-sdk/particle/Makefile.particle
diff options
context:
space:
mode:
authorRoland Takacs <1487864+rtakacs@users.noreply.github.com>2021-12-06 11:02:52 +0100
committerGitHub <noreply@github.com>2021-12-06 11:02:52 +0100
commitaf297bc5784ad702a4b149fdf996401576751378 (patch)
tree73fdb6c590447b622da7dcd1d1ed06f6197c6314 /targets/baremetal-sdk/particle/Makefile.particle
parent9860d66a56ed44f62e1dafb9900e6f2c886a56d3 (diff)
Separate targets into os and baremetal-sdk parts (#4842)
JerryScript-DCO-1.0-Signed-off-by: Roland Takacs roland.takacs@h-lab.eu
Diffstat (limited to 'targets/baremetal-sdk/particle/Makefile.particle')
-rw-r--r--targets/baremetal-sdk/particle/Makefile.particle63
1 files changed, 63 insertions, 0 deletions
diff --git a/targets/baremetal-sdk/particle/Makefile.particle b/targets/baremetal-sdk/particle/Makefile.particle
new file mode 100644
index 00000000..aae19783
--- /dev/null
+++ b/targets/baremetal-sdk/particle/Makefile.particle
@@ -0,0 +1,63 @@
+# Copyright JS Foundation and other contributors, http://js.foundation
+#
+# 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.
+
+PARTICLE_FIRMWARE := $(CURDIR)/../particle/firmware
+
+JERRYDIR ?= $(CURDIR)
+JERRYHEAP ?= 16
+
+BUILD_DIR ?= $(JERRYDIR)/build/particle
+
+EXT_CFLAGS += -mlittle-endian -mthumb -mcpu=cortex-m4
+EXT_CFLAGS += -Wno-error=format=
+
+.PHONY: jerrycore jerry-main flash clean
+
+PARTICLE_BUILD_CONFIG = \
+ INCLUDE_DIRS=$(JERRYDIR)/jerry-core/include \
+ LIBS=jerry-core \
+ PLATFORM=photon \
+ LIB_DIRS=$(BUILD_DIR)/lib \
+ APPDIR=$(JERRYDIR)/targets/baremetal-sdk/particle/source \
+ TARGET_FILE=jerry_main \
+ TARGET_DIR=$(BUILD_DIR) \
+ LDFLAGS=--specs=nano.specs
+
+all: jerrycore jerry-main
+
+jerrycore:
+ mkdir -p $(BUILD_DIR)
+ cmake -B$(BUILD_DIR) -H./ \
+ -DCMAKE_SYSTEM_NAME=MCU \
+ -DCMAKE_SYSTEM_PROCESSOR=armv7l \
+ -DCMAKE_C_COMPILER=arm-none-eabi-gcc \
+ -DCMAKE_C_COMPILER_WORKS=TRUE \
+ -DENABLE_LTO=ON \
+ -DJERRY_CMDLINE=OFF \
+ -DJERRY_PROFILE=minimal \
+ -DENABLE_STRIP=OFF \
+ -DEXTERNAL_COMPILE_FLAGS="$(EXT_CFLAGS)" \
+ -DJERRY_GLOBAL_HEAP_SIZE=$(JERRYHEAP)
+
+ make -C$(BUILD_DIR) jerry-core
+
+jerry-main: jerrycore
+ $(PARTICLE_BUILD_CONFIG) make -C$(PARTICLE_FIRMWARE) -f $(PARTICLE_FIRMWARE)/makefile
+
+flash:
+ $(PARTICLE_BUILD_CONFIG) make -C$(PARTICLE_FIRMWARE)/main -f $(PARTICLE_FIRMWARE)/main/makefile program-dfu
+
+clean:
+ $(PARTICLE_BUILD_CONFIG) make -C$(PARTICLE_FIRMWARE) -f $(PARTICLE_FIRMWARE)/makefile clean
+ rm -rf $(BUILD_DIR)