aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorWilliam Hubbs <w.d.hubbs@gmail.com>2014-10-23 18:47:04 -0500
committerWilliam Hubbs <w.d.hubbs@gmail.com>2014-10-23 18:47:24 -0500
commitca6b86be44fc7ed618a7ab3bd021e208d38878b1 (patch)
tree8269161bff9429bdfde429499c5f2bd5549d6a62 /src
parent4ac289b5397a688393c596a9a01651c94d3b5711 (diff)
Fix all tests for GNU/kFreeBSD
It is necessary to check for both the kernel and c library because __FreeBSD_kernel is also defined on native FreeBSD [1]. [1] http://sourceforge.net/p/predef/wiki/OperatingSystems/
Diffstat (limited to 'src')
-rw-r--r--src/librc/librc-daemon.c2
-rw-r--r--src/librc/rc.h.in3
-rw-r--r--src/rc/mountinfo.c6
-rw-r--r--src/rc/rc-logger.c2
-rw-r--r--src/rc/runscript.c3
5 files changed, 10 insertions, 6 deletions
diff --git a/src/librc/librc-daemon.c b/src/librc/librc-daemon.c
index 99703155..d19c3a33 100644
--- a/src/librc/librc-daemon.c
+++ b/src/librc/librc-daemon.c
@@ -30,7 +30,7 @@
#include "librc.h"
-#if defined(__linux__) || defined (__FreeBSD_kernel__)
+#if defined(__linux__) || (defined (__FreeBSD_kernel__) && defined(__GLIBC__))
static bool
pid_is_exec(pid_t pid, const char *exec)
{
diff --git a/src/librc/rc.h.in b/src/librc/rc.h.in
index 34f09f24..fca0dda1 100644
--- a/src/librc/rc.h.in
+++ b/src/librc/rc.h.in
@@ -42,7 +42,8 @@ extern "C" {
#define RC_LIBEXECDIR "@LIBEXECDIR@"
#if defined(PREFIX)
#define RC_SVCDIR RC_LIBEXECDIR "/init.d"
-#elif defined(__linux__) || defined(__FreeBSD_kernel__) || defined(__GNU__)
+#elif defined(__linux__) || (defined(__FreeBSD_kernel__) && \
+ defined(__GLIBC__)) || defined(__GNU__)
#define RC_SVCDIR "/run/openrc"
#else
#define RC_SVCDIR RC_LIBEXECDIR "/init.d"
diff --git a/src/rc/mountinfo.c b/src/rc/mountinfo.c
index c4515ae7..fbad6af7 100644
--- a/src/rc/mountinfo.c
+++ b/src/rc/mountinfo.c
@@ -39,7 +39,8 @@
# include <sys/statvfs.h>
# define statfs statvfs
# define F_FLAGS f_flag
-#elif defined (__linux__) || defined (__FreeBSD_kernel__) || defined(__GNU__)
+#elif defined (__linux__) || (defined(__FreeBSD_kernel__) && \
+ defined(__GLIBC__)) || defined(__GNU__)
# include <mntent.h>
#endif
@@ -265,7 +266,8 @@ find_mounts(struct args *args)
return list;
}
-#elif defined (__linux__) || defined (__FreeBSD_kernel__)
+#elif defined (__linux__) || (defined (__FreeBSD_kernel__) && \
+ defined(__GLIBC__))
static struct mntent *
getmntfile(const char *file)
{
diff --git a/src/rc/rc-logger.c b/src/rc/rc-logger.c
index 50cf6187..89eb84bb 100644
--- a/src/rc/rc-logger.c
+++ b/src/rc/rc-logger.c
@@ -44,7 +44,7 @@
#include <time.h>
#include <unistd.h>
-#if defined(__linux__) || defined(__FreeBSD_kernel__)
+#if defined(__linux__) || (defined(__FreeBSD_kernel__) && defined(__GLIBC__))
# include <pty.h>
#elif defined(__NetBSD__) || defined(__OpenBSD__)
# include <util.h>
diff --git a/src/rc/runscript.c b/src/rc/runscript.c
index 96aa683d..47ed23e2 100644
--- a/src/rc/runscript.c
+++ b/src/rc/runscript.c
@@ -51,7 +51,8 @@
#include <time.h>
#include <unistd.h>
-#if defined(__linux__) || defined(__FreeBSD_kernel__)
+#if defined(__linux__) || (defined(__FreeBSD_kernel__) && \
+ defined(__GLIBC__))
# include <pty.h>
#elif defined(__NetBSD__) || defined(__OpenBSD__)
# include <util.h>