Rockbox open source high quality audio player as a Music Player Daemon
mpris rockbox mpd libadwaita audio rust zig deno
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

zig: fix codecs linking issue

+46 -26
+46 -26
build.zig
··· 356 356 .optimize = optimize, 357 357 .sources = &[_][]const u8{ 358 358 "lib/rbcodec/codecs/vorbis.c", 359 + "lib/rbcodec/codecs/codec_crt0.c", 359 360 "lib/rbcodec/codecs/libtremor/bitwise.c", 360 361 "lib/rbcodec/codecs/libtremor/block.c", 361 362 "lib/rbcodec/codecs/libtremor/codebook.c", ··· 423 424 .optimize = optimize, 424 425 .sources = &[_][]const u8{ 425 426 "lib/rbcodec/codecs/mpa.c", 427 + "lib/rbcodec/codecs/codec_crt0.c", 426 428 }, 427 429 .link_libraries = &[_]*std.Build.Step.Compile{ 428 430 libcodec, ··· 459 461 .optimize = optimize, 460 462 .sources = &[_][]const u8{ 461 463 "lib/rbcodec/codecs/flac.c", 464 + "lib/rbcodec/codecs/codec_crt0.c", 462 465 }, 463 466 .link_libraries = &[_]*std.Build.Step.Compile{ 464 467 libcodec, ··· 503 506 .optimize = optimize, 504 507 .sources = &[_][]const u8{ 505 508 "lib/rbcodec/codecs/wav.c", 509 + "lib/rbcodec/codecs/codec_crt0.c", 506 510 }, 507 511 .link_libraries = &[_]*std.Build.Step.Compile{ 508 512 libcodec, ··· 534 538 .optimize = optimize, 535 539 .sources = &[_][]const u8{ 536 540 "lib/rbcodec/codecs/a52.c", 541 + "lib/rbcodec/codecs/codec_crt0.c", 537 542 "lib/rbcodec/codecs/liba52/bit_allocate.c", 538 543 "lib/rbcodec/codecs/liba52/bitstream.c", 539 544 "lib/rbcodec/codecs/liba52/downmix.c", ··· 554 559 .optimize = optimize, 555 560 .sources = &[_][]const u8{ 556 561 "lib/rbcodec/codecs/wavpack.c", 562 + "lib/rbcodec/codecs/codec_crt0.c", 557 563 "lib/rbcodec/codecs/libwavpack/bits.c", 558 564 "lib/rbcodec/codecs/libwavpack/float.c", 559 565 "lib/rbcodec/codecs/libwavpack/metadata.c", ··· 575 581 .optimize = optimize, 576 582 .sources = &[_][]const u8{ 577 583 "lib/rbcodec/codecs/alac.c", 584 + "lib/rbcodec/codecs/codec_crt0.c", 578 585 "lib/rbcodec/codecs/libalac/alac.c", 579 586 }, 580 587 .link_libraries = &[_]*std.Build.Step.Compile{ ··· 589 596 .target = target, 590 597 .optimize = optimize, 591 598 .sources = &[_][]const u8{ 599 + "lib/rbcodec/codecs/codec_crt0.c", 592 600 "lib/rbcodec/codecs/libm4a/m4a.c", 593 601 "lib/rbcodec/codecs/libm4a/demux.c", 594 602 }, ··· 604 612 .target = target, 605 613 .optimize = optimize, 606 614 .sources = &[_][]const u8{ 615 + "lib/rbcodec/codecs/codec_crt0.c", 607 616 "lib/rbcodec/codecs/cook.c", 608 617 "lib/rbcodec/codecs/libcook/cook.c", 609 618 }, ··· 693 702 .target = target, 694 703 .optimize = optimize, 695 704 .sources = &[_][]const u8{ 705 + "lib/rbcodec/codecs/codec_crt0.c", 696 706 "lib/rbcodec/codecs/raac.c", 697 707 "lib/rbcodec/codecs/libfaad/bits.c", 698 708 "lib/rbcodec/codecs/libfaad/common.c", ··· 764 774 .optimize = optimize, 765 775 .sources = &[_][]const u8{ 766 776 "lib/rbcodec/codecs/raac.c", 777 + "lib/rbcodec/codecs/codec_crt0.c", 767 778 }, 768 779 .link_libraries = &[_]*std.Build.Step.Compile{ 769 780 libcodec, ··· 807 818 .target = target, 808 819 .optimize = optimize, 809 820 .sources = &[_][]const u8{ 821 + "lib/rbcodec/codecs/codec_crt0.c", 810 822 "lib/rbcodec/codecs/a52_rm.c", 811 823 }, 812 824 .link_libraries = &[_]*std.Build.Step.Compile{ ··· 822 834 .target = target, 823 835 .optimize = optimize, 824 836 .sources = &[_][]const u8{ 837 + "lib/rbcodec/codecs/codec_crt0.c", 825 838 "lib/rbcodec/codecs/atrac3_rm.c", 826 839 "lib/rbcodec/codecs/libatrac/atrac3.c", 827 840 }, ··· 838 851 .target = target, 839 852 .optimize = optimize, 840 853 .sources = &[_][]const u8{ 854 + "lib/rbcodec/codecs/codec_crt0.c", 841 855 "lib/rbcodec/codecs/atrac3_oma.c", 842 856 }, 843 857 .link_libraries = &[_]*std.Build.Step.Compile{ ··· 853 867 .optimize = optimize, 854 868 .sources = &[_][]const u8{ 855 869 "lib/rbcodec/codecs/mpc.c", 870 + "lib/rbcodec/codecs/codec_crt0.c", 856 871 "lib/rbcodec/codecs/libmusepack/crc32.c", 857 872 "lib/rbcodec/codecs/libmusepack/huffman.c", 858 873 "lib/rbcodec/codecs/libmusepack/mpc_bits_reader.c", ··· 875 890 .optimize = optimize, 876 891 .sources = &[_][]const u8{ 877 892 "lib/rbcodec/codecs/wma.c", 893 + "lib/rbcodec/codecs/codec_crt0.c", 878 894 "lib/rbcodec/codecs/libwma/wmadeci.c", 879 895 "lib/rbcodec/codecs/libwma/wmafixed.c", 880 896 }, ··· 916 932 .optimize = optimize, 917 933 .sources = &[_][]const u8{ 918 934 "lib/rbcodec/codecs/ape.c", 935 + "lib/rbcodec/codecs/codec_crt0.c", 919 936 }, 920 937 .link_libraries = &[_]*std.Build.Step.Compile{ 921 938 libcodec, ··· 930 947 .optimize = optimize, 931 948 .sources = &[_][]const u8{ 932 949 "lib/rbcodec/codecs/asap.c", 950 + "lib/rbcodec/codecs/codec_crt0.c", 933 951 "lib/rbcodec/codecs/libasap/acpu.c", 934 952 "lib/rbcodec/codecs/libasap/asap.c", 935 953 "lib/rbcodec/codecs/libasap/apokeysnd.c", ··· 947 965 .optimize = optimize, 948 966 .sources = &[_][]const u8{ 949 967 "lib/rbcodec/codecs/aac.c", 968 + "lib/rbcodec/codecs/codec_crt0.c", 950 969 }, 951 970 .link_libraries = &[_]*std.Build.Step.Compile{ 952 971 libcodec, ··· 961 980 .optimize = optimize, 962 981 .sources = &[_][]const u8{ 963 982 "lib/rbcodec/codecs/spc.c", 983 + "lib/rbcodec/codecs/codec_crt0.c", 964 984 "lib/rbcodec/codecs/libspc/spc_cpu.c", 965 985 "lib/rbcodec/codecs/libspc/spc_dsp.c", 966 986 "lib/rbcodec/codecs/libspc/spc_emu.c", ··· 979 999 .optimize = optimize, 980 1000 .sources = &[_][]const u8{ 981 1001 "lib/rbcodec/codecs/mod.c", 1002 + "lib/rbcodec/codecs/codec_crt0.c", 982 1003 }, 983 1004 .link_libraries = &[_]*std.Build.Step.Compile{ 984 1005 libcodec, ··· 993 1014 .optimize = optimize, 994 1015 .sources = &[_][]const u8{ 995 1016 "lib/rbcodec/codecs/shorten.c", 1017 + "lib/rbcodec/codecs/codec_crt0.c", 996 1018 }, 997 1019 .link_libraries = &[_]*std.Build.Step.Compile{ 998 1020 libcodec, ··· 1008 1030 .optimize = optimize, 1009 1031 .sources = &[_][]const u8{ 1010 1032 "lib/rbcodec/codecs/aiff.c", 1033 + "lib/rbcodec/codecs/codec_crt0.c", 1011 1034 }, 1012 1035 .link_libraries = &[_]*std.Build.Step.Compile{ 1013 1036 libcodec, ··· 1068 1091 .optimize = optimize, 1069 1092 .sources = &[_][]const u8{ 1070 1093 "lib/rbcodec/codecs/adx.c", 1094 + "lib/rbcodec/codecs/codec_crt0.c", 1071 1095 }, 1072 1096 .link_libraries = &[_]*std.Build.Step.Compile{ 1073 1097 libcodec, ··· 1082 1106 .optimize = optimize, 1083 1107 .sources = &[_][]const u8{ 1084 1108 "lib/rbcodec/codecs/smaf.c", 1109 + "lib/rbcodec/codecs/codec_crt0.c", 1085 1110 }, 1086 1111 .link_libraries = &[_]*std.Build.Step.Compile{ 1087 1112 libcodec, ··· 1097 1122 .optimize = optimize, 1098 1123 .sources = &[_][]const u8{ 1099 1124 "lib/rbcodec/codecs/au.c", 1125 + "lib/rbcodec/codecs/codec_crt0.c", 1100 1126 }, 1101 1127 .link_libraries = &[_]*std.Build.Step.Compile{ 1102 1128 libcodec, ··· 1112 1138 .optimize = optimize, 1113 1139 .sources = &[_][]const u8{ 1114 1140 "lib/rbcodec/codecs/vox.c", 1141 + "lib/rbcodec/codecs/codec_crt0.c", 1115 1142 }, 1116 1143 .link_libraries = &[_]*std.Build.Step.Compile{ 1117 1144 libcodec, ··· 1127 1154 .optimize = optimize, 1128 1155 .sources = &[_][]const u8{ 1129 1156 "lib/rbcodec/codecs/wav64.c", 1157 + "lib/rbcodec/codecs/codec_crt0.c", 1130 1158 }, 1131 1159 .link_libraries = &[_]*std.Build.Step.Compile{ 1132 1160 libcodec, ··· 1142 1170 .optimize = optimize, 1143 1171 .sources = &[_][]const u8{ 1144 1172 "lib/rbcodec/codecs/tta.c", 1173 + "lib/rbcodec/codecs/codec_crt0.c", 1145 1174 "lib/rbcodec/codecs/libtta/ttadec.c", 1146 1175 }, 1147 1176 .link_libraries = &[_]*std.Build.Step.Compile{ ··· 1157 1186 .optimize = optimize, 1158 1187 .sources = &[_][]const u8{ 1159 1188 "lib/rbcodec/codecs/wmapro.c", 1189 + "lib/rbcodec/codecs/codec_crt0.c", 1160 1190 "lib/rbcodec/codecs/libwmapro/wmaprodec.c", 1161 1191 "lib/rbcodec/codecs/libwmapro/wma.c", 1162 1192 "lib/rbcodec/codecs/libwmapro/mdct_tables.c", ··· 1174 1204 .optimize = optimize, 1175 1205 .sources = &[_][]const u8{ 1176 1206 "lib/rbcodec/codecs/ay.c", 1207 + "lib/rbcodec/codecs/codec_crt0.c", 1177 1208 "lib/rbcodec/codecs/libgme/ay_apu.c", 1178 1209 "lib/rbcodec/codecs/libgme/ay_cpu.c", 1179 1210 "lib/rbcodec/codecs/libgme/ay_emu.c", ··· 1195 1226 .optimize = optimize, 1196 1227 .sources = &[_][]const u8{ 1197 1228 "lib/rbcodec/codecs/vtx.c", 1229 + "lib/rbcodec/codecs/codec_crt0.c", 1198 1230 "lib/rbcodec/codecs/libayumi/ayumi_render.c", 1199 1231 "lib/rbcodec/codecs/libayumi/ayumi.c", 1200 1232 "lib/rbcodec/codecs/libayumi/lzh.c", ··· 1212 1244 .optimize = optimize, 1213 1245 .sources = &[_][]const u8{ 1214 1246 "lib/rbcodec/codecs/gbs.c", 1247 + "lib/rbcodec/codecs/codec_crt0.c", 1215 1248 "lib/rbcodec/codecs/libgme/gb_apu.c", 1216 1249 "lib/rbcodec/codecs/libgme/gb_cpu.c", 1217 1250 "lib/rbcodec/codecs/libgme/gbs_cpu.c", ··· 1232 1265 .optimize = optimize, 1233 1266 .sources = &[_][]const u8{ 1234 1267 "lib/rbcodec/codecs/hes.c", 1268 + "lib/rbcodec/codecs/codec_crt0.c", 1235 1269 "lib/rbcodec/codecs/libgme/hes_apu.c", 1236 1270 "lib/rbcodec/codecs/libgme/hes_apu_adpcm.c", 1237 1271 "lib/rbcodec/codecs/libgme/hes_cpu.c", ··· 1272 1306 .optimize = optimize, 1273 1307 .sources = &[_][]const u8{ 1274 1308 "lib/rbcodec/codecs/nsf.c", 1309 + "lib/rbcodec/codecs/codec_crt0.c", 1275 1310 "lib/rbcodec/codecs/libgme/nes_apu.c", 1276 1311 "lib/rbcodec/codecs/libgme/nes_cpu.c", 1277 1312 "lib/rbcodec/codecs/libgme/nes_fds_apu.c", ··· 1285 1320 "lib/rbcodec/codecs/libgme/nsfe_info.c", 1286 1321 "lib/rbcodec/codecs/libgme/sms_apu.c", 1287 1322 "lib/rbcodec/codecs/libgme/sms_fm_apu.c", 1288 - "lib/rbcodec/codecs/libgme/emu2413.c", 1289 - "lib/rbcodec/codecs/libgme/ym2413_emu.c", 1290 1323 }, 1291 1324 .link_libraries = &[_]*std.Build.Step.Compile{ 1292 1325 libcodec, ··· 1302 1335 .optimize = optimize, 1303 1336 .sources = &[_][]const u8{ 1304 1337 "lib/rbcodec/codecs/sgc.c", 1338 + "lib/rbcodec/codecs/codec_crt0.c", 1305 1339 "lib/rbcodec/codecs/libgme/sgc_cpu.c", 1306 1340 "lib/rbcodec/codecs/libgme/sgc_emu.c", 1307 1341 }, ··· 1318 1352 .optimize = optimize, 1319 1353 .sources = &[_][]const u8{ 1320 1354 "lib/rbcodec/codecs/vgm.c", 1355 + "lib/rbcodec/codecs/codec_crt0.c", 1321 1356 "lib/rbcodec/codecs/libgme/resampler.c", 1322 1357 "lib/rbcodec/codecs/libgme/vgm_emu.c", 1323 1358 "lib/rbcodec/codecs/libgme/ym2612_emu.c", ··· 1359 1394 .optimize = optimize, 1360 1395 .sources = &[_][]const u8{ 1361 1396 "lib/rbcodec/codecs/kss.c", 1397 + "lib/rbcodec/codecs/codec_crt0.c", 1362 1398 "lib/rbcodec/codecs/libgme/kss_cpu.c", 1363 1399 "lib/rbcodec/codecs/libgme/kss_emu.c", 1364 1400 "lib/rbcodec/codecs/libgme/kss_scc_apu.c", ··· 1379 1415 .optimize = optimize, 1380 1416 .sources = &[_][]const u8{ 1381 1417 "lib/rbcodec/codecs/aac_bsf.c", 1418 + "lib/rbcodec/codecs/codec_crt0.c", 1382 1419 }, 1383 1420 .link_libraries = &[_]*std.Build.Step.Compile{ 1384 1421 libcodec, ··· 3543 3580 } 3544 3581 3545 3582 fn build_codec(b: *std.Build, options: BuildOptions) !*std.Build.Step { 3546 - const codec_lib = b.addStaticLibrary(.{ 3547 - .name = options.name, 3548 - .target = options.target, 3549 - .optimize = options.optimize, 3550 - }); 3551 - 3552 - b.installArtifact(codec_lib); 3553 - 3554 - codec_lib.addCSourceFiles(.{ 3555 - .files = options.sources, 3556 - .flags = options.cflags, 3557 - }); 3558 - 3559 - for (options.macros) |macro| { 3560 - codec_lib.defineCMacro(macro, null); 3561 - } 3562 - 3563 - defineCMacros(codec_lib); 3564 - addIncludePaths(codec_lib); 3565 - 3566 3583 const codec = b.addSharedLibrary(.{ 3567 3584 .name = options.name, 3568 3585 .target = options.target, 3569 3586 .optimize = options.optimize, 3587 + .strip = true, 3588 + .link_libc = true, 3570 3589 }); 3571 3590 3572 3591 b.installArtifact(codec); 3573 3592 3574 3593 codec.addCSourceFiles(.{ 3575 - .files = &[_][]const u8{ 3576 - "lib/rbcodec/codecs/codec_crt0.c", 3577 - }, 3594 + .files = options.sources, 3578 3595 .flags = options.cflags, 3579 3596 }); 3580 3597 3581 3598 for (options.macros) |macro| { 3582 3599 codec.defineCMacro(macro, null); 3583 3600 } 3601 + 3584 3602 defineCMacros(codec); 3585 3603 addIncludePaths(codec); 3586 3604 3587 3605 for (options.link_libraries) |lib| { 3588 3606 codec.linkLibrary(lib); 3589 3607 } 3590 - codec.linkLibrary(codec_lib); 3591 3608 3592 3609 var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator); 3593 3610 defer arena.deinit(); ··· 3623 3640 .target = options.target, 3624 3641 .optimize = options.optimize, 3625 3642 .strip = true, 3643 + .link_libc = true, 3626 3644 }); 3627 3645 3628 3646 b.installArtifact(plugin); ··· 4045 4063 4046 4064 const vorbis_sources = [_][]const u8{ 4047 4065 "lib/rbcodec/codecs/vorbis.c", 4066 + "lib/rbcodec/codecs/codec_crt0.c", 4048 4067 "lib/rbcodec/codecs/libtremor/bitwise.c", 4049 4068 "lib/rbcodec/codecs/libtremor/block.c", 4050 4069 "lib/rbcodec/codecs/libtremor/codebook.c", ··· 4076 4095 4077 4096 const libspeex_sources = [_][]const u8{ 4078 4097 "lib/rbcodec/codecs/speex.c", 4098 + "lib/rbcodec/codecs/codec_crt0.c", 4079 4099 "lib/rbcodec/codecs/libspeex/bits.c", 4080 4100 "lib/rbcodec/codecs/libspeex/cb_search.c", 4081 4101 "lib/rbcodec/codecs/libspeex/exc_10_16_table.c",