From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] [pull request] Pull request for branch fs-cleanup
Date: Fri, 9 Apr 2010 11:06:38 +0200 [thread overview]
Message-ID: <cover.1270803901.git.thomas.petazzoni@free-electrons.com> (raw)
This patchset implements a major rework of the code that generates the
root filesystem generation. It is part of a more general work that
aims at cleaning up the contents of the target/ directory.
Each patch has a description detailing its changes but here is the
list of the major steps that this patch set goes through :
* First, I introduce new packages, or new host packages. The idea is
to remove the code in target/*/*.mk that was building tools such as
genromfs, squashfs-tools, mkcramfs to package/ so that 1. we can
leverage the package infrastructure and 2. these packages can also
be made available on the target if needed.
- New genromfs package, supported for both target and host
- New genext2fs package, supported for both target and host
- New cramfs package, supported for both target and host
- New squashfs package, supported for both target and host
note that I removed support for SquashFS 3.x
- New libcap package, supported for both target and host
it is a dependency of cdrkit
- Convert bzip2 to autools + add host package
- New cmake package, supported for the host only.
it is a build dependency of cdrkit
- New cdrkit package, supported for both target and host
it is the new generation of cdrecord/mkisofs tools
- Add host support to e2fsprogs so that libuuid can be built for the
host. Needed to build mtd-utils for the host
- Package mtd-utils converted to gentargets and added host support
so that we can get mkfs.jffs2 and mkfs.ubifs for the host
- New package cloop, supported for the host only
stupid build system, didn't want to fix for cross-build
- Convert lzma to the autotargets infrastructure for the host
* Once this was done, I removed all the host utils generation code
from target/* (where * is a filesystem)
- cloop, which was also converted to use fakeroot instead of sudo
- cpio
- cramfs
- ext2
- iso9660. converted to use genisoimage instead of mkisofs. Same
utility, but genisoimage is the one of cdrkit
- jffs2
- romfs
- squashfs
- tar
- ubifs. and remove the BROKEN mark.
* Sanity work around fakeroot: conversion to autotools for the host
and removal of BR2_HOST_FAKEROOT, since we never use configuration
options for host packages.
* Remove the BR2_TARGET_ROOTFS_xxxx_COPYTO options, designed to copy
the root filesystem image to a custom location after build. Just use
"cp" after using Buildroot.
* Addition of a filesystem generation infrastructure, to factorize the
code to generate the root filesystem images. It is loosely modeled
after our packages infrastructures.
A ROOTFS_TARGET macro does all the work of creating the fakeroot
script. The only thing the filesystem-specific code has to specify
is: 1. list of host dependencies and 2. command to execute to
generate the filesystem image.
* Conversion of most filesystems to the ROOTFS_TARGET infrastructure
- cloop
- cpio
- cramfs
- romfs
- tar
- squashfs
- ext2
- jffs2
- ubifs
- initramfs
Note: iso9660 has to be kept as a manual thing, since its generation
procedure is very very different from the others.
* Removal of the IMAGE internal variable, that was the name of the
generated rootfilesystem (which could be tweaked through
configuration options for a prefix and suffix). Instead, just
hardcode the generation of rootfs.XXXX where XXXX is the filesystem
type.
* Move everything all filesystem generation code in a new top-level
directory "fs/". A new configuration category is created for
Bootloaders, so that they are not mixed with filesystems.
The following changes since commit 6cbdb507c37124d06bdac6a82c81aa5c16e164f9:
Peter Korsgaard (1):
CHANGES: add libaio
are available in the git repository at:
git://git.busybox.net/~tpetazzoni/git/buildroot fs-cleanup
Thomas Petazzoni (44):
genromfs: add new package
genext2fs: new package
cramfs: new package
squashfs: new package
libcap: new package
bzip2: convert to gentargets, add host package, bump version
cmake: new package
cdrkit: new package
e2fsprogs: add support for host package
mtd: convert to gentargets, add host package
cloop: new package
lzma: convert the host package to the autotools infrastructure
target/cloop: cleanup
target/cpio: cleanup
target/cramfs: cleanup
target/ext2: cleanup
target/iso9660: cleanup
target/jffs2: cleanup
target/romfs: cleanup
target/squashfs: cleanup, remove support for 3.x
target/tar: cleanup
target/ubifs: cleanup, unbroken
fakeroot: convert to the autotools infrastructure
fakeroot: remove all references to BR2_HOST_FAKEROOT
target/: remove the COPYTO mess
target: Add new infrastructure for filesystem generation
cloop: convert to ROOTFS_TARGET infrastructure
cpio: convert to ROOTFS_TARGET infrastructure
cramfs: convert to ROOTFS_TARGET infrastructure
romfs: convert to ROOTFS_TARGET infrastructure
tar: convert to ROOTFS_TARGET infrastructure
squashfs: convert to ROOTFS_TARGET infrastructure
ext2: convert to ROOTFS_TARGET infrastructure
jffs2: convert to ROOTFS_TARGET infrastructure
ubifs: convert to ROOTFS_TARGET infrastructure
initramfs: convert to ROOTFS_TARGET infrastructure
busybox initramfs: do not use the IMAGE variable
target/common: do not use IMAGE
iso9660: rework in a similar way to ROOTFS_TARGET
Remove IMAGE and related configuration options
Move all filesystem generation code to fs/
Coherent naming for .mk files in fs/
Update defconfigs after fs cleanup
fs/*/Config.in: remove useless configuration comments
Config.in | 2 +
Makefile | 2 +
configs/at91rm9200df_defconfig | 9 +-
configs/at91rm9200df_ext_defconfig | 9 +-
configs/at91sam9260dfc_defconfig | 9 +-
configs/at91sam9260dfc_ext_defconfig | 9 +-
configs/at91sam9260pf_defconfig | 5 +-
configs/at91sam9261ek_defconfig | 9 +-
configs/at91sam9261ek_ext_defconfig | 9 +-
configs/at91sam9263ek_defconfig | 9 +-
configs/at91sam9263ek_ext_defconfig | 9 +-
configs/at91sam9g20dfc_defconfig | 9 +-
configs/at91sam9g20dfc_ext_defconfig | 9 +-
configs/atngw100-base_defconfig | 7 +-
configs/atngw100_defconfig | 7 +-
configs/atstk1005_defconfig | 7 +-
configs/atstk100x_defconfig | 7 +-
configs/i386_defconfig | 5 +-
configs/i686_defconfig | 5 +-
configs/integrator926_defconfig | 7 +-
configs/integrator926_huge_defconfig | 7 +-
configs/kb9202_defconfig | 3 +-
configs/v100sc2_defconfig | 3 +-
fs/Config.in | 30 ++++
{target => fs}/cloop/Config.in | 0
fs/cloop/cloop.mk | 13 ++
fs/common.mk | 70 ++++++++++
fs/cpio/Config.in | 34 +++++
fs/cpio/cpio.mk | 18 +++
{target => fs}/cramfs/Config.in | 1 -
fs/cramfs/cramfs.mk | 22 +++
fs/ext2/Config.in | 55 ++++++++
fs/ext2/ext2.mk | 40 ++++++
{target => fs}/initramfs/Config.in | 0
{target => fs}/initramfs/gen_initramfs_list.sh | 0
fs/initramfs/initramfs.mk | 18 +++
{target => fs}/iso9660/Config.in | 6 -
fs/iso9660/iso9660.mk | 49 +++++++
{target => fs}/iso9660/menu.lst | 0
{target => fs}/jffs2/Config.in | 11 --
fs/jffs2/jffs2.mk | 61 ++++++++
{target => fs}/romfs/Config.in | 1 -
fs/romfs/romfs.mk | 15 ++
fs/squashfs/Config.in | 4 +
fs/squashfs/squashfs.mk | 13 ++
fs/tar/Config.in | 41 ++++++
fs/tar/tar.mk | 13 ++
fs/ubifs/Config.in | 79 +++++++++++
fs/ubifs/ubifs.mk | 25 ++++
package/Config.in | 6 +
package/Makefile.in | 4 -
package/busybox/initramfs.mk | 2 +-
package/bzip2/bzip2.mk | 140 ++++++++-----------
package/cdrkit/Config.in | 11 ++
package/cdrkit/cdrkit.mk | 63 +++++++++
package/cloop/cloop.mk | 18 +++
package/cmake/cmake.mk | 20 +++
package/cramfs/Config.in | 7 +
.../cramfs/cramfs-01-devtable.patch | 0
{target => package}/cramfs/cramfs-02-endian.patch | 0
.../cramfs/cramfs-03-cygwin_IO.patch | 0
package/cramfs/cramfs.mk | 33 +++++
package/e2fsprogs/e2fsprogs.mk | 5 +
package/fakeroot/Config.in | 4 -
package/fakeroot/fakeroot.mk | 126 ++---------------
package/genext2fs/Config.in | 9 ++
.../genext2fs}/genext2fs-1.4-nosquash.patch | 0
.../genext2fs-1.4-remove_ugly_warnings.patch | 0
package/genext2fs/genext2fs.mk | 12 ++
package/genromfs/Config.in | 6 +
package/genromfs/genromfs-0.5.2-build-system.patch | 26 ++++
package/genromfs/genromfs.mk | 31 ++++
package/libcap/Config.in | 10 ++
package/libcap/libcap-2.19-build-system.patch | 55 ++++++++
package/libcap/libcap.mk | 27 ++++
package/lzma/lzma.mk | 65 +---------
package/mtd/mtd.mk | 144 ++++++-------------
package/squashfs/Config.in | 6 +
.../squashfs/squashfs-4.0-build-system-fix.patch | 11 +-
...quashfs-4.0-mksquashfs-race-condition-fix.patch | 0
package/squashfs/squashfs.mk | 30 ++++
scripts/test/Config.in.test.buildall | 1 -
target/Config.in | 45 +------
target/Makefile.in | 1 -
target/cloop/Makefile.in | 3 -
target/cloop/cloop.mk | 108 ---------------
target/cpio/Config.in | 50 -------
target/cpio/cpioroot.mk | 87 ------------
target/cramfs/cramfs.mk | 86 ------------
target/ext2/Config.in | 75 ----------
target/ext2/ext2root.mk | 146 --------------------
target/initramfs/initramfs.mk | 43 ------
target/iso9660/iso9660.mk | 95 -------------
target/jffs2/jffs2root.mk | 99 -------------
target/romfs/romfs.mk | 71 ----------
target/squashfs/Config.in | 32 -----
.../squashfs/squashfs-3.4-build-system-fix.patch | 28 ----
target/squashfs/squashfsroot.mk | 85 ------------
target/tar/Config.in | 59 --------
target/tar/tarroot.mk | 64 ---------
target/ubifs/Config.in | 103 --------------
target/ubifs/ubifsroot.mk | 125 -----------------
target/xtensa/defconfig | 1 -
toolchain/dependencies/dependencies.sh | 2 +-
104 files changed, 1172 insertions(+), 1884 deletions(-)
create mode 100644 fs/Config.in
rename {target => fs}/cloop/Config.in (100%)
create mode 100644 fs/cloop/cloop.mk
create mode 100644 fs/common.mk
create mode 100644 fs/cpio/Config.in
create mode 100644 fs/cpio/cpio.mk
rename {target => fs}/cramfs/Config.in (84%)
create mode 100644 fs/cramfs/cramfs.mk
create mode 100644 fs/ext2/Config.in
create mode 100644 fs/ext2/ext2.mk
rename {target => fs}/initramfs/Config.in (100%)
rename {target => fs}/initramfs/gen_initramfs_list.sh (100%)
create mode 100644 fs/initramfs/initramfs.mk
rename {target => fs}/iso9660/Config.in (74%)
create mode 100644 fs/iso9660/iso9660.mk
rename {target => fs}/iso9660/menu.lst (100%)
rename {target => fs}/jffs2/Config.in (93%)
create mode 100644 fs/jffs2/jffs2.mk
rename {target => fs}/romfs/Config.in (81%)
create mode 100644 fs/romfs/romfs.mk
create mode 100644 fs/squashfs/Config.in
create mode 100644 fs/squashfs/squashfs.mk
create mode 100644 fs/tar/Config.in
create mode 100644 fs/tar/tar.mk
create mode 100644 fs/ubifs/Config.in
create mode 100644 fs/ubifs/ubifs.mk
create mode 100644 package/cdrkit/Config.in
create mode 100644 package/cdrkit/cdrkit.mk
create mode 100644 package/cloop/cloop.mk
create mode 100644 package/cmake/cmake.mk
create mode 100644 package/cramfs/Config.in
rename {target => package}/cramfs/cramfs-01-devtable.patch (100%)
rename {target => package}/cramfs/cramfs-02-endian.patch (100%)
rename {target => package}/cramfs/cramfs-03-cygwin_IO.patch (100%)
create mode 100644 package/cramfs/cramfs.mk
create mode 100644 package/genext2fs/Config.in
rename {target/ext2 => package/genext2fs}/genext2fs-1.4-nosquash.patch (100%)
rename {target/ext2 => package/genext2fs}/genext2fs-1.4-remove_ugly_warnings.patch (100%)
create mode 100644 package/genext2fs/genext2fs.mk
create mode 100644 package/genromfs/Config.in
create mode 100644 package/genromfs/genromfs-0.5.2-build-system.patch
create mode 100644 package/genromfs/genromfs.mk
create mode 100644 package/libcap/Config.in
create mode 100644 package/libcap/libcap-2.19-build-system.patch
create mode 100644 package/libcap/libcap.mk
create mode 100644 package/squashfs/Config.in
rename {target => package}/squashfs/squashfs-4.0-build-system-fix.patch (88%)
rename {target => package}/squashfs/squashfs-4.0-mksquashfs-race-condition-fix.patch (100%)
create mode 100644 package/squashfs/squashfs.mk
delete mode 100644 target/cloop/Makefile.in
delete mode 100644 target/cloop/cloop.mk
delete mode 100644 target/cpio/Config.in
delete mode 100644 target/cpio/cpioroot.mk
delete mode 100644 target/cramfs/cramfs.mk
delete mode 100644 target/ext2/Config.in
delete mode 100644 target/ext2/ext2root.mk
delete mode 100644 target/initramfs/initramfs.mk
delete mode 100644 target/iso9660/iso9660.mk
delete mode 100644 target/jffs2/jffs2root.mk
delete mode 100644 target/romfs/romfs.mk
delete mode 100644 target/squashfs/Config.in
delete mode 100644 target/squashfs/squashfs-3.4-build-system-fix.patch
delete mode 100644 target/squashfs/squashfsroot.mk
delete mode 100644 target/tar/Config.in
delete mode 100644 target/tar/tarroot.mk
delete mode 100644 target/ubifs/Config.in
delete mode 100644 target/ubifs/ubifsroot.mk
Thanks,
--
Thomas Petazzoni
next reply other threads:[~2010-04-09 9:06 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-09 9:06 Thomas Petazzoni [this message]
2010-04-09 9:06 ` [Buildroot] [PATCH 01/44] genromfs: add new package Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 02/44] genext2fs: " Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 03/44] cramfs: " Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 04/44] squashfs: " Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 05/44] libcap: " Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 06/44] bzip2: convert to gentargets, add host package, bump version Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 07/44] cmake: new package Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 08/44] cdrkit: " Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 09/44] e2fsprogs: add support for host package Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 10/44] mtd: convert to gentargets, add " Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 11/44] cloop: new package Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 12/44] lzma: convert the host package to the autotools infrastructure Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 13/44] target/cloop: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 14/44] target/cpio: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 15/44] target/cramfs: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 16/44] target/ext2: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 17/44] target/iso9660: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 18/44] target/jffs2: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 19/44] target/romfs: cleanup Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 20/44] target/squashfs: cleanup, remove support for 3.x Thomas Petazzoni
2010-04-09 9:06 ` [Buildroot] [PATCH 21/44] target/tar: cleanup Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 22/44] target/ubifs: cleanup, unbroken Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 23/44] fakeroot: convert to the autotools infrastructure Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 24/44] fakeroot: remove all references to BR2_HOST_FAKEROOT Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 25/44] target/: remove the COPYTO mess Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 26/44] target: Add new infrastructure for filesystem generation Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 27/44] cloop: convert to ROOTFS_TARGET infrastructure Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 28/44] cpio: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 29/44] cramfs: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 30/44] romfs: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 31/44] tar: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 32/44] squashfs: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 33/44] ext2: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 34/44] jffs2: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 35/44] ubifs: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 36/44] initramfs: " Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 37/44] busybox initramfs: do not use the IMAGE variable Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 38/44] target/common: do not use IMAGE Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 39/44] iso9660: rework in a similar way to ROOTFS_TARGET Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 40/44] Remove IMAGE and related configuration options Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 41/44] Move all filesystem generation code to fs/ Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 42/44] Coherent naming for .mk files in fs/ Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 43/44] Update defconfigs after fs cleanup Thomas Petazzoni
2010-04-09 9:07 ` [Buildroot] [PATCH 44/44] fs/*/Config.in: remove useless configuration comments Thomas Petazzoni
2010-04-09 9:20 ` [Buildroot] [pull request] Pull request for branch fs-cleanup Peter Korsgaard
2010-04-09 12:54 ` Thomas Petazzoni
2010-04-09 14:19 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1270803901.git.thomas.petazzoni@free-electrons.com \
--to=thomas.petazzoni@free-electrons.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.