|
|
|
# --- SDE-COPYRIGHT-NOTE-BEGIN ---
|
|
|
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
|
|
|
|
#
|
|
|
|
# Filename: package/.../vserver/pkg_linux_post.conf
|
|
|
|
# Copyright (C) 2006 - 2009 The OpenSDE Project
|
|
|
|
# Copyright (C) 2004 - 2006 The T2 SDE Project
|
|
|
|
# Copyright (C) 1998 - 2003 Clifford Wolf
|
|
|
|
#
|
|
|
|
# More information can be found in the files COPYING and README.
|
|
|
|
#
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU General Public License as published by
|
|
|
|
# the Free Software Foundation; version 2 of the License. A copy of the
|
|
|
|
# GNU General Public License can be found in the file COPYING.
|
|
|
|
# --- SDE-COPYRIGHT-NOTE-END ---
|
|
|
|
|
|
|
|
pkg_ctx_confdir=$base/package/*/vserver
|
|
|
|
|
|
|
|
# tempdir
|
|
|
|
pkg_ctx_tempdir=`mktemp -d`
|
|
|
|
#hook_add postpatch 6 "rm -rf $pkg_ctx_tempdir"
|
|
|
|
|
|
|
|
# detect /best fit/ linux patch
|
|
|
|
pkg_ctx_lxver=${ver//-/.}.
|
|
|
|
pkg_ctx_patch=
|
|
|
|
while [ "$pkg_ctx_lxver" != "${pkg_ctx_lxver%.*}" -a -z "$pkg_ctx_patch" ]; do
|
|
|
|
pkg_ctx_lxver=${pkg_ctx_lxver%.*}
|
|
|
|
pkg_ctx_patch=`match_source_file -p " patch-${pkg_ctx_lxver}[^ ]*-vs[^ q].*.diff" vserver | head -n1`
|
|
|
|
done
|
|
|
|
|
|
|
|
[ -z "$pkg_ctx_patch" ] && abort "no vserver patch found for linux $ver"
|
|
|
|
|
|
|
|
# find supplementary fixes
|
|
|
|
pkg_ctx_fixes_pattern="`basename ${pkg_ctx_patch%.diff} .diff`[.].*[.]diff"
|
|
|
|
pkg_ctx_fixes="`match_source_file -p " ${pkg_ctx_fixes_pattern}" vserver`"
|
|
|
|
|
|
|
|
# find deltas
|
|
|
|
# NOTE: these are version independent
|
|
|
|
pkg_ctx_deltas="$( match_source_file -p 'delta-.*\.diff' vserver )"
|
|
|
|
|
|
|
|
# prepare vserver patch
|
|
|
|
pkg_ctx_ver=$( echo $pkg_ctx_patch | sed -n -e 's,.*-vs\(.*\).diff.*,\1,p' )
|
|
|
|
|
|
|
|
# remove extraversion from patch and inject in lx_extraversion by hand
|
|
|
|
[[ ${pkg_ctx_patch} == *.bz2 ]] && x=bzcat || x=cat
|
|
|
|
$x ${pkg_ctx_patch} | gawk "
|
|
|
|
BEGIN { FS=\"[ /\t]\"
|
|
|
|
removethis=0
|
|
|
|
}
|
|
|
|
/^--- / {
|
|
|
|
if ( \$3 == \"Makefile\" )
|
|
|
|
removethis=1
|
|
|
|
else
|
|
|
|
removethis=0
|
|
|
|
}
|
|
|
|
/.*/ {
|
|
|
|
if ( removethis != 1 )
|
|
|
|
print
|
|
|
|
}
|
|
|
|
" > $pkg_ctx_tempdir/vserver-${pkg_ctx_ver}.patch
|
|
|
|
|
|
|
|
# Append patch and fixes
|
|
|
|
var_append patchfiles ' ' $pkg_ctx_tempdir/vserver-$pkg_ctx_ver.patch
|
|
|
|
[ -n "${pkg_ctx_fixes}" ] && var_append patchfiles ' ' ${pkg_ctx_fixes}
|
|
|
|
|
|
|
|
# Add a + at the version if we have deltas, and append them
|
|
|
|
if [ -n "$pkg_ctx_deltas" ]; then
|
|
|
|
pkg_ctx_ver="$pkg_ctx_ver+"
|
|
|
|
|
|
|
|
for x in $pkg_ctx_deltas; do
|
|
|
|
var_append patchfiles ' ' "$x"
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo_status "Including VServer ($pkg_ctx_ver) support."
|
|
|
|
hook_add postpatch 5 "lx_extraversion=\$lx_extraversion-vs${pkg_ctx_ver}"
|
|
|
|
|
|
|
|
var_insert lx_confmerge ' ' "$pkg_ctx_confdir/linux.cfg"
|