# Maintainer: Haruue Icymoon # Contributor: Lucjan Lucjanov pkgname=linux-usermode true && pkgname=(linux-usermode linux-usermode-modules) pkgbase=linux-usermode _kernelname=-usermodelinux _srcname=linux-4.16 pkgver=4.16.3 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') 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} config 0001-ucontext-fix-incomplete-type-ucontext.patch) sha256sums=('63f6dc8e3c9f3a0273d5d6f4dca38a2413ca3a5f689329d05b750e4c87bb21b9' 'SKIP' '336252cb15f2f2574461c1d3daabf5dc207842526085802270e1e5223f645db3' 'SKIP' 'c0b75bbc76b9202a02aa56ff06b9a773d46c57f1576b4a9e289de29388d5d136' '9a7e0a9a2c3d4252cee29b4f5f61da00e98bd247cb5ceb22e31a7f782a45bddf') validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman ) prepare() { cd "${srcdir}/${_srcname}" # add upstream patch patch -p1 -i "${srcdir}/patch-${pkgver}" # workground for glibc 2.26+ # https://patchwork.kernel.org/patch/10059117/ patch -Np1 -i ../0001-ucontext-fix-incomplete-type-ucontext.patch cat ../config - >.config </dev/null } build() { cd "${srcdir}/${_srcname}" unset LDFLAGS CFLAGS make ARCH=um 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 _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: