The emdebian-tools binary package is to disappear in unstable (Provided by a new emdebian-crush) - the renamed package has already gone through NEW and is in experimental. Subsequent to the creation of that package, I've also moved emdebuild out of emdebian-buildsupport (because the recommended build method will now be dpkg-buildpackage -a or pdebuild-cross) and into the new emdebian-crush package. The recommended package for Emdebian Crush builds would then be emdebian-buildsupport, at which point emdebian-buildsupport stops depending on the Emdebian::Tools perl module and drops a load more dependencies. i.e. Crush uses normal Debian source packages modified with normal Debian source package tools and built using normal Debian package building tools against our cross toolchains. To replace the emdebuild --build-deps functionality, there's a new script in emdebian-buildsupport called embuilddeps. The emdebian-qa package is also disappearing - the bits still needed for Crush are sufficiently small (the lintian checks) as to be re-absorbed back into the relevant packages. emdebian-buildsupport will depend on pdebuild-cross as the new default method for building packages for Emdebian Crush. pdebuild-cross is then to gain support for reading the default architecture from the dpkg-cross debconf questions, alongside existing support for specifying the architecture directly in the pdebuild-cross config file (the rest of the config file is compatible with pbuilder.rc). (Another reason for multistrap not to complain if the config file contains settings that it doesn't understand itself.) pdebuild-cross is a wrapper around standard pbuilder and standard pbuilder methods can be used with the cross building chroot - providing you tell pbuilder to use the pdebuild-cross config file. (More on that to appear on the Emdebian webpage(s) and manpages in due course.) This allows "advanced" users - basically those who need to have more than one cross-building toolchain in a pdebuild-cross chroot (i.e. me) - to tweak their own cross chroot and preserve those changes for future builds. As these things start to converge towards possibly working, I've got lots of changes heading into the website and I hope I'll have time to update the Wiki too. The old emdebian-tools (and emdebian-rootfs) sources have already been moved aside in Emdebian SVN, from current/ into superceded/ http://www.emdebian.org/svn/browser The former branches have taken their place as trunk: http://www.emdebian.org/svn/browser/current/host/trunk/multistrap/trunk http://www.emdebian.org/svn/browser/current/host/trunk/emdebian-crush/trunk I'm unsure whether the scripts still in the emdebian-crush binary package are that useful anymore. emsetup is largely pointless because Crush doesn't use those methods anymore and the toolchain detection is often broken. emsetup is broken because we're trying to get an altogether better system running to get the toolchains into Debian and toolchains other than those for Lenny suffer from various breakage issues which emsetup cannot solve. emsource has been made redundant by the change in direction within Crush. emdebuild is largely irrelevant because the packages that are going to be cross-built within the ongoing experiments for Crush don't need it and any scripts we need for Emdebian Crush 3.0 will likely be based on pbuilder. Note also that pdebuild-cross has integral support for changing away from apt-cross and using Multiarch support in apt as and when it is available, just by tweaking the pbuilder hooks and updating the cross chroot. Therefore, I feel a summary is needed: 1. The recommended cross build environment for Debian would be pdebuild-cross, whether you use any flavour of Emdebian or not. I'll be promoting this as part of my talk at DebConf10, in the hope that at least some maintainers will consider testing their own packages for cross-build compatibility before uploading. 2. pdebuild-cross will produce the same Debian binary packages as when pbuilder is used with a particular Debian source package, just cross-built. (Needed for item 1.) 3. As a result of 1&2, Emdebian Crush, Grip and Baked flavours will all be post-processed with emgrip - just as Grip is now. If you don't need to change the binary files within the package, Grip it or Bake it. If you want functional changes in the package binaries, modify the source package in the normal Debian ways, cross-build it with pdebuild-cross and then either Crush it or Bake it. The variations within the flavours are implemented using DPKG_VENDOR which can also be used to create bespoke variants. 4. I'll use Emdebian SVN to maintain my changes to the packages that will be cross-built for my Emdebian Crush experiments and if those work, we might get an Emdebian Crush 2.0 release on alpha, armel, mips, mipsel, powerpc, sparc and s390 (i.e. the architectures for which we have toolchains) - plus native builds on amd64 / a 32bit i386 chroot. Most of this work is only likely to happen once Squeeze enters the first part of the release freeze. 5. Local cross builds should either use dpkg-buildpackage -a (with a toolchain installed on your main system) or pdebuild-cross. (Note, it doesn't take much longer and it is a lot less painful to use pdebuild-cross.) 6. Most users won't need the emdebian-crush package - the recommended start points for Emdebian will be: 6.1 Emdebian Crush: emdebian-buildsupport & emdebian-grip 6.2 Emdebian Grip : emdebian-grip 7. The recommended methods for preparing any Emdebian installation will be Debian Installer (Grip) and multistrap (Grip, Crush & Baked). 8. The rest of the process that was used for Emdebian Crush 1.0 will disappear. Hopefully, that will not just make sense, it could even work. :-) -- Neil Williams ============= http://www.data-freedom.org/ http://www.linux.codehelp.co.uk/ http://e-mail.is-not-s.ms/
Attachment:
pgp2BFE6TrumS.pgp
Description: PGP signature