name: kmod kind: chunk build-system: autotools configure-commands: - | ./bootstrap-configure --prefix="$PREFIX" --sysconfdir=/etc --localstatedir=/var \ --bindir="$PREFIX"/bin --libdir="$PREFIX"/lib \ --disable-manpages --enable-python post-install-commands: # WARNING with the following command: # if the staging area when kmod is built is sufficiently different to the # staging area that kmod is included in, then these symlinks may not work. # # i.e. if /sbin isn't a symlink when this is built (fhs-dirs isn't included or # doesn't symlink /sbin to /usr/bin) then we get symlinks in /sbin which point # to ../usr/bin, but if /sbin is itself a symlink to /usr/bin, then the symlinks # would end up in /usr/bin, which would point to ../usr/bin, which would evaluate # to /usr/usr/bin. # # The alternatives to this are: # # 1. Use hardlinks instead, which has the problem of ssh-rsync upgrades duplicating # the binary # # 2. Use an absolute path for the symlink, which makes things interesting when # inspecting a chroot # # 3. Use a wrapper script to invoke kmod with a different name, which isn't # possible in busybox ash without making a temporary directory, which means # you need an extra process to hang around to clean that directory up. - | if [ -h /sbin ]; then for app in modprobe lsmod rmmod insmod modinfo depmod; do ln -sf kmod "$DESTDIR$PREFIX/bin/$app" done else install -d "$DESTDIR"/sbin for app in modprobe lsmod rmmod insmod modinfo depmod; do ln -sf ../"$PREFIX"/bin/kmod "$DESTDIR/sbin/$app" done fi