aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorinmarket <andrewh@inmarket.com.au>2014-10-06 17:05:16 +1000
committerinmarket <andrewh@inmarket.com.au>2014-10-06 17:05:16 +1000
commit5a3f22617b02ec366461be21765e636e6bdd0222 (patch)
tree853945ab638d80f7d027bd08231f18ea94b4b4e9 /tools
parent50dfad6f038ed5d20a357f634a70b23c570b26ed (diff)
downloaduGFX-5a3f22617b02ec366461be21765e636e6bdd0222.tar.gz
uGFX-5a3f22617b02ec366461be21765e636e6bdd0222.tar.bz2
uGFX-5a3f22617b02ec366461be21765e636e6bdd0222.zip
Add support for FreeRTOS into make system
Diffstat (limited to 'tools')
-rw-r--r--tools/gmake_scripts/cpu_armv6.mk18
-rw-r--r--tools/gmake_scripts/cpu_raspberrypi.mk18
-rw-r--r--tools/gmake_scripts/os_freertos.mk36
-rw-r--r--tools/gmake_scripts/readme.txt2
4 files changed, 73 insertions, 1 deletions
diff --git a/tools/gmake_scripts/cpu_armv6.mk b/tools/gmake_scripts/cpu_armv6.mk
new file mode 100644
index 00000000..0fa5867e
--- /dev/null
+++ b/tools/gmake_scripts/cpu_armv6.mk
@@ -0,0 +1,18 @@
+#
+# This file is subject to the terms of the GFX License. If a copy of
+# the license was not distributed with this file, you can obtain one at:
+#
+# http://ugfx.org/license.html
+#
+
+#
+# See readme.txt for the make API
+#
+
+# Requirements:
+#
+# NONE
+#
+
+SRCFLAGS += -march=armv6 -mfpu=vfp -mfloat-abi=hard
+LDFLAGS += -march=armv6 -mfpu=vfp -mfloat-abi=hard
diff --git a/tools/gmake_scripts/cpu_raspberrypi.mk b/tools/gmake_scripts/cpu_raspberrypi.mk
new file mode 100644
index 00000000..b31c35e9
--- /dev/null
+++ b/tools/gmake_scripts/cpu_raspberrypi.mk
@@ -0,0 +1,18 @@
+#
+# This file is subject to the terms of the GFX License. If a copy of
+# the license was not distributed with this file, you can obtain one at:
+#
+# http://ugfx.org/license.html
+#
+
+#
+# See readme.txt for the make API
+#
+
+# Requirements:
+#
+# NONE
+#
+
+SRCFLAGS += -march=armv6zk -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard
+LDFLAGS += -march=armv6zk -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard
diff --git a/tools/gmake_scripts/os_freertos.mk b/tools/gmake_scripts/os_freertos.mk
new file mode 100644
index 00000000..5cbd5be0
--- /dev/null
+++ b/tools/gmake_scripts/os_freertos.mk
@@ -0,0 +1,36 @@
+#
+# This file is subject to the terms of the GFX License. If a copy of
+# the license was not distributed with this file, you can obtain one at:
+#
+# http://ugfx.org/license.html
+#
+
+# See readme.txt for the make API
+
+# Requirements:
+#
+# FREERTOS: The location of the FreeRTOS code eg FREERTOS=../FreeRTOS
+# FREERTOS_BOARD The board name eg FREERTOS_BOARD=RaspberryPi
+#
+
+# Optional:
+#
+# FREERTOS_MODULES A list of directories containing FreeRTOS source (eg drivers, startup etc) - default is ""
+# FREERTOS_LDSCRIPT The loader script - default is ""
+#
+
+PATHLIST += FREERTOS
+
+FREERTOS_MODULES += $(FREERTOS)/Source/portable/GCC/$(FREERTOS_BOARD)
+FREERTOS_MODULES += $(FREERTOS)/Source/portable/MemMang
+FREERTOS_MODULES += $(FREERTOS)/Source
+
+INCPATH += $(FREERTOS)/Source/portable/GCC/$(FREERTOS_BOARD) \
+ $(FREERTOS)/Source/include
+
+SRC += $(foreach sdir,$(FREERTOS_MODULES),$(wildcard $(sdir)/*.s))
+SRC += $(foreach sdir,$(FREERTOS_MODULES),$(wildcard $(sdir)/*.c))
+
+ifeq ($(LDSCRIPT),)
+ LDSCRIPT= $(FREERTOS_LDSCRIPT)
+endif
diff --git a/tools/gmake_scripts/readme.txt b/tools/gmake_scripts/readme.txt
index eec7dd95..67206ed9 100644
--- a/tools/gmake_scripts/readme.txt
+++ b/tools/gmake_scripts/readme.txt
@@ -16,7 +16,7 @@ OPT_COPY_EXE=no|yes - Copy the final program to the local project directory -
OPT_NONSTANDARD_FLAGS=no - Turn off adding the standard compiler language flags - default no
OPT_LINK_OPTIMIZE=no - Remove unused code/data during link - default no
OPT_OS=win32|win32.chibios|linux|osx|chibios|freertos|ecos|raw32|rawrtos - Mandatory: The operating system
-OPT_CPU=x86|x64|stm32m4|at91sam7 - Add some cpu dependant flags
+OPT_CPU=x86|x64|stm32m4|at91sam7|armv6|raspberrypi - Add some cpu dependant flags
BUILDDIR - Build Directory - default is ".build" or "bin/Debug" or "bin/Release" depending on the target
PROJECT - Project Name - default is the name of the project directory