- untangle the implementation of the small and huge last applets

This commit is contained in:
Bernhard Reutner-Fischer 2008-05-22 21:56:26 +00:00
parent a959a2abdd
commit 69d5ba2f95
4 changed files with 22 additions and 12 deletions

View File

@ -229,13 +229,23 @@ config LAST
help help
'last' displays a list of the last users that logged into the system. 'last' displays a list of the last users that logged into the system.
config FEATURE_LAST_FANCY choice
bool "Fancy output" prompt "Choose last implementation"
default n
depends on LAST depends on LAST
default FEATURE_LAST_SMALL
config FEATURE_LAST_SMALL
bool "small"
help
This is a small version of last with just the basic set of
features.
config FEATURE_LAST_FANCY
bool "huge"
help help
'last' displays detailed information about the last users that 'last' displays detailed information about the last users that
logged into the system (mimics sysvinit last). +900 bytes. logged into the system (mimics sysvinit last). +900 bytes.
endchoice
config LESS config LESS
bool "less" bool "less"

View File

@ -16,7 +16,8 @@ lib-$(CONFIG_DEVFSD) += devfsd.o
lib-$(CONFIG_EJECT) += eject.o lib-$(CONFIG_EJECT) += eject.o
lib-$(CONFIG_FBSPLASH) += fbsplash.o lib-$(CONFIG_FBSPLASH) += fbsplash.o
lib-$(CONFIG_HDPARM) += hdparm.o lib-$(CONFIG_HDPARM) += hdparm.o
lib-$(CONFIG_LAST) += last.o lib-$(CONFIG_FEATURE_LAST_SMALL)+= last.o
lib-$(CONFIG_FEATURE_LAST_FANCY)+= last_fancy.o
lib-$(CONFIG_LESS) += less.o lib-$(CONFIG_LESS) += less.o
lib-$(CONFIG_MAKEDEVS) += makedevs.o lib-$(CONFIG_MAKEDEVS) += makedevs.o
lib-$(CONFIG_MAN) += man.o lib-$(CONFIG_MAN) += man.o

View File

@ -26,12 +26,6 @@
#error struct utmp member char[] size(s) have changed! #error struct utmp member char[] size(s) have changed!
#endif #endif
#if ENABLE_FEATURE_LAST_FANCY
#include "last_fancy.c"
#else
#if EMPTY != 0 || RUN_LVL != 1 || BOOT_TIME != 2 || NEW_TIME != 3 || \ #if EMPTY != 0 || RUN_LVL != 1 || BOOT_TIME != 2 || NEW_TIME != 3 || \
OLD_TIME != 4 OLD_TIME != 4
#error Values for the ut_type field of struct utmp changed #error Values for the ut_type field of struct utmp changed
@ -131,5 +125,3 @@ int last_main(int argc, char **argv ATTRIBUTE_UNUSED)
fflush_stdout_and_exit(EXIT_SUCCESS); fflush_stdout_and_exit(EXIT_SUCCESS);
} }
#endif

View File

@ -7,6 +7,13 @@
* Licensed under the GPLv2 or later, see the file LICENSE in this tarball. * Licensed under the GPLv2 or later, see the file LICENSE in this tarball.
*/ */
#include "libbb.h"
#include <utmp.h>
#ifndef SHUTDOWN_TIME
# define SHUTDOWN_TIME 254
#endif
#define HEADER_FORMAT "%-8.8s %-12.12s %-*.*s %-16.16s %-7.7s %s\n" #define HEADER_FORMAT "%-8.8s %-12.12s %-*.*s %-16.16s %-7.7s %s\n"
#define HEADER_LINE "USER", "TTY", \ #define HEADER_LINE "USER", "TTY", \
INET_ADDRSTRLEN, INET_ADDRSTRLEN, "HOST", "LOGIN", " TIME", "" INET_ADDRSTRLEN, INET_ADDRSTRLEN, "HOST", "LOGIN", " TIME", ""