[febootstrap/el5] New upstream version 3.14.

Richard W.M. Jones rjones at fedoraproject.org
Fri Mar 30 09:27:10 UTC 2012


commit 1ed1594a5e73baba72738f14a32ea2443c3a812a
Author: Richard W.M. Jones <rjones at redhat.com>
Date:   Fri Mar 30 10:17:59 2012 +0100

    New upstream version 3.14.
    
    - Import from Rawhide into EPEL 5.
    - Add upstream patches to fix build on RHEL 5.

 ...-t-pass-BLOCK_FLAG_READ_ONLY-to-ext2_bloc.patch |   38 ---
 ...EL-5-configure-Ignore-missing-AC_PROG_SED.patch |   30 +++
 ...d-Remove-a-few-C99-isms-that-confused-old.patch |   54 +++++
 0002-main-should-return-int.patch                  |   25 --
 0003-Fix-elf-default-arch-for-ppc-and-ppc64.patch  |   25 --
 ...-arch-should-exit-with-an-error-if-it-fai.patch |   22 --
 ...-5-Link-with-static-instead-of-all-static.patch |   24 --
 febootstrap.spec                                   |  245 ++++++++++++++------
 sources                                            |    2 +-
 9 files changed, 261 insertions(+), 204 deletions(-)
---
diff --git a/0001-RHEL-5-configure-Ignore-missing-AC_PROG_SED.patch b/0001-RHEL-5-configure-Ignore-missing-AC_PROG_SED.patch
new file mode 100644
index 0000000..a4ac97b
--- /dev/null
+++ b/0001-RHEL-5-configure-Ignore-missing-AC_PROG_SED.patch
@@ -0,0 +1,30 @@
+From 36609d65106eab7893e4f20af55a03d6c94890ae Mon Sep 17 00:00:00 2001
+From: Richard W.M. Jones <rjones at redhat.com>
+Date: Fri, 30 Mar 2012 10:08:44 +0100
+Subject: [PATCH 1/2] RHEL 5: configure: Ignore missing AC_PROG_SED.
+
+---
+ configure.ac |    7 ++++++-
+ 1 files changed, 6 insertions(+), 1 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index e21dd8d..9375b9d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -38,7 +38,12 @@ AC_SYS_LARGEFILE
+ gl_INIT
+ 
+ # Define $(SED).
+-AC_PROG_SED
++m4_ifdef([AC_PROG_SED],[
++    AC_PROG_SED
++],[
++    dnl ... else hope for the best
++    AC_SUBST([SED], "sed")
++])
+ 
+ # OCaml and ocamlfind are required to compile.
+ AC_PROG_OCAML
+-- 
+1.7.4.1
+
diff --git a/0002-RHEL-5-build-Remove-a-few-C99-isms-that-confused-old.patch b/0002-RHEL-5-build-Remove-a-few-C99-isms-that-confused-old.patch
new file mode 100644
index 0000000..c4842d9
--- /dev/null
+++ b/0002-RHEL-5-build-Remove-a-few-C99-isms-that-confused-old.patch
@@ -0,0 +1,54 @@
+From 636a80b5a70382f21da47c44a0acd3efa2bc7fcf Mon Sep 17 00:00:00 2001
+From: Richard W.M. Jones <rjones at redhat.com>
+Date: Fri, 30 Mar 2012 10:09:04 +0100
+Subject: [PATCH 2/2] RHEL 5: build: Remove a few C99-isms that confused old gcc.
+
+---
+ helper/appliance.c  |    3 ++-
+ helper/ext2initrd.c |    9 ++++++---
+ 2 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/helper/appliance.c b/helper/appliance.c
+index 05ad3e5..e45c2ab 100644
+--- a/helper/appliance.c
++++ b/helper/appliance.c
+@@ -177,7 +177,8 @@ iterate_input_directory (const char *dirname, int dirfd, struct writer *writer)
+   strcpy (path, dirname);
+   path[len++] = '/';
+ 
+-  for (size_t i = 0; entries[i] != NULL; ++i) {
++  size_t i;
++  for (i = 0; entries[i] != NULL; ++i) {
+     size_t len2 = strlen (entries[i]);
+ 
+     if (len + 1 + len2 >= PATH_MAX)
+diff --git a/helper/ext2initrd.c b/helper/ext2initrd.c
+index 8b64e0f..6099a08 100644
+--- a/helper/ext2initrd.c
++++ b/helper/ext2initrd.c
+@@ -93,8 +93,10 @@ ext2_make_initrd (const char *modpath, const char *initrd)
+ 
+   read_module_deps (modpath);
+   add_module ("");
+-  for (int i = 0; kmods[i] != NULL; ++i) {
+-    for (struct module *m = modules; m; m = m->next) {
++  int i;
++  struct module *m;
++  for (i = 0; kmods[i] != NULL; ++i) {
++    for (m = modules; m; m = m->next) {
+       char *n = strrchr (m->name, '/');
+       if (n)
+         n += 1;
+@@ -253,7 +255,8 @@ print_module_load_order (FILE *pipe, FILE *list, struct module *m)
+   if (m->visited)
+     return;
+ 
+-  for (struct moddep *d = m->deps; d; d = d->next)
++  struct moddep *d;
++  for (d = m->deps; d; d = d->next)
+     print_module_load_order (pipe, list, d->dep);
+ 
+   if (m->name[0] == 0)
+-- 
+1.7.4.1
+
diff --git a/febootstrap.spec b/febootstrap.spec
index 17b967a..01c766b 100644
--- a/febootstrap.spec
+++ b/febootstrap.spec
@@ -1,26 +1,30 @@
-Summary:     Bootstrap a new Fedora system (like debootstrap)
+Summary:     Bootstrapping tool for creating supermin appliances
 Name:        febootstrap
-Version:     2.10
-Release:     6%{?dist}
+Version:     3.14
+Release:     1%{?dist}
 License:     GPLv2+
 Group:       Development/Tools
 URL:         http://people.redhat.com/~rjones/febootstrap/
 Source0:     http://people.redhat.com/~rjones/febootstrap/files/%{name}-%{version}.tar.gz
 BuildRoot:   %{_tmppath}/%{name}-%{version}-%{release}-root
 
+BuildRequires: autoconf, automake, libtool
+Patch0001:   0001-RHEL-5-configure-Ignore-missing-AC_PROG_SED.patch
+Patch0002:   0002-RHEL-5-build-Remove-a-few-C99-isms-that-confused-old.patch
+
 BuildRequires: /usr/bin/pod2man
-BuildRequires: fakeroot >= 1.11
-BuildRequires: fakechroot >= 2.9-20
 BuildRequires: yum >= 3.2
-BuildRequires: /sbin/mke4fs
+BuildRequires: /sbin/mke2fs
 BuildRequires: e2fsprogs-devel
+#BuildRequires: glibc-static, zlib-static
+BuildRequires: ocaml, ocaml-findlib-devel
+BuildRequires: prelink
+
+ExclusiveArch:  alpha armv4l %{ix86} ia64 x86_64 ppc sparc sparcv9 ppc64
 
-Requires:    fakeroot >= 1.11
-Requires:    fakechroot >= 2.9-20
 Requires:    yum >= 3.2
-#Requires:    util-linux-ng
-Requires:    cpio
-Requires:    /sbin/mke4fs
+Requires:    yum-utils
+Requires:    febootstrap-supermin-helper = %{version}-%{release}
 
 # These are suggestions.  However making them hard requirements
 # pulls in far too much stuff.
@@ -28,45 +32,36 @@ Requires:    /sbin/mke4fs
 #Requires:    filelight
 #Requires:    baobab     # Not as nice as filelight.
 
-# Upstream patches to fix RHEL 5 build.
-Patch0:       0001-RHEL-5-Don-t-pass-BLOCK_FLAG_READ_ONLY-to-ext2_bloc.patch
-Patch1:       0002-main-should-return-int.patch
-Patch2:       0003-Fix-elf-default-arch-for-ppc-and-ppc64.patch
-Patch3:       0004-elf-default-arch-should-exit-with-an-error-if-it-fai.patch
 
-# This patch is not upstream, but is required to get static
-# linking of the init program to work.
-Patch99:      RHEL-5-Link-with-static-instead-of-all-static.patch
+%description
+febootstrap is a tool for building supermin appliances.  These are
+tiny appliances (similar to virtual machines), usually around 100KB in
+size, which get fully instantiated on-the-fly in a fraction of a
+second when you need to boot one of them.
 
 
-%description
-febootstrap is a Fedora equivalent to Debian's debootstrap.  You can
-use it to create a basic Fedora filesystem, and build initramfs
-(initrd.img) or filesystem images.
+%package supermin-helper
+Summary:     Runtime support for febootstrap
+Group:       Development/Tools
+Requires:    util-linux-ng
+Requires:    cpio
+Requires:    /sbin/mke2fs
+Obsoletes:   febootstrap <= 3.3-3
+Requires:    e2fsprogs-libs
 
-febootstrap also includes a separate tool to minimize filesystems by
-removing unneeded locales, documentation etc.
 
-The main difference from other appliance building tools is that this
-one doesn't need to be run as root.
+%description supermin-helper
+%{name}-supermin-helper contains the runtime support for %{name}.
 
 
 %prep
 %setup -q
-
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch99 -p1
+%patch0001 -p1
+%patch0002 -p1
+AUTOMAKE="automake --add-missing --foreign" autoreconf -i
 
 
 %build
-# Old mke2fs has different command line options.  We need to use
-# the new mke4fs program (which is the same, just different name)
-# which only exists in RHEL 5.
-export MKE2FS=/sbin/mke4fs
-
 %configure
 make
 
@@ -75,11 +70,12 @@ make
 rm -rf $RPM_BUILD_ROOT
 make DESTDIR=$RPM_BUILD_ROOT install
 
-# Clean up the examples/ directory which will get installed in %doc.
-# In this case I don't want the scripts to be executable because
-# people should read them carefully before running them.
-rm examples/Makefile*
-chmod -x examples/*.sh
+# febootstrap-supermin-helper is marked as requiring an executable
+# stack.  This happens because we use objcopy to create one of the
+# component object files from a data file.  The program does not in
+# fact require an executable stack.  The easiest way to fix this is to
+# clear the flag here.
+execstack -c $RPM_BUILD_ROOT%{_bindir}/febootstrap-supermin-helper
 
 
 %clean
@@ -88,43 +84,155 @@ rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(-,root,root,-)
-%doc COPYING README examples
+%doc COPYING README
 %{_bindir}/febootstrap
-%{_bindir}/febootstrap-run
-%{_bindir}/febootstrap-install
-%{_bindir}/febootstrap-minimize
-%{_bindir}/febootstrap-to-initramfs
-%{_bindir}/febootstrap-to-supermin
-%{_bindir}/febootstrap-supermin-helper
 %{_mandir}/man8/febootstrap.8*
-%{_mandir}/man8/febootstrap-run.8*
-%{_mandir}/man8/febootstrap-install.8*
-%{_mandir}/man8/febootstrap-minimize.8*
-%{_mandir}/man8/febootstrap-to-initramfs.8*
-%{_mandir}/man8/febootstrap-to-supermin.8*
+
+
+%files supermin-helper
+%defattr(-,root,root,-)
+%doc COPYING
+%{_bindir}/febootstrap-supermin-helper
 %{_mandir}/man8/febootstrap-supermin-helper.8*
 
 
 %changelog
-* Sat Nov  6 2010 Richard Jones <rjones at redhat.com> - 2.10-6
-- Use mke4fs on RHEL 5.
+* Fri Mar 30 2012 Richard Jones <rjones at redhat.com> - 3.14-1
+- New upstream version 3.14.
+- Import from Rawhide into EPEL 5.
+- Add upstream patches to fix build on RHEL 5.
+- Remove deps for glibc-static, zlib-static.
+
+* Thu Mar 29 2012 Richard Jones <rjones at redhat.com> - 3.13-4
+- e2fsprogs moved /sbin/mke2fs to /usr/sbin (thanks Eric Sandeen).
+
+* Thu Mar  1 2012 Richard Jones <rjones at redhat.com> - 3.13-2
+- Missing BR zlib-static.
+
+* Thu Feb  9 2012 Richard Jones <rjones at redhat.com> - 3.13-1
+- New upstream version 3.13.
+- Remove upstream patch which is included in this version.
+
+* Fri Jan 13 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.12-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Tue Jan  3 2012 Richard Jones <rjones at redhat.com> - 3.12-4
+- Depend on latest e2fsprogs (RHBZ#771310).
+
+* Wed Nov  9 2011 Richard Jones <rjones at redhat.com> - 3.12-2
+- Include upstream patch to work around Python stupidity.
+
+* Tue Oct 18 2011 Richard Jones <rjones at redhat.com> - 3.12-1
+- New upstream version 3.12.
+- Remove upstream patch which is included in this version.
+
+* Fri Oct 14 2011 Richard Jones <rjones at redhat.com> - 3.11-2
+- Add upstream patch to fix febootstrap on non-Debian.
+
+* Fri Oct 14 2011 Richard Jones <rjones at redhat.com> - 3.11-1
+- New upstream version 3.11.
 
-* Sat Nov  6 2010 Richard Jones <rjones at redhat.com> - 2.10-5
-- Various fixes for RHEL 5.
+* Thu Sep  1 2011 Richard Jones <rjones at redhat.com> - 3.10-1
+- New upstream version 3.10.
 
-* Sat Nov  6 2010 Richard Jones <rjones at redhat.com> - 2.10-1
+* Fri Aug 26 2011 Richard Jones <rjones at redhat.com> - 3.9-1
+- New upstream version 3.9.
+
+* Tue Jul 26 2011 Richard Jones <rjones at redhat.com> - 3.8-1
+- New upstream version 3.8.
+
+* Fri Jul 15 2011 Richard Jones <rjones at redhat.com> - 3.7-1
+- New upstream version 3.7.
+
+* Wed Jun  1 2011 Richard Jones <rjones at redhat.com> - 3.6-1
+- New upstream version 3.6.
+- This version no longer needs external insmod.static.
+
+* Fri May 27 2011 Richard Jones <rjones at redhat.com> - 3.5-1
+- New upstream version 3.5.
+- Remove patch which is now upstream.
+
+* Fri Mar 18 2011 Richard Jones <rjones at redhat.com> - 3.4-2
+- Don't fail if objects are created in a symlinked dir (RHBZ#698089).
+
+* Fri Mar 18 2011 Richard Jones <rjones at redhat.com> - 3.4-1
+- New upstream version 3.4.
+- febootstrap-supermin-helper Obsoletes older versions of febootstrap.
+
+* Tue Feb 08 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.3-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Fri Jan 14 2011 Richard Jones <rjones at redhat.com> - 3.3-4
+- Split package into febootstrap (for building) and febootstrap-supermin-helper
+  (for running).  Note that febootstrap depends on febootstrap-supermin-helper,
+  but you can install febootstrap-supermin-helper on its own.
+
+* Fri Jan 14 2011 Richard Jones <rjones at redhat.com> - 3.3-3
+- Clear executable stack flag on febootstrap-supermin-helper.
+
+* Thu Jan 13 2011 Dan HorĂ¡k <dan[at]danny.cz> - 3.3-2
+- add the ocaml's ExclusiveArch
+
+* Sat Dec 11 2010 Richard Jones <rjones at redhat.com> - 3.3-1
+- New upstream version 3.3.
+
+* Tue Dec  7 2010 Richard Jones <rjones at redhat.com> - 3.2-1
+- New upstream version 3.2.
+- Remove upstream patches.
+
+* Tue Dec  7 2010 Richard Jones <rjones at redhat.com> - 3.1-5
+- Previous fix for RHBZ#654638 didn't work, fix it correctly.
+
+* Mon Dec  6 2010 Richard Jones <rjones at redhat.com> - 3.1-4
+- Properly ignore .*.hmac files (accidental reopening of RHBZ#654638).
+
+* Mon Dec  6 2010 Richard Jones <rjones at redhat.com> - 3.1-3
+- Uses yumdownloader at runtime, so require yum-utils.
+
+* Mon Dec  6 2010 Richard Jones <rjones at redhat.com> - 3.1-2
+- New upstream version 3.1.
+- BR insmod.static.
+
+* Sun Dec  5 2010 Richard Jones <rjones at redhat.com> - 3.0-2
+- New upstream version 3.0 (note this is incompatible with 2.x).
+- Fix upstream URLs.
+- fakeroot, fakechroot no longer required.
+- insmod.static is required at runtime (missing dependency from earlier).
+- The only programs are 'febootstrap' and 'febootstrap-supermin-helper'.
+- BR ocaml, ocaml-findlib-devel.
+- No examples are provided with this version of febootstrap.
+
+* Thu Nov 25 2010 Richard Jones <rjones at redhat.com> - 2.11-1
+- New upstream version 2.11.
+- Fixes "ext2fs_mkdir .. No free space in directory" bug which affects
+  libguestfs on rawhide.
+
+* Thu Oct 28 2010 Richard Jones <rjones at redhat.com> - 2.10-1
 - New upstream version 2.10.
-- Add extra BuildRequires from Rawhide spec file.
+- Adds -u and -g options to febootstrap-supermin-helper which are
+  required by virt-v2v.
+
+* Fri Aug 27 2010 Richard Jones <rjones at redhat.com> - 2.9-1
+- New upstream version 2.9.
+- Fixes directory ordering problem in febootstrap-supermin-helper.
+
+* Tue Aug 24 2010 Richard Jones <rjones at redhat.com> - 2.8-1
+- New upstream version 2.8.
+
+* Sat Aug 21 2010 Richard Jones <rjones at redhat.com> - 2.8-0.2
+- New pre-release version of 2.8.
+  + Note this is based on 2.7 + mailing list patches.
+- New BRs on mke2fs, libext2fs, glibc-static.
 
-* Wed Jun  2 2010 Richard Jones <rjones at redhat.com> - 2.7-1
+* Fri May 14 2010 Richard Jones <rjones at redhat.com> - 2.7-2
 - New upstream version 2.7.
 - febootstrap-supermin-helper shell script rewritten in C for speed.
 - This package contains C code so it is no longer 'noarch'.
 - MAKEDEV isn't required.
 
-* Mon Mar  1 2010 Richard Jones <rjones at redhat.com> - 2.6-1
+* Fri Jan 22 2010 Richard Jones <rjones at redhat.com> - 2.6-1
 - New upstream release 2.6.
-- Backported from Fedora Rawhide.
+- Recheck package in rpmlint.
 
 * Thu Oct 22 2009 Richard Jones <rjones at redhat.com> - 2.5-2
 - New upstream release 2.5.
@@ -134,18 +242,17 @@ rm -rf $RPM_BUILD_ROOT
 * Thu Jul 30 2009 Richard Jones <rjones at redhat.com> - 2.4-1
 - New upstream release 2.4.
 
-* Tue Jun 30 2009 Richard Jones <rjones at redhat.com> - 2.3-1.el5.1
-- Package version regressed in EPEL 5 after the move to Koji. Force rebuild.
+* Fri Jul 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
 
-* Mon Jun 22 2009 Richard Jones <rjones at redhat.com> - 2.3-1
+* Mon Jun 15 2009 Richard Jones <rjones at redhat.com> - 2.3-1
 - New upstream release 2.3.
 
 * Mon Jun 15 2009 Richard Jones <rjones at redhat.com> - 2.2-1
 - New upstream release 2.2.
 
-* Mon May 11 2009 Richard Jones <rjones at redhat.com> - 2.0-2
+* Mon May 11 2009 Richard Jones <rjones at redhat.com> - 2.0-1
 - New upstream release 2.0.
-- Remove runtime requires of util-linux-ng and upx.
 
 * Thu May  7 2009 Richard Jones <rjones at redhat.com> - 1.9-1
 - New upstream release 1.9.
diff --git a/sources b/sources
index bf88e96..a7d29c3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-275039380e0fd307b57c8fedd21a7dd7  febootstrap-2.10.tar.gz
+62dfef6abac5e9fe75d56c5a871be500  febootstrap-3.14.tar.gz


More information about the scm-commits mailing list