← Commit list

18958e930

Rob Landley
Rob Landley
2006-06-13
SOURCE BUG Duration: 34s

Subject

Random cleanup of platform.h.

SOURCE BUG

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)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

include/platform.h+24 -16
@@ -149,10 +149,8 @@ __extension__ typedef unsigned long long __u64;
#endif /* ifndef __GNUC__ */
#if (defined __digital__ && defined __unix__)
-# undef HAVE_STDBOOL_H
# undef HAVE_MNTENT_H
#else
-# define HAVE_STDBOOL_H 1
# define HAVE_MNTENT_H 1
#endif /* ___digital__ && __unix__ */
@@ -168,6 +166,8 @@ __extension__ typedef unsigned long long __u64;
# error "Sorry, this libc version is not supported :("
#endif
+// Don't perpetuate e2fsck crap into the headers. Clean up e2fsck instead.
+
#if defined __GLIBC__ || defined __UCLIBC__ \
|| defined __dietlibc__ || defined _NEWLIB_VERSION
#include <features.h>
@@ -187,12 +187,10 @@ typedef unsigned long long int uintmax_t;
#endif
#endif
-#if (defined __digital__ && defined __unix__)
-#include <standards.h>
-#define HAVE_STANDARDS_H
-#include <inttypes.h>
-#define HAVE_INTTYPES_H
-#define PRIu32 "u"
+// Is this for non-linux systems, or what?
+
+#if !((__GLIBC__ >= 2) && (__GLIBC_MINOR__ >= 1))
+#define lchown chown
#endif
/* uclibc does not implement daemon for no-mmu systems.
@@ -206,8 +204,9 @@ typedef unsigned long long int uintmax_t;
#define BB_NOMMU
#endif
-/* Need to implement fdprintf for platforms that haven't got dprintf. */
-/* THIS SHOULD BE CLEANED OUT OF THE TREE ENTIRELY */
+/* Platforms that haven't got dprintf need to implement fdprintf() in
+ * libbb. This would require a platform.c. It's not going to be cleaned
+ * out of the tree, so stop saying it should be. */
#define fdprintf dprintf
/* THIS SHOULD BE CLEANED OUT OF THE TREE ENTIRELY */
@@ -216,15 +215,16 @@ typedef unsigned long long int uintmax_t;
#define FNM_LEADING_DIR 0
#endif
-/* move to platform.c */
#if (defined __digital__ && defined __unix__)
-/* use legacy setpgrp(pidt_,pid_t) for now.. */
+#include <standards.h>
+#define HAVE_STANDARDS_H
+#include <inttypes.h>
+#define HAVE_INTTYPES_H
+#define PRIu32 "u"
+
+/* use legacy setpgrp(pidt_,pid_t) for now. move to platform.c */
#define bb_setpgrp do{pid_t __me = getpid();setpgrp(__me,__me);}while(0)
-#else
-#define bb_setpgrp setpgrp()
-#endif
-/* This is needed on some non linux unices like Tru64 */
#if !defined ADJ_OFFSET_SINGLESHOT && defined MOD_CLKA && defined MOD_OFFSET
#define ADJ_OFFSET_SINGLESHOT (MOD_CLKA | MOD_OFFSET)
#endif
@@ -238,4 +238,12 @@ typedef unsigned long long int uintmax_t;
#define ADJ_TICK MOD_CLKB
#endif
+#else
+#define bb_setpgrp setpgrp()
+#endif
+
+#if defined(__linux__) && !defined(BLKGETSIZE64)
+#define BLKGETSIZE64 _IOR(0x12,114,size_t)
+#endif
+
#endif /* platform.h */
libbb/copy_file.c+0 -7
@@ -20,13 +20,6 @@
#include "libbb.h"
-/* Compiler version-specific crap that should be in a header file somewhere. */
-
-#if !((__GLIBC__ >= 2) && (__GLIBC_MINOR__ >= 1))
-#define lchown chown
-#endif
-
-
int copy_file(const char *source, const char *dest, int flags)
{
struct stat source_stat;
util-linux/fdisk.c+0 -6
@@ -48,12 +48,6 @@
#define BLKFLSBUF _IO(0x12,97) /* flush buffer cache */
#define BLKSSZGET _IO(0x12,104) /* get block device sector size */
-/* Avoid conflicts with the 2.6 kernel headers, which define
- * _IOR rather differently */
-#undef _IOR
-#define _IOR(type,nr,size) _IOC(_IOC_READ,(type),(nr),sizeof(size))
-#define BLKGETSIZE64 _IOR(0x12,114,uint64_t)
-
/*
fdisk.h
*/