# Maintainer: Haruue Icymoon # Contributor: Lucjan Lucjanov pkgname=linux-usermode true && pkgname=(linux-usermode linux-usermode-modules) pkgbase=linux-usermode _kernelname=-usermodelinux _srcname=linux-4.18 pkgver=4.18.1 pkgrel=1 pkgdesc="User mode Linux kernel and modules" arch=('x86_64') license=('GPL2') url="http://user-mode-linux.sourceforge.net/" depends=('coreutils') makedepends=('bc' 'inetutils' 'gcc7') source=( http://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.{xz,sign} # http://www.kernel.org/pub/linux/kernel/v4.x/patch-${pkgver}.{xz,sign} http://www.kernel.org/pub/linux/kernel/v4.x/patch-${pkgver}.xz config) sha256sums=('19d8bcf49ef530cd4e364a45b4a22fa70714b70349c8100e7308488e26f1eaf1' 'SKIP' 'f0580daf3ea0716301c929be78c09db4dc3d8add65a1da392c2fc2c841244e8c' '10ef174f9512a35cce7ffa93ead6ae3e01ccd7df0d9bdba909024cdade67c082') validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman ) prepare() { cd "${srcdir}/${_srcname}" # add upstream patch patch -p1 -i "${srcdir}/patch-${pkgver}" cat ../config - >.config </dev/null } build() { cd "${srcdir}/${_srcname}" unset LDFLAGS CFLAGS make ARCH=um CC=gcc-7 vmlinux modules } package_linux-usermode() { cd "${srcdir}/${_srcname}" mkdir -p "$pkgdir/usr/bin" "$pkgdir/usr/share/kernel-usermode" install -m 644 System.map ${pkgdir}/usr/share/kernel-usermode/System.map install -m 755 vmlinux ${pkgdir}/usr/bin/ } package_linux-usermode-modules() { install=modules.install cd "${srcdir}/${_srcname}" # get kernel version, but discard the first result make ARCH=um kernelrelease > /dev/null _kernver="$(make ARCH=um kernelrelease)" # make ARCH=um INSTALL_MOD_PATH="${pkgdir}/usr" modules_install make ARCH=um INSTALL_MOD_PATH="${pkgdir}/usr" _modinst_ rm -f $pkgdir/usr/lib/modules/${_kernver}/{source,build} sed \ -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \ -i "${startdir}/modules.install" } # vim:set ts=8 sts=2 sw=2 et: