summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien Isorce <[email protected]>2015-06-23 22:47:05 +0100
committerEmil Velikov <[email protected]>2015-06-24 13:43:44 +0100
commit30d67d38246410274713380664be87cd1df9486a (patch)
tree99085e3a2b8f2bf1bfe95133db50732e9c505a48
parent390f94e3581384838595185a06d5943089d3f9ab (diff)
loader: move loader_open_device out of HAVE_LIBUDEV block
Fixes the following build issue, when building without libudev. CCLD libGL.la ./.libs/libglx.a(dri2_glx.o): In function `dri2CreateScreen': src/glx/dri2_glx.c:1186: undefined reference to `loader_open_device' collect2: ld returned 1 exit status CCLD libEGL.la Undefined symbols for architecture x86_64: "_loader_open_device", referenced from: _dri2_initialize_x11_dri2 in libegl_dri2.a(platform_x11.o) Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91077 Signed-off-by: Julien Isorce <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
-rw-r--r--src/loader/loader.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/loader/loader.c b/src/loader/loader.c
index fc468153425..8452cd3560e 100644
--- a/src/loader/loader.c
+++ b/src/loader/loader.c
@@ -64,6 +64,8 @@
* Rob Clark <[email protected]>
*/
+#include <errno.h>
+#include <fcntl.h>
#include <sys/stat.h>
#include <stdarg.h>
#include <stdio.h>
@@ -71,10 +73,8 @@
#ifdef HAVE_LIBUDEV
#include <assert.h>
#include <dlfcn.h>
-#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
-#include <errno.h>
#ifdef USE_DRICONF
#include "xmlconfig.h"
#include "xmlpool.h"
@@ -104,6 +104,22 @@ static void default_logger(int level, const char *fmt, ...)
static void (*log_)(int level, const char *fmt, ...) = default_logger;
+int
+loader_open_device(const char *device_name)
+{
+ int fd;
+#ifdef O_CLOEXEC
+ fd = open(device_name, O_RDWR | O_CLOEXEC);
+ if (fd == -1 && errno == EINVAL)
+#endif
+ {
+ fd = open(device_name, O_RDWR);
+ if (fd != -1)
+ fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
+ }
+ return fd;
+}
+
#ifdef HAVE_LIBUDEV
#include <libudev.h>
@@ -314,22 +330,6 @@ get_id_path_tag_from_fd(struct udev *udev, int fd)
return id_path_tag;
}
-int
-loader_open_device(const char *device_name)
-{
- int fd;
-#ifdef O_CLOEXEC
- fd = open(device_name, O_RDWR | O_CLOEXEC);
- if (fd == -1 && errno == EINVAL)
-#endif
- {
- fd = open(device_name, O_RDWR);
- if (fd != -1)
- fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
- }
- return fd;
-}
-
#ifdef USE_DRICONF
const char __driConfigOptionsLoader[] =
DRI_CONF_BEGIN