1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
rEFIt packaging
---------------
First off, if you do not know what you are doing, do not have the faintest
idea of what rEFIt does nor what EFI is:
STOP RIGHT AWAY! YOU CAN ONLY BREAK SOMETHING!
That being said, a couple things to keep in mind:
- this package builds fat EFI binaries; that means the binaries are built
twice, once for ia32 and once for x86_64, then assembled into a fat binary.
=> the code MUST build and work on both architectures
- GNU-EFI uses a wrapper for any and all EFI API calls. Upstream doesn't use
GNU-EFI, so the wrapper has to be added to every EFI API call for Debian.
=> upgrading to a new upstream release means doing a diff to the
previous release, identifying all the new EFI API calls, then
updating the individual debian patches for the wrapper.
=> enabling a new tool or driver means adding a new patch that adds
the wrapper wherever necessary.
- GNU-EFI currently doesn't support EFI 1.10. That means no filesystem driver
can be built, and some features in rEFIt or in the tools have to be #ifdef'd
away.
=> some tools probably cannot be built without EFI 1.10, plain and simple.
=> guard the EFI 1.10 code with #ifndef DEBIAN_ENABLE_EFI110
Source package
--------------
Upstream unfortunately doesn't ship a complete source package. The tarball
released by upstream, named refit-src-<ver>.tar.gz, doesn't contain the icons,
source images nor the refit config file.
The Debian source tarball is assembled from the upstream refit-src-<ver>.tar.gz
source tarball, plus:
- images/ directory exported from
https://refit.svn.sourceforge.net/svnroot/refit/tags/release-<ver>/images
- icons/ directory exported from
https://refit.svn.sourceforge.net/svnroot/refit/tags/release-<ver>/dist/efi/refit/icons
- refit.conf exported from
https://refit.svn.sourceforge.net/svnroot/refit/tags/release-<ver>/dist/efi/refit/refit.conf
Also, upstream ships include/syslinux_mbr.h in its source tarball, which
contains an MBR image from syslinux. This file has been purged from the
tarball and is generated at build time from the mbr.bin file shipped by the
syslinux Debian package.
-- Julien BLACHE <jblache@debian.org>, Sat, 24 May 2008 10:32:04 +0200
|