From 30f1eafaaa16c8223a3b5c38436918418a79fea2 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Fri, 22 Jun 2001 03:00:21 +0000 Subject: Fix the build process so it does not do the evil #ifdef BB_FOO stuff. Build exactly one .o file per function, and let the linker throw away the junk it doesn't want. -Erik --- Makefile | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 89d56d50c..0474d17e3 100644 --- a/Makefile +++ b/Makefile @@ -246,7 +246,7 @@ mtab_file.c my_getgrnam.c my_getgrgid.c my_getpwnam.c my_getpwnamegid.c \ my_getpwuid.c parse_mode.c parse_number.c perror_msg.c perror_msg_and_die.c \ print_file.c process_escape_sequence.c read_package_field.c recursive_action.c \ safe_read.c safe_strncpy.c syscalls.c syslog_msg_with_name.c time_string.c \ -trim.c unarchive.c unzip.c vdprintf.c verror_msg.c vperror_msg.c wfopen.c xfuncs.c \ +trim.c unzip.c vdprintf.c verror_msg.c vperror_msg.c wfopen.c xfuncs.c \ xgetcwd.c xreadlink.c xregcomp.c interface.c remove_file.c last_char_is.c \ copyfd.c vherror_msg.c herror_msg.c herror_msg_and_die.c xgethostbyname.c \ dirname.c make_directory.c strdup_substr.c @@ -262,6 +262,11 @@ memory_exhausted invalid_date invalid_option io_error dash_dash_help \ write_error too_few_args name_longer_than_foo unknown LIBBB_MOBJ=$(patsubst %,$(LIBBB)/%.o, $(LIBBB_MESSAGES)) +LIBBB_ARCSRC=libbb/unarchive.c +LIBBB_ARCOBJ= archive_offset seek_sub_file extract_archive unarchive \ +get_header_ar get_header_cpio get_header_tar deb_extract +LIBBB_AROBJS=$(patsubst %,$(LIBBB)/%.o, $(LIBBB_ARCOBJ)) + # Put user-supplied flags at the end, where they # have a chance of winning. @@ -365,10 +370,14 @@ $(LIBBB_MOBJ): $(LIBBB_MSRC) - mkdir -p $(LIBBB) $(CC) $(CFLAGS) $(LIBBB_CFLAGS) -DL_$(patsubst libbb/%,%,$*) -c $< -o $*.o +$(LIBBB_AROBJS): $(LIBBB_ARCSRC) + - mkdir -p $(LIBBB) + $(CC) $(CFLAGS) $(LIBBB_CFLAGS) -DL_$(patsubst libbb/%,%,$*) -c $< -o $*.o + libpwd.a: $(PWD_OBJS) $(AR) $(ARFLAGS) $@ $^ -libbb.a: $(LIBBB_MOBJ) $(LIBBB_OBJS) +libbb.a: $(LIBBB_MOBJ) $(LIBBB_AROBJS) $(LIBBB_OBJS) $(AR) $(ARFLAGS) $@ $^ usage.o: usage.h -- cgit v1.2.3