#!/bin/bash # devs.SlackBuild # Paths to skeleton port's source & real Slackware source tree: export CWD=$SLACKSOURCE/$PKGSERIES/$PKGNAM export PORTCWD=$PWD # Temporary build locations: export TMPBUILD=$TMP/build-$PKGNAM export PKG=$TMP/package-$PKGNAM mkpkgdirs # Delete and re-create temporary directories # Start fakeroot server: start_fakeroot # Explode the package framework: ( cd $PKG explodepkg $CWD/_devs.tar.gz ) # The Iyonix uses a USB mouse (/dev/input); # The RiscStation & A7000+ is ps2 (/dev/psaux) # The Omega uses .. who knows; does anyone *have* one? ;-) # The StrongARM RiscPC & SUN SPARC use /dev/sunmouse mknod $PKG/dev/sunmouse c 10 6 chgrp sys $PKG/dev/sunmouse # And for clarity: # nah -- I don't like this after all. Not now it's /dev/input/mice # for Linux 2.6; this is just crufty. #if [ "${PORTARCH}" = "arm" ]; then # ( cd $PKG/dev && ln -fs sunmouse riscpcmouse ) #fi # # Additional device nodes that are required for the Raspberry Pi: ( cd $PKG/dev mknod -m 660 mmcblk0 b 179 0 mknod -m 660 mmcblk0p1 b 179 1 mknod -m 660 mmcblk0p2 b 179 2 mknod -m 660 mmcblk0p3 b 179 3 mknod -m 660 mmcblk0p4 b 179 4 mknod -m 660 mmcblk0p5 b 179 5 mknod -m 660 mmcblk0p6 b 179 6 mknod -m 660 mmcblk0p7 b 179 7 chown root:disk mmcblk* mknod -m 600 usbdev1.1 c 189 0 mknod -m 600 usbdev1.2 c 189 1 mknod -m 600 usbdev1.3 c 189 2 chown root:root usbdev* mknod -m 660 ttyAMA0 c 204 64 chown root:dialout ttyAMA* ) # Extract source: tar xvvf $CWD/makedev_${VERSION}.orig.tar.gz cd MAKEDEV-* || exit 1 slackhousekeeping zcat $CWD/makedev_2.3.1-46.2.diff.gz | patch -p1 -E # Add many more IDE devices: zcat $CWD/makedev_2.3.1.hd.diff.gz | patch -p1 -E # Still not enough: zcat $CWD/makedev.hd.diff.gz | patch -p1 -E # Install the package's guts: install -vpm644 MAKEDEV $PKG/dev/ install -vpm644 README $PKG/dev/README.MAKEDEV install -vpm644 MAKEDEV.man $PKG/usr/man/man8/MAKEDEV.8 # Apply some of the generic Slackware packaging policies: cd $PKG slackgzpages -i # compress man & info pages and delete usr/info/dir slackdesc # install slack-desc and doinst.sh slackmp # run makepkg -l y -c n # Perform any final checks on the package: cd $PKG # Not on this package - using find over nodes isn't a good idea. #slackhlinks # search for any hard links