chiark / gitweb /
[PATCH] 053 release
[elogind.git] / Makefile
index 04ac59bcfcc9247f231f3614987f99f39595e46e..d696b8ea3bda6e1f7c012a786f543337500d6922 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -34,7 +34,7 @@ SENDER =      udevsend
 INFO =         udevinfo
 TESTER =       udevtest
 STARTER =      udevstart
-VERSION =      049
+VERSION =      053
 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)
@@ -284,7 +286,6 @@ 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_PERMISSION_FILE     \"$(configdir)/permissions.d\" >> $@
        @echo \#define UDEV_LOG_DEFAULT         \"yes\" >> $@
        @echo \#define UDEV_BIN                 \"$(DESTDIR)$(sbindir)/udev\" >> $@
        @echo \#define UDEVD_BIN                \"$(DESTDIR)$(sbindir)/udevd\" >> $@
@@ -357,7 +358,7 @@ release: spotless
        -rm -rf $(DISTDIR)
        mkdir $(DISTDIR)
        chmod 777 $(DISTDIR)
-       bk export $(DISTDIR)
+       bk export -w $(DISTDIR)
        tar -c $(DISTDIR) | gzip -9 > $(RELEASE_NAME).tar.gz
        rm -rf $(DISTDIR)
        @echo "$(RELEASE_NAME).tar.gz created"
@@ -381,7 +382,6 @@ small_release: $(DISTFILES) spotless
 
 install-config:
        $(INSTALL) -d $(DESTDIR)$(configdir)/rules.d
-       $(INSTALL) -d $(DESTDIR)$(configdir)/permissions.d
        @if [ ! -r $(DESTDIR)$(configdir)/udev.conf ]; then \
                echo $(INSTALL_DATA) $(LOCAL_CFG_DIR)/udev.conf $(DESTDIR)$(configdir); \
                $(INSTALL_DATA) $(LOCAL_CFG_DIR)/udev.conf $(DESTDIR)$(configdir); \
@@ -390,10 +390,6 @@ install-config:
                echo $(INSTALL_DATA) $(LOCAL_CFG_DIR)/udev.rules $(DESTDIR)$(configdir)/rules.d/50-udev.rules; \
                $(INSTALL_DATA) $(LOCAL_CFG_DIR)/udev.rules $(DESTDIR)$(configdir)/rules.d/50-udev.rules; \
        fi
-       @if [ ! -r $(DESTDIR)$(configdir)/permissions.d/50-udev.permissions ]; then \
-               echo $(INSTALL_DATA) $(LOCAL_CFG_DIR)/udev.permissions $(DESTDIR)$(configdir)/permissions.d/50-udev.permissions; \
-               $(INSTALL_DATA) $(LOCAL_CFG_DIR)/udev.permissions $(DESTDIR)$(configdir)/permissions.d/50-udev.permissions; \
-       fi
 
 install-dev.d:
        $(INSTALL) -d $(DESTDIR)$(dev_ddir)/default
@@ -444,10 +440,8 @@ endif
 uninstall: uninstall-man uninstall-dev.d
        - rm $(hotplugdir)/10-udev.hotplug
        - rm $(configdir)/rules.d/50-udev.rules
-       - rm $(configdir)/permissions.d/50-udev.permissions
        - rm $(configdir)/udev.conf
        - rmdir $(configdir)/rules.d
-       - rmdir $(configdir)/permissions.d
        - rmdir $(configdir)
        - rm $(sbindir)/$(ROOT)
        - rm $(sbindir)/$(DAEMON)