Not all our shells do install a pointer to /bin/sh. Besides, between
those that do and multiple ones are enabled, the last one to install
wins the the symlink.
Add a new config choice in the system sub-menu that allows the user to
explicitly select the shell to provide /bin/sh. If busybox is not
enabled, default to using dash, a POSIX shell.
Remove the symlink creation from bash.mk at the same time.
Note: for every shell, we select them, except busybox, on which we
depend, on the assumption that we do not want to force busybox in case
the user decided not to enable it.
[Peter: remove redundant !BR2_PACKAGE_BUSYBOX dependency]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Do not create a [serial-]getty link if BR2_TARGET_GENERIC_GETTY is not set.
Might be useful for custom setups (rootfs overlay).
[Peter: use BR2_TARGET_GENERIC_GETTY_PORT to match the code below]
Signed-off-by: André Erdmann <dywi@mailerd.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When trying to run a buildroot system configured with
BR2_TARGET_GENERIC_GETTY_PORT="tty1" (x86_64), the boot process hangs
with the following message:
"A start job is running for dev-tty1.device (<time> / 1min 30s)"
Replacing /etc/systemd/system/getty.target.wants/serial-getty@tty1.service
(linking to serial-getty@) with getty@tty1.service (-> getty@) fixes the issue.
This patch adds a check that "detects" the tty type by removing digits at the
end of BR2_TARGET_GENERIC_GETTY_PORT and comparing the resulting base name.
An instance of getty@service gets created if the name matches "tty",
otherwise serial-getty@ gets instantiated (as before).
So, tty1,tty2,... are created as links getty@tty1.service -> getty@,
while ttyS0, ttyAMA0, ... are created as instances of serial-getty@.
[Peter: simplify logic]
Signed-off-by: André Erdmann <dywi@mailerd.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Current setting only allows blackfin to select uclinux as TARGET_OS.
However, some noMMU ARM platforms that using FLAT binary format also need to
select uclinux as TARGET_OS. Fix the dependency.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since we don't handle it in sysvinit inittab any longer let's add an
initscript to get things back into plug-and-play shape.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Don't try to start logging from /etc/inittab because busybox installs a
S01logging script that handles that and can lead to duplicate logging
processes.
Let's handle the logging in each package that provides it since we can
get multiple variants in the future like syslog-ng that have different
initialization routines.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Markos Chandras <markos.chandras@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit bumps the sunxi-cedarx package version to the latest git
commit, which also provides a better support for ARM EABI, since it
now has a non-EABIhf variant of avheap.so available.
Built tested on ARM EABI and ARM EABIhf.
[Thomas: compared to Spenser's original version, bumped to a newer
version, and dropped support for the demo since it didn't build,
and fixing it isn't trivial]
Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes shellshock-alike exploits.
Install binary to /bin as all shells should be and add hash file.
[Peter: drop /bin/sh handling as we're going to handle it globally]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add hash file and use $(INSTALL) instead of cp for proper mode handling.
[Peter: drop /bin/sh handling as we're going to handle it globally]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since version 0.8.2 upmpdcli builds with gcc >= 4.5. This allows compilation
with the CodeSourcery toolchain versions 2011.03 and 2010.09 for the PowerPC
architecture.
Signed-off-by: Jörg Krause <jkrause@posteo.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
We only documented a few of the <package>- targets and it's hard to
decide which ones are relevant for make help. Since the help is already
way too long, it's better to remove these advanced targets.
Instead, let's refer to the online manual.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Acked-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As discussed during the dev days. It is broken for uClibc/musl and
architectures not using mainline gcc, so it has only very limited
usefulness.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
http://autobuild.buildroot.net/results/7a7/7a70b179f17070d0a0883f71c60030dd7d8a9102/
Didn't see widespread failure because it autoreconfed on its own just
fine if autotools infra was already present.
And didn't work before the automake patch with AUTORECONF=YES because of
an older gtk-doc.m4
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Update gtk-doc.m4 infra to serial (version) 2.
Some packages start to need/ship with the new version and can't be
properly autoreconf'ed, like kmod 18+.
The file was picked up from kmod-18 itself actually.
[Peter: don't pull in host-pkgconf as it was already needed by v1]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
We have fixes in the internal toolchain; an external toolchain is most
likely a buildroot-built toolchain anyway, so it will also have the
fix. But we still keep a comment to warn the user for potentially-broken
external toolchains.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This was modeled after a similar option for Dropbear.
The utmpx code is automatically disabled when compiling with musl,
to avoid a build error due to WTMPX_FILE being undefined. Note that
musl has an empty utmpx implementation, so no functionality is lost
by not calling it.
[Peter: use positive logic]
Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit adjusts the S10udev script by:
* Using the --action=add option to udevadm trigger. By default, only
the "change" events are handled by 'udevadm trigger', which means
it doesn't handle all the "device add" events that occured during
the boot time, before eudev was started.
* Adds a call to 'udevadm settle' to make sure we wait for udev to
handle all the events that occured before eudev was started.
Both of these change match what the Ubuntu and Debian udev startup
scripts are doing.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It dates back to the initial libxslt submission, has no documentation and
doesn't seem to be needed.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Needed to build the manual in PDF format if the host doesn't have a fixed
xsltproc.
(by make host-libxsltproc; PATH=output/host/usr/bin:$PATH make manual-pdf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Peter: move periods outside paranthesis as suggested by Thomas De Schampheleire]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, the only way br2-external may generate a document is by
including that document's recipe from within external.mk.
But external.mk is only parsed when the tree is configured.
This is unlike our internal document (the manual) which can be generated
from within an unconfigured tree.
So, include the documents from br2-external at the same time we include
our own document:
- expect the same layout as we have: docs/DOC_NAME/doc-name.mk
- do not fail if there is no document: use "-include", not "include"
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, the manual is rendered with the timezone of the user running
the rendering. This timezone can fluctuate, depending on the date, due
to DST (Daylight Saving Time). Currently, the manual is rendered in
either CET or CEST (Central European Time, or its DST variant.)
So, a manual rendered during the summer or the winter would refer to a
non-constant timezone. If the machine and/or user doing the rendering
also changes, there is no guarantee the timezone would still be CET/CEST.
This is not a hard issue, since the user can still deduce the time in
UTC, but is just incoherent.
Just force the timezone to be UTC when doing the rendering of the
manual, so we are not dependent on the machine or user doing the
rendering.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As suggested by Thomas: the AsciiDoc options we use ensure we get a sane
output of the document. We want that configuration to be applied to
other documents as well.
Up until now, it was implicit that the configuration was applied to
our manual, becasue we only supported document-specific configuration,
and the configuration we had was in our manual dir, so we got to use it.
But now, we can render other documents, especially ones from
br2-external, and we want those to also use the default configuration
from Buildroot, but still be able to provide their own customisation.
So, always add Buildroot's configuration first, if available, before we
append the document's configuration.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, a document can specify an output-specific configuration, like
the text output, that hides images references, and formats hyperlinks.
But sometimes it is required that a specific configuration is used for
all the output formats, to always apply the same markup rules in all
documents (like using the [specialwords] section.)
Also look for a file named 'asciidoc.conf' in the document's directory.
If that file exists, add it to the asciidoc options (before the
output-specific config, so the latter takes precedence over the former.)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, it is not possible to use $(@D) in documents' hooks, because
there is no actual target file for the copying rule.
So, use the same mechanism as for generic-package.
We do not touch the target file, so it is easy to regenerate the manual
without calling the -clean rule first.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Like for all the package infrastructures, retrieve the package name and
directory in the front-end macro-variable, rather than everywhere in the
backend macro.
This allows us to clean up the ASCIIDOC macro, by removing all the calls
to $(pkgname) and $(pkgdir), and to UPPERCASE (which made the macro a
bit difficult to read.)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Rename the GENDOC infrastructure so that it more closely matches the way
we handle the packages infras.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Move the GENDOC infra to its own file, so it is even less tied to our
manual document, so that it is more obvious that GENDOC is an infra like
our packages infras, and 'manual' is a document like we have packages.
Ideally, this new file should better go in docs/ rather than in package/ .
However, docs/ is already full of our website stuff, so adding it in
there would just serve to clutter the website.
So, let's just put alongside the other infrastructures, in package/ .
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Our manual does not use external filters in asciidoc, so we are happy
with just looking for resources from our source tree.
However, other documents (like ones in br2-external) may use such
filters, to generate diagrams, graphs...
External filters generate their output files in the output directory, so
we must also look for resources in there.
Note: external filters in asccidoc are used thus:
["filter-name"]
----
Text to be rendered
----
In the future, our own manual may even make use of filters to include
some of the graphs we generate, to store in the documentation.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also reorder a bit the definition of the variables, to more resemble
a package. Yet a bit more...
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Allow documents to define two hooks:
- DOC_CHECK_EXTRA_DEPENDENCIES_HOOKS
to check for extra dependencies required by this document
- DOC_CHECK_EXTRA_DEPENDENCIES_FMT_HOOKS
ditto, but for the specific format
- DOC_POST_EXTRACT_HOOKS:
to run additional actions to fill-in the build directory
(Replace 'DOC' with the uppercase name of the document, and 'FMT' with
the format.)
This is supposed to replace the current use of overloading the internal
dependency rules, and makes GENDOC behave yet a bit more like the
package infrastructure.
Note that GENDOC_INNER already has the uppercase name as an argument,
whereas GENDOC does not, so the two foreach loops are not exactly
similar (for now.)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Acked-by: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Those rules are generic, and not specific to our manual, we want them
always called:
- manual-check-dependencies
- manual-check-dependencies-pdf
So, rename them to be generic to gendoc.
Cascade the document's dependency checking to call those rules, too.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Move the rules specific to our own manual, so that they do not interfere
with the generic rules of GENDOC.
Separate them with a shiny header. ;-)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
GENDOC_INNER still has one hard-coded path to the document's directory:
the asciidoc .conf files.
Add a new argument to GENDOC_INNER to pass the directory of the
document.
Notes:
- this makes for overly-long lines, but splitting is not possible,
otherwise the first argument on the continuation line would get (at
least) a leading space or tab, and that would break either or all of
the variables names, the dependency rules, or the filenames we look
for. A future patch will further clean this up (see: docs/asciidoc: call
$(pkgname) and $(pkgdir) in a single place.)
- this means that another document would be missing our tweaks from
asciidoc-text.conf to not render images and sanely render hyperlinks.
But that was already the case anyway, since we were using docs/$(1)/ to
search for that file. A further patch will allow us to have such
configuration in a common place.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Avoids hard-coding document's resources in GENDOC_INNER, so we can
generate another document with different resources (if any).
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, GENDOC_INNER hard-codes some variables to have the name of the
document in them:
MANUAL_$(2)_ASCIIDOC_CONF
MANUAL_$(2)_ASCIIDOC_OPTS
MANUAL_$(2)_A2X_OPTS
MANUAL_$(2)_INSTALL_CMDS
...
Also, it defines some dependency on the generation rule, onto:
manual-check-dependencies
manual-check-dependencies-$(3)
manual-prepare-sources
This is problematic, as it is not possible to have another document
generated with the GENDOC infra, or it would trigger the rules, and use
the variables for our own document, 'manual'.
Add a new argument to GENDOC_INNER to be the uppercase name of the
document, much like it is done for the PKG_*_INNER functions. Replace
any reference to 'manual' with the currently passed named of the current
document, $(1).
The remaining references to 'manual' are on purpose, as they really
pertain to our manual.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Copying the document's source files is a generic GENDOC action, that
will be common to all documents, so the dependency rule should be
handled in GENDOC, rather than letting all documents duplicate it.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Move the manual-update-lists .PHONY declaration out of GENDOC, since not
all the documents may have an -update-lists rule.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The document's main file is already part of MANUAL_SOURCES, so no need
to explicitly depend on it.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Move the creation of $(BUILD_DIR)/manual and the rsyncing of the
sources into GENDOC.
This is is needed so that GENDOC can be easily used to generate another
document, without requiring that document to duplicate the copying rules.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>