INFO = udevinfo
TESTER = udevtest
STARTER = udevstart
-WAIT = wait_for_sysfs
-VERSION = 045
+VERSION = 046
INSTALL_DIR = /usr/local/bin
RELEASE_NAME = $(ROOT)-$(VERSION)
LOCAL_CFG_DIR = etc/udev
LINUX_INCLUDE_DIR := $(KERNEL_DIR)/include
include $(KLIBC_DIR)/arch/$(ARCH)/MCONFIG
# arch specific objects
- ARCH_LIB_OBJS = \
- $(KLIBC_DIR)/libc.a
+ ARCH_LIB_OBJS = $(KLIBC_DIR)/libc.a
CRT0 = $(KLIBC_DIR)/crt0.o
LIB_OBJS += -lselinux
endif
-CFLAGS += -I$(PWD)/libsysfs/sysfs \
+CFLAGS += -I$(PWD)/libsysfs/sysfs \
-I$(PWD)/libsysfs
# config files automatically generated
GEN_CONFIGS = $(LOCAL_CFG_DIR)/udev.conf
-all: $(ROOT) $(SENDER) $(DAEMON) $(INFO) $(TESTER) $(WAIT) $(GEN_CONFIGS)
+all: $(ROOT) $(SENDER) $(DAEMON) $(INFO) $(TESTER) $(GEN_CONFIGS)
@extras="$(EXTRAS)" ; for target in $$extras ; do \
echo $$target ; \
$(MAKE) prefix=$(prefix) \
fi
$(MAKE) -C klibc SUBDIRS=klibc
-SYSFS = $(PWD)/libsysfs/sysfs_bus.o \
- $(PWD)/libsysfs/sysfs_class.o \
- $(PWD)/libsysfs/sysfs_device.o \
- $(PWD)/libsysfs/sysfs_dir.o \
- $(PWD)/libsysfs/sysfs_driver.o \
- $(PWD)/libsysfs/sysfs_utils.o \
- $(PWD)/libsysfs/dlist.o
-
-OBJS = udev_lib.o \
- udev_config.o \
- udev_add.o \
- udev_remove.o \
- udev_sysfs.o \
- udevdb.o \
- namedev.o \
- namedev_parse.o \
- dev_d.o \
- $(SYSFS)
-
-HEADERS = udev.h \
- udev_lib.h \
- namedev.h \
- udev_version.h \
- udevdb.h \
- udev_sysfs.h \
- logging.h \
- selinux.h \
- list.h
+HEADERS = \
+ udev.h \
+ udev_utils.h \
+ namedev.h \
+ udev_version.h \
+ udev_db.h \
+ udev_sysfs.h \
+ logging.h \
+ selinux.h \
+ list.h
+
+SYSFS_OBJS = \
+ libsysfs/sysfs_bus.o \
+ libsysfs/sysfs_class.o \
+ libsysfs/sysfs_device.o \
+ libsysfs/sysfs_dir.o \
+ libsysfs/sysfs_driver.o \
+ libsysfs/sysfs_utils.o \
+ libsysfs/dlist.o
+
+UDEV_OBJS = \
+ udev_utils.o \
+ udev_config.o \
+ udev_add.o \
+ udev_remove.o \
+ udev_start.o \
+ udev_sysfs.o \
+ udev_db.o \
+ udev_multiplex.o \
+ namedev.o \
+ namedev_parse.o
+
+OBJS = \
+ libsysfs/sysfs.a \
+ udev.a
ifeq ($(strip $(USE_KLIBC)),true)
- HEADERS += klibc_fixups/klibc_fixups.h \
- klibc_fixups/mntent.h \
- klibc_fixups/pwd.h
+ HEADERS += \
+ klibc_fixups/klibc_fixups.h \
+ klibc_fixups/mntent.h \
+ klibc_fixups/pwd.h
- OBJS += klibc_fixups/klibc_fixups.o
- KLIBC_FIXUP = klibc_fixups/klibc_fixups.o
+ KLIBC_FIXUP_OBJS = \
+ klibc_fixups/klibc_fixups.o
+
+ OBJS += klibc_fixups/klibc_fixups.a
endif
ifeq ($(strip $(V)),false)
HOST_PROGS=
endif
+udev.a: $(UDEV_OBJS)
+ rm -f $@
+ $(QUIET) $(AR) cq $@ $(UDEV_OBJS)
+ $(QUIET) $(RANLIB) $@
+
+libsysfs/sysfs.a: $(SYSFS_OBJS)
+ rm -f $@
+ $(QUIET) $(AR) cq $@ $(SYSFS_OBJS)
+ $(QUIET) $(RANLIB) $@
+
+klibc_fixups/klibc_fixups.a: $(KLIBC_FIXUP_OBJS)
+ rm -f $@
+ $(QUIET) $(AR) cq $@ $(KLIBC_FIXUP_OBJS)
+ $(QUIET) $(RANLIB) $@
+
# header files automatically generated
GEN_HEADERS = udev_version.h
$(DAEMON).o: $(GEN_HEADERS) $(HOST_PROGS)
$(SENDER).o: $(GEN_HEADERS) $(HOST_PROGS)
$(STARTER).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(WAIT).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(ROOT): $(LIBC) $(ROOT).o $(STARTER).o $(OBJS) $(HEADERS) $(GEN_MANPAGES)
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) udev.o udevstart.o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+$(ROOT): $(LIBC) $(ROOT).o $(OBJS) $(HEADERS) $(GEN_MANPAGES)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) $(ROOT).o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
$(QUIET) $(STRIPCMD) $@
$(TESTER): $(LIBC) $(TESTER).o $(OBJS) $(HEADERS)
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) udevtest.o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) $(TESTER).o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
$(QUIET) $(STRIPCMD) $@
$(INFO): $(LIBC) $(INFO).o $(OBJS) $(HEADERS)
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) udevinfo.o udev_lib.o udev_config.o udevdb.o $(SYSFS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) $(INFO).o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
$(QUIET) $(STRIPCMD) $@
$(DAEMON): $(LIBC) $(DAEMON).o $(OBJS) udevd.h
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) udevd.o udev_lib.o $(KLIBC_FIXUP) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) $(DAEMON).o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
$(QUIET) $(STRIPCMD) $@
$(SENDER): $(LIBC) $(SENDER).o $(OBJS) udevd.h
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) udevsend.o udev_lib.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
- $(QUIET) $(STRIPCMD) $@
-
-$(WAIT): $(WAIT).o $(OBJS) $(HEADERS) $(LIBC)
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) $(WAIT).o udev_sysfs.o udev_lib.o udev_config.o $(SYSFS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) $(SENDER).o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
$(QUIET) $(STRIPCMD) $@
-#.c.o:
-# $(CC) $(CFLAGS) $(DEFS) $(CPPFLAGS) -c -o $@ $<
.c.o:
$(QUIET) $(CC) $(CFLAGS) -c -o $@ $<
clean:
-find . \( -not -type d \) -and \( -name '*~' -o -name '*.[oas]' \) -type f -print \
| xargs rm -f
- -rm -f core $(ROOT) $(GEN_HEADERS) $(GEN_CONFIGS) $(GEN_MANPAGES) $(INFO) $(DAEMON) $(SENDER) $(TESTER) $(WAIT)
+ -rm -f core $(ROOT) $(GEN_HEADERS) $(GEN_CONFIGS) $(GEN_MANPAGES) $(INFO) $(DAEMON) $(SENDER) $(TESTER)
-rm -f ccdv
$(MAKE) -C klibc clean
@extras="$(EXTRAS)" ; for target in $$extras ; do \
$(INSTALL_PROGRAM) -D $(SENDER) $(DESTDIR)$(sbindir)/$(SENDER)
$(INSTALL_PROGRAM) -D $(INFO) $(DESTDIR)$(usrbindir)/$(INFO)
$(INSTALL_PROGRAM) -D $(TESTER) $(DESTDIR)$(usrbindir)/$(TESTER)
- $(INSTALL_PROGRAM) -D $(WAIT) $(DESTDIR)$(sbindir)/$(WAIT)
- ln -f -s $(sbindir)/udev $(DESTDIR)$(sbindir)/$(STARTER)
- ln -f -s $(sbindir)/$(SENDER) $(DESTDIR)$(hotplugdir)/10-udev.hotplug
- - ln -f -s $(sbindir)/$(WAIT) $(DESTDIR)$(hotplugdir)/05-wait_for_sysfs.hotplug
ifndef DESTDIR
- killall $(DAEMON)
- rm -rf $(udevdb)
uninstall: uninstall-man uninstall-dev.d
- rm $(hotplugdir)/10-udev.hotplug
- - rm $(hotplugdir)/05-wait_for_sysfs.hotplug
- rm $(configdir)/rules.d/50-udev.rules
- rm $(configdir)/permissions.d/50-udev.permissions
- rm $(configdir)/udev.conf
- rm $(sbindir)/$(STARTER)
- rm $(usrbindir)/$(INFO)
- rm $(usrbindir)/$(TESTER)
- - rm $(usrbindir)/$(WAIT)
- rmdir $(hotplugdir)
- rm -rf $(udevdb)
- rmdir $(udevdir)