Support binutils 2.20.
[plash-glibc.git] / link-source.sh
blob03dab5ce8688e36d97f34b944c1173f25bb20cb0
1 #!/bin/bash
3 if [ $# -ne 1 ]; then
4 echo "Usage: $0 <plash-source-directory>"
5 exit 1
6 fi
8 PLASH_DIR="$1"
10 set -e
12 files="
13 cap-call-return.c
14 cap-protocol.c
15 cap-protocol.h
16 cap-utils.c
17 cap-utils.h
18 cap-utils-libc.c
19 comms.c
20 comms.h
21 filesysobj.c
22 filesysobj.h
23 libc-at-calls.c
24 libc-comms.c
25 libc-comms.h
26 libc-connect.c
27 libc-errno.h
28 libc-fds.h
29 libc-fork-exec.c
30 libc-getsockopt.c
31 libc-getuid.c
32 libc-inotify.c
33 libc-misc.c
34 libc-preload-import.c
35 libc-stat.c
36 libc-truncate.c
37 libc-utime.c
38 marshal.h
39 marshal-pack.c
40 marshal-pack.h
41 plash-libc.h
42 region.c
43 region.h
44 serialise.c
45 serialise.h
46 utils.c
49 gen_files="
50 out-marshal.h
51 out-vtable-cap-call-return.h
52 out-vtable-cap-protocol.h
53 out-vtable-filesysobj.h
56 for file in $files; do
57 ln -sf $PLASH_DIR/src/$file plash/
58 done
60 for file in $gen_files; do
61 ln -sf $PLASH_DIR/gensrc/$file plash/
62 done
64 empty_files="
65 access.c
66 chdir.c
67 chmod.c
68 chown.c
69 close.c
70 closedir.c
71 creat.c
72 creat64.c
73 dirfd.c
74 dup2.c
75 faccessat.c
76 fchdir.c
77 fchmodat.c
78 fchownat.c
79 fdopendir.c
80 futimesat.c
81 fxstatat.c
82 fxstatat64.c
83 getcwd.c
84 getdents.c
85 getdents64.c
86 getdents64.c
87 getxattr.c
88 lchmod.c
89 lchown.c
90 lchown.c
91 lgetxattr.c
92 link.c
93 linkat.c
94 listxattr.c
95 llistxattr.c
96 lremovexattr.c
97 lsetxattr.c
98 lutimes.c
99 lxstat.c
100 lxstat64.c
101 mkdir.c
102 mkdirat.c
103 mkfifo.c
104 mkfifoat.c
105 open.c
106 open64.c
107 openat.c
108 openat64.c
109 opendir.c
110 readdir.c
111 readdir64.c
112 readdir64.c
113 readdir64_r.c
114 readdir64_r.c
115 readdir_r.c
116 readlink.c
117 readlinkat.c
118 removexattr.c
119 rename.c
120 renameat.c
121 rewinddir.c
122 rmdir.c
123 seekdir.c
124 setxattr.c
125 statfs.c
126 statfs64.c
127 symlink.c
128 symlinkat.c
129 telldir.c
130 truncate.c
131 truncate64.c
132 unlink.c
133 unlinkat.c
134 utimes.c
135 vfork.c
136 xmknod.c
137 xmknodat.c
138 xstat.c
139 xstat64.c
140 setuid.c
141 setgid.c
142 seteuid.c
143 setegid.c
144 setreuid.c
145 setregid.c
146 setresuid.c
147 setresgid.c
150 overrides_dir=plash/sysdeps/overrides
151 rm -rf $overrides_dir
152 mkdir -p $overrides_dir
153 for file1 in $empty_files; do
154 file=$overrides_dir/$file1
155 if ! [ -e $file ]; then
156 touch $file
158 done