summaryrefslogtreecommitdiffstats
path: root/rust/vendor/crc/build.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--rust/vendor/crc/build.rs54
1 files changed, 54 insertions, 0 deletions
diff --git a/rust/vendor/crc/build.rs b/rust/vendor/crc/build.rs
new file mode 100644
index 0000000..3c1fcc3
--- /dev/null
+++ b/rust/vendor/crc/build.rs
@@ -0,0 +1,54 @@
+extern crate build_const;
+
+include!("src/util.rs");
+
+#[allow(non_snake_case)]
+fn create_constants() {
+ let mut crc16 = build_const::ConstWriter::for_build("crc16_constants")
+ .unwrap()
+ .finish_dependencies();
+ let X25: u16 = 0x8408;
+ crc16.add_value("X25", "u16", X25);
+ crc16.add_array("X25_TABLE", "u16", &make_table_crc16(X25));
+
+ let USB: u16 = 0xa001;
+ crc16.add_value("USB", "u16", USB);
+ crc16.add_array("USB_TABLE", "u16", &make_table_crc16(USB));
+
+ crc16.finish();
+
+ let mut crc32 = build_const::ConstWriter::for_build("crc32_constants")
+ .unwrap()
+ .finish_dependencies();
+ let CASTAGNOLI: u32 = 0x82f63b78;
+ crc32.add_value("CASTAGNOLI", "u32", CASTAGNOLI);
+ crc32.add_array("CASTAGNOLI_TABLE", "u32", &make_table_crc32(CASTAGNOLI));
+
+ let IEEE: u32 = 0xedb88320;
+ crc32.add_value("IEEE", "u32", IEEE);
+ crc32.add_array("IEEE_TABLE", "u32", &make_table_crc32(IEEE));
+
+ let KOOPMAN: u32 = 0xeb31d82e;
+ crc32.add_value("KOOPMAN", "u32", KOOPMAN);
+ crc32.add_array("KOOPMAN_TABLE", "u32", &make_table_crc32(KOOPMAN));
+
+ crc32.finish();
+
+ let mut crc64 = build_const::ConstWriter::for_build("crc64_constants")
+ .unwrap()
+ .finish_dependencies();
+
+ let ECMA: u64 = 0xc96c5795d7870f42;
+ crc64.add_value("ECMA", "u64", ECMA);
+ crc64.add_array("ECMA_TABLE", "u64", &make_table_crc64(ECMA));
+
+ let ISO: u64 = 0xd800000000000000;
+ crc64.add_value("ISO", "u64", ISO);
+ crc64.add_array("ISO_TABLE", "u64", &make_table_crc64(ISO));
+
+ crc64.finish();
+}
+
+fn main() {
+ create_constants();
+}