forked from ensc/dietlibc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPORTING
31 lines (29 loc) · 1.02 KB
/
PORTING
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
To port the diet libc to a new architecture, you need to:
- edit Makefile to detect the architecture
- create a directory for the architecture, and put a Makefile.add in
it. Look at the other Makefile.adds for guidance.
- provide start.S (the start code, look at glibc)
- provide unified.S (the unified syscall)
- provide syscalls.h (the syscall numbers, from asm/unistd.h)
- provide setjmp and longjmp
- edit include/setjmp.h
- pipe, clone and mmap often need special care
- edit include/sys/ioctl.h
- edit include/sys/ptrace.h
- edit include/asm/sigcontext.h
- edit include/sys/ucontext.h
- edit include/endian.h
- edit include/fcntl.h
- edit include/sys/mman.h
- edit include/sys/shm.h
- edit include/sys/stat.h
- edit include/sys/tls.h
- edit include/errno.h
- edit syscalls.h
- edit include/termios.h
- edit lib/__get_cur_tcb.c
- edit diet.c to make it recognize the architecture and add proper
CFLAGS
- edit libcompat/syscall.S
- edit include/fenv.h
(I may have missed a few)