chiark / gitweb /
[PATCH] update klibc to version 0.181
[elogind.git] / klibc / klibc / __static_init.c
index dcb8d0185641802d038b55fb66a0b6218fb1902d..0b59eedaa73260b11616f3df5aca9fc391f5ae56 100644 (file)
@@ -1,40 +1,2 @@
-/*
- * __static_init.c
- *
- * This function takes the raw data block set up by the ELF loader
- * in the kernel and parses it.  It is invoked by crt0.S which makes
- * any necessary adjustments and passes calls this function using
- * the standard C calling convention.
- *
- * The arguments are:
- *  uintptr_t *elfdata  -- The ELF loader data block; usually from the stack.
- *                          Basically a pointer to argc.
- *  void (*onexit)(void) -- Function to install into onexit
- */
-
-#include <stddef.h>
-#include <stdlib.h>
-#include <stdint.h>
-#include <klibc/compiler.h>
-#include <elf.h>
-
-char **environ;
-
-extern int main(int, char **, char **);
-
-__noreturn __libc_init(uintptr_t *elfdata, void (*onexit)(void))
-{
-  int argc;
-  char **argv, **envp;
-
-  (void)onexit;                        /* For now, we ignore this... */
-
-  argc = (int)*elfdata++;
-  argv = (char **)elfdata;
-  envp = argv+(argc+1);
-
-  environ = envp;
-  exit(main(argc, argv, envp));
-}
-
-  
+#define SHARED 0
+#include "libc_init.c"