Fix autoconf variable substitution in udev rules.
authorDarik Horn <dajhorn@vanadac.com>
Fri, 17 Jun 2011 15:02:36 +0000 (10:02 -0500)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 17 Jun 2011 17:11:29 +0000 (10:11 -0700)
commitb9f27ee76582fa7826ca930889f8c281430c6b7a
tree72cad6900cbef9218c3dcc55e430672b939f9005
parente130330a874f4dec6628c094455180d4113c6aa1
Fix autoconf variable substitution in udev rules.

Change the variable substitution in the udev rule templates
according to the method described in the Autoconf manual;
Chapter 4.7.2: Installation Directory Variables.

The udev rules are improperly generated if the bindir parameter
overrides the prefix parameter during configure. For example:

  # ./configure --prefix=/usr/local --bindir=/opt/zfs/bin

The udev helper is installed as /opt/zfs/bin/zpool_id, but the
corresponding udev rule has a different path:

  # /usr/local/etc/udev/rules.d/60-zpool.rules
  ENV{DEVTYPE}=="disk", IMPORT{program}="/usr/local/bin/zpool_id -d %p"

The @bindir@ variable expands to "${exec_prefix}/bin", so it cannot
be used instead of @prefix@ directly.

This also applies to the zvol_id helper.

Closes #283.
configure.ac
etc/udev/rules.d/60-zpool.rules.in
etc/udev/rules.d/60-zvol.rules.in
etc/udev/rules.d/Makefile.am