chiark / gitweb /
[PATCH] udev_volume_id: volume_id version 032
[elogind.git] / Makefile
index 52c1d47b2d76ab1126f34bab7c5f1c8480d1dc76..dc907f6a81e55e9738402d431495ceca9c5fab10 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -34,7 +34,7 @@ SENDER =      udevsend
 INFO =         udevinfo
 TESTER =       udevtest
 STARTER =      udevstart
-VERSION =      050
+VERSION =      051
 INSTALL_DIR =  /usr/local/bin
 RELEASE_NAME = $(ROOT)-$(VERSION)
 LOCAL_CFG_DIR =        etc/udev
@@ -108,11 +108,56 @@ GCC_LIB := $(shell $(CC) -print-libgcc-file-name )
 OPTIMIZATION := ${shell if $(CC) -Os -S -o /dev/null -xc /dev/null >/dev/null 2>&1; \
                then echo "-Os"; else echo "-O2" ; fi}
 
-# add -Wredundant-decls when libsysfs gets cleaned up
-WARNINGS := -Wall 
+# check if compiler option is supported
+cc-supports = ${shell if $(CC) ${1} -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo "$(1)"; fi;}
+
+WARNINGS := -Wall -fno-builtin -Wchar-subscripts -Wpointer-arith -Wstrict-prototypes -Wsign-compare
+WARNINGS += $(call cc-supports,-Wno-pointer-sign)
+WARNINGS += $(call cc-supports,-Wdeclaration-after-statement)
 
 CFLAGS := -pipe
 
+HEADERS = \
+       udev.h          \
+       udev_utils.h    \
+       namedev.h       \
+       udev_version.h  \
+       udev_db.h       \
+       udev_sysfs.h    \
+       logging.h       \
+       udev_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 = \
+       udev.a                  \
+       libsysfs/sysfs.a
+
+SYSFS = $(PWD)/libsysfs/sysfs.a
+
+CFLAGS +=      -I$(PWD)/libsysfs/sysfs \
+               -I$(PWD)/libsysfs
+
 ifeq ($(strip $(USE_LOG)),true)
        CFLAGS  += -DLOG
 endif
@@ -129,8 +174,7 @@ else
 endif
 
 # If we are using our version of klibc, then we need to build, link it, and then
-# link udev against it statically.
-# Otherwise, use glibc and link dynamically.
+# link udev against it statically. Otherwise, use glibc and link dynamically.
 ifeq ($(strip $(USE_KLIBC)),true)
        KLIBC_FIXUPS_DIR= $(PWD)/klibc_fixups
        KLIBC_BASE      = $(PWD)/klibc
@@ -156,6 +200,16 @@ ifeq ($(strip $(USE_KLIBC)),true)
                -I$(LINUX_INCLUDE_DIR)
        LIB_OBJS =
        LDFLAGS = --static --nostdlib -nostartfiles -nodefaultlibs
+
+       HEADERS += \
+               klibc_fixups/klibc_fixups.h     \
+               klibc_fixups/mntent.h           \
+               klibc_fixups/pwd.h
+
+       KLIBC_FIXUP_OBJS = \
+               klibc_fixups/klibc_fixups.o
+
+       OBJS += klibc_fixups/klibc_fixups.a
 else
        WARNINGS += -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
        CRT0 =
@@ -166,12 +220,18 @@ else
 endif
 
 ifeq ($(strip $(USE_SELINUX)),true)
-       CFLAGS += -DUSE_SELINUX
+       UDEV_OBJS += udev_selinux.o
        LIB_OBJS += -lselinux
+       CFLAGS += -DUSE_SELINUX
 endif
 
-CFLAGS +=      -I$(PWD)/libsysfs/sysfs \
-               -I$(PWD)/libsysfs
+ifeq ($(strip $(V)),false)
+       QUIET=@$(PWD)/ccdv
+       HOST_PROGS=ccdv
+else
+       QUIET=
+       HOST_PROGS=
+endif
 
 # config files automatically generated
 GEN_CONFIGS =  $(LOCAL_CFG_DIR)/udev.conf
@@ -195,64 +255,6 @@ $(CRT0):
        fi
        $(MAKE) -C klibc SUBDIRS=klibc TESTS=
 
-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
-
-SYSFS = $(PWD)/libsysfs/sysfs.a
-
-ifeq ($(strip $(USE_KLIBC)),true)
-       HEADERS += \
-               klibc_fixups/klibc_fixups.h     \
-               klibc_fixups/mntent.h           \
-               klibc_fixups/pwd.h
-
-       KLIBC_FIXUP_OBJS = \
-               klibc_fixups/klibc_fixups.o
-
-       OBJS += klibc_fixups/klibc_fixups.a
-endif
-
-ifeq ($(strip $(V)),false)
-       QUIET=@$(PWD)/ccdv
-       HOST_PROGS=ccdv
-else
-       QUIET=
-       HOST_PROGS=
-endif
-
 udev.a: $(UDEV_OBJS)
        rm -f $@
        $(QUIET) $(AR) cq $@ $(UDEV_OBJS)