Commit Graph

63 Commits

Author SHA1 Message Date
Eric Le Bihan
990a7d14cf cargo: new package
This new package provides Cargo, the Rust official package manager.
Cargo is written in Rust and uses Cargo as its build system. It also
depends on other Rust packages.

Normally, a previously installed version of Cargo would be used to:

 1. Fetch the dependencies.
 2. Build the new version of Cargo, using the available Rust compiler.

But the fetching step prevents offline builds. So instead two features
of Cargo are leveraged: vendoring [1] and local registry.

First, a tarball of the build dependencies generated using `cargo
vendor` is fetched along with Cargo source code.

Then, the build process is as follows:

 1. The tarball of the build dependencies is uncompressed in a local
    registry.
 2. A snapshot of Cargo, provided by cargo-bin, builds the final
    version of Cargo.
 3. A configuration file telling Cargo how to cross-compile programs for
    the target is generated and installed.

Currently, only the host variant is provided.

[1] https://github.com/alexcrichton/cargo-vendor

[Peter: use src.fedoraproject.org, fix comment]
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-05 14:57:48 +01:00
Eric Le Bihan
40e6e08d0b rustc: new virtual package
The compiler for the Rust programming language is called rustc.

There is only one reference implementation for it, based on LLVM, from
the Rust project [1]. It can generate code for various architectures so
it can be labeled as a cross-compiler. But, as for GCC, building it
from source takes time.

So it would be sensible to have at least one package which provides it
as a pre-built version, fetched from the upstream project. Later another
package can be added, to build it from source code.

In addition to the compiler, the standard library for the host and/or
the target should also be fetched/built.

So, add a virtual package named rustc to enable support for multiple
providers.

Currently, only the host variant will be available to allow the user to
cross-compile Rust programs for the target.

[1] http://rust-lang.org

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-05 14:57:47 +01:00
Peter Korsgaard
a4a74005af gnupg: add host package
For E.G. post-build / post-image scripts as it generally cannot be expected
to be available on the build host and/or there are some differences in
behaviour between gnupg 1.x / 2.x.

Provide gnupg 1.x instead of 2.x, as it is simpler to build (less
dependencies) and easier to use in post-build / post-image scripts (E.G. no
gpg-agent that keeps running in the background).

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-12-12 09:30:29 +01:00
Thomas Petazzoni
fadc438393 google-breakpad: take into account host architecture dependencies
Building the target google-breakpad requires building the host variant
of google-breakpad. Just like the target google-breakpad only supports
a limited number of architectures, it is the same for the host
google-breakpad.

We therefore introduce a
BR2_PACKAGE_HOST_GOOGLE_BREAKPAD_ARCH_SUPPORTS option that is used
where necessary to prevent the user from choosing Google Breakpad when
building on unsupported host platforms.

Fixes:

  http://autobuild.buildroot.net/results/c7c04483508f9e4d629efa54571afeb1feaa5f73/
  (build on a powerpc64le machine)

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-27 21:33:37 +01:00
Thomas Petazzoni
a3fda8e292 go-bootstrap: add BR2_PACKAGE_HOST_GO_BOOTSTRAP_ARCH_SUPPORTS
go-bootstrap is a host package that builds a first stage Go compiler,
later used to build the final Go compiler. However, this first stage
compiler only supports building on x86, x86-64 and arm as host
architectures, so we need to add the relevant architecture
dependencies to avoid having go-bootstrap built on other unsupported
platforms.

We do this by introducing BR2_PACKAGE_HOST_GO_BOOTSTRAP_ARCH_SUPPORTS
in a new package/go-bootstrap/Config.in.host file. This option is then
used by BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS to make sure we can't enable
Go packages when the host architecture doesn't allow building the Go
compiler.

Fixes:

  http://autobuild.buildroot.net/results/cbd419c6ab6fa8a6d18dc137c91f895867e53b8a/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-11-08 13:35:55 +01:00
Peter Korsgaard
456cd09fb9 cryptsetup: add host variant
E.G. for generating dm-verity hashes or dm-crypt data at build time in a
post-image script.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-10-05 22:45:46 +02:00
Julien Floret
b135e9595b python-six: add host variant
While currently there is no in-tree Buildroot package which depends on
host-python-six, it can be needed to build external packages.

