coreboot-v3/HACKING
<<
>>
Prefs
   1-------------------------------------------------------------------------------
   2HACKING
   3-------------------------------------------------------------------------------
   4
   5Development Guidelines
   6----------------------
   7
   8Please read http://www.coreboot.org/Development_Guidelines.
   9
  10
  11Doxygen-generated Code/API Documentation
  12----------------------------------------
  13
  14The source code of coreboot is documented using Doxygen-style code comments.
  15The Doxygen tool can generate HTML API documentation out of these comments.
  16
  17You can generate this documentation via:
  18
  19  make doxy
  20
  21The documentation will be stored in the doxygen/html directory.
  22
  23The generation of the documentation takes ca. 1-2 minutes, and may require
  24more than 30 MB of space on the hard drive, depending on the options
  25selected in the Doxygen config file, util/doxygen/Doxyfile.coreboot.
  26
  27Required software:
  28
  29  * Doxygen (tested with Doxgen 1.5.1)
  30    http://www.doxygen.org/
  31  
  32  * dot (>= 1.8.10)
  33    http://www.graphviz.org/
  34
  35Building on Mac OS X
  36-------------------
  37
  38You have to install MacPorts (tried with 1.4).
  39
  40Then you go
  41
  42 $ sudo port install gettext
  43 $ sudo port install bison
  44 $ sudo port install i386-elf-binutils 
  45 $ sudo port install i386-elf-gcc
  46 $ rehash
  47
  48Third-party Code and License Overview
  49-------------------------------------
  50
  51* util/dtc/*: GPLv2 or later
  52  Source: git://www.jdl.com/software/dtc.git
  53  Current version we use: 332c53642557a018ca9c729a4cd284c6e34b7f72 (07/2006)
  54
  55* util/kconfig/*: GPLv2
  56  Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
  57  Current version we use: 15508d22d00277a1f2a1022dce38f2772c810d32 (02/2006)
  58
  59* util/lar/*: GPLv2
  60  Independant project, but written specifically for coreboot.
  61
  62* util/lar/elf.h: LGPL-2.1 or later
  63  Source: glibc, http://ftp.gnu.org/gnu/glibc/
  64  Original files: elf/elf.h
  65  Current version we use: 2.7
  66
  67* include/lar.h, util/lar/lar.h, util/lar/example.c:
  68  Dual-licensed (GPLv2 + revised BSD license)
  69
  70* util/lzma/C/*: Dual-licensed, LGPL + Common Public License (CPL). There's
  71  a special exception, please see util/lzma/C/7zip/Decompress/LzmaDecode.c.
  72  Source: LZMA SDK, http://sourceforge.net/projects/sevenzip/
  73  Current version we use: LZMA SDK 4.42 (05/2006)
  74
  75* util/lzma/minilzma.cc: ?
  76  Source: ?
  77  Current version we use: ?
  78
  79* util/nrv2b/nrv2b.c: ?
  80  Source: ?
  81  Current version we use: ?
  82
  83* include/elf.h: LGPLv2.1 or later
  84  Source: The GNU C Library, http://www.gnu.org/software/libc/
  85  You can get the latest version of the file via CVS:
  86  cvs -d:pserver:anoncvs@sources.redhat.com:/cvs/glibc co libc/elf/elf.h
  87  Current version we use: CVS rev. 1.156
  88
  89* include/device/pci_ids.h: GPLv2
  90  Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
  91  Current version we use: e81e557a8f1e22fab1b1bdc649ac0d24017ddce2
  92
  93* lib/lzmadecode.[ch]: Dual-licensed, LGPL + Common Public License (CPL).
  94  There's a special exception, please see lib/lzmadecode.[ch].
  95  Source: LZMA SDK, http://sourceforge.net/projects/sevenzip/
  96  Current version we use: LZMA SDK 4.40 (05/2006)
  97
  98* lib/compute_ip_checksum.c, include/ip_checksum.h: GPLv2
  99  Source: kexec-tools, http://www.xmission.com/~ebiederm/files/kexec/
 100  Current version we use: kexec-tools 1.101
 101
 102* lib/clog2.c: Triple-licensed, MPL 1.1/GPL 2.0/LGPL 2.1
 103  Source: http://lxr.mozilla.org/mozilla1.8.0/source/js/src/jscpucfg.c
 104  Current version we use: CVS rev. 3.25
 105
 106* include/arch/x86/div64.h: GPLv2
 107  Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
 108  Current version we use: e2afe67453e5b1499459ee3596b1e7924a5208f5
 109
 110* include/arch/x86/cpu.h: GPLv2
 111  Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
 112  Files: include/asm-i386/processor.h, arch/i386/kernel/cpu/mtrr/state.c
 113  Current version we use: 297d9c035edd04327fedc0d1da27c2b112b66fcc (06/2007)
 114
 115* include/arch/x86/arch/spinlock.h: GPLv2
 116  Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
 117  Files: include/asm-i386/spinlock.h, include/asm-i386/spinlock_types.h
 118  Current version we use: 139ec7c416248b9ea227d21839235344edfee1e0 (12/2006)
 119
 120* include/arch/x86/swab.h: GPLv2
 121  Source: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
 122  Current version we use: ?
 123
 124* arch/x86/i8259.c: GPLv2
 125  Source: Linux kernel, arch/i386/boot/setup.S
 126  Current version we use: Linux 2.2.26
 127
 128* console/vsprintf.c, console/vtxprintf.c: GPLv2
 129  Source: Linux kernel, lib/vsprintf.c
 130  Current version we use: ?
 131
 132
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.