non-Linux support for udev
Hello,
The subject of this mail may look odd, but udev's extras can indeed be quite useful for non-Linux systems too, notably libvolume_id, which can be used for hal. The attached patch permits to do this by simply running
make LINUX=false EXTRAS=extras/volume_id
Samuel
Makefile +28 -6
@@ -42,10 +42,15 @@ # make the build silent V = +# Build for Linux +LINUX = true + +ifeq ($(strip $(LINUX)),true) PROGRAMS = \ udevd \ udevadm \ test-udev +endif HEADERS = \ udev.h \
@@ -57,6 +62,13 @@ list.h UDEV_OBJS = \ + udev_utils.o \ + udev_utils_string.o \ + udev_utils_file.o \ + udev_sysdeps.o + +ifeq ($(strip $(LINUX)),true) +UDEV_OBJS += \ udev_device.o \ udev_config.o \ udev_node.o \
@@ -64,16 +76,14 @@ udev_sysfs.o \ udev_rules.o \ udev_rules_parse.o \ - udev_utils.o \ - udev_utils_string.o \ - udev_utils_file.o \ udevmonitor.o \ udevinfo.o \ udevcontrol.o \ udevtrigger.o \ udevsettle.o \ - udevtest.o \ - udev_sysdeps.o + udevtest.o +endif + LIBUDEV = libudev.a MAN_PAGES = \
@@ -152,7 +162,7 @@ endif export E Q -all: $(PROGRAMS) $(MAN_PAGES) +all: $(LIBUDEV) $(PROGRAMS) $(MAN_PAGES) $(Q) extras="$(EXTRAS)"; for target in $$extras; do \ $(MAKE) CC="$(CC)" \ CFLAGS="$(CFLAGS)" \
@@ -221,6 +231,7 @@ .PHONY: clean install-config: +ifeq ($(strip $(LINUX)),true) $(INSTALL) -d $(DESTDIR)$(configdir)/rules.d @ if [ ! -r $(DESTDIR)$(configdir)/udev.conf ]; then \ $(INSTALL_DATA) etc/udev/udev.conf $(DESTDIR)$(configdir); \
@@ -230,12 +241,14 @@ $(INSTALL_DATA) $$i $(DESTDIR)$(configdir)/rules.d; \ fi \ done +endif @ extras="$(EXTRAS)"; for target in $$extras; do \ $(MAKE) -C $$target $@ || exit 1; \ done; .PHONY: install-config install-man: +ifeq ($(strip $(LINUX)),true) $(INSTALL_DATA) -D udev.7 $(DESTDIR)$(mandir)/man7/udev.7 $(INSTALL_DATA) -D udevd.8 $(DESTDIR)$(mandir)/man8/udevd.8 $(INSTALL_DATA) -D udevadm.8 $(DESTDIR)$(mandir)/man8/udevadm.8
@@ -245,12 +258,14 @@ ln -f -s udevadm.8 $(DESTDIR)$(mandir)/man8/udevsettle.8 ln -f -s udevadm.8 $(DESTDIR)$(mandir)/man8/udevmonitor.8 ln -f -s udevadm.8 $(DESTDIR)$(mandir)/man8/udevcontrol.8 +endif @extras="$(EXTRAS)"; for target in $$extras; do \ $(MAKE) -C $$target $@ || exit 1; \ done; .PHONY: install-man uninstall-man: +ifeq ($(strip $(LINUX)),true) - rm -f $(DESTDIR)$(mandir)/man7/udev.7 - rm -f $(DESTDIR)$(mandir)/man8/udevadm.8 - rm -f $(DESTDIR)$(mandir)/man8/udevinfo.8
@@ -260,12 +275,14 @@ - rm -f $(DESTDIR)$(mandir)/man8/udevsettle.8 - rm -f $(DESTDIR)$(mandir)/man8/udevmonitor.8 - rm -f $(DESTDIR)$(mandir)/man8/udevcontrol.8 +endif @ extras="$(EXTRAS)"; for target in $$extras; do \ $(MAKE) -C $$target $@ || exit 1; \ done; .PHONY: uninstall-man install-bin: +ifeq ($(strip $(LINUX)),true) $(INSTALL) -d $(DESTDIR)$(udevdir) $(INSTALL_PROGRAM) -D udevd $(DESTDIR)$(sbindir)/udevd $(INSTALL_PROGRAM) -D udevadm $(DESTDIR)$(sbindir)/udevadm
@@ -277,17 +294,21 @@ mkdir -p -m 0755 $(DESTDIR)$(usrbindir) ln -f -s $(sbindir)/udevadm $(DESTDIR)$(usrbindir)/udevinfo ln -f -s $(sbindir)/udevadm $(DESTDIR)$(usrbindir)/udevtest +endif @extras="$(EXTRAS)"; for target in $$extras; do \ $(MAKE) -C $$target $@ || exit 1; \ done; +ifeq ($(strip $(LINUX)),true) ifndef DESTDIR - killall udevd - rm -rf /dev/.udev - $(sbindir)/udevd --daemon endif +endif .PHONY: install-bin uninstall-bin: +ifeq ($(strip $(LINUX)),true) - rm -f $(DESTDIR)$(sbindir)/udevd - rm -f $(DESTDIR)$(sbindir)/udevadm - rm -f $(DESTDIR)$(sbindir)/udevtrigger
@@ -300,6 +321,7 @@ - killall udevd - rm -rf /dev/.udev endif +endif @extras="$(EXTRAS)"; for target in $$extras; do \ $(MAKE) -C $$target $@ || exit 1; \ done;
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel