# Set the following to control the use of syslog
# Set it to `false' to remove all logging
-LOG = true
+USE_LOG = true
# Set the following to `true' to log the debug
# and make a unstripped, unoptimized binary.
ROOT = udev
-VERSION = 013_bk
+DAEMON = udevd
+SENDER = udevsend
+VERSION = 014_bk
INSTALL_DIR = /usr/local/bin
RELEASE_NAME = $(ROOT)-$(VERSION)
LOCAL_CFG_DIR = etc/udev
then echo "-Os"; else echo "-O2" ; fi}
# add -Wredundant-decls when libsysfs gets cleaned up
-WARNINGS := -Wall -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
+WARNINGS := -Wall
# Some nice architecture specific optimizations
ifeq ($(strip $(TARGET_ARCH)),arm)
CFLAGS+=-pipe
endif
-ifeq ($(strip $(LOG)),true)
+ifeq ($(strip $(USE_LOG)),true)
CFLAGS += -DLOG
endif
# if DEBUG is enabled, then we do not strip or optimize
ifeq ($(strip $(DEBUG)),true)
- CFLAGS += $(WARNINGS) -O1 -g -DDEBUG -D_GNU_SOURCE
+ CFLAGS += -O1 -g -DDEBUG -D_GNU_SOURCE
LDFLAGS += -Wl,-warn-common
STRIPCMD = /bin/true -Since_we_are_debugging
else
- CFLAGS += $(WARNINGS) $(OPTIMIZATION) -fomit-frame-pointer -D_GNU_SOURCE
+ CFLAGS += $(OPTIMIZATION) -fomit-frame-pointer -D_GNU_SOURCE
LDFLAGS += -s -Wl,-warn-common
STRIPCMD = $(STRIP) -s --remove-section=.note --remove-section=.comment
endif
CRT0 = $(KLIBC_DIR)/crt0.o
LIBC = $(ARCH_LIB_OBJS) $(LIB_OBJS) $(CRT0)
- CFLAGS += -nostdinc -I$(INCLUDE_DIR) -I$(KLIBC_DIR)/arch/$(ARCH)/include \
- -I$(INCLUDE_DIR)/bits$(BITSIZE) -I$(GCCINCDIR) -I$(LINUX_INCLUDE_DIR) \
- -D__KLIBC__ -fno-builtin-printf
+ CFLAGS += $(WARNINGS) -nostdinc \
+ -D__KLIBC__ -fno-builtin-printf \
+ -I$(INCLUDE_DIR) \
+ -I$(KLIBC_DIR)/arch/$(ARCH)/include \
+ -I$(INCLUDE_DIR)/bits$(BITSIZE) \
+ -I$(GCCINCDIR) \
+ -I$(LINUX_INCLUDE_DIR)
LIB_OBJS =
LDFLAGS = --static --nostdlib -nostartfiles -nodefaultlibs
else
+ WARNINGS += -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
CRT0 =
LIBC =
- CFLAGS += -I$(GCCINCDIR)
+ CFLAGS += $(WARNINGS) -I$(GCCINCDIR)
LIB_OBJS = -lc
LDFLAGS =
endif
CFLAGS += -I$(PWD)/libsysfs
-all: $(ROOT)
+all: $(ROOT) $(DAEMON) $(SENDER)
@extras="$(EXTRAS)" ; for target in $$extras ; do \
echo $$target ; \
$(MAKE) prefix=$(prefix) LD="$(LD)" SYSFS="$(SYSFS)" \
$(LD) $(LDFLAGS) -o $(ROOT) $(CRT0) $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
$(STRIPCMD) $(ROOT)
+$(DAEMON): $(ROOT) udevd.h udevd.o
+ $(LD) $(LDFLAGS) -o $(DAEMON) $(CRT0) udevd.o logging.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(STRIPCMD) $(ROOT)
+
+$(SENDER): $(ROOT) udevd.h udevsend.o
+ $(LD) $(LDFLAGS) -o $(SENDER) $(CRT0) udevsend.o logging.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ $(STRIPCMD) $(ROOT)
+
clean:
-find . \( -not -type d \) -and \( -name '*~' -o -name '*.[oas]' \) -type f -print \
| xargs rm -f
- -rm -f core $(ROOT) $(GEN_HEADERS) $(GEN_CONFIGS)
+ -rm -f core $(ROOT) $(GEN_HEADERS) $(GEN_CONFIGS) $(DAEMON) $(SENDER)
$(MAKE) -C klibc clean
@extras="$(EXTRAS)" ; for target in $$extras ; do \
echo $$target ; \