Compare commits

..

1 Commits

Author SHA1 Message Date
Peter Korsgaard
aec9917038 buildroot: fix version for 2009.02-rc2 2009-01-23 20:56:07 +00:00
3829 changed files with 1083313 additions and 125732 deletions

14
.gitignore vendored
View File

@@ -1,14 +0,0 @@
/output
/dl
/.auto.deps
/.config.cmd
/.config.old
/..config.tmp
/.config
*.depend
*.o
/*.patch
/*.diff
*.orig
*.rej
*~

1161
CHANGES

File diff suppressed because it is too large Load Diff

339
COPYING
View File

@@ -1,339 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.

223
Config.in
View File

@@ -1,6 +1,6 @@
#
mainmenu "Buildroot $BR2_VERSION Configuration"
mainmenu "Buildroot2 Configuration"
config BR2_HAVE_DOT_CONFIG
bool
@@ -8,29 +8,28 @@ config BR2_HAVE_DOT_CONFIG
config BR2_VERSION
string
option env="BR2_VERSION_FULL"
default "2009.02-rc2"
source "target/Config.in.arch"
source "target/device/Config.in"
menu "Build options"
menu "Commands"
config BR2_WGET
string "Wget command"
default "wget --passive-ftp -nd -t 3"
default "wget --passive-ftp -nd"
config BR2_SVN
string "Subversion (svn) command"
default "svn"
config BR2_SVN_CO
string "Subversion (svn) command to download source tree"
default "svn co"
config BR2_BZR
string "Bazaar (bzr) command"
default "bzr"
config BR2_SVN_UP
string "Subversion (svn) command to update source tree"
default "svn up"
config BR2_GIT
string "Git command"
default "git"
string "Git command to download source tree"
default "git clone"
config BR2_ZCAT
string "zcat command"
@@ -52,13 +51,6 @@ config BR2_BZCAT
Default is "bzcat"
Other possible values include "bunzip2 -c" or "bzip2 -d -c".
config BR2_XZCAT
string "xzcat command"
default "xzcat"
help
Command to be used to extract a xz'ed file to stdout.
Default is "xzcat"
config BR2_TAR_OPTIONS
string "Tar options"
default ""
@@ -67,116 +59,134 @@ config BR2_TAR_OPTIONS
E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
and to be verbose.
endmenu
config BR2_DL_DIR
string "Download dir"
default "$(TOPDIR)/dl"
default "$(BASE_DIR)/dl"
help
Directory to store all the source files that we need to fetch.
If the Linux shell environment has defined the BUILDROOT_DL_DIR
environment variable, then this overrides this configuration item.
The default is $(TOPDIR)/dl
The default is $(BASE_DIR)/dl
config BR2_HOST_DIR
string "Host dir"
default "$(BASE_DIR)/host"
source "target/device/Config.in.mirrors"
config BR2_STAGING_DIR
string "Toolchain and header file location?"
default "$(BUILD_DIR)/staging_dir"
help
Directory to store all the binary files that are built for the host.
This includes the cross compilation toolchain when building the
internal buildroot toolchain.
This is the location where the toolchain will be installed. The
toolchain will not work if it is moved from this location.
Therefore, if you wish to package up a uClibc toolchain, it is
important that is is set to the final location where the toolchain
will be used.
The default is $(BASE_DIR)/host
Most people will leave this set to the default value of
"$(BUILD_DIR)/staging_dir".
menu "Mirrors and Download locations"
config BR2_FPU_SUFFIX
bool "Add '_nofpu' suffix for softfloat toolchains"
help
If the toolchain is configured to use softfloat, then
the "_nofpu" suffix will be added to the toolchain build
directory name and to any rootfs image name
config BR2_PRIMARY_SITE
string "Primary download site"
config BR2_TOPDIR_PREFIX
string "Custom build dir prefix"
default ""
help
Primary site to download from. If this option is set then buildroot
will try to download package source first from this site and try the
default if the file is not found.
NOTE: This only works for packages using the Makefile.autotools.in
Add a custom string to the beginning of the build directories.
config BR2_BACKUP_SITE
string "Backup download site"
default "http://sources.buildroot.net/"
build_ARCH -> [PREFIX]_build_ARCH
toolchain_build_ARCH -> [PREFIX]_toolchain_build_ARCH
config BR2_TOPDIR_SUFFIX
string "Custom build dir suffix"
default ""
help
Backup site to download from. If this option is set then buildroot
will fall back to download package sources from here if the
normal location fails.
Add a custom string to the end of the build directories.
config BR2_SOURCEFORGE_MIRROR
string "Sourceforge mirror site"
default "kent"
build_ARCH -> build_ARCH_[SUFFIX]
toolchain_build_ARCH -> toolchain_build_ARCH_[SUFFIX]
config BR2_ROOTFS_PREFIX
string "Custom root fs prefix"
default "rootfs"
help
Sourceforge has a system of mirror sites. Some sites may be
closer to your location, and sometimes mirror sites go down
and are no longer available. This option allows you to select
your preferred Sourceforge mirror site.
Add a custom string to the beginning of the root file system name.
The list of mirrors is available here:
http://sourceforge.net/apps/trac/sourceforge/wiki/Mirrors
config BR2_KERNEL_MIRROR
string "Kernel.org mirror"
default "http://www.kernel.org/pub/"
config BR2_ROOTFS_SUFFIX
string "Custom root fs suffix"
default ""
help
kernel.org is mirrored on a number of servers around the world.
The following allows you to select your preferred mirror.
Add a custom string to the end of the root file system name.
Have a look on the kernel.org site for a list of mirrors, then enter
the URL to the base directory. Examples:
http://www.XX.kernel.org/pub (XX = country code)
http://mirror.aarnet.edu.au/pub/ftp.kernel.org
config BR2_GNU_MIRROR
string "GNU Software mirror"
default "http://ftp.gnu.org/pub/gnu"
config BR2_GNU_BUILD_SUFFIX
string "GNU build hostname suffix"
default "pc-linux-gnu"
help
GNU has multiple software mirrors scattered around the world.
The following allows you to select your preferred mirror.
The string used to pass to configure scripts via the
--build= option. Just specify the suffix here, the leading
arch will be filled in automatically.
Have a look on the gnu.org site for a list of mirrors, then enter
the URL to the base directory. Examples:
Here's some copy and paste build host options for you:
linux: pc-linux-gnu
cygwin: pc-cygwin
os x: apple-darwin7 / apple-darwin8
http://ftp.gnu.org/pub/gnu
http://mirror.aarnet.edu.au/pub/gnu
config BR2_DEBIAN_MIRROR
string "Debian Software mirror"
default "http://ftp.debian.org"
config BR2_GNU_TARGET_SUFFIX
string "GNU target suffix"
default "linux-uclibcgnueabi" if BR2_ARM_EABI
default "linux-uclibc"
help
Debian has multiple software mirrors scattered around the world.
The following allows you to select your preferred mirror.
The string used to pass to configure scripts via the
--target= option. Just specify the suffix here, the leading
arch will be filled in automatically.
Usually, just add your country code like XX here:
http://ftp.XX.debian.org
Most users will want to stick with the default setting, though
other users (most notably ARM EABI) like to add on to this in
order to stay in line with gcc conventions.
endmenu
Default options are:
linux-uclibcgnueabi for ARM EABI
linux-uclibc for the rest
gnuhurd-uclibc for the hurd
config BR2_JLEVEL
int "Number of jobs to run simultaneously"
default "2"
default "1"
help
Number of jobs to run simultaneously
config BR2_CCACHE
bool "Enable compiler cache"
config BR2_PREFER_IMA
bool "prefer IMA compiles"
help
This option will enable the use of ccache, a compiler
cache. It will cache the result of previous builds to speed
up future builds. The cache is stored in
$HOME/.buildroot-ccache.
Where possible, compile package with Inter Module Analysis.
This potentially uses alot of system resources on your compile
host with the benefit of creating smaller binaries for the target.
If unsure, say No.
WARNING: This is highly experimental at the moment.
config BR2_DEPRECATED
bool "Show packages that are deprecated or obsolete"
help
This option hides outdated/obsolete versions of packages.
config BR2_RECENT
bool "Show packages that are of the latest major version"
default y
help
This option show recent versions of packages.
config BR2_CONFIG_CACHE
bool "Use a central configure cache file"
help
This determines if a central config cache is used by
packages, reducing the configure time for packages as each
one caches its findings.
config BR2_ENABLE_DEBUG
bool "build packages with debugging symbols"
select BR2_PACKAGE_GDB_SERVER
@@ -226,14 +236,14 @@ choice
config BR2_STRIP_strip
bool "strip"
depends on !BR2_ELF2FLT
depends on !BR2_ENABLE_DEBUG
help
strip is the normal strip command
config BR2_STRIP_sstrip
bool "sstrip"
select BR2_PACKAGE_SSTRIP_HOST
depends on !BR2_ELF2FLT
depends on !BR2_ENABLE_DEBUG
help
sstrip is a strip that discards more than the normal strip
@@ -251,11 +261,13 @@ choice
config BR2_OPTIMIZE_0
bool "optimization level 0"
depends on !BR2_PACKAGE_LINUX
help
Do not optimize. This is the default.
config BR2_OPTIMIZE_1
bool "optimization level 1"
depends on !BR2_PACKAGE_LINUX
help
Optimize. Optimizing compilation takes somewhat more time,
and a lot more memory for a large function. With -O, the
@@ -320,11 +332,24 @@ config BR2_PREFER_STATIC_LIB
WARNING: This is highly experimental at the moment.
config BR2_HAVE_MANPAGES
bool "manpages on the target"
help
Leave the manpages on the target.
If you say n here, your target will not contain any
manpage.
config BR2_HAVE_INFOPAGES
bool "infopages on the target"
help
Leave the infopages on the target.
If you say n here, your target will not contain any
infopage.
config BR2_HAVE_DOCUMENTATION
bool "documentation on the target"
help
Install the documentation, including manual pages and info
pages, on the target.
Leave the documentation on the target.
If you say n here, your target will not contain any
documentation.
@@ -334,16 +359,12 @@ config BR2_HAVE_DEVFILES
Install headers and static libraries in the
target filesystem
source package/gnuconfig/Config.in
endmenu
source "toolchain/Config.in"
source "target/generic/Config.in"
source "package/Config.in"
source "fs/Config.in"
source "boot/Config.in"
source "linux/Config.in"
source "target/Config.in"

637
Makefile
View File

@@ -1,7 +1,7 @@
# Makefile for buildroot2
#
# Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org>
# Copyright (C) 2006-2011 by the Buildroot developers <buildroot@uclibc.org>
# Copyright (C) 2006-2009 by the Buildroot developers <buildroot@uclibc.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -22,68 +22,41 @@
# Just run 'make menuconfig', configure stuff, then run 'make'.
# You shouldn't need to mess with anything beyond this point...
#--------------------------------------------------------------
# Set and export the version string
export BR2_VERSION:=2011.08-rc2
# This top-level Makefile can *not* be executed in parallel
.NOTPARALLEL:
# absolute path
TOPDIR:=$(shell pwd)
TOPDIR=./
CONFIG_CONFIG_IN=Config.in
CONFIG_DEFCONFIG=.defconfig
CONFIG=package/config
DATE:=$(shell date +%Y%m%d)
# Compute the full local version string so packages can use it as-is
# Need to export it, so it can be got from environment in children (eg. mconf)
export BR2_VERSION_FULL:=$(BR2_VERSION)$(shell $(TOPDIR)/scripts/setlocalversion)
noconfig_targets:=menuconfig config oldconfig randconfig \
defconfig allyesconfig allnoconfig release tags \
source-check help
noconfig_targets:=menuconfig nconfig gconfig xconfig config oldconfig randconfig \
defconfig %_defconfig savedefconfig allyesconfig allnoconfig silentoldconfig release \
randpackageconfig allyespackageconfig allnopackageconfig \
source-check
# Strip quotes and then whitespaces
qstrip=$(strip $(subst ",,$(1)))
#"))
# Variables for use in Make constructs
comma:=,
empty:=
space:=$(empty) $(empty)
ifneq ("$(origin O)", "command line")
O:=output
CONFIG_DIR:=$(TOPDIR)
NEED_WRAPPER=
# Use shell variables, if defined
ifneq ($(BUILDROOT_LOCAL),)
BR2_LOCAL:=$(BUILDROOT_LOCAL)
else
# other packages might also support Linux-style out of tree builds
# with the O=<dir> syntax (E.G. Busybox does). As make automatically
# forwards command line variable definitions those packages get very
# confused. Fix this by telling make to not do so
MAKEOVERRIDES =
# strangely enough O is still passed to submakes with MAKEOVERRIDES
# (with make 3.81 atleast), the only thing that changes is the output
# of the origin function (command line -> environment).
# Unfortunately some packages don't look at origin (E.G. uClibc 0.9.31+)
# To really make O go away, we have to override it.
override O:=$(O)
CONFIG_DIR:=$(O)
# we need to pass O= everywhere we call back into the toplevel makefile
EXTRAMAKEARGS = O=$(O)
NEED_WRAPPER=y
BR2_LOCAL:=$(TOPDIR)/local
endif
# $(shell find . -name *_defconfig |sed 's/.*\///')
# Pull in the user's configuration file
ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),)
-include $(CONFIG_DIR)/.config
ifeq ($(BOARD),)
# if "make BOARD=xyz" command
-include .config
else
# if "make" command
-include $(BR2_LOCAL)/$(BOARD)/$(BOARD).config
endif
endif
# Override BR2_DL_DIR if shell variable defined
ifneq ($(BUILDROOT_DL_DIR),)
BR2_DL_DIR:=$(BUILDROOT_DL_DIR)
endif
LOCAL:=$(BR2_LOCAL)
# To put more focus on warnings, be less verbose as default
# Use 'make V=1' to see the full commands
@@ -125,14 +98,11 @@ HOSTAS:=as
endif
ifndef HOSTCC
HOSTCC:=gcc
HOSTCC:=$(shell which $(HOSTCC) || type -p $(HOSTCC) || echo gcc)
else
endif
HOSTCC_NOCCACHE:=$(HOSTCC)
ifndef HOSTCXX
HOSTCXX:=g++
HOSTCXX:=$(shell which $(HOSTCXX) || type -p $(HOSTCXX) || echo g++)
endif
HOSTCXX_NOCCACHE:=$(HOSTCXX)
ifndef HOSTFC
HOSTFC:=gfortran
endif
@@ -150,24 +120,27 @@ HOSTNM:=nm
endif
HOSTAR:=$(shell which $(HOSTAR) || type -p $(HOSTAR) || echo ar)
HOSTAS:=$(shell which $(HOSTAS) || type -p $(HOSTAS) || echo as)
HOSTCC:=$(shell which $(HOSTCC) || type -p $(HOSTCC) || echo gcc)
HOSTCXX:=$(shell which $(HOSTCXX) || type -p $(HOSTCXX) || echo g++)
HOSTFC:=$(shell which $(HOSTLD) || type -p $(HOSTLD) || echo || which g77 || type -p g77 || echo gfortran)
HOSTCPP:=$(shell which $(HOSTCPP) || type -p $(HOSTCPP) || echo cpp)
HOSTLD:=$(shell which $(HOSTLD) || type -p $(HOSTLD) || echo ld)
HOSTLN:=$(shell which $(HOSTLN) || type -p $(HOSTLN) || echo ln)
HOSTNM:=$(shell which $(HOSTNM) || type -p $(HOSTNM) || echo nm)
HOST_GLIB_BIN:=`dirname $(shell which glib-genmarshal || echo /usr/bin/glib-genmarshal)`
HOST_GLIB:=$(shell dirname $(HOST_GLIB_BIN) || echo /usr)
ifndef CFLAGS_FOR_BUILD
CFLAGS_FOR_BUILD:=-g -O2
endif
ifndef CXXFLAGS_FOR_BUILD
CXXFLAGS_FOR_BUILD:=-g -O2
endif
ifndef FCFLAGS_FOR_BUILD
FCFLAGS_FOR_BUILD:=-g -O2
endif
export HOSTAR HOSTAS HOSTCC HOSTCXX HOSTFC HOSTLD
export HOSTCC_NOCCACHE HOSTCXX_NOCCACHE
# bash prints the name of the directory on 'cd <dir>' if CDPATH is
# set, so unset it here to not cause problems. Notice that the export
# line doesn't affect the environment of $(shell ..) calls, so
# explictly throw away any output from 'cd' here.
export CDPATH:=
BASE_DIR := $(shell mkdir -p $(O) && cd $(O) >/dev/null && pwd)
$(if $(BASE_DIR),, $(error output directory "$(O)" does not exist))
BUILD_DIR:=$(BASE_DIR)/build
ifeq ($(BR2_HAVE_DOT_CONFIG),y)
@@ -186,105 +159,62 @@ cc-option=$(shell if $(TARGET_CC) $(TARGET_CFLAGS) $(1) -S -o /dev/null -xc /dev
#############################################################
unexport CROSS_COMPILE
unexport ARCH
unexport CC
unexport CXX
unexport CPP
unexport CFLAGS
unexport CXXFLAGS
unexport GREP_OPTIONS
GNU_HOST_NAME:=$(shell package/gnuconfig/config.guess)
#############################################################
#
# Setup the proper filename extensions for the host
#
##############################################################
ifneq ($(findstring linux,$(GNU_HOST_NAME)),)
ifneq ($(findstring linux,$(BR2_GNU_BUILD_SUFFIX)),)
HOST_EXEEXT:=
HOST_LIBEXT:=.a
HOST_SHREXT:=.so
endif
ifneq ($(findstring apple,$(GNU_HOST_NAME)),)
ifneq ($(findstring apple,$(BR2_GNU_BUILD_SUFFIX)),)
HOST_EXEEXT:=
HOST_LIBEXT:=.a
HOST_SHREXT:=.dylib
endif
ifneq ($(findstring cygwin,$(GNU_HOST_NAME)),)
ifneq ($(findstring cygwin,$(BR2_GNU_BUILD_SUFFIX)),)
HOST_EXEEXT:=.exe
HOST_LIBEXT:=.lib
HOST_SHREXT:=.dll
HOST_LOADLIBES=-lcurses -lintl
HOST_LOADLIBES="-lcurses -lintl"
export HOST_LOADLIBES
endif
ifneq ($(findstring mingw,$(GNU_HOST_NAME)),)
ifneq ($(findstring mingw,$(BR2_GNU_BUILD_SUFFIX)),)
HOST_EXEEXT:=.exe
HOST_LIBEXT:=.lib
HOST_SHREXT:=.dll
endif
# The preferred type of libs we build for the target
ifeq ($(BR2_PREFER_STATIC_LIB),y)
LIBTGTEXT=.a
#PREFERRED_LIB_FLAGS:=--disable-shared --enable-static
else
LIBTGTEXT=.so
#PREFERRED_LIB_FLAGS:=--disable-static --enable-shared
endif
PREFERRED_LIB_FLAGS:=--enable-static --enable-shared
##############################################################
#
# The list of stuff to build for the target toolchain
# along with the packages to build for the target.
#
##############################################################
ifeq ($(BR2_CCACHE),y)
BASE_TARGETS += host-ccache
endif
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
BASE_TARGETS += uclibc-configured host-binutils cross_compiler uclibc-target-utils kernel-headers
ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
BASE_TARGETS:=uclibc-configured binutils cross_compiler uclibc-target-utils kernel-headers
else
BASE_TARGETS += uclibc
BASE_TARGETS:=uclibc
endif
TARGETS:=
# silent mode requested?
QUIET:=$(if $(findstring s,$(MAKEFLAGS)),-q)
# setup our pathes
include project/Makefile.in
# Strip off the annoying quoting
ARCH:=$(call qstrip,$(BR2_ARCH))
ifeq ($(ARCH),xtensa)
ARCH:=$(ARCH)_$(call qstrip,$(BR2_xtensa_core_name))
endif
KERNEL_ARCH:=$(shell echo "$(ARCH)" | sed -e "s/-.*//" \
-e s/i.86/i386/ -e s/sun4u/sparc64/ \
-e s/arm.*/arm/ -e s/sa110/arm/ \
-e s/bfin/blackfin/ \
-e s/parisc64/parisc/ \
-e s/powerpc64/powerpc/ \
-e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
-e s/sh.*/sh/)
ZCAT:=$(call qstrip,$(BR2_ZCAT))
BZCAT:=$(call qstrip,$(BR2_BZCAT))
XZCAT:=$(call qstrip,$(BR2_XZCAT))
TAR_OPTIONS=$(call qstrip,$(BR2_TAR_OPTIONS)) -xf
GNU_TARGET_SUFFIX:=-$(call qstrip,$(BR2_GNU_TARGET_SUFFIX))
# packages compiled for the host go here
HOST_DIR:=$(call qstrip,$(BR2_HOST_DIR))
# stamp (dependency) files go here
STAMP_DIR:=$(BASE_DIR)/stamps
BINARIES_DIR:=$(BASE_DIR)/images
TARGET_DIR:=$(BASE_DIR)/target
TOOLCHAIN_DIR=$(BASE_DIR)/toolchain
TARGET_SKELETON=$(TOPDIR)/fs/skeleton
BR2_DEPENDS_DIR=$(BUILD_DIR)/buildroot-config
ifeq ($(BR2_CCACHE),y)
CCACHE:=$(HOST_DIR)/usr/bin/ccache
CCACHE_CACHE_DIR=$(HOME)/.buildroot-ccache
HOSTCC := $(CCACHE) $(HOSTCC)
HOSTCXX := $(CCACHE) $(HOSTCXX)
endif
BR2_DEPENDS_DIR=$(PROJECT_BUILD_DIR)/buildroot-config
include toolchain/Makefile.in
include package/Makefile.in
@@ -298,30 +228,42 @@ include package/Makefile.in
all: world
# In this section, we need .config
include .config.cmd
include project/*.mk
# We also need the various per-package makefiles, which also add
# each selected package to TARGETS if that package was selected
# in the .config file.
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
include toolchain/toolchain-buildroot.mk
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
include toolchain/toolchain-external.mk
else ifeq ($(BR2_TOOLCHAIN_CTNG),y)
include toolchain/toolchain-crosstool-ng.mk
ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
# avoid pulling in external toolchain which is broken for toplvl parallel builds
# Explicit ordering:
include toolchain/dependencies/dependencies.mk
include toolchain/binutils/binutils.mk
include toolchain/ccache/ccache.mk
include toolchain/elf2flt/elf2flt.mk
include toolchain/gcc/gcc-uclibc-3.x.mk
include toolchain/gcc/gcc-uclibc-4.x.mk
include toolchain/gdb/gdb.mk
include toolchain/kernel-headers/kernel-headers.mk
include toolchain/mklibs/mklibs.mk
include toolchain/sstrip/sstrip.mk
include toolchain/uClibc/uclibc.mk
else
include toolchain/*/*.mk
endif
ifeq ($(BR2_PACKAGE_LINUX),y)
TARGETS+=linux26-modules
endif
include package/*/*.mk
include boot/common.mk
TARGETS+=target-devfiles
# target stuff is last so it can override anything else
include target/Makefile.in
include linux/linux.mk
TARGETS+=target-finalize
ifeq ($(BR2_ENABLE_LOCALE_PURGE),y)
TARGETS+=target-purgelocales
endif
include fs/common.mk
TARGETS+=erase-fakeroots
@@ -329,61 +271,29 @@ TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS))
TARGETS_SOURCE:=$(patsubst %,%-source,$(TARGETS) $(BASE_TARGETS))
TARGETS_DIRCLEAN:=$(patsubst %,%-dirclean,$(TARGETS))
TARGETS_ALL:=$(patsubst %,__real_tgt_%,$(TARGETS))
# host-* dependencies have to be handled specially, as those aren't
# visible in Kconfig and hence not added to a variable like TARGETS.
# instead, find all the host-* targets listed in each <PKG>_DEPENDENCIES
# variable for each enabled target.
# Notice: this only works for newstyle gentargets/autotargets packages
TARGETS_HOST_DEPS = $(sort $(filter host-%,$(foreach dep,\
$(addsuffix _DEPENDENCIES,$(call UPPERCASE,$(TARGETS))),\
$($(dep)))))
# Host packages can in turn have their own dependencies. Likewise find
# all the package names listed in the HOST_<PKG>_DEPENDENCIES for each
# host package found above. Ideally this should be done recursively until
# no more packages are found, but that's hard to do in make, so limit to
# 1 level for now.
HOST_DEPS = $(sort $(foreach dep,\
$(addsuffix _DEPENDENCIES,$(call UPPERCASE,$(TARGETS_HOST_DEPS))),\
$($(dep))))
HOST_SOURCE += $(addsuffix -source,$(sort $(TARGETS_HOST_DEPS) $(HOST_DEPS)))
# all targets depend on the crosscompiler and it's prerequisites
$(TARGETS_ALL): __real_tgt_%: $(BASE_TARGETS) %
dirs: $(DL_DIR) $(TOOLCHAIN_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
$(HOST_DIR) $(BR2_DEPENDS_DIR) $(BINARIES_DIR) $(STAMP_DIR)
$(BR2_DEPENDS_DIR): .config
rm -rf $@
mkdir -p $(@D)
cp -dpRf $(CONFIG)/buildroot-config $@
$(BASE_TARGETS): dirs $(O)/toolchainfile.cmake
dirs: $(DL_DIR) $(TOOL_BUILD_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
$(BR2_DEPENDS_DIR) $(BINARIES_DIR) $(PROJECT_BUILD_DIR) \
$(PROJECT_BUILD_DIR)/autotools-stamps
$(BUILD_DIR)/buildroot-config/auto.conf: $(CONFIG_DIR)/.config
$(MAKE) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" silentoldconfig
$(BASE_TARGETS): dirs
prepare: $(BUILD_DIR)/buildroot-config/auto.conf
world: dependencies dirs target-host-info $(BASE_TARGETS) $(TARGETS_ALL)
world: prepare dependencies dirs $(BASE_TARGETS) $(TARGETS_ALL)
$(O)/toolchainfile.cmake:
@echo -en "\
set(CMAKE_SYSTEM_NAME Linux)\n\
set(CMAKE_C_COMPILER $(TARGET_CC_NOCCACHE))\n\
set(CMAKE_CXX_COMPILER $(TARGET_CXX_NOCCACHE))\n\
set(CMAKE_C_FLAGS \"\$${CMAKE_C_FLAGS} $(TARGET_CFLAGS)\" CACHE STRING \"Buildroot CFLAGS\" FORCE)\n\
set(CMAKE_CXX_FLAGS \"\$${CMAKE_CXX_FLAGS} $(TARGET_CXXFLAGS)\" CACHE STRING \"Buildroot CXXFLAGS\" FORCE)\n\
set(CMAKE_INSTALL_SO_NO_EXE 0)\n\
set(CMAKE_PROGRAM_PATH \"$(HOST_DIR)/usr/bin\")\n\
set(CMAKE_FIND_ROOT_PATH \"$(STAGING_DIR)\")\n\
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)\n\
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)\n\
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)\n\
set(ENV{PKG_CONFIG_SYSROOT_DIR} \"$(STAGING_DIR)\")\n\
" > $@
.PHONY: all world dirs clean distclean source outputmakefile \
.PHONY: all world dirs clean dirclean distclean source \
$(BASE_TARGETS) $(TARGETS) $(TARGETS_ALL) \
$(TARGETS_CLEAN) $(TARGETS_DIRCLEAN) $(TARGETS_SOURCE) \
$(DL_DIR) $(TOOLCHAIN_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
$(HOST_DIR) $(BR2_DEPENDS_DIR) $(BINARIES_DIR) $(STAMP_DIR)
$(DL_DIR) $(TOOL_BUILD_DIR) $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
$(BR2_DEPENDS_DIR) $(BINARIES_DIR) $(PROJECT_BUILD_DIR) \
$(PROJECT_BUILD_DIR)/autotools-stamps
#############################################################
#
@@ -391,22 +301,26 @@ $(O)/toolchainfile.cmake:
# dependencies anywhere else
#
#############################################################
$(DL_DIR) $(TOOLCHAIN_DIR) $(BUILD_DIR) $(HOST_DIR) $(BINARIES_DIR) $(STAMP_DIR):
$(DL_DIR) $(TOOL_BUILD_DIR) $(BUILD_DIR) $(PROJECT_BUILD_DIR) \
$(PROJECT_BUILD_DIR)/autotools-stamps $(BINARIES_DIR):
@mkdir -p $@
$(STAGING_DIR):
@mkdir -p $(STAGING_DIR)/bin
@mkdir -p $(STAGING_DIR)/lib
ifeq ($(BR2_TOOLCHAIN_SYSROOT),y)
@mkdir -p $(STAGING_DIR)/usr/lib
@mkdir -p $(STAGING_DIR)/usr/include
@mkdir -p $(STAGING_DIR)/usr/bin
@ln -snf $(STAGING_DIR) $(BASE_DIR)/staging
ifeq ($(BR2_ROOTFS_SKELETON_CUSTOM),y)
TARGET_SKELETON=$(BR2_ROOTFS_SKELETON_CUSTOM_PATH)
else
ifneq ($(BR2_TOOLCHAIN_EXTERNAL),y)
@ln -snf . $(STAGING_DIR)/usr
@mkdir -p $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)
@ln -snf ../lib $(STAGING_DIR)/usr/lib
@ln -snf ../lib $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib
endif
endif
@mkdir -p $(STAGING_DIR)/usr/include
$(BUILD_DIR)/.root:
$(PROJECT_BUILD_DIR)/.root:
mkdir -p $(TARGET_DIR)
if ! [ -d "$(TARGET_DIR)/bin" ]; then \
if [ -d "$(TARGET_SKELETON)" ]; then \
@@ -414,85 +328,63 @@ $(BUILD_DIR)/.root:
fi; \
touch $(STAGING_DIR)/.fakeroot.00000; \
fi
-find $(TARGET_DIR) -type d -name CVS -print0 -o -name .svn -print0 | xargs -0 rm -rf
-find $(TARGET_DIR) -type f \( -name .empty -o -name '*~' \) -print0 | xargs -0 rm -rf
-find $(TARGET_DIR) -type d -name CVS -o -name .svn | xargs rm -rf
-find $(TARGET_DIR) -type f -name .empty | xargs rm -rf
touch $@
$(TARGET_DIR): $(BUILD_DIR)/.root
$(TARGET_DIR): $(PROJECT_BUILD_DIR)/.root
erase-fakeroots:
rm -f $(BUILD_DIR)/.fakeroot*
rm -f $(PROJECT_BUILD_DIR)/.fakeroot*
target-finalize:
target-devfiles:
ifeq ($(BR2_HAVE_DEVFILES),y)
( scripts/copy.sh $(STAGING_DIR) $(TARGET_DIR) )
else
rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/aclocal
find $(TARGET_DIR)/lib \( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f
find $(TARGET_DIR)/usr/lib \( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f
endif
ifneq ($(BR2_PACKAGE_GDB),y)
rm -rf $(TARGET_DIR)/usr/share/gdb
endif
ifneq ($(BR2_HAVE_DOCUMENTATION),y)
rm -rf $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/man
rm -rf $(TARGET_DIR)/usr/info $(TARGET_DIR)/usr/share/info
rm -rf $(TARGET_DIR)/usr/doc $(TARGET_DIR)/usr/share/doc
rm -rf $(TARGET_DIR)/usr/share/gtk-doc
-rmdir $(TARGET_DIR)/usr/share 2>/dev/null
endif
ifeq ($(BR2_PACKAGE_PYTHON_PY_ONLY),y)
find $(TARGET_DIR)/usr/lib/ -name '*.pyc' -print0 | xargs -0 rm -f
endif
ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y)
find $(TARGET_DIR)/usr/lib/ -name '*.py' -print0 | xargs -0 rm -f
endif
find $(TARGET_DIR) -type f -perm +111 '!' -name 'libthread_db*.so*' | \
xargs $(STRIPCMD) 2>/dev/null || true
find $(TARGET_DIR)/lib/modules -type f -name '*.ko' | \
xargs -r $(KSTRIPCMD) || true
mkdir -p $(TARGET_DIR)/etc
# Mandatory configuration file and auxilliary cache directory
# for recent versions of ldconfig
touch $(TARGET_DIR)/etc/ld.so.conf
mkdir -p $(TARGET_DIR)/var/cache/ldconfig
if [ -x "$(TARGET_CROSS)ldconfig" ]; \
then \
$(TARGET_CROSS)ldconfig -r $(TARGET_DIR); \
else \
/sbin/ldconfig -r $(TARGET_DIR); \
fi
echo $(BR2_VERSION_FULL) > $(TARGET_DIR)/etc/br-version
ifneq ($(BR2_ROOTFS_POST_BUILD_SCRIPT),"")
$(BR2_ROOTFS_POST_BUILD_SCRIPT) $(TARGET_DIR)
rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/lib/pkgconfig
find $(TARGET_DIR)/usr/lib -name '*.a' -delete
find $(TARGET_DIR)/lib -name '*.a' -delete
find $(TARGET_DIR)/usr/lib -name '*.la' -delete
find $(TARGET_DIR)/lib -name '*.la' -delete
endif
ifeq ($(BR2_ENABLE_LOCALE_PURGE),y)
LOCALE_WHITELIST=$(BUILD_DIR)/locales.nopurge
LOCALE_NOPURGE=$(call qstrip,$(BR2_ENABLE_LOCALE_WHITELIST))
source: $(TARGETS_SOURCE) $(HOST_SOURCE)
target-purgelocales:
rm -f $(LOCALE_WHITELIST)
for i in $(LOCALE_NOPURGE); do echo $$i >> $(LOCALE_WHITELIST); done
for dir in $(wildcard $(addprefix $(TARGET_DIR),/usr/share/locale /usr/share/X11/locale /usr/man /usr/share/man)); \
do \
for lang in $$(cd $$dir; ls .|grep -v man); \
do \
grep -qx $$lang $(LOCALE_WHITELIST) || rm -rf $$dir/$$lang; \
done; \
done
endif
source: dirs $(TARGETS_SOURCE) $(HOST_SOURCE)
_source-check:
$(MAKE) SPIDER=--spider source
external-deps:
@$(MAKE) -Bs DL_MODE=SHOW_EXTERNAL_DEPS $(EXTRAMAKEARGS) source | sort -u
@$(MAKE) -Bs BR2_WGET=$(TOPDIR)/toolchain/wget-show-external-deps.sh \
SPIDER=--spider source
#############################################################
#
# Cleanup and misc junk
#
#############################################################
clean: $(TARGETS_CLEAN)
rm -rf $(STAGING_DIR) $(TARGET_DIR) $(IMAGE) $(PROJECT_BUILD_DIR)/.root $(PROJECT_BUILD_DIR)/autotools-stamps
dirclean: $(TARGETS_DIRCLEAN)
rm -rf $(STAGING_DIR) $(TARGET_DIR) $(IMAGE) $(PROJECT_BUILD_DIR)/.root $(PROJECT_BUILD_DIR)/autotools-stamps
distclean:
ifeq ($(DL_DIR),$(BASE_DIR)/dl)
rm -rf $(DL_DIR)
endif
rm -rf $(BUILD_DIR) $(PROJECT_BUILD_DIR) $(BINARIES_DIR) \
$(LINUX_KERNEL) $(BASE_DIR)/include \
.config.cmd
$(MAKE) -C $(CONFIG) clean
sourceball:
rm -rf $(BUILD_DIR) $(PROJECT_BUILD_DIR) $(BINARIES_DIR)
set -e; \
cd ..; \
rm -f buildroot.tar.bz2; \
tar -cvf buildroot.tar buildroot; \
bzip2 -9 buildroot.tar; \
show-targets:
@echo $(TARGETS)
else # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
@@ -504,130 +396,108 @@ all: menuconfig
HOSTCFLAGS=$(CFLAGS_FOR_BUILD)
export HOSTCFLAGS
$(BUILD_DIR)/buildroot-config/%onf:
mkdir -p $(@D)/lxdialog
$(MAKE) CC="$(HOSTCC_NOCCACHE)" HOSTCC="$(HOSTCC_NOCCACHE)" obj=$(@D) -C $(CONFIG) -f Makefile.br $(@F)
$(CONFIG)/conf:
@mkdir -p $(CONFIG)/buildroot-config
$(MAKE) CC="$(HOSTCC)" -C $(CONFIG) conf
-@if [ ! -f .config ]; then \
cp $(CONFIG_DEFCONFIG) .config; \
fi
$(CONFIG)/mconf:
@mkdir -p $(CONFIG)/buildroot-config
$(MAKE) CC="$(HOSTCC)" -C $(CONFIG) conf mconf
-@if [ ! -f .config ]; then \
cp $(CONFIG_DEFCONFIG) .config; \
fi
COMMON_CONFIG_ENV = \
KCONFIG_AUTOCONFIG=$(BUILD_DIR)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(BUILD_DIR)/buildroot-config/autoconf.h \
KCONFIG_TRISTATE=$(BUILD_DIR)/buildroot-config/tristate.config \
BUILDROOT_CONFIG=$(CONFIG_DIR)/.config
menuconfig: $(CONFIG)/mconf
@mkdir -p $(CONFIG)/buildroot-config
@if ! KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/mconf $(CONFIG_CONFIG_IN); then \
test -f .config.cmd || rm -f .config; \
fi
xconfig: $(BUILD_DIR)/buildroot-config/qconf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
config: $(CONFIG)/conf
@mkdir -p $(CONFIG)/buildroot-config
@KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/conf $(CONFIG_CONFIG_IN)
gconfig: $(BUILD_DIR)/buildroot-config/gconf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) srctree=$(TOPDIR) $< $(CONFIG_CONFIG_IN)
oldconfig: $(CONFIG)/conf
@mkdir -p $(CONFIG)/buildroot-config
@KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/conf -o $(CONFIG_CONFIG_IN)
menuconfig: $(BUILD_DIR)/buildroot-config/mconf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
randconfig: $(CONFIG)/conf
@mkdir -p $(CONFIG)/buildroot-config
@KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/conf -r $(CONFIG_CONFIG_IN)
nconfig: $(BUILD_DIR)/buildroot-config/nconf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
allyesconfig: $(CONFIG)/conf
cat $(CONFIG_DEFCONFIG) > .config
@mkdir -p $(CONFIG)/buildroot-config
@KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/conf -y $(CONFIG_CONFIG_IN)
#sed -i -e "s/^CONFIG_DEBUG.*/# CONFIG_DEBUG is not set/" .config
config: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< $(CONFIG_CONFIG_IN)
allnoconfig: $(CONFIG)/conf
@mkdir -p $(CONFIG)/buildroot-config
@KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/conf -n $(CONFIG_CONFIG_IN)
oldconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --oldconfig $(CONFIG_CONFIG_IN)
randconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --randconfig $(CONFIG_CONFIG_IN)
allyesconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --allyesconfig $(CONFIG_CONFIG_IN)
allnoconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --allnoconfig $(CONFIG_CONFIG_IN)
randpackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@grep -v BR2_PACKAGE_ $(CONFIG_DIR)/.config > $(CONFIG_DIR)/.config.nopkg
@$(COMMON_CONFIG_ENV) \
KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
$< --randconfig $(CONFIG_CONFIG_IN)
@rm -f $(CONFIG_DIR)/.config.nopkg
allyespackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@grep -v BR2_PACKAGE_ $(CONFIG_DIR)/.config > $(CONFIG_DIR)/.config.nopkg
@$(COMMON_CONFIG_ENV) \
KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
$< --allyesconfig $(CONFIG_CONFIG_IN)
@rm -f $(CONFIG_DIR)/.config.nopkg
allnopackageconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@grep -v BR2_PACKAGE_ $(CONFIG_DIR)/.config > $(CONFIG_DIR)/.config.nopkg
@$(COMMON_CONFIG_ENV) \
KCONFIG_ALLCONFIG=$(CONFIG_DIR)/.config.nopkg \
$< --allnoconfig $(CONFIG_CONFIG_IN)
@rm -f $(CONFIG_DIR)/.config.nopkg
silentoldconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
$(COMMON_CONFIG_ENV) $< --silentoldconfig $(CONFIG_CONFIG_IN)
defconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --defconfig $(CONFIG_CONFIG_IN)
%_defconfig: $(BUILD_DIR)/buildroot-config/conf $(TOPDIR)/configs/%_defconfig outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --defconfig=$(TOPDIR)/configs/$@ $(CONFIG_CONFIG_IN)
savedefconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile
@mkdir -p $(BUILD_DIR)/buildroot-config
@$(COMMON_CONFIG_ENV) $< --savedefconfig=$(CONFIG_DIR)/defconfig $(CONFIG_CONFIG_IN)
defconfig: $(CONFIG)/conf
@mkdir -p $(CONFIG)/buildroot-config
@KCONFIG_AUTOCONFIG=$(CONFIG)/buildroot-config/auto.conf \
KCONFIG_AUTOHEADER=$(CONFIG)/buildroot-config/autoconf.h \
$(CONFIG)/conf -d $(CONFIG_CONFIG_IN)
# check if download URLs are outdated
source-check: allyesconfig
$(MAKE) DL_MODE=SOURCE_CHECK $(EXTRAMAKEARGS) source
endif # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
$(MAKE) _source-check
#############################################################
#
# Cleanup and misc junk
#
#############################################################
# outputmakefile generates a Makefile in the output directory, if using a
# separate output directory. This allows convenient use of make in the
# output directory.
outputmakefile:
ifeq ($(NEED_WRAPPER),y)
$(Q)$(TOPDIR)/scripts/mkmakefile $(TOPDIR) $(O)
endif
clean:
rm -rf $(STAGING_DIR) $(TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) \
$(STAMP_DIR) $(BUILD_DIR) $(TOOLCHAIN_DIR) $(BASE_DIR)/staging
rm -f .config .config.old .config.cmd .tmpconfig.h .lognr.*
-$(MAKE) -C $(CONFIG) clean
distclean: clean
ifeq ($(DL_DIR),$(TOPDIR)/dl)
rm -rf $(DL_DIR)
endif
ifeq ($(O),output)
rm -rf $(O)
endif
rm -rf $(CONFIG_DIR)/.config $(CONFIG_DIR)/.config.old $(CONFIG_DIR)/.auto.deps
rm -rf sources/*
endif # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
%_defconfig: $(CONFIG)/conf
cp $(shell find ./target/ -name $@) .config
-@$(MAKE) oldconfig
update:
cp .config $(BOARD_PATH)/$(BOARD_NAME)_defconfig
configured: dirs host-sed kernel-headers uclibc-config busybox-config linux26-config
prepatch: gcc-patched binutils-patched gdb-patched uclibc-patched
.lognr.$(PROJECT):
@echo "0" > .lognr.$(PROJECT)
log: .lognr.$(PROJECT)
@expr `cat .lognr.$(PROJECT)` + 1 > .lognr.$(PROJECT)
@echo Creating $(PROJECT)-`cat .lognr.$(PROJECT)`.log
@$(MAKE) > $(PROJECT)-`cat .lognr.$(PROJECT)`.log 2>&1
cross: $(BASE_TARGETS)
help:
@echo 'Cleaning:'
@echo ' clean - delete all files created by build'
@echo ' clean - delete temporary files created by build'
@echo ' distclean - delete all non-source files (including .config)'
@echo
@echo 'Build:'
@@ -635,54 +505,25 @@ help:
@echo
@echo 'Configuration:'
@echo ' menuconfig - interactive curses-based configurator'
@echo ' nconfig - interactive ncurses-based configurator'
@echo ' xconfig - interactive Qt-based configurator'
@echo ' gconfig - interactive GTK-based configurator'
@echo ' oldconfig - resolve any unresolved symbols in .config'
@echo ' randconfig - New config with random answer to all options'
@echo ' defconfig - New config with default answer to all options'
@echo ' savedefconfig - Save current config as ./defconfig (minimal config)'
@echo ' allyesconfig - New config where all options are accepted with yes'
@echo ' allnoconfig - New config where all options are answered with no'
@echo ' randpackageconfig - New config with random answer to package options'
@echo ' allyespackageconfig - New config where pkg options are accepted with yes'
@echo ' allnopackageconfig - New config where package options are answered with no'
ifeq ($(BR2_PACKAGE_BUSYBOX),y)
@echo ' busybox-menuconfig - Run BusyBox menuconfig'
endif
ifeq ($(BR2_LINUX_KERNEL),y)
@echo ' linux-menuconfig - Run Linux kernel menuconfig'
@echo ' linux-savedefconfig - Run Linux kernel savedefconfig'
endif
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
@echo ' uclibc-menuconfig - Run uClibc menuconfig'
endif
ifeq ($(BR2_TOOLCHAIN_CTNG),y)
@echo ' ctng-menuconfig - Run crosstool-NG menuconfig'
endif
ifeq ($(BR2_TARGET_BAREBOX),y)
@echo ' barebox-menuconfig - Run barebox menuconfig'
@echo ' barebox-savedefconfig - Run barebox savedefconfig'
endif
@echo ' configured - make {uclibc/busybox/linux26}-config'
@echo ' saveconfig - save current configuration under local/<project>'
@echo ' getconfig - restore saved configuration from local/<project>'
@echo
@echo 'Miscellaneous:'
@echo ' source - download all sources needed for offline-build'
@echo ' source-check - check all packages for valid download URLs'
@echo ' external-deps - list external packages used'
@echo
@echo ' make V=0|1 - 0 => quiet build (default), 1 => verbose build'
@echo ' make O=dir - Locate all output files in "dir", including .config'
@echo
@$(foreach b, $(sort $(notdir $(wildcard $(TOPDIR)/configs/*_defconfig))), \
printf " %-35s - Build for %s\\n" $(b) $(b:_defconfig=);)
@echo
@echo 'See docs/README and docs/buildroot.html for further details'
@echo
release: OUT=buildroot-$(BR2_VERSION)
release: distclean
OUT=buildroot-$$(grep -A2 BR2_VERSION $(CONFIG_CONFIG_IN)|grep default|cut -f2 -d\"); \
rm -rf ../$$OUT*; cp -al . ../$$OUT; cd ..; \
tar cfz $$OUT.tar.gz --exclude .svn --exclude .git --exclude \*~ $$OUT; \
rm -rf $$OUT
release:
git archive --format=tar --prefix=$(OUT)/ master|gzip -9 >$(OUT).tar.gz
.PHONY: $(noconfig_targets)
.PHONY: dummy subdirs release distclean clean config oldconfig \
menuconfig tags check test depend defconfig help

14
TODO Normal file
View File

@@ -0,0 +1,14 @@
Buildroot2 TODOs
- fix packages/Makefile.autotools.in to use a package-imposed patchdir
(Ivan Kuten)
- convert all packages that use autoconf to use the infrastructure of
packages/Makefile.autotools.in
- fix setting of flags for packages
- stabilize for a 0.10.0 release
- think about using a common --config-cache for configure
Should take care of expanding TARGET_CONFIGURE_ARGS for cross compiles
to working presets.

File diff suppressed because it is too large Load Diff

View File

@@ -1,89 +0,0 @@
CONFIG_EXPERIMENTAL=y
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SYSVIPC=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_BLK_DEV_INITRD=y
CONFIG_SLAB=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MACH_VERSATILE_AB=y
CONFIG_PCI=y
CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set
CONFIG_LEDS=y
CONFIG_LEDS_CPU=y
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_CMDLINE="root=1f03 mem=32M"
CONFIG_VFP=y
CONFIG_PM=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_BOOTP=y
# CONFIG_INET_DIAG is not set
# CONFIG_IPV6 is not set
CONFIG_MTD=y
CONFIG_MTD_PARTITIONS=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
CONFIG_MTD_CFI=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
CONFIG_MTD_CFI_INTELEXT=y
CONFIG_MTD_ARM_INTEGRATOR=y
CONFIG_BLK_DEV_RAM=y
CONFIG_SCSI=y
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
# CONFIG_SERIO_SERPORT is not set
CONFIG_SERIO_AMBAKMI=y
CONFIG_SERIAL_8250=m
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_RSA=y
CONFIG_SERIAL_AMBA_PL011=y
CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
CONFIG_LEGACY_PTY_COUNT=16
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=m
# CONFIG_HWMON is not set
CONFIG_FB=y
CONFIG_FB_ARMCLCD=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FONTS=y
CONFIG_FONT_ACORN_8x8=y
CONFIG_SOUND=y
CONFIG_SND=m
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_ARMAACI=m
CONFIG_MMC=y
CONFIG_MMC_ARMMMCI=m
CONFIG_EXT2_FS=y
CONFIG_VFAT_FS=m
CONFIG_TMPFS=y
CONFIG_JFFS2_FS=y
CONFIG_CRAMFS=y
CONFIG_MINIX_FS=y
CONFIG_ROMFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_USER=y
CONFIG_DEBUG_ERRORS=y
CONFIG_DEBUG_LL=y

View File

@@ -1,77 +0,0 @@
CONFIG_MIPS_MALTA=y
CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_CPU_MIPS32_R2=y
CONFIG_MIPS_MT_SMP=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_HZ_100=y
CONFIG_EXPERIMENTAL=y
CONFIG_SYSVIPC=y
CONFIG_LOG_BUF_SHIFT=15
CONFIG_SYSFS_DEPRECATED_V2=y
CONFIG_RELAY=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_PID_NS=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_EMBEDDED=y
# CONFIG_SYSCTL_SYSCALL is not set
# CONFIG_COMPAT_BRK is not set
CONFIG_SLAB=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_PCI=y
CONFIG_PM=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_PNP=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_LRO is not set
# CONFIG_INET_DIAG is not set
# CONFIG_IPV6 is not set
# CONFIG_WIRELESS is not set
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
# CONFIG_MISC_DEVICES is not set
CONFIG_IDE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
# CONFIG_WLAN is not set
# CONFIG_INPUT_KEYBOARD is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO_I8042 is not set
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_HW_RANDOM is not set
# CONFIG_HWMON is not set
# CONFIG_MFD_SUPPORT is not set
CONFIG_FB=y
CONFIG_FB_CIRRUS=y
# CONFIG_VGA_CONSOLE is not set
# CONFIG_HID_SUPPORT is not set
# CONFIG_USB_SUPPORT is not set
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_QUOTA=y
CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y
# CONFIG_RCU_CPU_STALL_DETECTOR is not set

View File

@@ -1,7 +0,0 @@
Run the emulation with:
qemu-system-mipsel -M malta -kernel vmlinux -serial stdio -hda rootfs.ext2 -append "root=/dev/hda"
The login prompt will appear in the terminal that started Qemu. The
graphical window is the framebuffer. No keyboard support has been
enabled.

View File

@@ -1,86 +0,0 @@
CONFIG_ALTIVEC=y
CONFIG_EXPERIMENTAL=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_COMPAT_BRK=y
CONFIG_SLAB=y
CONFIG_LBDAF=y
CONFIG_PPC_PMAC=y
CONFIG_PPC_OF_BOOT_TRAMPOLINE=y
CONFIG_PPC601_SYNC_FIX=y
CONFIG_HIGHMEM=y
CONFIG_NO_HZ=y
CONFIG_BINFMT_ELF=y
CONFIG_PROC_DEVICETREE=y
CONFIG_PM=y
CONFIG_SECCOMP=y
CONFIG_PCCARD=y
CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
CONFIG_PCMCIA_IOCTL=y
CONFIG_YENTA=y
CONFIG_ADVANCED_OPTIONS=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_INET_LRO=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FIRMWARE_IN_KERNEL=y
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_IDE=y
CONFIG_IDE_GD=y
CONFIG_IDE_GD_ATA=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_IDE_PROC_FS=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_BLK_DEV_IDE_PMAC=y
CONFIG_IEEE1394=y
CONFIG_IEEE1394_OHCI1394=y
CONFIG_IEEE1394_ETH1394=y
CONFIG_IEEE1394_RAWIO=y
CONFIG_IEEE1394_VIDEO1394=y
CONFIG_IEEE1394_DV1394=y
CONFIG_MACINTOSH_DRIVERS=y
CONFIG_ADB=y
CONFIG_ADB_CUDA=y
CONFIG_ADB_PMU=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_MACE=y
CONFIG_BMAC=y
CONFIG_HAPPYMEAL=y
CONFIG_SUNGEM=y
CONFIG_CASSINI=y
CONFIG_NET_PCI=y
CONFIG_PCNET32=y
CONFIG_NE2K_PCI=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
CONFIG_8139TOO_PIO=y
CONFIG_SERIO=y
CONFIG_SERIAL_PMACZILOG=y
CONFIG_SERIAL_PMACZILOG_TTYS=y
CONFIG_SERIAL_PMACZILOG_CONSOLE=y
CONFIG_HW_RANDOM=y
CONFIG_SSB=y
CONFIG_SSB_PCIHOST=y
CONFIG_SSB_PCMCIAHOST=y
CONFIG_SSB_DRIVER_PCICORE=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_DNOTIFY=y
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_SQUASHFS=y
CONFIG_LIBCRC32C=y
CONFIG_BOOTX_TEXT=y
CONFIG_CRYPTO_HW=y

View File

@@ -1,6 +0,0 @@
Run the emulation with:
qemu-system-ppc -M g3beige -kernel vmlinux -hda rootfs.ext2 -append "console=ttyS0 root=/dev/hdc" -serial stdio
The login prompt will appear in the terminal that started Qemu. The
graphical window is the framebuffer.

View File

@@ -1,17 +0,0 @@
diff --git a/arch/sh/include/asm/syscalls_32.h b/arch/sh/include/asm/syscalls_32.h
index be201fd..454538a 100644
--- a/arch/sh/include/asm/syscalls_32.h
+++ b/arch/sh/include/asm/syscalls_32.h
@@ -19,8 +19,10 @@ asmlinkage int sys_clone(unsigned long clone_flags, unsigned long newsp,
asmlinkage int sys_vfork(unsigned long r4, unsigned long r5,
unsigned long r6, unsigned long r7,
struct pt_regs __regs);
-asmlinkage int sys_execve(const char __user *ufilename, char __user * __user *uargv,
- char __user * __user *uenvp, unsigned long r7,
+asmlinkage int sys_execve(const char __user *ufilename,
+ const char __user *const __user *uargv,
+ const char __user *const __user *uenvp,
+ unsigned long r7,
struct pt_regs __regs);
asmlinkage int sys_sigsuspend(old_sigset_t mask, unsigned long r5,
unsigned long r6, unsigned long r7,

View File

@@ -1,13 +0,0 @@
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 33990fa..06645b6 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -45,7 +45,7 @@ config SUPERH32
select HAVE_ARCH_KGDB
select HAVE_HW_BREAKPOINT
select HAVE_MIXED_BREAKPOINTS_REGS
- select PERF_EVENTS if HAVE_HW_BREAKPOINT
+ select PERF_EVENTS
select ARCH_HIBERNATION_POSSIBLE if MMU
config SUPERH64

View File

@@ -1,106 +0,0 @@
CONFIG_EXPERIMENTAL=y
CONFIG_SYSVIPC=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_SYSFS_DEPRECATED_V2=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
# CONFIG_SYSCTL_SYSCALL is not set
CONFIG_SLAB=y
CONFIG_PROFILING=y
CONFIG_OPROFILE=y
CONFIG_MODULES=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_CPU_SUBTYPE_SH7751R=y
CONFIG_MEMORY_START=0x0c000000
CONFIG_FLATMEM_MANUAL=y
CONFIG_SH_RTS7751R2D=y
CONFIG_RTS7751R2D_PLUS=y
CONFIG_HEARTBEAT=y
CONFIG_PCI=y
CONFIG_HOTPLUG_PCI=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
# CONFIG_INET_LRO is not set
# CONFIG_IPV6 is not set
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_FW_LOADER=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_SD=y
CONFIG_ATA=y
CONFIG_PATA_PLATFORM=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_NET_PCI=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
# CONFIG_8139TOO_PIO is not set
# CONFIG_WLAN is not set
CONFIG_INPUT_FF_MEMLESS=m
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_KEYBOARD is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO is not set
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_SH_SCI=y
CONFIG_SERIAL_SH_SCI_NR_UARTS=1
CONFIG_SERIAL_SH_SCI_CONSOLE=y
CONFIG_HW_RANDOM=y
CONFIG_SPI=y
CONFIG_SPI_SH_SCI=y
CONFIG_MFD_SM501=y
CONFIG_VIDEO_OUTPUT_CONTROL=m
CONFIG_FB=y
CONFIG_FB_SH_MOBILE_LCDC=m
CONFIG_FB_SH_MOBILE_HDMI=m
CONFIG_FB_SM501=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
# CONFIG_LOGO_LINUX_CLUT224 is not set
# CONFIG_LOGO_SUPERH_MONO is not set
# CONFIG_LOGO_SUPERH_VGA16 is not set
CONFIG_SOUND=y
CONFIG_SND=m
CONFIG_SND_YMFPCI=m
CONFIG_SOUND_PRIME=m
CONFIG_HID_A4TECH=y
CONFIG_HID_APPLE=y
CONFIG_HID_BELKIN=y
CONFIG_HID_CHERRY=y
CONFIG_HID_CHICONY=y
CONFIG_HID_CYPRESS=y
CONFIG_HID_EZKEY=y
CONFIG_HID_GYRATION=y
CONFIG_HID_LOGITECH=y
CONFIG_HID_MICROSOFT=y
CONFIG_HID_MONTEREY=y
CONFIG_HID_PANTHERLORD=y
CONFIG_HID_PETALYNX=y
CONFIG_HID_SAMSUNG=y
CONFIG_HID_SONY=y
CONFIG_HID_SUNPLUS=y
CONFIG_USB=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_STORAGE=y
CONFIG_USB_LIBUSUAL=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_DRV_R9701=y
CONFIG_EXT2_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_PROC_KCORE=y
CONFIG_TMPFS=y
CONFIG_MINIX_FS=y
CONFIG_NLS_CODEPAGE_932=y
CONFIG_DEBUG_FS=y
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
# CONFIG_CRYPTO_ANSI_CPRNG is not set
CONFIG_CRC_T10DIF=y

View File

@@ -1,17 +0,0 @@
This little documentation explains how to build a kernel and a rootfs
for qemu with sh4 architecture.
1) Select qemu sh4 configuration and compile it :
make sh4_defconfig
make all
2) Run qemu-system-sh4 with the kernel and rootfs previously generated
It's recommended to use a git release for qemu (the current stable
version has framebuffer display issues). If you want to avoid building
all target, you can use this option on qemu configure :
--target-list=sh4-softmmu
The command is :
qemu-system-sh4 -M r2d -kernel output/images/zImage -drive file=output/images/rootfs.ext2,if=ide,format=raw -append root=/dev/sda console=ttySC1,115200 noiotrap

View File

@@ -1,71 +0,0 @@
CONFIG_EXPERIMENTAL=y
# CONFIG_LOCALVERSION_AUTO is not set
# CONFIG_SWAP is not set
CONFIG_RCU_FANOUT=32
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
# CONFIG_COMPAT_BRK is not set
# CONFIG_BLK_DEV_BSG is not set
# CONFIG_IOSCHED_DEADLINE is not set
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_X86_EXTENDED_PLATFORM is not set
# CONFIG_SCHED_OMIT_FRAME_POINTER is not set
# CONFIG_NO_BOOTMEM is not set
# CONFIG_X86_RESERVE_LOW_64K is not set
# CONFIG_MTRR_SANITIZER is not set
# CONFIG_SECCOMP is not set
# CONFIG_RELOCATABLE is not set
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_PNP=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_LRO is not set
# CONFIG_INET_DIAG is not set
# CONFIG_IPV6 is not set
# CONFIG_WIRELESS is not set
# CONFIG_PREVENT_FIRMWARE_BUILD is not set
# CONFIG_FIRMWARE_IN_KERNEL is not set
# CONFIG_BLK_DEV is not set
# CONFIG_MISC_DEVICES is not set
CONFIG_BLK_DEV_SD=y
CONFIG_ATA=y
CONFIG_ATA_PIIX=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_NET_PCI=y
CONFIG_NE2K_PCI=y
CONFIG_8139CP=y
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
# CONFIG_WLAN is not set
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO_SERPORT is not set
# CONFIG_DEVKMEM is not set
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_LEGACY_PTYS is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_HWMON is not set
# CONFIG_MFD_SUPPORT is not set
# CONFIG_HID_SUPPORT is not set
# CONFIG_USB_SUPPORT is not set
# CONFIG_X86_PLATFORM_DEVICES is not set
# CONFIG_DMIID is not set
CONFIG_EXT2_FS=y
# CONFIG_DNOTIFY is not set
# CONFIG_INOTIFY_USER is not set
# CONFIG_MISC_FILESYSTEMS is not set
CONFIG_NFS_FS=y
CONFIG_ROOT_NFS=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_FRAME_WARN=1024
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_FRAME_POINTER is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
# CONFIG_X86_VERBOSE_BOOTUP is not set
# CONFIG_VIRTUALIZATION is not set

View File

@@ -1,12 +0,0 @@
menu "Bootloaders"
source "boot/barebox/Config.in"
source "boot/grub/Config.in"
source "boot/syslinux/Config.in"
source "boot/uboot/Config.in"
source "boot/at91bootstrap/Config.in"
source "boot/at91dataflashboot/Config.in"
source "boot/xloader/Config.in"
endmenu

View File

@@ -1,41 +0,0 @@
menuconfig BR2_TARGET_AT91BOOTSTRAP
depends on BR2_arm
bool "AT91 Bootstrap"
help
AT91Bootstrap is a first level bootloader for the Atmel AT91
devices. It integrates algorithms for:
- Device initialization such as clock configuration, PIO settings...
- Peripheral drivers such as PIO, PMC or SDRAMC...
- Physical media algorithm such as DataFlash, NandFlash, NOR Flash...
if BR2_TARGET_AT91BOOTSTRAP
config BR2_TARGET_AT91BOOTSTRAP_BOARD
string "Bootstrap board"
default ""
help
This is used to do a make <board>_config
choice
prompt "Boot Memory"
default BR2_TARGET_AT91BOOTSTRAP_DATAFLASH
help
Select Chip for which AT91 bootstrap should be built
config BR2_TARGET_AT91BOOTSTRAP_DATAFLASH
bool "Data Flash"
config BR2_TARGET_AT91BOOTSTRAP_NANDFLASH
bool "NAND Flash"
endchoice
config BR2_TARGET_AT91BOOTSTRAP_MEMORY
string
default "dataflash" if BR2_TARGET_AT91BOOTSTRAP_DATAFLASH
default "nandflash" if BR2_TARGET_AT91BOOTSTRAP_NANDFLASH
endif

View File

@@ -1,334 +0,0 @@
When using an EABI toolchain, the default compilation generates
references to __aeabi_unwind_cpp_pr0(). This symbol is defined in
libgcc, but we don't want to use it for a bootloader.
Therefore, this patch passes some additional CFLAGS to disable the
generation of such references by avoiding unwind tables, exceptions,
etc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
board/at91cap9adk/dataflash/Makefile | 2 +-
board/at91cap9adk/norflash/Makefile | 2 +-
board/at91cap9stk/nandflash/Makefile | 2 +-
board/at91sam9260ek/dataflash/Makefile | 2 +-
board/at91sam9260ek/nandflash/Makefile | 2 +-
board/at91sam9261ek/dataflash/Makefile | 2 +-
board/at91sam9261ek/nandflash/Makefile | 2 +-
board/at91sam9263ek/dataflash/Makefile | 2 +-
board/at91sam9263ek/nandflash/Makefile | 2 +-
board/at91sam9g10ek/dataflash/Makefile | 2 +-
board/at91sam9g10ek/nandflash/Makefile | 2 +-
board/at91sam9g20ek/dataflash/Makefile | 2 +-
board/at91sam9g20ek/nandflash/Makefile | 2 +-
board/at91sam9g45ekes/nandflash/Makefile | 2 +-
board/at91sam9m10ekes/dataflash/Makefile | 2 +-
board/at91sam9m10ekes/nandflash/Makefile | 2 +-
board/at91sam9m10g45ek/dataflash/Makefile | 2 +-
board/at91sam9m10g45ek/nandflash/Makefile | 2 +-
board/at91sam9rlek/dataflash/Makefile | 2 +-
board/at91sam9rlek/nandflash/Makefile | 2 +-
board/at91sam9xeek/dataflash/Makefile | 2 +-
board/at91sam9xeek/nandflash/Makefile | 2 +-
lib/Makefile | 2 +-
23 files changed, 23 insertions(+), 23 deletions(-)
Index: Bootstrap-v1.16/board/at91cap9adk/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91cap9adk/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91cap9adk/dataflash/Makefile
@@ -34,7 +34,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91cap9adk/norflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91cap9adk/norflash/Makefile
+++ Bootstrap-v1.16/board/at91cap9adk/norflash/Makefile
@@ -34,7 +34,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91cap9stk/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91cap9stk/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91cap9stk/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
Index: Bootstrap-v1.16/board/at91sam9260ek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9260ek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9260ek/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9260ek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9260ek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9260ek/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9261ek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9261ek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9261ek/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9261ek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9261ek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9261ek/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9263ek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9263ek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9263ek/dataflash/Makefile
@@ -34,7 +34,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9263ek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9263ek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9263ek/nandflash/Makefile
@@ -33,7 +33,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -O0 -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -O0 -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9g10ek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9g10ek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9g10ek/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9g10ek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9g10ek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9g10ek/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9g20ek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9g20ek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9g20ek/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9g20ek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9g20ek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9g20ek/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9g45ekes/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9g45ekes/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9g45ekes/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -O2 -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9m10ekes/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9m10ekes/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9m10ekes/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -O2 -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9m10ekes/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9m10ekes/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9m10ekes/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -O2 -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9m10g45ek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9m10g45ek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9m10g45ek/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -O2 -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9m10g45ek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9m10g45ek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9m10g45ek/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -O2 -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -O2 -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9rlek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9rlek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9rlek/dataflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9rlek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9rlek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9rlek/nandflash/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9xeek/dataflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9xeek/dataflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9xeek/dataflash/Makefile
@@ -38,7 +38,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/board/at91sam9xeek/nandflash/Makefile
===================================================================
--- Bootstrap-v1.16.orig/board/at91sam9xeek/nandflash/Makefile
+++ Bootstrap-v1.16/board/at91sam9xeek/nandflash/Makefile
@@ -38,7 +38,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.
Index: Bootstrap-v1.16/lib/Makefile
===================================================================
--- Bootstrap-v1.16.orig/lib/Makefile
+++ Bootstrap-v1.16/lib/Makefile
@@ -37,7 +37,7 @@
SIZE=$(CROSS_COMPILE)size
OBJCOPY=$(CROSS_COMPILE)objcopy
OBJDUMP=$(CROSS_COMPILE)objdump
-CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL)
+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -I$(INCL) -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables
ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
# Linker flags.

View File

@@ -1,41 +0,0 @@
#############################################################
#
# at91bootstrap
#
#############################################################
AT91BOOTSTRAP_VERSION = 1.16
AT91BOOTSTRAP_SITE = http://www.atmel.com/dyn/resources/prod_documents/
AT91BOOTSTRAP_SOURCE = AT91Bootstrap$(AT91BOOTSTRAP_VERSION).zip
AT91BOOTSTRAP_BOARD = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_BOARD))
AT91BOOTSTRAP_MEMORY = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_MEMORY))
AT91BOOTSTRAP_MAKE_SUBDIR = board/$(AT91BOOTSTRAP_BOARD)/$(AT91BOOTSTRAP_MEMORY)
AT91BOOTSTRAP_BINARY = $(AT91BOOTSTRAP_MAKE_SUBDIR)/$(AT91BOOTSTRAP_MEMORY)_$(AT91BOOTSTRAP_BOARD).bin
AT91BOOTSTRAP_INSTALL_IMAGES = YES
AT91BOOTSTRAP_INSTALL_TARGET = NO
define AT91BOOTSTRAP_EXTRACT_CMDS
unzip -d $(BUILD_DIR) $(DL_DIR)/$(AT91BOOTSTRAP_SOURCE)
mv $(BUILD_DIR)/Bootstrap-v$(AT91BOOTSTRAP_VERSION)/* $(@D)
rmdir $(BUILD_DIR)/Bootstrap-v$(AT91BOOTSTRAP_VERSION)
endef
define AT91BOOTSTRAP_BUILD_CMDS
$(MAKE) CROSS_COMPILE=$(TARGET_CROSS) -C $(@D)/$(AT91BOOTSTRAP_MAKE_SUBDIR)
endef
define AT91BOOTSTRAP_INSTALL_IMAGES_CMDS
cp $(@D)/$(AT91BOOTSTRAP_BINARY) $(BINARIES_DIR)
endef
$(eval $(call GENTARGETS,boot,at91bootstrap))
ifeq ($(BR2_TARGET_AT91BOOTSTRAP),y)
# we NEED a board name unless we're at make source
ifeq ($(filter source,$(MAKECMDGOALS)),)
ifeq ($(AT91BOOTSTRAP_BOARD),)
$(error No AT91Bootstrap board name set. Check your BR2_TARGET_AT91BOOTSTRAP_BOARD setting)
endif
endif
endif

View File

@@ -1,3 +0,0 @@
config BR2_TARGET_AT91DATAFLASHBOOT
depends on BR2_arm
bool "AT91 DataFlashBoot"

View File

@@ -1,22 +0,0 @@
Disable the automatic installation of at91dataflashboot since it tries
to install things to /tftpboot, which is not possible when not
building as root.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: at91dataflashboot-1.05/Makefile
===================================================================
--- at91dataflashboot-1.05.orig/Makefile
+++ at91dataflashboot-1.05/Makefile
@@ -40,7 +40,7 @@
I=config.h com.h dataflash.h embedded_services.h main.h stdio.h include/AT91RM9200.h include/lib_AT91RM9200.h
-all: clean $(BINNAME) $(LSSNAME) install
+all: clean $(BINNAME) $(LSSNAME)
$(SIZE) $(OUTNAME)
# C objects here

View File

@@ -1,43 +0,0 @@
Get at91dataflashboot to build with EABI toolchains, by providing the
__aeabi_uidiv and __aeabi_uidivmod symbols. The code is based on
U-Boot's code.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
_udivsi3.S | 14 ++++++++++++++
1 file changed, 14 insertions(+)
Index: DataflashBoot-1.05/_udivsi3.S
===================================================================
--- DataflashBoot-1.05.orig/_udivsi3.S
+++ DataflashBoot-1.05/_udivsi3.S
@@ -12,8 +12,11 @@
.text
.globl __udivsi3
.type __udivsi3 ,function
+ .globl __aeabi_uidiv
+ .type __aeabi_uidiv ,function
.align 0
__udivsi3 :
+ __aeabi_uidiv:
cmp divisor, #0
beq Ldiv0
mov curbit, #1
@@ -68,6 +71,17 @@
mov r0, #0 @ about as wrong as it could be
ldmia sp!, {pc}
.size __udivsi3 , . - __udivsi3
+
+.globl __aeabi_uidivmod
+__aeabi_uidivmod:
+
+ stmfd sp!, {r0, r1, ip, lr}
+ bl __aeabi_uidiv
+ ldmfd sp!, {r1, r2, ip, lr}
+ mul r3, r0, r2
+ sub r1, r1, r3
+ mov pc, lr
+
/* # 235 "libgcc1.S" */
/* # 320 "libgcc1.S" */
/* # 421 "libgcc1.S" */

View File

@@ -1,22 +0,0 @@
#############################################################
#
# DataFlashBoot
#
#############################################################
AT91DATAFLASHBOOT_VERSION = 1.05
AT91DATAFLASHBOOT_SOURCE = DataflashBoot-$(AT91DATAFLASHBOOT_VERSION).tar.bz2
AT91DATAFLASHBOOT_SITE = ftp://www.at91.com/pub/buildroot/
AT91DATAFLASHBOOT_INSTALL_TARGET = NO
AT91DATAFLASHBOOT_INSTALL_IMAGES = YES
define AT91DATAFLASHBOOT_BUILD_CMDS
make -C $(@D) CROSS_COMPILE=$(TARGET_CROSS)
endef
define AT91DATAFLASHBOOT_INSTALL_IMAGES_CMDS
cp $(@D)/DataflashBoot-$(AT91DATAFLASHBOOT_VERSION).bin $(BINARIES_DIR)
endef
$(eval $(call GENTARGETS,boot,at91dataflashboot))

View File

@@ -1,20 +0,0 @@
menuconfig BR2_TARGET_BAREBOX
bool "Barebox"
help
The Barebox bootloader, formerly known as U-Boot v2.
http://www.barebox.org
if BR2_TARGET_BAREBOX
config BR2_TARGET_BAREBOX_BOARD_DEFCONFIG
string "board defconfig"
help
Name of the board for which Barebox should be built, without
the _defconfig suffix.
config BR2_TARGET_BAREBOX_BAREBOXENV
bool "bareboxenv tool in target"
help
Install bareboxenv tool in target.
endif

