summaryrefslogtreecommitdiff
path: root/src/libbasic
diff options
context:
space:
mode:
Diffstat (limited to 'src/libbasic')
-rw-r--r--src/libbasic/Makefile2
-rw-r--r--src/libbasic/include/Makefile2
-rw-r--r--src/libbasic/include/basic/Makefile8
-rw-r--r--src/libbasic/include/basic/btrfs-ctree.h1
-rw-r--r--src/libbasic/include/basic/missing_syscall.h4
-rw-r--r--src/libbasic/include/basic/rm-rf.h3
-rw-r--r--src/libbasic/include/basic/socket-util.h2
-rw-r--r--src/libbasic/include/basic/time-util.h2
-rw-r--r--src/libbasic/src/Makefile7
-rw-r--r--src/libbasic/src/af-list.c4
-rw-r--r--src/libbasic/src/arphrd-list.c4
-rw-r--r--src/libbasic/src/btrfs-util.c34
-rw-r--r--src/libbasic/src/cap-list.c4
-rw-r--r--src/libbasic/src/errno-list.c4
-rw-r--r--src/libbasic/src/hashmap.c2
-rw-r--r--src/libbasic/src/memfd-util.c14
-rw-r--r--src/libbasic/src/path-util.c22
-rw-r--r--src/libbasic/src/process-util.c34
-rw-r--r--src/libbasic/src/random-util.c10
-rw-r--r--src/libbasic/src/selinux-util.c14
20 files changed, 98 insertions, 79 deletions
diff --git a/src/libbasic/Makefile b/src/libbasic/Makefile
index 45d408fa19..47ce9cf936 100644
--- a/src/libbasic/Makefile
+++ b/src/libbasic/Makefile
@@ -23,5 +23,5 @@
include $(dir $(lastword $(MAKEFILE_LIST)))/../../config.mk
include $(topsrcdir)/build-aux/Makefile.head.mk
-at.subdirs += src include
+nested.subdirs += src include
include $(topsrcdir)/build-aux/Makefile.tail.mk
diff --git a/src/libbasic/include/Makefile b/src/libbasic/include/Makefile
index 0aa8325a7e..d3a3e62a0e 100644
--- a/src/libbasic/include/Makefile
+++ b/src/libbasic/include/Makefile
@@ -23,5 +23,5 @@
include $(dir $(lastword $(MAKEFILE_LIST)))/../../../config.mk
include $(topsrcdir)/build-aux/Makefile.head.mk
-at.subdirs += basic
+nested.subdirs += basic
include $(topsrcdir)/build-aux/Makefile.tail.mk
diff --git a/src/libbasic/include/basic/Makefile b/src/libbasic/include/basic/Makefile
index eb8483fe8f..8cebc9cac0 100644
--- a/src/libbasic/include/basic/Makefile
+++ b/src/libbasic/include/basic/Makefile
@@ -23,7 +23,7 @@
include $(dir $(lastword $(MAKEFILE_LIST)))/../../../../config.mk
include $(topsrcdir)/build-aux/Makefile.head.mk
-$(outdir)/errno-list.txt:
+$(outdir)/errno-list.txt: | $(outdir)/.deps
$(AM_V_GEN)$(CPP) $(sd.ALL_CPPFLAGS) -dM -include errno.h - </dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+/ { print $$2; }' >$@
$(outdir)/errno-to-name.h: $(outdir)/errno-list.txt
@@ -47,8 +47,8 @@ $(outdir)/arphrd-from-name.gperf: $(outdir)/arphrd-list.txt
$(AM_V_GEN)$(AWK) 'BEGIN{ print "struct arphrd_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, ARPHRD_%s\n", $$1, $$1 }' <$< >$@
-$(outdir)/cap-list.txt:
- $(AM_V_GEN)$(CPP) $(sd.ALL_CPPFLAGS) -dM -include linux/capability.h -include missing.h - </dev/null | $(AWK) '/^#define[ \t]+CAP_[A-Z_]+[ \t]+/ { print $$2; }' | grep -v CAP_LAST_CAP >$@
+$(outdir)/cap-list.txt: $(srcdir)/missing.h
+ $(AM_V_GEN)$(CPP) $(sd.ALL_CPPFLAGS) -dM -include linux/capability.h -include $< - </dev/null | $(AWK) '/^#define[ \t]+CAP_[A-Z_]+[ \t]+/ { print $$2; }' | grep -v CAP_LAST_CAP >$@
$(outdir)/cap-to-name.h: $(outdir)/cap-list.txt
$(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const capability_names[] = { "} { printf "[%s] = \"%s\",\n", $$1, tolower($$1) } END{print "};"}' <$< >$@
@@ -59,4 +59,6 @@ $(outdir)/cap-from-name.gperf: $(outdir)/cap-list.txt
$(outdir)/cap-from-name.h: $(outdir)/cap-from-name.gperf
$(AM_V_GPERF)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_capability -H hash_capability_name -p -C <$< >$@
+sd.CPPFLAGS += $(libbasic.CPPFLAGS)
+
include $(topsrcdir)/build-aux/Makefile.tail.mk
diff --git a/src/libbasic/include/basic/btrfs-ctree.h b/src/libbasic/include/basic/btrfs-ctree.h
index 66bdf9736e..15e6d5582c 100644
--- a/src/libbasic/include/basic/btrfs-ctree.h
+++ b/src/libbasic/include/basic/btrfs-ctree.h
@@ -1,6 +1,7 @@
#pragma once
#include "macro.h"
+#include "missing.h" /* for BTRFS_UUID_SIZE */
#include "sparse-endian.h"
/* Stolen from btrfs' ctree.h */
diff --git a/src/libbasic/include/basic/missing_syscall.h b/src/libbasic/include/basic/missing_syscall.h
index d502d3b9ca..2929123679 100644
--- a/src/libbasic/include/basic/missing_syscall.h
+++ b/src/libbasic/include/basic/missing_syscall.h
@@ -22,6 +22,10 @@
/* Missing glibc definitions to access certain kernel APIs */
+#if __INCLUDE_LEVEL__ <= 1
+#error "Do not include missing_syscall.h directly; include it through missing.h."
+#endif
+
#if !HAVE_DECL_PIVOT_ROOT
static inline int pivot_root(const char *new_root, const char *put_old) {
return syscall(SYS_pivot_root, new_root, put_old);
diff --git a/src/libbasic/include/basic/rm-rf.h b/src/libbasic/include/basic/rm-rf.h
index f693a5bb7c..8d315792ac 100644
--- a/src/libbasic/include/basic/rm-rf.h
+++ b/src/libbasic/include/basic/rm-rf.h
@@ -19,8 +19,11 @@
along with systemd; If not, see <http://www.gnu.org/licenses/>.
***/
+#include <stdlib.h>
#include <sys/stat.h>
+#include "macro.h"
+
typedef enum RemoveFlags {
REMOVE_ONLY_DIRECTORIES = 1,
REMOVE_ROOT = 2,
diff --git a/src/libbasic/include/basic/socket-util.h b/src/libbasic/include/basic/socket-util.h
index bad1f32e09..2b717a91d4 100644
--- a/src/libbasic/include/basic/socket-util.h
+++ b/src/libbasic/include/basic/socket-util.h
@@ -27,8 +27,8 @@
#include <sys/types.h>
#include <sys/un.h>
-#include <linux/netlink.h>
#include <linux/if_packet.h>
+#include <linux/netlink.h>
#include "macro.h"
#include "util.h"
diff --git a/src/libbasic/include/basic/time-util.h b/src/libbasic/include/basic/time-util.h
index a5e3f567ec..8324bb0dd0 100644
--- a/src/libbasic/include/basic/time-util.h
+++ b/src/libbasic/include/basic/time-util.h
@@ -26,6 +26,8 @@
#include <stdio.h>
#include <time.h>
+#include "macro.h"
+
typedef uint64_t usec_t;
typedef uint64_t nsec_t;
diff --git a/src/libbasic/src/Makefile b/src/libbasic/src/Makefile
index 2fc52e91f5..19883d92a1 100644
--- a/src/libbasic/src/Makefile
+++ b/src/libbasic/src/Makefile
@@ -240,4 +240,11 @@ libbasic_la_LIBADD = \
-lrt \
-lm
+_inc = $(call at.path,$(addprefix $(outdir)/../include/basic/,$1))
+$(outdir)/af-list.lo: $(call _inc,af-from-name.h af-to-name.h)
+$(outdir)/arphrd-list.lo: $(call _inc,arphrd-from-name.h arphrd-to-name.h)
+$(outdir)/cap-list.lo: $(call _inc,cap-from-name.h cap-to-name.h)
+$(outdir)/errno-list.lo: $(call _inc,errno-from-name.h errno-to-name.h)
+sd.CPPFLAGS += $(libbasic.CPPFLAGS)
+
include $(topsrcdir)/build-aux/Makefile.tail.mk
diff --git a/src/libbasic/src/af-list.c b/src/libbasic/src/af-list.c
index 434af37851..1c75c926bb 100644
--- a/src/libbasic/src/af-list.c
+++ b/src/libbasic/src/af-list.c
@@ -25,8 +25,8 @@
static const struct af_name* lookup_af(register const char *str, register unsigned int len);
-#include "af-from-name.h"
-#include "af-to-name.h"
+#include "basic/af-from-name.h"
+#include "basic/af-to-name.h"
const char *af_to_name(int id) {
diff --git a/src/libbasic/src/arphrd-list.c b/src/libbasic/src/arphrd-list.c
index fbebe8ca09..649bd37456 100644
--- a/src/libbasic/src/arphrd-list.c
+++ b/src/libbasic/src/arphrd-list.c
@@ -25,8 +25,8 @@
static const struct arphrd_name* lookup_arphrd(register const char *str, register unsigned int len);
-#include "arphrd-from-name.h"
-#include "arphrd-to-name.h"
+#include "basic/arphrd-from-name.h"
+#include "basic/arphrd-to-name.h"
const char *arphrd_to_name(int id) {
diff --git a/src/libbasic/src/btrfs-util.c b/src/libbasic/src/btrfs-util.c
index 7a5f6b7e76..acbcb5f6b9 100644
--- a/src/libbasic/src/btrfs-util.c
+++ b/src/libbasic/src/btrfs-util.c
@@ -36,23 +36,23 @@
#include <linux/btrfs.h>
#endif
-#include "alloc-util.h"
-#include "btrfs-ctree.h"
-#include "btrfs-util.h"
-#include "copy.h"
-#include "fd-util.h"
-#include "fileio.h"
-#include "io-util.h"
-#include "macro.h"
-#include "missing.h"
-#include "path-util.h"
-#include "selinux-util.h"
-#include "smack-util.h"
-#include "sparse-endian.h"
-#include "stat-util.h"
-#include "string-util.h"
-#include "time-util.h"
-#include "util.h"
+#include "basic/alloc-util.h"
+#include "basic/btrfs-ctree.h"
+#include "basic/btrfs-util.h"
+#include "basic/copy.h"
+#include "basic/fd-util.h"
+#include "basic/fileio.h"
+#include "basic/io-util.h"
+#include "basic/macro.h"
+#include "basic/missing.h"
+#include "basic/path-util.h"
+#include "basic/selinux-util.h"
+#include "basic/smack-util.h"
+#include "basic/sparse-endian.h"
+#include "basic/stat-util.h"
+#include "basic/string-util.h"
+#include "basic/time-util.h"
+#include "basic/util.h"
/* WARNING: Be careful with file system ioctls! When we get an fd, we
* need to make sure it either refers to only a regular file or
diff --git a/src/libbasic/src/cap-list.c b/src/libbasic/src/cap-list.c
index 9821644444..22fc8b9b31 100644
--- a/src/libbasic/src/cap-list.c
+++ b/src/libbasic/src/cap-list.c
@@ -28,8 +28,8 @@
static const struct capability_name* lookup_capability(register const char *str, register unsigned int len);
-#include "cap-from-name.h"
-#include "cap-to-name.h"
+#include "basic/cap-from-name.h"
+#include "basic/cap-to-name.h"
const char *capability_to_name(int id) {
diff --git a/src/libbasic/src/errno-list.c b/src/libbasic/src/errno-list.c
index 2d39044b50..a40c4efc2e 100644
--- a/src/libbasic/src/errno-list.c
+++ b/src/libbasic/src/errno-list.c
@@ -25,8 +25,8 @@
static const struct errno_name* lookup_errno(register const char *str,
register unsigned int len);
-#include "errno-from-name.h"
-#include "errno-to-name.h"
+#include "basic/errno-from-name.h"
+#include "basic/errno-to-name.h"
const char *errno_to_name(int id) {
diff --git a/src/libbasic/src/hashmap.c b/src/libbasic/src/hashmap.c
index 38a4bb3feb..0b744c525a 100644
--- a/src/libbasic/src/hashmap.c
+++ b/src/libbasic/src/hashmap.c
@@ -36,7 +36,7 @@
#ifdef ENABLE_DEBUG_HASHMAP
#include <pthread.h>
-#include "list.h"
+#include "basic/list.h"
#endif
/*
diff --git a/src/libbasic/src/memfd-util.c b/src/libbasic/src/memfd-util.c
index 8c8cc78ebf..810dd37ee7 100644
--- a/src/libbasic/src/memfd-util.c
+++ b/src/libbasic/src/memfd-util.c
@@ -28,13 +28,13 @@
#include <sys/mman.h>
#include <sys/prctl.h>
-#include "alloc-util.h"
-#include "fd-util.h"
-#include "macro.h"
-#include "memfd-util.h"
-#include "missing.h"
-#include "string-util.h"
-#include "utf8.h"
+#include "basic/alloc-util.h"
+#include "basic/fd-util.h"
+#include "basic/macro.h"
+#include "basic/memfd-util.h"
+#include "basic/missing.h"
+#include "basic/string-util.h"
+#include "basic/utf8.h"
int memfd_new(const char *name) {
_cleanup_free_ char *g = NULL;
diff --git a/src/libbasic/src/path-util.c b/src/libbasic/src/path-util.c
index b2fa81a294..143380dec2 100644
--- a/src/libbasic/src/path-util.c
+++ b/src/libbasic/src/path-util.c
@@ -31,17 +31,17 @@
#include <libgen.h>
#undef basename
-#include "alloc-util.h"
-#include "extract-word.h"
-#include "fs-util.h"
-#include "log.h"
-#include "macro.h"
-#include "missing.h"
-#include "path-util.h"
-#include "stat-util.h"
-#include "string-util.h"
-#include "strv.h"
-#include "time-util.h"
+#include "basic/alloc-util.h"
+#include "basic/extract-word.h"
+#include "basic/fs-util.h"
+#include "basic/log.h"
+#include "basic/macro.h"
+#include "basic/missing.h"
+#include "basic/path-util.h"
+#include "basic/stat-util.h"
+#include "basic/string-util.h"
+#include "basic/strv.h"
+#include "basic/time-util.h"
bool path_is_absolute(const char *p) {
return p[0] == '/';
diff --git a/src/libbasic/src/process-util.c b/src/libbasic/src/process-util.c
index 02d6f3cca3..fcda02b7a9 100644
--- a/src/libbasic/src/process-util.c
+++ b/src/libbasic/src/process-util.c
@@ -38,23 +38,23 @@
#include <valgrind/valgrind.h>
#endif
-#include "alloc-util.h"
-#include "architecture.h"
-#include "escape.h"
-#include "fd-util.h"
-#include "fileio.h"
-#include "fs-util.h"
-#include "ioprio.h"
-#include "log.h"
-#include "macro.h"
-#include "missing.h"
-#include "process-util.h"
-#include "signal-util.h"
-#include "stat-util.h"
-#include "string-table.h"
-#include "string-util.h"
-#include "user-util.h"
-#include "util.h"
+#include "basic/alloc-util.h"
+#include "basic/architecture.h"
+#include "basic/escape.h"
+#include "basic/fd-util.h"
+#include "basic/fileio.h"
+#include "basic/fs-util.h"
+#include "basic/ioprio.h"
+#include "basic/log.h"
+#include "basic/macro.h"
+#include "basic/missing.h"
+#include "basic/process-util.h"
+#include "basic/signal-util.h"
+#include "basic/stat-util.h"
+#include "basic/string-table.h"
+#include "basic/string-util.h"
+#include "basic/user-util.h"
+#include "basic/util.h"
int get_process_state(pid_t pid) {
const char *p;
diff --git a/src/libbasic/src/random-util.c b/src/libbasic/src/random-util.c
index 6f797879eb..f5b7e54a68 100644
--- a/src/libbasic/src/random-util.c
+++ b/src/libbasic/src/random-util.c
@@ -31,11 +31,11 @@
#include <sys/auxv.h>
#endif
-#include "fd-util.h"
-#include "io-util.h"
-#include "missing.h"
-#include "random-util.h"
-#include "time-util.h"
+#include "basic/fd-util.h"
+#include "basic/io-util.h"
+#include "basic/missing.h"
+#include "basic/random-util.h"
+#include "basic/time-util.h"
int dev_urandom(void *p, size_t n) {
static int have_syscall = -1;
diff --git a/src/libbasic/src/selinux-util.c b/src/libbasic/src/selinux-util.c
index 10c2f39369..34d2dcdccf 100644
--- a/src/libbasic/src/selinux-util.c
+++ b/src/libbasic/src/selinux-util.c
@@ -32,13 +32,13 @@
#include <selinux/selinux.h>
#endif
-#include "alloc-util.h"
-#include "log.h"
-#include "macro.h"
-#include "path-util.h"
-#include "selinux-util.h"
-#include "time-util.h"
-#include "util.h"
+#include "basic/alloc-util.h"
+#include "basic/log.h"
+#include "basic/macro.h"
+#include "basic/path-util.h"
+#include "basic/selinux-util.h"
+#include "basic/time-util.h"
+#include "basic/util.h"
#ifdef HAVE_SELINUX
DEFINE_TRIVIAL_CLEANUP_FUNC(security_context_t, freecon);