Signed-off-by: Julien Floret <julien.floret@6wind.com>
Tested-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-09-24 13:46:20 +02:00
Peter Korsgaard
d759d70acc cmake: expose the host variant in menuconfig
With the addition of the sdk support it may be interesting to build
host-cmake even though no packages need it, so expose it in menuconfig.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-09-19 21:44:28 +02:00
Peter Korsgaard
7eb21b66cf pkgconf: expose the host variant in menuconfig
With the addition of the sdk support it may be interesting to build
host-pkgconf even though no packages need it, so expose it in menuconfig.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-09-19 21:44:28 +02:00
Sébastien Szymanski
f47fc957ee package/mke2img: remove package
Now that we use mkfs to generate ext2/3/4 filesystem image by calling
mkfs directly from fs/ext2/ext2.mk, we can remove this package.

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-05 00:54:01 +02:00
Andrey Yurovsky
3372b316e7 rauc: new package
RAUC is the Robust Auto-Update Controller developed by the folks at
Pengutronix. It supports updating embedded systems from the network
(ex: HawkBit) or from a disk and provides a d-bus interface.

Signed-off-by: Andrey Yurovsky <yurovsky@gmail.com>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-01 13:15:21 +02:00
Carlos Santos
4f147ae0a0 python-lxml: allow build as host package
While currently there is no in-tree Buildroot package which depends on
host-python-lxml, we (DATACOM) have some proprietary modules that use it
in their test scripts.

