spa: support: do not include C source file

Previously, `log-patterns.c` was included in two other source files
(`journal.c` and `logger.c`). It was also specified in the sources
list for the libspa-support library, which resulted in the unnecessary
independent compilation of the file, generating "defined but not used"
warnings.

Extract the function definitions into `log-patterns.h` and
use that in `journal.c` and `logger.c`, and remove the inclusion
of `log-patterns.c` from both.
This commit is contained in:
Barnabás Pőcze 2021-09-29 13:22:41 +02:00 committed by Wim Taymans
parent b292a71220
commit 25a0e3beb4
5 changed files with 26 additions and 8 deletions

View file

@ -39,12 +39,12 @@
#include <systemd/sd-journal.h>
#include "log-patterns.h"
#define NAME "journal"
#define DEFAULT_LOG_LEVEL SPA_LOG_LEVEL_INFO
#include "log-patterns.c"
struct impl {
struct spa_handle handle;
struct spa_log log;

View file

@ -29,13 +29,15 @@
#include <spa/utils/list.h>
#include <spa/utils/json.h>
#include "log-patterns.h"
struct support_log_pattern {
struct spa_list link;
enum spa_log_level level;
char pattern[];
};
static void
void
support_log_topic_init(struct spa_list *patterns, enum spa_log_level default_level,
struct spa_log_topic *t)
{
@ -53,7 +55,7 @@ support_log_topic_init(struct spa_list *patterns, enum spa_log_level default_lev
t->level = level;
}
static int
int
support_log_parse_patterns(struct spa_list *patterns, const char *jsonstr)
{
struct spa_json iter, array, elem;
@ -94,7 +96,7 @@ support_log_parse_patterns(struct spa_list *patterns, const char *jsonstr)
return res;
}
static void
void
support_log_free_patterns(struct spa_list *patterns)
{
struct support_log_pattern *p, *tmp;

View file

@ -0,0 +1,13 @@
#ifndef LOG_PATTERNS_H
#define LOG_PATTERNS_H
#include <spa/support/log.h>
struct spa_list;
void support_log_topic_init(struct spa_list *patterns, enum spa_log_level default_level,
struct spa_log_topic *t);
int support_log_parse_patterns(struct spa_list *patterns, const char *jsonstr);
void support_log_free_patterns(struct spa_list *patterns);
#endif /* LOG_PATTERNS_H */

View file

@ -40,6 +40,8 @@
#include <spa/utils/string.h>
#include <spa/utils/ansi.h>
#include "log-patterns.h"
#ifdef __FreeBSD__
#define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC
#endif
@ -50,8 +52,6 @@
#define TRACE_BUFFER (16*1024)
#include "log-patterns.c"
struct impl {
struct spa_handle handle;
struct spa_log log;

View file

@ -45,7 +45,10 @@ spa_dbus_lib = shared_library('spa-dbus',
if systemd_dep.found()
spa_journal_sources = ['journal.c']
spa_journal_sources = [
'journal.c',
'log-patterns.c',
]
spa_journal_lib = shared_library('spa-journal',
spa_journal_sources,