2008-12-15 00:41:36 +00:00
|
|
|
--- hook-functions.orig 2008-12-15 01:24:05.000000000 +0100
|
|
|
|
+++ hook-functions 2008-12-15 01:30:55.000000000 +0100
|
|
|
|
@@ -414,16 +414,28 @@ EOF
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
+compare_versions()
|
|
|
|
+{
|
|
|
|
+ local curv minv
|
|
|
|
+
|
|
|
|
+ curv="$(echo $1|sed 's|.||g')"
|
|
|
|
+ minv="$(echo $2|sed 's|.||g')"
|
|
|
|
+
|
|
|
|
+ if [ "$curv" -lt "$minv" ]; then
|
|
|
|
+ return 1
|
|
|
|
+ fi
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
# minimal supported kernel version
|
|
|
|
check_minkver()
|
|
|
|
{
|
|
|
|
- local curversion initdir DPKG_ARCH minversion cm_x tmp
|
|
|
|
+ local curversion initdir ARCH minversion cm_x tmp
|
|
|
|
|
|
|
|
curversion="${1}"
|
|
|
|
initdir="${2}"
|
|
|
|
if [ -z "${initdir}" ]; then
|
|
|
|
- DPKG_ARCH=$(dpkg --print-installation-architecture)
|
|
|
|
- case ${DPKG_ARCH} in
|
|
|
|
+ ARCH=$(uname -m)
|
|
|
|
+ case ${ARCH} in
|
|
|
|
ia64|hppa)
|
|
|
|
minversion="2.6.15"
|
|
|
|
;;
|
|
|
|
@@ -431,7 +443,7 @@ check_minkver()
|
|
|
|
minversion="2.6.12"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
- if dpkg --compare-versions "${curversion}" lt "${minversion}"; then
|
|
|
|
+ if ! compare_versions "${curversion}" "${minversion}"; then
|
|
|
|
echo "W: kernel ${curversion} too old for initramfs on ${DPKG_ARCH}" >&2
|
|
|
|
echo "W: not generating requested initramfs for kernel ${curversion}" >&2
|
|
|
|
exit 2
|
|
|
|
@@ -445,7 +457,7 @@ check_minkver()
|
|
|
|
minver=$(sed '/^MINKVER=/!d;$!d;s/^MINKVER=//;s/[[:space:]]*$//' "${initdir}/${cm_x}")
|
|
|
|
if [ -z "${tmp}" ]; then
|
|
|
|
continue
|
|
|
|
- elif dpkg --compare-versions "${curversion}" lt "${minver}"; then
|
|
|
|
+ elif ! compare_versions "${curversion}" "${minver}"; then
|
|
|
|
echo "W: ${cm_x} hook script requires at least kernel version ${minver}" >&2
|
|
|
|
echo "W: not generating requested initramfs for kernel ${curversion}" >&2
|
|
|
|
exit 2
|
2009-03-07 06:27:06 +00:00
|
|
|
--- update-initramfs.orig 2009-03-07 06:30:03.039700454 +0100
|
|
|
|
+++ update-initramfs 2009-03-07 06:32:05.679694852 +0100
|
|
|
|
@@ -1,4 +1,4 @@
|
|
|
|
-#!/bin/sh
|
|
|
|
+#!/bin/sh -e
|
|
|
|
|
|
|
|
STATEDIR=/var/lib/initramfs-tools
|
|
|
|
BOOTDIR=/boot
|
|
|
|
@@ -8,22 +8,8 @@ USETRIGGERS=true
|
|
|
|
mode=""
|
|
|
|
version=""
|
2009-02-25 17:54:56 +00:00
|
|
|
|
2009-03-07 06:27:06 +00:00
|
|
|
-set -e
|
|
|
|
-
|
|
|
|
[ -r ${CONF} ] && . ${CONF}
|
|
|
|
|
|
|
|
-if $USETRIGGERS \
|
|
|
|
- && [ x"$DPKG_MAINTSCRIPT_PACKAGE" != x ] \
|
|
|
|
- && [ $# = 1 ] \
|
|
|
|
- && [ x"$1" = x-u ] \
|
|
|
|
- && dpkg-trigger --check-supported 2>/dev/null
|
|
|
|
-then
|
|
|
|
- if dpkg-trigger --no-await update-initramfs; then
|
|
|
|
- echo "update-initramfs: deferring update (trigger activated)"
|
|
|
|
- exit 0
|
|
|
|
- fi
|
|
|
|
-fi
|
|
|
|
-
|
|
|
|
usage()
|
|
|
|
{
|
|
|
|
if [ -n "${1}" ]; then
|
|
|
|
@@ -313,7 +299,8 @@ get_sorted_versions()
|
|
|
|
fi
|
|
|
|
worklist=""
|
|
|
|
for gsv_i in $version_list; do
|
|
|
|
- if dpkg --compare-versions "${gsv_x}" '>' "${gsv_i}"; then
|
|
|
|
+ rv=$(xbps-cmpver "${gsv_x}" "${gsv_i}")
|
|
|
|
+ if [ "$rv" -eq 0 ]; then
|
|
|
|
worklist="${worklist} ${gsv_x} ${gsv_i}"
|
|
|
|
gsv_x=""
|
|
|
|
else
|
2009-03-08 03:15:11 +00:00
|
|
|
--- mkinitramfs.orig 2009-02-17 15:56:33.000000000 +0100
|
|
|
|
+++ mkinitramfs 2009-03-08 04:05:23.555799879 +0100
|
|
|
|
@@ -8,8 +8,7 @@ keep="n"
|
|
|
|
CONFDIR="/etc/initramfs-tools"
|
|
|
|
verbose="n"
|
|
|
|
errors_to="2>/dev/null"
|
|
|
|
-# BUSYBOXDIR="/usr/lib/initramfs-tools/bin/"
|
|
|
|
-BUSYBOXDIR="/bin"
|
|
|
|
+BUSYBOXDIR="/usr/lib/initramfs-tools/bin/"
|
|
|
|
|
|
|
|
OPTIONS=`getopt -o d:ko:r:v -n "$0" -- "$@"`
|
|
|
|
|
|
|
|
@@ -141,7 +140,7 @@ fi
|
|
|
|
DESTDIR="$(mktemp -t -d mkinitramfs_XXXXXX)" || exit 1
|
|
|
|
__TMPCPIOGZ="$(mktemp -t mkinitramfs-OL_XXXXXX)" || exit 1
|
|
|
|
|
|
|
|
-DPKG_ARCH=`dpkg --print-installation-architecture`
|
|
|
|
+DPKG_ARCH=`uname -m`
|
|
|
|
|
|
|
|
# Export environment for hook scripts.
|
|
|
|
#
|
|
|
|
@@ -232,7 +231,6 @@ fi
|
|
|
|
|
|
|
|
# Busybox
|
|
|
|
if [ "${BUSYBOX}" = "n" ] || [ ! -e ${BUSYBOXDIR}/busybox ]; then
|
|
|
|
- mv ${DESTDIR}/bin/sh.shared ${DESTDIR}/bin/sh
|
|
|
|
# those root need busybox
|
|
|
|
eval "$(mount | awk '/ \/ / {print "r_dev=" $1; exit}')"
|
|
|
|
if [ "${r_dev#/dev/mapper/}" != "${r_dev}" ]; then
|
|
|
|
@@ -246,15 +244,14 @@ else
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Modutils
|
|
|
|
-copy_exec /sbin/modprobe /sbin
|
|
|
|
-copy_exec /sbin/depmod /sbin
|
|
|
|
-copy_exec /sbin/rmmod /sbin
|
|
|
|
-mkdir -p "${DESTDIR}/etc/modprobe.d"
|
|
|
|
-cp -a /etc/modprobe.d/* "${DESTDIR}/etc/modprobe.d/"
|
|
|
|
-
|
|
|
|
-# workaround: libgcc always needed on old-abi arm
|
|
|
|
-if [ "$DPKG_ARCH" = arm ] || [ "$DPKG_ARCH" = armeb ]; then
|
|
|
|
- cp -a /lib/libgcc_s.so.1 "${DESTDIR}/lib/"
|
|
|
|
+copy_exec /usr/lib/klibc/sbin/modprobe /sbin
|
|
|
|
+copy_exec /usr/lib/klibc/sbin/depmod /sbin
|
|
|
|
+copy_exec /usr/lib/klibc/sbin/lsmod /sbin
|
|
|
|
+copy_exec /usr/lib/klibc/sbin/rmmod /sbin
|
|
|
|
+copy_exec /usr/lib/klibc/sbin/insmod /sbin
|
|
|
|
+if [ -d /etc/modprobe.d ]; then
|
|
|
|
+ mkdir -p "${DESTDIR}/etc/modprobe.d"
|
|
|
|
+ cp -a /etc/modprobe.d/* "${DESTDIR}/etc/modprobe.d/"
|
|
|
|
fi
|
|
|
|
|
|
|
|
run_scripts /usr/share/initramfs-tools/hooks
|