summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner Lemberg <wl@gnu.org>2021-01-31 14:28:44 +0100
committerWerner Lemberg <wl@gnu.org>2021-01-31 14:28:44 +0100
commit324612ceb24d97563a88415ebc84b3dcb3b935f0 (patch)
tree365339b3ae931c6c9061f8f29db0fe4cd97a3082
parent939e844468f8af570e2eb028c1aad8a40df1699d (diff)
downloadfreetype2-324612ceb24d97563a88415ebc84b3dcb3b935f0.tar.gz
Always provide logging API.
It's easier to have stubs if FT_DEBUG_LOGGING is undefined than to modify `ftexport.sym` conditionally. Problem reported by Alexei. * src/base/ftdebug.c: Include `ftlogging.h`. (FT_Trace_Set_Level, FT_Trace_Set_Default_Level, FT_Set_Log_Handler, FT_Set_Default_Log_Handler) [!FT_DEBUG_LOGGING]: Provide stubs.
-rw-r--r--ChangeLog14
-rw-r--r--docs/DEBUG2
-rw-r--r--include/freetype/ftlogging.h16
-rw-r--r--src/base/ftdebug.c34
4 files changed, 55 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 171e73a20..119e71d69 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,19 @@
2021-01-31 Werner Lemberg <wl@gnu.org>
+ Always provide logging API.
+
+ It's easier to have stubs if FT_DEBUG_LOGGING is undefined than to
+ modify `ftexport.sym` conditionally.
+
+ Problem reported by Alexei.
+
+ * src/base/ftdebug.c: Include `ftlogging.h`.
+
+ (FT_Trace_Set_Level, FT_Trace_Set_Default_Level, FT_Set_Log_Handler,
+ FT_Set_Default_Log_Handler) [!FT_DEBUG_LOGGING]: Provide stubs.
+
+2021-01-31 Werner Lemberg <wl@gnu.org>
+
* builds/unix/configure.raw: Fix typo.
Bug introduced in Vincent's last commit bb33f03.
diff --git a/docs/DEBUG b/docs/DEBUG
index 0e24df6cd..9a5fdc6a0 100644
--- a/docs/DEBUG
+++ b/docs/DEBUG
@@ -260,7 +260,7 @@ IV. Additional Capabilities with `FT_DEBUG_LOGGING'
If `FT_DEBUG_LOGGING' is defined, four APIs are available to provide
additional debugging support. Use
- #include<freetype/ftlogging.h>
+ #include <freetype/ftlogging.h>
to access them.
diff --git a/include/freetype/ftlogging.h b/include/freetype/ftlogging.h
index 5c819ac31..8811261b0 100644
--- a/include/freetype/ftlogging.h
+++ b/include/freetype/ftlogging.h
@@ -66,8 +66,8 @@ FT_BEGIN_HEADER
* ```
*
* @note:
- * This function is only available if compilation option
- * `FT_DEBUG_LOGGING` is set.
+ * This function does nothing if compilation option `FT_DEBUG_LOGGING`
+ * isn't set.
*/
FT_EXPORT( void )
FT_Trace_Set_Level( const char* tracing_level );
@@ -85,8 +85,8 @@ FT_BEGIN_HEADER
*
*
* @note:
- * This function is only available if compilation option
- * `FT_DEBUG_LOGGING` is set.
+ * This function does nothing if compilation option `FT_DEBUG_LOGGING`
+ * isn't set.
*/
FT_EXPORT( void )
FT_Trace_Set_Default_Level( void );
@@ -131,8 +131,8 @@ FT_BEGIN_HEADER
* New logging function.
*
* @note:
- * This function is only available if compilation option
- * `FT_DEBUG_LOGGING` is set.
+ * This function does nothing if compilation option `FT_DEBUG_LOGGING`
+ * isn't set.
*/
FT_EXPORT( void )
FT_Set_Log_Handler( FT_Custom_Log_Handler handler );
@@ -148,8 +148,8 @@ FT_BEGIN_HEADER
* log handler to FreeType's built-in version.
*
* @note:
- * This function is only available if compilation option
- * `FT_DEBUG_LOGGING` is set.
+ * This function does nothing if compilation option `FT_DEBUG_LOGGING`
+ * isn't set.
*/
FT_EXPORT( void )
FT_Set_Default_Log_Handler( void );
diff --git a/src/base/ftdebug.c b/src/base/ftdebug.c
index b0fbd9eec..bf4018652 100644
--- a/src/base/ftdebug.c
+++ b/src/base/ftdebug.c
@@ -42,6 +42,7 @@
#include <freetype/freetype.h>
+#include <freetype/ftlogging.h>
#include <freetype/internal/ftdebug.h>
#include <freetype/internal/ftobjs.h>
@@ -589,7 +590,7 @@
/* documentation is in ftlogging.h */
FT_EXPORT_DEF( void )
- FT_Set_Default_Log_Handler()
+ FT_Set_Default_Log_Handler( void )
{
custom_output_handler = NULL;
}
@@ -608,7 +609,36 @@
va_end( ap );
}
-#endif /* FT_DEBUG_LOGGING */
+#else /* !FT_DEBUG_LOGGING */
+
+ FT_EXPORT_DEF( void )
+ FT_Trace_Set_Level( const char* level )
+ {
+ FT_UNUSED( level );
+ }
+
+
+ FT_EXPORT_DEF( void )
+ FT_Trace_Set_Default_Level( void )
+ {
+ /* nothing */
+ }
+
+
+ FT_EXPORT_DEF( void )
+ FT_Set_Log_Handler( FT_Custom_Log_Handler handler )
+ {
+ FT_UNUSED( handler );
+ }
+
+
+ FT_EXPORT_DEF( void )
+ FT_Set_Default_Log_Handler( void )
+ {
+ /* nothing */
+ }
+
+#endif /* !FT_DEBUG_LOGGING */
/* END */