wok view linux-uml/receipt @ rev 14335

Add linux-uml
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sat Apr 13 15:34:35 2013 +0200 (2013-04-13)
parents
children 3eea66e3605c
line source
1 # SliTaz package receipt.
3 PACKAGE="linux-uml"
4 SOURCE="linux"
5 VERSION="3.2.40"
6 KBASEVER="${VERSION:0:3}"
7 CATEGORY="base-system"
8 SHORT_DESC="The User Mode Linux kernel."
9 BUILD_DEPENDS="slitaz-toolchain perl"
10 MAINTAINER="pascal.bellard@slitaz.org"
11 TARBALL="$SOURCE-$VERSION.tar.bz2"
12 WEB_SITE="http://www.kernel.org/"
13 WGET_URL="ftp://ftp.kernel.org/pub/linux/kernel/v3.0/$TARBALL"
15 # Rules to configure and make the package.
16 compile_rules()
17 {
18 cd $src
19 if [ "$KBASEVER" != "$VERSION" ]; then
20 PATCH="$(dirname $WGET_URL)/patch-$VERSION.xz"
21 [ -s $SRC/$(basename $PATCH) ] ||
22 wget $PATCH -O $SRC/$(basename $PATCH)
23 xzcat $SRC/$(basename $PATCH) | patch -Np1
24 touch done.patch-$VERSION
25 fi
26 sed -i 's/uname -m/echo i386/;s|/bin/bash|/bin/ash|g' Makefile
27 make ARCH=um mrproper
28 cat > mini.config << EOF &&
29 CONFIG_BINFMT_ELF=y
30 CONFIG_LBD=y
31 CONFIG_BLK_DEV=y
32 CONFIG_BLK_DEV_LOOP=y
33 CONFIG_STDERR_CONSOLE=y
34 CONFIG_SSL=y
35 CONFIG_UNIX98_PTYS=y
36 CONFIG_PROC_FS=y
37 CONFIG_SYSFS_FS=y
38 CONFIG_IKCONFIG=y
39 CONFIG_IKCONFIG_PROC=y
40 CONFIG_UML_NET=y
41 CONFIG_UML_NET_TUNTAP=y
42 CONFIG_STATIC_LINK=y
43 CONFIG_BLK_DEV_INITRD=y
44 CONFIG_PTY_CHAN=y
45 CONFIG_TTY_CHAN=y
46 CONFIG_NET=y
47 CONFIG_INET=y
48 CONFIG_UML_NET=y
49 CONFIG_UML_NET_TUNTAP=y
50 CONFIG_BLK_DEV_UBD=y
51 CONFIG_EXT4_FS=y
52 CONFIG_EXT4_USE_FOR_EXT23=y
53 CONFIG_EXT4_FS_XATTR=y
54 CONFIG_EXT4_FS_POSIX_ACL=y
55 CONFIG_FUSE_FS=y
56 CONFIG_ISO9660_FS=y
57 CONFIG_VFAT_FS=y
58 CONFIG_TMPFS=y
59 CONFIG_SWAP=y
60 CONFIG_SYSVIPC=y
61 CONFIG_SYSVIPC_SYSCTL=y
62 CONFIG_SYSVIPC_COMPAT=y
63 CONFIG_PACKET=y
64 CONFIG_UNIX=y
65 CONFIG_NETFILTER=y
66 CONFIG_NETFILTER_ADVANCED=y
67 CONFIG_NF_CONNTRACK=y
68 CONFIG_NETFILTER_XTABLES=y
69 CONFIG_NF_DEFRAG_IPV4=y
70 CONFIG_NF_CONNTRACK_IPV4=y
71 CONFIG_NF_CONNTRACK_PROC_COMPAT=y
72 CONFIG_IP_NF_IPTABLES=y
73 CONFIG_IP_NF_FILTER=y
74 CONFIG_IP_NF_TARGET_REJECT=y
75 CONFIG_NF_NAT=y
76 CONFIG_NF_NAT_NEEDED=y
77 CONFIG_IP_NF_TARGET_MASQUERADE=y
78 CONFIG_IP_NF_TARGET_REDIRECT=y
79 CONFIG_NETDEVICES=y
80 CONFIG_TUN=y
81 EOF
82 make ARCH=um allnoconfig KCONFIG_ALLCONFIG=mini.config &&
83 make ARCH=um
84 }
86 # Rules to gen a SliTaz package suitable for Tazpkg.
87 genpkg_rules()
88 {
89 mkdir -p $fs/boot
90 cp $src/linux $fs/boot/linux-uml-$VERSION
91 cat > $fs/boot/vm-uml <<EOT
92 #!/bin/sh
94 # /etc/inittab: "tty21::respawn:/bin/su -c '/boot/vm-uml 1 /boot/guests/slitaz.img 2 512m' nobody"
95 tap=tap\${1:-0}
96 n=\${tap#tap}
97 args="rw root=/dev/null"
98 dev="initrd=\$(ls -r /boot/rootfs*.gz | sed q)"
99 if [ -n "\$2" ]; then
100 args="ro root=620\${3:-1} screen=text sound=noconf"
101 dev="ubd0=\$2"
102 fi
104 cd \$(dirname \$0)
105 ifconfig \$tap 192.168.\${tap#tap}.1
106 ./linux-uml-$VERSION \$dev mem=\${4:-512m} fakehd fake_ide ubd=3 con=pts ssl=pts \\
107 con0=fd:0,fd:1 eth0=tuntap,\$tap,fe:f0:00:00:00:0\$n,192.168.\$n.1 \$args
108 EOT
109 chmod 755 $fs/boot/vm-uml
110 }