View File

@@ -1,73 +0,0 @@
#############################################################
#
# Barebox
#
#############################################################
BAREBOX_VERSION = 2011.08.0
BAREBOX_SOURCE = barebox-$(BAREBOX_VERSION).tar.bz2
BAREBOX_SITE = http://www.barebox.org/download/
BAREBOX_INSTALL_IMAGES = YES
ifneq ($(BR2_TARGET_BAREBOX_BAREBOXENV),y)
BAREBOX_INSTALL_TARGET = NO
endif
BAREBOX_BOARD_DEFCONFIG = $(call qstrip,$(BR2_TARGET_BAREBOX_BOARD_DEFCONFIG))
ifeq ($(KERNEL_ARCH),i386)
BAREBOX_ARCH=x86
else ifeq ($(KERNEL_ARCH),powerpc)
BAREBOX_ARCH=ppc
else
BAREBOX_ARCH=$(KERNEL_ARCH)
endif
BAREBOX_MAKE_FLAGS = ARCH=$(BAREBOX_ARCH) CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)"
define BAREBOX_CONFIGURE_CMDS
$(MAKE) $(BAREBOX_MAKE_FLAGS) -C $(@D) $(BAREBOX_BOARD_DEFCONFIG)_defconfig
endef
ifeq ($(BR2_TARGET_BAREBOX_BAREBOXENV),y)
define BAREBOX_BUILD_BAREBOXENV_CMDS
$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -o $(@D)/bareboxenv \
$(@D)/scripts/bareboxenv.c
endef
endif
define BAREBOX_BUILD_CMDS
$(BAREBOX_BUILD_BAREBOXENV_CMDS)
$(MAKE) $(BAREBOX_MAKE_FLAGS) -C $(@D)
endef
define BAREBOX_INSTALL_IMAGES_CMDS
cp $(@D)/barebox.bin $(BINARIES_DIR)
endef
ifeq ($(BR2_TARGET_BAREBOX_BAREBOXENV),y)
define BAREBOX_INSTALL_TARGET_CMDS
cp $(@D)/bareboxenv $(TARGET_DIR)/usr/bin
endef
endif
$(eval $(call GENTARGETS,boot,barebox))
ifeq ($(BR2_TARGET_BAREBOX),y)
# we NEED a board defconfig file unless we're at make source
ifeq ($(filter source,$(MAKECMDGOALS)),)
ifeq ($(BAREBOX_BOARD_DEFCONFIG),)
$(error No Barebox defconfig file. Check your BR2_TARGET_BAREBOX_BOARD_DEFCONFIG setting)
endif
endif
barebox-menuconfig barebox-xconfig barebox-gconfig barebox-nconfig: barebox-configure
$(MAKE) $(BAREBOX_MAKE_FLAGS) -C $(BAREBOX_DIR) \
$(subst barebox-,,$@)
rm -f $(BAREBOX_DIR)/.stamp_{built,target_installed,images_installed}
barebox-savedefconfig: barebox-configure
$(MAKE) $(BAREBOX_MAKE_FLAGS) -C $(BAREBOX_DIR) \
$(subst barebox-,,$@)
endif

