authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-04-04 14:43:51-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-04-04 14:43:51-04:00
logd02838b71a0b0fd3495c1b714ab3c6da05441980
treefe5534c66a1da33d7ce6e6c331018d99906e419b
parentdc7e8b2fdcc35bc78abfe2413201ca6a74aa20d4
signaturelock-open Commit is signed but in an unrecognized format.

add libutil to zig's glibc support


5 files changed, 102 insertions(+), 1 deletions(-)

lib/libc/glibc/abi.txt+90
......@@ -1856,6 +1856,7 @@ aarch64-linux-gnu aarch64_be-linux-gnu
1856185629
1857185729
1858185829
185929
1859186037
1860186137
1861186237
......@@ -2422,6 +2423,10 @@ aarch64-linux-gnu aarch64_be-linux-gnu
2422242329
2423242429
2424242529
242629
242729
242829
242929
2425243037
2426243137
2427243237
......@@ -2625,6 +2630,7 @@ aarch64-linux-gnu aarch64_be-linux-gnu
2625263029
2626263129
2627263229
263329
26282634
26292635
26302636
......@@ -5572,6 +5578,7 @@ s390x-linux-gnu
557255785
557355795
557455805
55815
557555825 16
557655835
557755845
......@@ -6151,7 +6158,11 @@ s390x-linux-gnu
6151615837
6152615937
6153616037
61615
61625
615461635 16
61645
61655
6155616631 5
615661675
615761685
......@@ -6361,6 +6372,7 @@ s390x-linux-gnu
636163725
636263735
636363745
63755
63646376
63656377
63666378
......@@ -9328,6 +9340,7 @@ arm-linux-gnueabi armeb-linux-gnueabi arm-linux-gnueabihf armeb-linux-gnueabihf
9328934016
9329934116
9330934216
934316
93319344
9332934537
9333934637
......@@ -9894,6 +9907,10 @@ arm-linux-gnueabi armeb-linux-gnueabi arm-linux-gnueabihf armeb-linux-gnueabihf
9894990716
9895990816
9896990916
991016
991116
991216
991316
98979914
9898991537
9899991637
......@@ -10108,6 +10125,7 @@ arm-linux-gnueabi armeb-linux-gnueabi arm-linux-gnueabihf armeb-linux-gnueabihf
101081012516
101091012616
101101012716
1012816
101111012921
101121013016
101131013137
......@@ -13044,6 +13062,7 @@ sparc-linux-gnu sparcel-linux-gnu
13044130620 5
13045130630
13046130640
130650
13047130660 16
13048130670
13049130680
......@@ -13623,10 +13642,14 @@ sparc-linux-gnu sparcel-linux-gnu
136231364237
136241364337
136251364437
136450
136460
13626136470 16
13627136480
13628136490
13629136500
136510
136520
136301365312
13631136541
13632136551
......@@ -13833,6 +13856,7 @@ sparc-linux-gnu sparcel-linux-gnu
13833138560
13834138570
13835138580
138590
1383613860
1383713861
1383813862
......@@ -16779,6 +16803,7 @@ sparcv9-linux-gnu
16779168035
16780168045
16781168055
168060
16782168075
16783168085
16784168095
......@@ -17359,7 +17384,11 @@ sparcv9-linux-gnu
173591738437
173601738537
173611738637
173870
173880
17362173895
173900
173910
17363173925
17364173935
17365173945
......@@ -17565,6 +17594,7 @@ sparcv9-linux-gnu
175651759416
17566175955
17567175965
175970
17568175985
17569175995
17570176005
......@@ -20520,6 +20550,7 @@ mips64el-linux-gnuabi64 mips64-linux-gnuabi64
20520205500
20521205510
20522205520
205530
20523205545
20524205555
20525205565
......@@ -21099,6 +21130,10 @@ mips64el-linux-gnuabi64 mips64-linux-gnuabi64
21099211300
21100211310
21101211320
211330
211340
211350
211360
211022113712
21103211385
21104211395
......@@ -21305,6 +21340,7 @@ mips64el-linux-gnuabi64 mips64-linux-gnuabi64
21305213400
21306213410
21307213420
213430
2130821344
2130921345
2131021346
......@@ -24256,6 +24292,7 @@ mips64el-linux-gnuabin32 mips64-linux-gnuabin32
24256242920
24257242930
24258242940
242950
24259242965
24260242975
24261242985
......@@ -24835,6 +24872,10 @@ mips64el-linux-gnuabin32 mips64-linux-gnuabin32
24835248720
24836248730
24837248740
248750
248760
248770
248780
248382487912
24839248805
24840248815
......@@ -25041,6 +25082,7 @@ mips64el-linux-gnuabin32 mips64-linux-gnuabin32
25041250820
25042250830
25043250840
250850
2504425086
2504525087
2504625088
......@@ -27992,6 +28034,7 @@ mipsel-linux-gnueabihf mips-linux-gnueabihf
27992280340
27993280350
27994280360
280370
27995280385
27996280395
27997280405
......@@ -28567,6 +28610,10 @@ mipsel-linux-gnueabihf mips-linux-gnueabihf
285672861037
285682861137
2856928612
286130
286140
286150
286160
28570286170
28571286180
28572286190
......@@ -28777,6 +28824,7 @@ mipsel-linux-gnueabihf mips-linux-gnueabihf
28777288240
28778288250
28779288260
288270
2878028828
2878128829
2878228830
......@@ -31728,6 +31776,7 @@ mipsel-linux-gnueabi mips-linux-gnueabi
31728317760
31729317770
31730317780
317790
31731317805
31732317815
31733317825
......@@ -32303,6 +32352,10 @@ mipsel-linux-gnueabi mips-linux-gnueabi
323033235237
323043235337
3230532354
323550
323560
323570
323580
32306323590
32307323600
32308323610
......@@ -32513,6 +32566,7 @@ mipsel-linux-gnueabi mips-linux-gnueabi
32513325660
32514325670
32515325680
325690
3251632570
3251732571
3251832572
......@@ -35473,6 +35527,7 @@ x86_64-linux-gnu
354733552710
354743552810
354753552910
3553010
354763553112
354773553212
354783553312
......@@ -36043,6 +36098,10 @@ x86_64-linux-gnu
360433609810
360443609910
360453610010
3610110
3610210
3610310
3610410
360463610512
360473610610
360483610710
......@@ -36249,6 +36308,7 @@ x86_64-linux-gnu
362493630810
362503630910
362513631010
3631110
3625236312
3625336313
3625436314
......@@ -39216,6 +39276,7 @@ x86_64-linux-gnux32
392163927628
392173927728
392183927828
3927928
392193928036
392203928137
392213928237
......@@ -39782,6 +39843,10 @@ x86_64-linux-gnux32
397823984328
397833984428
397843984528
3984628
3984728
3984828
3984928
397853985036
397863985137
397873985237
......@@ -39985,6 +40050,7 @@ x86_64-linux-gnux32
399854005028
399864005128
399874005228
4005328
3998840054
3998940055
3999040056
......@@ -42936,6 +43002,7 @@ i386-linux-gnu
42936430020
42937430030
42938430040
430050
42939430061
42940430075
42941430085
......@@ -43515,6 +43582,10 @@ i386-linux-gnu
43515435820
43516435830
43517435840
435850
435860
435870
435880
435184358912
43519435901
43520435911
......@@ -43721,6 +43792,7 @@ i386-linux-gnu
43721437920
43722437930
43723437940
437950
4372443796
4372543797
4372643798
......@@ -46688,6 +46760,7 @@ powerpc64le-linux-gnu
466884676029
466894676129
466904676229
4676329
466914676436
466924676537
466934676637
......@@ -47254,6 +47327,10 @@ powerpc64le-linux-gnu
472544732729
472554732829
472564732929
4733029
4733129
4733229
4733329
472574733436
472584733537
472594733637
......@@ -47457,6 +47534,7 @@ powerpc64le-linux-gnu
474574753429
474584753529
474594753629
4753729
4746047538
4746147539
4746247540
......@@ -50404,6 +50482,7 @@ powerpc64-linux-gnu
504045048212
504055048312
504065048412
5048512
504075048612 16
504085048712
504095048812
......@@ -50983,7 +51062,11 @@ powerpc64-linux-gnu
509835106237
509845106337
5098551064
5106512
5106612
509865106712 16
5106812
5106912
509875107012 15
509885107112
509895107212
......@@ -51193,6 +51276,7 @@ powerpc64-linux-gnu
511935127612
511945127712
511955127812
5127912
5119651280
5119751281
5119851282
......@@ -54140,6 +54224,7 @@ powerpc-linux-gnueabi powerpc-linux-gnueabihf
54140542240 5
54141542250
54142542260
542270
54143542280 16
54144542290
54145542300
......@@ -54719,7 +54804,11 @@ powerpc-linux-gnueabi powerpc-linux-gnueabihf
547195480437
547205480537
5472154806
548070
548080
54722548090 16
548100
548110
54723548120 15
54724548130
54725548140
......@@ -54929,6 +55018,7 @@ powerpc-linux-gnueabi powerpc-linux-gnueabihf
54929550180
54930550190
54931550200
550210
5493255022
5493355023
5493455024
lib/libc/glibc/fns.txt+6
......@@ -1834,6 +1834,7 @@ fopen c
18341834fopen64 c
18351835fopencookie c
18361836fork c
1837forkpty util
18371838fpathconf c
18381839fprintf c
18391840fputc c
......@@ -2414,7 +2415,11 @@ logf32 m
24142415logf32x m
24152416logf64 m
24162417logf64x m
2418login util
2419login_tty util
24172420logl m
2421logout util
2422logwtmp util
24182423longjmp c
24192424lrand48 c
24202425lrand48_r c
......@@ -2620,6 +2625,7 @@ openat c
26202625openat64 c
26212626opendir c
26222627openlog c
2628openpty util
26232629optarg c
26242630opterr c
26252631optind c
src/glibc.cpp+1
......@@ -17,6 +17,7 @@ static const ZigGLibCLib glibc_libs[] = {
1717 {"dl", 2},
1818 {"rt", 1},
1919 {"ld", 2},
20 {"util", 1},
2021};
2122
2223Error glibc_load_metadata(ZigGLibCAbi **out_result, Buf *zig_lib_dir, bool verbose) {
src/target.cpp+2
......@@ -1238,6 +1238,8 @@ bool target_is_libc_lib_name(const ZigTarget *target, const char *name) {
12381238 return true;
12391239 if (strcmp(name, "dl") == 0)
12401240 return true;
1241 if (strcmp(name, "util") == 0)
1242 return true;
12411243 }
12421244
12431245 return false;
tools/update_glibc.zig+3-1
......@@ -21,6 +21,7 @@ const lib_names = [_][]const u8{
2121 "pthread",
2222 "rt",
2323 "ld",
24 "util",
2425};
2526
2627// fpu/nofpu are hardcoded elsewhere, based on .gnueabi/.gnueabihf with an exception for .arm
......@@ -182,7 +183,8 @@ pub fn main() !void {
182183 }
183184 break :blk try fs.path.join(allocator, &[_][]const u8{ prefix, abi_list.path, basename });
184185 };
185 const contents = std.io.readFileAlloc(allocator, abi_list_filename) catch |err| {
186 const max_bytes = 10 * 1024 * 1024;
187 const contents = std.fs.cwd().readFileAlloc(allocator, abi_list_filename, max_bytes) catch |err| {
186188 std.debug.warn("unable to open {}: {}\n", .{ abi_list_filename, err });
187189 std.process.exit(1);
188190 };