Both of these files will be compiled for the host system, so to avoid
breakage with cross-compilation neither of them may include, directly
or indirectly, config.h or avconfig.h.
+This means that e.g. libavutil/mathematics.h is ok but libavutil/libm.h is not.
Due to this, the .c file or Makefile may have to provide additional defines
or stubs, though if possible this should be avoided.
In particular, CONFIG_HARDCODED_TABLES should always be defined to 0.
The printing code typically looks like this:
write_fileheader();
printf("static const uint8_t my_array[100] = {\n");
- write_uint8_array(my_array, 100);
+ write_uint8_t_array(my_array, 100);
printf("};\n");
+This is the more generic form, in case you need to do something special.
+Usually you should instead use the short form:
+ write_fileheader();
+ WRITE_ARRAY("static const", uint8_t, my_array);
+
write_fileheader() adds some minor things like a "this is a generated file"
comment and some standard includes.
tablegen.h defines some write functions for one- and two-dimensional arrays