I broke allbareconfig with half-finished cleanups I'd forgotten weren't done. Got both to a decent stopping point. (There's a lot more cleanup to do on ls.c but now is not the time...)
This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)
No binary (build failed)
—
(log yok)
| @@ -101,14 +101,10 @@ enum { | |
| #define SORT_MASK (7U<<28) | |
| - | #ifdef CONFIG_FEATURE_LS_TIMESTAMPS |
| /* which of the three times will be used */ | |
| - | #define TIME_MOD 0 |
| - | #define TIME_CHANGE (1U<<23) |
| - | #define TIME_ACCESS (1U<<24) |
| - | |
| - | #define TIME_MASK (3U<<23) |
| - | #endif |
| + | #define TIME_CHANGE ((1U<<23) * ENABLE_FEATURE_LS_TIMESTAMPS) |
| + | #define TIME_ACCESS ((1U<<24) * ENABLE_FEATURE_LS_TIMESTAMPS) |
| + | #define TIME_MASK ((3U<<23) * ENABLE_FEATURE_LS_TIMESTAMPS) |
| #ifdef CONFIG_FEATURE_LS_FOLLOWLINKS | |
| #define FOLLOW_LINKS (1U<<25) | |
| @@ -507,19 +503,21 @@ static void showdirs(struct dnode **dn, int ndirs, int first) | |
| /* list all files at this level */ | |
| if (ENABLE_FEATURE_LS_SORTFILES) dnsort(subdnp, nfiles); | |
| showfiles(subdnp, nfiles); | |
| - | #ifdef CONFIG_FEATURE_LS_RECURSIVE |
| - | if (all_fmt & DISP_RECURSIVE) { |
| - | /* recursive- list the sub-dirs */ |
| - | dnd = splitdnarray(subdnp, nfiles, SPLIT_SUBDIR); |
| - | dndirs = countsubdirs(subdnp, nfiles); |
| - | if (dndirs > 0) { |
| - | if (ENABLE_FEATURE_LS_SORTFILES) dnsort(dnd, dndirs); |
| - | showdirs(dnd, dndirs, 0); |
| - | free(dnd); /* free the array of dnode pointers to the dirs */ |
| + | if (ENABLE_FEATURE_LS_RECURSIVE) { |
| + | if (all_fmt & DISP_RECURSIVE) { |
| + | /* recursive- list the sub-dirs */ |
| + | dnd = splitdnarray(subdnp, nfiles, SPLIT_SUBDIR); |
| + | dndirs = countsubdirs(subdnp, nfiles); |
| + | if (dndirs > 0) { |
| + | if (ENABLE_FEATURE_LS_SORTFILES) dnsort(dnd, dndirs); |
| + | showdirs(dnd, dndirs, 0); |
| + | /* free the array of dnode pointers to the dirs */ |
| + | free(dnd); |
| + | } |
| } | |
| + | /* free the dnodes and the fullname mem */ |
| + | dfree(subdnp, nfiles); |
| } | |
| - | dfree(subdnp, nfiles); /* free the dnodes and the fullname mem */ |
| - | #endif |
| } | |
| } | |
| } | |
| @@ -825,7 +823,6 @@ static const char ls_options[]="Cadil1gnsxAk" \ | |
| #define STYLE_MASK_TRIGGER STYLE_MASK | |
| #define SORT_MASK_TRIGGER SORT_MASK | |
| #define DISP_MASK_TRIGGER DISP_ROWS | |
| - | #define TIME_MASK_TRIGGER TIME_MASK |
| static const unsigned opt_flags[] = { | |
| LIST_SHORT | STYLE_COLUMNS, /* C */ | |
| @@ -904,7 +901,7 @@ int ls_main(int argc, char **argv) | |
| char *color_opt; | |
| #endif | |
| - | all_fmt = LIST_SHORT | (ENABLE_FEATURE_LS_TIMESTAMPS * TIME_MOD) | |
| + | all_fmt = LIST_SHORT | |
| (ENABLE_FEATURE_LS_SORTFILES * (SORT_NAME | SORT_ORDER_FORWARD)); | |
| #ifdef CONFIG_FEATURE_AUTOWIDTH | |
| @@ -954,11 +951,9 @@ int ls_main(int argc, char **argv) | |
| if (flags & DISP_MASK_TRIGGER) { | |
| all_fmt &= ~DISP_MASK; | |
| } | |
| - | #ifdef CONFIG_FEATURE_LS_TIMESTAMPS |
| - | if (flags & TIME_MASK_TRIGGER) { |
| + | if (flags & TIME_MASK) { |
| all_fmt &= ~TIME_MASK; | |
| } | |
| - | #endif |
| if (flags & LIST_CONTEXT) { | |
| all_fmt |= STYLE_SINGLE; | |
| } | |
| @@ -28,9 +28,7 @@ | |
| #include <assert.h> | |
| #include <ctype.h> | |
| - | //#include "pwd_.h" |
| - | //#include "grp_.h" |
| - | //#include "shadow_.h" |
| + | #include "shadow_.h" |
| #ifndef _PATH_SHADOW | |
| #define _PATH_SHADOW "/etc/shadow" | |