From fefc3dc32d19b39fc26d23b56366638f2948a2f8 Mon Sep 17 00:00:00 2001 From: Recep Aslantas Date: Thu, 30 Apr 2020 23:38:27 +0300 Subject: [PATCH] io: print has been maden optional to DEBUG or to CGLM_DEFINE_PRINTS --- include/cglm/call/io.h | 3 +++ include/cglm/io.h | 19 +++++++++++++++++++ src/io.c | 2 ++ 3 files changed, 24 insertions(+) diff --git a/include/cglm/call/io.h b/include/cglm/call/io.h index b6c50f6..11674b9 100644 --- a/include/cglm/call/io.h +++ b/include/cglm/call/io.h @@ -7,6 +7,8 @@ #ifndef cglmc_io_h #define cglmc_io_h +#if (defined(DEBUG) || defined(CGLM_DEFINE_PRINTS)) || defined(CGLM_LIB_SRC) + #ifdef __cplusplus extern "C" { #endif @@ -41,4 +43,5 @@ glmc_versor_print(versor vec, #ifdef __cplusplus } #endif +#endif #endif /* cglmc_io_h */ diff --git a/include/cglm/io.h b/include/cglm/io.h index 3fde038..bbaa9bf 100644 --- a/include/cglm/io.h +++ b/include/cglm/io.h @@ -17,6 +17,7 @@ #ifndef cglm_io_h #define cglm_io_h +#if defined(DEBUG) || defined(CGLM_DEFINE_PRINTS) || defined(CGLM_LIB_SRC) #include "common.h" @@ -291,4 +292,22 @@ glm_aabb_print(vec3 bbox[2], #undef m } +#elif !defined(CGLM_NO_PRINTS_NOOP) + +#include "common.h" + +#include +#include + +/* NOOP: Remove print from DEBUG */ +CGLM_INLINE void glm_mat4_print(mat4 matrix, FILE *o) { } +CGLM_INLINE void glm_mat3_print(mat3 matrix, FILE *o) { } +CGLM_INLINE void glm_mat2_print(mat2 matrix, FILE *o) { } +CGLM_INLINE void glm_vec4_print(vec4 vec, FILE *o) { } +CGLM_INLINE void glm_vec3_print(vec3 vec, FILE *o) { } +CGLM_INLINE void glm_ivec3_print(ivec3 vec, FILE *o) { } +CGLM_INLINE void glm_vec2_print(vec2 vec, FILE *o) { } +CGLM_INLINE void glm_versor_print(versor vec, FILE *o) { } +CGLM_INLINE void glm_aabb_print(vec3 bbox[2], const char *t, FILE *o) { } +#endif #endif /* cglm_io_h */ diff --git a/src/io.c b/src/io.c index fb2b5a9..fd81dac 100644 --- a/src/io.c +++ b/src/io.c @@ -5,6 +5,8 @@ * Full license can be found in the LICENSE file */ +#define CGLM_LIB_SRC + #include "../include/cglm/cglm.h" #include "../include/cglm/call.h"