ack/plat/linuxppc
George Koehler 865ef629dd Multiple tweaks to plat/linuxppc/descr
Don't define __POWERPC.  I don't know any other compiler that defines
__POWERPC and don't want to invent a new macro.  Apple's gcc 4.0.1
from Xcode 2.5 defines __ppc__, _ARCH_PPC, __POWERPC__.  Debian's gcc
4.9.2-10 defines _ARCH_PPC, __PPC__, __powerpc__, __PPC, __powerpc,
PPC, powerpc.

Move the base vm address from 0x80000000 down to 0x10000000, as this
is where Debian loads /bin/true.  This is still higher than the base
addresses for linux386 and linux68k.

Sync led's arguments with linux386.
2016-09-21 16:26:30 -04:00
..
include Mostly add support for the experimental and largely broken linuxppc platform. 2016-09-15 23:12:03 +02:00
libsys Rename our pseudo-opcode 'la' to 'li32'. 2016-09-18 17:03:23 -04:00
boot.s Check in incomplete Linux PowerPC and M68K work. 2013-05-08 00:48:48 +01:00
build-pkg.lua Mostly add support for the experimental and largely broken linuxppc platform. 2016-09-15 23:12:03 +02:00
build-tools.lua Mostly add support for the experimental and largely broken linuxppc platform. 2016-09-15 23:12:03 +02:00
descr Multiple tweaks to plat/linuxppc/descr 2016-09-21 16:26:30 -04:00
README Check in incomplete Linux PowerPC and M68K work. 2013-05-08 00:48:48 +01:00

# $Source: /cvsroot/tack/Ack/plat/linux386/README,v $
# $State: Exp $
# $Revision: 1.2 $


The linux386 platform
=====================

linux386 is an i386-based BSP that produces Linux ELF executables.

This port only implements a very limited number of system calls; basically,
just enough to make the demo apps run. Adding more is easy, but there are some
subtleties that require more thought. The port should be considered only in
proof-of-concept stage right now.

Important note: you *can't* link access ELF shared libraries from these
executables. In other words, you have to all your work from inside ACK.

IEEE floating point is available, but requires an FPU.

The executables are generated with aelfslod and are extremely simple; there's
one rwx ELF section which contains all the application's code and data. This
is not optimal, but it does work.


Bugs
====

isatty() is a stub and always returns 0.


Example command line
====================

ack -mlinux386 -O -o linux386.exe examples/paranoia.c

The file linux386.exe can then be run on a i386 Linux machine (or on an
emulation thereof).


David Given
dg@cowlark.com