summaryrefslogtreecommitdiff
path: root/INSTALL
blob: 29620005b2a3734ba87f743d1605668c163087a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
The options used used usually look like:
  %configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --bindir=/usr/bin \
    --libdir=/usr/lib64 \
    --libexecdir=/usr/lib/udev \
    --with-systemdsystemunitdir=/usr/lib/systemd/system \
    --with-selinux

The options used in a RPM spec file look like:
  %configure \
    --prefix=%{_prefix} \
    --sysconfdir=%{_sysconfdir} \
    --bindir=%{_bindir} \
    --libdir=%{_libdir} \
    --libexecdir=%{_prefix}/lib/udev \
    --with-systemdsystemunitdir=%{_prefix}/lib/systemd/system \
    --with-selinux

The options to install udev in the rootfs instead of /usr,
and udevadm in /sbin:
    --bindir=/sbin
    --libexecdir=/lib/udev
    --with-systemdsystemunitdir=/lib/systemd/system
    --with-rootlibdir=/lib64

Some tools expect udevadm in 'sbin'. A symlink to udevadm in 'bin'
needs to be manually created if needed.

The defined location for scripts and binaries which are called
from rules is /usr/lib/udev/ on all systems and architectures. Any
other location will break other packages, who rightfully expect
the /usr/lib/udev/ directory, to install their rule helper and udev
rule files.

It is possible to use the /usr/lib/udev/devices/ directory to place
device nodes, directories and symlinks, which are copied to /dev/
at every bootup. That way, nodes for devices which can not be
detected automatically, or are activated on-demand by opening the
pre-existing device node, will be available.

Default udev rules and persistent device naming rules may be required
by other software that depends on the data udev collects from the
devices.