Skip to content

Commit d54e559

Browse files
committed
Blacklist all functions with u128 in signature
Fixes #1. Inspired by meh/rust-ffmpeg-sys#87 I happened upon, so kudos to kornelski. Though far from ideal, not sure why I didn't think of this. As to white blacklist instead of whitelist: FFmpeg is a huge library with too damn many functions. I guess we could whitelist av.*, pp.* and sw.*, but I don't want to risk missing anything, present or future. So here goes the crappy blacklist.
1 parent 2aedb79 commit d54e559

File tree

1 file changed

+86
-1
lines changed

1 file changed

+86
-1
lines changed

build.rs

Lines changed: 86 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -966,8 +966,93 @@ fn main() {
966966
let mut builder = bindgen::Builder::default()
967967
.clang_args(clang_includes)
968968
.ctypes_prefix("libc")
969-
// https://github.com/servo/rust-bindgen/issues/550
969+
// https://github.com/rust-lang/rust-bindgen/issues/550
970970
.blacklist_type("max_align_t")
971+
.blacklist_function("_.*")
972+
// Blacklist functions with u128 in signature.
973+
// https://github.com/zmwangx/rust-ffmpeg-sys/issues/1
974+
// https://github.com/rust-lang/rust-bindgen/issues/1549
975+
.blacklist_function("acoshl")
976+
.blacklist_function("acosl")
977+
.blacklist_function("asinhl")
978+
.blacklist_function("asinl")
979+
.blacklist_function("atan2l")
980+
.blacklist_function("atanhl")
981+
.blacklist_function("atanl")
982+
.blacklist_function("cbrtl")
983+
.blacklist_function("ceill")
984+
.blacklist_function("copysignl")
985+
.blacklist_function("coshl")
986+
.blacklist_function("cosl")
987+
.blacklist_function("dreml")
988+
.blacklist_function("ecvt_r")
989+
.blacklist_function("erfcl")
990+
.blacklist_function("erfl")
991+
.blacklist_function("exp2l")
992+
.blacklist_function("expl")
993+
.blacklist_function("expm1l")
994+
.blacklist_function("fabsl")
995+
.blacklist_function("fcvt_r")
996+
.blacklist_function("fdiml")
997+
.blacklist_function("finitel")
998+
.blacklist_function("floorl")
999+
.blacklist_function("fmal")
1000+
.blacklist_function("fmaxl")
1001+
.blacklist_function("fminl")
1002+
.blacklist_function("fmodl")
1003+
.blacklist_function("frexpl")
1004+
.blacklist_function("gammal")
1005+
.blacklist_function("hypotl")
1006+
.blacklist_function("ilogbl")
1007+
.blacklist_function("isinfl")
1008+
.blacklist_function("isnanl")
1009+
.blacklist_function("j0l")
1010+
.blacklist_function("j1l")
1011+
.blacklist_function("jnl")
1012+
.blacklist_function("ldexpl")
1013+
.blacklist_function("lgammal")
1014+
.blacklist_function("lgammal_r")
1015+
.blacklist_function("llrintl")
1016+
.blacklist_function("llroundl")
1017+
.blacklist_function("log10l")
1018+
.blacklist_function("log1pl")
1019+
.blacklist_function("log2l")
1020+
.blacklist_function("logbl")
1021+
.blacklist_function("logl")
1022+
.blacklist_function("lrintl")
1023+
.blacklist_function("lroundl")
1024+
.blacklist_function("modfl")
1025+
.blacklist_function("nanl")
1026+
.blacklist_function("nearbyintl")
1027+
.blacklist_function("nextafterl")
1028+
.blacklist_function("nexttoward")
1029+
.blacklist_function("nexttowardf")
1030+
.blacklist_function("nexttowardl")
1031+
.blacklist_function("powl")
1032+
.blacklist_function("qecvt")
1033+
.blacklist_function("qecvt_r")
1034+
.blacklist_function("qfcvt")
1035+
.blacklist_function("qfcvt_r")
1036+
.blacklist_function("qgcvt")
1037+
.blacklist_function("remainderl")
1038+
.blacklist_function("remquol")
1039+
.blacklist_function("rintl")
1040+
.blacklist_function("roundl")
1041+
.blacklist_function("scalbl")
1042+
.blacklist_function("scalblnl")
1043+
.blacklist_function("scalbnl")
1044+
.blacklist_function("significandl")
1045+
.blacklist_function("sinhl")
1046+
.blacklist_function("sinl")
1047+
.blacklist_function("sqrtl")
1048+
.blacklist_function("strtold")
1049+
.blacklist_function("tanhl")
1050+
.blacklist_function("tanl")
1051+
.blacklist_function("tgammal")
1052+
.blacklist_function("truncl")
1053+
.blacklist_function("y0l")
1054+
.blacklist_function("y1l")
1055+
.blacklist_function("ynl")
9711056
.rustified_enum("*")
9721057
.prepend_enum_name(false)
9731058
.derive_eq(true)

0 commit comments

Comments
 (0)