We tested python-lxml as host package and confirmed that it builds and
works correctly. Someone else might require it, so we are proposing its
inclusion.

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
[Thomas: add Config.in.host entry.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-01 18:43:49 +02:00
Eric Le Bihan
b223a426d9 s6-rc: expose the host variant in menuconfig
Some users may want to build the s6-rc service database offline using a
post-build script. So make the host variant visible in menuconfig.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-18 15:02:51 +01:00
Thomas De Schampheleire
4dfed72218 opkg-utils: new package
Originally, the opkg sources also contained the tools needed to _create_ an
opkg package. In later releases, this code has been split to a separate
package opkg-utils.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-02-06 16:07:33 +01:00
Thomas Petazzoni
4c4756be6b raspberrypi-usbboot: new package
This new package currently installs the "rpiboot" utility, which is
needed to access via USB mass storage the built-in eMMC of Raspberry Pi
compute modules.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-12-06 11:24:14 +01:00
Ash Charles
bd438fc06f pru-software-support: add library for PRU firmware
TI provides a set of headers files and libraries useful in developing
firmware for real-time (PRU) cores embedded in some processors e.g.
AM3358.  This package stages these files for any packages creating
PRU firmware.

Note: As per [1], use commit v4.0.2 to sync with common TI Linux
      versions.

[1] http://e2e.ti.com/support/arm/sitara_arm/f/791/p/552190/2018113#2018113

Signed-off-by: Ash Charles <ash.charles@savoirfairelinux.com>
[Thomas:
 - rename BR2_PACKAGE_PRU_EXAMPLES to BR2_PACKAGE_PRU_SOFTWARE_SUPPORT,
   since the package directory name should match the Config.in option
   for this package
 - use select for BR2_PACKAGE_HOST_TI_CGT_PRU, and therefore add the
   appropriate "depends on BR2_PACKAGE_HOST_TI_CGT_PRU_ARCH_SUPPORTS".]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-04 22:18:36 +01:00
Ash Charles
c84a2cb9aa ti-cgt-pru: add package for PRU Host toolchain
TI provides a binary code generation toolchain to develop firmware for
the programmable real-time unit/co-processor found in some SOCs such as
some models in the AM335x line. This toolchain includes C/C++ support
(clpru) rather than just assembler (pasm) supported by the pre-existing
am335x-pru-package [1].  Following the lead of the Yocto meta-ti
layer [2], this package provides a host toolchain suitable for an x86
(or x86_64) Linux targeting an ARM-based PRU core.

[1] http://processors.wiki.ti.com/index.php/PRU_Assembly_Instructions#pasm_vs._clpru
[2] http://git.yoctoproject.org/cgit/cgit.cgi/meta-ti/tree/recipes-ti/devtools/ti-cgt-pru_2.1.1.bb

Signed-off-by: Ash Charles <ash.charles@savoirfairelinux.com>
[Thomas: add BR2_PACKAGE_HOST_TI_CGT_PRU_ARCH_SUPPORTS boolean option,
so that packages selecting host-ti-cgt-pru can easily inherit its
architecture dependencies.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-12-04 22:16:06 +01:00
Philippe Proulx
106c7d3006 lttng-babeltrace: add host Babeltrace as host utility
Although Babeltrace is available for all major Linux distributions, some
of them have a quite old version of this project.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-02 22:52:56 +01:00
Gary Bisson
5debaf1beb mfgtools: new package
This package contains the Freescale manufacturing tool.
It is designed to program firmware to i.MX boards during production.
The communication is done over USB using the Freescale UTP protocol.

The project is maintained on NXPMicro Github repository:
https://github.com/NXPmicro/mfgtools

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
[Thomas:
 - remove dependency on host-cmake, this is handled by the
   host-cmake-package infrastructure
 - add quotes around $(HOSTCXX)
 - add CPOL.htm to <pkg>_LICENSE_FILES.
 - tweaks to the readme.txt file.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-26 21:26:20 +02:00
Yann E. MORIN
702bf6597d package/mkpasswd: expose the host variant in menuconfig
Some people may need it to generate passwords (not necessarily for
users) from post-build scripts.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-07 22:56:46 +02:00
Erik Stromdahl
a249206e10 mxsldr: new package
Signed-off-by: Erik Stromdahl <erik.stromdahl@gmail.com>
[Thomas:
 - Rename prompt from "host-mxsldr" to "host mxsldr".
 - Add BR2_armeb in the list of architectures under which this package
   can be enabled.
 - Remove double quotes around the _SITE value.
 - The license is GPLv2+, not GPLv2.
 - Add a value for the _LICENSE_FILES variable
 - Rename MXSLDR_DEPENDENCIES to HOST_MXSLDR_DEPENDENCIES, since the
   dependencies of the host package are no longer derived from the
   dependencies of the target package.
 - Remove the MXSLDR_MAKE_OPTS variable that contained the PKG_CONFIG
   variable definition: it is already passed in HOST_CONFIGURE_OPTS.
 - Remove hash file, as it is not checked on Git packages for now.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-08 22:00:36 +02:00
Julien Floret
88418a2806 jsmin: add menuconfig entry for host variant
Signed-off-by: Julien Floret <julien.floret@6wind.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-07-02 12:13:48 +02:00
Wojciech Niziński
4fe8f3974f fwup: new package
Signed-off-by: Wojciech Nizinski <niziak@spox.org>
[Thomas:
 - Add missing dependency on wchar
 - Rewrap Config.in help text
 - Add missing "depends on BR2_USE_MMU" on the comment about wchar
   dependency.
 - Switch to upstream 0.7.0 version
 - Replace the hook calling autogen.sh by a hook simply creating the m4
   directory, which is what prevented <pkg>_AUTORECONF from working.
 - Add patch to fix build with uClibc.
 - Split in separate patches the addition of the host variants of
   libarchive and libsodium.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-12 23:19:35 +02:00
Thomas Petazzoni
88cbfd1007 android-tools: add new package
This package allows to build the fastboot and adb host utilities,
which can be used to interact with target devices implementing one of
these protocols.

The work behind the host utilities was funded by ECA Group
<http://www.ecagroup.com>. ECA Group is the copyright owner of the
contributed code.

The package also allows to build fastboot, adb and adbd daemon for the
target.

Regarding adbd, the target is required to have the FunctionFS USB Gadget
configuration. Then the following commands enable the use of adb:
 # modprobe g_ffs idVendor=0x18d1 idProduct=0x4e42 \
   iSerialNumber="buildroot"
 # mkdir -p /dev/usb-ffs/adb
 # mount -t functionfs adb /dev/usb-ffs/adb -o uid=2000,gid=2000
 # adbd &

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Tested-by: Julien Corjon <corjon.j@ecagroup.com>
[Thomas:
 - update on top of master.
 - fix Config.in.host prompt, it should have been "host android-tools"
   and not just "android-tools".]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-30 19:04:10 +02:00
Geoff Levand
ec50eb3e42 go: new host package
Add a new package 'go' which builds the host cross compiler and
libraries for the go programming language.

Signed-off-by: Geoff Levand <geoff@infradead.org>
[Thomas:
 - Put the computation of GO_GOARM inside the ifeq ($(BR2_arm),y)
   condition rather than duplicating this condition.
 - Remove the GO_GOARCH=unknown case, since there is no way to fall in
   this case as only supported architectures can use host-go.
 - Remove the GO_GOARM=unknown case, since we are sure that only
   ARMv5/6/7 will use host-go.
 - Rename HOST_GO_FINAL to HOST_GO_ROOT, since it's really the "root"
   of the Go installation.
 - Remove visible Config.in.host option.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-20 22:29:34 +02:00
Julian Scheel
0b467c6b95 cbootimage: new package
Add package for cbootimage host utility that is able to compile bct
files and generate flashable images out of a bct and an image for
tegra processors.

Signed-off-by: Julian Scheel <julian@jusst.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-19 22:33:08 +02:00
Julian Scheel
e903e453be tegrarcm: new package
Add package for the tegrarcm host utility that allows loading data to
tegra processors in recovery mode.

Signed-off-by: Julian Scheel <julian@jusst.de>
[Thomas: replace cryptopp cross-compilation fix by a more
autoconf-style solution, which has been submitted upstream.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-04-19 22:20:22 +02:00
Benoît Allard
2b5120ca92 xorriso: Add host variant
Signed-off-by: Benoît Allard <benoit.allard@greenbone.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-30 21:09:05 +02:00
Martin Bark
ddb8ff9d95 package/zip: add host-zip
Make the host variant of zip available.  This can be useful in
post-{build,image} scripts.

Signed-off-by: Martin Bark <martin@barkynet.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-02-20 14:24:38 +01:00
Ariel D'Alessandro
df3c3bcf59 aespipe: add host variant
Having the host version may allow post-image scripts to encrypt the
resulting image with aespipe (and decrypt it in the update tool on the
target).

Signed-off-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
[Thomas: rewrap Config.in help text, tweak commit title.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-02-06 21:27:24 +01:00
Alex Suykov
8432ce7795 vboot-utils: new package
Chromium OS verified boot utilities.

Needed for signing kernel images and manipulating bootable
partitions on media intended for Chromebooks.

Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-27 12:07:12 +01:00
Trent Piepho
3d5f55867a gptfdisk: Add host package
This tool which is useful for scripts that create flash images with
multiple partitions.  The host-parted package can do this too, but is
missing a number of features that the gptfdisk program has for dealing
with GPT.

The interactive gdisk and curses based sgdisk aren't built.  Just the
scriptable tool sgdisk.  The target package allows configuring which
tools are built, but this seem unnecessarily complex for the host
tool.

[Thomas: minor reformatting tweaks.]

Signed-off-by: Trent Piepho <tpiepho@kymetacorp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-15 22:33:33 +01:00
Thomas De Schampheleire
db6fb49e7f jq: enable host package
Allow building jq as host utility for use in post-build scripts.
This can be useful to created, edit, merge or even perform syntax checking
on JSON files.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-10-25 21:36:23 +01:00
Peter Seiderer
5774f07d43 dtc: add host build
Having a host variant of dtc is needed for example for U-Boot, which
uses the Device Tree for a number of platforms.

In addition, now that we have a proper host-dtc package, it is no
longer needed for the linux package to install the host dtc compiler:
users interested in having the host dtc compiler can simply enable
this package.

A Config.in.host option is added to build host-dtc, because the
initial reason why the host DTC built by the kernel was installed in
$(HOST_DIR)/usr/bin (commit 707d44d0a2
from Thomas DS) was:

    Having dtc as a host tool can be useful for users that have a
    custom boot scenario where the device tree is not embedded in the
    kernel.

[Thomas:
  - rework the commit log.]
[Peter: keep the (renamed) linux version]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-10-04 20:17:35 +02:00
Peter Korsgaard
ffce535003 package: add host-faketime
For use by packages or post-build/image scripts to fake the current time for
obnoxious programs that insists on adding a timestamp.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-05-13 10:12:17 +02:00
Antoine Ténart
059ab7f025 imx-usb-loader: new host package
This host package allows to build tools to download and execute code on
Freescale i.MX5/i.MX6 and Vybrid SoCs through the Serial Download
Protocol.

The work behind this commit was funded by ECA Group
<http://www.ecagroup.com>. ECA Group is the copyright owner of the
contributed code.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-05-02 09:47:04 +02:00
Clayton Shotwell
37d7897106 checkpolicy: new package
[Thomas:
 - Indicate in the Config.in help text that this policy compiler is
   SELinux related.
 - Rewrap Config.in help text and remove trailing white space.
 - Add a comment in the .mk file to indicate why we're passing
   DESTDIR= at build time.]

Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Clayton Shotwell <clshotwe@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-01-08 22:58:52 +01:00
Frank Hunleth
b268df55c1 qemu: add to host utilities menu
This allows qemu-user to be selected by the user. One use case
for this is to call qemu-user from post build scripts to
run regression tests against the build.

Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-23 12:09:17 +01:00
Yann E. MORIN
9d19f8fc86 package/mke2img: new package
Currently, we are using a shell script called genext2fs, that
impersonates the real genext2fs. But that script does much more than
just call genextfs: it also calls tune2fs and e2fsck.

Because it impersonates genext2fs, we can not easily add new options,
and are constrained by the genext2fs options.

But it turns out that, of all the options supported by the real
genext2fs, we only really care for a subset, namely:
  - number of blocks
  - number of inodes
  - percentage of blocks reeserved to root
  - the root directory which to generate the image from

So, we introduce a new host package, mke2img, that is intended to
eventually replace genext2fs.sh.

This new script is highly modeled from the existing genext2fs.sh, but
was slightly refreshed, and a new, supposedly sane set of options has
been choosen for the features we need (see above), and some new options
were added, too, rather than relying on the arguments order or
environment variables:
  -b <nb-blocks>    number of blocks in the filesystem
  -i <nb-inodes>    number of inodes in the filesystem
  -r <pc-reserved>  percentage of reserved blocks
* -d <root-dir>     directory containing the root of the filesystem
* -o <img-file>     output image file
  -G <ext-gen>      extfs generation: 2, 3, or 4 (default: 2)
  -R <ext-rev>      ext2 revision: 0 or 1 (default 1)
  -l <label>        filesystem label
  -u <uid>          filesystem UUID; if not specified, a random one is used

* Mandatory options

Since the upstream e2fsprogs are expected to release a new mke2fs that
will be able to generate a filesystem image from a directory, we then
will be able to replace all the logic in mke2img, to use mke2fs instead
of the (relatively fragile) combination of the three tools we currently
use.

An entry is added for it in the "Host utilities" menu, so it can be
selected for use by post-{build,image} scripts. The ext2 filesystem
selection is changed to select that now.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Karoly Kasza <kaszak@gmail.com>
Reviewed-by: Karoly Kasza <kaszak@gmail.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-07 22:06:44 +01:00
Eric Le Bihan
b3c5c03bde cramfs: add host utilities menu entry
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-12 09:53:43 +02:00
David Bachelart
dcd762c0f9 dos2unix: new package
Signed-off-by: David Bachelart <david.bachelart@bbright.com>
Acked-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>
2014-09-13 23:52:13 +02:00
Yann E. MORIN
8f570cd765 package/patchelf: new host package
In some situations, users may want to tweak the dynamic section of the
binaries (for example to add/set the RPATH to $ORIGIN/../lib).

Because it is not trivial to do it properly from the Buildroot
infrastructure, allow those users to use patchelf (e.g. from a
post-build script) to tweak binaries.

patchelf is able to:
  - modify an existing DT_RUNPATH tags
  - add a DT_RUNPATH tag if not already present
  - do the above to the DT_RPATH tag, too
  - set the path to the interpreter
  - remove DT_NEEDED tags
  - query a binary for the DT_RUNPATH/DT_RPATH tag, or for the
    interpreter path

Does not really fix #7172, but this is an appropriate workaround.

[Thomas: change license to GPLv3+, as mentionned in the project's
README file.]

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Mike Zick <minimod@morethan.org>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-31 23:53:23 +02:00
Gustavo Zacarias
66770f1a93 pwgen: add host utilities menu entry
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-07-01 15:11:42 +02:00
Arnout Vandecappelle
ef41e59792 infra: indent the Config.in source-ing of packages
This makes sure that a patch adding a package shows in which menu the
package is added.

Before this commit, the patch has something like this:
> diff --git a/package/Config.in b/package/Config.in
> index 7800f23..433312e 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -864,6 +864,7 @@ source "package/googlefontdirectory/Config.in"
>  source "package/haveged/Config.in"
>  source "package/mcrypt/Config.in"
>  source "package/mobile-broadband-provider-info/Config.in"
> +source "package/mypackage/Config.in"
>  source "package/shared-mime-info/Config.in"
>  source "package/snowball-init/Config.in"
>  source "package/sound-theme-borealis/Config.in"

[> added to avoid git-am recognizing this as the patch]

After this commit, the function marker shows in which menu the new
package was added:
> diff --git a/package/Config.in b/package/Config.in
> index b1111c8..7e6e1a4 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -864,6 +864,7 @@ menu "Miscellaneous"
>  	source "package/haveged/Config.in"
>  	source "package/mcrypt/Config.in"
>  	source "package/mobile-broadband-provider-info/Config.in"
> +	source "package/mypackage/Config.in"
>  	source "package/shared-mime-info/Config.in"
>  	source "package/snowball-init/Config.in"
>  	source "package/sound-theme-borealis/Config.in"

To keep things consistent, this is done for Config.in.host there, even
though we don't have sub-menus there at the moment.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-06-11 22:33:43 +02:00
Daniel Nyström
42ec5e049a e2tools: new package
E2tools is a simple set of GPL'ed utilities to read, write, and
manipulate files in an ext2/ext3 filesystem.  These utilities access a
filesystem directly using the ext2fs library.

[Thomas: add toolchain dependencies as needed, use full Git hash, use
github helper, add support for host version.]

Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-04-20 23:43:51 +02:00
Yann E. MORIN
2852f787d0 package/squashfs: add selection for the host variant
If any of the post-image scripts wants to handle squashfs filesystems,
we need to expose an option for squashfs-tools to be user-selectable.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Ryan Barnett <rjbarnet@rockwellcollins.com>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-08 23:16:57 +01:00
Danomi Manchego
ebeb21d029 package/util-linux: add a host variant
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-04 11:22:08 +01:00
Ezequiel García
5d5b468345 mtd: Allow to select the host variant
If any of the post-image scripts wants to create mtd/ubi images,
we need to expose an option for mtd-tools to be user-selectable.

[Peter: fix include order]
Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-02 23:02:19 +01:00
Yann E. MORIN
749b2589ea package/parted: add a host variant
Useful for for-build scripts to call parted, eg. to generate
partition tables and such automatically.

Since the primary goal is to use parted within scripts, we
do not need readline, so it is forcibly disabled.

Also, it does look unlikely that we need to manipulate LVM
volumes, so we forcibly disable support for the device-mapper.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-12-12 23:58:39 +01:00
Yann E. MORIN
d8286a993a package/genext2fs: add host variant
genext2fs is built only if the user selected an ext2 root filesystem.

However, some use-cases can't live with the full target/ dir on the
root filesystem, and requires separate partitions (eg. for /usr).
In this case, the user would not select an ext2 root fs in the
Buildrooot menu, and would only generate a tarball of the rootfs.
This tarball would then be used from a post-image script to build
the actual required FSes.

But then, genext2fs is not built, since the ext2 root FS was not
selected.

As for the other filesystem generators, provide a host variant of
genext2fs (genext2fs is already host-package aware, so only needs
adding a Kconfig entry).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-03 23:06:30 +02:00