diff options
author | Nomura <nomura.rh@gmail.com> | 2023-03-28 11:25:19 +0200 |
---|---|---|
committer | Eli Schwartz <eschwartz93@gmail.com> | 2023-04-24 09:07:37 -0400 |
commit | 18cfa545f03ddb6cb8378fdadec4f284aa7ea221 (patch) | |
tree | d75c230d056ad9224087380d213e54a5ace40f87 /cross | |
parent | bda799dff2dc4b5d607f0e822b12ed0e2db38fb7 (diff) | |
download | meson-18cfa545f03ddb6cb8378fdadec4f284aa7ea221.zip meson-18cfa545f03ddb6cb8378fdadec4f284aa7ea221.tar.gz meson-18cfa545f03ddb6cb8378fdadec4f284aa7ea221.tar.bz2 |
Initial support for Metrowerks C/C++ compiler
Diffstat (limited to 'cross')
-rw-r--r-- | cross/metrowerks-arm.txt | 28 | ||||
-rw-r--r-- | cross/metrowerks-eppc.txt | 28 | ||||
-rw-r--r-- | cross/metrowerks.lcf | 18 |
3 files changed, 74 insertions, 0 deletions
diff --git a/cross/metrowerks-arm.txt b/cross/metrowerks-arm.txt new file mode 100644 index 0000000..a13175b --- /dev/null +++ b/cross/metrowerks-arm.txt @@ -0,0 +1,28 @@ +# This file assumes that the path to your Metrowerks Embedded ARM +# toolchain is added to the environment(PATH) variable, so that +# Meson can find the binaries while building. + +# You should also do one of the following to ensure Meson can +# locate the .lcf linker script: +# - Add the cross directory to PATH as well +# - Edit c_link_args and cpp_link_args with the full +# path to the .lcf file on your machine + +[binaries] +c = 'mwccarm' +c_ld = 'mwldarm' +cpp = 'mwccarm' +cpp_ld = 'mwldarm' +ar = 'mwldarm' +as = 'mwasmarm' + +[built-in options] +c_args = ['-lang', 'c99', '-D_NITRO', '-nosyspath'] +c_link_args = 'metrowerks.lcf' +cpp_args = ['-lang', 'c++', '-D_NITRO', '-nosyspath'] +cpp_link_args = 'metrowerks.lcf' + +[host_machine] +system = 'bare metal' +cpu_family = 'arm' +endian = 'little'
\ No newline at end of file diff --git a/cross/metrowerks-eppc.txt b/cross/metrowerks-eppc.txt new file mode 100644 index 0000000..e5e0e42 --- /dev/null +++ b/cross/metrowerks-eppc.txt @@ -0,0 +1,28 @@ +# This file assumes that the path to your Metrowerks toolchain +# of choice is added to the environment(PATH) variable, so that +# Meson can find the binaries while building. + +# You should also do one of the following to ensure Meson can +# locate the .lcf linker script: +# - Add the cross directory to PATH as well +# - Edit c_link_args and cpp_link_args with the full +# path to the lcf file on your machine + +[binaries] +c = 'mwcceppc' +c_ld = 'mwldeppc' +cpp = 'mwcceppc' +cpp_ld = 'mwldeppc' +ar = 'mwldeppc' +as = 'mwasmeppc' + +[built-in options] +c_args = ['-lang', 'c99', '-nosyspath'] +c_link_args = 'metrowerks.lcf' +cpp_args = ['-lang', 'c++', '-nosyspath'] +cpp_link_args = 'metrowerks.lcf' + +[host_machine] +system = 'bare metal' +cpu_family = 'ppc' +endian = 'little'
\ No newline at end of file diff --git a/cross/metrowerks.lcf b/cross/metrowerks.lcf new file mode 100644 index 0000000..96d13af --- /dev/null +++ b/cross/metrowerks.lcf @@ -0,0 +1,18 @@ +# General-purpose linker script for Metrowerks toolchains. +# This script will link a blank application. Its only purpose +# is to allow the toolchains to run Meson tests. To link an +# actual application, you need to write your own fine-tuned lcf. + +MEMORY { + TEST (RWX) : ORIGIN=0, LENGTH=0 +} + +SECTIONS { + .TEST:{ + * (.text) + * (.data) + * (.rodata) + * (.bss) + __startup=.; + } > TEST +}
\ No newline at end of file |