Change calculate-sources eclass for kernel building.

Restore old calculate-kernel.eclass as calculate-kernel-old.eclass.
atratsevskiy
Mike Hiretsky 14 years ago
parent 5df1199aed
commit ec3949b748

@ -0,0 +1,177 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
#
# Original Author: © 2007-2009 Mir Calculate, Ltd.
# Purpose: Installing linux-desktop, linux-server.
# Build the kernel from source.
inherit calculate eutils kernel-2
EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst
IUSE="vmlinuz"
detect_version
detect_arch
CKV=$(get_version_component_range 1-3)
SLOT=$(get_version_component_range 1-4)
KV_FULL="${PV}-calculate"
S="${WORKDIR}/linux-${KV_FULL}"
EXTRAVERSION="-calculate"
CALC_K_SUBV=.$(get_version_component_range 4)
[[ ${CALC_K_SUBV} == "." ]] && CALC_K_SUBV=
EXTRAVERSION="${CALC_K_SUBV}-calculate"
UNIPATCH_STRICTORDER=1
CALC_URI="ftp://ftp.calculate.ru/pub/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
http://mirror.yandex.ru/calculate/${PN}/${PN}-${CKV}.tar.bz2
ftp://ftp.linux.kiev.ua/pub/Linux/Calculate/${PN}/${PN}-${CKV}.tar.bz2"
NEW_CALCULATE_OVERLAY="/var/lib/layman/calculate"
[[ -d ${ROOT}/${NEW_CALCULATE_OVERLAY} ]] &&
CALCULATE_OVERLAY=${NEW_CALCULATE_OVERLAY} ||
CALCULATE_OVERLAY="/usr/local/portage/layman/calculate"
MODULESDBFILE=${ROOT}/var/lib/module-rebuild/moduledb
calculate-kernel-old_pkg_setup() {
kernel-2_pkg_setup
local calculate_ini=${ROOT}/etc/calculate/calculate.ini
[[ -e $calculate_ini ]] && \
SYSTEM=$( sed -rn 's/^system\=(.*)/\1/p' $calculate_ini )
[[ -n "$SYSTEM" ]] || SYSTEM=desktop
if [[ -z "${KERNEL_CONFIG}" ]] || [[ ! -f "${KERNEL_CONFIG}" ]]
then
KERNEL_CONFIG="${ROOT}/${CALCULATE_OVERLAY}/profiles/kernel"
[[ -n "$CARCH" ]] || CARCH=`arch`
KERNEL_CONFIG="${KERNEL_CONFIG}/config-${SYSTEM}-${CARCH}-${CKV}"
fi
ewarn "Perform command for update modules after kernel building:"
ewarn " module-rebuild -X rebuild"
ebeep 5
}
calculate-kernel-old_src_unpack() {
kernel-2_src_unpack
}
vmlinuz_src_compile() {
# disable sandbox
export SANDBOX_ON=0
export LDFLAGS=""
mkdir -p ${WORKDIR}/boot
cd ${S}
einfo "Using kernel config from "$( readlink -f ${KERNEL_CONFIG} )
cp ${KERNEL_CONFIG} ${WORKDIR}/config || die "cannot copy kernel config"
cp ${WORKDIR}/config ${S}/.config
local GENTOOARCH="${ARCH}"
unset ARCH
DEFAULT_KERNEL_SOURCE="${S}" CMD_KERNEL_DIR="${S}" genkernel \
--kerneldir=${S} \
--kernel-config=${WORKDIR}/config \
--cachedir=${WORKDIR}/cache \
--makeopts=${MAKEOPTS} \
--tempdir=${S}/temp \
--logfile=${WORKDIR}/genkernel.log \
--bootdir=${WORKDIR}/boot \
--no-save-config \
--kernname=${SYSTEM} \
--no-menuconfig \
--clean \
--loglevel=2 \
--mrproper \
--no-cleartmp \
--disklabel \
--slowusb \
--splash=tty1 \
--all-ramdisk-modules \
--unionfs \
--module-prefix=${WORKDIR} \
all || die "genkernel failed"
cp ${S}/.config ${WORKDIR}/boot/config-${KV_FULL}-installed
einfo "kernel: >> Distclean..."
make distclean &>/dev/null || die "cannot perform distclean"
ARCH="${GENTOOARCH}"
mv ${WORKDIR}/boot/kernel-${SYSTEM}-*-${KV_FULL} \
${WORKDIR}/boot/vmlinuz-${KV_FULL}-installed
mv ${WORKDIR}/boot/initramfs-${SYSTEM}-*-${KV_FULL} \
${WORKDIR}/boot/initramfs-${KV_FULL}-installed
mv ${WORKDIR}/boot/System.map-${SYSTEM}-*-${KV_FULL} \
${WORKDIR}/boot/System.map-${KV_FULL}-installed
cp ${WORKDIR}/boot/System.map-${KV_FULL}-installed ${S}/System.map
rm ${WORKDIR}/lib/modules/${KV_FULL}/build
rm ${WORKDIR}/lib/modules/${KV_FULL}/source
}
calculate-kernel-old_src_compile() {
use vmlinuz && vmlinuz_src_compile
}
vmlinuz_src_install() {
cd ${WORKDIR}
insinto /
doins -r boot
cd ${WORKDIR}/lib
insinto /lib
doins -r modules
insinto /tmp
doins -r firmware
dosym /usr/src/linux-${KV_FULL} \
"/lib/modules/${KV_FULL}/source" ||
die "cannot install source symlink"
dosym /usr/src/linux-${KV_FULL} \
"/lib/modules/${KV_FULL}/build" ||
die "cannot install build symlink"
insinto /etc/modprobe.d
newins "${FILESDIR}"/modprobe_i915.conf i915.conf || die
}
calculate-kernel-old_src_install() {
kernel-2_src_install
use vmlinuz && vmlinuz_src_install
}
vmlinuz_pkg_postinst() {
calculate_update_splash ${ROOT}/boot/initramfs-${KV_FULL}-installed
cp ${ROOT}/boot/initramfs-${KV_FULL}-installed \
${ROOT}/boot/initramfs-${KV_FULL}-install-installed
calculate_update_kernel ${KV_FULL} ${ROOT}/boot
mkdir -p ${ROOT}/lib/firmware
cp -a ${ROOT}/tmp/firmware/* ${ROOT}/lib/firmware/
rm -rf ${ROOT}/tmp/firmware
calculate_update_depmod
calculate_update_modules
[[ -f $MODULESDBFILE ]] &&
sed -ri 's/a:1:sys-fs\/aufs2/a:0:sys-fs\/aufs2/' $MODULESDBFILE
}
calculate-kernel-old_pkg_postinst() {
kernel-2_pkg_postinst
KV_OUT_DIR=${ROOT}/usr/src/linux-${KV_FULL}
[[ -e ${ROOT}/boot/config-${KV_FULL}-installed ]] &&
cp ${ROOT}/boot/config-${KV_FULL}-installed ${KV_OUT_DIR}/.config ||
cp ${KERNEL_CONFIG} ${KV_OUT_DIR}/.config
cd ${KV_OUT_DIR}
local GENTOOARCH="${ARCH}"
unset ARCH
ebegin "kernel: >> Running modules_prepare..."
make modules_prepare &>/dev/null
eend $? "Failed modules prepare"
ARCH="${GENTOOARCH}"
use vmlinuz && vmlinuz_pkg_postinst
}

@ -2,6 +2,13 @@
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
*calculate-sources-2.6.32.22-r1 (22 Sep 2010)
22 Sep 2010; Mike Hiretsky (mhiretskiy) <mh@calculate.ru>
-calculate-sources-2.6.32.22.ebuild,
+calculate-sources-2.6.32.22-r1.ebuild:
Change eclass to calculate-kernel-old for kernel building.
*calculate-sources-2.6.34.6 (21 Sep 2010)
21 Sep 2010; Mike Hiretsky (mhiretskiy) <mh@calculate.ru>

@ -10,8 +10,8 @@ DIST linux-2.6.34.tar.bz2 67633622 RMD160 dafd721b00c13e3652405b517b379eed10020b
DIST patch-2.6.32.22.bz2 602391 RMD160 1f3b8cbac32a5833d98e89e0f2e7a4cd24fe4996 SHA1 bc2239222fc61e45404bb9db41e9e6e51594a6a1 SHA256 9f04a819a6ae1ac9a4793ce229bc9a2cb095ac10a2d46955ec1e6769283c4de4
DIST patch-2.6.34.6.bz2 185209 RMD160 75c9a569f8c80be7c418b75f7cde444fcc0a70ff SHA1 e033e2bc4b46e7cc8ee19c07b5ad6999b4c2a52d SHA256 a62e9392ad435948ea4ea2cce12e60e042da6e6da806691936ba50bbaa0dc8cc
DIST patch-2.6.34.7.bz2 184957 RMD160 0f72e9496ff0082df05424ec75aff166ba6dff27 SHA1 b346d804a428239145b6c058ff0df88792c31094 SHA256 b146904ea07cc87a3fbcbd4eab51d331d56718431539e6aa29c24b072e6b7832
EBUILD calculate-sources-2.6.32.22.ebuild 738 RMD160 7df77879fe3155b94748845656e2ec32f6430e83 SHA1 319846c6760f2c42d8586bec53e4914336c6cf93 SHA256 7d2f5fb1e822de6205c11c430cf3b0c1522cff5037e47cd2ae9c37942fa175f2
EBUILD calculate-sources-2.6.32.22-r1.ebuild 746 RMD160 e7683435e0f449453c016be2e3888ebb81372cb1 SHA1 19a3aa25464ed50bdeaeed66bd924a1e745746c8 SHA256 96f403498be3196cff45c515b37db834095bd1166916e2889a75d9e492c9cdf3
EBUILD calculate-sources-2.6.34.6.ebuild 738 RMD160 7df77879fe3155b94748845656e2ec32f6430e83 SHA1 319846c6760f2c42d8586bec53e4914336c6cf93 SHA256 7d2f5fb1e822de6205c11c430cf3b0c1522cff5037e47cd2ae9c37942fa175f2
EBUILD calculate-sources-2.6.34.7.ebuild 732 RMD160 4eb92daf4c535ce529c8930847f4503bd4431617 SHA1 5aeeff74e73d173257844c4a3ebfea11fc87f69d SHA256 b584166d290c6738947dee840e678ea00821d33892402643dffa8a7f88610880
MISC ChangeLog 2822 RMD160 7e0b4a1629859268ba6464c1969eaab210a15074 SHA1 bd69144d84ed618b7de396323c289372f851743e SHA256 33502c1c534f7fd6c23277f5ab92e75844b73ea5e8cb65c6ad3e192fd3719c64
MISC ChangeLog 3072 RMD160 311bfe9c6bac1d2d7ed0b51808a2a7c1e93a68c5 SHA1 abfe12427d40051242b46420e9f02c983a377ce0 SHA256 eeaaea4a8f807b2ee63110d3acdfd8e05e623b06d76d0b46019cd1759eafbf84
MISC metadata.xml 364 RMD160 308abbf758102b5591c353f41a62be6836f98693 SHA1 5029bd7cf897e4eb8f8e8fa935c02d4c73eb59db SHA256 0bee25282d797e432206373a8535689412a3f76f8974315f8ecf73536bf0e505

@ -4,7 +4,7 @@
ETYPE="sources"
inherit calculate-kernel
inherit calculate-kernel-old
DESCRIPTION="Full sources including the Calculate patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
KEYWORDS="amd64 x86"
@ -20,7 +20,7 @@ DEPEND="vmlinuz? ( >=sys-kernel/calckernel-3.4.10.903-r22
sys-apps/v86d )"
pkg_postinst() {
calculate-kernel_pkg_postinst
calculate-kernel-old_pkg_postinst
einfo "For more info on this patchset, and how to report problems, see:"
einfo "${HOMEPAGE}"
}
Loading…
Cancel
Save