View File

@@ -1 +0,0 @@
include boot/*/*.mk

File diff suppressed because it is too large Load Diff

View File

@@ -1,85 +0,0 @@
#############################################################
#
# grub
#
#############################################################
GRUB_VERSION = 0.97
GRUB_SOURCE = grub_$(GRUB_VERSION).orig.tar.gz
GRUB_PATCH = grub_$(GRUB_VERSION)-35.diff.gz
GRUB_SITE = http://snapshot.debian.org/archive/debian/20080329T000000Z/pool/main/g/grub/
GRUB_CFLAGS=-DSUPPORT_LOOPDEV
ifeq ($(BR2_LARGEFILE),)
GRUB_CFLAGS+=-U_FILE_OFFSET_BITS
endif
GRUB_CONFIG-$(BR2_TARGET_GRUB_SPLASH) += --enable-graphics
GRUB_CONFIG-$(BR2_TARGET_GRUB_DISKLESS) += --enable-diskless
GRUB_CONFIG-$(BR2_TARGET_GRUB_3c595) += --enable-3c595
GRUB_CONFIG-$(BR2_TARGET_GRUB_3c90x) += --enable-3c90x
GRUB_CONFIG-$(BR2_TARGET_GRUB_davicom) += --enable-davicom
GRUB_CONFIG-$(BR2_TARGET_GRUB_e1000) += --enable-e1000
GRUB_CONFIG-$(BR2_TARGET_GRUB_eepro100) += --enable-eepro100
GRUB_CONFIG-$(BR2_TARGET_GRUB_epic100) += --enable-epic100
GRUB_CONFIG-$(BR2_TARGET_GRUB_forcedeth) += --enable-forcedeth
GRUB_CONFIG-$(BR2_TARGET_GRUB_natsemi) += --enable-natsemi
GRUB_CONFIG-$(BR2_TARGET_GRUB_ns83820) += --enable-ns83820
GRUB_CONFIG-$(BR2_TARGET_GRUB_ns8390) += --enable-ns8390
GRUB_CONFIG-$(BR2_TARGET_GRUB_pcnet32) += --enable-pcnet32
GRUB_CONFIG-$(BR2_TARGET_GRUB_pnic) += --enable-pnic
GRUB_CONFIG-$(BR2_TARGET_GRUB_rtl8139) += --enable-rtl8139
GRUB_CONFIG-$(BR2_TARGET_GRUB_r8169) += --enable-r8169
GRUB_CONFIG-$(BR2_TARGET_GRUB_sis900) += --enable-sis900
GRUB_CONFIG-$(BR2_TARGET_GRUB_tg3) += --enable-tg3
GRUB_CONFIG-$(BR2_TARGET_GRUB_tulip) += --enable-tulip
GRUB_CONFIG-$(BR2_TARGET_GRUB_tlan) += --enable-tlan
GRUB_CONFIG-$(BR2_TARGET_GRUB_undi) += --enable-undi
GRUB_CONFIG-$(BR2_TARGET_GRUB_via_rhine) += --enable-via-rhine
GRUB_CONFIG-$(BR2_TARGET_GRUB_w89c840) += --enable-w89c840
define GRUB_DEBIAN_PATCHES
# Apply the patches from the Debian patch
(cd $(@D) ; for f in `cat debian/patches/00list | grep -v ^#` ; do \
cat debian/patches/$$f | patch -p1 ; \
done)
endef
GRUB_POST_PATCH_HOOKS += GRUB_DEBIAN_PATCHES
GRUB_CONF_ENV = \
CFLAGS="$(TARGET_CFLAGS) $(GRUB_CFLAGS)"
GRUB_CONF_OPT = \
--disable-auto-linux-mem-opt \
$(GRUB_CONFIG-y)
define GRUB_INSTALL_STAGING_CMDS
install -m 0755 -D $(@D)/grub/grub $(STAGING_DIR)/sbin/grub
endef
ifeq ($(BR2_TARGET_GRUB_SPLASH),y)
define GRUB_INSTALL_SPLASH
cp boot/grub/splash.xpm.gz $(TARGET_DIR)/boot/grub/
endef
endif
define GRUB_INSTALL_TARGET_CMDS
install -m 0755 -D $(@D)/grub/grub $(TARGET_DIR)/sbin/grub
mkdir -p $(TARGET_DIR)/boot/grub
cp $(@D)/stage1/stage1 $(TARGET_DIR)/boot/grub
cp $(@D)/stage2/*1_5 $(TARGET_DIR)/boot/grub
cp $(@D)/stage2/stage2 $(TARGET_DIR)/boot/grub
$(GRUB_INSTALL_SPLASH)
endef
define GRUB_UNINSTALL_STAGING_CMDS
rm -f $(STAGING_DIR)/sbin/grub
endef
define GRUB_UNINSTALL_TARGET_CMDS
rm -f $(TARGET_DIR)/sbin/grub
rm -rf $(TARGET_DIR)/boot/grub
endef
$(eval $(call AUTOTARGETS,boot,grub))

View File

@@ -1,16 +0,0 @@
config BR2_TARGET_SYSLINUX
bool "syslinux"
depends on BR2_i386 || BR2_x86_64
help
The syslinux bootloader for x86 systems.
This includes: syslinux, pxelinux, extlinux.
config BR2_TARGET_SYSLINUX_ISOLINUX
bool "Install isolinux"
depends on BR2_TARGET_SYSLINUX
default y
config BR2_TARGET_SYSLINUX_PXELINUX
bool "Install pxelinux"
depends on BR2_TARGET_SYSLINUX
default y

View File

@@ -1,17 +0,0 @@
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: syslinux-3.85/Makefile
===================================================================
--- syslinux-3.85.orig/Makefile
+++ syslinux-3.85/Makefile
@@ -43,7 +43,7 @@
mbr/mbr_c.bin mbr/altmbr_c.bin mbr/gptmbr_c.bin \
mbr/mbr_f.bin mbr/altmbr_f.bin mbr/gptmbr_f.bin \
core/pxelinux.0 core/isolinux.bin core/isolinux-debug.bin \
- gpxe/gpxelinux.0 dos/syslinux.com win32/syslinux.exe \
+ gpxe/gpxelinux.0 dos/syslinux.com \
dosutil/*.com dosutil/*.sys \
$(MODULES)

View File

@@ -1,29 +0,0 @@
#############################################################
#
# syslinux to make target msdos/iso9660 filesystems bootable
#
#############################################################
SYSLINUX_VERSION = 3.85
SYSLINUX_SOURCE = syslinux-$(SYSLINUX_VERSION).tar.bz2
SYSLINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/boot/syslinux/3.xx/
SYSLINUX_INSTALL_TARGET = NO
SYSLINUX_INSTALL_IMAGES = YES
SYSLINUX_DEPENDENCIES = host-nasm
define SYSLINUX_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) CC="$(HOSTCC)" AR="$(HOSTAR)" -C $(@D)
endef
SYSLINUX_IMAGES-$(BR2_TARGET_SYSLINUX_ISOLINUX) += isolinux.bin
SYSLINUX_IMAGES-$(BR2_TARGET_SYSLINUX_PXELINUX) += pxelinux.bin
define SYSLINUX_INSTALL_IMAGES_CMDS
for i in $(SYSLINUX_IMAGES-y); do \
$(INSTALL) -D -m 0755 $(@D)/core/$$i $(BINARIES_DIR)/$$i; \
done
endef
$(eval $(call GENTARGETS,boot,syslinux))

View File

@@ -1,140 +0,0 @@
menuconfig BR2_TARGET_UBOOT
bool "U-Boot"
help
Build "Das U-Boot" Boot Monitor
if BR2_TARGET_UBOOT
config BR2_TARGET_UBOOT_BOARDNAME
string "U-Boot board name"
help
One of U-Boot supported boards to be built.
This will be suffixed with _config to meet U-Boot standard naming.
choice
prompt "U-Boot Version"
default BR2_TARGET_UBOOT_2011_06
help
Select the specific U-Boot version you want to use
config BR2_TARGET_UBOOT_2011_06
bool "2011.06"
config BR2_TARGET_UBOOT_2011_03
bool "2011.03"
config BR2_TARGET_UBOOT_2010_12
bool "2010.12"
config BR2_TARGET_UBOOT_2010_09
bool "2010.09"
config BR2_TARGET_UBOOT_2010_06
bool "2010.06"
config BR2_TARGET_UBOOT_CUSTOM_TARBALL
bool "Custom tarball"
config BR2_TARGET_UBOOT_CUSTOM_GIT
bool "Custom Git repository"
endchoice
if BR2_TARGET_UBOOT_CUSTOM_TARBALL
config BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION
string "URL of custom U-Boot tarball"
endif
config BR2_TARGET_UBOOT_VERSION
string
default "2011.06" if BR2_TARGET_UBOOT_2011_06
default "2011.03" if BR2_TARGET_UBOOT_2011_03
default "2010.12" if BR2_TARGET_UBOOT_2010_12
default "2010.09" if BR2_TARGET_UBOOT_2010_09
default "2010.06" if BR2_TARGET_UBOOT_2010_06
default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL
default $BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION if BR2_TARGET_UBOOT_CUSTOM_GIT
config BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR
string "custom patch dir"
help
If your board requires custom patches, add the path to the
directory containing the patches here. The patches must be
named u-boot-<version>-<something>.patch.
Most users may leave this empty
if BR2_TARGET_UBOOT_CUSTOM_GIT
config BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL
string "URL of custom Git repository"
config BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION
string "Custom Git version"
endif
choice
prompt "U-Boot binary format"
config BR2_TARGET_UBOOT_FORMAT_BIN
bool "u-boot.bin"
config BR2_TARGET_UBOOT_FORMAT_KWB
depends on BR2_arm
bool "u-boot.kwb (Marvell)"
config BR2_TARGET_UBOOT_FORMAT_LDR
depends on BR2_bfin
bool "u-boot.ldr"
endchoice
menuconfig BR2_TARGET_UBOOT_NETWORK
bool "Network Settings"
default y
help
Network settings for U-boot
if BR2_TARGET_UBOOT_NETWORK
config BR2_TARGET_UBOOT_SERVERIP
string "server ip"
default "10.175.196.221"
help
TFTP server ip address
config BR2_TARGET_UBOOT_IPADDR
string "ip address"
default "10.175.196.18"
help
Target ip address
config BR2_TARGET_UBOOT_GATEWAY
string "gateway ip"
default "10.175.196.1"
help
Gateway ip address
config BR2_TARGET_UBOOT_NETMASK
string "netmask"
default "255.255.255.0"
help
Network Mask
config BR2_TARGET_UBOOT_ETHADDR
string "ethernet address"
default "04:25:fe:ed:00:18"
help
Target MAC address for the ethernet interface.
This should be changed for production units
config BR2_TARGET_UBOOT_ETH1ADDR
string "ethernet 2 address"
help
Target MAC address for the second ethernet interface.
endif # BR2_TARGET_UBOOT_NETWORK
endif # BR2_TARGET_UBOOT

View File

@@ -1,100 +0,0 @@
#############################################################
#
# U-Boot
#
#############################################################
UBOOT_VERSION = $(call qstrip,$(BR2_TARGET_UBOOT_VERSION))
UBOOT_BOARD_NAME = $(call qstrip,$(BR2_TARGET_UBOOT_BOARDNAME))
UBOOT_INSTALL_IMAGES = YES
ifeq ($(UBOOT_VERSION),custom)
# Handle custom U-Boot tarballs as specified by the configuration
UBOOT_TARBALL = $(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION))
UBOOT_SITE = $(dir $(UBOOT_TARBALL))
UBOOT_SOURCE = $(notdir $(UBOOT_TARBALL))
else ifeq ($(BR2_TARGET_UBOOT_CUSTOM_GIT),y)
UBOOT_SITE = $(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL))
UBOOT_SITE_METHOD = git
else
# Handle stable official U-Boot versions
UBOOT_SITE = ftp://ftp.denx.de/pub/u-boot
UBOOT_SOURCE = u-boot-$(UBOOT_VERSION).tar.bz2
endif
ifeq ($(BR2_TARGET_UBOOT_FORMAT_KWB),y)
UBOOT_BIN = u-boot.kwb
UBOOT_MAKE_TARGET = $(UBOOT_BIN)
else ifeq ($(BR2_TARGET_UBOOT_FORMAT_LDR),y)
UBOOT_BIN = u-boot.ldr
else
UBOOT_BIN = u-boot.bin
endif
UBOOT_ARCH=$(KERNEL_ARCH)
UBOOT_CONFIGURE_OPTS += CONFIG_NOSOFTFLOAT=1
UBOOT_MAKE_OPTS += \
CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \
ARCH=$(UBOOT_ARCH)
# Helper function to fill the U-Boot config.h file.
# Argument 1: option name
# Argument 2: option value
# If the option value is empty, this function does nothing.
define insert_define
$(if $(call qstrip,$(2)),
@echo "#ifdef $(strip $(1))" >> $(@D)/include/config.h
@echo "#undef $(strip $(1))" >> $(@D)/include/config.h
@echo "#endif" >> $(@D)/include/config.h
@echo '#define $(strip $(1)) $(call qstrip,$(2))' >> $(@D)/include/config.h)
endef
ifneq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),)
define UBOOT_APPLY_CUSTOM_PATCHES
toolchain/patch-kernel.sh $(@D) $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR) \
uboot-$(UBOOT_VERSION)-\*.patch
endef
UBOOT_POST_PATCH_HOOKS += UBOOT_APPLY_CUSTOM_PATCHES
endif
define UBOOT_CONFIGURE_CMDS
$(TARGET_CONFIGURE_OPTS) $(UBOOT_CONFIGURE_OPTS) \
$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) \
$(UBOOT_BOARD_NAME)_config
@echo >> $(@D)/include/config.h
@echo "/* Add a wrapper around the values Buildroot sets. */" >> $(@D)/include/config.h
@echo "#ifndef __BR2_ADDED_CONFIG_H" >> $(@D)/include/config.h
@echo "#define __BR2_ADDED_CONFIG_H" >> $(@D)/include/config.h
$(call insert_define,DATE,$(DATE))
$(call insert_define,CONFIG_LOAD_SCRIPTS,1)
$(call insert_define,CONFIG_IPADDR,$(BR2_TARGET_UBOOT_IPADDR))
$(call insert_define,CONFIG_GATEWAYIP,$(BR2_TARGET_UBOOT_GATEWAY))
$(call insert_define,CONFIG_NETMASK,$(BR2_TARGET_UBOOT_NETMASK))
$(call insert_define,CONFIG_SERVERIP,$(BR2_TARGET_UBOOT_SERVERIP))
$(call insert_define,CONFIG_ETHADDR,$(BR2_TARGET_UBOOT_ETHADDR))
$(call insert_define,CONFIG_ETH1ADDR,$(BR2_TARGET_UBOOT_ETH1ADDR))
@echo "#endif /* __BR2_ADDED_CONFIG_H */" >> $(@D)/include/config.h
endef
define UBOOT_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) $(UBOOT_CONFIGURE_OPTS) \
$(MAKE) -C $(@D) $(UBOOT_MAKE_OPTS) \
$(UBOOT_MAKE_TARGET)
endef
define UBOOT_INSTALL_IMAGES_CMDS
cp -dpf $(@D)/$(UBOOT_BIN) $(BINARIES_DIR)/
endef
$(eval $(call GENTARGETS,boot,uboot))
ifeq ($(BR2_TARGET_UBOOT),y)
# we NEED a board name unless we're at make source
ifeq ($(filter source,$(MAKECMDGOALS)),)
ifeq ($(UBOOT_BOARD_NAME),)
$(error NO U-Boot board name set. Check your BR2_TARGET_UBOOT_BOARDNAME setting)
endif
endif
endif

