coreboot-kgpe-d16/payloads/libpayload
Stefan Reinauer 7208f6e031 don't hardcode i386 in lpgcc
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de> 


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5294 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
2010-03-25 18:54:43 +00:00
..
arch prevent timer overflows in libpayload 2010-03-25 18:53:20 +00:00
bin don't hardcode i386 in lpgcc 2010-03-25 18:54:43 +00:00
configs This change adds PPC support to libpayload, and hooks it up in the build 2009-05-21 10:02:52 +00:00
crypto [PATCH] libpayload: rename config.h to libpayload-config.h 2008-11-24 17:54:46 +00:00
curses Trivial fix, use correct define. 2010-03-08 13:08:24 +00:00
drivers make keyboard reset driver generic (not pc keyboard driver dependent) 2010-03-25 18:52:24 +00:00
include make keyboard reset driver generic (not pc keyboard driver dependent) 2010-03-25 18:52:24 +00:00
lib This patch fixes payloads on certain Fedora versions 2009-07-18 15:18:22 +00:00
libc fix buggy comment in libpayload's strncat function 2009-08-05 13:10:38 +00:00
sample [PATCH] libpayload: rename config.h to libpayload-config.h 2008-11-24 17:54:46 +00:00
util/kconfig 1. 2008-09-23 21:29:53 +00:00
Config.in This change adds PPC support to libpayload, and hooks it up in the build 2009-05-21 10:02:52 +00:00
Doxyfile [PATCH]: Libpayload: Remove static variables from the doxygen output 2008-08-28 23:10:25 +00:00
LICENSES Document all of the external code we use in libpayload (trivial). 2008-08-11 20:34:50 +00:00
Makefile allow libpayload to completely build out of tree. 2010-03-25 18:54:08 +00:00
README Add more information to the libpayload README (trivial). 2008-08-18 18:55:33 +00:00

README

-------------------------------------------------------------------------------
libpayload README
-------------------------------------------------------------------------------

libpayload is a minimal library to support standalone payloads
that can be booted with firmware like coreboot. It handles the setup
code, and provides common C library symbols such as malloc() and printf().

Note: This is _not_ a standard library for use with an operating system,
rather it's only useful for coreboot payload development!
See http://coreboot.org for details on coreboot.


Installation
------------

 $ svn co svn://coreboot.org/repos/trunk/payloads/libpayload

 $ cd libpayload

 $ make menuconfig

 $ make

 $ sudo make install (optional, will install into /opt per default)

As libpayload is for 32bit x86 systems only, you might have to install the
32bit libgcc version, otherwise your payloads will fail to compile.
On Debian systems you'd do 'apt-get install gcc-multilib' for example.


Usage
-----

Here's an example of a very simple payload (hello.c) and how to build it:

 #include <libpayload.h>

 int main(void)
 {
     printf("Hello, world!\n");
     return 0;
 }

Building the payload using the 'lpgcc' compiler wrapper:

 $ lpgcc -o hello.elf hello.c

Please see the sample/ directory for details.


Website and Mailing List
------------------------

The main website is http://www.coreboot.org/Libpayload.

For additional information, patches, and discussions, please join the
coreboot mailing list at http://coreboot.org/Mailinglist, where most
libpayload developers are subscribed.


Copyright and License
---------------------

See LICENSES.