mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-24 11:46:30 +00:00
Merge pull request #17 from ccrisan/buildroot-next
Buildroot 2018.08.02
This commit is contained in:
commit
a10da70054
293
Config.in
293
Config.in
@ -62,6 +62,14 @@ config BR2_HOST_GCC_AT_LEAST_7
|
||||
default y if BR2_HOST_GCC_VERSION = "7"
|
||||
select BR2_HOST_GCC_AT_LEAST_6
|
||||
|
||||
config BR2_HOST_GCC_AT_LEAST_8
|
||||
bool
|
||||
default y if BR2_HOST_GCC_VERSION = "8"
|
||||
select BR2_HOST_GCC_AT_LEAST_7
|
||||
|
||||
# When adding new entries above, be sure to update
|
||||
# the HOSTCC_MAX_VERSION variable in the Makefile.
|
||||
|
||||
# Hidden boolean selected by packages in need of Java in order to build
|
||||
# (example: kodi)
|
||||
config BR2_NEEDS_HOST_JAVA
|
||||
@ -175,8 +183,8 @@ config BR2_TAR_OPTIONS
|
||||
default ""
|
||||
help
|
||||
Options to pass to tar when extracting the sources.
|
||||
E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
|
||||
and to be verbose.
|
||||
E.g. " -v --exclude='*.svn*'" to exclude all .svn internal
|
||||
files and to be verbose.
|
||||
|
||||
endmenu
|
||||
|
||||
@ -200,6 +208,9 @@ config BR2_DL_DIR
|
||||
If the Linux shell environment has defined the BR2_DL_DIR
|
||||
environment variable, then this overrides this configuration
|
||||
item.
|
||||
The directory is organized with a subdirectory for each
|
||||
package. Each package has its own $(LIBFOO_DL_DIR) variable
|
||||
that can be used to find the correct path.
|
||||
|
||||
The default is $(TOPDIR)/dl
|
||||
|
||||
@ -332,6 +343,9 @@ config BR2_CCACHE_DIR
|
||||
default "$(HOME)/.buildroot-ccache"
|
||||
help
|
||||
Where ccache should store cached files.
|
||||
If the Linux shell environment has defined the BR2_CCACHE_DIR
|
||||
environment variable, then this overrides this configuration
|
||||
item.
|
||||
|
||||
config BR2_CCACHE_INITIAL_SETUP
|
||||
string "Compiler cache initial setup"
|
||||
@ -421,8 +435,8 @@ endif
|
||||
|
||||
config BR2_STRIP_strip
|
||||
bool "strip target binaries"
|
||||
depends on !BR2_PACKAGE_HOST_ELF2FLT
|
||||
default y
|
||||
depends on !BR2_PACKAGE_HOST_ELF2FLT
|
||||
help
|
||||
Binaries and libraries in the target filesystem will be
|
||||
stripped using the normal 'strip' command. This allows to save
|
||||
@ -432,16 +446,16 @@ config BR2_STRIP_strip
|
||||
|
||||
config BR2_STRIP_EXCLUDE_FILES
|
||||
string "executables that should not be stripped"
|
||||
depends on BR2_STRIP_strip
|
||||
default ""
|
||||
depends on BR2_STRIP_strip
|
||||
help
|
||||
You may specify a space-separated list of binaries and
|
||||
libraries here that should not be stripped on the target.
|
||||
|
||||
config BR2_STRIP_EXCLUDE_DIRS
|
||||
string "directories that should be skipped when stripping"
|
||||
depends on BR2_STRIP_strip
|
||||
default ""
|
||||
depends on BR2_STRIP_strip
|
||||
help
|
||||
You may specify a space-separated list of directories that
|
||||
should be skipped when stripping. Binaries and libraries in
|
||||
@ -458,7 +472,7 @@ choice
|
||||
config BR2_OPTIMIZE_0
|
||||
bool "optimization level 0"
|
||||
help
|
||||
Do not optimize. This is the default.
|
||||
Do not optimize.
|
||||
|
||||
config BR2_OPTIMIZE_1
|
||||
bool "optimization level 1"
|
||||
@ -525,12 +539,23 @@ config BR2_OPTIMIZE_S
|
||||
-falign-loops -falign-labels -freorder-blocks
|
||||
-freorder-blocks-and-partition -fprefetch-loop-arrays
|
||||
-ftree-vect-loop-version
|
||||
This is the default.
|
||||
|
||||
config BR2_OPTIMIZE_FAST
|
||||
bool "optimize for fast"
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
|
||||
help
|
||||
Optimize for fast. Disregard strict standards
|
||||
compliance. -Ofast enables all -O3 optimizations. It also
|
||||
enables optimizations that are not valid for all
|
||||
standard-compliant programs. It turns on -ffast-math and the
|
||||
Fortran-specific -fstack-arrays, unless -fmax-stack-var-size
|
||||
is specified, and -fno-protect-parens.
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_GOOGLE_BREAKPAD_ENABLE
|
||||
bool "Enable google-breakpad support"
|
||||
select BR2_PACKAGE_GOOGLE_BREAKPAD
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_HOST_GCC_AT_LEAST_4_8 # C++11
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
|
||||
@ -538,6 +563,8 @@ config BR2_GOOGLE_BREAKPAD_ENABLE
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on (BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC)
|
||||
depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GOOGLE_BREAKPAD_ARCH_SUPPORTS
|
||||
select BR2_PACKAGE_GOOGLE_BREAKPAD
|
||||
help
|
||||
This option will enable the use of google breakpad, a library
|
||||
and tool suite that allows you to distribute an application to
|
||||
@ -566,7 +593,119 @@ config BR2_GOOGLE_BREAKPAD_INCLUDE_FILES
|
||||
endif
|
||||
|
||||
choice
|
||||
bool "build code with Stack Smashing Protection"
|
||||
bool "libraries"
|
||||
default BR2_SHARED_LIBS if BR2_BINFMT_SUPPORTS_SHARED
|
||||
default BR2_STATIC_LIBS if !BR2_BINFMT_SUPPORTS_SHARED
|
||||
help
|
||||
Select the type of libraries you want to use on the target.
|
||||
|
||||
The default is to build dynamic libraries and use those on the
|
||||
target filesystem, except when the architecture and/or the
|
||||
selected binary format does not support shared libraries.
|
||||
|
||||
config BR2_STATIC_LIBS
|
||||
bool "static only"
|
||||
help
|
||||
Build and use only static libraries. No shared libraries will
|
||||
be installed on the target. This potentially increases your
|
||||
code size and should only be used if you know what you are
|
||||
doing. Note that some packages may not be available when this
|
||||
option is enabled, due to their need for dynamic library
|
||||
support.
|
||||
|
||||
config BR2_SHARED_LIBS
|
||||
bool "shared only"
|
||||
depends on BR2_BINFMT_SUPPORTS_SHARED
|
||||
help
|
||||
Build and use only shared libraries. This is the recommended
|
||||
solution as it saves space and build time.
|
||||
|
||||
config BR2_SHARED_STATIC_LIBS
|
||||
bool "both static and shared"
|
||||
depends on BR2_BINFMT_SUPPORTS_SHARED
|
||||
help
|
||||
Build both shared and static libraries, but link executables
|
||||
dynamically. While building both shared and static libraries
|
||||
take more time and more disk space, having static libraries
|
||||
may be useful to link some of the applications statically.
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_PACKAGE_OVERRIDE_FILE
|
||||
string "location of a package override file"
|
||||
default "$(CONFIG_DIR)/local.mk"
|
||||
help
|
||||
A package override file is a short makefile that contains
|
||||
variable definitions of the form <pkg>_OVERRIDE_SRCDIR, which
|
||||
allows to tell Buildroot to use an existing directory as the
|
||||
source directory for a particular package. See the Buildroot
|
||||
documentation for more details on this feature.
|
||||
|
||||
config BR2_GLOBAL_PATCH_DIR
|
||||
string "global patch directories"
|
||||
help
|
||||
You may specify a space separated list of one or more
|
||||
directories containing global package patches. For a specific
|
||||
version <packageversion> of a specific package <packagename>,
|
||||
patches are applied as follows:
|
||||
|
||||
First, the default Buildroot patch set for the package is
|
||||
applied from the package's directory in Buildroot.
|
||||
|
||||
Then for every directory - <global-patch-dir> - that exists in
|
||||
BR2_GLOBAL_PATCH_DIR, if the directory
|
||||
<global-patch-dir>/<packagename>/<packageversion>/ exists,
|
||||
then all *.patch files in this directory will be applied.
|
||||
|
||||
Otherwise, if the directory <global-patch-dir>/<packagename>
|
||||
exists, then all *.patch files in the directory will be
|
||||
applied.
|
||||
|
||||
menu "Advanced"
|
||||
|
||||
config BR2_COMPILER_PARANOID_UNSAFE_PATH
|
||||
bool "paranoid check of library/header paths"
|
||||
default y
|
||||
help
|
||||
By default, when this option is disabled, when the Buildroot
|
||||
cross-compiler will encounter an unsafe library or header path
|
||||
(such as /usr/include, or /usr/lib), the compiler will display
|
||||
a warning.
|
||||
|
||||
By enabling this option, this warning is turned into an error,
|
||||
which will completely abort the build when such unsafe paths
|
||||
are encountered.
|
||||
|
||||
Note that this mechanism is available for both the internal
|
||||
toolchain (through the toolchain wrapper and binutils patches)
|
||||
and external toolchain backends (through the toolchain
|
||||
wrapper).
|
||||
|
||||
config BR2_REPRODUCIBLE
|
||||
bool "Make the build reproducible (experimental)"
|
||||
# SOURCE_DATE_EPOCH support in toolchain-wrapper requires GCC 4.4
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
|
||||
help
|
||||
This option will remove all sources of non-reproducibility
|
||||
from the build process. For a given Buildroot configuration,
|
||||
this allows to generate exactly identical binaries from one
|
||||
build to the other, including on different machines.
|
||||
|
||||
The current implementation is restricted to builds with the
|
||||
same output directory. Many (absolute) paths are recorded in
|
||||
intermediary files, and it is very likely that some of these
|
||||
paths leak into the target rootfs. If you build with the
|
||||
same O=... path, however, the result is identical.
|
||||
|
||||
This is labeled as an experimental feature, as not all
|
||||
packages behave properly to ensure reproducibility.
|
||||
|
||||
endmenu
|
||||
|
||||
comment "Security Hardening Options"
|
||||
|
||||
choice
|
||||
bool "Stack Smashing Protection"
|
||||
default BR2_SSP_ALL if BR2_ENABLE_SSP # legacy
|
||||
depends on BR2_TOOLCHAIN_HAS_SSP
|
||||
help
|
||||
@ -621,115 +760,75 @@ comment "Stack Smashing Protection needs a toolchain w/ SSP"
|
||||
depends on !BR2_TOOLCHAIN_HAS_SSP
|
||||
|
||||
choice
|
||||
bool "libraries"
|
||||
default BR2_SHARED_LIBS if BR2_BINFMT_SUPPORTS_SHARED
|
||||
default BR2_STATIC_LIBS if !BR2_BINFMT_SUPPORTS_SHARED
|
||||
bool "RELRO Protection"
|
||||
depends on BR2_SHARED_LIBS
|
||||
help
|
||||
Select the type of libraries you want to use on the target.
|
||||
Enable a link-time protection know as RELRO (RELocation Read
|
||||
Only) which helps to protect from certain type of exploitation
|
||||
techniques altering the content of some ELF sections.
|
||||
|
||||
The default is to build dynamic libraries and use those on the
|
||||
target filesystem, except when the architecture and/or the
|
||||
selected binary format does not support shared libraries.
|
||||
|
||||
config BR2_STATIC_LIBS
|
||||
bool "static only"
|
||||
config BR2_RELRO_NONE
|
||||
bool "None"
|
||||
help
|
||||
Build and use only static libraries. No shared libraries will
|
||||
be installed on the target. This potentially increases your
|
||||
code size and should only be used if you know what you are
|
||||
doing. Note that some packages may not be available when this
|
||||
option is enabled, due to their need for dynamic library
|
||||
support.
|
||||
Disables Relocation link-time protections.
|
||||
|
||||
config BR2_SHARED_LIBS
|
||||
bool "shared only"
|
||||
depends on BR2_BINFMT_SUPPORTS_SHARED
|
||||
config BR2_RELRO_PARTIAL
|
||||
bool "Partial"
|
||||
help
|
||||
Build and use only shared libraries. This is the recommended
|
||||
solution as it saves space and build time.
|
||||
This option makes the dynamic section not writeable after
|
||||
initialization (with almost no performance penalty).
|
||||
|
||||
config BR2_SHARED_STATIC_LIBS
|
||||
bool "both static and shared"
|
||||
depends on BR2_BINFMT_SUPPORTS_SHARED
|
||||
config BR2_RELRO_FULL
|
||||
bool "Full"
|
||||
help
|
||||
Build both shared and static libraries, but link executables
|
||||
dynamically. While building both shared and static libraries
|
||||
take more time and more disk space, having static libraries
|
||||
may be useful to link some of the applications statically.
|
||||
This option includes the partial configuration, but also marks
|
||||
the GOT as read-only at the cost of initialization time during
|
||||
program loading, i.e every time an executable is started.
|
||||
|
||||
endchoice
|
||||
|
||||
comment "RELocation Read Only (RELRO) needs shared libraries"
|
||||
depends on !BR2_SHARED_LIBS
|
||||
|
||||
config BR2_PACKAGE_OVERRIDE_FILE
|
||||
string "location of a package override file"
|
||||
default "$(CONFIG_DIR)/local.mk"
|
||||
choice
|
||||
bool "Buffer-overflow Detection (FORTIFY_SOURCE)"
|
||||
depends on BR2_TOOLCHAIN_USES_GLIBC
|
||||
depends on !BR2_OPTIMIZE_0
|
||||
help
|
||||
A package override file is a short makefile that contains
|
||||
variable definitions of the form <pkg>_OVERRIDE_SRCDIR, which
|
||||
allows to tell Buildroot to use an existing directory as the
|
||||
source directory for a particular package. See the Buildroot
|
||||
documentation for more details on this feature.
|
||||
Enable the _FORTIFY_SOURCE macro which introduces additional
|
||||
checks to detect buffer-overflows in the following standard
|
||||
library functions: memcpy, mempcpy, memmove, memset, strcpy,
|
||||
stpcpy, strncpy, strcat, strncat, sprintf, vsprintf, snprintf,
|
||||
vsnprintf, gets.
|
||||
|
||||
config BR2_GLOBAL_PATCH_DIR
|
||||
string "global patch directories"
|
||||
NOTE: This feature requires an optimization level of s/1/2/3/g
|
||||
|
||||
Support for this feature has been present since GCC 4.x.
|
||||
|
||||
config BR2_FORTIFY_SOURCE_NONE
|
||||
bool "None"
|
||||
help
|
||||
You may specify a space separated list of one or more
|
||||
directories containing global package patches. For a specific
|
||||
version <packageversion> of a specific package <packagename>,
|
||||
patches are applied as follows:
|
||||
Disables additional checks to detect buffer-overflows.
|
||||
|
||||
First, the default Buildroot patch set for the package is
|
||||
applied from the package's directory in Buildroot.
|
||||
|
||||
Then for every directory - <global-patch-dir> - that exists in
|
||||
BR2_GLOBAL_PATCH_DIR, if the directory
|
||||
<global-patch-dir>/<packagename>/<packageversion>/ exists,
|
||||
then all *.patch files in this directory will be applied.
|
||||
|
||||
Otherwise, if the directory <global-patch-dir>/<packagename>
|
||||
exists, then all *.patch files in the directory will be
|
||||
applied.
|
||||
|
||||
menu "Advanced"
|
||||
|
||||
config BR2_COMPILER_PARANOID_UNSAFE_PATH
|
||||
bool "paranoid check of library/header paths"
|
||||
default y
|
||||
config BR2_FORTIFY_SOURCE_1
|
||||
bool "Conservative"
|
||||
help
|
||||
By default, when this option is disabled, when the Buildroot
|
||||
cross-compiler will encounter an unsafe library or header path
|
||||
(such as /usr/include, or /usr/lib), the compiler will display
|
||||
a warning.
|
||||
This option sets _FORTIFY_SOURCE to 1 and only introduces
|
||||
checks that shouldn't change the behavior of conforming
|
||||
programs. Adds checks at compile-time only.
|
||||
|
||||
By enabling this option, this warning is turned into an error,
|
||||
which will completely abort the build when such unsafe paths
|
||||
are encountered.
|
||||
|
||||
Note that this mechanism is available for both the internal
|
||||
toolchain (through the toolchain wrapper and binutils patches)
|
||||
and external toolchain backends (through the toolchain wrapper).
|
||||
|
||||
config BR2_REPRODUCIBLE
|
||||
bool "Make the build reproducible (experimental)"
|
||||
# SOURCE_DATE_EPOCH support in toolchain-wrapper requires GCC 4.4
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
|
||||
config BR2_FORTIFY_SOURCE_2
|
||||
bool "Aggressive"
|
||||
help
|
||||
This option will remove all sources of non-reproducibility
|
||||
from the build process. For a given Buildroot configuration,
|
||||
this allows to generate exactly identical binaries from one
|
||||
build to the other, including on different machines.
|
||||
This option sets _FORTIFY_SOURCES to 2 and some more
|
||||
checking is added, but some conforming programs might fail.
|
||||
Also adds checks at run-time (detected buffer overflow
|
||||
terminates the program)
|
||||
|
||||
The current implementation is restricted to builds with the
|
||||
same output directory. Many (absolute) paths are recorded in
|
||||
intermediary files, and it is very likely that some of these
|
||||
paths leak into the target rootfs. If you build with the
|
||||
same O=... path, however, the result is identical.
|
||||
|
||||
This is labeled as an experimental feature, as not all
|
||||
packages behave properly to ensure reproducibility.
|
||||
|
||||
endmenu
|
||||
endchoice
|
||||
|
||||
comment "Fortify Source needs a glibc toolchain and optimization"
|
||||
depends on (!BR2_TOOLCHAIN_USES_GLIBC || BR2_OPTIMIZE_0)
|
||||
endmenu
|
||||
|
||||
source "toolchain/Config.in"
|
||||
|
1447
Config.in.legacy
1447
Config.in.legacy
File diff suppressed because it is too large
Load Diff
129
Makefile
129
Makefile
@ -2,7 +2,7 @@
|
||||
#
|
||||
# Copyright (C) 1999-2005 by Erik Andersen <andersen@codepoet.org>
|
||||
# Copyright (C) 2006-2014 by the Buildroot developers <buildroot@uclibc.org>
|
||||
# Copyright (C) 2014-2017 by the Buildroot developers <buildroot@buildroot.org>
|
||||
# Copyright (C) 2014-2018 by the Buildroot developers <buildroot@buildroot.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
|
||||
@ -60,6 +60,11 @@ override O := $(patsubst %/,%,$(patsubst %.,%,$(O)))
|
||||
# avoid empty CANONICAL_O in case on non-existing entry.
|
||||
CANONICAL_O := $(shell mkdir -p $(O) >/dev/null 2>&1)$(realpath $(O))
|
||||
|
||||
# gcc fails to build when the srcdir contains a '@'
|
||||
ifneq ($(findstring @,$(CANONICAL_O)),)
|
||||
$(error The build directory can not contain a '@')
|
||||
endif
|
||||
|
||||
CANONICAL_CURDIR = $(realpath $(CURDIR))
|
||||
|
||||
REQ_UMASK = 0022
|
||||
@ -87,9 +92,9 @@ all:
|
||||
.PHONY: all
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2017.11
|
||||
export BR2_VERSION := 2018.08.2
|
||||
# Actual time the release is cut (for reproducible builds)
|
||||
BR2_VERSION_EPOCH = 1512070000
|
||||
BR2_VERSION_EPOCH = 1540470000
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
@ -141,7 +146,7 @@ noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconf
|
||||
# We're building in two situations: when MAKECMDGOALS is empty
|
||||
# (default target is to build), or when MAKECMDGOALS contains
|
||||
# something else than one of the nobuild_targets.
|
||||
nobuild_targets := source %-source source-check \
|
||||
nobuild_targets := source %-source \
|
||||
legal-info %-legal-info external-deps _external-deps \
|
||||
clean distclean help show-targets graph-depends \
|
||||
%-graph-depends %-show-depends %-show-version \
|
||||
@ -215,7 +220,10 @@ BR_GRAPH_OUT := $(or $(BR2_GRAPH_OUT),pdf)
|
||||
|
||||
BUILD_DIR := $(BASE_DIR)/build
|
||||
BINARIES_DIR := $(BASE_DIR)/images
|
||||
TARGET_DIR := $(BASE_DIR)/target
|
||||
# The target directory is common to all packages,
|
||||
# but there is one that is specific to each filesystem.
|
||||
BASE_TARGET_DIR := $(BASE_DIR)/target
|
||||
TARGET_DIR = $(if $(ROOTFS),$(ROOTFS_$(ROOTFS)_TARGET_DIR),$(BASE_TARGET_DIR))
|
||||
# initial definition so that 'make clean' works for most users, even without
|
||||
# .config. HOST_DIR will be overwritten later when .config is included.
|
||||
HOST_DIR := $(BASE_DIR)/host
|
||||
@ -231,15 +239,6 @@ LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv
|
||||
LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings
|
||||
LEGAL_REPORT = $(LEGAL_INFO_DIR)/README
|
||||
|
||||
################################################################################
|
||||
#
|
||||
# staging and target directories do NOT list these as
|
||||
# dependencies anywhere else
|
||||
#
|
||||
################################################################################
|
||||
$(BUILD_DIR) $(TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST):
|
||||
@mkdir -p $@
|
||||
|
||||
BR2_CONFIG = $(CONFIG_DIR)/.config
|
||||
|
||||
# Pull in the user's configuration file
|
||||
@ -253,9 +252,6 @@ export TZ = UTC
|
||||
export LANG = C
|
||||
export LC_ALL = C
|
||||
export GZIP = -n
|
||||
BR2_VERSION_GIT_EPOCH = $(shell GIT_DIR=$(TOPDIR)/.git $(GIT) log -1 --format=%at)
|
||||
export SOURCE_DATE_EPOCH ?= $(if $(wildcard $(TOPDIR)/.git),$(BR2_VERSION_GIT_EPOCH),$(BR2_VERSION_EPOCH))
|
||||
DEPENDENCIES_HOST_PREREQ += host-fakedate
|
||||
endif
|
||||
|
||||
# To put more focus on warnings, be less verbose as default
|
||||
@ -355,14 +351,36 @@ export HOSTARCH := $(shell LC_ALL=C $(HOSTCC_NOCCACHE) -v 2>&1 | \
|
||||
-e 's/macppc/powerpc/' \
|
||||
-e 's/sh.*/sh/' )
|
||||
|
||||
HOSTCC_VERSION := $(shell $(HOSTCC_NOCCACHE) --version | \
|
||||
sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p')
|
||||
# When adding a new host gcc version in Config.in,
|
||||
# update the HOSTCC_MAX_VERSION variable:
|
||||
HOSTCC_MAX_VERSION := 8
|
||||
|
||||
HOSTCC_VERSION := $(shell V=$$($(HOSTCC_NOCCACHE) --version | \
|
||||
sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p'); \
|
||||
[ "$${V%% *}" -le $(HOSTCC_MAX_VERSION) ] || V=$(HOSTCC_MAX_VERSION); \
|
||||
printf "%s" "$${V}")
|
||||
|
||||
# For gcc >= 5.x, we only need the major version.
|
||||
ifneq ($(firstword $(HOSTCC_VERSION)),4)
|
||||
HOSTCC_VERSION := $(firstword $(HOSTCC_VERSION))
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_NEEDS_HOST_UTF8_LOCALE),y)
|
||||
# First, we try to use the user's configured locale (as that's the
|
||||
# language they'd expect messages to be displayed), then we favour
|
||||
# a non language-specific locale like C.UTF-8 if one is available,
|
||||
# so we sort with the C locale to get it at the top.
|
||||
# This is guaranteed to not be empty, because of the check in
|
||||
# support/dependencies/dependencies.sh
|
||||
HOST_UTF8_LOCALE := $(shell \
|
||||
( echo $${LC_ALL:-$${LC_MESSAGES:-$${LANG}}}; \
|
||||
locale -a 2>/dev/null | LC_ALL=C sort \
|
||||
) \
|
||||
| grep -i -E 'utf-?8$$' \
|
||||
| head -n 1)
|
||||
HOST_UTF8_LOCALE_ENV := LC_ALL=$(HOST_UTF8_LOCALE)
|
||||
endif
|
||||
|
||||
# Make sure pkg-config doesn't look outside the buildroot tree
|
||||
HOST_PKG_CONFIG_PATH := $(PKG_CONFIG_PATH)
|
||||
unexport PKG_CONFIG_PATH
|
||||
@ -422,7 +440,6 @@ KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \
|
||||
-e s/arceb/arc/ \
|
||||
-e s/arm.*/arm/ -e s/sa110/arm/ \
|
||||
-e s/aarch64.*/arm64/ \
|
||||
-e s/bfin/blackfin/ \
|
||||
-e s/or1k/openrisc/ \
|
||||
-e s/parisc64/parisc/ \
|
||||
-e s/powerpc64.*/powerpc/ \
|
||||
@ -439,12 +456,18 @@ TAR_OPTIONS = $(call qstrip,$(BR2_TAR_OPTIONS)) -xf
|
||||
# packages compiled for the host go here
|
||||
HOST_DIR := $(call qstrip,$(BR2_HOST_DIR))
|
||||
|
||||
ifneq ($(HOST_DIR),$(BASE_DIR)/host)
|
||||
HOST_DIR_SYMLINK = $(BASE_DIR)/host
|
||||
$(HOST_DIR_SYMLINK): $(BASE_DIR)
|
||||
ln -snf $(HOST_DIR) $(BASE_DIR)/host
|
||||
endif
|
||||
|
||||
# Quotes are needed for spaces and all in the original PATH content.
|
||||
BR_PATH = "$(HOST_DIR)/bin:$(HOST_DIR)/sbin:$(PATH)"
|
||||
|
||||
# Location of a file giving a big fat warning that output/target
|
||||
# should not be used as the root filesystem.
|
||||
TARGET_DIR_WARNING_FILE = $(TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
|
||||
TARGET_DIR_WARNING_FILE = $(BASE_TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
|
||||
|
||||
ifeq ($(BR2_CCACHE),y)
|
||||
CCACHE := $(HOST_DIR)/bin/ccache
|
||||
@ -486,11 +509,17 @@ include package/Makefile.in
|
||||
-include $(sort $(wildcard arch/arch.mk.*))
|
||||
include support/dependencies/dependencies.mk
|
||||
|
||||
PACKAGES += $(DEPENDENCIES_HOST_PREREQ)
|
||||
|
||||
include $(sort $(wildcard toolchain/*.mk))
|
||||
include $(sort $(wildcard toolchain/*/*.mk))
|
||||
|
||||
ifeq ($(BR2_REPRODUCIBLE),y)
|
||||
# If SOURCE_DATE_EPOCH has not been set then use the commit date, or the last
|
||||
# release date if the source tree is not within a Git repository.
|
||||
# See: https://reproducible-builds.org/specs/source-date-epoch/
|
||||
BR2_VERSION_GIT_EPOCH := $(shell $(GIT) log -1 --format=%at 2> /dev/null)
|
||||
export SOURCE_DATE_EPOCH ?= $(or $(BR2_VERSION_GIT_EPOCH),$(BR2_VERSION_EPOCH))
|
||||
endif
|
||||
|
||||
# Include the package override file if one has been provided in the
|
||||
# configuration.
|
||||
PACKAGE_OVERRIDE_FILE = $(call qstrip,$(BR2_PACKAGE_OVERRIDE_FILE))
|
||||
@ -543,8 +572,8 @@ $(foreach pkg,$(call UPPERCASE,$(PACKAGES)),\
|
||||
endif
|
||||
|
||||
.PHONY: dirs
|
||||
dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
|
||||
$(HOST_DIR) $(HOST_DIR)/usr $(HOST_DIR)/lib $(BINARIES_DIR)
|
||||
dirs: $(BUILD_DIR) $(STAGING_DIR) $(BASE_TARGET_DIR) \
|
||||
$(HOST_DIR) $(HOST_DIR_SYMLINK) $(BINARIES_DIR)
|
||||
|
||||
$(BUILD_DIR)/buildroot-config/auto.conf: $(BR2_CONFIG)
|
||||
$(MAKE1) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" silentoldconfig
|
||||
@ -561,19 +590,9 @@ sdk: world
|
||||
$(TOPDIR)/support/scripts/fix-rpath host
|
||||
$(TOPDIR)/support/scripts/fix-rpath staging
|
||||
$(INSTALL) -m 755 $(TOPDIR)/support/misc/relocate-sdk.sh $(HOST_DIR)/relocate-sdk.sh
|
||||
mkdir -p $(HOST_DIR)/share/buildroot
|
||||
echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location
|
||||
|
||||
# Compatibility symlink in case a post-build script still uses $(HOST_DIR)/usr
|
||||
$(HOST_DIR)/usr: $(HOST_DIR)
|
||||
@ln -snf . $@
|
||||
|
||||
$(HOST_DIR)/lib: $(HOST_DIR)
|
||||
@mkdir -p $@
|
||||
@case $(HOSTARCH) in \
|
||||
(*64) ln -snf lib $(@D)/lib64;; \
|
||||
(*) ln -snf lib $(@D)/lib32;; \
|
||||
esac
|
||||
|
||||
# Populating the staging with the base directories is handled by the skeleton package
|
||||
$(STAGING_DIR):
|
||||
@mkdir -p $(STAGING_DIR)
|
||||
@ -676,9 +695,16 @@ endif
|
||||
|
||||
$(TARGETS_ROOTFS): target-finalize
|
||||
|
||||
# Avoid the rootfs name leaking down the dependency chain
|
||||
target-finalize: ROOTFS=
|
||||
|
||||
.PHONY: target-finalize
|
||||
target-finalize: $(PACKAGES)
|
||||
@$(call MESSAGE,"Finalizing target directory")
|
||||
# Check files that are touched by more than one package
|
||||
./support/scripts/check-uniq-files -t target $(BUILD_DIR)/packages-file-list.txt
|
||||
./support/scripts/check-uniq-files -t staging $(BUILD_DIR)/packages-file-list-staging.txt
|
||||
./support/scripts/check-uniq-files -t host $(BUILD_DIR)/packages-file-list-host.txt
|
||||
$(foreach hook,$(TARGET_FINALIZE_HOOKS),$($(hook))$(sep))
|
||||
rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/share/aclocal \
|
||||
$(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \
|
||||
@ -725,7 +751,8 @@ endif
|
||||
echo "ID=buildroot"; \
|
||||
echo "VERSION_ID=$(BR2_VERSION)"; \
|
||||
echo "PRETTY_NAME=\"Buildroot $(BR2_VERSION)\"" \
|
||||
) > $(TARGET_DIR)/etc/os-release
|
||||
) > $(TARGET_DIR)/usr/lib/os-release
|
||||
ln -sf ../usr/lib/os-release $(TARGET_DIR)/etc
|
||||
|
||||
@$(call MESSAGE,"Sanitizing RPATH in target tree")
|
||||
$(TOPDIR)/support/scripts/fix-rpath target
|
||||
@ -740,8 +767,11 @@ endif
|
||||
$(call MESSAGE,"Executing post-build script $(s)"); \
|
||||
$(EXTRA_ENV) $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
|
||||
|
||||
touch $(TARGET_DIR)/usr
|
||||
|
||||
.PHONY: target-post-image
|
||||
target-post-image: $(TARGETS_ROOTFS) target-finalize
|
||||
@rm -f $(ROOTFS_COMMON_TAR)
|
||||
@$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_IMAGE_SCRIPT)), \
|
||||
$(call MESSAGE,"Executing post-image script $(s)"); \
|
||||
$(EXTRA_ENV) $(s) $(BINARIES_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
|
||||
@ -754,10 +784,6 @@ _external-deps: $(foreach p,$(PACKAGES),$(p)-all-external-deps)
|
||||
external-deps:
|
||||
@$(MAKE1) -Bs $(EXTRAMAKEARGS) _external-deps | sort -u
|
||||
|
||||
# check if download URLs are outdated
|
||||
.PHONY: source-check
|
||||
source-check: $(foreach p,$(PACKAGES),$(p)-all-source-check)
|
||||
|
||||
.PHONY: legal-info-clean
|
||||
legal-info-clean:
|
||||
@rm -fr $(LEGAL_INFO_DIR)
|
||||
@ -789,7 +815,7 @@ legal-info: dirs legal-info-clean legal-info-prepare $(foreach p,$(PACKAGES),$(p
|
||||
|
||||
.PHONY: show-targets
|
||||
show-targets:
|
||||
@echo $(PACKAGES) $(TARGETS_ROOTFS)
|
||||
@echo $(sort $(PACKAGES)) $(sort $(TARGETS_ROOTFS))
|
||||
|
||||
.PHONY: show-build-order
|
||||
show-build-order: $(patsubst %,%-show-build-order,$(PACKAGES))
|
||||
@ -935,6 +961,11 @@ savedefconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
|
||||
#
|
||||
################################################################################
|
||||
|
||||
# staging and target directories do NOT list these as
|
||||
# dependencies anywhere else
|
||||
$(BUILD_DIR) $(BASE_TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST):
|
||||
@mkdir -p $@
|
||||
|
||||
# outputmakefile generates a Makefile in the output directory, if using a
|
||||
# separate output directory. This allows convenient use of make in the
|
||||
# output directory.
|
||||
@ -957,7 +988,8 @@ $(BUILD_DIR)/.br2-external.in: $(BUILD_DIR)
|
||||
# displayed.
|
||||
.PHONY: printvars
|
||||
printvars:
|
||||
@:$(foreach V, \
|
||||
@:
|
||||
$(foreach V, \
|
||||
$(sort $(if $(VARS),$(filter $(VARS),$(.VARIABLES)),$(.VARIABLES))), \
|
||||
$(if $(filter-out environment% default automatic, \
|
||||
$(origin $V)), \
|
||||
@ -968,7 +1000,7 @@ printvars:
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -rf $(TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) \
|
||||
rm -rf $(BASE_TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) $(HOST_DIR_SYMLINK) \
|
||||
$(BUILD_DIR) $(BASE_DIR)/staging \
|
||||
$(LEGAL_INFO_DIR) $(GRAPHS_DIR)
|
||||
|
||||
@ -1000,8 +1032,8 @@ help:
|
||||
@echo ' silentoldconfig - Same as oldconfig, but quietly, additionally update deps'
|
||||
@echo ' olddefconfig - Same as silentoldconfig but sets new symbols to their default value'
|
||||
@echo ' randconfig - New config with random answer to all options'
|
||||
@echo ' defconfig - New config with default answer to all options'
|
||||
@echo ' BR2_DEFCONFIG, if set, is used as input'
|
||||
@echo ' defconfig - New config with default answer to all options;'
|
||||
@echo ' BR2_DEFCONFIG, if set on the command line, is used as input'
|
||||
@echo ' savedefconfig - Save current config to BR2_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'
|
||||
@ -1020,6 +1052,10 @@ help:
|
||||
@echo ' <pkg>-build - Build <pkg> up to the build step'
|
||||
@echo ' <pkg>-show-depends - List packages on which <pkg> depends'
|
||||
@echo ' <pkg>-show-rdepends - List packages which have <pkg> as a dependency'
|
||||
@echo ' <pkg>-show-recursive-depends'
|
||||
@echo ' - Recursively list packages on which <pkg> depends'
|
||||
@echo ' <pkg>-show-recursive-rdepends'
|
||||
@echo ' - Recursively list packages which have <pkg> as a dependency'
|
||||
@echo ' <pkg>-graph-depends - Generate a graph of <pkg>'\''s dependencies'
|
||||
@echo ' <pkg>-graph-rdepends - Generate a graph of <pkg>'\''s reverse dependencies'
|
||||
@echo ' <pkg>-dirclean - Remove <pkg> build directory'
|
||||
@ -1044,7 +1080,6 @@ help:
|
||||
@echo
|
||||
@echo 'Miscellaneous:'
|
||||
@echo ' source - download all sources needed for offline-build'
|
||||
@echo ' source-check - check selected packages for valid download URLs'
|
||||
@echo ' external-deps - list external packages used'
|
||||
@echo ' legal-info - generate info about license compliance'
|
||||
@echo ' printvars - dump all the internal variables'
|
||||
|
149
arch/Config.in
149
arch/Config.in
@ -15,9 +15,6 @@ config BR2_ARCH_HAS_MMU_MANDATORY
|
||||
config BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
bool
|
||||
|
||||
config BR2_ARCH_HAS_FDPIC_SUPPORT
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "Target Architecture"
|
||||
default BR2_i386
|
||||
@ -28,24 +25,25 @@ config BR2_arcle
|
||||
bool "ARC (little endian)"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs
|
||||
that can be used from deeply embedded to high performance host
|
||||
applications. Little endian.
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
performance host applications. Little endian.
|
||||
|
||||
config BR2_arceb
|
||||
bool "ARC (big endian)"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs
|
||||
that can be used from deeply embedded to high performance host
|
||||
applications. Big endian.
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
performance host applications. Big endian.
|
||||
|
||||
config BR2_arm
|
||||
bool "ARM (little endian)"
|
||||
# MMU support is set by the subarchitecture file, arch/Config.in.arm
|
||||
help
|
||||
ARM is a 32-bit reduced instruction set computer (RISC) instruction
|
||||
set architecture (ISA) developed by ARM Holdings. Little endian.
|
||||
ARM is a 32-bit reduced instruction set computer (RISC)
|
||||
instruction set architecture (ISA) developed by ARM Holdings.
|
||||
Little endian.
|
||||
http://www.arm.com/
|
||||
http://en.wikipedia.org/wiki/ARM
|
||||
|
||||
@ -53,8 +51,9 @@ config BR2_armeb
|
||||
bool "ARM (big endian)"
|
||||
# MMU support is set by the subarchitecture file, arch/Config.in.arm
|
||||
help
|
||||
ARM is a 32-bit reduced instruction set computer (RISC) instruction
|
||||
set architecture (ISA) developed by ARM Holdings. Big endian.
|
||||
ARM is a 32-bit reduced instruction set computer (RISC)
|
||||
instruction set architecture (ISA) developed by ARM Holdings.
|
||||
Big endian.
|
||||
http://www.arm.com/
|
||||
http://en.wikipedia.org/wiki/ARM
|
||||
|
||||
@ -76,15 +75,6 @@ config BR2_aarch64_be
|
||||
http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
|
||||
http://en.wikipedia.org/wiki/ARM
|
||||
|
||||
config BR2_bfin
|
||||
bool "Blackfin"
|
||||
select BR2_ARCH_HAS_FDPIC_SUPPORT
|
||||
help
|
||||
The Blackfin is a family of 16 or 32-bit microprocessors developed,
|
||||
manufactured and marketed by Analog Devices.
|
||||
http://www.analog.com/
|
||||
http://en.wikipedia.org/wiki/Blackfin
|
||||
|
||||
config BR2_csky
|
||||
bool "csky"
|
||||
select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
|
||||
@ -112,8 +102,8 @@ config BR2_microblazeel
|
||||
bool "Microblaze AXI (little endian)"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Soft processor core designed for Xilinx FPGAs from Xilinx. AXI bus
|
||||
based architecture (little endian)
|
||||
Soft processor core designed for Xilinx FPGAs from Xilinx. AXI
|
||||
bus based architecture (little endian)
|
||||
http://www.xilinx.com
|
||||
http://en.wikipedia.org/wiki/Microblaze
|
||||
|
||||
@ -121,8 +111,8 @@ config BR2_microblazebe
|
||||
bool "Microblaze non-AXI (big endian)"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
Soft processor core designed for Xilinx FPGAs from Xilinx. PLB bus
|
||||
based architecture (non-AXI, big endian)
|
||||
Soft processor core designed for Xilinx FPGAs from Xilinx. PLB
|
||||
bus based architecture (non-AXI, big endian)
|
||||
http://www.xilinx.com
|
||||
http://en.wikipedia.org/wiki/Microblaze
|
||||
|
||||
@ -130,7 +120,8 @@ config BR2_mips
|
||||
bool "MIPS (big endian)"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Big
|
||||
endian.
|
||||
http://www.mips.com/
|
||||
http://en.wikipedia.org/wiki/MIPS_Technologies
|
||||
|
||||
@ -138,7 +129,8 @@ config BR2_mipsel
|
||||
bool "MIPS (little endian)"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Little
|
||||
endian.
|
||||
http://www.mips.com/
|
||||
http://en.wikipedia.org/wiki/MIPS_Technologies
|
||||
|
||||
@ -147,7 +139,8 @@ config BR2_mips64
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Big
|
||||
endian.
|
||||
http://www.mips.com/
|
||||
http://en.wikipedia.org/wiki/MIPS_Technologies
|
||||
|
||||
@ -156,7 +149,8 @@ config BR2_mips64el
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
|
||||
MIPS is a RISC microprocessor from MIPS Technologies. Little
|
||||
endian.
|
||||
http://www.mips.com/
|
||||
http://en.wikipedia.org/wiki/MIPS_Technologies
|
||||
|
||||
@ -179,8 +173,8 @@ config BR2_powerpc
|
||||
bool "PowerPC"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
|
||||
Big endian.
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola
|
||||
alliance. Big endian.
|
||||
http://www.power.org/
|
||||
http://en.wikipedia.org/wiki/Powerpc
|
||||
|
||||
@ -189,8 +183,8 @@ config BR2_powerpc64
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
|
||||
Big endian.
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola
|
||||
alliance. Big endian.
|
||||
http://www.power.org/
|
||||
http://en.wikipedia.org/wiki/Powerpc
|
||||
|
||||
@ -199,8 +193,8 @@ config BR2_powerpc64le
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
|
||||
Little endian.
|
||||
PowerPC is a RISC architecture created by Apple-IBM-Motorola
|
||||
alliance. Little endian.
|
||||
http://www.power.org/
|
||||
http://en.wikipedia.org/wiki/Powerpc
|
||||
|
||||
@ -208,8 +202,9 @@ config BR2_sh
|
||||
bool "SuperH"
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
help
|
||||
SuperH (or SH) is a 32-bit reduced instruction set computer (RISC)
|
||||
instruction set architecture (ISA) developed by Hitachi.
|
||||
SuperH (or SH) is a 32-bit reduced instruction set computer
|
||||
(RISC) instruction set architecture (ISA) developed by
|
||||
Hitachi.
|
||||
http://www.hitachi.com/
|
||||
http://en.wikipedia.org/wiki/SuperH
|
||||
|
||||
@ -217,8 +212,9 @@ config BR2_sparc
|
||||
bool "SPARC"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
SPARC (from Scalable Processor Architecture) is a RISC instruction
|
||||
set architecture (ISA) developed by Sun Microsystems.
|
||||
SPARC (from Scalable Processor Architecture) is a RISC
|
||||
instruction set architecture (ISA) developed by Sun
|
||||
Microsystems.
|
||||
http://www.oracle.com/sun
|
||||
http://en.wikipedia.org/wiki/Sparc
|
||||
|
||||
@ -227,8 +223,9 @@ config BR2_sparc64
|
||||
select BR2_ARCH_IS_64
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
help
|
||||
SPARC (from Scalable Processor Architecture) is a RISC instruction
|
||||
set architecture (ISA) developed by Sun Microsystems.
|
||||
SPARC (from Scalable Processor Architecture) is a RISC
|
||||
instruction set architecture (ISA) developed by Sun
|
||||
Microsystems.
|
||||
http://www.oracle.com/sun
|
||||
http://en.wikipedia.org/wiki/Sparc
|
||||
|
||||
@ -261,6 +258,31 @@ config BR2_ARCH_HAS_TOOLCHAIN_BUILDROOT
|
||||
bool
|
||||
default y if !BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
|
||||
|
||||
# The following symbols are selected by the individual
|
||||
# Config.in.$ARCH files
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
|
||||
bool
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
|
||||
# The following string values are defined by the individual
|
||||
# Config.in.$ARCH files
|
||||
config BR2_ARCH
|
||||
@ -319,7 +341,6 @@ config BR2_READELF_ARCH_NAME
|
||||
choice
|
||||
prompt "Target Binary Format"
|
||||
default BR2_BINFMT_ELF if BR2_USE_MMU
|
||||
default BR2_BINFMT_FDPIC if BR2_ARCH_HAS_FDPIC_SUPPORT
|
||||
default BR2_BINFMT_FLAT
|
||||
|
||||
config BR2_BINFMT_ELF
|
||||
@ -327,56 +348,34 @@ config BR2_BINFMT_ELF
|
||||
depends on BR2_USE_MMU
|
||||
select BR2_BINFMT_SUPPORTS_SHARED
|
||||
help
|
||||
ELF (Executable and Linkable Format) is a format for libraries and
|
||||
executables used across different architectures and operating
|
||||
systems.
|
||||
|
||||
config BR2_BINFMT_FDPIC
|
||||
bool "FDPIC"
|
||||
depends on BR2_ARCH_HAS_FDPIC_SUPPORT
|
||||
select BR2_BINFMT_SUPPORTS_SHARED
|
||||
help
|
||||
ELF FDPIC binaries are based on ELF, but allow the individual load
|
||||
segments of a binary to be located in memory independently of each
|
||||
other. This makes this format ideal for use in environments where no
|
||||
MMU is available.
|
||||
ELF (Executable and Linkable Format) is a format for libraries
|
||||
and executables used across different architectures and
|
||||
operating systems.
|
||||
|
||||
config BR2_BINFMT_FLAT
|
||||
bool "FLAT"
|
||||
depends on !BR2_USE_MMU
|
||||
help
|
||||
FLAT binary is a relatively simple and lightweight executable format
|
||||
based on the original a.out format. It is widely used in environment
|
||||
where no MMU is available.
|
||||
FLAT binary is a relatively simple and lightweight executable
|
||||
format based on the original a.out format. It is widely used
|
||||
in environment where no MMU is available.
|
||||
|
||||
endchoice
|
||||
|
||||
# Set up flat binary type
|
||||
choice
|
||||
prompt "FLAT Binary type"
|
||||
depends on BR2_BINFMT_FLAT
|
||||
default BR2_BINFMT_FLAT_ONE
|
||||
depends on BR2_BINFMT_FLAT
|
||||
|
||||
config BR2_BINFMT_FLAT_ONE
|
||||
bool "One memory region"
|
||||
help
|
||||
All segments are linked into one memory region.
|
||||
|
||||
config BR2_BINFMT_FLAT_SEP_DATA
|
||||
bool "Separate data and code region"
|
||||
# this FLAT binary type technically exists on m68k, but fails
|
||||
# to build numerous packages: due to architecture limitation,
|
||||
# big functions cannot be built in this mode. They cause build
|
||||
# failures such as "Tried to convert PC relative branch to
|
||||
# absolute jump" or "error: value -yyyyy out of range".
|
||||
depends on BR2_bfin
|
||||
help
|
||||
Allow for the data and text segments to be separated and placed in
|
||||
different regions of memory.
|
||||
|
||||
config BR2_BINFMT_FLAT_SHARED
|
||||
bool "Shared binary"
|
||||
depends on BR2_m68k || BR2_bfin
|
||||
depends on BR2_m68k
|
||||
# Even though this really generates shared binaries, there is no libdl
|
||||
# and dlopen() cannot be used. So packages that require shared
|
||||
# libraries cannot be built. Therefore, we don't select
|
||||
@ -396,10 +395,6 @@ if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be
|
||||
source "arch/Config.in.arm"
|
||||
endif
|
||||
|
||||
if BR2_bfin
|
||||
source "arch/Config.in.bfin"
|
||||
endif
|
||||
|
||||
if BR2_csky
|
||||
source "arch/Config.in.csky"
|
||||
endif
|
||||
|
@ -1,7 +1,7 @@
|
||||
choice
|
||||
prompt "Target CPU"
|
||||
depends on BR2_arc
|
||||
default BR2_arc770d
|
||||
depends on BR2_arc
|
||||
help
|
||||
Specific CPU to use
|
||||
|
||||
|
@ -6,12 +6,21 @@ config BR2_ARM_CPU_HAS_NEON
|
||||
config BR2_ARM_CPU_MAYBE_HAS_NEON
|
||||
bool
|
||||
|
||||
# For some cores, the FPU is optional
|
||||
config BR2_ARM_CPU_MAYBE_HAS_FPU
|
||||
bool
|
||||
|
||||
config BR2_ARM_CPU_HAS_FPU
|
||||
bool
|
||||
|
||||
# for some cores, VFPv2 is optional
|
||||
config BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
bool
|
||||
select BR2_ARM_CPU_MAYBE_HAS_FPU
|
||||
|
||||
config BR2_ARM_CPU_HAS_VFPV2
|
||||
bool
|
||||
select BR2_ARM_CPU_HAS_FPU
|
||||
|
||||
# for some cores, VFPv3 is optional
|
||||
config BR2_ARM_CPU_MAYBE_HAS_VFPV3
|
||||
@ -31,6 +40,24 @@ config BR2_ARM_CPU_HAS_VFPV4
|
||||
bool
|
||||
select BR2_ARM_CPU_HAS_VFPV3
|
||||
|
||||
# FPv4 is always optional
|
||||
config BR2_ARM_CPU_MAYBE_HAS_FPV4
|
||||
bool
|
||||
select BR2_ARM_CPU_MAYBE_HAS_FPU
|
||||
|
||||
config BR2_ARM_CPU_HAS_FPV4
|
||||
bool
|
||||
select BR2_ARM_CPU_HAS_FPU
|
||||
|
||||
# FPv5 is always optional
|
||||
config BR2_ARM_CPU_MAYBE_HAS_FPV5
|
||||
bool
|
||||
select BR2_ARM_CPU_MAYBE_HAS_FPV4
|
||||
|
||||
config BR2_ARM_CPU_HAS_FPV5
|
||||
bool
|
||||
select BR2_ARM_CPU_HAS_FPV4
|
||||
|
||||
config BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
bool
|
||||
select BR2_ARM_CPU_HAS_VFPV4
|
||||
@ -59,29 +86,42 @@ config BR2_ARM_CPU_ARMV7A
|
||||
config BR2_ARM_CPU_ARMV7M
|
||||
bool
|
||||
|
||||
config BR2_ARM_CPU_ARMV8
|
||||
config BR2_ARM_CPU_ARMV8A
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
default BR2_cortex_a53 if BR2_ARCH_IS_64
|
||||
default BR2_arm926t
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
if !BR2_ARCH_IS_64
|
||||
comment "armv4 cores"
|
||||
config BR2_arm920t
|
||||
bool "arm920t"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_arm922t
|
||||
bool "arm922t"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_fa526
|
||||
bool "fa526/626"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_strongarm
|
||||
bool "strongarm sa110/sa1100"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
comment "armv5 cores"
|
||||
config BR2_arm926t
|
||||
bool "arm926t"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -89,14 +129,25 @@ config BR2_arm926t
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_iwmmxt
|
||||
bool "iwmmxt"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_xscale
|
||||
bool "xscale"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
comment "armv6 cores"
|
||||
config BR2_arm1136j_s
|
||||
bool "arm1136j-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_arm1136jf_s
|
||||
bool "arm1136jf-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -104,14 +155,12 @@ config BR2_arm1136jf_s
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_arm1176jz_s
|
||||
bool "arm1176jz-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_arm1176jzf_s
|
||||
bool "arm1176jzf-s"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -119,7 +168,6 @@ config BR2_arm1176jzf_s
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_arm11mpcore
|
||||
bool "mpcore"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -127,7 +175,8 @@ config BR2_arm11mpcore
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV6
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
|
||||
comment "armv7a cores"
|
||||
config BR2_cortex_a5
|
||||
bool "cortex-A5"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -136,7 +185,6 @@ config BR2_cortex_a5
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_a7
|
||||
bool "cortex-A7"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -145,7 +193,6 @@ config BR2_cortex_a7
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_a8
|
||||
bool "cortex-A8"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -154,7 +201,6 @@ config BR2_cortex_a8
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_a9
|
||||
bool "cortex-A9"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -163,7 +209,6 @@ config BR2_cortex_a9
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_a12
|
||||
bool "cortex-A12"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -172,7 +217,6 @@ config BR2_cortex_a12
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_a15
|
||||
bool "cortex-A15"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -181,7 +225,6 @@ config BR2_cortex_a15
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_a15_a7
|
||||
bool "cortex-A15/A7 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -190,7 +233,7 @@ config BR2_cortex_a15_a7
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
config BR2_cortex_a17
|
||||
bool "cortex-A17"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -199,7 +242,7 @@ config BR2_cortex_a17
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_cortex_a17_a7
|
||||
bool "cortex-A17/A7 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
@ -208,14 +251,59 @@ config BR2_cortex_a17_a7
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_pj4
|
||||
bool "pj4"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_VFPV3
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
comment "armv7m cores"
|
||||
config BR2_cortex_m3
|
||||
bool "cortex-M3"
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
config BR2_cortex_m4
|
||||
bool "cortex-M4"
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_MAYBE_HAS_FPV4
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
config BR2_cortex_m7
|
||||
bool "cortex-M7"
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_MAYBE_HAS_FPV5
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
endif # !BR2_ARCH_IS_64
|
||||
|
||||
comment "armv8 cores"
|
||||
config BR2_cortex_a32
|
||||
bool "cortex-A32"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_NEON
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a35
|
||||
bool "cortex-A35"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a53
|
||||
bool "cortex-A53"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a57
|
||||
bool "cortex-A57"
|
||||
@ -223,7 +311,7 @@ config BR2_cortex_a57
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_a57_a53
|
||||
bool "cortex-A57/A53 big.LITTLE"
|
||||
@ -231,66 +319,153 @@ config BR2_cortex_a57_a53
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a72
|
||||
bool "cortex-A72"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_cortex_a72_a53
|
||||
bool "cortex-A72/A53 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
config BR2_cortex_m3
|
||||
bool "cortex-M3"
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_cortex_m4
|
||||
bool "cortex-M4"
|
||||
select BR2_ARM_CPU_HAS_THUMB2
|
||||
select BR2_ARM_CPU_ARMV7M
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_fa526
|
||||
bool "fa526/626"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_cortex_a73
|
||||
bool "cortex-A73"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_pj4
|
||||
bool "pj4"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_VFPV3
|
||||
select BR2_ARM_CPU_ARMV7A
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_cortex_a73_a35
|
||||
bool "cortex-A73/A35 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_strongarm
|
||||
bool "strongarm sa110/sa1100"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV4
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_cortex_a73_a53
|
||||
bool "cortex-A73/A53 big.LITTLE"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_xscale
|
||||
bool "xscale"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_HAS_THUMB
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_exynos_m1
|
||||
bool "exynos-m1"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_iwmmxt
|
||||
bool "iwmmxt"
|
||||
select BR2_ARM_CPU_HAS_ARM
|
||||
select BR2_ARM_CPU_ARMV5
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_falkor
|
||||
bool "falkor"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_qdf24xx
|
||||
bool "qdf24xx"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
if BR2_ARCH_IS_64
|
||||
config BR2_thunderx
|
||||
bool "thunderx"
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_thunderxt81
|
||||
bool "thunderxt81"
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderxt83
|
||||
bool "thunderxt83"
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderxt88
|
||||
bool "thunderxt88"
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderxt88p1
|
||||
bool "thunderxt88p1"
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
endif # BR2_ARCH_IS_64
|
||||
config BR2_xgene1
|
||||
bool "xgene1"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
|
||||
if BR2_ARCH_IS_64
|
||||
comment "armv8.1a cores"
|
||||
config BR2_thunderx2t99
|
||||
bool "thunderx2t99"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_thunderx2t99p1
|
||||
bool "thunderx2t99p1"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
config BR2_vulcan
|
||||
bool "vulcan"
|
||||
select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64
|
||||
select BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
select BR2_ARM_CPU_ARMV8A
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
|
||||
endif # BR2_ARCH_IS_64
|
||||
endchoice
|
||||
|
||||
config BR2_ARM_ENABLE_NEON
|
||||
@ -304,7 +479,9 @@ config BR2_ARM_ENABLE_NEON
|
||||
|
||||
config BR2_ARM_ENABLE_VFP
|
||||
bool "Enable VFP extension support"
|
||||
depends on BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
depends on BR2_ARM_CPU_MAYBE_HAS_FPU
|
||||
select BR2_ARM_CPU_HAS_FPV5 if BR2_ARM_CPU_MAYBE_HAS_FPV5
|
||||
select BR2_ARM_CPU_HAS_FPV4 if BR2_ARM_CPU_MAYBE_HAS_FPV4
|
||||
select BR2_ARM_CPU_HAS_VFPV4 if BR2_ARM_CPU_MAYBE_HAS_VFPV4
|
||||
select BR2_ARM_CPU_HAS_VFPV3 if BR2_ARM_CPU_MAYBE_HAS_VFPV3
|
||||
select BR2_ARM_CPU_HAS_VFPV2 if BR2_ARM_CPU_MAYBE_HAS_VFPV2
|
||||
@ -315,9 +492,9 @@ config BR2_ARM_ENABLE_VFP
|
||||
|
||||
choice
|
||||
prompt "Target ABI"
|
||||
depends on BR2_arm || BR2_armeb
|
||||
default BR2_ARM_EABIHF if BR2_ARM_CPU_HAS_VFPV2
|
||||
default BR2_ARM_EABIHF if BR2_ARM_CPU_HAS_FPU
|
||||
default BR2_ARM_EABI
|
||||
depends on BR2_arm || BR2_armeb
|
||||
help
|
||||
Application Binary Interface to use. The Application Binary
|
||||
Interface describes the calling conventions (how arguments
|
||||
@ -350,7 +527,7 @@ config BR2_ARM_EABI
|
||||
|
||||
config BR2_ARM_EABIHF
|
||||
bool "EABIhf"
|
||||
depends on BR2_ARM_CPU_HAS_VFPV2
|
||||
depends on BR2_ARM_CPU_HAS_FPU
|
||||
help
|
||||
The EABIhf is an extension of EABI which supports the 'hard'
|
||||
floating point model. This model uses the floating point
|
||||
@ -371,10 +548,12 @@ endchoice
|
||||
choice
|
||||
prompt "Floating point strategy"
|
||||
default BR2_ARM_FPU_FP_ARMV8 if BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
default BR2_ARM_FPU_FPV5D16 if BR2_ARM_CPU_HAS_FPV5
|
||||
default BR2_ARM_FPU_FPV4D16 if BR2_ARM_CPU_HAS_FPV4
|
||||
default BR2_ARM_FPU_VFPV4D16 if BR2_ARM_CPU_HAS_VFPV4
|
||||
default BR2_ARM_FPU_VFPV3D16 if BR2_ARM_CPU_HAS_VFPV3
|
||||
default BR2_ARM_FPU_VFPV2 if BR2_ARM_CPU_HAS_VFPV2
|
||||
default BR2_ARM_SOFT_FLOAT if !BR2_ARM_CPU_HAS_VFPV2
|
||||
default BR2_ARM_SOFT_FLOAT if !BR2_ARM_CPU_HAS_FPU
|
||||
|
||||
config BR2_ARM_SOFT_FLOAT
|
||||
bool "Soft float"
|
||||
@ -481,6 +660,38 @@ config BR2_ARM_FPU_NEON_VFPV4
|
||||
example on Cortex-A5 and Cortex-A7, support for VFPv4 and
|
||||
NEON is optional.
|
||||
|
||||
config BR2_ARM_FPU_FPV4D16
|
||||
bool "FPv4-D16"
|
||||
depends on BR2_ARM_CPU_HAS_FPV4
|
||||
help
|
||||
This option allows to use the FPv4-SP (single precision)
|
||||
floating point unit, as available in some ARMv7m processors
|
||||
(Cortex-M4).
|
||||
|
||||
config BR2_ARM_FPU_FPV5D16
|
||||
bool "FPv5-D16"
|
||||
depends on BR2_ARM_CPU_HAS_FPV5
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
help
|
||||
This option allows to use the FPv5-SP (single precision)
|
||||
floating point unit, as available in some ARMv7m processors
|
||||
(Cortex-M7).
|
||||
|
||||
Note that if you want binary code that works on the earlier
|
||||
Cortex-M4, you should instead select FPv4-D16.
|
||||
|
||||
config BR2_ARM_FPU_FPV5DPD16
|
||||
bool "FPv5-DP-D16"
|
||||
depends on BR2_ARM_CPU_HAS_FPV5
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
help
|
||||
This option allows to use the FPv5-DP (double precision)
|
||||
floating point unit, as available in some ARMv7m processors
|
||||
(Cortex-M7).
|
||||
|
||||
Note that if you want binary code that works on the earlier
|
||||
Cortex-M4, you should instead select FPv4-D16.
|
||||
|
||||
config BR2_ARM_FPU_FP_ARMV8
|
||||
bool "FP-ARMv8"
|
||||
depends on BR2_ARM_CPU_HAS_FP_ARMV8
|
||||
@ -545,15 +756,23 @@ config BR2_ENDIAN
|
||||
default "BIG" if (BR2_armeb || BR2_aarch64_be)
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
# armv4
|
||||
default "arm920t" if BR2_arm920t
|
||||
default "arm922t" if BR2_arm922t
|
||||
default "fa526" if BR2_fa526
|
||||
default "strongarm" if BR2_strongarm
|
||||
# armv5
|
||||
default "arm926ej-s" if BR2_arm926t
|
||||
default "iwmmxt" if BR2_iwmmxt
|
||||
default "xscale" if BR2_xscale
|
||||
# armv6
|
||||
default "arm1136j-s" if BR2_arm1136j_s
|
||||
default "arm1136jf-s" if BR2_arm1136jf_s
|
||||
default "arm1176jz-s" if BR2_arm1176jz_s
|
||||
default "arm1176jzf-s" if BR2_arm1176jzf_s
|
||||
default "mpcore" if BR2_arm11mpcore && BR2_ARM_CPU_HAS_VFPV2
|
||||
default "mpcorenovfp" if BR2_arm11mpcore
|
||||
# armv7a
|
||||
default "cortex-a5" if BR2_cortex_a5
|
||||
default "cortex-a7" if BR2_cortex_a7
|
||||
default "cortex-a8" if BR2_cortex_a8
|
||||
@ -563,25 +782,41 @@ config BR2_GCC_TARGET_CPU
|
||||
default "cortex-a15.cortex-a7" if BR2_cortex_a15_a7
|
||||
default "cortex-a17" if BR2_cortex_a17
|
||||
default "cortex-a17.cortex-a7" if BR2_cortex_a17_a7
|
||||
default "marvell-pj4" if BR2_pj4
|
||||
# armv7m
|
||||
default "cortex-m3" if BR2_cortex_m3
|
||||
default "cortex-m4" if BR2_cortex_m4
|
||||
default "fa526" if BR2_fa526
|
||||
default "marvell-pj4" if BR2_pj4
|
||||
default "strongarm" if BR2_strongarm
|
||||
default "xscale" if BR2_xscale
|
||||
default "iwmmxt" if BR2_iwmmxt
|
||||
default "cortex-m7" if BR2_cortex_m7
|
||||
# armv8a
|
||||
default "cortex-a32" if BR2_cortex_a32
|
||||
default "cortex-a35" if BR2_cortex_a35
|
||||
default "cortex-a53" if BR2_cortex_a53
|
||||
default "cortex-a57" if BR2_cortex_a57
|
||||
default "cortex-a57.cortex-a53" if BR2_cortex_a57_a53
|
||||
default "cortex-a72" if BR2_cortex_a72
|
||||
default "cortex-a72.cortex-a53" if BR2_cortex_a72_a53
|
||||
default "cortex-a73" if BR2_cortex_a73
|
||||
default "cortex-a73.cortex-a35" if BR2_cortex_a73_a35
|
||||
default "cortex-a73.cortex-a53" if BR2_cortex_a73_a53
|
||||
default "exynos-m1" if BR2_exynos_m1
|
||||
default "falkor" if BR2_falkor
|
||||
default "qdf24xx" if BR2_qdf24xx
|
||||
default "thunderx" if BR2_thunderx
|
||||
default "thunderxt81" if BR2_thunderxt81
|
||||
default "thunderxt83" if BR2_thunderxt83
|
||||
default "thunderxt88" if BR2_thunderxt88
|
||||
default "thunderxt88p1" if BR2_thunderxt88p1
|
||||
default "xgene1" if BR2_xgene1
|
||||
# armv8.1a
|
||||
default "thunderx2t99" if BR2_thunderx2t99
|
||||
default "thunderx2t99p1" if BR2_thunderx2t99p1
|
||||
default "vulcan" if BR2_vulcan
|
||||
|
||||
config BR2_GCC_TARGET_ABI
|
||||
default "aapcs-linux" if BR2_arm || BR2_armeb
|
||||
default "lp64" if BR2_aarch64 || BR2_aarch64_be
|
||||
|
||||
config BR2_GCC_TARGET_FPU
|
||||
depends on BR2_arm || BR2_armeb
|
||||
default "vfp" if BR2_ARM_FPU_VFPV2
|
||||
default "vfpv3" if BR2_ARM_FPU_VFPV3
|
||||
default "vfpv3-d16" if BR2_ARM_FPU_VFPV3D16
|
||||
@ -589,8 +824,12 @@ config BR2_GCC_TARGET_FPU
|
||||
default "vfpv4-d16" if BR2_ARM_FPU_VFPV4D16
|
||||
default "neon" if BR2_ARM_FPU_NEON
|
||||
default "neon-vfpv4" if BR2_ARM_FPU_NEON_VFPV4
|
||||
default "fpv4-sp-d16" if BR2_ARM_FPU_FPV4D16
|
||||
default "fpv5-sp-d16" if BR2_ARM_FPU_FPV5D16
|
||||
default "fpv5-d16" if BR2_ARM_FPU_FPV5DPD16
|
||||
default "fp-armv8" if BR2_ARM_FPU_FP_ARMV8
|
||||
default "neon-fp-armv8" if BR2_ARM_FPU_NEON_FP_ARMV8
|
||||
depends on BR2_arm || BR2_armeb
|
||||
|
||||
config BR2_GCC_TARGET_FLOAT_ABI
|
||||
default "soft" if BR2_ARM_SOFT_FLOAT
|
||||
|
@ -1,102 +0,0 @@
|
||||
choice
|
||||
prompt "Target CPU"
|
||||
depends on BR2_bfin
|
||||
default BR2_bf532
|
||||
help
|
||||
Specify target CPU
|
||||
config BR2_bf512
|
||||
bool "bf512"
|
||||
config BR2_bf514
|
||||
bool "bf514"
|
||||
config BR2_bf516
|
||||
bool "bf516"
|
||||
config BR2_bf518
|
||||
bool "bf518"
|
||||
config BR2_bf522
|
||||
bool "bf522"
|
||||
config BR2_bf523
|
||||
bool "bf523"
|
||||
config BR2_bf524
|
||||
bool "bf524"
|
||||
config BR2_bf525
|
||||
bool "bf525"
|
||||
config BR2_bf526
|
||||
bool "bf526"
|
||||
config BR2_bf527
|
||||
bool "bf527"
|
||||
config BR2_bf531
|
||||
bool "bf531"
|
||||
config BR2_bf532
|
||||
bool "bf532"
|
||||
config BR2_bf533
|
||||
bool "bf533"
|
||||
config BR2_bf534
|
||||
bool "bf534"
|
||||
config BR2_bf536
|
||||
bool "bf536"
|
||||
config BR2_bf537
|
||||
bool "bf537"
|
||||
config BR2_bf538
|
||||
bool "bf538"
|
||||
config BR2_bf539
|
||||
bool "bf539"
|
||||
config BR2_bf542
|
||||
bool "bf542"
|
||||
config BR2_bf544
|
||||
bool "bf544"
|
||||
config BR2_bf547
|
||||
bool "bf547"
|
||||
config BR2_bf548
|
||||
bool "bf548"
|
||||
config BR2_bf549
|
||||
bool "bf549"
|
||||
config BR2_bf561
|
||||
bool "bf561"
|
||||
endchoice
|
||||
|
||||
config BR2_ARCH
|
||||
default "bfin"
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
default bf606 if BR2_bf606
|
||||
default bf607 if BR2_bf607
|
||||
default bf608 if BR2_bf608
|
||||
default bf609 if BR2_bf609
|
||||
default bf512 if BR2_bf512
|
||||
default bf514 if BR2_bf514
|
||||
default bf516 if BR2_bf516
|
||||
default bf518 if BR2_bf518
|
||||
default bf522 if BR2_bf522
|
||||
default bf523 if BR2_bf523
|
||||
default bf524 if BR2_bf524
|
||||
default bf525 if BR2_bf525
|
||||
default bf526 if BR2_bf526
|
||||
default bf527 if BR2_bf527
|
||||
default bf531 if BR2_bf531
|
||||
default bf532 if BR2_bf532
|
||||
default bf533 if BR2_bf533
|
||||
default bf534 if BR2_bf534
|
||||
default bf536 if BR2_bf536
|
||||
default bf537 if BR2_bf537
|
||||
default bf538 if BR2_bf538
|
||||
default bf539 if BR2_bf539
|
||||
default bf542 if BR2_bf542
|
||||
default bf544 if BR2_bf544
|
||||
default bf547 if BR2_bf547
|
||||
default bf548 if BR2_bf548
|
||||
default bf549 if BR2_bf549
|
||||
default bf561 if BR2_bf561
|
||||
|
||||
config BR2_GCC_TARGET_CPU_REVISION
|
||||
string "Target CPU revision"
|
||||
help
|
||||
Specify a target CPU revision, which will be appended to the
|
||||
value of the -mcpu option. For example, if the selected CPU is
|
||||
bf609, and then selected CPU revision is "0.0", then gcc will
|
||||
receive the -mcpu=bf609-0.0 option.
|
||||
|
||||
config BR2_READELF_ARCH_NAME
|
||||
default "Analog Devices Blackfin"
|
@ -15,8 +15,8 @@ config BR2_m68k_cf
|
||||
# coldfire variants will be added later
|
||||
choice
|
||||
prompt "Target CPU"
|
||||
depends on BR2_m68k
|
||||
default BR2_m68k_68040
|
||||
depends on BR2_m68k
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
|
@ -7,9 +7,11 @@ config BR2_MIPS_CPU_MIPS32R2
|
||||
select BR2_MIPS_NAN_LEGACY
|
||||
config BR2_MIPS_CPU_MIPS32R5
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_MIPS_CPU_MIPS32R6
|
||||
bool
|
||||
select BR2_MIPS_NAN_2008
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_MIPS_CPU_MIPS64
|
||||
bool
|
||||
select BR2_MIPS_NAN_LEGACY
|
||||
@ -18,15 +20,17 @@ config BR2_MIPS_CPU_MIPS64R2
|
||||
select BR2_MIPS_NAN_LEGACY
|
||||
config BR2_MIPS_CPU_MIPS64R5
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_MIPS_CPU_MIPS64R6
|
||||
bool
|
||||
select BR2_MIPS_NAN_2008
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||
default BR2_mips_32 if BR2_mips || BR2_mipsel
|
||||
default BR2_mips_64 if BR2_mips64 || BR2_mips64el
|
||||
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
@ -53,11 +57,13 @@ config BR2_mips_interaptiv
|
||||
bool "interAptiv"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_mips_m5150
|
||||
bool "M5150"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS32R5
|
||||
select BR2_MIPS_NAN_2008
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_mips_m6250
|
||||
bool "M6250"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
@ -101,6 +107,7 @@ config BR2_mips_i6400
|
||||
bool "I6400"
|
||||
depends on BR2_ARCH_IS_64
|
||||
select BR2_MIPS_CPU_MIPS64R6
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_mips_p6600
|
||||
bool "P6600"
|
||||
depends on BR2_ARCH_IS_64
|
||||
@ -108,11 +115,10 @@ config BR2_mips_p6600
|
||||
select BR2_MIPS_CPU_MIPS64R6
|
||||
endchoice
|
||||
|
||||
|
||||
choice
|
||||
prompt "Target ABI"
|
||||
depends on BR2_mips64 || BR2_mips64el
|
||||
default BR2_MIPS_NABI32
|
||||
depends on BR2_mips64 || BR2_mips64el
|
||||
|
||||
help
|
||||
Application Binary Interface to use
|
||||
@ -138,11 +144,11 @@ config BR2_MIPS_SOFT_FLOAT
|
||||
|
||||
choice
|
||||
prompt "FP mode"
|
||||
default BR2_MIPS_FP32_MODE_XX
|
||||
depends on !BR2_ARCH_IS_64 && !BR2_MIPS_SOFT_FLOAT
|
||||
default BR2_MIPS_FP32_MODE_XX if BR2_TOOLCHAIN_HAS_MFPXX_OPTION
|
||||
help
|
||||
MIPS32 supports different FP modes (32,xx,64). Information about FP
|
||||
modes can be found here:
|
||||
MIPS32 supports different FP modes (32,xx,64). Information
|
||||
about FP modes can be found here:
|
||||
https://sourceware.org/binutils/docs/as/MIPS-Options.html
|
||||
https://dmz-portal.imgtec.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking#5._Generating_modeless_code
|
||||
|
||||
@ -152,7 +158,7 @@ config BR2_MIPS_FP32_MODE_32
|
||||
|
||||
config BR2_MIPS_FP32_MODE_XX
|
||||
bool "xx"
|
||||
depends on BR2_TOOLCHAIN_HAS_MFPXX_OPTION
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
|
||||
config BR2_MIPS_FP32_MODE_64
|
||||
bool "64"
|
||||
@ -169,12 +175,12 @@ config BR2_MIPS_NAN_LEGACY
|
||||
|
||||
config BR2_MIPS_NAN_2008
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
|
||||
choice
|
||||
prompt "Target NaN"
|
||||
depends on BR2_TOOLCHAIN_HAS_MNAN_OPTION
|
||||
depends on BR2_mips_32r5 || BR2_mips_64r5
|
||||
default BR2_MIPS_ENABLE_NAN_2008
|
||||
depends on BR2_mips_32r5 || BR2_mips_64r5
|
||||
help
|
||||
MIPS supports two different NaN encodings, legacy and 2008.
|
||||
Information about MIPS NaN encodings can be found here:
|
||||
|
@ -71,12 +71,12 @@ config BR2_powerpc_740
|
||||
depends on !BR2_ARCH_IS_64
|
||||
config BR2_powerpc_7400
|
||||
bool "7400"
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_7450
|
||||
bool "7450"
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
depends on !BR2_ARCH_IS_64
|
||||
select BR2_POWERPC_CPU_HAS_ALTIVEC
|
||||
config BR2_powerpc_750
|
||||
bool "750"
|
||||
depends on !BR2_ARCH_IS_64
|
||||
|
@ -1,7 +1,7 @@
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_sh
|
||||
default BR2_sh4
|
||||
depends on BR2_sh
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_sparc || BR2_sparc64
|
||||
default BR2_sparc_v8 if BR2_sparc
|
||||
default BR2_sparc_v9 if BR2_sparc64
|
||||
depends on BR2_sparc || BR2_sparc64
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
|
@ -20,8 +20,8 @@ config BR2_X86_CPU_HAS_AVX2
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
default BR2_x86_i586 if BR2_i386
|
||||
depends on BR2_i386 || BR2_x86_64
|
||||
help
|
||||
Specific CPU variant to use
|
||||
|
||||
@ -50,35 +50,35 @@ config BR2_x86_pentiumpro
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_pentium_mmx
|
||||
bool "pentium MMX"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_pentium_m
|
||||
bool "pentium mobile"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_pentium2
|
||||
bool "pentium2"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_pentium3
|
||||
bool "pentium3"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_pentium4
|
||||
bool "pentium4"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_prescott
|
||||
bool "prescott"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_nocona
|
||||
bool "nocona"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@ -129,23 +129,32 @@ config BR2_x86_atom
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
config BR2_x86_k6
|
||||
bool "k6"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_k6_2
|
||||
bool "k6-2"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_athlon
|
||||
bool "athlon"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_athlon_4
|
||||
bool "athlon-4"
|
||||
config BR2_x86_silvermont
|
||||
bool "silvermont"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
config BR2_x86_k6
|
||||
bool "k6"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_k6_2
|
||||
bool "k6-2"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_athlon
|
||||
bool "athlon"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_athlon_4
|
||||
bool "athlon-4"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
config BR2_x86_opteron
|
||||
bool "opteron"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@ -189,21 +198,21 @@ config BR2_x86_geode
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_c3
|
||||
bool "Via/Cyrix C3 (Samuel/Ezra cores)"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_c32
|
||||
bool "Via C3-2 (Nehemiah cores)"
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
depends on !BR2_x86_64
|
||||
config BR2_x86_winchip_c6
|
||||
bool "IDT Winchip C6"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
config BR2_x86_winchip2
|
||||
bool "IDT Winchip 2"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
endchoice
|
||||
|
||||
config BR2_ARCH
|
||||
@ -229,6 +238,7 @@ config BR2_ARCH
|
||||
default "i686" if BR2_x86_corei7_avx && BR2_i386
|
||||
default "i686" if BR2_x86_corei7_avx2 && BR2_i386
|
||||
default "i686" if BR2_x86_atom && BR2_i386
|
||||
default "i686" if BR2_x86_silvermont && BR2_i386
|
||||
default "i686" if BR2_x86_opteron && BR2_i386
|
||||
default "i686" if BR2_x86_opteron_sse3 && BR2_i386
|
||||
default "i686" if BR2_x86_barcelona && BR2_i386
|
||||
@ -261,6 +271,7 @@ config BR2_GCC_TARGET_ARCH
|
||||
default "corei7-avx" if BR2_x86_corei7_avx
|
||||
default "core-avx2" if BR2_x86_core_avx2
|
||||
default "atom" if BR2_x86_atom
|
||||
default "silvermont" if BR2_x86_silvermont
|
||||
default "k8" if BR2_x86_opteron
|
||||
default "k8-sse3" if BR2_x86_opteron_sse3
|
||||
default "barcelona" if BR2_x86_barcelona
|
||||
|
@ -1,15 +1,15 @@
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
depends on BR2_xtensa
|
||||
default BR2_xtensa_fsf
|
||||
depends on BR2_xtensa
|
||||
|
||||
config BR2_XTENSA_CUSTOM
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
bool "Custom Xtensa processor configuration"
|
||||
select BR2_ARCH_HAS_MMU_OPTIONAL
|
||||
|
||||
config BR2_xtensa_fsf
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
bool "fsf - Default configuration"
|
||||
select BR2_ARCH_HAS_MMU_MANDATORY
|
||||
|
||||
endchoice
|
||||
|
||||
@ -20,18 +20,18 @@ config BR2_XTENSA_OVERLAY_FILE
|
||||
Enter the path to the overlay tarball for a custom processor
|
||||
configuration.
|
||||
|
||||
These overlay files are tar packages with updated configuration
|
||||
files for various toolchain packages and Xtensa processor
|
||||
configurations. They are provided by the processor vendor or
|
||||
directly from Tensilica.
|
||||
These overlay files are tar packages with updated
|
||||
configuration files for various toolchain packages and Xtensa
|
||||
processor configurations. They are provided by the processor
|
||||
vendor or directly from Tensilica.
|
||||
|
||||
The path can be either absolute, or relative to the top directory
|
||||
of buildroot.
|
||||
The path can be either absolute, or relative to the top
|
||||
directory of buildroot.
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Endianness"
|
||||
depends on BR2_XTENSA_CUSTOM
|
||||
default BR2_XTENSA_LITTLE_ENDIAN
|
||||
depends on BR2_XTENSA_CUSTOM
|
||||
|
||||
config BR2_XTENSA_LITTLE_ENDIAN
|
||||
bool "Little endian"
|
||||
|
@ -12,7 +12,7 @@
|
||||
BR_ARCH_XTENSA_OVERLAY_FILE = $(call qstrip,$(BR2_XTENSA_OVERLAY_FILE))
|
||||
ifneq ($(filter http://% https://% ftp://% scp://%,$(BR_ARCH_XTENSA_OVERLAY_FILE)),)
|
||||
ARCH_XTENSA_OVERLAY_URL = $(BR_ARCH_XTENSA_OVERLAY_FILE)
|
||||
ARCH_XTENSA_OVERLAY_FILE = $(DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE))
|
||||
ARCH_XTENSA_OVERLAY_FILE = $($(PKG)_DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE))
|
||||
# Do not check that file, we can't know its hash
|
||||
BR_NO_CHECK_HASH_FOR += $(notdir $(ARCH_XTENSA_OVERLAY_URL))
|
||||
else
|
||||
|
@ -1 +0,0 @@
|
||||
bananapi
|
1
board/bananapim1/overlay/etc/board
Normal file
1
board/bananapim1/overlay/etc/board
Normal file
@ -0,0 +1 @@
|
||||
bananapim1
|
@ -1,40 +1,40 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Busybox version: 1.26.2
|
||||
# Sun Jul 9 17:42:36 2017
|
||||
# Busybox version: 1.29.2
|
||||
# Wed Nov 14 23:22:52 2018
|
||||
#
|
||||
CONFIG_HAVE_DOT_CONFIG=y
|
||||
|
||||
#
|
||||
# Busybox Settings
|
||||
# Settings
|
||||
#
|
||||
CONFIG_DESKTOP=y
|
||||
# CONFIG_EXTRA_COMPAT is not set
|
||||
# CONFIG_FEDORA_COMPAT is not set
|
||||
CONFIG_INCLUDE_SUSv2=y
|
||||
# CONFIG_USE_PORTABLE_CODE is not set
|
||||
CONFIG_PLATFORM_LINUX=y
|
||||
CONFIG_LONG_OPTS=y
|
||||
CONFIG_SHOW_USAGE=y
|
||||
CONFIG_FEATURE_VERBOSE_USAGE=y
|
||||
# CONFIG_FEATURE_COMPRESS_USAGE is not set
|
||||
CONFIG_BUSYBOX=y
|
||||
CONFIG_FEATURE_INSTALLER=y
|
||||
# CONFIG_INSTALL_NO_USR is not set
|
||||
CONFIG_LFS=y
|
||||
# CONFIG_PAM is not set
|
||||
CONFIG_LONG_OPTS=y
|
||||
CONFIG_FEATURE_DEVPTS=y
|
||||
CONFIG_FEATURE_CLEAN_UP=y
|
||||
CONFIG_FEATURE_UTMP=y
|
||||
CONFIG_FEATURE_WTMP=y
|
||||
# CONFIG_FEATURE_PIDFILE is not set
|
||||
CONFIG_PID_FILE_PATH=""
|
||||
CONFIG_BUSYBOX=y
|
||||
CONFIG_FEATURE_INSTALLER=y
|
||||
# CONFIG_INSTALL_NO_USR is not set
|
||||
CONFIG_FEATURE_SUID=y
|
||||
# CONFIG_FEATURE_SUID_CONFIG is not set
|
||||
# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
|
||||
# CONFIG_SELINUX is not set
|
||||
# CONFIG_FEATURE_PREFER_APPLETS is not set
|
||||
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
|
||||
# CONFIG_SELINUX is not set
|
||||
# CONFIG_FEATURE_CLEAN_UP is not set
|
||||
CONFIG_FEATURE_SYSLOG=y
|
||||
# CONFIG_FEATURE_HAVE_RPC is not set
|
||||
CONFIG_PLATFORM_LINUX=y
|
||||
|
||||
#
|
||||
# Build Options
|
||||
@ -43,14 +43,16 @@ CONFIG_FEATURE_SYSLOG=y
|
||||
# CONFIG_PIE is not set
|
||||
# CONFIG_NOMMU is not set
|
||||
# CONFIG_BUILD_LIBBUSYBOX is not set
|
||||
# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set
|
||||
# CONFIG_FEATURE_INDIVIDUAL is not set
|
||||
# CONFIG_FEATURE_SHARED_BUSYBOX is not set
|
||||
CONFIG_LFS=y
|
||||
CONFIG_CROSS_COMPILER_PREFIX=""
|
||||
CONFIG_SYSROOT=""
|
||||
CONFIG_EXTRA_CFLAGS=""
|
||||
CONFIG_EXTRA_LDFLAGS=""
|
||||
CONFIG_EXTRA_LDLIBS=""
|
||||
# CONFIG_USE_PORTABLE_CODE is not set
|
||||
CONFIG_STACK_OPTIMIZATION_386=y
|
||||
|
||||
#
|
||||
# Installation Options ("make install" behavior)
|
||||
@ -77,7 +79,7 @@ CONFIG_NO_DEBUG_LIB=y
|
||||
# CONFIG_EFENCE is not set
|
||||
|
||||
#
|
||||
# Busybox Library Tuning
|
||||
# Library Tuning
|
||||
#
|
||||
# CONFIG_FEATURE_USE_BSS_TAIL is not set
|
||||
CONFIG_FEATURE_RTMINMAX=y
|
||||
@ -89,7 +91,7 @@ CONFIG_MD5_SMALL=1
|
||||
CONFIG_SHA3_SMALL=1
|
||||
# CONFIG_FEATURE_FAST_TOP is not set
|
||||
# CONFIG_FEATURE_ETC_NETWORKS is not set
|
||||
CONFIG_FEATURE_USE_TERMIOS=y
|
||||
# CONFIG_FEATURE_ETC_SERVICES is not set
|
||||
CONFIG_FEATURE_EDITING=y
|
||||
CONFIG_FEATURE_EDITING_MAX_LEN=1024
|
||||
CONFIG_FEATURE_EDITING_VI=y
|
||||
@ -100,6 +102,7 @@ CONFIG_FEATURE_REVERSE_SEARCH=y
|
||||
CONFIG_FEATURE_TAB_COMPLETION=y
|
||||
# CONFIG_FEATURE_USERNAME_COMPLETION is not set
|
||||
CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
|
||||
CONFIG_FEATURE_EDITING_WINCH=y
|
||||
# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
|
||||
# CONFIG_LOCALE_SUPPORT is not set
|
||||
# CONFIG_UNICODE_SUPPORT is not set
|
||||
@ -145,11 +148,12 @@ CONFIG_BZCAT=y
|
||||
# CONFIG_UNLZMA is not set
|
||||
CONFIG_LZCAT=y
|
||||
# CONFIG_LZMA is not set
|
||||
# CONFIG_FEATURE_LZMA_FAST is not set
|
||||
# CONFIG_UNXZ is not set
|
||||
CONFIG_XZCAT=y
|
||||
# CONFIG_XZ is not set
|
||||
# CONFIG_BZIP2 is not set
|
||||
CONFIG_BZIP2_SMALL=0
|
||||
CONFIG_FEATURE_BZIP2_DECOMPRESS=y
|
||||
# CONFIG_CPIO is not set
|
||||
# CONFIG_FEATURE_CPIO_O is not set
|
||||
# CONFIG_FEATURE_CPIO_P is not set
|
||||
@ -159,33 +163,39 @@ CONFIG_XZCAT=y
|
||||
# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
|
||||
CONFIG_GZIP_FAST=0
|
||||
# CONFIG_FEATURE_GZIP_LEVELS is not set
|
||||
CONFIG_FEATURE_GZIP_DECOMPRESS=y
|
||||
# CONFIG_LZOP is not set
|
||||
CONFIG_UNLZOP=y
|
||||
CONFIG_LZOPCAT=y
|
||||
# CONFIG_LZOP_COMPR_HIGH is not set
|
||||
# CONFIG_RPM2CPIO is not set
|
||||
# CONFIG_RPM is not set
|
||||
# CONFIG_RPM2CPIO is not set
|
||||
# CONFIG_TAR is not set
|
||||
# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_TAR_CREATE is not set
|
||||
# CONFIG_FEATURE_TAR_AUTODETECT is not set
|
||||
# CONFIG_FEATURE_TAR_FROM is not set
|
||||
# CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
|
||||
# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
|
||||
# CONFIG_FEATURE_TAR_GNU_EXTENSIONS is not set
|
||||
# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_TAR_TO_COMMAND is not set
|
||||
# CONFIG_FEATURE_TAR_UNAME_GNAME is not set
|
||||
# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set
|
||||
# CONFIG_FEATURE_TAR_SELINUX is not set
|
||||
# CONFIG_UNZIP is not set
|
||||
# CONFIG_FEATURE_UNZIP_CDF is not set
|
||||
# CONFIG_FEATURE_UNZIP_BZIP2 is not set
|
||||
# CONFIG_FEATURE_UNZIP_LZMA is not set
|
||||
# CONFIG_FEATURE_UNZIP_XZ is not set
|
||||
# CONFIG_FEATURE_LZMA_FAST is not set
|
||||
|
||||
#
|
||||
# Coreutils
|
||||
#
|
||||
CONFIG_BASENAME=y
|
||||
# CONFIG_CAL is not set
|
||||
CONFIG_CAT=y
|
||||
CONFIG_CATV=y
|
||||
CONFIG_FEATURE_CATN=y
|
||||
CONFIG_FEATURE_CATV=y
|
||||
CONFIG_CHGRP=y
|
||||
CONFIG_CHMOD=y
|
||||
CONFIG_CHOWN=y
|
||||
@ -215,13 +225,11 @@ CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
|
||||
CONFIG_ECHO=y
|
||||
CONFIG_FEATURE_FANCY_ECHO=y
|
||||
CONFIG_ENV=y
|
||||
# CONFIG_FEATURE_ENV_LONG_OPTIONS is not set
|
||||
# CONFIG_EXPAND is not set
|
||||
# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set
|
||||
# CONFIG_UNEXPAND is not set
|
||||
# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set
|
||||
CONFIG_EXPR=y
|
||||
CONFIG_EXPR_MATH_SUPPORT_64=y
|
||||
CONFIG_FACTOR=y
|
||||
CONFIG_FALSE=y
|
||||
CONFIG_FOLD=y
|
||||
# CONFIG_FSYNC is not set
|
||||
@ -232,12 +240,14 @@ CONFIG_ID=y
|
||||
# CONFIG_GROUPS is not set
|
||||
CONFIG_INSTALL=y
|
||||
CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y
|
||||
CONFIG_LINK=y
|
||||
CONFIG_LN=y
|
||||
CONFIG_LOGNAME=y
|
||||
CONFIG_LS=y
|
||||
CONFIG_FEATURE_LS_FILETYPES=y
|
||||
CONFIG_FEATURE_LS_FOLLOWLINKS=y
|
||||
CONFIG_FEATURE_LS_RECURSIVE=y
|
||||
CONFIG_FEATURE_LS_WIDTH=y
|
||||
CONFIG_FEATURE_LS_SORTFILES=y
|
||||
CONFIG_FEATURE_LS_TIMESTAMPS=y
|
||||
CONFIG_FEATURE_LS_USERNAME=y
|
||||
@ -254,14 +264,16 @@ CONFIG_SHA3SUM=y
|
||||
#
|
||||
CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
|
||||
CONFIG_MKDIR=y
|
||||
CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
|
||||
CONFIG_MKFIFO=y
|
||||
CONFIG_MKNOD=y
|
||||
# CONFIG_MKTEMP is not set
|
||||
CONFIG_MV=y
|
||||
CONFIG_FEATURE_MV_LONG_OPTIONS=y
|
||||
CONFIG_NICE=y
|
||||
CONFIG_NL=y
|
||||
CONFIG_NOHUP=y
|
||||
CONFIG_NPROC=y
|
||||
CONFIG_OD=y
|
||||
CONFIG_PASTE=y
|
||||
CONFIG_PRINTENV=y
|
||||
CONFIG_PRINTF=y
|
||||
CONFIG_PWD=y
|
||||
@ -270,14 +282,15 @@ CONFIG_FEATURE_READLINK_FOLLOW=y
|
||||
CONFIG_REALPATH=y
|
||||
CONFIG_RM=y
|
||||
CONFIG_RMDIR=y
|
||||
# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
|
||||
CONFIG_SEQ=y
|
||||
CONFIG_SHRED=y
|
||||
# CONFIG_SHUF is not set
|
||||
CONFIG_SLEEP=y
|
||||
# CONFIG_FEATURE_FANCY_SLEEP is not set
|
||||
# CONFIG_FEATURE_FLOAT_SLEEP is not set
|
||||
CONFIG_SORT=y
|
||||
CONFIG_FEATURE_SORT_BIG=y
|
||||
# CONFIG_FEATURE_SORT_OPTIMIZE_MEMORY is not set
|
||||
# CONFIG_SPLIT is not set
|
||||
# CONFIG_FEATURE_SPLIT_FANCY is not set
|
||||
CONFIG_STAT=y
|
||||
@ -296,6 +309,7 @@ CONFIG_TEST=y
|
||||
CONFIG_TEST1=y
|
||||
CONFIG_TEST2=y
|
||||
CONFIG_FEATURE_TEST_64=y
|
||||
CONFIG_TIMEOUT=y
|
||||
CONFIG_TOUCH=y
|
||||
# CONFIG_FEATURE_TOUCH_NODEREF is not set
|
||||
CONFIG_FEATURE_TOUCH_SUSV3=y
|
||||
@ -307,6 +321,7 @@ CONFIG_TRUNCATE=y
|
||||
CONFIG_TTY=y
|
||||
CONFIG_UNAME=y
|
||||
CONFIG_UNAME_OSNAME="GNU/Linux"
|
||||
CONFIG_BB_ARCH=y
|
||||
CONFIG_UNIQ=y
|
||||
CONFIG_UNLINK=y
|
||||
CONFIG_USLEEP=y
|
||||
@ -317,6 +332,7 @@ CONFIG_WC=y
|
||||
# CONFIG_FEATURE_WC_LARGE is not set
|
||||
CONFIG_WHOAMI=y
|
||||
CONFIG_WHO=y
|
||||
CONFIG_W=y
|
||||
# CONFIG_USERS is not set
|
||||
CONFIG_YES=y
|
||||
|
||||
@ -330,11 +346,6 @@ CONFIG_FEATURE_VERBOSE=y
|
||||
#
|
||||
CONFIG_FEATURE_PRESERVE_HARDLINKS=y
|
||||
|
||||
#
|
||||
# Common options for ls, more and telnet
|
||||
#
|
||||
CONFIG_FEATURE_AUTOWIDTH=y
|
||||
|
||||
#
|
||||
# Common options for df, du, ls
|
||||
#
|
||||
@ -369,16 +380,23 @@ CONFIG_RESET=y
|
||||
#
|
||||
# Debian Utilities
|
||||
#
|
||||
# CONFIG_MKTEMP is not set
|
||||
# CONFIG_PIPE_PROGRESS is not set
|
||||
# CONFIG_RUN_PARTS is not set
|
||||
# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
|
||||
CONFIG_START_STOP_DAEMON=y
|
||||
CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
|
||||
CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
|
||||
CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
|
||||
CONFIG_WHICH=y
|
||||
|
||||
#
|
||||
# klibc-utils
|
||||
#
|
||||
# CONFIG_MINIPS is not set
|
||||
CONFIG_NUKE=y
|
||||
CONFIG_RESUME=y
|
||||
CONFIG_RUN_INIT=y
|
||||
|
||||
#
|
||||
# Editors
|
||||
#
|
||||
@ -448,6 +466,8 @@ CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
|
||||
CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
|
||||
CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
|
||||
CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y
|
||||
CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL=y
|
||||
CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE=y
|
||||
|
||||
#
|
||||
# Init Utilities
|
||||
@ -458,6 +478,7 @@ CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y
|
||||
CONFIG_HALT=y
|
||||
CONFIG_POWEROFF=y
|
||||
CONFIG_REBOOT=y
|
||||
CONFIG_FEATURE_WAIT_FOR_INIT=y
|
||||
# CONFIG_FEATURE_CALL_TELINIT is not set
|
||||
CONFIG_TELINIT_PATH=""
|
||||
CONFIG_INIT=y
|
||||
@ -467,12 +488,10 @@ CONFIG_FEATURE_KILL_REMOVED=y
|
||||
CONFIG_FEATURE_KILL_DELAY=0
|
||||
CONFIG_FEATURE_INIT_SCTTY=y
|
||||
CONFIG_FEATURE_INIT_SYSLOG=y
|
||||
CONFIG_FEATURE_EXTRA_QUIET=y
|
||||
CONFIG_FEATURE_INIT_QUIET=y
|
||||
# CONFIG_FEATURE_INIT_COREDUMPS is not set
|
||||
CONFIG_INIT_TERMINAL_TYPE="linux"
|
||||
CONFIG_FEATURE_INIT_MODIFY_CMDLINE=y
|
||||
CONFIG_MESG=y
|
||||
CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y
|
||||
|
||||
#
|
||||
# Login/Password Management Utilities
|
||||
@ -483,12 +502,10 @@ CONFIG_FEATURE_SHADOWPASSWDS=y
|
||||
CONFIG_USE_BB_CRYPT=y
|
||||
# CONFIG_USE_BB_CRYPT_SHA is not set
|
||||
# CONFIG_ADDGROUP is not set
|
||||
# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
|
||||
# CONFIG_ADD_SHELL is not set
|
||||
# CONFIG_REMOVE_SHELL is not set
|
||||
# CONFIG_ADDUSER is not set
|
||||
# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_CHECK_NAMES is not set
|
||||
CONFIG_LAST_ID=0
|
||||
CONFIG_FIRST_SYSTEM_ID=0
|
||||
@ -507,10 +524,11 @@ CONFIG_LOGIN=y
|
||||
CONFIG_FEATURE_NOLOGIN=y
|
||||
CONFIG_FEATURE_SECURETTY=y
|
||||
CONFIG_PASSWD=y
|
||||
CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
|
||||
# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
|
||||
# CONFIG_SU is not set
|
||||
# CONFIG_FEATURE_SU_SYSLOG is not set
|
||||
# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
|
||||
# CONFIG_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set
|
||||
# CONFIG_SULOGIN is not set
|
||||
CONFIG_VLOCK=y
|
||||
|
||||
@ -533,21 +551,21 @@ CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
|
||||
# CONFIG_MODINFO is not set
|
||||
CONFIG_MODPROBE=y
|
||||
CONFIG_FEATURE_MODPROBE_BLACKLIST=y
|
||||
# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set
|
||||
# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
|
||||
CONFIG_RMMOD=y
|
||||
|
||||
#
|
||||
# Options common to multiple modutils
|
||||
#
|
||||
CONFIG_FEATURE_CMDLINE_MODULE_OPTIONS=y
|
||||
# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
|
||||
# CONFIG_FEATURE_2_4_MODULES is not set
|
||||
# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
|
||||
# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
|
||||
# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
|
||||
# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
|
||||
# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
|
||||
# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
|
||||
CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
|
||||
# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
|
||||
CONFIG_FEATURE_MODUTILS_ALIAS=y
|
||||
CONFIG_FEATURE_MODUTILS_SYMBOLS=y
|
||||
CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
|
||||
@ -562,8 +580,13 @@ CONFIG_BLKDISCARD=y
|
||||
# CONFIG_BLKID is not set
|
||||
# CONFIG_FEATURE_BLKID_TYPE is not set
|
||||
# CONFIG_BLOCKDEV is not set
|
||||
# CONFIG_CAL is not set
|
||||
# CONFIG_CHRT is not set
|
||||
CONFIG_DMESG=y
|
||||
CONFIG_FEATURE_DMESG_PRETTY=y
|
||||
CONFIG_EJECT=y
|
||||
# CONFIG_FEATURE_EJECT_SCSI is not set
|
||||
CONFIG_FALLOCATE=y
|
||||
CONFIG_FATATTR=y
|
||||
# CONFIG_FBSET is not set
|
||||
# CONFIG_FEATURE_FBSET_FANCY is not set
|
||||
@ -583,17 +606,21 @@ CONFIG_FATATTR=y
|
||||
# CONFIG_FDFLUSH is not set
|
||||
# CONFIG_FREERAMDISK is not set
|
||||
# CONFIG_FSCK_MINIX is not set
|
||||
CONFIG_FSFREEZE=y
|
||||
# CONFIG_FSTRIM is not set
|
||||
# CONFIG_GETOPT is not set
|
||||
# CONFIG_FEATURE_GETOPT_LONG is not set
|
||||
CONFIG_HEXDUMP=y
|
||||
# CONFIG_FEATURE_HEXDUMP_REVERSE is not set
|
||||
# CONFIG_HD is not set
|
||||
CONFIG_XXD=y
|
||||
CONFIG_HWCLOCK=y
|
||||
CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
|
||||
# CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set
|
||||
# CONFIG_IONICE is not set
|
||||
# CONFIG_IPCRM is not set
|
||||
# CONFIG_IPCS is not set
|
||||
# CONFIG_LAST is not set
|
||||
# CONFIG_FEATURE_LAST_FANCY is not set
|
||||
# CONFIG_LOSETUP is not set
|
||||
# CONFIG_LSPCI is not set
|
||||
CONFIG_LSUSB=y
|
||||
@ -603,6 +630,8 @@ CONFIG_LSUSB=y
|
||||
# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set
|
||||
# CONFIG_FEATURE_MDEV_EXEC is not set
|
||||
# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
|
||||
CONFIG_MESG=y
|
||||
CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y
|
||||
CONFIG_MKE2FS=y
|
||||
# CONFIG_MKFS_EXT2 is not set
|
||||
# CONFIG_MKFS_MINIX is not set
|
||||
@ -623,12 +652,13 @@ CONFIG_FEATURE_MOUNT_CIFS=y
|
||||
CONFIG_FEATURE_MOUNT_FLAGS=y
|
||||
CONFIG_FEATURE_MOUNT_FSTAB=y
|
||||
CONFIG_FEATURE_MOUNT_OTHERTAB=y
|
||||
# CONFIG_MOUNTPOINT is not set
|
||||
CONFIG_NSENTER=y
|
||||
CONFIG_FEATURE_NSENTER_LONG_OPTS=y
|
||||
# CONFIG_PIVOT_ROOT is not set
|
||||
# CONFIG_RDATE is not set
|
||||
# CONFIG_RDEV is not set
|
||||
# CONFIG_READPROFILE is not set
|
||||
CONFIG_RENICE=y
|
||||
# CONFIG_REV is not set
|
||||
# CONFIG_RTCWAKE is not set
|
||||
# CONFIG_SCRIPT is not set
|
||||
@ -636,15 +666,24 @@ CONFIG_FEATURE_NSENTER_LONG_OPTS=y
|
||||
# CONFIG_SETARCH is not set
|
||||
CONFIG_LINUX32=y
|
||||
CONFIG_LINUX64=y
|
||||
CONFIG_SETPRIV=y
|
||||
CONFIG_FEATURE_SETPRIV_DUMP=y
|
||||
CONFIG_FEATURE_SETPRIV_CAPABILITIES=y
|
||||
CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES=y
|
||||
# CONFIG_SETSID is not set
|
||||
CONFIG_SWAPON=y
|
||||
# CONFIG_FEATURE_SWAPON_DISCARD is not set
|
||||
# CONFIG_FEATURE_SWAPON_PRI is not set
|
||||
CONFIG_SWAPOFF=y
|
||||
CONFIG_FEATURE_SWAPONOFF_LABEL=y
|
||||
# CONFIG_SWITCH_ROOT is not set
|
||||
# CONFIG_TASKSET is not set
|
||||
# CONFIG_FEATURE_TASKSET_FANCY is not set
|
||||
CONFIG_UEVENT=y
|
||||
CONFIG_UMOUNT=y
|
||||
CONFIG_FEATURE_UMOUNT_ALL=y
|
||||
CONFIG_UNSHARE=y
|
||||
# CONFIG_WALL is not set
|
||||
|
||||
#
|
||||
# Common options for mount/umount
|
||||
@ -652,7 +691,11 @@ CONFIG_UNSHARE=y
|
||||
CONFIG_FEATURE_MOUNT_LOOP=y
|
||||
CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
|
||||
# CONFIG_FEATURE_MTAB_SUPPORT is not set
|
||||
# CONFIG_VOLUMEID is not set
|
||||
CONFIG_VOLUMEID=y
|
||||
|
||||
#
|
||||
# Filesystem/Volume identification
|
||||
#
|
||||
# CONFIG_FEATURE_VOLUMEID_BCACHE is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_BTRFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set
|
||||
@ -663,9 +706,11 @@ CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
|
||||
# CONFIG_FEATURE_VOLUMEID_HFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_ISO9660 is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_JFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_LFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_LUKS is not set
|
||||
CONFIG_FEATURE_VOLUMEID_MINIX=y
|
||||
# CONFIG_FEATURE_VOLUMEID_NILFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_NTFS is not set
|
||||
# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set
|
||||
@ -694,11 +739,11 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0
|
||||
# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
|
||||
# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
|
||||
# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
|
||||
# CONFIG_CHRT is not set
|
||||
# CONFIG_CONSPY is not set
|
||||
CONFIG_CROND=y
|
||||
CONFIG_FEATURE_CROND_D=y
|
||||
# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
|
||||
CONFIG_FEATURE_CROND_SPECIAL_TIMES=y
|
||||
CONFIG_FEATURE_CROND_DIR="/data/etc"
|
||||
CONFIG_CRONTAB=y
|
||||
# CONFIG_DC is not set
|
||||
@ -709,8 +754,6 @@ CONFIG_CRONTAB=y
|
||||
# CONFIG_DEVFSD_VERBOSE is not set
|
||||
# CONFIG_FEATURE_DEVFS is not set
|
||||
# CONFIG_DEVMEM is not set
|
||||
CONFIG_EJECT=y
|
||||
# CONFIG_FEATURE_EJECT_SCSI is not set
|
||||
# CONFIG_FBSPLASH is not set
|
||||
# CONFIG_FLASHCP is not set
|
||||
# CONFIG_FLASH_ERASEALL is not set
|
||||
@ -723,14 +766,12 @@ CONFIG_EJECT=y
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
|
||||
# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
|
||||
CONFIG_HEXEDIT=y
|
||||
CONFIG_I2CGET=y
|
||||
CONFIG_I2CSET=y
|
||||
CONFIG_I2CDUMP=y
|
||||
CONFIG_I2CDETECT=y
|
||||
# CONFIG_INOTIFYD is not set
|
||||
# CONFIG_IONICE is not set
|
||||
# CONFIG_LAST is not set
|
||||
# CONFIG_FEATURE_LAST_FANCY is not set
|
||||
CONFIG_LESS=y
|
||||
CONFIG_FEATURE_LESS_MAXLINES=9999999
|
||||
CONFIG_FEATURE_LESS_BRACKETS=y
|
||||
@ -742,27 +783,27 @@ CONFIG_FEATURE_LESS_REGEXP=y
|
||||
# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set
|
||||
# CONFIG_FEATURE_LESS_DASHCMD is not set
|
||||
# CONFIG_FEATURE_LESS_LINENUMS is not set
|
||||
# CONFIG_FEATURE_LESS_RAW is not set
|
||||
# CONFIG_FEATURE_LESS_ENV is not set
|
||||
CONFIG_LSSCSI=y
|
||||
CONFIG_MAKEDEVS=y
|
||||
# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
|
||||
CONFIG_FEATURE_MAKEDEVS_TABLE=y
|
||||
# CONFIG_MAN is not set
|
||||
# CONFIG_MICROCOM is not set
|
||||
# CONFIG_MOUNTPOINT is not set
|
||||
# CONFIG_MT is not set
|
||||
# CONFIG_NANDWRITE is not set
|
||||
# CONFIG_NANDDUMP is not set
|
||||
CONFIG_PARTPROBE=y
|
||||
# CONFIG_RAIDAUTORUN is not set
|
||||
# CONFIG_READAHEAD is not set
|
||||
# CONFIG_RFKILL is not set
|
||||
# CONFIG_RUNLEVEL is not set
|
||||
# CONFIG_RX is not set
|
||||
CONFIG_SETFATTR=y
|
||||
# CONFIG_SETSERIAL is not set
|
||||
# CONFIG_SETSID is not set
|
||||
# CONFIG_STRINGS is not set
|
||||
# CONFIG_TASKSET is not set
|
||||
# CONFIG_FEATURE_TASKSET_FANCY is not set
|
||||
CONFIG_TIME=y
|
||||
CONFIG_TIMEOUT=y
|
||||
# CONFIG_TTYSIZE is not set
|
||||
CONFIG_UBIRENAME=y
|
||||
# CONFIG_UBIATTACH is not set
|
||||
@ -772,7 +813,6 @@ CONFIG_UBIRENAME=y
|
||||
# CONFIG_UBIRSVOL is not set
|
||||
# CONFIG_UBIUPDATEVOL is not set
|
||||
# CONFIG_VOLNAME is not set
|
||||
# CONFIG_WALL is not set
|
||||
CONFIG_WATCHDOG=y
|
||||
|
||||
#
|
||||
@ -849,13 +889,14 @@ CONFIG_FEATURE_IP_RULE=y
|
||||
CONFIG_FEATURE_IP_NEIGH=y
|
||||
# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
|
||||
# CONFIG_IPCALC is not set
|
||||
# CONFIG_FEATURE_IPCALC_FANCY is not set
|
||||
# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_IPCALC_FANCY is not set
|
||||
# CONFIG_FAKEIDENTD is not set
|
||||
CONFIG_NAMEIF=y
|
||||
# CONFIG_FEATURE_NAMEIF_EXTENDED is not set
|
||||
# CONFIG_NBDCLIENT is not set
|
||||
# CONFIG_NC is not set
|
||||
# CONFIG_NETCAT is not set
|
||||
# CONFIG_NC_SERVER is not set
|
||||
# CONFIG_NC_EXTRA is not set
|
||||
# CONFIG_NC_110_COMPAT is not set
|
||||
@ -863,6 +904,8 @@ CONFIG_NETSTAT=y
|
||||
# CONFIG_FEATURE_NETSTAT_WIDE is not set
|
||||
# CONFIG_FEATURE_NETSTAT_PRG is not set
|
||||
CONFIG_NSLOOKUP=y
|
||||
CONFIG_FEATURE_NSLOOKUP_BIG=y
|
||||
CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS=y
|
||||
# CONFIG_NTPD is not set
|
||||
# CONFIG_FEATURE_NTPD_SERVER is not set
|
||||
# CONFIG_FEATURE_NTPD_CONF is not set
|
||||
@ -872,21 +915,26 @@ CONFIG_FEATURE_FANCY_PING=y
|
||||
# CONFIG_PSCAN is not set
|
||||
CONFIG_ROUTE=y
|
||||
# CONFIG_SLATTACH is not set
|
||||
CONFIG_SSL_CLIENT=y
|
||||
CONFIG_TC=y
|
||||
CONFIG_FEATURE_TC_INGRESS=y
|
||||
# CONFIG_TCPSVD is not set
|
||||
# CONFIG_UDPSVD is not set
|
||||
# CONFIG_TELNET is not set
|
||||
# CONFIG_FEATURE_TELNET_TTYPE is not set
|
||||
# CONFIG_FEATURE_TELNET_AUTOLOGIN is not set
|
||||
# CONFIG_FEATURE_TELNET_WIDTH is not set
|
||||
# CONFIG_TELNETD is not set
|
||||
# CONFIG_FEATURE_TELNETD_STANDALONE is not set
|
||||
# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
|
||||
# CONFIG_TFTP is not set
|
||||
# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
|
||||
# CONFIG_TFTPD is not set
|
||||
# CONFIG_FEATURE_TFTP_GET is not set
|
||||
# CONFIG_FEATURE_TFTP_PUT is not set
|
||||
# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
|
||||
# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
|
||||
# CONFIG_TFTP_DEBUG is not set
|
||||
CONFIG_TLS=y
|
||||
CONFIG_TRACEROUTE=y
|
||||
# CONFIG_TRACEROUTE6 is not set
|
||||
# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set
|
||||
@ -895,30 +943,34 @@ CONFIG_TRACEROUTE=y
|
||||
# CONFIG_FEATURE_TUNCTL_UG is not set
|
||||
# CONFIG_VCONFIG is not set
|
||||
# CONFIG_WGET is not set
|
||||
# CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_WGET_STATUSBAR is not set
|
||||
# CONFIG_FEATURE_WGET_AUTHENTICATION is not set
|
||||
# CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
|
||||
# CONFIG_FEATURE_WGET_TIMEOUT is not set
|
||||
# CONFIG_FEATURE_WGET_HTTPS is not set
|
||||
# CONFIG_FEATURE_WGET_OPENSSL is not set
|
||||
# CONFIG_FEATURE_WGET_SSL_HELPER is not set
|
||||
# CONFIG_WHOIS is not set
|
||||
# CONFIG_ZCIP is not set
|
||||
# CONFIG_UDHCPC6 is not set
|
||||
# CONFIG_UDHCPD is not set
|
||||
# CONFIG_DHCPRELAY is not set
|
||||
# CONFIG_DUMPLEASES is not set
|
||||
# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
|
||||
# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
|
||||
# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
|
||||
CONFIG_DHCPD_LEASES_FILE=""
|
||||
# CONFIG_DUMPLEASES is not set
|
||||
# CONFIG_DHCPRELAY is not set
|
||||
# CONFIG_UDHCPC is not set
|
||||
# CONFIG_FEATURE_UDHCPC_ARPING is not set
|
||||
# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set
|
||||
CONFIG_UDHCPC_DEFAULT_SCRIPT=""
|
||||
# CONFIG_UDHCPC6 is not set
|
||||
# CONFIG_FEATURE_UDHCPC6_RFC3646 is not set
|
||||
# CONFIG_FEATURE_UDHCPC6_RFC4704 is not set
|
||||
# CONFIG_FEATURE_UDHCPC6_RFC4833 is not set
|
||||
# CONFIG_FEATURE_UDHCPC6_RFC5970 is not set
|
||||
# CONFIG_FEATURE_UDHCP_PORT is not set
|
||||
CONFIG_UDHCP_DEBUG=0
|
||||
CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0
|
||||
# CONFIG_FEATURE_UDHCP_RFC3397 is not set
|
||||
# CONFIG_FEATURE_UDHCP_8021Q is not set
|
||||
CONFIG_UDHCPC_DEFAULT_SCRIPT=""
|
||||
CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0
|
||||
CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
|
||||
|
||||
#
|
||||
@ -958,18 +1010,19 @@ CONFIG_FEATURE_PIDOF_SINGLE=y
|
||||
CONFIG_FEATURE_PIDOF_OMIT=y
|
||||
# CONFIG_PMAP is not set
|
||||
# CONFIG_POWERTOP is not set
|
||||
# CONFIG_FEATURE_POWERTOP_INTERACTIVE is not set
|
||||
CONFIG_PS=y
|
||||
# CONFIG_FEATURE_PS_WIDE is not set
|
||||
# CONFIG_FEATURE_PS_LONG is not set
|
||||
# CONFIG_FEATURE_PS_TIME is not set
|
||||
# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
|
||||
# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
|
||||
# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
|
||||
# CONFIG_PSTREE is not set
|
||||
# CONFIG_PWDX is not set
|
||||
CONFIG_RENICE=y
|
||||
# CONFIG_SMEMCAP is not set
|
||||
CONFIG_BB_SYSCTL=y
|
||||
CONFIG_TOP=y
|
||||
CONFIG_FEATURE_TOP_INTERACTIVE=y
|
||||
CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
|
||||
CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
|
||||
# CONFIG_FEATURE_TOP_SMP_CPU is not set
|
||||
@ -995,15 +1048,14 @@ CONFIG_WATCH=y
|
||||
# CONFIG_SV is not set
|
||||
CONFIG_SV_DEFAULT_SERVICE_DIR=""
|
||||
CONFIG_SVC=y
|
||||
CONFIG_SVOK=y
|
||||
# CONFIG_SVLOGD is not set
|
||||
# CONFIG_CHCON is not set
|
||||
# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
|
||||
# CONFIG_GETENFORCE is not set
|
||||
# CONFIG_GETSEBOOL is not set
|
||||
# CONFIG_LOAD_POLICY is not set
|
||||
# CONFIG_MATCHPATHCON is not set
|
||||
# CONFIG_RUNCON is not set
|
||||
# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
|
||||
# CONFIG_SELINUXENABLED is not set
|
||||
# CONFIG_SESTATUS is not set
|
||||
# CONFIG_SETENFORCE is not set
|
||||
@ -1024,24 +1076,27 @@ CONFIG_BASH_IS_NONE=y
|
||||
# CONFIG_ASH is not set
|
||||
# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set
|
||||
CONFIG_ASH_INTERNAL_GLOB=y
|
||||
# CONFIG_ASH_RANDOM_SUPPORT is not set
|
||||
# CONFIG_ASH_EXPAND_PRMT is not set
|
||||
# CONFIG_ASH_BASH_COMPAT is not set
|
||||
# CONFIG_ASH_IDLE_TIMEOUT is not set
|
||||
# CONFIG_ASH_BASH_SOURCE_CURDIR is not set
|
||||
# CONFIG_ASH_BASH_NOT_FOUND_HOOK is not set
|
||||
# CONFIG_ASH_JOB_CONTROL is not set
|
||||
# CONFIG_ASH_ALIAS is not set
|
||||
# CONFIG_ASH_GETOPTS is not set
|
||||
# CONFIG_ASH_BUILTIN_ECHO is not set
|
||||
# CONFIG_ASH_BUILTIN_PRINTF is not set
|
||||
# CONFIG_ASH_BUILTIN_TEST is not set
|
||||
# CONFIG_ASH_HELP is not set
|
||||
# CONFIG_ASH_CMDCMD is not set
|
||||
# CONFIG_ASH_RANDOM_SUPPORT is not set
|
||||
# CONFIG_ASH_EXPAND_PRMT is not set
|
||||
# CONFIG_ASH_IDLE_TIMEOUT is not set
|
||||
# CONFIG_ASH_MAIL is not set
|
||||
CONFIG_ASH_ECHO=y
|
||||
CONFIG_ASH_PRINTF=y
|
||||
CONFIG_ASH_TEST=y
|
||||
# CONFIG_ASH_HELP is not set
|
||||
# CONFIG_ASH_GETOPTS is not set
|
||||
# CONFIG_ASH_CMDCMD is not set
|
||||
# CONFIG_CTTYHACK is not set
|
||||
# CONFIG_HUSH is not set
|
||||
# CONFIG_HUSH_BASH_COMPAT is not set
|
||||
# CONFIG_HUSH_BRACE_EXPANSION is not set
|
||||
# CONFIG_HUSH_HELP is not set
|
||||
# CONFIG_HUSH_LINENO_VAR is not set
|
||||
# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set
|
||||
# CONFIG_HUSH_INTERACTIVE is not set
|
||||
# CONFIG_HUSH_SAVEHISTORY is not set
|
||||
# CONFIG_HUSH_JOB is not set
|
||||
@ -1052,14 +1107,37 @@ CONFIG_ASH_INTERNAL_GLOB=y
|
||||
# CONFIG_HUSH_FUNCTIONS is not set
|
||||
# CONFIG_HUSH_LOCAL is not set
|
||||
# CONFIG_HUSH_RANDOM_SUPPORT is not set
|
||||
# CONFIG_HUSH_EXPORT_N is not set
|
||||
# CONFIG_HUSH_MODE_X is not set
|
||||
# CONFIG_MSH is not set
|
||||
# CONFIG_HUSH_ECHO is not set
|
||||
# CONFIG_HUSH_PRINTF is not set
|
||||
# CONFIG_HUSH_TEST is not set
|
||||
# CONFIG_HUSH_HELP is not set
|
||||
# CONFIG_HUSH_EXPORT is not set
|
||||
# CONFIG_HUSH_EXPORT_N is not set
|
||||
# CONFIG_HUSH_READONLY is not set
|
||||
# CONFIG_HUSH_KILL is not set
|
||||
# CONFIG_HUSH_WAIT is not set
|
||||
# CONFIG_HUSH_COMMAND is not set
|
||||
# CONFIG_HUSH_TRAP is not set
|
||||
# CONFIG_HUSH_TYPE is not set
|
||||
# CONFIG_HUSH_TIMES is not set
|
||||
# CONFIG_HUSH_READ is not set
|
||||
# CONFIG_HUSH_SET is not set
|
||||
# CONFIG_HUSH_UNSET is not set
|
||||
# CONFIG_HUSH_ULIMIT is not set
|
||||
# CONFIG_HUSH_UMASK is not set
|
||||
# CONFIG_HUSH_GETOPTS is not set
|
||||
# CONFIG_HUSH_MEMLEAK is not set
|
||||
|
||||
#
|
||||
# Options common to all shells
|
||||
#
|
||||
CONFIG_FEATURE_SH_MATH=y
|
||||
CONFIG_FEATURE_SH_MATH_64=y
|
||||
# CONFIG_FEATURE_SH_EXTRA_QUIET is not set
|
||||
# CONFIG_FEATURE_SH_STANDALONE is not set
|
||||
# CONFIG_FEATURE_SH_NOFORK is not set
|
||||
CONFIG_FEATURE_SH_READ_FRAC=y
|
||||
# CONFIG_FEATURE_SH_HISTFILESIZE is not set
|
||||
|
||||
#
|
||||
|
@ -2,26 +2,26 @@
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
|
||||
msg_begin "Detecting disk device"
|
||||
root_dev=$(cat /proc/cmdline | grep -oE 'root=[/a-z0-9]+' | cut -d '=' -f 2)
|
||||
if [[ "$root_dev" =~ ^([/a-z0-9]+)(p[0-9])$ ]]; then # e.g. /dev/mmcblk0p2
|
||||
disk_dev=${BASH_REMATCH[1]}
|
||||
boot_dev=${disk_dev}p1
|
||||
data_dev=${disk_dev}p3
|
||||
elif [[ "$root_dev" =~ ^([/a-z0-9]+)([0-9])$ ]]; then # e.g. /dev/sdc2
|
||||
disk_dev=${BASH_REMATCH[1]}
|
||||
boot_dev=${disk_dev}1
|
||||
data_dev=${disk_dev}3
|
||||
else
|
||||
msg_fail "unknown ($root_dev)"
|
||||
exit 1
|
||||
fi
|
||||
msg_done "$disk_dev"
|
||||
|
||||
test -b $data_dev && exit 0
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
msg_begin "Detecting disk device"
|
||||
root_dev=$(cat /proc/cmdline | grep -oE 'root=[/a-z0-9]+' | cut -d '=' -f 2)
|
||||
if [[ "$root_dev" =~ ^([/a-z0-9]+)(p[0-9])$ ]]; then # e.g. /dev/mmcblk0p2
|
||||
disk_dev=${BASH_REMATCH[1]}
|
||||
boot_dev=${disk_dev}p1
|
||||
data_dev=${disk_dev}p3
|
||||
elif [[ "$root_dev" =~ ^([/a-z0-9]+)([0-9])$ ]]; then # e.g. /dev/sdc2
|
||||
disk_dev=${BASH_REMATCH[1]}
|
||||
boot_dev=${disk_dev}1
|
||||
data_dev=${disk_dev}3
|
||||
else
|
||||
msg_fail "unknown ($root_dev)"
|
||||
exit 1
|
||||
fi
|
||||
msg_done "$disk_dev"
|
||||
|
||||
test -b $data_dev && exit 0
|
||||
|
||||
msg_begin "Creating data partition"
|
||||
root_end=$(partx -s -g -o END $root_dev)
|
||||
data_start=$(($root_end + 1))
|
||||
@ -68,5 +68,3 @@ case "$1" in
|
||||
exit 1
|
||||
esac
|
||||
|
||||
# always exit with a successful status
|
||||
exit 0
|
||||
|
@ -6,7 +6,7 @@ mount_fs() {
|
||||
msg_begin "Mounting filesystems"
|
||||
/bin/mount -T /etc/fstab.disk -a &&
|
||||
/bin/mount -T /etc/fstab.extra -a &&
|
||||
if [ -r /data/etc/fstab.user ]; then /bin/mount -T /data/etc/fstab.user -a; fi
|
||||
if [[ -r /data/etc/fstab.user ]]; then /bin/mount -T /data/etc/fstab.user -a; fi
|
||||
|
||||
test $? == 0 && msg_done || msg_fail
|
||||
}
|
||||
@ -29,6 +29,8 @@ mk_tty_login() {
|
||||
case "$1" in
|
||||
start)
|
||||
mount_fs
|
||||
|
||||
# we need to source conf again, now that /data is available
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
test "$os_debug" == "true" && remount_rw
|
||||
mk_tty_login
|
||||
|
@ -9,11 +9,11 @@ case "$1" in
|
||||
start)
|
||||
msg_begin "Loading kernel modules"
|
||||
|
||||
if [ -r $sys_modules_file ]; then
|
||||
if [[ -r $sys_modules_file ]]; then
|
||||
cat $sys_modules_file | while read line; do test -n "$line" && /sbin/modprobe $line &>/dev/null; done
|
||||
fi
|
||||
|
||||
if [ -r $modules_file ]; then
|
||||
if [[ -r $modules_file ]]; then
|
||||
cat $modules_file | while read line; do test -n "$line" && /sbin/modprobe $line &>/dev/null; done
|
||||
fi
|
||||
|
||||
|
@ -10,15 +10,15 @@ case "$1" in
|
||||
start)
|
||||
msg_begin "Setting hostname"
|
||||
|
||||
if ! [ -f $hostname_file ]; then
|
||||
if [ -f $boot_hostname_file ]; then
|
||||
if ! [[ -f $hostname_file ]]; then
|
||||
if [[ -f $boot_hostname_file ]]; then
|
||||
cp $boot_hostname_file $hostname_file
|
||||
elif [ -f $sys_hostname_file ]; then
|
||||
elif [[ -f $sys_hostname_file ]]; then
|
||||
cp $sys_hostname_file $hostname_file
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -f $hostname_file ]; then
|
||||
if [[ -f $hostname_file ]]; then
|
||||
hostname=$(cat $hostname_file)
|
||||
else
|
||||
hostname="$os_prefix-$board_sn"
|
||||
|
@ -16,7 +16,7 @@ test "$hash" == "$sys_hash" && exit 0
|
||||
test -d $post_upgrade_dir || exit 0
|
||||
|
||||
function version_gt() {
|
||||
if [ "$1" != "$2" ] && [ $(echo -e "$2\n$1" | sort -t . | head -n 1) == "$2" ]; then
|
||||
if [[ "$1" != "$2" ]] && [[ $(echo -e "$2\n$1" | sort -t . | head -n 1) == "$2" ]]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
@ -29,7 +29,7 @@ function run_post_upgrade() {
|
||||
|
||||
versions=$(ls -1 $post_upgrade_dir | cut -d '.' -f 1)
|
||||
for v in $versions; do
|
||||
if [ -z "$version" ] || version_gt $v $version; then
|
||||
if [[ -z "$version" ]] || version_gt $v $version; then
|
||||
msg_begin "Post-upgrading to version $v"
|
||||
out=$($post_upgrade_dir/$v.sh 2>&1)
|
||||
test $? == 0 && msg_done || msg_fail
|
||||
|
@ -13,6 +13,7 @@ test -n "$os_version" || source /etc/init.d/base
|
||||
|
||||
start() {
|
||||
mkdir -p /tmp/dbus
|
||||
mkdir -p /var/lib/dbus
|
||||
|
||||
msg_begin "Starting dbus"
|
||||
|
||||
|
@ -14,10 +14,10 @@ link_watch_timeout=20
|
||||
|
||||
test -f $watch_conf && source $watch_conf
|
||||
|
||||
if ! [ -f $conf ]; then
|
||||
if [ -f $boot_conf ]; then
|
||||
if ! [[ -f $conf ]]; then
|
||||
if [[ -f $boot_conf ]]; then
|
||||
cp $boot_conf $conf
|
||||
elif [ -f $sys_conf ]; then
|
||||
elif [[ -f $sys_conf ]]; then
|
||||
cp $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
@ -34,8 +34,8 @@ watch() {
|
||||
while true; do
|
||||
sleep 5
|
||||
if ! running; then
|
||||
logger -t hostapd -s "dead, rebooting"
|
||||
reboot
|
||||
logger -t hostapd -s "dead, calling panic action"
|
||||
panic_action hostapd
|
||||
break
|
||||
fi
|
||||
done
|
||||
@ -49,7 +49,7 @@ start() {
|
||||
while ! ifconfig $iface >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
count=$(($count + 1))
|
||||
if [ $count -ge 5 ]; then
|
||||
if [[ $count -ge 5 ]]; then
|
||||
msg_fail "no device"
|
||||
return 1
|
||||
fi
|
||||
@ -61,7 +61,7 @@ start() {
|
||||
iwconfig $iface power off &> /dev/null
|
||||
$prog $conf &> $log &
|
||||
|
||||
if [ "$link_watch" == "yes" ]; then
|
||||
if [[ "$link_watch" == "yes" ]]; then
|
||||
watch &
|
||||
fi
|
||||
|
||||
|
@ -12,20 +12,20 @@ sys_watch_conf="/etc/watch.conf"
|
||||
boot_watch_conf="/boot/watch.conf"
|
||||
watch_conf="/data/etc/watch.conf"
|
||||
|
||||
if ! [ -f $watch_conf ]; then
|
||||
if [ -f $boot_watch_conf ]; then
|
||||
if ! [[ -f $watch_conf ]]; then
|
||||
if [[ -f $boot_watch_conf ]]; then
|
||||
cp $boot_watch_conf $watch_conf
|
||||
elif [ -f $sys_watch_conf ]; then
|
||||
elif [[ -f $sys_watch_conf ]]; then
|
||||
cp $sys_watch_conf $watch_conf
|
||||
fi
|
||||
fi
|
||||
|
||||
source $watch_conf
|
||||
|
||||
if ! [ -f $conf ]; then
|
||||
if [ -f $boot_conf ]; then
|
||||
if ! [[ -f $conf ]]; then
|
||||
if [[ -f $boot_conf ]]; then
|
||||
cp $boot_conf $conf
|
||||
elif [ -f $sys_conf ]; then
|
||||
elif [[ -f $sys_conf ]]; then
|
||||
cp $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
@ -39,7 +39,6 @@ ssid=$(cat $conf | grep ssid | grep -v scan_ssid | cut -d '"' -f 2)
|
||||
test -n "$ssid" || exit 0
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
test "$os_networkless" == "true" && exit 0
|
||||
|
||||
@ -54,12 +53,12 @@ watch() {
|
||||
if connected; then
|
||||
count=0
|
||||
else
|
||||
if [ $count -lt $link_watch_timeout ]; then
|
||||
if [[ $count -lt $link_watch_timeout ]]; then
|
||||
count=$(($count + 5))
|
||||
logger -t wifi -s "disconnected"
|
||||
else
|
||||
logger -t wifi -s "disconnected for $link_watch_timeout seconds, rebooting"
|
||||
reboot
|
||||
logger -t wifi -s "disconnected for $link_watch_timeout seconds, calling panic action"
|
||||
panic_action wifi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
@ -75,7 +74,7 @@ start() {
|
||||
while ! ifconfig $os_wlan >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
count=$(($count + 1))
|
||||
if [ $count -ge 5 ]; then
|
||||
if [[ $count -ge 5 ]]; then
|
||||
msg_fail "no device"
|
||||
return 1
|
||||
fi
|
||||
@ -94,7 +93,7 @@ start() {
|
||||
break
|
||||
fi
|
||||
|
||||
if [ $count -gt $link_watch_timeout ] || ! pidof wpa_supplicant > /dev/null; then
|
||||
if [[ $count -gt $link_watch_timeout ]] || ! pidof wpa_supplicant > /dev/null; then
|
||||
test -n "$module" && msg_fail "failed ($module)"|| msg_fail
|
||||
return 1
|
||||
fi
|
||||
@ -102,7 +101,7 @@ start() {
|
||||
count=$(($count + 1))
|
||||
done
|
||||
|
||||
if [ "$link_watch" == "true" ]; then
|
||||
if [[ "$link_watch" == "true" ]]; then
|
||||
watch &
|
||||
fi
|
||||
|
||||
|
@ -11,10 +11,10 @@ watch_conf="/data/etc/watch.conf"
|
||||
|
||||
source $watch_conf
|
||||
|
||||
if ! [ -d $conf ]; then
|
||||
if [ -d $boot_conf ]; then
|
||||
if ! [[ -d $conf ]]; then
|
||||
if [[ -d $boot_conf ]]; then
|
||||
cp -r $boot_conf $conf
|
||||
elif [ -d $sys_conf ]; then
|
||||
elif [[ -d $sys_conf ]]; then
|
||||
cp -r $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
@ -23,7 +23,6 @@ test -e $conf/modem || exit 0
|
||||
test -e $conf/apn || exit 0
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
test "$os_networkless" == "true" && exit 0
|
||||
|
||||
@ -38,12 +37,12 @@ watch() {
|
||||
if connected; then
|
||||
count=0
|
||||
else
|
||||
if [ $count -lt $link_watch_timeout ]; then
|
||||
if [[ $count -lt $link_watch_timeout ]]; then
|
||||
count=$(($count + 5))
|
||||
logger -t ppp -s "disconnected"
|
||||
else
|
||||
logger -t ppp -s "disconnected for $link_watch_timeout seconds, rebooting"
|
||||
reboot
|
||||
logger -t ppp -s "disconnected for $link_watch_timeout seconds, calling panic action"
|
||||
panic_action ppp
|
||||
fi
|
||||
fi
|
||||
done
|
||||
@ -65,13 +64,13 @@ start() {
|
||||
|
||||
# wait for modem
|
||||
modem=$(head -n 1 $conf/modem)
|
||||
if ! [ -e /dev/$modem ]; then
|
||||
if ! [[ -e /dev/$modem ]]; then
|
||||
udev_trigger_add 4 &
|
||||
fi
|
||||
|
||||
count=0
|
||||
while true; do
|
||||
if [ -e /dev/$modem ] || [ $count -gt $link_watch_timeout ]; then
|
||||
if [[ -e /dev/$modem ]] || [[ $count -gt $link_watch_timeout ]]; then
|
||||
break
|
||||
fi
|
||||
|
||||
@ -79,7 +78,7 @@ start() {
|
||||
sleep 1
|
||||
done
|
||||
|
||||
if ! [ -e /dev/$modem ]; then
|
||||
if ! [[ -e /dev/$modem ]]; then
|
||||
msg_fail "modem /dev/$modem not present"
|
||||
return
|
||||
fi
|
||||
@ -93,7 +92,7 @@ start() {
|
||||
break
|
||||
fi
|
||||
|
||||
if [ $count -gt $link_watch_timeout ] || ! pidof pppd > /dev/null; then
|
||||
if [[ $count -gt $link_watch_timeout ]] || ! pidof pppd > /dev/null; then
|
||||
msg_fail
|
||||
return
|
||||
fi
|
||||
@ -101,7 +100,7 @@ start() {
|
||||
count=$(($count + 1))
|
||||
done
|
||||
|
||||
if [ "$link_watch" == "true" ]; then
|
||||
if [[ "$link_watch" == "true" ]]; then
|
||||
watch &
|
||||
fi
|
||||
|
||||
|
@ -4,10 +4,10 @@ sys_conf="/etc/bluetooth.conf"
|
||||
boot_conf="/boot/bluetooth.conf"
|
||||
conf="/data/etc/bluetooth.conf"
|
||||
|
||||
if ! [ -f $conf ]; then
|
||||
if [ -f $boot_conf ]; then
|
||||
if ! [[ -f $conf ]]; then
|
||||
if [[ -f $boot_conf ]]; then
|
||||
cp $boot_conf $conf
|
||||
elif [ -f $sys_conf ]; then
|
||||
elif [[ -f $sys_conf ]]; then
|
||||
cp $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
@ -46,10 +46,10 @@ start() {
|
||||
while ! hciconfig $hci &>/dev/null; do
|
||||
sleep 1
|
||||
count=$(($count + 1))
|
||||
if [ $count -ge 10 ]; then
|
||||
if [[ $count -ge 10 ]]; then
|
||||
msg_fail "no device"
|
||||
logger -t bluetooth -s "bluetooth device not available, rebooting"
|
||||
reboot
|
||||
logger -t bluetooth -s "bluetooth device not available, calling panic action"
|
||||
panic_action bluetooth
|
||||
return 1
|
||||
fi
|
||||
done
|
||||
|
@ -11,10 +11,10 @@ link_nego_timeout=10
|
||||
|
||||
source $watch_conf
|
||||
|
||||
if ! [ -f $static_conf ]; then
|
||||
if [ -f $boot_static_conf ]; then
|
||||
if ! [[ -f $static_conf ]]; then
|
||||
if [[ -f $boot_static_conf ]]; then
|
||||
cp $boot_static_conf $static_conf
|
||||
elif [ -f $sys_static_conf ]; then
|
||||
elif [[ -f $sys_static_conf ]]; then
|
||||
cp $sys_static_conf $static_conf
|
||||
fi
|
||||
fi
|
||||
@ -22,21 +22,20 @@ fi
|
||||
test -r $static_conf && source $static_conf
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
watch_eth() {
|
||||
count=0
|
||||
while true; do
|
||||
sleep 5
|
||||
if [ "$(cat /sys/class/net/$os_eth/operstate 2>/dev/null)" == "up" ]; then
|
||||
if [[ "$(cat /sys/class/net/$os_eth/operstate 2>/dev/null)" == "up" ]]; then
|
||||
count=0
|
||||
else
|
||||
if [ $count -lt $link_watch_timeout ]; then
|
||||
if [[ $count -lt $link_watch_timeout ]]; then
|
||||
count=$(($count + 5))
|
||||
logger -t ethernet -s "disconnected"
|
||||
else
|
||||
logger -t ethernet -s "disconnected for $link_watch_timeout seconds, rebooting"
|
||||
reboot
|
||||
logger -t ethernet -s "disconnected for $link_watch_timeout seconds, calling panic action"
|
||||
panic_action network
|
||||
fi
|
||||
fi
|
||||
done
|
||||
@ -50,12 +49,12 @@ watch_ip() {
|
||||
if ip addr show dev $iface | grep inet &>/dev/null; then
|
||||
count=0
|
||||
else
|
||||
if [ $count -lt $ip_watch_timeout ]; then
|
||||
if [[ $count -lt $ip_watch_timeout ]]; then
|
||||
count=$(($count + 5))
|
||||
logger -t network -s "$iface has no IP address"
|
||||
else
|
||||
logger -t network -s "$iface had no IP address for $ip_watch_timeout seconds, rebooting"
|
||||
reboot
|
||||
logger -t network -s "$iface had no IP address for $ip_watch_timeout seconds, calling panic action"
|
||||
panic_action network
|
||||
fi
|
||||
fi
|
||||
done
|
||||
@ -72,16 +71,16 @@ start_wlan() {
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ "$(cat /sys/class/net/$os_wlan/carrier 2>/dev/null)" != "1" ]; then
|
||||
if [[ "$(cat /sys/class/net/$os_wlan/carrier 2>/dev/null)" != "1" ]]; then
|
||||
msg_fail "no link"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ -n "$mtu" ]; then
|
||||
if [[ -n "$mtu" ]]; then
|
||||
ip link set mtu $mtu dev $os_wlan
|
||||
fi
|
||||
|
||||
if [ -n "$static_ip" ]; then
|
||||
if [[ -n "$static_ip" ]]; then
|
||||
msg_done $static_ip
|
||||
ifconfig $os_wlan $static_ip up
|
||||
static_ip="" # won't be used again
|
||||
@ -90,7 +89,7 @@ start_wlan() {
|
||||
dhclient -cf "$dh_conf" $os_wlan
|
||||
fi
|
||||
|
||||
if [ "$ip_watch" == "true" ] && ip addr show dev $os_wlan | grep inet &>/dev/null; then
|
||||
if [[ "$ip_watch" == "true" ]] && ip addr show dev $os_wlan | grep inet &>/dev/null; then
|
||||
watch_ip $os_wlan &
|
||||
fi
|
||||
}
|
||||
@ -104,7 +103,7 @@ start_eth() {
|
||||
while ! ifconfig $os_eth >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
count=$(($count + 1))
|
||||
if [ $count -ge $w ]; then
|
||||
if [[ $count -ge $w ]]; then
|
||||
msg_done "no device"
|
||||
return 1
|
||||
fi
|
||||
@ -116,10 +115,10 @@ start_eth() {
|
||||
# wait for operstate
|
||||
w=3
|
||||
count=0
|
||||
while [ "$(cat /sys/class/net/$os_eth/operstate 2>&1)" == "unknown" ]; do
|
||||
while [[ "$(cat /sys/class/net/$os_eth/operstate 2>&1)" == "unknown" ]]; do
|
||||
sleep 1
|
||||
count=$(($count + 1))
|
||||
if [ $count -ge $w ]; then
|
||||
if [[ $count -ge $w ]]; then
|
||||
msg_done "no link"
|
||||
return 1
|
||||
fi
|
||||
@ -128,20 +127,20 @@ start_eth() {
|
||||
# wait for link
|
||||
test "$link_watch" == "true" || link_nego_timeout=5
|
||||
count=0
|
||||
while [ "$(cat /sys/class/net/$os_eth/carrier 2>&1)" != "1" ]; do
|
||||
while [[ "$(cat /sys/class/net/$os_eth/carrier 2>&1)" != "1" ]]; do
|
||||
sleep 1
|
||||
count=$(($count + 1))
|
||||
if [ $count -ge $link_nego_timeout ]; then
|
||||
if [[ $count -ge $link_nego_timeout ]]; then
|
||||
msg_done "no link"
|
||||
return 1
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$mtu" ]; then
|
||||
if [[ -n "$mtu" ]]; then
|
||||
ip link set mtu $mtu dev $os_eth
|
||||
fi
|
||||
|
||||
if [ -n "$static_ip" ]; then
|
||||
if [[ -n "$static_ip" ]]; then
|
||||
msg_done $static_ip
|
||||
ifconfig $os_eth $static_ip up
|
||||
static_ip="" # won't be used again
|
||||
@ -150,11 +149,11 @@ start_eth() {
|
||||
dhclient -cf "$dh_conf" $os_eth
|
||||
fi
|
||||
|
||||
if [ "$link_watch" == "true" ]; then
|
||||
if [[ "$link_watch" == "true" ]]; then
|
||||
watch_eth &
|
||||
fi
|
||||
|
||||
if [ "$ip_watch" == "true" ] && ip addr show dev $os_eth | grep inet &>/dev/null; then
|
||||
if [[ "$ip_watch" == "true" ]] && ip addr show dev $os_eth | grep inet &>/dev/null; then
|
||||
watch_ip $os_eth &
|
||||
fi
|
||||
}
|
||||
@ -173,16 +172,16 @@ start() {
|
||||
test -r /data/etc/ppp/modem && ifconfig | grep $os_ppp &>/dev/null && ppp_ok="ok"
|
||||
|
||||
# if wifi or ppp link ok, start eth in background
|
||||
if [ "$wlan_ok" == "ok" ] || [ "$ppp_ok" == "ok" ]; then
|
||||
if [[ "$wlan_ok" == "ok" ]] || [[ "$ppp_ok" == "ok" ]]; then
|
||||
start_eth &>/dev/null &
|
||||
else
|
||||
start_eth && eth_ok="ok"
|
||||
fi
|
||||
|
||||
if [ "$eth_ok" != "ok" ] && [ "$wlan_ok" != "ok" ] && [ "$ppp_ok" != "ok" ]; then
|
||||
if [ "$link_watch" == "true" ]; then
|
||||
logger -t network -s "no network connection available, rebooting"
|
||||
reboot
|
||||
if [[ "$eth_ok" != "ok" ]] && [[ "$wlan_ok" != "ok" ]] && [[ "$ppp_ok" != "ok" ]]; then
|
||||
if [[ "$link_watch" == "true" ]]; then
|
||||
logger -t network -s "no network connection available, calling panic action"
|
||||
panic_action network
|
||||
return 1
|
||||
else
|
||||
logger -t network -s "no network connection available"
|
||||
@ -190,13 +189,13 @@ start() {
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$static_gw" ]; then
|
||||
if [[ -n "$static_gw" ]]; then
|
||||
msg_begin "Setting static gateway to $static_gw"
|
||||
ip route add default via $static_gw
|
||||
test $? == 0 && msg_done || msg_fail
|
||||
fi
|
||||
|
||||
if [ -n "$static_dns" ]; then
|
||||
if [[ -n "$static_dns" ]]; then
|
||||
msg_begin "Setting static DNS server to $static_dns"
|
||||
echo "nameserver $static_dns" > /etc/resolv.conf
|
||||
test $? == 0 && msg_done || msg_fail
|
||||
|
@ -7,12 +7,11 @@ netwatch_interval=20
|
||||
|
||||
test -f $watch_conf && source $watch_conf || exit 0
|
||||
|
||||
if [ -z "$netwatch_host" ] || [ -z "$netwatch_port" ]; then
|
||||
if [[ -z "$netwatch_host" ]] || [[ -z "$netwatch_port" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
test "$os_networkless" == "true" && exit 0
|
||||
|
||||
@ -24,13 +23,13 @@ watch() {
|
||||
if nc -z -w $netwatch_timeout $netwatch_host $netwatch_port </dev/null >/dev/null 2>&1; then
|
||||
count=0
|
||||
else
|
||||
if [ $count -lt $netwatch_retries ]; then
|
||||
if [[ $count -lt $netwatch_retries ]]; then
|
||||
logger -t netwatch -s "cannot connect to $netwatch_host:$netwatch_port"
|
||||
count=$(($count + 1))
|
||||
continue
|
||||
else
|
||||
logger -t netwatch -s "cannot connect to $netwatch_host:$netwatch_port, rebooting"
|
||||
reboot
|
||||
logger -t netwatch -s "cannot connect to $netwatch_host:$netwatch_port, calling panic action"
|
||||
panic_action netwatch
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
@ -4,10 +4,10 @@ sys_conf="/etc/firewall.sh"
|
||||
boot_conf="/boot/firewall.sh"
|
||||
conf="/data/etc/firewall.sh"
|
||||
|
||||
if ! [ -f $conf ]; then
|
||||
if [ -f $boot_conf ]; then
|
||||
if ! [[ -f $conf ]]; then
|
||||
if [[ -f $boot_conf ]]; then
|
||||
cp $boot_conf $conf
|
||||
elif [ -f $sys_conf ]; then
|
||||
elif [[ -f $sys_conf ]]; then
|
||||
cp $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
|
@ -7,10 +7,10 @@ conf="/data/etc/dnsmasq.conf"
|
||||
log="/var/log/dnsmasq.log"
|
||||
prog="/usr/sbin/dnsmasq"
|
||||
|
||||
if ! [ -f $conf ]; then
|
||||
if [ -f $boot_conf ]; then
|
||||
if ! [[ -f $conf ]]; then
|
||||
if [[ -f $boot_conf ]]; then
|
||||
cp $boot_conf $conf
|
||||
elif [ -f $sys_conf ]; then
|
||||
elif [[ -f $sys_conf ]]; then
|
||||
cp $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
|
@ -11,18 +11,18 @@ sys_ntp_conf="/etc/ntp.conf"
|
||||
boot_ntp_conf="/boot/ntp.conf"
|
||||
ntp_conf="/data/etc/ntp.conf"
|
||||
|
||||
if ! [ -f $conf ]; then
|
||||
if [ -f $boot_conf ]; then
|
||||
if ! [[ -f $conf ]]; then
|
||||
if [[ -f $boot_conf ]]; then
|
||||
cp $boot_conf $conf
|
||||
elif [ -f $sys_conf ]; then
|
||||
elif [[ -f $sys_conf ]]; then
|
||||
cp $sys_conf $conf
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! [ -f $ntp_conf ]; then
|
||||
if [ -f $boot_ntp_conf ]; then
|
||||
if ! [[ -f $ntp_conf ]]; then
|
||||
if [[ -f $boot_ntp_conf ]]; then
|
||||
cp $boot_ntp_conf $ntp_conf
|
||||
elif [ -f $sys_ntp_conf ]; then
|
||||
elif [[ -f $sys_ntp_conf ]]; then
|
||||
cp $sys_ntp_conf $ntp_conf
|
||||
fi
|
||||
fi
|
||||
@ -30,7 +30,6 @@ fi
|
||||
test -f $conf || exit 0
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
test "$os_networkless" == "true" && exit 0
|
||||
|
||||
@ -70,7 +69,7 @@ start_ntp() {
|
||||
|
||||
cat $ntp_conf | grep -v iburst > ${ntp_conf}.tmp
|
||||
|
||||
if [ -n "$date_ntp_server" ]; then
|
||||
if [[ -n "$date_ntp_server" ]]; then
|
||||
echo "server $date_ntp_server iburst" > $ntp_conf
|
||||
else
|
||||
cat $sys_ntp_conf | grep iburst > $ntp_conf
|
||||
@ -101,7 +100,7 @@ stop_ntp() {
|
||||
}
|
||||
|
||||
start() {
|
||||
if [ "$date_method" == "http" ]; then
|
||||
if [[ "$date_method" == "http" ]]; then
|
||||
start_http
|
||||
else
|
||||
start_ntp
|
||||
@ -111,7 +110,7 @@ start() {
|
||||
}
|
||||
|
||||
stop() {
|
||||
if [ "$date_method" == "http" ]; then
|
||||
if [[ "$date_method" == "http" ]]; then
|
||||
stop_http
|
||||
else
|
||||
stop_ntp
|
||||
|
@ -8,7 +8,7 @@ test -n "$os_version" || source /etc/init.d/base
|
||||
start() {
|
||||
msg_begin "Starting crond"
|
||||
|
||||
if [ -d $sys_conf ]; then
|
||||
if [[ -d $sys_conf ]]; then
|
||||
/usr/sbin/crond -c $sys_conf
|
||||
fi
|
||||
|
||||
|
@ -5,7 +5,6 @@ conf="/etc/sshd_config"
|
||||
test -f $conf || exit 0
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
test "$os_networkless" == "true" && exit 0
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
test -n "$os_version" || source /etc/init.d/base
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
msg_info() {
|
||||
echo " # $1"
|
||||
|
@ -4,6 +4,10 @@ source /etc/version
|
||||
board_sn=$(/etc/init.d/boardsn)
|
||||
board_name=$(cat /etc/board)
|
||||
|
||||
test -n "$os_debug" || source /etc/init.d/conf
|
||||
|
||||
source /etc/init.d/panic
|
||||
|
||||
msg_begin() {
|
||||
echo -n " * $1: "
|
||||
}
|
||||
|
7
board/common/overlay/etc/init.d/bootdone
Executable file
7
board/common/overlay/etc/init.d/bootdone
Executable file
@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
source /etc/init.d/panic
|
||||
|
||||
# reset panic counter after a successful boot
|
||||
echo 0 > ${_PANIC_COUNTER_FILE}
|
||||
|
@ -4,26 +4,26 @@ _sys_conf="/etc/os.conf"
|
||||
_boot_conf="/boot/os.conf"
|
||||
_conf="/data/etc/os.conf"
|
||||
|
||||
if ! [ -f $_conf ]; then
|
||||
if [ -f $_boot_conf ]; then
|
||||
if ! [[ -d /data/etc ]]; then
|
||||
# use boot/system variants if we don't have the data partition mounted
|
||||
if [[ -f $_boot_conf ]]; then
|
||||
source $_boot_conf
|
||||
elif [[ -f $_sys_conf ]]; then
|
||||
source $_sys_conf
|
||||
fi
|
||||
|
||||
return
|
||||
fi
|
||||
|
||||
if ! [[ -f $_conf ]]; then
|
||||
if [[ -f $_boot_conf ]]; then
|
||||
cp $_boot_conf $_conf
|
||||
elif [ -f $_sys_conf ]; then
|
||||
elif [[ -f $_sys_conf ]]; then
|
||||
cp $_sys_conf $_conf
|
||||
fi
|
||||
fi
|
||||
|
||||
source $_conf
|
||||
|
||||
has_net_conn() {
|
||||
test "$os_networkless" == "true" && return 1
|
||||
|
||||
addr_eth=$(ip addr show dev $os_eth 2>/dev/null | grep inet | tr -s ' ' | sed -r 's/^\s+//' | cut -d ' ' -f 2)
|
||||
addr_wlan=$(ip addr show dev $os_wlan 2>/dev/null | grep inet | tr -s ' ' | sed -r 's/^\s+//' | cut -d ' ' -f 2)
|
||||
|
||||
if [ -n "$addr_eth" ] || [ -n "$addr_wlan" ]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
if [[ -f $_conf ]]; then
|
||||
source $_conf
|
||||
fi
|
||||
|
||||
|
28
board/common/overlay/etc/init.d/panic
Executable file
28
board/common/overlay/etc/init.d/panic
Executable file
@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
_PANIC_COUNTER_FILE="/var/lib/panic_counter"
|
||||
_PANIC_REBOOT_DELAY_FACTOR=10
|
||||
_PANIC_REBOOT_DELAY_MAX=3600 # reboot at least once an hour in case of panic
|
||||
|
||||
|
||||
panic_action() {
|
||||
# read counter from file
|
||||
panic_counter=$(cat ${_PANIC_COUNTER_FILE} 2>/dev/null || echo 0)
|
||||
|
||||
# write increased counter back to file
|
||||
echo $((panic_counter + 1)) > ${_PANIC_COUNTER_FILE}
|
||||
|
||||
delay=$((_PANIC_REBOOT_DELAY_FACTOR * panic_counter))
|
||||
if [[ "${delay}" -gt "${_PANIC_REBOOT_DELAY_MAX}" ]]; then
|
||||
delay=${_PANIC_REBOOT_DELAY_MAX}
|
||||
fi
|
||||
|
||||
if [[ "${delay}" -gt 0 ]]; then
|
||||
logger -t panic -s "rebooting in ${delay} seconds (caused by $1)"
|
||||
sleep ${delay}
|
||||
fi
|
||||
|
||||
logger -t panic -s "rebooting (caused by $1)"
|
||||
/sbin/reboot
|
||||
}
|
||||
|
@ -10,8 +10,8 @@ echo "---- shutting down $os_name $os_version ----" >> $boot_log
|
||||
# stop all init scripts in /etc/init.d,
|
||||
# executing them in reverse numerical order.
|
||||
(for i in $(ls -r /etc/init.d/S??*); do
|
||||
[ ! -x "$i" ] && continue
|
||||
[ -f /data/etc/no_$(basename $i) ] && continue
|
||||
if ! [[ -x "$i" ]]; then continue; fi
|
||||
if [[ -f /data/etc/no_$(basename $i) ]]; then continue; fi
|
||||
$i stop
|
||||
done& echo $! > $pid_file) | tee -a $boot_log &
|
||||
|
||||
|
@ -10,9 +10,9 @@ echo "---- booting $os_name $os_version ----" >> $tmp_boot_log
|
||||
|
||||
# start all init scripts in /etc/init.d,
|
||||
# executing them in numerical order.
|
||||
(for i in /etc/init.d/S??*; do
|
||||
[ ! -x "$i" ] && continue
|
||||
[ -f /data/etc/no_$(basename $i) ] && continue
|
||||
(for i in /etc/init.d/S??* /etc/init.d/bootdone; do
|
||||
if ! [[ -x "$i" ]]; then continue; fi
|
||||
if [[ -f /data/etc/no_$(basename $i) ]]; then continue; fi
|
||||
$i start || break
|
||||
done& echo $! > $pid_file) | tee -a $tmp_boot_log &
|
||||
|
||||
|
@ -1,16 +0,0 @@
|
||||
root:x:0:0:root:/root:/bin/sh
|
||||
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
|
||||
bin:x:2:2:bin:/bin:/bin/sh
|
||||
sys:x:3:3:sys:/dev:/bin/sh
|
||||
sync:x:4:100:sync:/bin:/bin/sync
|
||||
mail:x:8:8:mail:/var/spool/mail:/bin/sh
|
||||
proxy:x:13:13:proxy:/bin:/bin/sh
|
||||
www-data:x:33:33:www-data:/var/www:/bin/sh
|
||||
backup:x:34:34:backup:/var/backups:/bin/sh
|
||||
operator:x:37:37:Operator:/var:/bin/sh
|
||||
haldaemon:x:68:68:hald:/:/bin/sh
|
||||
dbus:x:81:81:dbus:/var/run/dbus:/bin/sh
|
||||
ftp:x:83:83:ftp:/home/ftp:/bin/sh
|
||||
sshd:x:103:99:sshd:/var:/bin/sh
|
||||
nobody:x:99:99:nobody:/home:/bin/sh
|
||||
admin:x:0:0::/root:/bin/sh
|
@ -1,4 +1,4 @@
|
||||
os_name="thingOS"
|
||||
os_short_name="thingos"
|
||||
os_prefix="thing"
|
||||
os_version="20171008"
|
||||
os_version="unknown"
|
||||
|
@ -4,7 +4,7 @@
|
||||
#### usage ####
|
||||
|
||||
function exit_usage() {
|
||||
echo "Usage: fwupdate versions (lists available versions)"
|
||||
echo "Usage: fwupdate versions [-j] (lists available versions, optionally outputting json)"
|
||||
echo " fwupdate current (shows the current version"
|
||||
echo " fwupdate download <version|url> (downloads a firmware version)"
|
||||
echo " fwupdate extract (extracts the downloaded firmware archive)"
|
||||
@ -66,14 +66,14 @@ DD_PID_FILE=dd.pid
|
||||
function show_versions() {
|
||||
source $OS_CONF
|
||||
board=$(cat $SYS_BOARD_FILE)
|
||||
show_url=$1
|
||||
show_json=$1
|
||||
|
||||
# the /usr/libexec/list-versions-* helpers return a table with the following format:
|
||||
# <version>|<prerelease>|<board>|<url>
|
||||
versions=$(FW_USERNAME=$os_firmware_username FW_PASSWORD=$os_firmware_password \
|
||||
/usr/libexec/list-versions-$os_firmware_method $os_firmware_repo)
|
||||
|
||||
for version in $versions; do
|
||||
for version in ${versions[@]}; do
|
||||
OIFS=$IFS
|
||||
IFS="|"
|
||||
varr=($version)
|
||||
@ -85,8 +85,12 @@ function show_versions() {
|
||||
continue # skip other boards
|
||||
fi
|
||||
|
||||
if [ "$show_url" == "true" ]; then
|
||||
echo ${varr[0]} ${varr[3]}
|
||||
if [ "$show_json" == "true" ]; then
|
||||
echo "{\"version\": \"${varr[0]}\"," \
|
||||
"\"url\": \"${varr[3]}\"," \
|
||||
"\"board\": \"${varr[2]}\"," \
|
||||
"\"prerelease\": ${varr[1]}," \
|
||||
"\"date\": \"${varr[4]}\"}"
|
||||
else
|
||||
echo ${varr[0]}
|
||||
fi
|
||||
@ -115,7 +119,7 @@ function do_download() {
|
||||
version=$1
|
||||
|
||||
if ! [[ "$url" == http* ]]; then # a version was given
|
||||
url=$(show_versions true | sed -rn '/^'"$version"' http.*\.img\.[a-z]+$/ {; /.*\.xz$/ {;s/^'"$version"' (.*)/\1/ p;q;}; /.*\.gz$/ {;h;b finish;};}; :finish; $ {;x;s/^'"$version"' (.*)/\1/ p;}')
|
||||
url=$(show_versions true | jq -r ". | select(.version==\"$version\") | .url")
|
||||
else
|
||||
version="custom"
|
||||
fi
|
||||
@ -394,7 +398,9 @@ function new_version() {
|
||||
|
||||
case "$1" in
|
||||
versions)
|
||||
show_versions
|
||||
show_json="false"
|
||||
test "$2" == "-j" && show_json="true"
|
||||
show_versions $show_json
|
||||
;;
|
||||
|
||||
current)
|
||||
|
@ -1,7 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
# carry on with the script in case of error
|
||||
set +e
|
||||
|
||||
# write buffers to disk
|
||||
/bin/sync
|
||||
(sleep 10 && /usr/bin/killall -STOP watchdog) &
|
||||
|
||||
# allow the shutdown script 20 seconds to shut down,
|
||||
# after which we stop feeding the watchdog
|
||||
(sleep 20 && /usr/bin/killall -STOP watchdog) &
|
||||
|
||||
# actual reboot command
|
||||
/bin/busybox reboot
|
||||
|
||||
|
@ -5,14 +5,24 @@ if [ -z "$1" ]; then
|
||||
exit -1
|
||||
fi
|
||||
|
||||
function check_prerelease() {
|
||||
read line
|
||||
if [[ "$line" =~ ^[0-9._]+\| ]]; then
|
||||
echo "$line"
|
||||
else
|
||||
echo "$line" | sed 's/|false|/|true|/'
|
||||
fi
|
||||
}
|
||||
|
||||
extensions=".img.gz .img.xz .img"
|
||||
opts="-s -S -f"
|
||||
test -n "$FW_USERNAME" && opts+=" --user $FW_USERNAME:$FW_PASSWORD"
|
||||
url="https://api.bitbucket.org/2.0/repositories/$1/downloads?pagelen=100&_=$(date +%s)"
|
||||
|
||||
rtrimstr=$(for e in $extensions; do echo -n " | rtrimstr(\"$e\")"; done)
|
||||
jq_expr=".values[] | [{a: .name | split(\"-\"), url: .links.self.href}] | map((.a[2] $rtrimstr), \"false\", .a[1], .url) | join(\"|\")"
|
||||
jq_expr=".values[] | [{a: .name | split(\"-\"), url: .links.self.href, date: .created_on | split(\"T\")[0]}] |
|
||||
map((.a[2] $rtrimstr), \"false\", .a[1], .url, .date) | join(\"|\")"
|
||||
|
||||
curl $opts $url | jq --raw-output "$jq_expr"
|
||||
curl $opts $url | jq --raw-output "$jq_expr" | while read line; do echo "$line" | check_prerelease; done
|
||||
exit ${PIPESTATUS[0]}
|
||||
|
||||
|
@ -8,7 +8,10 @@ fi
|
||||
opts="-s -S -f"
|
||||
test -n "$FW_USERNAME" && opts+=" --user $FW_USERNAME:$FW_PASSWORD"
|
||||
url=https://api.github.com/repos/$1/releases
|
||||
jq_expr='.[] | {version: .name, prerelease: .prerelease | tostring} + (.assets[] | {name: .name | split("-")[1], url: .browser_download_url}) | flatten | join("|")'
|
||||
|
||||
jq_expr='.[] | {version: .name, prerelease: .prerelease | tostring} +
|
||||
(.assets[] | {name: .name | split("-")[1], url: .browser_download_url}) +
|
||||
({date: .created_at | split("T")[0]}) | flatten | join("|")'
|
||||
|
||||
curl $opts $url | jq --raw-output "$jq_expr"
|
||||
exit ${PIPESTATUS[0]}
|
||||
|
48
board/common/overlay/usr/libexec/list-versions-s3
Executable file
48
board/common/overlay/usr/libexec/list-versions-s3
Executable file
@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
# expected final S3 URL:
|
||||
# https://s3.amazonaws.com/${bucket}/${path}/${version}/${os_short_name}-${board}-${version}.img.xz
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: $0 <bucket/path>" 1>&2
|
||||
exit -1
|
||||
fi
|
||||
|
||||
bucket_path=$1
|
||||
bucket=$(echo ${bucket_path} | cut -d '/' -f 1)
|
||||
path=${bucket_path:${#bucket} + 1}
|
||||
|
||||
opts="-s -S -f"
|
||||
test -n "${FW_USERNAME}" && opts+=" --user ${FW_USERNAME}:${FW_PASSWORD}"
|
||||
url=https://s3.amazonaws.com/${bucket}
|
||||
|
||||
xml_result=$(curl ${opts} ${url})
|
||||
keys=$(echo "${xml_result}" | grep -oE '<Key>[^<]+<\/Key>' | sed 's/<Key>\(.*\)<\/Key>/\1/')
|
||||
dates=$(echo "${xml_result}" | grep -oE '<LastModified>[^<]+<\/LastModified>' | sed 's/<LastModified>\(.*\)<\/LastModified>/\1/')
|
||||
dates=(${dates})
|
||||
files=$(echo "${keys}" | grep "^${path}/" | sed "s/^${path}\///" | sed '/^$/d')
|
||||
|
||||
i=0
|
||||
for file in ${files}; do
|
||||
version=$(echo ${file} | cut -d '/' -f 1)
|
||||
fname=$(echo ${file} | cut -d '/' -f 2)
|
||||
i=$((i + 1))
|
||||
if [[ -z "${fname}" ]]; then
|
||||
continue # version folder
|
||||
fi
|
||||
|
||||
prerelease=false
|
||||
if [[ "${version}" =~ ^.*[ab][0-9]+$ ]]; then # e.g. 0.4.1b2
|
||||
prerelease=true
|
||||
fi
|
||||
if [[ "${version}" =~ ^dev.*$ ]]; then # e.g. dev20180314
|
||||
prerelease=true
|
||||
fi
|
||||
|
||||
final_url=${url}/${path}/${version}/${fname}
|
||||
board=$(echo ${fname} | cut -d '-' -f 2)
|
||||
date=$(echo ${dates[${i}]} | cut -d 'T' -f 1)
|
||||
|
||||
echo "${version}|${prerelease}|${board}|${final_url}|${date}"
|
||||
done | sort -t '|' -k 5,3 -r
|
||||
|
@ -1 +0,0 @@
|
||||
../tmp/log
|
@ -1,6 +0,0 @@
|
||||
# when leaving the console clear the screen to increase privacy
|
||||
|
||||
case "`tty`" in
|
||||
/dev/tty[0-9]*) clear
|
||||
esac
|
||||
|
@ -1,6 +0,0 @@
|
||||
umask 022
|
||||
|
||||
if [ -f ~/.bashrc ]; then
|
||||
source ~/.bashrc
|
||||
fi
|
||||
|
@ -1 +0,0 @@
|
||||
tmp
|
@ -1 +0,0 @@
|
||||
|
0
board/common/skeleton/var/cache/.empty
vendored
0
board/common/skeleton/var/cache/.empty
vendored
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user