View File

@@ -1,15 +0,0 @@
menuconfig BR2_TARGET_XLOADER
bool "X-loader"
depends on BR2_cortex_a8 || BR2_cortex_a9
help
The x-loader bootloader. It is mainly used on OMAP-based
platforms.
if BR2_TARGET_XLOADER
config BR2_TARGET_XLOADER_BOARDNAME
string "x-loader board name"
help
One of x-loader supported boards to be built.
This will be suffixed with _config to meet x-loader
standard naming.
endif

View File

@@ -1,37 +0,0 @@
#############################################################
#
# x-loader
#
#############################################################
XLOADER_VERSION = 6f3a26101303051e0f91b6213735b68ce804e94e
XLOADER_SITE = git://gitorious.org/x-loader/x-loader.git
XLOADER_BOARD_NAME = $(call qstrip,$(BR2_TARGET_XLOADER_BOARDNAME))
XLOADER_INSTALL_IMAGES = YES
define XLOADER_BUILD_CMDS
$(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) $(XLOADER_BOARD_NAME)_config
$(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) all
$(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) ift
endef
define XLOADER_INSTALL_IMAGES_CMDS
$(INSTALL) -D -m 0755 $(@D)/MLO $(BINARIES_DIR)/
endef
$(eval $(call GENTARGETS,boot,xloader))
#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(BR2_TARGET_XLOADER),y)
# we NEED a board name unless we're at make source
ifeq ($(filter source,$(MAKECMDGOALS)),)
ifeq ($(XLOADER_BOARD_NAME),)
$(error NO x-loader board name set. Check your BR2_BOOT_XLOADER_BOARDNAME setting)
endif
endif
endif

View File

@@ -1,23 +0,0 @@
# Architecture
BR2_arm=y
# Filesystem
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_1056=y
BR2_TARGET_ROOTFS_JFFS2_PAGESIZE=0x420
BR2_TARGET_ROOTFS_JFFS2_EBSIZE=0x2100
BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y
BR2_TARGET_ROOTFS_JFFS2_LE=y
# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="at91rm9200ek"
BR2_TARGET_UBOOT_2010_06=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.33"
BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.33-at91.patch.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="at91rm9200ek"

View File

@@ -1,23 +0,0 @@
# Architecture
BR2_arm=y
# First stage bootloader
BR2_TARGET_AT91BOOTSTRAP=y
BR2_TARGET_AT91BOOTSTRAP_BOARD="at91sam9260ek"
BR2_TARGET_AT91BOOTSTRAP_DATAFLASHCARD=y
# Second stage bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="at91sam9260ek"
BR2_TARGET_UBOOT_2010_06=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.33"
BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.33-at91.patch.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="at91sam9260ek"
# Filesystem
BR2_TARGET_ROOTFS_TAR=y

View File

@@ -1,24 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm926t=y
# First stage bootloader
BR2_TARGET_AT91BOOTSTRAP=y
BR2_TARGET_AT91BOOTSTRAP_BOARD="at91sam9261ek"
BR2_TARGET_AT91BOOTSTRAP_DATAFLASHCARD=y
# Second stage bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="at91sam9261ek"
BR2_TARGET_UBOOT_2010_06=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.33"
BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.33-at91.patch.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="at91sam9261ek"
# Filesystem
BR2_TARGET_ROOTFS_TAR=y

View File

@@ -1,24 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm926t=y
# First stage bootloader
BR2_TARGET_AT91BOOTSTRAP=y
BR2_TARGET_AT91BOOTSTRAP_BOARD="at91sam9263ek"
BR2_TARGET_AT91BOOTSTRAP_DATAFLASHCARD=y
# Second stage bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="at91sam9263ek"
BR2_TARGET_UBOOT_2010_06=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.33"
BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.33-at91.patch.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="at91sam9263ek"
# Filesystem
BR2_TARGET_ROOTFS_TAR=y

View File

@@ -1,24 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm926t=y
# First stage bootloader
BR2_TARGET_AT91BOOTSTRAP=y
BR2_TARGET_AT91BOOTSTRAP_BOARD="at91sam9g20ek"
BR2_TARGET_AT91BOOTSTRAP_DATAFLASHCARD=y
# Second stage bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="at91sam9g20ek"
BR2_TARGET_UBOOT_2010_06=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.33"
BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.33-at91.patch.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="at91sam9g20ek"
# Filesystem
BR2_TARGET_ROOTFS_TAR=y

View File

@@ -1,24 +0,0 @@
# Architecture
BR2_avr32=y
# Filesystems
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_FLASH_128=y
BR2_TARGET_ROOTFS_JFFS2_PAGESIZE=0x1000
BR2_TARGET_ROOTFS_JFFS2_EBSIZE=0x20000
BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y
BR2_TARGET_ROOTFS_JFFS2_BE=y
BR2_TARGET_ROOTFS_TAR=y
BR2_TARGET_ROOTFS_TAR_NONE=y
# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="atngw100"
BR2_TARGET_UBOOT_2010_09=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.35"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="atngw100"

View File

@@ -1,19 +0,0 @@
# Architecture
BR2_avr32=y
# U-Boot
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="atstk1002"
BR2_TARGET_UBOOT_2010_09=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.35"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="atstk1002"
# Filesystem
BR2_TARGET_ROOTFS_TAR=y

View File

@@ -1,17 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm926t=y
# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="cp926ejs"
BR2_TARGET_UBOOT_2010_06=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_2_6_35=
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="integrator"
# Filesystem
BR2_TARGET_ROOTFS_TAR=y

View File

@@ -1,14 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm920t=y
# Filesystem
BR2_TARGET_ROOTFS_TAR=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.33"
BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.33-at91.patch.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="kb9202"

View File

@@ -1,32 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm920t=y
# Serial port
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttySAC0"
# Filesystem
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
BR2_TARGET_ROOTFS_JFFS2_PAGESIZE=0x800
BR2_TARGET_ROOTFS_JFFS2_EBSIZE=0x20000
BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y
BR2_TARGET_ROOTFS_JFFS2_LE=y
BR2_TARGET_ROOTFS_TAR=y
# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mini2440"
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="http://repo.or.cz/w/u-boot-openmoko/mini2440.git/snapshot/dev-mini2440-stable.tar.gz"
#
# Kernel
#
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="http://www.pauljones.id.au/temp/linux-2.6.32.2-mini2440_20100113.tgz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/friendlyarm/mini2440/linux-2.6.32.2.config"
BR2_LINUX_KERNEL_UIMAGE=y

View File

@@ -1,19 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm926t=y
# system
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
# filesystem
BR2_TARGET_ROOTFS_EXT2=y
# BR2_TARGET_ROOTFS_TAR is not set
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.38.8"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/arm-versatile/linux-2.6.38.config"
BR2_LINUX_KERNEL_ZIMAGE=y

View File

@@ -1,19 +0,0 @@
# Architecture
BR2_mipsel=y
BR2_mips_32r2=y
# filesystem
BR2_TARGET_ROOTFS_EXT2=y
# BR2_TARGET_ROOTFS_TAR is not set
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.38.8"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mipsel-malta/linux-2.6.38.config"
BR2_LINUX_KERNEL_VMLINUX=y
# Serial port config
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"

View File

@@ -1,19 +0,0 @@
# Architecture
BR2_powerpc=y
BR2_powerpc_440fp=y
# filesystem
BR2_TARGET_ROOTFS_EXT2=y
# BR2_TARGET_ROOTFS_TAR is not set
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.36"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/powerpc-g3beige/linux-2.6.36.config"
BR2_LINUX_KERNEL_VMLINUX=y
# Serial port config
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"

View File

@@ -1,21 +0,0 @@
# Architecture
BR2_sh=y
BR2_sh4=y
# filesystem
BR2_TARGET_ROOTFS_EXT2=y
# BR2_TARGET_ROOTFS_TAR is not set
# The kernel wants to use the -m4-nofpu option to make sure that it
# doesn't use floating point operations.
BR2_GCC_VERSION_4_5_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-multilib-list=m4,m4-nofpu"
# Linux kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.36"
BR2_LINUX_KERNEL_PATCH="board/qemu/sh4-r2d/kernel-patches/"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/sh4-r2d/linux-2.6.36.config"
BR2_LINUX_KERNEL_ZIMAGE=y

View File

@@ -1,17 +0,0 @@
# Architecture
BR2_i386=y
BR2_x86_pentiumpro=y
# system
BR2_TARGET_GENERIC_GETTY=y
# filesystem
BR2_TARGET_ROOTFS_EXT2=y
# BR2_TARGET_ROOTFS_TAR is not set
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.36"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86/linux-2.6.36.config"

View File

@@ -1,24 +0,0 @@
# Architecture
BR2_arm=y
BR2_arm926t=y
# system
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
# filesystem
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
# bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="sheevaplug"
BR2_TARGET_UBOOT_FORMAT_KWB=y
# BR2_TARGET_UBOOT_NETWORK is not set
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.39.4"
BR2_LINUX_KERNEL_DEFCONFIG="kirkwood"
BR2_LINUX_KERNEL_UIMAGE=y

View File

@@ -4,13 +4,15 @@ To build and use the buildroot stuff, do the following:
2) select the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) Use your shiny new root filesystem. Depending on which sort of
5) Use your shiny new root filesystem. Depending on which sortof
root filesystem you selected, you may want to loop mount it,
chroot into it, nfs mount it on your target device, burn it
to flash, or whatever is appropriate for your target system.
You do not need to be root to build or run buildroot. Have fun!
-Erik
Offline build:
==============
@@ -33,7 +35,7 @@ make command line, E.G.:
$ make O=/tmp/build
And all the output files (including .config) will be located under /tmp/build.
And all the output files will be located under /tmp/build.
More finegrained configuration:
===============================
@@ -51,7 +53,7 @@ $ make HOSTCC=gcc-4.3.orig HOSTCXX=gcc-4.3-mine
Depending on your configuration, there are some targets you can use to
use menuconfig of certain packages. This includes:
$ make HOSTCC=gcc-4.3 linux-menuconfig
$ make HOSTCC=gcc-4.3 linux26-menuconfig
$ make HOSTCC=gcc-4.3 uclibc-menuconfig
$ make HOSTCC=gcc-4.3 busybox-menuconfig

37
docs/README.diskimage Normal file
View File

@@ -0,0 +1,37 @@
# Sample for i386 to create a 6MB disk-image
# create an image file
dd if=/dev/zero bs=512 count=$((6*1024*1024/512)) of=img
# create a partition (optional)
echo -e "n\np\n1\n\nw\n" | \
~/src/busybox/busybox fdisk -C 16065 -H 255 -S 63 ./img
# as root, associate the image with a look-device:
# The offset of 512 comes from the the layout of the image. See
# ~/src/busybox/busybox fdisk -C 16065 -H 255 -S 63 -l ./img for the start
# block and multiply this with the block size (==512).
~/src/busybox/busybox losetup -o 512 /dev/loop/0 /path/to/the/img
# create some filesystem on it, for example ext2
mkfs.ext2 -m0 -Lslash /dev/loop/0
# mount it and copy your stuff to it
~/src/busybox/busybox mount -oloop,rw /dev/loop/0 /media/l0
~/src/busybox/busybox mkdir -p /media/l0/boot/grub
~/src/busybox/busybox cp -a project_build_i386/root/boot/grub/stage? /media/l0/boot/grub/
~/src/busybox/busybox cp -a project_build_i386/root/boot/bzImage /media/l0/boot/
~/src/busybox/busybox cat > /media/l0/boot/grub/menu.lst <<EOF
title=GNU/Linux
root (hd0,0)
kernel /boot/bzImage
EOF
# finally unmount the dist and disassociate the loopdev
~/src/busybox/busybox umount /media/l0
~/src/busybox/busybox losetup -d /dev/loop/0
# now install grub from the chroot
~/src/busybox/busybox losetup /dev/loop/0 /path/to/the/img
project_build_i386/root/usr/sbin/grub --device-map=/dev/null
device (hd0) img
geometry (hd0) 16065 255 63
root (hd0,0)
setup (hd0)
quit
# finally boot the thing
/opt/qemu-trunk_ggi-2.2.2/bin/qemu -snapshot -hda img -boot c

67
docs/TESTING.html Normal file
View File

@@ -0,0 +1,67 @@
<!--#include file="header.html" -->
<h2>Testing Buildroot for an Architecture</h2>
<p>
<h4>scripts/mkpkg script</h4>
If you want to test the build of a single package you can use the mkpkg script.
</p>
<p>
<li>$ scripts/mkpkg PACKAGE</li>
</p>
<p>
Will make the board, and save the result in a log file.
The log file resides in
<li>$ log/OK/PACKAGE.log.OK</li>
</p>
<p>
if the build succeeds and in
<li>$ log/OK/PACKAGE.log.FAIL</li>
</p>
<p>
if it cannot complete.
</p>
<p>
By creating an alias
<li>alias mk=scripts/mkpkg</li>
</p>
<p>
it is enough to type
<li>$ mk PACKAGE</li>
</p>
<p>
mkpkg will only print out the <h4>{PACKAGE}......OK</h4> or <h4>{PACKAGE}......FAIL</h4>
depending on success or failure making it easy to get an overview
of the status of this specific architecture.
</p>
<p>
It is recommended to build a simple board before running the test
to get some basic things done.
</p>
<p>
<h4>scripts/buildall.sh script</h4>
</p>
<p>
By running this script you will run scripts/mkpkg on
a lot of the packages available in Buildroot.
</p>
<p>
You need to run the script while in the TOP directory.
I.E: Where you typically run make.
</p>
<p>
There are a few lacking, for no very good reason,
but these can be easily added.
</p>
<p>
Note that some packages will not build properly
if you do not enable them using makeconfig.
</p>
<p>
Examples are:
<li>freetype</li>
<li>socat</li>
</p>
<!--#include file="footer.html" -->

255
docs/U-boot.html Normal file
View File

