m68k support
See original GitHub issueGeorge Nakos runs ~http://brownbot.hopto.org/~ http://brownbot.mooo.com/ which has m68k support. I asked him how he did it and he gamely had a crack at a patch for CE. He had to bail as it got a little warty but here’s his notes:
We build binutils using:
../binutils-2.27/configure --disable-multilib --disable-nls --enable-lto --prefix=/usr --target=m68k-ataribrown-elf
So, a plain binutils 2.27, nothing fancy at all. We chose the "ataribrown" name to differentiate from other versions of cross-gcc for ataris floating about. I guess you could use "unknown" so it's a bit more generic, after all there's no patching on this level at all so it should apply for all m68k based machines.
Next, we build gcc itself using:
../gcc-6.2.0/configure \
--target=m68k-ataribrown-elf \
--disable-nls \
--enable-languages=c,c++ \
--enable-lto \
--prefix=/usr \
--disable-libssp \
--enable-softfloat \
--disable-libstdcxx-pch \
--disable-clocale \
--disable-libstdcxx-threads \
--disable-libstdcxx-filesystem-ts \
--disable-libquadmath \
--enable-cxx-flags='-O2 -fomit-frame-pointer -fno-threadsafe-statics -fno-exceptions -fno-rtti -fleading-underscore' \
CFLAGS_FOR_TARGET="-O2 -fomit-frame-pointer -fno-threadsafe-statics -fleading-underscore" \
CXXFLAGS_FOR_TARGET="-O2 -fomit-frame-pointer -fno-threadsafe-statics -fno-exceptions -fno-rtti -fleading-underscore" \
LDFLAGS_FOR_TARGET="--emit-relocs -Ttext=0"
Most of the switches deal with switching off stuff that made compilation fail (exceptions for example, especially when building the libs).
From what I understand you don't require building any libs, right? If yes then this is pretty much it if I'm not mistaken. I've tried building it in linux mint 18 (which is ubuntu 16.06 or 16.04 - can't remember) so it should build cleanly.
Issue Analytics
- State:
- Created 7 years ago
- Reactions:1
- Comments:10 (4 by maintainers)
Top Results From Across the Web
Documentation/Platforms/m68k
2 How to help; 3 Pictures; 4 Links; 5 Maintainer contact info. m68k emulator. The following machines are emulated through qemu-system-m68k: ...
Read more >Planet m68k
The IDE is in active development and free software (GPLv3). The programming languages supported are a Pascal dialect and support for assembler. The...
Read more >The Linux/m68k Home Pages
Everything you'd ever want to know about Linux/m68k, the Linux port for Motorola 680x0-based systems. Supported systems include the Amiga, Apple Macintosh, ...
Read more >Debian -- Motorola 680x0 Port
Currently, the Debian/m68k port supports Atari, Amiga, VMEbus, and some Macintosh systems. For further information on the current status of the ...
Read more >m68k-linux-gnu-as(1) - Linux man page
This may help debugging assembler code, if the debugger can handle it. Note---this option is only supported by some targets, not all of...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Hi @mattgodbolt
TLDR: Yea, you’d need to enable m68k there.
Min-Yih mentions in https://groups.google.com/g/llvm-dev/c/KH5jlTH_is4
I’m also working pretty hard recently on upstreaming Motorola M68k backend to LLVM [1], and the works are wrapping up so I might can give some advices …
Usually a new target will enter LLVM as an experimental target first (it will not be build by default unless designated by the
LLVM_EXPERIMENTAL_TARGETS_TO_BUILD
cmake variable) before becoming an official one. …FYI m68k has now landed in LLVM: https://github.com/llvm/llvm-project/tree/main/llvm/lib/Target/M68k