default n
depends on TAR
help
- With this option busybox supports GNU tar -m (do not preserve time) option.
+ With this option busybox supports GNU tar -m
+ (do not preserve time) option.
endif #tar
/* Make dif fit into an int */
if (sizeof(dif) > sizeof(int)) {
- if (sizeof(dif) == sizeof(int)*2) {
- /* typical on many arches */
- if (dif != 0) {
- dif = 1 | (int)((uoff_t)dif >> (sizeof(int)*8));
- }
- } else {
- while ((dif & ~(off_t)INT_MAX) != 0) {
- dif >>= (sizeof(int)*8 / 2);
- }
+ enum { BITS_TO_SHIFT = 8 * (sizeof(dif) - sizeof(int)) };
+ /* shift leaving only "int" worth of bits */
+ if (dif != 0) {
+ dif = 1 | (int)((uoff_t)dif >> BITS_TO_SHIFT);
}
}
off_t offset;
/* Archiver specific. Can make it a union if it ever gets big */
-#if ENABLE_TAR
+#if ENABLE_TAR || ENABLE_DPKG || ENABLE_DPKG_DEB
smallint tar__end;
# if ENABLE_FEATURE_TAR_GNU_EXTENSIONS
char* tar__longname;
char* tar__linkname;
# endif
#endif
-#if ENABLE_CPIO
+#if ENABLE_CPIO || ENABLE_RPM2CPIO || ENABLE_RPM
uoff_t cpio__blocks;
struct hardlinks_t *cpio__hardlinks_to_create;
struct hardlinks_t *cpio__created_hardlinks;
}
return p;
}
+#endif
static void FAST_FUNC set_local_var_from_halves(const char *name, const char *val)
{
char *var = xasprintf("%s=%s", name, val);
set_local_var(var, /*flags:*/ 0, /*lvl:*/ 0, /*ro:*/ 0);
}
-#endif
/*
#endif
};
-#if ENABLE_FEATURE_FBSET_READMODE
/* taken from linux/fb.h */
enum {
- FB_VMODE_INTERLACED = 1, /* interlaced */
- FB_VMODE_DOUBLE = 2, /* double scan */
FB_SYNC_HOR_HIGH_ACT = 1, /* horizontal sync high active */
FB_SYNC_VERT_HIGH_ACT = 2, /* vertical sync high active */
+#if ENABLE_FEATURE_FBSET_READMODE
+ FB_VMODE_INTERLACED = 1, /* interlaced */
+ FB_VMODE_DOUBLE = 2, /* double scan */
FB_SYNC_EXT = 4, /* external sync */
FB_SYNC_COMP_HIGH_ACT = 8, /* composite sync high active */
-};
#endif
+};
#if ENABLE_FEATURE_FBSET_READMODE
static void ss(uint32_t *x, uint32_t flag, char *buf, const char *what)