@@ -0,0 +1,255 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Buildroot - U-boot extensions in 2009.01-rc1</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="stylesheet.css" />
</head>
<body>
<div class="main">
<div class="titre">
<a name="top" id="top"></a>
<h1>U-boot extensions in 2009.01-rc1</h1>
</div>
<p><a href="http://buildroot.uclibc.org/">U-Boot</a>
usage and documentation by Ulf Samuelsson.
</p>
<p><small>$LastChangedDate: 2008-12-16 10:00:11 +0100 (tis, 16 dec 2008) $</small></p>
<ul>
<li><a href="#about">About U-Boot</a></li>
<li><a href="#at91rm9200dk">Board Support for AT91RM9200DK</a></li>
<li><a href="#at91rm9200ek">Board Support for AT91RM9200EK</a></li>
<li><a href="#at91sam9g20ek">Board Support for AT91SAM9G20EK</a></li>
<li><a href="#Minicom extensions">X-Modem/Raw extensions to minicom</a></li>
<li><a href="#cmd_factory">New Command: factory</a></li>
<li><a href="#cmd_os">New Command: os</a></li>
<li><a href="#cmd_fs">New Command: fs</a></li>
<li><a href="#cmd_setargs">New Command: setargs</a></li>
<li><a href="#cmd_led">New Command: led</a></li>
<li><a href="#cmd_mux">New Command: mux</a></li>
<li><a href="#cmd_ethinit">New Command: ethinit</a></li>
<li><a href="#environment">Special environment variables</a></li>
</ul>
<h2><a name="about" id="about"></a>About U-boot</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
U-Boot is an open source bootloader ported to a multitude of processors.
See (<a href="http://www.denx.de/wiki/U-Boot/WebHome">U-Boot Home</a>)
for documentation for vanilla U-Boot. This document only describes
changes compared to the vanilla u-boot.
</p>
<h2><a name="at91rm9200dk" id="at91rm9200dk"></a>Board support for at91rm9200dk</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
"at91rm9200dk" is updated to use a linux like API for gpio.
A new target "at91rm9200dk_df" is defined to support boot from dataflash.
</p>
<h2><a name="at91rm9200ek" id="at91rm9200ek"></a>Board support for at91rm9200ek</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
The "at91rm9200ek" BSP supports booting from a parallel flash.
The "at91rm9200df" BSP supports a generic target booting from dataflash.
</p>
<h2><a name="#at91sam9g20ek" id="#at91sam9g20ek"></a>Board support for at91sam9g20ek</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
The "at91sam9g20ek" target with dataflash(card) and NAND boot support.
</p>
<h2><a name="minicom_extensions" id="minicom_extensions"></a>Minicom extensions </h2>
<a href="#top"><small>[TOP]</small></a>
<p>
"sx-at91" is a reliable X-Modem application allowing download to the at91rm9200
based board
</p>
<p>
"raw-at91" is a download application which will download binary data using minicom.
Typically used to download an environment script.
</p>
<h2><a name="cmd_factory" id="cmd_factory"></a>New command: factory</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>factory</code></h3>
</p>
<p>
"factory" will set a selected set of environment variables
back to the compile time default. The following will give some
hints on capabilities, but is not yet complete.
</p>
<p>
It will generate a set of scripts which will facilitate downloading
the kernel and root file system using tftp and will also
add commands to store into and retrieve from flash
</p>
<h2><a name="cmd_os" id="cmd_os"></a>New command: os</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>os<code></h3>
</p>
<p>
"os" computes a new name for the linux kernel
</p>
<h2><a name="cmd_fs" id="cmd_fs"></a>New command: fs</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>fs<code></h3>
</p>
<p>
"fs" computes a new name for the file system
</p>
<h2><a name="cmd_setargs" id="cmd_setargs"></a>New command: setargs</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>setargs<code></h3>
</p>
<p>
"setargs" will create new bootcmd/bootargs combination from
kernel name, filesystem name, and rootfs type.
</p>
<h2><a name="cmd_led" id="cmd_led"></a>New command: led</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>led [green | yellow | red | all ] [ on | off ]<code></h3>
</p>
<p>
"led" will turn on or off the specified (coloured) led
</p>
<h2><a name="cmd_mux" id="cmd_mux"></a>New command: mux</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>mux [spi | mmc ]<code></h3>
</p>
<p>
"mux" will select how to use the flash card connector on the
at91rm9200dk or at91rm9200ek
</p>
<h2><a name="cmd_ethinit" id="cmd_ethinit"></a>New command: ethinit</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>ethinit<code></h3>
</p>
<p>
"ethinit" can be used to delay the boot of linux, until a valid network
connection has been established. This is useful if the machine is NFS mounting
the root file system and both this machine and the NFS server are powering up
simultaneously. The NFS server could take a lot longer to boot, and waiting
for this to boot may be neccessary for proper operation.
</p>
<h2><a name="environment" id="environment"></a>Special environment variables</h2>
<a href="#top"><small>[TOP]</small></a>
<p>
<h3><code>rd<code></h3>
</p>
<p>
rd contains the name of the current root file system
It is autmatically generated from <bold>ver</bold> and <bold>rd-1</bold>, <bold>rd-2</bold> etc.
The "fs-date" is added at the end.
</p>
<p>
<h3><code>ver<code></h3>
</p>
<p>
You can handle a number of different root fs by defining <code>ver</code>.
When running <code>fs</code> rd will be assigned from one of:
<ul><code>rd-1, rd2, rd-3 ...<code></ul>
</p>
<p>
By defining <code>ver</code> to a number you will
select the appropriate disk name
</p>
<p>
<h3><code>fs-date<code></h3>
</p>
<p>
"date" part of the root file system name
</p>
<p>
<h3><code>linux<code></h3>
</p>
<p>
linux contains the name of the current kernel.
</p>
<p>
It is generated from several environment variables when <code>os</code> is run
</p>
<p>
A typical name would be "at91sam9263ek-linux-2.6.28-20090105.gz"
</p>
<p>
<h3><code>hostname<code></h3>
</p>
<p>
"name" part of the kernel file name
</p>
<p>
<h3><code>kernel-version<code></h3>
</p>
<p>
"version" part of the kernel file name
</p>
<p>
<h3><code>kernel-date<code></h3>
</p>
<p>
"date" part of the kernel file name
</p>
<p>
<h3><code>fstype [ ram | flash ]<code></h3>
<p>
You can have several file system types.
bootargs is created depending on fstype..
</p>
<a href="#top"><small>[TOP]</small></a>
</div>
<!--
<a href="http://validator.w3.org/check?uri=referer"><img
border="0" height="31" width="88"
src="images/valid-html401.png"
alt="Valid HTML"></img></a>
-->
</body>
</html>

View File

