X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=Makefile;h=9ad6ee103b949658e62046cbd3d9c53df5b9ca0d;hp=1424cf0315585648a17d0617ec14e3a5907e0c12;hb=3632a3685883d3270145c59d5764de6246547943;hpb=69b5c2ca514122eaf08bdc9aadc1b365697d73ef diff --git a/Makefile b/Makefile index 1424cf031..9ad6ee103 100644 --- a/Makefile +++ b/Makefile @@ -17,16 +17,18 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# Set this to make use of syslog +# Set this to make use of syslog. USE_LOG = true -# Set this to ad development debug messages +# Set this to compile-in development debug messages. Pass UDEV_LOG="debug" +# to the executed binary or set the value in the udev configuration file to +# let udev print the debug messages to syslog. DEBUG = false # Set this to include Security-Enhanced Linux support. USE_SELINUX = false -# Set this to comile with the local version of klibc instead of glibc. +# Set this to comile with klibc instead of glibc. USE_KLIBC = false # Set this to create statically linked binaries. @@ -42,14 +44,15 @@ V=false ROOT = udev DAEMON = udevd SENDER = udevsend +INITSENDER = udevinitsend +RECORDER = udeveventrecorder +CONTROL = udevcontrol INFO = udevinfo TESTER = udevtest STARTER = udevstart -VERSION = 056 -INSTALL_DIR = /usr/local/bin +VERSION = 058 RELEASE_NAME = $(ROOT)-$(VERSION) LOCAL_CFG_DIR = etc/udev -HOTPLUG_EXEC = $(ROOT) DESTDIR = KERNEL_DIR = /lib/modules/${shell uname -r}/build @@ -141,7 +144,6 @@ UDEV_OBJS = \ udev_remove.o \ udev_sysfs.o \ udev_db.o \ - udev_multiplex.o \ udev_rules.o \ udev_rules_parse.o \ udev_libc_wrapper.o @@ -177,7 +179,6 @@ ifeq ($(strip $(USE_KLIBC)),true) KLCC = $(KLIBC_INSTALL)/bin/klcc CC = $(KLCC) LD = $(KLCC) - LDFLAGS += -static else CFLAGS += -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations endif @@ -204,7 +205,7 @@ endif # config files automatically generated GEN_CONFIGS = $(LOCAL_CFG_DIR)/udev.conf -all: $(ROOT) $(SENDER) $(DAEMON) $(INFO) $(TESTER) $(STARTER) $(GEN_CONFIGS) $(KLCC) +all: $(ROOT) $(SENDER) $(INITSENDER) $(RECORDER) $(CONTROL) $(DAEMON) $(INFO) $(TESTER) $(STARTER) $(GEN_CONFIGS) $(KLCC) @extras="$(EXTRAS)" ; for target in $$extras ; do \ echo $$target ; \ $(MAKE) prefix=$(prefix) \ @@ -216,7 +217,7 @@ all: $(ROOT) $(SENDER) $(DAEMON) $(INFO) $(TESTER) $(STARTER) $(GEN_CONFIGS) $(K done ; \ $(KLCC): - $(MAKE) -C klibc KRNLSRC=$(KERNEL_DIR) SUBDIRS=klibc TESTS= \ + $(MAKE) -j1 -C klibc KRNLSRC=$(KERNEL_DIR) SUBDIRS=klibc TESTS= \ SHLIBDIR=$(KLIBC_INSTALL)/lib \ INSTALLDIR=$(KLIBC_INSTALL) \ bindir=$(KLIBC_INSTALL)/bin \ @@ -249,9 +250,8 @@ udev_version.h: @echo \#define UDEV_CONFIG_DIR \"$(configdir)\" >> $@ @echo \#define UDEV_CONFIG_FILE \"$(configdir)/udev.conf\" >> $@ @echo \#define UDEV_RULES_FILE \"$(configdir)/rules.d\" >> $@ - @echo \#define UDEV_LOG_DEFAULT \"yes\" >> $@ - @echo \#define UDEV_BIN \"$(DESTDIR)$(sbindir)/udev\" >> $@ - @echo \#define UDEVD_BIN \"$(DESTDIR)$(sbindir)/udevd\" >> $@ + @echo \#define UDEV_BIN \"$(sbindir)/udev\" >> $@ + @echo \#define UDEVD_BIN \"$(sbindir)/udevd\" >> $@ # Rules on how to create the generated config files $(LOCAL_CFG_DIR)/udev.conf: @@ -263,15 +263,18 @@ GEN_MANPAGESIN = udev.8.in $(GEN_MANPAGES): $(GEN_MANPAGESIN) sed -e "s:@udevdir@:$(udevdir):" < $@.in > $@ -$(UDEV_OBJS): $(GEN_HEADERS) $(HOST_PROGS) -$(SYSFS_OBJS): $(HOST_PROGS) -$(OBJS): $(GEN_HEADERS) $(HOST_PROGS) -$(ROOT).o: $(GEN_HEADERS) $(HOST_PROGS) -$(TESTER).o: $(GEN_HEADERS) $(HOST_PROGS) -$(INFO).o: $(GEN_HEADERS) $(HOST_PROGS) -$(DAEMON).o: $(GEN_HEADERS) $(HOST_PROGS) -$(SENDER).o: $(GEN_HEADERS) $(HOST_PROGS) -$(STARTER).o: $(GEN_HEADERS) $(HOST_PROGS) +$(UDEV_OBJS): $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(SYSFS_OBJS): $(HEADERS) $(HOST_PROGS) $(KLCC) +$(OBJS): $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(ROOT).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(TESTER).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(INFO).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(DAEMON).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(SENDER).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(INITSENDER).o: $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(RECORDER).o: $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(CONTROL).o: $(HEADERS) $( $(HEADERS)GEN_HEADERS) $(HOST_PROGS) $(KLCC) +$(STARTER).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC) $(ROOT): $(KLCC) $(ROOT).o $(OBJS) $(HEADERS) $(GEN_MANPAGES) $(QUIET) $(LD) $(LDFLAGS) -o $@ $(ROOT).o $(OBJS) $(LIB_OBJS) @@ -293,6 +296,18 @@ $(SENDER): $(KLCC) $(SENDER).o $(OBJS) udevd.h $(QUIET) $(LD) $(LDFLAGS) -o $@ $(SENDER).o $(OBJS) $(LIB_OBJS) $(QUIET) $(STRIPCMD) $@ +$(INITSENDER): $(KLCC) $(INITSENDER).o $(OBJS) udevd.h + $(QUIET) $(LD) $(LDFLAGS) -o $@ $(INITSENDER).o $(OBJS) $(LIB_OBJS) + $(QUIET) $(STRIPCMD) $@ + +$(RECORDER): $(KLCC) $(RECORDER).o $(OBJS) udevd.h + $(QUIET) $(LD) $(LDFLAGS) -o $@ $(RECORDER).o $(OBJS) $(LIB_OBJS) + $(QUIET) $(STRIPCMD) $@ + +$(CONTROL): $(KLCC) $(CONTROL).o $(OBJS) udevd.h + $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CONTROL).o $(OBJS) $(LIB_OBJS) + $(QUIET) $(STRIPCMD) $@ + $(STARTER): $(KLCC) $(STARTER).o $(OBJS) $(QUIET) $(LD) $(LDFLAGS) -o $@ $(STARTER).o $(OBJS) $(LIB_OBJS) $(QUIET) $(STRIPCMD) $@ @@ -304,7 +319,7 @@ 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) $(STARTER) + $(SENDER) $(INITSENDER) $(RECORDER) $(CONTROL) $(TESTER) $(STARTER) -rm -f ccdv $(MAKE) -C klibc SUBDIRS=klibc clean @extras="$(EXTRAS)" ; for target in $$extras ; do \ @@ -317,35 +332,10 @@ spotless: clean $(MAKE) -C klibc SUBDIRS=klibc spotless rm -rf klibc/.install -DISTFILES = $(shell find . \( -not -name '.' \) -print | grep -v -e CVS -e "\.tar\.gz" -e "\/\." -e releases -e BitKeeper -e SCCS -e test/sys | sort ) -DISTDIR := $(RELEASE_NAME) -srcdir = . release: spotless - -rm -rf $(DISTDIR) - mkdir $(DISTDIR) - chmod 777 $(DISTDIR) - bk export -w $(DISTDIR) - tar -c $(DISTDIR) | gzip -9 > $(RELEASE_NAME).tar.gz - rm -rf $(DISTDIR) + git-tar-tree HEAD $(RELEASE_NAME) | gzip -9v > $(RELEASE_NAME).tar.gz @echo "$(RELEASE_NAME).tar.gz created" - -small_release: $(DISTFILES) spotless -# @echo $(DISTFILES) - @-rm -rf $(DISTDIR) - @mkdir $(DISTDIR) - @-chmod 777 $(DISTDIR) - @for file in $(DISTFILES); do \ - if test -d $$file; then \ - mkdir $(DISTDIR)/$$file; \ - else \ - cp -p $$file $(DISTDIR)/$$file; \ - fi; \ - done - @tar -c $(DISTDIR) | gzip -9 > $(RELEASE_NAME).tar.gz - @rm -rf $(DISTDIR) - @echo "Built $(RELEASE_NAME).tar.gz" - install-config: $(INSTALL) -d $(DESTDIR)$(configdir)/rules.d @if [ ! -r $(DESTDIR)$(configdir)/udev.conf ]; then \ @@ -389,12 +379,16 @@ install: install-config install-man install-dev.d all $(INSTALL_PROGRAM) -D $(ROOT) $(DESTDIR)$(sbindir)/$(ROOT) $(INSTALL_PROGRAM) -D $(DAEMON) $(DESTDIR)$(sbindir)/$(DAEMON) $(INSTALL_PROGRAM) -D $(SENDER) $(DESTDIR)$(sbindir)/$(SENDER) + $(INSTALL_PROGRAM) -D $(INITSENDER) $(DESTDIR)$(sbindir)/$(INITSENDER) + $(INSTALL_PROGRAM) -D $(RECORDER) $(DESTDIR)$(sbindir)/$(RECORDER) + $(INSTALL_PROGRAM) -D $(CONTROL) $(DESTDIR)$(sbindir)/$(CONTROL) $(INSTALL_PROGRAM) -D $(INFO) $(DESTDIR)$(usrbindir)/$(INFO) $(INSTALL_PROGRAM) -D $(TESTER) $(DESTDIR)$(usrbindir)/$(TESTER) $(INSTALL_PROGRAM) -D $(STARTER) $(DESTDIR)$(sbindir)/$(STARTER) - ln -f -s $(sbindir)/$(SENDER) $(DESTDIR)$(hotplugdir)/10-udev.hotplug ifndef DESTDIR - killall $(DAEMON) + - $(sbindir)/$(DAEMON) -d - rm -rf $(udevdb) endif @extras="$(EXTRAS)" ; for target in $$extras ; do \ @@ -412,6 +406,9 @@ uninstall: uninstall-man uninstall-dev.d - rm $(sbindir)/$(ROOT) - rm $(sbindir)/$(DAEMON) - rm $(sbindir)/$(SENDER) + - rm $(sbindir)/$(INITSENDER) + - rm $(sbindir)/$(RECORDER) + - rm $(sbindir)/$(CONTROL) - rm $(sbindir)/$(STARTER) - rm $(usrbindir)/$(INFO) - rm $(usrbindir)/$(TESTER) @@ -427,3 +424,4 @@ uninstall: uninstall-man uninstall-dev.d test: all @ cd test && ./udev-test.pl + @ cd test && ./udevstart-test.pl