summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-10-07 14:56:09 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-10-07 14:59:03 +0200
commit145dfce5f04a3a74a49cc016f15b0aa6d9996662 (patch)
tree919357d5a18934222741732c8444db7711421aa3
parent7e1be3986b3b8229f0162431b6e02c24e04a5dba (diff)
Cleanup: move directory handling code to libcommon
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
-rw-r--r--include/common.h18
-rw-r--r--include/util.h21
-rw-r--r--lib/common/Makemodule.am1
-rw-r--r--lib/common/dirstack.c (renamed from lib/util/dirstack.c)6
-rw-r--r--lib/common/mkdir_p.c (renamed from lib/util/mkdir_p.c)6
-rw-r--r--lib/util/Makemodule.am6
6 files changed, 25 insertions, 33 deletions
diff --git a/include/common.h b/include/common.h
index 19c95a3..0e9da0c 100644
--- a/include/common.h
+++ b/include/common.h
@@ -138,4 +138,22 @@ void sqfs_writer_cleanup(sqfs_writer_t *sqfs);
void sqfs_perror(const char *file, const char *action, int error_code);
+
+/*
+ A wrapper around mkdir() that behaves like 'mkdir -p'. It tries to create
+ every component of the given path and skips already existing entries.
+
+ Returns 0 on success.
+*/
+int mkdir_p(const char *path);
+
+/* Returns 0 on success. On failure, prints error message to stderr. */
+int pushd(const char *path);
+
+/* Same as pushd, but the string doesn't have to be null-terminated. */
+int pushdn(const char *path, size_t len);
+
+/* Returns 0 on success. On failure, prints error message to stderr. */
+int popd(void);
+
#endif /* COMMON_H */
diff --git a/include/util.h b/include/util.h
index 9ed2189..a9cfffd 100644
--- a/include/util.h
+++ b/include/util.h
@@ -59,27 +59,6 @@ SQFS_INTERNAL
void print_version(void);
/*
- A wrapper around mkdir() that behaves like 'mkdir -p'. It tries to create
- every component of the given path and skips already existing entries.
-
- Returns 0 on success.
-*/
-SQFS_INTERNAL
-int mkdir_p(const char *path);
-
-/* Returns 0 on success. On failure, prints error message to stderr. */
-SQFS_INTERNAL
-int pushd(const char *path);
-
-/* Same as pushd, but the string doesn't have to be null-terminated. */
-SQFS_INTERNAL
-int pushdn(const char *path, size_t len);
-
-/* Returns 0 on success. On failure, prints error message to stderr. */
-SQFS_INTERNAL
-int popd(void);
-
-/*
Helper for allocating data structures with flexible array members.
'base_size' is the size of the struct itself, 'item_size' the size of a
diff --git a/lib/common/Makemodule.am b/lib/common/Makemodule.am
index 75f771d..db366af 100644
--- a/lib/common/Makemodule.am
+++ b/lib/common/Makemodule.am
@@ -5,5 +5,6 @@ libcommon_a_SOURCES += lib/common/compress.c lib/common/comp_opt.c
libcommon_a_SOURCES += lib/common/data_writer.c include/common.h
libcommon_a_SOURCES += lib/common/get_path.c lib/common/io_stdin.c
libcommon_a_SOURCES += lib/common/writer.c lib/common/perror.c
+libcommon_a_SOURCES += lib/common/dirstack.c lib/common/mkdir_p.c
noinst_LIBRARIES += libcommon.a
diff --git a/lib/util/dirstack.c b/lib/common/dirstack.c
index 20a89cc..8f73898 100644
--- a/lib/util/dirstack.c
+++ b/lib/common/dirstack.c
@@ -1,10 +1,10 @@
-/* SPDX-License-Identifier: LGPL-3.0-or-later */
+/* SPDX-License-Identifier: GPL-3.0-or-later */
/*
* dirstack.c
*
* Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at>
*/
-#include "config.h"
+#include "common.h"
#include <string.h>
#include <stdlib.h>
@@ -13,8 +13,6 @@
#include <fcntl.h>
#include <stdio.h>
-#include "util.h"
-
#define STACK_DEPTH 128
static int dirstack[STACK_DEPTH];
diff --git a/lib/util/mkdir_p.c b/lib/common/mkdir_p.c
index 93d0f59..cb433b3 100644
--- a/lib/util/mkdir_p.c
+++ b/lib/common/mkdir_p.c
@@ -1,18 +1,16 @@
-/* SPDX-License-Identifier: LGPL-3.0-or-later */
+/* SPDX-License-Identifier: GPL-3.0-or-later */
/*
* mkdir_p.c
*
* Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at>
*/
-#include "config.h"
+#include "common.h"
#include <string.h>
#include <alloca.h>
#include <stdio.h>
#include <errno.h>
-#include "util.h"
-
int mkdir_p(const char *path)
{
size_t i, len;
diff --git a/lib/util/Makemodule.am b/lib/util/Makemodule.am
index 5ba82bc..8dce70c 100644
--- a/lib/util/Makemodule.am
+++ b/lib/util/Makemodule.am
@@ -1,8 +1,6 @@
-libutil_la_SOURCES = lib/util/write_data.c include/util.h
-libutil_la_SOURCES += lib/util/mkdir_p.c include/compat.h
+libutil_la_SOURCES = lib/util/write_data.c include/util.h include/compat.h
libutil_la_SOURCES += lib/util/str_table.c include/str_table.h
-libutil_la_SOURCES += lib/util/dirstack.c lib/util/alloc.c
-libutil_la_SOURCES += lib/util/canonicalize_name.c
+libutil_la_SOURCES += lib/util/alloc.c lib/util/canonicalize_name.c
libutil_la_CFLAGS = $(AM_CFLAGS)
libutil_la_CPPFLAGS = $(AM_CPPFLAGS)