@@ -3,62 +3,24 @@
<!-- Begin Introduction section -->
<h3>Buildroot: making Embedded Linux easy</h3>
<h3>buildroot: making Embedded Linux easy</h3>
<div align="center">
<a href="images/menuconfig.png">
<img src="images/menuconfig_small.png" width="340" height="220"
alt="Buildroot menuconfig" border="0">
</a>
</div>
<p>Buildroot is a set of Makefiles and patches that makes it easy to
generate a complete embedded Linux system. Buildroot can generate any
or all of a cross-compilation toolchain, a root filesystem, a kernel
image and a bootloader image. Buildroot is useful mainly for people
working with small or embedded systems, using various CPU
architectures (x86, ARM, MIPS, PowerPC, etc.) : it automates the
building process of your embedded system and eases the
cross-compilation process.</p>
Buildroot is a set of Makefiles and patches that makes it easy generate a
cross-compilation toolchain and root filesystem for your target Linux
system using the <a href= "http://www.uclibc.org/">uClibc C library</a>.
Buildroot is useful mainly for people working with small or embedded
systems. Embedded systems often use processors that are not the regular
x86 processors everyone is used to using on their PC. It can be PowerPC
processors, MIPS processors, ARM processors, etc. And to be extra safe,
you do not need to be root to build or run buildroot.
<p>The major Buildroot features are:</p>
<p>
<ul>
<li>Can <b>handle everything</b> in your embedded system development
project: cross-compiling toolchain, root filesystem generation,
kernel image compilation and bootloader compilation. Buildroot is
also sufficiently flexible that it can also be used for only one or
several of these steps.</li>
<li>Is <b>very easy</b> to set up, thanks to its menuconfig, gconfig
and xconfig configuration interfaces, familiar to all embedded Linux
developers. Building a basic embedded Linux system with Buildroot
typically takes 15-30 minutes.</li>
<li>Supports <b>several hundreds of packages</b> for userspace
applications and libraries: X.org stack, Gtk2, Qt, DirectFB, SDL,
GStreamer and a large number of network-related and system-related
utilities and libraries are supported.</li>
<li>Supports <b>multiple filesystem types</b> for the root
filesystem image: JFFS2, UBIFS, tarballs, romfs, cramfs, squashfs
and more.</li>
<li>Can generate an uClibc cross-compilation toolchain, or re-use
your existing glibc, eglibc or uClibc cross-compilation
toolchain</li>
<li>Has a <b>simple structure</b> that makes it easy to understand
and extend. It relies only on the well-known Makefile language.</li>
</ul>
<p>Buildroot is maintained by <a href=
"mailto:jacmet@uclibc.org">Peter Korsgaard</a>, and licensed under the
<a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU
GENERAL PUBLIC LICENSE V2 (Or later)</a>. Stable releases are
delivered every three months.</p>
buildroot is maintained by <a href=
"mailto:jacmet@uclibc.org">Peter Korsgaard</a>, and
licensed under the
<a href="http://www.gnu.org/copyleft/lgpl.html">GNU LIBRARY GENERAL PUBLIC LICENSE</a>.
<!--#include file="footer.html" -->

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
The code and graphics on this website (and it's mirror sites, if any) are
Copyright (c) 1999-2005 by Erik Andersen, 2006-2011 The Buildroot
Copyright (c) 1999-2005 by Erik Andersen, 2006-2009 The Buildroot
developers. All rights reserved.
Documents on this Web site including their graphical elements, design, and
@@ -25,6 +25,6 @@ HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
You have been warned.
You can contact the webmaster at <buildroot@uclibc.org> if you have some sort
You can contact the webmaster at <andersen@codepoet.org> if you have some sort
of problem with this.

View File

@@ -1,46 +1,64 @@
<!--#include file="header.html" -->
<h3>Developer Access</h3>
<h3>Subversion Read/Write Access</h3>
Because we use Git for version control, you don't need developer (ssh)
access on uclibc.org to contribute to Buildroot, but you can request
it if needed.
If you want to be able to commit things to Subversion, first contribute some
stuff to show you are serious. Then, very nicely ask <a
href="mailto:buildroot@uclibc.org">The Buildroot Developers</a> to set you up
with commit access to the Subversion repository. To access Subversion, you
will want to add the following to set up your environment:
<p>
To obtain developer access, you will need to demonstrate you are
serious by submitting a few good patches first. Then, you will need
to select a username to use when logging in, you will need to send me
the username you have selected, you must send me your preferred
contact email address, and finally, you must send me an ssh version 2
DSA key with 1024 bits (the default) or more. If you do not currently
have an ssh version 2 DSA key, you can generate a key using the
command<pre>ssh-keygen -t dsa</pre> This will create the
files <pre>/home/&lt;USERNAME&gt;/ssh/id_dsa
/home/&lt;USERNAME&gt;/.ssh/id_dsa.pub</pre> It is recommended that
you generate a key with a "passphrase" for security reasons.
To obtain commit access, you will need to demonstrate you are serious by
submitting a few good patches first. Then, you will need to select a username
to use when committing changes to SVN, you will need to send me the username
you have selected, you must send me your preferred contact email address, and
finally, you must send me an ssh version 2 DSA key with 1024 bits (the default)
or more. If you do not currently have an ssh version 2 DSA key, you can
generate a key using the command<pre>ssh-keygen -t dsa</pre> This will
create the files <pre>/home/&lt;USERNAME&gt;/ssh/id_dsa
/home/&lt;USERNAME&gt;/.ssh/id_dsa.pub</pre>
It is recommended that you generate a key with a "passphrase" for security reasons.
<p>
Make the file known to the system by running
<pre>ssh-add ~/.ssh/id_dsa</pre>
You must then send the content of 'id_dsa.pub' to me so I can setup your account.
You must then send the content of 'id_dsa.pub' to me so I can setup your account.
The content of 'id_dsa' should of course be kept secret.
<p>
Once you have an account, you can use it to store Git
repositories. Simply put them in subdirectories of your ~/git, and
touch ~/git/<repo>/git-daemon-export-ok, after which the hourly
cronjob will pick them up and show them in cgit. They are also
available though git-daemon:
Once you are setup with an account, you will need to use your account to
checkout a copy of buildroot from Subversion:
<pre>git clone git://git.buildroot.net/~&lt;USERNAME&gt/git/&lt;REPO&gt;</pre>
<pre>
svn list svn+ssh://username@svn.uclibc.org/svn/trunk/buildroot</pre>
<br>
It goes without saying you must change <em>username</em> to your own
username...
<p>
You can then enter the newly checked out buildroot directory, make changes, check
your changes, diff your changes, revert your changes, and and commit your
changes usine commands such as:
<pre>
svn diff
svn status
svn revert
svn commit</pre>
<p>
For additional detail on how to use Subversion, please visit the
<a href="http://subversion.tigris.org/">the Subversion website</a>.
You might also want to read online or buy a copy of <a
href="http://svnbook.red-bean.com/">the Subversion Book</a>...
For additional detail on how to use Git, please visit the
<a href="http://git-scm.org/">the Git website</a>.
<!--#include file="footer.html" -->

View File

@@ -1,32 +1,29 @@
<!--#include file="header.html" -->
<h3>Documentation</h3>
<p>Our document "Buildroot usage and documentation" is where you want
to start reading if you wish to understand how Buildroot work, or wish
to change/extend/fix things. If you find any errors (factual,
grammatical, whatever) please report them. Choose between:</p>
<ul>
<li><a href="/downloads/buildroot.html">Latest stable release</a></li>
<li><a href="buildroot.html">GIT head revision</a></li>
</ul>
<p>If you find that you need help with Buildroot, you can ask for
help:</p>
Current documentation for buildroot includes:
<ul>
<li>On the <a href="lists.html">buildroot mailing list</a>
at <code>buildroot at uclibc.org</code></li>
<li>
<a href= "buildroot.html">Buildroot - Usage and
documentation</a> is where you want to start reading if you wish to
understand how buildroot work, or wish to change/extend/fix things. If you
find any errors (factual, grammatical, whatever) please report them.
</li>
<li>On the <a href="irc://freenode.net/#uclibc">Buildroot IRC
channel</a>, <code>#uclibc</code> on Freenode</li>
<li>
<a href="README">README</a>. This is the README file included in the
buildroot source release.
</li>
<li>On our <a href="https://bugs.uclibc.org">bugtracker</a>.</li>
<li>Through the various companies offering commercial Buildroot
support.</li>
<li>
If you find that you need help with buildroot, you can ask for help on the
<a href= "lists/uClibc/">buildroot mailing list</a> at buildroot at mail.uclibc.org.
In addition the BusyBox, uClibc, and buildroot developers are also known to
hang out on the uClibc IRC channel: #uclibc on irc.freenode.net.
</li>
</ul>

View File

@@ -6,40 +6,30 @@
<p>
The latest stable release is <b>2011.05</b>, which can be downloaded
here:<p>
<a href="/downloads/buildroot-2011.05.tar.gz">buildroot-2011.05.tar.gz</a>
or
<a href="/downloads/buildroot-2011.05.tar.bz2">buildroot-2011.05.tar.bz2</a>.
<p>
The latest release candidate is <b>2011.08-rc2</b>, which can be
downloaded here:<p>
<a href="/downloads/buildroot-2011.08-rc2.tar.gz">buildroot-2011.08-rc2.tar.gz</a>
or
<a href="/downloads/buildroot-2011.08-rc2.tar.bz2">buildroot-2011.08-rc2.tar.bz2</a>.
<p>
This and earlier releases can always be downloaded from
<a href="/downloads/">http://buildroot.net/downloads/</a>.
The latest release can always be dowloaded from
<a href="/downloads/">http://buildroot.uclibc.org/downloads/</a>.
<p>
You can also obtain <a href="/downloads/snapshots/">Daily
Snapshots</a> of the latest Buildroot source tree if you want to to
follow development, but cannot or do not wish to use Git.
follow development, but cannot or do not wish to use Subversion (svn).
<ul>
<li> Click here to <a href="downloads/snapshots/">Daily Snapshots</a>.
</li>
<li> Click here to <a href="http://git.buildroot.net/buildroot">browse the source tree</a>.
<li> Click here to <a href="http://sources.busybox.net/index.py/trunk/buildroot/">browse the source tree</a>.
</li>
<li>Anonymous <a href="git.html">Git access</a> is available.
<li>Anonymous <a href="subversion.html">Subversion access</a> is available.
</li>
<li>For those that are actively contributing obtaining
<a href="developer.html">Subversion read/write access</a> is also possible.
</li>
</ul>
<!--#include file="footer.html" -->

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -9,8 +9,7 @@
<p>
<font face="arial, helvetica, sans-serif" size="-1">
<a HREF="/copyright.txt">Copyright &copy; 1999-2005 Erik Andersen,
2006-2011 The Buildroot developers</a>
<a HREF="/copyright.txt">Copyright &copy; 1999-2009 Erik Andersen</a>
<br>
Mail all comments, insults, suggestions and bribes to
<br>

View File

@@ -1,44 +0,0 @@
<!--#include file="header.html" -->
<h3>Git Access</h3>
The buildroot repository can be browsed online through cgit at
<a href="http://git.buildroot.net/buildroot">http://git.buildroot.net/buildroot</a>.
To grab a copy of the repository use
<pre>
git clone git://git.buildroot.net/buildroot</pre>
Or if you're behind a firewall blocking git:
<pre>
git clone http://git.buildroot.net/git/buildroot.git</pre>
<p>
Please use the native git protocol if at all possible, as it's a lot
more efficient than HTTP.
<p>
If you are not already familiar with using Git, we recommend you visit <a
href="http://git-scm.org">the Git website</a>.
<p>
Once you've checked out a copy of the source tree, you can update your source
tree at any time so it is in sync with the latest and greatest by entering your
buildroot directory and running the command:
<pre>
git pull
</pre>
Because you've only been granted anonymous access to the tree, you won't be
able to commit any changes. Changes can be submitted for inclusion by posting
them to the buildroot mailing list or to the <a
href="https://bugs.uclibc.org/">Bug and Patch Tracking System</a>.
<!--#include file="footer.html" -->

View File

@@ -15,21 +15,6 @@
td.c2 {font-family: arial, helvetica, sans-serif; font-size: 80%}
td.c1 {font-family: lucida, helvetica; font-size: 248%}
</style>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-21761074-1']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<body>
@@ -42,16 +27,28 @@
<tr>
<td valign="TOP">
<a href="/"><IMG SRC="images/logo_small.png" alt="Buildroot"
border="0" width="200" height="100"></a><BR>
<td>
<div class="c3">
<table border="0" cellspacing="1" cellpadding="2">
<tr>
<td class="c1">BUILDROOT</td>
</tr>
</table>
</div>
<a href="/"><IMG SRC="images/busybox1.png" alt="Buildroot" border="0"></a><BR>
</td>
</tr>
<tr>
<td valign="TOP">
<br><a href="/about.html">About</a>
<br><a href="/news.html">Latest News</a>
<br><a href="/download.html">Download</a>
<br><a href="http://git.buildroot.net/buildroot">Browse Source</a>
<br><a href="/git.html">Accessing Source</a>
<br><a href="https://bugs.uclibc.org/">Bug Tracking</a>
<br><a href="http://sources.busybox.net/index.py/trunk/buildroot/">Browse Source</a>
<br><a href="/subversion.html">Accessing Source</a>
<br><a href="http://bugs.uclibc.org/">Bug Tracking</a>
<br><a href="/docs.html">Documentation</a>
<br><a href="/lists.html">Mailing Lists</a>

BIN
docs/images/busybox1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

View File

@@ -1 +1 @@
<!--#include file="about.html" -->
<!--#include file="news.html" -->

View File

@@ -8,9 +8,7 @@ development. You can subscribe by visiting
<a href="http://lists.busybox.net/mailman/listinfo/buildroot">this page</a>.
Only subscribers to the Buildroot mailing list are allowed to post
to this list.
<p>
The list is also available through <a
href="http://gmane.org">Gmane</a> at <a href="http://dir.gmane.org/gmane.comp.lib.uclibc.buildroot">gmane.comp.lib.uclibc.buildroot</a>.
<p>
<h3>Search the List Archives</h3>
@@ -22,8 +20,8 @@ list with frequently asked questions...
<center>
<form method="GET" action="http://www.google.com/custom">
<input type="hidden" name="domains" value="lists.busybox.net">
<input type="hidden" name="sitesearch" value="lists.busybox.net">
<input type="hidden" name="domains" value="buildroot.uclibc.org">
<input type="hidden" name="sitesearch" value="buildroot.uclibc.org">
<input type="text" name="q" size="31" maxlength="255" value="">
<br>
<input type="submit" name="sa" value="search the mailing list archives">

View File

@@ -1,503 +1,7 @@
<!--#include file="header.html" -->
<h3>News</h3>
<p>
<ul>
<li><b>29 August 2011 -- 2011.08-rc2 released</b>
<p>RC2 is out with more bugfixes. See the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.08_rc2">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.08-rc2.tar.bz2">2011.08-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>4 August 2011 -- 2011.08-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.08_rc1">CHANGES</a>
file for details, and read the
<a href="http://lists.busybox.net/pipermail/buildroot/2011-August/044855.html">announcement</a>.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.08-rc1.tar.bz2">2011.08-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>27 May 2011 -- 2011.05 released</b>
<p>The stable 2011.05 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.05">CHANGES</a>
file for more details, and go to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.05.tar.bz2">2011.05 release</a>.</p>
<li><b>24 May 2011 -- 2011.05-rc2 released</b>
<p>RC2 is out with more bugfixes. See the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.05_rc2">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.05-rc2.tar.bz2">2011.05-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>18 May 2011 -- 2011.05-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.05_rc1">CHANGES</a>
file for details, and read the
<a href="http://lists.busybox.net/pipermail/buildroot/2011-May/043317.html">announcement</a>.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.05-rc1.tar.bz2">2011.05-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>28 February 2011 -- 2011.02 released</b>
<p>The stable 2011.02 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.02">CHANGES</a>
file for more details, read the
<a href="http://lists.busybox.net/pipermail/buildroot/2011-February/041662.html">announcement</a>
and go to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.02.tar.bz2">2011.02 release</a>.</p>
<li><b>24 February 2011 -- 2011.02-rc2 released</b>
<p>RC2 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.02_rc2">CHANGES</a>
file for details.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.02-rc2.tar.bz2">2011.02-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>14 February 2011 -- 2011.02-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2011.02_rc1">CHANGES</a>
file for details, and read the
<a href="http://lists.busybox.net/pipermail/buildroot/2011-February/041365.html">announcement</a>.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2011.02-rc1.tar.bz2">2011.02-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>30 November 2010 -- 2010.11 released</b>
<p>The stable 2010.11 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.11">CHANGES</a>
file for more details, read the
<a href="http://lists.busybox.net/pipermail/buildroot/2010-November/039135.html">announcement</a>
and go to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.11.tar.bz2">2010.11 release</a>.</p>
<li><b>25 November 2010 -- 2010.11-rc2 released</b>
<p>RC2 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.11_rc2">CHANGES</a>
file for details.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.11-rc2.tar.bz2">2010.11-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>8 November 2010 -- 2010.11-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.11_rc1">CHANGES</a>
file for details, and read the
<a href="http://lists.busybox.net/pipermail/buildroot/2010-November/038645.html">announcement</a>.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.11-rc1.tar.bz2">2010.11-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>28 September 2010 - Buildroot Developer Day</b>
<p>A <i>Buildroot Developer Day</i> will take place on
Friday, October 29th in Cambridge, UK - Just the day after the
<a href="http://www.embeddedlinuxconference.com/elc_europe10/">Embedded
Linux Conference Europe</a>. This <i>Developer Day</i> aims
at allowing Buildroot developers to meet and exchange ideas on the
project and its future. See the
<a href="http://lists.busybox.net/pipermail/buildroot/2010-September/037930.html">announcement</a>
for more info.</p>
<p>Thanks to Thomas Petazzoni for taking care of the practical
arrangements.</p>
<li><b>31 August 2010 -- 2010.08 released</b>
<p>The stable 2010.08 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.08">CHANGES</a>
file for more details, read the
<a href="http://lists.busybox.net/pipermail/buildroot/2010-August/037078.html">announcement</a>
and go to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.08.tar.bz2">2010.08 release</a>.</p>
<li><b>30 August 2010 -- 2010.08-rc2 released</b>
<p>RC2 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.08_rc2">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.08-rc2.tar.bz2">2010.08-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
This is very much expected to be the final release
candidate, so give it a good test and expect a final 2010.08
release before September unless critical issues are found.</p>
<li><b>30 July 2010 -- 2010.08-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.08_rc1">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.08-rc1.tar.bz2">2010.08-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>30 May 2010 -- 2010.05 released</b>
<p>The stable 2010.05 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.05">CHANGES</a>
file for more details, read the
<a href="http://lists.busybox.net/pipermail/buildroot/2010-May/034878.html">announcement</a>
and go to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.05.tar.bz2">2010.05 release</a>.</p>
<li><b>27 May 2010 -- 2010.05-rc3 released</b>
<p>RC3 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.05_rc3">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.05-rc3.tar.bz2">2010.05-rc3
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>11 May 2010 -- 2010.05-rc2 released</b>
<p>Another week, another release candidate with a bunch of
cleanups and build fixes.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.05-rc2.tar.bz2">2010.05-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>3 May 2010 -- 2010.05-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.05_rc1">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.05-rc1.tar.bz2">2010.05-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>2 May 2010 - FOSDEM slides online</b>
<p>The slides from the <a
href="http://fosdem.org/2010/schedule/events/emb_cross_build">Cross
Build Systems: Present & Future</a> session at <a
href="http://fosdem.org/2010">FOSDEM</a> are now <a
href="http://send-patches.org/news/20100211-1-FOSDEM-Crossdev-Workshop.pdf">online</a>.
<li><b>26 February 2010 -- 2010.02 released</b>
<p>The stable 2010.02 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.02">CHANGES</a>
file for more details, and go to the <a href="/downloads/">downloads page</a>
to pick up the <a href="/downloads/buildroot-2010.02.tar.bz2">2010.02
release</a>.</p>
<li><b>23 February 2010 -- 2010.02-rc2 released</b>
<p>RC2 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.02_rc2">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.02-rc2.tar.bz2">2010.02-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>9 February 2010 -- 2010.02-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2010.02_rc1">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2010.02-rc1.tar.bz2">2010.02-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>1 December 2009 -- 2009.11 released</b>
<p>The stable 2009.11 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://lists.busybox.net/pipermail/buildroot/2009-December/030672.html">announcement</a>
or <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.11">CHANGES</a>
for more details, and go to the <a href="/downloads/">downloads page</a>
to pick up the <a href="/downloads/buildroot-2009.11.tar.bz2">2009.11
release</a>.</p>
<li><b>29 November 2009 -- 2009.11-rc2 released</b>
<p>RC2 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.11_rc2">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.11-rc2.tar.bz2">2009.11-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>23 November 2009 -- 2009.11-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.11_rc1">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.11-rc1.tar.bz2">2009.11-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>7 September 2009 -- First Buildroot Developer Day</b>
<p>The first <i>Buildroot Developer Day</i> will take place on
Saturday, October 17th in Grenoble, France, just the day after
Embedded Linux Conference Europe. This <i>Developer Day</i> aims
at allowing Buildroot developers to meet and exchange ideas on the
project and its future.</p>
<p>As the number of places is limited, interested candidates are
invited to send an e-mail to Peter Korsgaard (<code>jacmet at
uclibc dot org</code>) and Thomas Petazzoni (<code>thomas dot
petazzoni at free-electrons dot com</code>).</p>
<p>This <i>Developer Day</i> will take place thanks to the
sponsoring of <a href="http://www.calao-systems.com">Calao
Systems</a> and <a href="http://www.free-electrons.com">Free
Electrons</a>.</p>
<li><b>31 August 2009 -- 2009.08 released</b>
<p>The stable 2009.08 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://lists.busybox.net/pipermail/buildroot/2009-August/029018.html">announcement</a>
or <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.08">CHANGES</a>
for more details, and go to the <a href="/downloads/">downloads page</a>
to pick up the <a href="/downloads/buildroot-2009.08.tar.bz2">2009.08
release</a>.</p>
<li><b>26 August 2009 -- 2009.08-rc3 released</b>
<p>A number of bugfixes have been added to the tree since RC2
(especially thanks to Thomas Petazzoni) - See the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.08_rc3">CHANGES</a>
file for details. This is very much expected to be the final release
candidate, so give it a good test and expect a final 2009.08
release next weekend unless critical issues are found.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.08-rc3.tar.bz2">2009.08-rc3
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>6 August 2009 -- 2009.08-rc2 released</b>
<p>RC2 is out with more cleanups and bugfixes, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.08_rc2">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.08-rc2.tar.bz2">2009.08-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>2 August 2009 -- 2009.08-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.08_rc1">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.08-rc1.tar.bz2">2009.08-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>1 June 2009 -- 2009.05 released</b>
<p>The stable 2009.05 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://lists.busybox.net/pipermail/buildroot/2009-June/027640.html">announcement</a>
or <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.05">CHANGES</a>
for more details, and go to the <a href="/downloads/">downloads page</a>
to pick up the <a href="/downloads/buildroot-2009.05.tar.bz2">2009.05
release</a>.</p>
<li><b>27 May 2009 -- 2009.05-rc3 released</b>
<p>We had a number of fixes post-RC2, so RC3 is out (see <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.05_rc3">CHANGES</a>
for details). Now is the moment to test and verify that everything
is working for your favorite config - Expect a final 2009.05 very soon.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.05-rc3.tar.bz2">2009.05-rc3
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>19 May 2009 -- 2009.05-rc2 released</b>
<p>RC2 is out with more cleanups and bug fixes (see <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.05_rc2">CHANGES</a>).
Unless big issues are found, expect this to be the last release
candidate before the release - So give it a good test.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.05-rc2.tar.bz2">2009.05-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>14 May 2009 -- Buildroot.org</b>
<p>Earl Levine has been so kind to donate the <b>buildroot.org</b>
domain to us, so the website can now also be reached at <a
href="http://www.buildroot.org">www.buildroot.org</a> (and git at
<a href="http://git.buildroot.org/buildroot">git.buildroot.org</a>).
Thanks a lot Earl!</p>
<li><b>5 May 2009 -- 2009.05-rc1 released</b>
<p>We have a new release candidate! Lots of changes all over the
tree, see the <a
href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2009.05_rc1">CHANGES</a>
file for details.
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.05-rc1.tar.bz2">2009.05-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>3 May 2009 -- Moved to git</b>
<p>We've moved the source code from <a
href="http://subversion.tigris.org">Subversion</a> to <a
href="http://git-scm.org">Git</a>. You can browse the repo online
<a href="http://git.buildroot.net/buildroot">here</a>, and clone
the repo using:
<pre>git clone git://git.buildroot.net/buildroot</pre>
See the <a href="/git.html">Git Access</a> page for more details.
</p>
<li><b>27 March 2009 -- new Logo</b>
<p>We have a <a href="images/logo.png">logo</a>! We have so far
been using the <a href="http://busybox.net">Busybox</a> logo on
the website, as the website was a copy of the <a
href="http://busybox.net">Busybox</a> one - But not anymore, we
now have a shiny new logo of our own.</p>
<li><b>12 February 2009 -- 2009.02 released</b>
<p>The stable 2009.02 release is out - Thanks to everyone
contributing and testing the release candidates. See the
<a href="http://lists.busybox.net/pipermail/buildroot/2009-February/025974.html">announcement</a>
for more details, and go to the <a href="/downloads/">downloads page</a>
to pick up the <a href="/downloads/buildroot-2009.02.tar.bz2">2009.02
release</a>.</p>
<li><b>9 February 2009 -- 2009.02-rc4 released</b>
<p>We had more than 50 changes since RC3, several of them
toolchain related, so decided to make a RC4 as well. This is
very much expected to be the final release candidate, so give it
a good test and expect a final 2009.02 release this week unless
critical issues are found.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.02-rc4.tar.bz2">2009.02-rc4
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>31 January 2009 -- 2009.02-rc3 released</b>
<p>RC3 is out with more cleanups and bug fixes. Unless big issues
are found, expect this to be the last release candidate before the
release - So give it a good test.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.02-rc3.tar.bz2">2009.02-rc3
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>23 January 2009 -- 2009.02-rc2 released</b>
<p>Another week, another release candidate with a bunch of
cleanups and build fixes.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2009.02-rc2.tar.bz2">2009.02-rc2
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>.</p>
<li><b>16 January 2009 -- Release candidate and new maintainer</b>
<p>It has been a long time coming, but we finally have a new
@@ -507,7 +11,7 @@
<a href="/downloads/buildroot-2009.02-rc1.tar.bz2">2009.02-rc1
release candidate</a>, and report any problems found to the <a
href="lists.html">mailing list</a> or <a
href="https://bugs.uclibc.org">bug tracker</a>. The plan is to
href="http://bugs.uclibc.org">bug tracker</a>. The plan is to
release 2009.02 in time for <a
href="http://www.fosdem.org/2009/">FOSDEM</a>.</p>
@@ -535,7 +39,7 @@
If you find a bug in buildroot, or wish to submit a patch to fix a problem
or add a shiny new feature, please use the <a
href="https://bugs.uclibc.org/">Bug and Patch Tracking System</a> to post
href="http://bugs.uclibc.org/">Bug and Patch Tracking System</a> to post
the details, to make certain your work is not lost.

43
docs/patches.html Normal file
View File

@@ -0,0 +1,43 @@
<!--#include file="header.html" -->
<h2>Buildroot patch structure</h2>
<p>
<h4>Keeping track of applied patches</h4>
Whenever a patch is applied to a source code directory in buildroot, a text file named .applied_patches_list is created inside that source directory.
This file contains a list of all the patch filenames that were applied to that source code, just for reference.
</p>
<p>
<h4>Linux kernel patches</h4>
The Linux kernel has several patch levels available for it in the buildroot patch system.
Buildroot first downloads the chosen kernel source from the mirror site, followed by any selected minor patch.
Buildroot then extracts the kernel source from the compressed file and applies the minor patch, if one was chosen.
After extracting the source and applying the official minor patch, buildroot looks for more patches in the following locations and in the order shown:
<ol>
<li> a custom, user downloaded kernel patch can be located in $(DL_DIR) and the filename is stored as $(LINUX26_BSP_PATCH) </li>
<li> Atmel keeps their official kernel patches in target/device/Atmel/Linux/kernel-patches with subdirectories for each kernel release.
They also keep any board-specific patches in $(BR2_BOARD_PATH) </li>
<li> globally available patches are kept in toolchain/kernel-headers </li>
<li> IPMI (<a href="http://www.intel.com/design/servers/ipmi/ipmi.htm">Intelligent Platform Management Interface</a>)
kernel patches are kept in toolchain/kernel-headers/ipmi </li>
<li> LZMA kernel compression support patches are kept in toolchain/kernel-headers/lzma </li>
<li> <a href="http://www.realtimelinuxfoundation.org/downloads/downloads.html">Real-time Linux kernel</a> patches are kept in $(LINUX_RT_SOURCE) </li>
<li> <a href="http://www.openswan.org/">Openswan</a> kernel patches are kept in package/openswan </li>
</ol>
</p>
<p>
<h4>Package source patches</h4>
Any patches for the Linux programs supported by buildroot are kept in that program's corresponding package/ directory.
</p>
<p>
<h4>How the patching is done</h4>
Patches are applied in buildroot by running a shell script called toolchain/patch-kernel.sh with three arguments. The first argument is the target directory
where the source code to be patched is saved. The second argument is the directory where the patch is saved. The third argument is the filename pattern
to match when looking in the patch directory. The third argument can include wildcards to select multiple patch files.
</p>
<!--#include file="footer.html" -->

View File

@@ -1,2 +0,0 @@
User-agent: *
Disallow: /cgi-bin/

View File

@@ -1,13 +1,13 @@
body {
margin: 0px;
margin: 0px 0px 0px 0px;
color: white;
background-color: #93c6f9;
font: 12pt/18pt georgia;
}
div.main {
margin: 10px;
padding: 10px;
margin: 10px 10px 10px 10px;
padding: 10px 10px 10px 10px;
color: black;
background-color: white;
}
@@ -16,49 +16,39 @@ div.titre {
text-align: center;
background-color: #336699;
color: white;
padding: 10px;
padding: 10px 10px 10px 10px;
}
h1 {
text-align: center;
font: 26pt georgia;
letter-spacing: 3px;
font: 26pt georgia;
letter-spacing: 3px;
}
h2 {
padding: 5px;
padding: 5px 5px 5px 5px;
background-color: #c2e0ff;
color: #336699;
}
a:link, a:visited {
font-weight: bold;
text-decoration: none;
a:link, a:visited {
font-weight: bold;
text-decoration: none;
color: #336699;
}
a:hover, a:active {
text-decoration: underline;
a:hover, a:active {
text-decoration: underline;
color: #9685BA;
}
h3 {
font: italic normal 14pt georgia;
letter-spacing: 1px;
margin-bottom: 0px;
h3 {
font: italic normal 14pt georgia;
letter-spacing: 1px;
margin-bottom: 0px;
margin-left: 10px;
margin-right: 10px;
color: #336699;
border-bottom: 2px solid #336699;
}
h4 {
font: italic normal 14pt georgia;
letter-spacing: 1px;
margin-bottom: 0px;
margin-left: 10px;
margin-right: 10px;
border-bottom: 1px dashed black;
}
p {
@@ -68,8 +58,8 @@ p {
}
pre {
border-left: 3px #aaa solid;
margin-left: 1em;
padding: 0 1em;
color: #888;
}
border-left: 3px #aaa solid;
margin-left: 1em;
padding: 0 1em;
color: #888;
}

40
docs/subversion.html Normal file
View File

@@ -0,0 +1,40 @@
<!--#include file="header.html" -->
<h3>Anonymous Subversion Access</h3>
We allow anonymous (read-only) Subversion (svn) access to everyone. To
grab a copy of the latest version of buildroot using anonymous svn access:
<pre>
svn co svn://uclibc.org/trunk/buildroot</pre>
<p>
If you are not already familiar with using Subversion, I recommend you visit <a
href="http://subversion.tigris.org/">the Subversion website</a>. You might
also want to read online or buy a copy of <a
href="http://svnbook.red-bean.com/">the Subversion Book</a>. If you are
already comfortable with using CVS, you may want to skip ahead to the <a
href="http://svnbook.red-bean.com/en/1.1/apa.html">Subversion for CVS Users</a>
part of the Subversion Book.
<p>
Once you've checked out a copy of the source tree, you can update your source
tree at any time so it is in sync with the latest and greatest by entering your
buildroot directory and running the command:
<pre>
svn update</pre>
Because you've only been granted anonymous access to the tree, you won't be
able to commit any changes. Changes can be submitted for inclusion by posting
them to the buildroot mailing list or to the <a
href="http://bugs.uclibc.org/">Bug and Patch Tracking System</a>.
For those that are actively contributing <a
href="developer.html">Subversion commit access</a> can be made available.
<!--#include file="footer.html" -->

View File

@@ -1,15 +0,0 @@
menu "Filesystem images"
source "fs/cramfs/Config.in"
source "fs/cloop/Config.in"
source "fs/ext2/Config.in"
source "fs/jffs2/Config.in"
source "fs/ubifs/Config.in"
source "fs/squashfs/Config.in"
source "fs/tar/Config.in"
source "fs/cpio/Config.in"
source "fs/iso9660/Config.in"
source "fs/initramfs/Config.in"
source "fs/romfs/Config.in"
endmenu

View File

@@ -1,13 +0,0 @@
#############################################################
#
# Build the compressed loop root filesystem image
#
#############################################################
ROOTFS_CLOOP_DEPENDENCIES = host-cloop host-cdrkit
define ROOTFS_CLOOP_CMD
$(HOST_DIR)/usr/bin/genisoimage -r $(TARGET_DIR) | $(HOST_DIR)/usr/bin/create_compressed_fs - 65536 > $$@
endef
$(eval $(call ROOTFS_TARGET,cloop))

View File

@@ -1,84 +0,0 @@
#
# Macro that builds the needed Makefile target to create a root
# filesystem image.
#
# The following variable must be defined before calling this macro
#
# ROOTFS_$(FSTYPE)_CMD, the command that generates the root
# filesystem image. A single command is allowed. The filename of the
# filesystem image that it must generate is $$@.
#
# The following variables can optionaly be defined
#
# ROOTFS_$(FSTYPE)_DEPENDENCIES, the list of dependencies needed to
# build the root filesystem (usually host tools)
#
# ROOTFS_$(FSTYPE)_PRE_GEN_HOOKS, a list of hooks to call before
# generating the filesystem image
#
# ROOTFS_$(FSTYPE)_POST_GEN_HOOKS, a list of hooks to call after
# generating the filesystem image
#
# ROOTFS_$(FSTYPE)_POST_TARGETS, the list of targets that should be
# run after running the main filesystem target. This is useful for
# initramfs, to rebuild the kernel once the initramfs is generated.
#
# In terms of configuration option, this macro assumes that the
# BR2_TARGET_ROOTFS_$(FSTYPE) config option allows to enable/disable
# the generation of a filesystem image of a particular type. If
# configura options BR2_TARGET_ROOTFS_$(FSTYPE)_GZIP,
# BR2_TARGET_ROOTFS_$(FSTYPE)_BZIP2 or
# BR2_TARGET_ROOTFS_$(FSTYPE)_LZMA exist and are enabled, then the
# macro will automatically generate a compressed filesystem image.
FAKEROOT_SCRIPT = $(BUILD_DIR)/_fakeroot.fs
FULL_DEVICE_TABLE = $(BUILD_DIR)/_device_table.txt
ROOTFS_DEVICE_TABLES = $(call qstrip,$(BR2_ROOTFS_DEVICE_TABLE)) \
$(call qstrip,$(BR2_ROOTFS_STATIC_DEVICE_TABLE))
define ROOTFS_TARGET_INTERNAL
# extra deps
$(eval ROOTFS_$(2)_DEPENDENCIES += host-fakeroot host-makedevs $(if $(BR2_TARGET_ROOTFS_$(2)_LZMA),host-lzma))
$(BINARIES_DIR)/rootfs.$(1): $(ROOTFS_$(2)_DEPENDENCIES)
@$(call MESSAGE,"Generating root filesystem image rootfs.$(1)")
$(foreach hook,$(ROOTFS_$(2)_PRE_GEN_HOOKS),$(call $(hook))$(sep))
rm -f $(FAKEROOT_SCRIPT)
touch $(BUILD_DIR)/.fakeroot.00000
cat $(BUILD_DIR)/.fakeroot* > $(FAKEROOT_SCRIPT)
echo "chown -R 0:0 $(TARGET_DIR)" >> $(FAKEROOT_SCRIPT)
ifneq ($(ROOTFS_DEVICE_TABLES),)
cat $(ROOTFS_DEVICE_TABLES) > $(FULL_DEVICE_TABLE)
echo "$(HOST_DIR)/usr/bin/makedevs -d $(FULL_DEVICE_TABLE) $(TARGET_DIR)" >> $(FAKEROOT_SCRIPT)
endif
echo "$(ROOTFS_$(2)_CMD)" >> $(FAKEROOT_SCRIPT)
chmod a+x $(FAKEROOT_SCRIPT)
$(HOST_DIR)/usr/bin/fakeroot -- $(FAKEROOT_SCRIPT)
-@rm -f $(FAKEROOT_SCRIPT) $(FULL_DEVICE_TABLE)
$(foreach hook,$(ROOTFS_$(2)_POST_GEN_HOOKS),$(call $(hook))$(sep))
ifeq ($$(BR2_TARGET_ROOTFS_$(2)_GZIP),y)
gzip -9 -c $$@ > $$@.gz
endif
ifeq ($$(BR2_TARGET_ROOTFS_$(2)_BZIP2),y)
bzip2 -9 -c $$@ > $$@.bz2
endif
ifeq ($$(BR2_TARGET_ROOTFS_$(2)_LZMA),y)
$(LZMA) -9 -c $$@ > $$@.lzma
endif
rootfs-$(1)-show-depends:
@echo $(ROOTFS_$(2)_DEPENDENCIES)
rootfs-$(1): $(BINARIES_DIR)/rootfs.$(1) $(ROOTFS_$(2)_POST_TARGETS)
ifeq ($$(BR2_TARGET_ROOTFS_$(2)),y)
TARGETS += rootfs-$(1)
endif
endef
define ROOTFS_TARGET
$(call ROOTFS_TARGET_INTERNAL,$(1),$(call UPPERCASE,$(1)))
endef
include fs/*/*.mk

View File

@@ -1,34 +0,0 @@
config BR2_TARGET_ROOTFS_CPIO
bool "cpio the root filesystem"
help
Build a cpio archive of the root filesystem
choice
prompt "Compression method"
default BR2_TARGET_ROOTFS_CPIO_NONE
depends on BR2_TARGET_ROOTFS_CPIO
help
Select compressor for cpio filesystem of the root filesystem
config BR2_TARGET_ROOTFS_CPIO_NONE
bool "no compression"
help
Do not compress the cpio filesystem.
config BR2_TARGET_ROOTFS_CPIO_GZIP
bool "gzip"
help
Do compress the cpio filesystem with gzip.
config BR2_TARGET_ROOTFS_CPIO_BZIP2
bool "bzip2"
help
Do compress the cpio filesystem with bzip2.
config BR2_TARGET_ROOTFS_CPIO_LZMA
bool "lzma"
help
Do compress the cpio filesystem with lzma.
endchoice

View File

@@ -1,18 +0,0 @@
#############################################################
#
# cpio to archive target filesystem
#
#############################################################
define ROOTFS_CPIO_INIT_SYMLINK
rm -f $(TARGET_DIR)/init
ln -s sbin/init $(TARGET_DIR)/init
endef
ROOTFS_CPIO_PRE_GEN_HOOKS += ROOTFS_CPIO_INIT_SYMLINK
define ROOTFS_CPIO_CMD
cd $(TARGET_DIR) && find . | cpio --quiet -o -H newc > $$@
endef
$(eval $(call ROOTFS_TARGET,cpio))

View File

@@ -1,6 +0,0 @@
config BR2_TARGET_ROOTFS_CRAMFS
bool "cramfs root filesystem"
help
Build a cramfs root filesystem
http://sourceforge.net/projects/cramfs/

View File

@@ -1,22 +0,0 @@
#############################################################
#
# Build the cramfs root filesystem image
#
#############################################################
ifeq ($(BR2_ENDIAN),"BIG")
CRAMFS_OPTS=-b
else
CRAMFS_OPTS=-l
endif
ifneq ($(ROOTFS_DEVICE_TABLE),)
CRAMFS_OPTS += -D $(ROOTFS_DEVICE_TABLE)
endif
define ROOTFS_CRAMFS_CMD
$(HOST_DIR)/usr/bin/mkcramfs -q $(CRAMFS_OPTS) $(TARGET_DIR) $$@
endef
ROOTFS_CRAMFS_DEPENDENCIES = host-cramfs
$(eval $(call ROOTFS_TARGET,cramfs))

View File

@@ -1,49 +0,0 @@
config BR2_TARGET_ROOTFS_EXT2
bool "ext2 root filesystem"
help
Build an ext2 root filesystem
config BR2_TARGET_ROOTFS_EXT2_BLOCKS
int "size in blocks (leave at 0 for auto calculation)"
depends on BR2_TARGET_ROOTFS_EXT2
default 0
config BR2_TARGET_ROOTFS_EXT2_INODES
int "inodes (leave at 0 for auto calculation)"
depends on BR2_TARGET_ROOTFS_EXT2
default 0
config BR2_TARGET_ROOTFS_EXT2_RESBLKS
int "reserved blocks percentage"
depends on BR2_TARGET_ROOTFS_EXT2
default 0
choice
prompt "Compression method"
default BR2_TARGET_ROOTFS_EXT2_NONE
depends on BR2_TARGET_ROOTFS_EXT2
help
Select compressor for ext2 filesystem of the root filesystem
config BR2_TARGET_ROOTFS_EXT2_NONE
bool "no compression"
help
Do not compress the ext2 filesystem.
config BR2_TARGET_ROOTFS_EXT2_GZIP
bool "gzip"
help
Do compress the ext2 filesystem with gzip.
config BR2_TARGET_ROOTFS_EXT2_BZIP2
bool "bzip2"
help
Do compress the ext2 filesystem with bzip2.
config BR2_TARGET_ROOTFS_EXT2_LZMA
bool "lzma"
help
Do compress the ext2 filesystem with lzma.
endchoice

View File

@@ -1,27 +0,0 @@
#############################################################
#
# Build the ext2 root filesystem image
#
#############################################################
EXT2_OPTS :=
ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_BLOCKS)),0)
EXT2_OPTS += -b $(BR2_TARGET_ROOTFS_EXT2_BLOCKS)
endif
ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_INODES)),0)
EXT2_OPTS += -N $(BR2_TARGET_ROOTFS_EXT2_INODES)
endif
ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_RESBLKS)),0)
EXT2_OPTS += -m $(BR2_TARGET_ROOTFS_EXT2_RESBLKS)
endif
ROOTFS_EXT2_DEPENDENCIES = host-genext2fs
define ROOTFS_EXT2_CMD
PATH=$(TARGET_PATH) fs/ext2/genext2fs.sh -d $(TARGET_DIR) $(EXT2_OPTS) $$@
endef
$(eval $(call ROOTFS_TARGET,ext2))

View File

@@ -1,36 +0,0 @@
#!/bin/sh
# genext2fs wrapper calculating needed blocks/inodes values if not specified
export LC_ALL=C
CALC_BLOCKS=1
CALC_INODES=1
while getopts x:d:D:b:i:N:m:g:e:zfqUPhVv f
do
case $f in
b) CALC_BLOCKS=0 ;;
N) CALC_INODES=0; INODES=$OPTARG ;;
d) TARGET_DIR=$OPTARG ;;
esac
done
# calculate needed inodes
if [ $CALC_INODES -eq 1 ];
then
INODES=$(find $TARGET_DIR | wc -l)
INODES=$(expr $INODES + 400)
set -- $@ -N $INODES
fi
# calculate needed blocks
if [ $CALC_BLOCKS -eq 1 ];
then
# size ~= superblock, block+inode bitmaps, inodes (8 per block), blocks
# we scale inodes / blocks with 10% to compensate for bitmaps size + slack
BLOCKS=$(du -s -c -k $TARGET_DIR | grep total | sed -e "s/total//")
BLOCKS=$(expr 500 + \( $BLOCKS + $INODES / 8 \) \* 11 / 10)
set -- $@ -b $BLOCKS
fi
exec genext2fs $@

View File

@@ -1,20 +0,0 @@
config BR2_TARGET_ROOTFS_INITRAMFS
bool "initramfs for initial ramdisk of linux kernel"
depends on BR2_LINUX_KERNEL
help
Integrate the root filesystem generated by Buildroot as an
initramfs inside the kernel image. This integration will
take place automatically.
The rootfs.initramfs file generated in the images/ directory
is only a text file describing the contents of the initramfs
in a format understood by the CONFIG_INITRAMFS_SOURCE kernel
configuration option.
Note that enabling initramfs together with other filesystem
formats doesn't make sense: you would end up having two
identical root filesystems, one embedded inside the kernel
image, and one separatly.
comment "initramfs requires a Linux kernel to be built"
depends on !BR2_LINUX_KERNEL

View File

@@ -1,7 +0,0 @@
#!/bin/sh
# devtmpfs does not get automounted for initramfs
/bin/mount -t devtmpfs devtmpfs /dev
exec 0</dev/console
exec 1>/dev/console
exec 2>/dev/console
exec /sbin/init $*

View File

@@ -1,36 +0,0 @@
#############################################################
#
# Make a initramfs_list file to be used by gen_init_cpio
# gen_init_cpio is part of the 2.6 linux kernels to build an
# initial ramdisk filesystem based on cpio
#
#############################################################
ifeq ($(BR2_ROOTFS_DEVICE_CREATION_STATIC),y)
define ROOTFS_INITRAMFS_ADD_INIT
if [ ! -e $(TARGET_DIR)/init ]; then \
ln -sf sbin/init $(TARGET_DIR)/init; \
fi
endef
else
# devtmpfs does not get automounted when initramfs is used.
# Add a pre-init script to mount it before running init
define ROOTFS_INITRAMFS_ADD_INIT
if [ ! -e $(TARGET_DIR)/init ]; then \
$(INSTALL) -m 0755 fs/initramfs/init $(TARGET_DIR)/init; \
fi
endef
endif # BR2_ROOTFS_DEVICE_CREATION_STATIC
ROOTFS_INITRAMFS_PRE_GEN_HOOKS += ROOTFS_INITRAMFS_ADD_INIT
define ROOTFS_INITRAMFS_CMD
$(SHELL) fs/initramfs/gen_initramfs_list.sh -u 0 -g 0 $(TARGET_DIR) > $$@
endef
ROOTFS_INITRAMFS_POST_TARGETS += linux26-rebuild-with-initramfs
$(eval $(call ROOTFS_TARGET,initramfs))

View File

@@ -1,16 +0,0 @@
config BR2_TARGET_ROOTFS_ISO9660
bool "iso image"
depends on (BR2_i386 || BR2_x86_64)
depends on BR2_LINUX_KERNEL
select BR2_TARGET_ROOTFS_EXT2
select BR2_TARGET_GRUB
help
Build a bootable iso9660 image
config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU
string "Boot menu.lst file"
depends on BR2_TARGET_ROOTFS_ISO9660
default "fs/iso9660/menu.lst"
comment "iso image requires a Linux kernel to be built"
depends on (BR2_i386 || BR2_x86_64) && !BR2_LINUX_KERNEL

View File

@@ -1,49 +0,0 @@
#############################################################
#
# Build the iso96600 root filesystem image
#
# Cannot be converted to the ROOTFS_TARGET infrastructure, because of
# the temporary construction in ISO9660_TARGET_DIR.
#
#############################################################
ISO9660_TARGET_DIR=$(BUILD_DIR)/iso9660
ISO9660_BOOT_MENU:=$(call qstrip,$(BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU))
ISO9660_OPTS:=
ifeq ($(BR2_TARGET_ROOTFS_ISO9660_SQUASH),y)
ISO9660_OPTS+=-U
endif
$(BINARIES_DIR)/rootfs.iso9660: host-cdrkit host-fakeroot linux rootfs-ext2 grub
@$(call MESSAGE,"Generating root filesystem image rootfs.iso9660")
mkdir -p $(ISO9660_TARGET_DIR)
mkdir -p $(ISO9660_TARGET_DIR)/boot/grub
cp $(GRUB_DIR)/stage2/stage2_eltorito $(ISO9660_TARGET_DIR)/boot/grub/
cp $(ISO9660_BOOT_MENU) $(ISO9660_TARGET_DIR)/boot/grub/menu.lst
cp $(LINUX_IMAGE_PATH) $(ISO9660_TARGET_DIR)/kernel
cp $(BINARIES_DIR)/rootfs.ext2 $(ISO9660_TARGET_DIR)/initrd
# Use fakeroot to pretend all target binaries are owned by root
rm -f $(FAKEROOT_SCRIPT)
touch $(BUILD_DIR)/.fakeroot.00000
cat $(BUILD_DIR)/.fakeroot* > $(FAKEROOT_SCRIPT)
echo "chown -R 0:0 $(ISO9660_TARGET_DIR)" >> $(FAKEROOT_SCRIPT)
# Use fakeroot so mkisofs believes the previous fakery
echo "$(HOST_DIR)/usr/bin/genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot " \
"-boot-load-size 4 -boot-info-table -o $@ $(ISO9660_TARGET_DIR)" \
>> $(FAKEROOT_SCRIPT)
chmod a+x $(FAKEROOT_SCRIPT)
$(HOST_DIR)/usr/bin/fakeroot -- $(FAKEROOT_SCRIPT)
-@rm -f $(FAKEROOT_SCRIPT)
-@rm -rf $(ISO9660_TARGET_DIR)
rootfs-iso9660: $(BINARIES_DIR)/rootfs.iso9660
#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(BR2_TARGET_ROOTFS_ISO9660),y)
TARGETS+=rootfs-iso9660
endif

View File

@@ -1,114 +0,0 @@
config BR2_TARGET_ROOTFS_JFFS2
bool "jffs2 root filesystem"
help
Build a jffs2 root filesystem
if BR2_TARGET_ROOTFS_JFFS2
choice
prompt "Flash Type"
default BR2_TARGET_ROOTFS_JFFS2_FLASH_128
config BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_1056
bool "AT45 dataflash with 1056 byte pagesize"
select BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER
config BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_528
bool "AT45 dataflash with 528 byte pagesize"
select BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER
config BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_512_16K
bool "NAND flash with 512B Page and 16 kB erasesize"
select BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER
config BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K
bool "NAND flash with 2kB Page and 128 kB erasesize"
select BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER
config BR2_TARGET_ROOTFS_JFFS2_FLASH_128
bool "Parallel flash with 4 kB pagesize and 128 kB erase size"
config BR2_TARGET_ROOTFS_JFFS2_FLASH_64
bool "Parallel flash with 4 kB pagesize and 64 kB erase size"
config BR2_TARGET_ROOTFS_JFFS2_CUSTOM
bool "Select custom page and erase size"
endchoice
config BR2_TARGET_ROOTFS_JFFS2_CUSTOM_PAGESIZE
hex "Page Size"
depends on BR2_TARGET_ROOTFS_JFFS2_CUSTOM
default 0x1000
help
Set to pagesize of memory
config BR2_TARGET_ROOTFS_JFFS2_CUSTOM_EBSIZE
hex "Erase block size"
depends on BR2_TARGET_ROOTFS_JFFS2_CUSTOM
default 0x20000
help
Set to erase size of memory
config BR2_TARGET_ROOTFS_JFFS2_PAGESIZE
hex
default 0x420 if BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_1056
default 0x210 if BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_528
default 0x200 if BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_512_16K
default 0x800 if BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K
default 0x1000 if BR2_TARGET_ROOTFS_JFFS2_FLASH_128
default 0x1000 if BR2_TARGET_ROOTFS_JFFS2_FLASH_64
default $(BR2_TARGET_ROOTFS_JFFS2_CUSTOM_PAGESIZE) if BR2_TARGET_ROOTFS_JFFS2_CUSTOM
config BR2_TARGET_ROOTFS_JFFS2_EBSIZE
hex
default 0x2100 if BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_1056
default 0x1080 if BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_528
default 0x4000 if BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_512_16K
default 0x20000 if BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K
default 0x20000 if BR2_TARGET_ROOTFS_JFFS2_FLASH_128
default 0x10000 if BR2_TARGET_ROOTFS_JFFS2_FLASH_64
default $(BR2_TARGET_ROOTFS_JFFS2_CUSTOM_EBSIZE) if BR2_TARGET_ROOTFS_JFFS2_CUSTOM
config BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER
bool "Do not use Cleanmarker"
default y if BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_1056
default y if BR2_TARGET_ROOTFS_JFFS2_DATAFLASH_528
default y if BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_512_16K
default y if BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K
help
Do not use cleanmarkers if using NAND flash or Dataflash where
the pagesize is not a power of 2
config BR2_TARGET_ROOTFS_JFFS2_PAD
bool "Pad output"
config BR2_TARGET_ROOTFS_JFFS2_PADSIZE
hex "Pad output size (0x0 = to end of EB)"
depends on BR2_TARGET_ROOTFS_JFFS2_PAD
default 0x0
help
Set to 0x0 to pad to end of erase block.
choice
prompt "Endianess"
default BR2_TARGET_ROOTFS_JFFS2_BE if BR2_armeb || \
BR2_avr32 || BR2_m68k || BR2_mips || \
BR2_powerpc || BR2_sh2 || BR2_sh2a || \
BR2_sh3eb || BR2_sh4eb || BR2_sh4aeb || BR2_sparc
config BR2_TARGET_ROOTFS_JFFS2_LE
bool "little-endian"
config BR2_TARGET_ROOTFS_JFFS2_BE
bool "big-endian"
endchoice
config BR2_TARGET_ROOTFS_JFFS2_SUMMARY
bool "Produce a summarized JFFS2 image"
help
A summarised image can be mounted faster if support is
enabled in the kernel (CONFIG_JFFS2_SUMMARY)
endif

View File

@@ -1,49 +0,0 @@
#############################################################
#
# Build the jffs2 root filesystem image
#
#############################################################
JFFS2_OPTS := -e $(BR2_TARGET_ROOTFS_JFFS2_EBSIZE)
SUMTOOL_OPTS := $(JFFS2_OPTS)
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_PAD),y)
ifneq ($(strip $(BR2_TARGET_ROOTFS_JFFS2_PADSIZE)),0x0)
JFFS2_OPTS += --pad=$(strip $(BR2_TARGET_ROOTFS_JFFS2_PADSIZE))
else
JFFS2_OPTS += -p
endif
SUMTOOL_OPTS += -p
endif
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_LE),y)
JFFS2_OPTS += -l
SUMTOOL_OPTS += -l
endif
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_BE),y)
JFFS2_OPTS += -b
SUMTOOL_OPTS += -b
endif
JFFS2_OPTS += -s $(BR2_TARGET_ROOTFS_JFFS2_PAGESIZE)
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER),y)
JFFS2_OPTS += -n
SUMTOOL_OPTS += -n
endif
ROOTFS_JFFS2_DEPENDENCIES = host-mtd
ifneq ($(BR2_TARGET_ROOTFS_JFFS2_SUMMARY),)
define ROOTFS_JFFS2_CMD
$(MKFS_JFFS2) $(JFFS2_OPTS) -d $(TARGET_DIR) -o $$@.nosummary && \
$(SUMTOOL) $(SUMTOOL_OPTS) -i $$@.nosummary -o $$@ && \
rm $$@.nosummary
endef
else
define ROOTFS_JFFS2_CMD
$(MKFS_JFFS2) $(JFFS2_OPTS) -d $(TARGET_DIR) -o $$@
endef
endif
$(eval $(call ROOTFS_TARGET,jffs2))

View File

@@ -1,5 +0,0 @@
config BR2_TARGET_ROOTFS_ROMFS
bool "romfs root filesystem"
help
Build a romfs image of the root filesystem.

View File

@@ -1,15 +0,0 @@
#############################################################
#
# Build the romfs root filesystem image
#
#############################################################
ROMFS_TARGET=$(IMAGE).romfs
ROOTFS_ROMFS_DEPENDENCIES = host-genromfs
define ROOTFS_ROMFS_CMD
$(HOST_DIR)/usr/bin/genromfs -d $(TARGET_DIR) -f $$@
endef
$(eval $(call ROOTFS_TARGET,romfs))

View File

@@ -1,9 +0,0 @@
# /etc/fstab: static file system information.
#
# <file system> <mount pt> <type> <options> <dump> <pass>
/dev/root / ext2 rw,noauto 0 1
proc /proc proc defaults 0 0
devpts /dev/pts devpts defaults,gid=5,mode=620 0 0
tmpfs /dev/shm tmpfs mode=0777 0 0
tmpfs /tmp tmpfs defaults 0 0
sysfs /sys sysfs defaults 0 0

Some files were not shown because too many files have changed in this diff Show More