switch-coreboot/HACKING
Uwe Hermann 3680265c23 Document origins of util/lar/elf.h (trivial).
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://coreboot.org/repository/coreboot-v3@653 f3766cd6-281f-0410-b1cd-43a5c92072e9
2008-04-04 14:02:39 +00:00

131 lines
4.4 KiB
Text

-------------------------------------------------------------------------------
HACKING
-------------------------------------------------------------------------------
Development Guidelines
----------------------
Please read http://www.coreboot.org/Development_Guidelines.
Doxygen-generated Code/API Documentation
----------------------------------------
The source code of coreboot is documented using Doxygen-style code comments.
The Doxygen tool can generate HTML API documentation out of these comments.
You can generate this documentation via:
make doxy
The documentation will be stored in the doxygen/html directory.
The generation of the documentation takes ca. 1-2 minutes, and may require
more than 30 MB of space on the hard drive, depending on the options
selected in the Doxygen config file, util/doxygen/Doxyfile.coreboot.
Required software:
* Doxygen (tested with Doxgen 1.5.1)
http://www.doxygen.org/
* dot (>= 1.8.10)
http://www.graphviz.org/
Building on Mac OS X
-------------------
You have to install MacPorts (tried with 1.4).
Then you go
$ sudo port install gettext
$ sudo port install bison
$ sudo port install i386-elf-binutils
$ sudo port install i386-elf-gcc
$ rehash
Third-party Code and License Overview
-------------------------------------
* util/dtc/*: GPLv2 or later
Source: git://www.jdl.com/software/dtc.git
Current version we use: 332c53642557a018ca9c729a4cd284c6e34b7f72 (07/2006)
* util/kconfig/*: GPLv2
Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Current version we use: 15508d22d00277a1f2a1022dce38f2772c810d32 (02/2006)
* util/lar/*: GPLv2
Independant project, but written specifically for coreboot.
* util/lar/elf.h: LGPL-2.1 or later
Source: glibc, http://ftp.gnu.org/gnu/glibc/
Original files: elf/elf.h
Current version we use: 2.7
* include/lar.h, util/lar/lar.h, util/lar/example.c:
Dual-licensed (GPLv2 + revised BSD license)
* util/lzma/C/*: Dual-licensed, LGPL + Common Public License (CPL). There's
a special exception, please see util/lzma/C/7zip/Decompress/LzmaDecode.c.
Source: LZMA SDK, http://sourceforge.net/projects/sevenzip/
Current version we use: LZMA SDK 4.42 (05/2006)
* util/lzma/minilzma.cc: ?
Source: ?
Current version we use: ?
* util/nrv2b/nrv2b.c: ?
Source: ?
Current version we use: ?
* include/elf.h: LGPLv2.1 or later
Source: The GNU C Library, http://www.gnu.org/software/libc/
You can get the latest version of the file via CVS:
cvs -d:pserver:anoncvs@sources.redhat.com:/cvs/glibc co libc/elf/elf.h
Current version we use: CVS rev. 1.156
* include/device/pci_ids.h: GPLv2
Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Current version we use: e81e557a8f1e22fab1b1bdc649ac0d24017ddce2
* lib/lzmadecode.[ch]: Dual-licensed, LGPL + Common Public License (CPL).
There's a special exception, please see lib/lzmadecode.[ch].
Source: LZMA SDK, http://sourceforge.net/projects/sevenzip/
Current version we use: LZMA SDK 4.40 (05/2006)
* lib/compute_ip_checksum.c, include/ip_checksum.h: GPLv2
Source: kexec-tools, http://www.xmission.com/~ebiederm/files/kexec/
Current version we use: kexec-tools 1.101
* lib/clog2.c: Triple-licensed, MPL 1.1/GPL 2.0/LGPL 2.1
Source: http://lxr.mozilla.org/mozilla1.8.0/source/js/src/jscpucfg.c
Current version we use: CVS rev. 3.25
* include/arch/x86/div64.h: GPLv2
Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Current version we use: e2afe67453e5b1499459ee3596b1e7924a5208f5
* include/arch/x86/cpu.h: GPLv2
Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Files: include/asm-i386/processor.h, arch/i386/kernel/cpu/mtrr/state.c
Current version we use: 297d9c035edd04327fedc0d1da27c2b112b66fcc (06/2007)
* include/arch/x86/arch/spinlock.h: GPLv2
Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Files: include/asm-i386/spinlock.h, include/asm-i386/spinlock_types.h
Current version we use: 139ec7c416248b9ea227d21839235344edfee1e0 (12/2006)
* include/arch/x86/swab.h: GPLv2
Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Current version we use: ?
* arch/x86/i8259.c: GPLv2
Source: Linux kernel, arch/i386/boot/setup.S
Current version we use: Linux 2.2.26
* console/vsprintf.c, console/vtxprintf.c: GPLv2
Source: Linux kernel, lib/vsprintf.c
Current version we use: ?