On Wed, Aug 26, 2015 at 11:23 AM, Helmut Grohne <[email protected]> wrote:

> In resolving the cross bootstrap manually, I figured that curl is indeed
> necessary and it will soon show up on rebootstrap[1]. The currently
> missing parts are cyrus-sasl2, openldap, libverto and krb5. For
> cyrus-sasl2 I already submitted a patch to make it build at #792851 and
> for openldap I will be proposing a stage1 that drops slapd. Thus we not
>

I've already submitted an openldap patch in #724518, and a maintainer was
recently in contact with me about updating it to the newest Build-Profiles
syntax and incorporating it.  That patch, which just gets rid of
slapd-smbk5pwd, is sufficient in my setup to get openldap bootstrapped.

only know that curl will be needed, but we also know that building curl
> without cmake is feasible.
>
> I conclude that curl will be available when building cmake (no matter
> whether native or cross).
>
> What was the original need that made you ponder dropping curl?
>
> Daniel, can you point out how you bootstrap stuff? I've seen you
> proposing stages in a number of cases where I thought that none should
> be necessary. I'm really curious: Maybe I am using too many stages in
> other places. rebootstrap currently stages glibc, libselinux,
> util-linux, file, db5.3, libidn, cracklib2 and pam. I am pondering to
> use stages for cdebconf, newt, libcap-ng, python2.7, cyrus-sasl2,
> openldap and systemd. Does any of those work without stages for you?
>

I test (native only) bootstrapping from a default pbuilder chroot +
fakeroot, with no packages available to be installed except what's in that
original chroot image.  So that's why e.g. nomultilib bootstraps for at
least zlib and libffi are useful for my case; and also, since
apt-transport-https is not in this set, curl also isn't in this set.  I
also have numerous bootstrap scripts for the packages needed to make
debhelper installable, which essentially start with debhelper built without
po4a and then for the others dpkg -i --force-depends debhelper.deb plus
po-debconf.deb, gettext.deb, etc. as needed.  (I also want to make
Architecture: all packages bootstrappable simultaneously, which I've
achieved for the most part except for a large number of Java packages
involved in maven - and mostly because of a few Build-Depends on fop, that
spills over into the general bootstrapping problem.)

As for cmake -> curl, I don't have my notes on the exact cycle I wanted to
break, but I think it involved the curl -> krb5 Build-Depends.  If you have
a bootstrap process that can bootstrap krb5 and curl before cmake without
requiring cross-compilation using cmake, that would be fine.

As for the others you mentioned: I do have a complex bootstrap script for
gcc + glibc to native bootstrap multilib compilers/libraries from the
non-multilib environment; and I do use scripts for libselinux, util-linux,
file (part of the debhelper dependency bootstrapping mentioned above),
db5.3, libidn, cracklib2, pam, python2.7, cyrus-sasl2, openldap, systemd.
 (The script for util-linux just invokes the standard stage1 profile
though, which is just a workaround for the fact that my driver script
doesn't automatically try using build profiles at the moment.)  I don't
have anything for cdebconf, newt or libcap-ng.

I can send my full set of current bootstrap scripts and patches to you, if
you'd like.
-- 
Daniel

Reply via email to