]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
[PATCH] put config files and database in /etc/udev by default
authorgreg@kroah.com <greg@kroah.com>
Thu, 16 Oct 2003 06:50:13 +0000 (23:50 -0700)
committerGreg KH <gregkh@suse.de>
Wed, 27 Apr 2005 04:01:40 +0000 (21:01 -0700)
Can be overridden on the makefile line.

Makefile
namedev.h
udev.h
udevdb.c
udevdb.h

index 3f9fef49d5b3bcb54a2a870a3c410104c26e0a1c..92b3dc7465e80cc7d34a68efdc8dc212459ddd6d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -22,10 +22,16 @@ DEBUG = true
 
 
 ROOT =         udev
-VERSION =      0.2
+VERSION =      003
 INSTALL_DIR =  /usr/local/bin
 RELEASE_NAME = $(ROOT)-$(VERSION)
 
+# override this to make udev look in a different location for it's config files
+PREFIX =
+CONFIG_DIR = $(PREFIX)/etc/udev/
+
+# place to put our device nodes
+UDEV_DIR = /udev/
 
 # Comment out this line to build with something other 
 # than the local version of klibc
@@ -135,7 +141,9 @@ GEN_HEADERS =       udev_version.h
 
 # Rules on how to create the generated header files
 udev_version.h:
-       @echo \#define UDEV_VERSION \"$(VERSION)\" > $@
+       @echo \#define UDEV_VERSION     \"$(VERSION)\" > $@
+       @echo \#define UDEV_CONFIG_DIR  \"$(CONFIG_DIR)\" >> $@
+       @echo \#define UDEV_ROOT        \"$(UDEV_DIR)\" >> $@
 
 
 $(ROOT): $(GEN_HEADERS) $(OBJS) $(LIBSYSFS) $(TDB)
@@ -151,7 +159,7 @@ clean:
        $(MAKE) -C libsysfs clean
        $(MAKE) -C tdb clean
 
-DISTFILES = $(shell find . \( -not -name '.' \) -print | grep -v CVS | grep -v "\.tar\.gz" | grep -v "\/\." | grep -v releases | grep -v BitKeeper | grep -v SCCS )
+DISTFILES = $(shell find . \( -not -name '.' \) -print | grep -v CVS | grep -v "\.tar\.gz" | grep -v "\/\." | grep -v releases | grep -v BitKeeper | grep -v SCCS | grep -v ".tdb" )
 DISTDIR := $(RELEASE_NAME)
 srcdir = .
 release: $(DISTFILES) clean
index 1f535c4c8b17e36de73258bf5996d4ec0a74f59e..567756c827f0931d7a31bcb824e09cf135e13533 100644 (file)
--- a/namedev.h
+++ b/namedev.h
@@ -30,7 +30,6 @@ struct sysfs_class_device;
 
 /* namedev config files */
 #define COMMENT_CHARACTER              '#'
-#define NAMEDEV_CONFIG_ROOT            "/home/greg/src/udev/"
 #define NAMEDEV_CONFIG_PERMISSION_FILE "namedev.permissions"
 #define NAMEDEV_CONFIG_FILE            "namedev.config"
 
diff --git a/udev.h b/udev.h
index e9fc2e46eb86392e211d8f9f6ea986ae34f82ebf..33cb89af5542ef6684971cc6e90c0514325e85b1 100644 (file)
--- a/udev.h
+++ b/udev.h
        #define dbg(format, arg...) do { } while (0)
 #endif
 
+/* Parser needs it's own debugging statement, we usually don't care about this at all */
+#ifdef DEBUG_PARSER
+#define dbg_parse(format, arg...)                                                      \
+       do {                                                                            \
+               log_message (LOG_DEBUG , "%s: " format , __FUNCTION__ , ## arg);        \
+       } while (0)
+#else
+       #define dbg_parse(format, arg...) do { } while (0)
+#endif
 
-/* Lots of constants that should be in a config file sometime */
-
-/* Where udev should create its device nodes, trailing / needed */
-#define UDEV_ROOT      "/udev/"
 
 extern int log_message (int level, const char *format, ...)
        __attribute__ ((format (printf, 2, 3)));
 
+
+/* Lots of constants that should be in a config file sometime */
+
 #define NAME_SIZE      100
 #define OWNER_SIZE     30
 #define GROUP_SIZE     30
index c2e90be32f47a71eceddc820c041e17c734ff4b6..db5bb73de9a18d9dc937dac9d59c26d5a6865f08 100644 (file)
--- a/udevdb.c
+++ b/udevdb.c
@@ -9,6 +9,9 @@
 #include <errno.h>
 #include <signal.h>
 
+#include "udev_version.h"
+#include "udev.h"
+#include "namedev.h"
 #include "udevdb.h"
 #include "tdb/tdb.h"
 
@@ -63,9 +66,14 @@ static void udevdb_close(void)
  */
 static int udevdb_open(int method)
 {
-       udevdb = tdb_open(UDEVDB, 0, method, O_RDWR | O_CREAT, 0644);
-       if (udevdb == NULL)
-               return -1;
+       udevdb = tdb_open(UDEV_CONFIG_DIR UDEV_DB, 0, method, O_RDWR | O_CREAT, 0644);
+       if (udevdb == NULL) {
+               if (method == UDEVDB_INTERNAL)
+                       dbg("Unable to initialize in-memory database");
+               else
+                       dbg("Unable to initialize database at %s", UDEV_CONFIG_DIR UDEV_DB);
+               return -EINVAL;
+       }
        return 0;
 }
 
index a9ba2f93b466ef15371b8057643e8c66a7c2253b..089af2972b0cf7580a02612217c98f6e837fbd78 100644 (file)
--- a/udevdb.h
+++ b/udevdb.h
@@ -4,10 +4,7 @@
 #ifndef _UDEVDB_H_
 #define _UDEVDB_H_
 
-#include "namedev.h"
-#include "udev.h"
-
-#define UDEVDB         "/home/greg/src/udev/udevdb.tdb" 
+#define UDEV_DB                "udevdb.tdb" 
 
 #define PATH_SIZE      256