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.
This commit is contained in:
Werner Lemberg 2021-01-31 14:28:44 +01:00
parent 939e844468
commit 324612ceb2
4 changed files with 55 additions and 11 deletions

View File

@ -1,3 +1,17 @@
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.

View File

@ -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.

View File

@ -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 );

View File

@ -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 */