lib-y:=
+lib-y += appletlib.o
lib-y += ask_confirmation.o
lib-y += bb_askpass.o
lib-y += bb_basename.o
lib-y += bb_do_delay.o
lib-y += bb_pwd.o
+lib-y += bb_qsort.o
+#lib-y += bb_strtod.o
lib-y += bb_strtonum.o
lib-y += change_identity.o
lib-y += chomp.o
lib-y += get_last_path_component.o
lib-y += get_line_from_file.o
lib-y += getopt32.o
+lib-y += getpty.o
lib-y += herror_msg.o
lib-y += herror_msg_and_die.o
lib-y += human_readable.o
lib-y += isdirectory.o
lib-y += kernel_version.o
lib-y += last_char_is.o
-lib-y += lineedit.o
+lib-y += lineedit.o lineedit_ptr_hack.o
lib-y += llist.o
lib-y += login.o
lib-y += make_directory.o
lib-y += makedev.o
lib-y += match_fstype.o
lib-y += md5.o
+# Alternative (disabled) implementation
+#lib-y += md5prime.o
lib-y += messages.o
lib-y += mode_string.o
lib-y += mtab_file.o
lib-y += obscure.o
lib-y += parse_mode.o
+lib-y += parse_config.o
lib-y += perror_msg.o
lib-y += perror_msg_and_die.o
lib-y += perror_nomsg.o
lib-y += perror_nomsg_and_die.o
lib-y += pidfile.o
+lib-y += platform.o
+lib-y += printable.o
+lib-y += print_flags.o
lib-y += process_escape_sequence.o
lib-y += procps.o
+lib-y += progress.o
+lib-y += ptr_to_globals.o
lib-y += read.o
+lib-y += read_key.o
lib-y += recursive_action.o
lib-y += remove_file.o
lib-y += restricted_shell.o
lib-y += run_shell.o
+lib-y += safe_gethostname.o
+lib-y += safe_poll.o
lib-y += safe_strncpy.o
lib-y += safe_write.o
lib-y += setup_environment.o
lib-y += sha1.o
+lib-y += signals.o
lib-y += simplify_path.o
lib-y += skip_whitespace.o
lib-y += speed_table.o
lib-y += str_tolower.o
+lib-y += strrstr.o
lib-y += time.o
lib-y += trim.o
lib-y += u_signal_names.o
lib-y += vdprintf.o
lib-y += verror_msg.o
lib-y += vfork_daemon_rexec.o
-lib-y += vherror_msg.o
-lib-y += vinfo_msg.o
-lib-y += vperror_msg.o
lib-y += warn_ignoring_args.o
lib-y += wfopen.o
lib-y += wfopen_input.o
+lib-y += write.o
lib-y += xatonum.o
lib-y += xconnect.o
lib-y += xfuncs.o
+lib-y += xfuncs_printf.o
+lib-y += xfunc_die.o
lib-y += xgetcwd.o
lib-y += xgethostbyname.o
lib-y += xreadlink.o
+lib-y += xrealloc_vector.o
-# conditionally compiled objects:
-lib-$(CONFIG_FEATURE_MOUNT_LOOP) += loop.o
-lib-$(CONFIG_LOSETUP) += loop.o
+# A mix of optimizations (why build stuff we know won't be used)
+# and objects which may fail to build (SELinux on selinux-less system)
+lib-$(CONFIG_SELINUX) += selinux_common.o
lib-$(CONFIG_FEATURE_MTAB_SUPPORT) += mtab.o
-lib-$(CONFIG_PASSWD) += pw_encrypt.o crypt_make_salt.o
-lib-$(CONFIG_CRYPTPW) += pw_encrypt.o crypt_make_salt.o
+lib-$(CONFIG_FEATURE_ASSUME_UNICODE) += unicode.o
+lib-$(CONFIG_FEATURE_CHECK_NAMES) += die_if_bad_username.o
+
+lib-$(CONFIG_LOSETUP) += loop.o
+lib-$(CONFIG_FEATURE_MOUNT_LOOP) += loop.o
+
+lib-$(CONFIG_ADDGROUP) += update_passwd.o
+lib-$(CONFIG_ADDUSER) += update_passwd.o
+lib-$(CONFIG_DELGROUP) += update_passwd.o
+lib-$(CONFIG_DELUSER) += update_passwd.o
+
+lib-$(CONFIG_PASSWD) += pw_encrypt.o update_passwd.o
+lib-$(CONFIG_CHPASSWD) += pw_encrypt.o update_passwd.o
+lib-$(CONFIG_CRYPTPW) += pw_encrypt.o
lib-$(CONFIG_SULOGIN) += pw_encrypt.o
+lib-$(CONFIG_VLOCK) += pw_encrypt.o correct_password.o
+lib-$(CONFIG_SU) += pw_encrypt.o correct_password.o
+lib-$(CONFIG_LOGIN) += pw_encrypt.o correct_password.o
lib-$(CONFIG_FEATURE_HTTPD_AUTH_MD5) += pw_encrypt.o
-lib-$(CONFIG_VLOCK) += correct_password.o
-lib-$(CONFIG_SU) += correct_password.o
-lib-$(CONFIG_LOGIN) += correct_password.o
+
lib-$(CONFIG_DF) += find_mount_point.o
lib-$(CONFIG_MKFS_MINIX) += find_mount_point.o
-lib-$(CONFIG_SELINUX) += selinux_common.o
+lib-$(CONFIG_FSCK_MINIX) += find_mount_point.o
+
+lib-$(CONFIG_HWCLOCK) += rtc.o
+lib-$(CONFIG_RTCWAKE) += rtc.o
# We shouldn't build xregcomp.c if we don't need it - this ensures we don't
# require regex.h to be in the include dir even if we don't need it thereby
lib-$(CONFIG_EXPR) += xregcomp.o
lib-$(CONFIG_MDEV) += xregcomp.o
lib-$(CONFIG_LESS) += xregcomp.o
+lib-$(CONFIG_PGREP) += xregcomp.o
+lib-$(CONFIG_PKILL) += xregcomp.o
lib-$(CONFIG_DEVFSD) += xregcomp.o
+lib-$(CONFIG_FEATURE_FIND_REGEX) += xregcomp.o