aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2017-05-08 22:09:08 -0500
committerRob Landley <rob@landley.net>2017-05-08 22:09:08 -0500
commit71921dc74d051fb352bbb65dc92c3416e219dbb9 (patch)
treee9fa49c14f7f524859fff675ad9b60a00fde200e
parentc4ca233e4011deff5a5f8e9db05f1a2a819801a5 (diff)
downloadtoybox-71921dc74d051fb352bbb65dc92c3416e219dbb9.tar.gz
Remove old uClibc compatibility glue. It's been 5 years since the last release.
See http://lists.busybox.net/pipermail/buildroot/2016-December/180102.html for a full post-mortem on the project.
-rw-r--r--Config.in9
-rw-r--r--lib/portability.h40
2 files changed, 2 insertions, 47 deletions
diff --git a/Config.in b/Config.in
index 0524ce37..5c4b5fe2 100644
--- a/Config.in
+++ b/Config.in
@@ -169,19 +169,12 @@ config TOYBOX_MUSL_NOMMU_IS_BROKEN
daemon() at compile time, musl intentionally includes broken versions
that always return -ENOSYS on nommu systems, and goes out of its way
to prevent any cross-compile compatible compile-time probes for a
- nommu system.
+ nommu system. (It doesn't even #define __MUSL__ in features.h.)
Musl does this despite the fact that a nommu system can't even run
standard ELF binaries, and requires specially packaged executables.
- (You can't even check a #define to see that you're building against
- musl, due to its maintainer's policy that musl never has bugs that
- require workarounds.)
-
So our only choice is to manually provide a musl nommu bug workaround
you can manually select to enable (larger, slower) nommu support with
musl.
- You don't need this for uClibc, we have a compile time probe that
- autodetects nommu support there.
-
endmenu
diff --git a/lib/portability.h b/lib/portability.h
index f1dcc523..01c77c67 100644
--- a/lib/portability.h
+++ b/lib/portability.h
@@ -86,46 +86,8 @@ char *dirname(char *path);
char *__xpg_basename(char *path);
static inline char *basename(char *path) { return __xpg_basename(path); }
-// uClibc pretends to be glibc and copied a lot of its bugs, but has a few more
-#if defined(__UCLIBC__)
-#include <unistd.h>
-#include <stdio.h>
-ssize_t getdelim(char **lineptr, size_t *n, int delim, FILE *stream);
-char *stpcpy(char *dest, const char *src);
-pid_t getsid(pid_t pid);
-
-// uClibc's last-ever release was in 2012, so of course it doesn't define
-// any flag newer than MS_MOVE, which was added in 2001 (linux 2.5.0.5),
-// eleven years earlier.
-
-#include <sys/mount.h>
-#ifndef MS_MOVE
-#define MS_MOVE (1<<13)
-#endif
-#ifndef MS_REC
-#define MS_REC (1<<14)
-#endif
-#ifndef MS_SILENT
-#define MS_SILENT (1<<15)
-#endif
-#ifndef MS_UNBINDABLE
-#define MS_UNBINDABLE (1<<17)
-#endif
-#ifndef MS_PRIVATE
-#define MS_PRIVATE (1<<18)
-#endif
-#ifndef MS_SLAVE
-#define MS_SLAVE (1<<19)
-#endif
-#ifndef MS_SHARED
-#define MS_SHARED (1<<20)
-#endif
-#ifndef MS_RELATIME
-#define MS_RELATIME (1<<21)
-#endif
-
// When building under obsolete glibc (Ubuntu 8.04-ish), hold its hand a bit.
-#elif __GLIBC__ == 2 && __GLIBC_MINOR__ < 10
+#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 10
#define fstatat fstatat64
int fstatat64(int dirfd, const char *pathname, void *buf, int flags);
int readlinkat(int dirfd, const char *pathname, char *buf, size_t bufsiz);