aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libbb/Makefile.in12
-rw-r--r--libbb/llist.c43
-rw-r--r--libbb/llist_add_to.c15
-rw-r--r--networking/ifupdown.c23
4 files changed, 53 insertions, 40 deletions
diff --git a/libbb/Makefile.in b/libbb/Makefile.in
index 0c761e2b3..92af30502 100644
--- a/libbb/Makefile.in
+++ b/libbb/Makefile.in
@@ -19,7 +19,7 @@ LIBBB_SRC-y:= \
full_write.c get_last_path_component.c get_line_from_file.c \
hash_fd.c herror_msg.c herror_msg_and_die.c \
human_readable.c inet_common.c inode_hash.c interface.c isdirectory.c \
- kernel_version.c last_char_is.c llist_add_to.c login.c loop.c \
+ kernel_version.c last_char_is.c login.c loop.c \
make_directory.c mode_string.c mtab.c mtab_file.c \
obscure.c parse_mode.c parse_number.c perror_msg.c \
perror_msg_and_die.c print_file.c get_console.c \
@@ -68,17 +68,22 @@ LIBBB_MSRC5:=$(srcdir)/bb_pwd.c
LIBBB_MOBJ5:=bb_xgetpwnam.o bb_xgetgrnam.o bb_getgrgid.o bb_getpwuid.o \
bb_getug.o get_ug_id.o
+LIBBB_MSRC6:=$(srcdir)/llist.c
+LIBBB_MOBJ6:=llist_add_to.o llist_add_to_end.o
+
LIBBB_MOBJS0=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ0))
LIBBB_MOBJS1=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ1))
LIBBB_MOBJS2=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ2))
LIBBB_MOBJS3=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ3))
LIBBB_MOBJS4=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ4))
LIBBB_MOBJS5=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ5))
+LIBBB_MOBJS6=$(patsubst %,$(LIBBB_DIR)%, $(LIBBB_MOBJ6))
libraries-y+=$(LIBBB_DIR)$(LIBBB_AR)
$(LIBBB_DIR)$(LIBBB_AR): $(LIBBB_OBJS) $(LIBBB_MOBJS0) $(LIBBB_MOBJS1) \
- $(LIBBB_MOBJS2) $(LIBBB_MOBJS3) $(LIBBB_MOBJS4) $(LIBBB_MOBJS5)
+ $(LIBBB_MOBJS2) $(LIBBB_MOBJS3) $(LIBBB_MOBJS4) $(LIBBB_MOBJS5) \
+ $(LIBBB_MOBJS6)
$(AR) $(ARFLAGS) $(@) $(LIBBB_OBJS) $(^)
$(LIBBB_DIR)%.o: $(srcdir)/%.c
@@ -102,3 +107,6 @@ $(LIBBB_MOBJS4): $(LIBBB_MSRC4)
$(LIBBB_MOBJS5): $(LIBBB_MSRC5)
$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -DL_$(notdir $*) -c $< -o $@
+$(LIBBB_MOBJS6): $(LIBBB_MSRC6)
+ $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -DL_$(notdir $*) -c $< -o $@
+
diff --git a/libbb/llist.c b/libbb/llist.c
new file mode 100644
index 000000000..cb87176c5
--- /dev/null
+++ b/libbb/llist.c
@@ -0,0 +1,43 @@
+#include <stdlib.h>
+#include <string.h>
+#include "unarchive.h"
+#include "libbb.h"
+
+#ifdef L_llist_add_to
+extern llist_t *llist_add_to(llist_t *old_head, char *new_item)
+{
+ llist_t *new_head;
+
+ new_head = xmalloc(sizeof(llist_t));
+ new_head->data = new_item;
+ new_head->link = old_head;
+
+ return (new_head);
+}
+#endif
+
+#ifdef L_llist_add_to_end
+extern llist_t *llist_add_to_end(llist_t *list_head, char *data)
+{
+ llist_t *new_item, *tmp, *prev;
+
+ new_item = xmalloc(sizeof(llist_t));
+ new_item->data = data;
+ new_item->link = NULL;
+
+ prev = NULL;
+ tmp = list_head;
+ while (tmp) {
+ prev = tmp;
+ tmp = tmp->link;
+ }
+ if (prev) {
+ prev->link = new_item;
+ } else {
+ list_head = new_item;
+ }
+
+ return (list_head);
+}
+#endif
+
diff --git a/libbb/llist_add_to.c b/libbb/llist_add_to.c
deleted file mode 100644
index 61e53f0c1..000000000
--- a/libbb/llist_add_to.c
+++ /dev/null
@@ -1,15 +0,0 @@
-#include <stdlib.h>
-#include <string.h>
-#include "unarchive.h"
-#include "libbb.h"
-
-extern llist_t *llist_add_to(llist_t *old_head, char *new_item)
-{
- llist_t *new_head;
-
- new_head = xmalloc(sizeof(llist_t));
- new_head->data = new_item;
- new_head->link = old_head;
-
- return(new_head);
-}
diff --git a/networking/ifupdown.c b/networking/ifupdown.c
index 68fdd37d4..c73529463 100644
--- a/networking/ifupdown.c
+++ b/networking/ifupdown.c
@@ -67,29 +67,6 @@ struct interface_defn_t;
typedef int (execfn)(char *command);
typedef int (command_set)(struct interface_defn_t *ifd, execfn *e);
-extern llist_t *llist_add_to_end(llist_t *list_head, char *data)
-{
- llist_t *new_item, *tmp, *prev;
-
- new_item = xmalloc(sizeof(llist_t));
- new_item->data = data;
- new_item->link = NULL;
-
- prev = NULL;
- tmp = list_head;
- while(tmp) {
- prev = tmp;
- tmp = tmp->link;
- }
- if (prev) {
- prev->link = new_item;
- } else {
- list_head = new_item;
- }
-
- return(list_head);
-}
-
struct method_t
{
char *name;