mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:07:47 +00:00
Demos: Add "DynamicObjectDemo" to demo the dynamic loader
This commit is contained in:
parent
79769ee74e
commit
09ccdc697b
7 changed files with 101 additions and 1 deletions
30
Libraries/LibC/crt0_shared.cpp
Normal file
30
Libraries/LibC/crt0_shared.cpp
Normal file
|
@ -0,0 +1,30 @@
|
|||
#include <AK/Types.h>
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/internals.h>
|
||||
#include <unistd.h>
|
||||
|
||||
extern "C" {
|
||||
|
||||
int main(int, char**, char**);
|
||||
|
||||
extern void __libc_init();
|
||||
extern void _init();
|
||||
extern char** environ;
|
||||
extern bool __environ_is_malloced;
|
||||
|
||||
int _start(int argc, char** argv, char** env);
|
||||
int _start(int argc, char** argv, char** env)
|
||||
{
|
||||
// asm("int3");
|
||||
environ = env;
|
||||
__environ_is_malloced = false;
|
||||
|
||||
__libc_init();
|
||||
_init();
|
||||
|
||||
int status = main(argc, argv, environ);
|
||||
return status;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue