The patent on S3TC has now expired! Rejoice! This series imports the code from Roland's libtxc_dxtn into Mesa and cleans up some mess dealing with the possibility of S3TC not being available.
EXT_texture_compression_s3tc and ANGLE_texture_compression_dxt are now always enabled where supported. Note that I did almost nothing to fix the style of the imported code. Feel free to send patches, but I'm not interested in making those changes in this series. I also considered using Rich Geldreich's crunch [2], but a few things made be choose to start with libtxc_dxtn instead: - crunch is written bn C++ and does not look like Mesa code at all. - Higher risk. Unknown how it compares to libtxc_dxtn. I can believe libtxc_dxtn does a worse job compressing, but at least we know exactly what we are getting with it. - crunch actually does a lot more than just DXT1/a/3/5. Was unclear how separable those pieces were from the rest. Regardless, trying to use crunch would be an interesting experiment. Please review! [1] https://github.com/BinomialLLC/crunch [PATCH 01/15] mesa: Import libtxc_dxtn sources [PATCH 02/15] mesa: Combine libtxc_dxtn sources into [PATCH 03/15] mesa: Remove commented-out DXTn fetch code [PATCH 04/15] mesa: Remove prototypes and mark S3TC functions static [PATCH 05/15] mesa: Remove fprintf referring to libdxtn [PATCH 06/15] mesa: Call DXTn functions directly [PATCH 07/15] mesa: Drop function pointer checks in s3tc code [PATCH 08/15] mesa: Drop Mesa_DXTn from gl_context [PATCH 09/15] mesa/st: Drop has_lib_dxtc argument from [PATCH 10/15] gallium: Remove util_format_s3tc_enabled [PATCH 11/15] gallium: Remove util_format_s3tc_init() [PATCH 12/15] mesa: Remove force_s3tc_enable driconf variable [PATCH 13/15] mesa: Delete now unused dlopen.h [PATCH 14/15] build: Remove HAVE_DLOPEN [PATCH 15/15] travis: Remove libtxc_dxtn from the build _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev