Merge branch 'master' into MakeFBXParserResilientToMissingStreams
commit
981677d4b9
|
@ -6,6 +6,9 @@ on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read # to fetch code (actions/checkout)
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
job:
|
job:
|
||||||
name: ${{ matrix.name }}-build-and-test
|
name: ${{ matrix.name }}-build-and-test
|
||||||
|
|
|
@ -6,6 +6,9 @@ on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read # to fetch code (actions/checkout)
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
job1:
|
job1:
|
||||||
name: adress-sanitizer
|
name: adress-sanitizer
|
||||||
|
|
|
@ -1273,11 +1273,13 @@ ASSIMP_API void aiQuaternionInterpolate(
|
||||||
#define ASSIMP_HAS_PBRT_EXPORT (!ASSIMP_BUILD_NO_EXPORT && !ASSIMP_BUILD_NO_PBRT_EXPORTER)
|
#define ASSIMP_HAS_PBRT_EXPORT (!ASSIMP_BUILD_NO_EXPORT && !ASSIMP_BUILD_NO_PBRT_EXPORTER)
|
||||||
#define ASSIMP_HAS_M3D ((!ASSIMP_BUILD_NO_EXPORT && !ASSIMP_BUILD_NO_M3D_EXPORTER) || !ASSIMP_BUILD_NO_M3D_IMPORTER)
|
#define ASSIMP_HAS_M3D ((!ASSIMP_BUILD_NO_EXPORT && !ASSIMP_BUILD_NO_M3D_EXPORTER) || !ASSIMP_BUILD_NO_M3D_IMPORTER)
|
||||||
|
|
||||||
#if ASSIMP_HAS_PBRT_EXPORT
|
#ifndef STB_USE_HUNTER
|
||||||
# define ASSIMP_NEEDS_STB_IMAGE 1
|
# if ASSIMP_HAS_PBRT_EXPORT
|
||||||
#elif ASSIMP_HAS_M3D
|
# define ASSIMP_NEEDS_STB_IMAGE 1
|
||||||
# define ASSIMP_NEEDS_STB_IMAGE 1
|
# elif ASSIMP_HAS_M3D
|
||||||
# define STBI_ONLY_PNG
|
# define ASSIMP_NEEDS_STB_IMAGE 1
|
||||||
|
# define STBI_ONLY_PNG
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Ensure all symbols are linked correctly
|
// Ensure all symbols are linked correctly
|
||||||
|
|
|
@ -48,6 +48,64 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#pragma GCC diagnostic ignored "-Wunused-function"
|
#pragma GCC diagnostic ignored "-Wunused-function"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef STB_USE_HUNTER
|
||||||
|
/* Use prefixed names for the symbols from stb_image as it is a very commonly embedded library.
|
||||||
|
Including vanilla stb_image symbols causes duplicate symbol problems if assimp is linked
|
||||||
|
statically together with another library or executable that also embeds stb_image.
|
||||||
|
|
||||||
|
Symbols are not prefixed if using Hunter because in such case there exists a single true
|
||||||
|
stb_image library on the system that is used by assimp and can be used by all the other
|
||||||
|
libraries and executables.
|
||||||
|
|
||||||
|
The list can be regenerated using the following:
|
||||||
|
|
||||||
|
cat <path/to/stb/stb_image.h> | fgrep STBIDEF | fgrep '(' | sed -E 's/\*|\(.+//g' | \
|
||||||
|
awk '{print "#define " $(NF) " assimp_" $(NF) }' | sort | uniq"
|
||||||
|
*/
|
||||||
|
#define stbi_convert_iphone_png_to_rgb assimp_stbi_convert_iphone_png_to_rgb
|
||||||
|
#define stbi_convert_wchar_to_utf8 assimp_stbi_convert_wchar_to_utf8
|
||||||
|
#define stbi_failure_reason assimp_stbi_failure_reason
|
||||||
|
#define stbi_hdr_to_ldr_gamma assimp_stbi_hdr_to_ldr_gamma
|
||||||
|
#define stbi_hdr_to_ldr_scale assimp_stbi_hdr_to_ldr_scale
|
||||||
|
#define stbi_image_free assimp_stbi_image_free
|
||||||
|
#define stbi_info assimp_stbi_info
|
||||||
|
#define stbi_info_from_callbacks assimp_stbi_info_from_callbacks
|
||||||
|
#define stbi_info_from_file assimp_stbi_info_from_file
|
||||||
|
#define stbi_info_from_memory assimp_stbi_info_from_memory
|
||||||
|
#define stbi_is_16_bit assimp_stbi_is_16_bit
|
||||||
|
#define stbi_is_16_bit_from_callbacks assimp_stbi_is_16_bit_from_callbacks
|
||||||
|
#define stbi_is_16_bit_from_file assimp_stbi_is_16_bit_from_file
|
||||||
|
#define stbi_is_16_bit_from_memory assimp_stbi_is_16_bit_from_memory
|
||||||
|
#define stbi_is_hdr assimp_stbi_is_hdr
|
||||||
|
#define stbi_is_hdr_from_callbacks assimp_stbi_is_hdr_from_callbacks
|
||||||
|
#define stbi_is_hdr_from_file assimp_stbi_is_hdr_from_file
|
||||||
|
#define stbi_is_hdr_from_memory assimp_stbi_is_hdr_from_memory
|
||||||
|
#define stbi_ldr_to_hdr_gamma assimp_stbi_ldr_to_hdr_gamma
|
||||||
|
#define stbi_ldr_to_hdr_scale assimp_stbi_ldr_to_hdr_scale
|
||||||
|
#define stbi_load_16 assimp_stbi_load_16
|
||||||
|
#define stbi_load_16_from_callbacks assimp_stbi_load_16_from_callbacks
|
||||||
|
#define stbi_load_16_from_memory assimp_stbi_load_16_from_memory
|
||||||
|
#define stbi_load assimp_stbi_load
|
||||||
|
#define stbi_loadf assimp_stbi_loadf
|
||||||
|
#define stbi_loadf_from_callbacks assimp_stbi_loadf_from_callbacks
|
||||||
|
#define stbi_loadf_from_file assimp_stbi_loadf_from_file
|
||||||
|
#define stbi_loadf_from_memory assimp_stbi_loadf_from_memory
|
||||||
|
#define stbi_load_from_callbacks assimp_stbi_load_from_callbacks
|
||||||
|
#define stbi_load_from_file_16 assimp_stbi_load_from_file_16
|
||||||
|
#define stbi_load_from_file assimp_stbi_load_from_file
|
||||||
|
#define stbi_load_from_memory assimp_stbi_load_from_memory
|
||||||
|
#define stbi_load_gif_from_memory assimp_stbi_load_gif_from_memory
|
||||||
|
#define stbi_set_flip_vertically_on_load assimp_stbi_set_flip_vertically_on_load
|
||||||
|
#define stbi_set_flip_vertically_on_load_thread assimp_stbi_set_flip_vertically_on_load_thread
|
||||||
|
#define stbi_set_unpremultiply_on_load assimp_stbi_set_unpremultiply_on_load
|
||||||
|
#define stbi_zlib_decode_buffer assimp_stbi_zlib_decode_buffer
|
||||||
|
#define stbi_zlib_decode_malloc assimp_stbi_zlib_decode_malloc
|
||||||
|
#define stbi_zlib_decode_malloc_guesssize assimp_stbi_zlib_decode_malloc_guesssize
|
||||||
|
#define stbi_zlib_decode_malloc_guesssize_headerflag assimp_stbi_zlib_decode_malloc_guesssize_headerflag
|
||||||
|
#define stbi_zlib_decode_noheader_buffer assimp_stbi_zlib_decode_noheader_buffer
|
||||||
|
#define stbi_zlib_decode_noheader_malloc assimp_stbi_zlib_decode_noheader_malloc
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "stb/stb_image.h"
|
#include "stb/stb_image.h"
|
||||||
|
|
||||||
#if _MSC_VER
|
#if _MSC_VER
|
||||||
|
|
|
@ -753,12 +753,18 @@ TEST_F(utglTF2ImportExport, wrongTypes) {
|
||||||
// Deliberately broken version of the BoxTextured.gltf asset.
|
// Deliberately broken version of the BoxTextured.gltf asset.
|
||||||
using tup_T = std::tuple<std::string, std::string, std::string, std::string>;
|
using tup_T = std::tuple<std::string, std::string, std::string, std::string>;
|
||||||
std::vector<tup_T> wrongTypes = {
|
std::vector<tup_T> wrongTypes = {
|
||||||
{ "/glTF2/wrongTypes/badArray.gltf", "array", "primitives", "meshes[0]" },
|
#ifdef __cpp_lib_constexpr_tuple
|
||||||
{ "/glTF2/wrongTypes/badString.gltf", "string", "name", "scenes[0]" },
|
#define TUPLE(x, y, z, w) {x, y, z, w}
|
||||||
{ "/glTF2/wrongTypes/badUint.gltf", "uint", "index", "materials[0]" },
|
#else
|
||||||
{ "/glTF2/wrongTypes/badNumber.gltf", "number", "scale", "materials[0]" },
|
#define TUPLE(x, y, z, w) tup_T(x, y, z, w)
|
||||||
{ "/glTF2/wrongTypes/badObject.gltf", "object", "pbrMetallicRoughness", "materials[0]" },
|
#endif
|
||||||
{ "/glTF2/wrongTypes/badExtension.gltf", "object", "KHR_texture_transform", "materials[0]" }
|
TUPLE("/glTF2/wrongTypes/badArray.gltf", "array", "primitives", "meshes[0]"),
|
||||||
|
TUPLE("/glTF2/wrongTypes/badString.gltf", "string", "name", "scenes[0]"),
|
||||||
|
TUPLE("/glTF2/wrongTypes/badUint.gltf", "uint", "index", "materials[0]"),
|
||||||
|
TUPLE("/glTF2/wrongTypes/badNumber.gltf", "number", "scale", "materials[0]"),
|
||||||
|
TUPLE("/glTF2/wrongTypes/badObject.gltf", "object", "pbrMetallicRoughness", "materials[0]"),
|
||||||
|
TUPLE("/glTF2/wrongTypes/badExtension.gltf", "object", "KHR_texture_transform", "materials[0]")
|
||||||
|
#undef TUPLE
|
||||||
};
|
};
|
||||||
for (const auto& tuple : wrongTypes)
|
for (const auto& tuple : wrongTypes)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue