1 include $(top_srcdir)/Makefile.am.inc
3 SUBDIRS = . libudev/docs
5 udevconfdir = $(sysconfdir)/udev
11 libudev/exported_symbols
14 udev-$(VERSION).tar.gz udev-$(VERSION).tar.bz2
16 ACLOCAL_AMFLAGS = -I m4
18 AM_MAKEFLAGS = --no-print-directory
20 DISTCHECK_CONFIGURE_FLAGS = \
25 rm -rf udev-test-install
30 PREVIOUS_VERSION = `expr $(VERSION) - 1`
33 @ head -1 ChangeLog | grep -q "to v$(PREVIOUS_VERSION)"
34 @ mv ChangeLog ChangeLog.tmp
35 @ echo "Summary of changes from v$(PREVIOUS_VERSION) to v$(VERSION)" >> ChangeLog
36 @ echo "============================================" >> ChangeLog
38 @ git log --pretty=short $(PREVIOUS_VERSION)..HEAD | git shortlog >> ChangeLog
41 @ cat ChangeLog.tmp >> ChangeLog
45 rm -rf $(PWD)/udev-test-install/
46 make DESTDIR=$(PWD)/udev-test-install install
47 tree $(PWD)/udev-test-install/
50 head -1 ChangeLog | grep -q "to v$(VERSION)"
51 head -1 NEWS | grep -q "udev $(VERSION)"
52 git commit -a -m "release $(VERSION)"
53 cat .git/refs/heads/master > .git/refs/tags/$(VERSION)
58 rsync -av --delete libudev/docs/html/ master.kernel.org:/pub/linux/utils/kernel/hotplug/libudev/
59 rsync -av --delete extras/gudev/docs/html/ master.kernel.org:/pub/linux/utils/kernel/hotplug/gudev/
61 INSTALL_EXEC_HOOKS = libudev-install-move-hook
62 UNINSTALL_EXEC_HOOKS = libudev-uninstall-move-hook
64 include_HEADERS = libudev/libudev.h
66 # ------------------------------------------------------------------------------
68 # ------------------------------------------------------------------------------
69 lib_LTLIBRARIES = libudev/libudev.la
71 libudev_libudev_la_SOURCES =\
72 libudev/libudev-private.h \
74 libudev/libudev-list.c \
75 libudev/libudev-util.c \
76 libudev/libudev-device.c \
77 libudev/libudev-enumerate.c \
78 libudev/libudev-monitor.c \
79 libudev/libudev-queue.c
84 libudev_libudev_la_LDFLAGS = \
85 -version-info $(LIBUDEV_CURRENT):$(LIBUDEV_REVISION):$(LIBUDEV_AGE) \
86 -export-symbols $(top_srcdir)/libudev/exported_symbols
88 noinst_LTLIBRARIES = \
89 libudev/libudev-private.la
91 libudev_libudev_private_la_SOURCES =\
92 $(libudev_libudev_la_SOURCES) \
93 libudev/libudev-ctrl.c \
94 libudev/libudev-util-private.c \
95 libudev/libudev-device-private.c \
96 libudev/libudev-queue-private.c
98 libudev_libudev_private_la_LIBADD =
100 # ------------------------------------------------------------------------------
102 # ------------------------------------------------------------------------------
108 udev_common_sources =\
114 udev_common_libs = libudev/libudev-private.la
116 udev_udevd_SOURCES = \
117 $(udev_common_sources) \
120 udev_udevd_LDADD = $(udev_common_libs)
122 udev_udevadm_SOURCES = \
123 $(udev_common_sources) \
125 udev/udevadm-info.c \
126 udev/udevadm-control.c \
127 udev/udevadm-test.c \
128 udev/udevadm-monitor.c \
129 udev/udevadm-settle.c \
130 udev/udevadm-trigger.c
132 udev_udevadm_LDADD = $(udev_common_libs)
135 extras/ata_id/ata_id \
136 extras/cdrom_id/cdrom_id \
137 extras/collect/collect \
138 extras/edd_id/edd_id \
139 extras/floppy/create_floppy_devices \
140 extras/path_id/path_id \
141 extras/fstab_import/fstab_import \
142 extras/scsi_id/scsi_id \
143 extras/usb_id/usb_id \
146 dist_libexec_SCRIPTS = \
147 extras/firmware/firmware.sh \
148 extras/rule_generator/write_cd_rules \
149 extras/rule_generator/write_net_rules
151 udevhomedir = $(libexecdir)
152 dist_udevhome_DATA = \
153 extras/rule_generator/rule_generator.functions
155 extras_ata_id_ata_id_SOURCES = extras/ata_id/ata_id.c
156 extras_ata_id_ata_id_LDADD = libudev/libudev-private.la
158 extras_cdrom_id_cdrom_id_SOURCES = extras/cdrom_id/cdrom_id.c
159 extras_cdrom_id_cdrom_id_LDADD = libudev/libudev-private.la
161 extras_collect_collect_SOURCES = extras/collect/collect.c
162 extras_collect_collect_LDADD = libudev/libudev-private.la
164 extras_edd_id_edd_id_SOURCES = extras/edd_id/edd_id.c
165 extras_edd_id_edd_id_LDADD = libudev/libudev-private.la
167 extras_floppy_create_floppy_devices_SOURCES = extras/floppy/create_floppy_devices.c
168 extras_floppy_create_floppy_devices_LDADD = libudev/libudev-private.la
170 extras_path_id_path_id_SOURCES = extras/path_id/path_id.c
171 extras_path_id_path_id_LDADD = libudev/libudev-private.la
173 extras_fstab_import_fstab_import_SOURCES = extras/fstab_import/fstab_import.c
174 extras_fstab_import_fstab_import_LDADD = libudev/libudev-private.la
176 extras_scsi_id_scsi_id_SOURCES =\
177 extras/scsi_id/scsi_id.c \
178 extras/scsi_id/scsi_serial.c \
179 extras/scsi_id/scsi.h \
180 extras/scsi_id/scsi_id.h \
182 extras_scsi_id_scsi_id_LDADD = libudev/libudev-private.la
184 extras_usb_id_usb_id_SOURCES = extras/usb_id/usb_id.c
185 extras_usb_id_usb_id_LDADD = libudev/libudev-private.la
187 extras_v4l_id_v4l_id_SOURCES = extras/v4l_id/v4l_id.c
188 extras_v4l_id_v4l_id_LDADD = libudev/libudev-private.la
190 extras_hid2hci_hid2hci_SOURCES = extras/hid2hci/hid2hci.c
191 extras_hid2hci_hid2hci_CPPFLAGS = $(AM_CPPFLAGS) $(LIBUSB_CFLAGS)
192 extras_hid2hci_hid2hci_LDADD = libudev/libudev-private.la $(LIBUSB_LIBS)
194 extras_udev_acl_udev_acl_SOURCES = extras/udev-acl/udev-acl.c
195 extras_udev_acl_udev_acl_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
196 extras_udev_acl_udev_acl_LDADD = libudev/libudev-private.la -lacl $(GLIB_LIBS)
198 extras_usb_db_usb_db_SOURCES = extras/usb-db/usb-db.c
199 extras_usb_db_usb_db_CPPFLAGS = $(AM_CPPFLAGS) -DUSB_DATABASE=\"$(USB_DATABASE)\" -DBUILD_FOR_USB
200 extras_usb_db_usb_db_LDADD = libudev/libudev-private.la
202 extras_usb_db_pci_db_SOURCES = extras/usb-db/usb-db.c
203 extras_usb_db_pci_db_CPPFLAGS = $(AM_CPPFLAGS) -DPCI_DATABASE=\"$(USB_DATABASE)\" -DBUILD_FOR_PCI
204 extras_usb_db_pci_db_LDADD = libudev/libudev-private.la
206 extras_modem_modeswitch_modem_modeswitch_SOURCES =\
207 extras/modem-modeswitch/modem-modeswitch.c \
208 extras/modem-modeswitch/utils.c \
209 extras/modem-modeswitch/utils.h \
210 extras/modem-modeswitch/ma8280p_us.c \
211 extras/modem-modeswitch/ma8280p_us.h \
212 extras/modem-modeswitch/option.c \
213 extras/modem-modeswitch/option.h
214 extras_modem_modeswitch_modem_modeswitch_CPPFLAGS = $(AM_CPPFLAGS) $(LIBUSB_CFLAGS)
215 extras_modem_modeswitch_modem_modeswitch_LDADD = libudev/libudev-private.la $(LIBUSB_LIBS)
217 # ------------------------------------------------------------------------------
219 # ------------------------------------------------------------------------------
221 TESTS = test/udev-test.pl
224 libudev/test-libudev \
227 libudev_test_libudev_SOURCES = libudev/test-libudev.c
228 libudev_test_libudev_LDADD = libudev/libudev.la
230 udev_test_udev_SOURCES = \
231 $(udev_common_sources) \
233 udev_test_udev_LDADD = $(udev_common_libs)
235 # ------------------------------------------------------------------------------
237 # ------------------------------------------------------------------------------
239 dist_udevrules_DATA = \
240 rules/rules.d/50-udev-default.rules \
241 rules/rules.d/60-persistent-storage.rules \
242 rules/rules.d/60-persistent-storage-tape.rules \
243 rules/rules.d/60-persistent-serial.rules \
244 rules/rules.d/60-persistent-input.rules \
245 rules/rules.d/60-persistent-alsa.rules \
246 rules/rules.d/80-drivers.rules \
247 rules/rules.d/95-udev-late.rules \
248 extras/rule_generator/75-cd-aliases-generator.rules \
249 extras/rule_generator/75-persistent-net-generator.rules \
250 extras/cdrom_id/60-cdrom_id.rules \
251 extras/edd_id/61-persistent-storage-edd.rules \
252 extras/firmware/50-firmware.rules \
253 extras/fstab_import/79-fstab_import.rules \
254 extras/v4l_id/60-persistent-v4l.rules
262 # ------------------------------------------------------------------------------
263 # Conditionals (SElinux, etc…)
264 # ------------------------------------------------------------------------------
266 libudev_libudev_private_la_SOURCES += \
267 libudev/libudev-selinux-private.c
268 libudev_libudev_private_la_LIBADD += \
273 INSTALL_EXEC_HOOKS += udevacl-install-hook
275 dist_udevrules_DATA += \
276 rules/rules.d/75-net-description.rules \
277 rules/rules.d/75-tty-description.rules \
278 rules/rules.d/78-sound-card.rules \
279 extras/hid2hci/70-hid2hci.rules \
280 extras/modem-modeswitch/61-option-modem-modeswitch.rules \
281 extras/modem-modeswitch/61-mobile-action.rules
283 libexec_PROGRAMS += \
284 extras/hid2hci/hid2hci \
285 extras/udev-acl/udev-acl \
286 extras/usb-db/usb-db \
287 extras/usb-db/pci-db \
288 extras/modem-modeswitch/modem-modeswitch
296 # ------------------------------------------------------------------------------
297 # Pkg-config, docs and man pages
298 # ------------------------------------------------------------------------------
299 pkgconfigdir = $(libdir)/pkgconfig
304 writing_udev_rulesdir = $(docdir)/writing_udev_rules
305 dist_writing_udev_rules_DATA = \
306 docs/writing_udev_rules/index.html
312 extras/scsi_id/scsi_id.8
320 $(XSLTPROC) -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
322 # ------------------------------------------------------------------------------
323 # Install and uninstall hooks
324 # ------------------------------------------------------------------------------
325 install-exec-hook: $(INSTALL_EXEC_HOOKS)
327 uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
329 # move lib from $(libdir) to $(rootlib_execdir) and update devel link, if needed
330 libudev-install-move-hook:
331 if test "$(libdir)" != "$(rootlib_execdir)"; then \
332 mkdir -p $(DESTDIR)$(rootlib_execdir) && \
333 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libudev.so) && \
334 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
335 ln -sf $$so_img_rel_target_prefix$(rootlib_execdir)/$$so_img_name $(DESTDIR)$(libdir)/libudev.so && \
336 mv $(DESTDIR)$(libdir)/libudev.so.* $(DESTDIR)$(rootlib_execdir); \
339 libudev-uninstall-move-hook:
340 rm -f $(DESTDIR)$(rootlib_execdir)/libudev.so*
342 udevacl-install-hook:
343 mkdir -p $(DESTDIR)$(prefix)/lib/ConsoleKit/run-session.d
344 ln -sf $(libexecdir)/udev-acl $(DESTDIR)$(prefix)/lib/ConsoleKit/run-session.d/udev-acl.ck