Skip to content

Commit e854282

Browse files
authored
Merge pull request syslog-ng#5122 from HofiOne/turn-on-werror-on-macos-builds
Turn on -Werror on macos builds
2 parents f2f6461 + 389dc68 commit e854282

File tree

8 files changed

+53
-47
lines changed

8 files changed

+53
-47
lines changed

.github/workflows/macos.yml

+3-4
Original file line numberDiff line numberDiff line change
@@ -115,11 +115,10 @@ jobs:
115115
- name: cmake configure
116116
if: matrix.build-tool == 'cmake'
117117
run: |
118-
# If you know the valid syntax to provide the quoted string for -DCMAKE_C_FLAGS inplace in CMAKE_CONFIGURE_FLAGS above (in Set ENV variables step) instead of this hack, please contribute!
118+
# If you know the valid syntax to provide the quoted string for -DCMAKE_C_FLAGS inplace in CMAKE_CONFIGURE_FLAGS above
119+
# (in Set ENV variables step) instead of this hack, please contribute!
119120
#
120-
# TODO: -Wall must be replaced here with -Werror but now multiple warnings could occure in several modules that needs to be corrected first
121-
#
122-
cmake --install-prefix "${SYSLOG_NG_INSTALL_DIR}" -B build . -DCMAKE_C_FLAGS="-Wall ${CFLAGS}" ${CMAKE_CONFIGURE_FLAGS}
121+
cmake --install-prefix "${SYSLOG_NG_INSTALL_DIR}" -B build . -DCMAKE_C_FLAGS="${CFLAGS} -Werror" ${CMAKE_CONFIGURE_FLAGS}
123122
124123
- name: cmake install
125124
if: matrix.build-tool == 'cmake'

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ endif()
156156

157157
# NOTE: This is now seems to be an Apple/Xcode "only" issue, but probably much better a clang one, so later we might want to add this globally
158158
if (APPLE)
159-
module_switch(FORCE_CLASSIC_LINKING "Enable classic linking" OFF)
159+
option(FORCE_CLASSIC_LINKING "Enable classic linking" OFF)
160160
if (FORCE_CLASSIC_LINKING)
161161
# XCode15 new linker has some issues (e.g. https://developer.apple.com/forums/thread/737707)
162162
# switch back to classic linking till not fixed (https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes#Linking)

lib/stats/tests/test_stats_prometheus.c

+4-4
Original file line numberDiff line numberDiff line change
@@ -223,11 +223,11 @@ Test(stats_prometheus, test_prometheus_format_value)
223223

224224
stats_cluster_single_key_add_unit(&key, SCU_MILLISECONDS);
225225
gdouble actual = g_ascii_strtod(stats_format_prometheus_format_value(&key, &counter), NULL);
226-
cr_assert_float_eq(actual, 0.009L, DBL_EPSILON);
226+
cr_assert_float_eq(actual, (gdouble) 0.009L, DBL_EPSILON);
227227

228228
stats_cluster_single_key_add_unit(&key, SCU_NANOSECONDS);
229229
actual = g_ascii_strtod(stats_format_prometheus_format_value(&key, &counter), NULL);
230-
cr_assert_float_eq(actual, 9e-9, DBL_EPSILON);
230+
cr_assert_float_eq(actual, (gdouble) 9e-9, DBL_EPSILON);
231231

232232
/* Relative to time of query */
233233
stats_cluster_single_key_add_frame_of_reference(&key, SCFOR_RELATIVE_TO_TIME_OF_QUERY);
@@ -250,11 +250,11 @@ Test(stats_prometheus, test_prometheus_format_value)
250250

251251
stats_cluster_single_key_add_unit(&key, SCU_MILLISECONDS);
252252
actual = g_ascii_strtod(stats_format_prometheus_format_value(&key, &counter), NULL);
253-
cr_assert_float_eq(actual, 0.009L, DBL_EPSILON);
253+
cr_assert_float_eq(actual, (gdouble) 0.009L, DBL_EPSILON);
254254

255255
stats_cluster_single_key_add_unit(&key, SCU_NANOSECONDS);
256256
actual = g_ascii_strtod(stats_format_prometheus_format_value(&key, &counter), NULL);
257-
cr_assert_float_eq(actual, 9e-9, DBL_EPSILON);
257+
cr_assert_float_eq(actual, (gdouble) 9e-9, DBL_EPSILON);
258258

259259
/* Hours, minutes and seconds are affected */
260260
stats_cluster_single_key_add_unit(&key, SCU_HOURS);

lib/syslog-names.c

+3
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,9 @@ syslog_make_range(guint32 value1, guint32 value2)
139139
return ((1 << (value2 + 1)) - 1) & ~((1 << value1) - 1);
140140
}
141141

142+
#if (defined(__clang__) && __clang_major__ >= 15)
143+
#pragma GCC diagnostic ignored "-Wdeprecated-non-prototype"
144+
#endif
142145
#include "severity-aliases.h"
143146

144147
gint

modules/affile/directory-monitor-kqueue.c

-8
Original file line numberDiff line numberDiff line change
@@ -146,14 +146,6 @@ _stop_watches(DirectoryMonitor *s)
146146
}
147147
}
148148

149-
static void
150-
_triggered_timer(gpointer data)
151-
{
152-
DirectoryMonitorKQueue *self = (DirectoryMonitorKQueue *)data;
153-
154-
_start_watches(&self->super.super);
155-
}
156-
157149
static void
158150
_free_fn(DirectoryMonitor *s)
159151
{

modules/afsocket/afinet-dest.c

+3
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,10 @@
4343
#endif
4444

4545
#if SYSLOG_NG_ENABLE_SPOOF_SOURCE
46+
#pragma GCC diagnostic push "-Wundef"
47+
#pragma GCC diagnostic ignored "-Wundef"
4648
#include <libnet.h>
49+
#pragma GCC diagnostic pop "-Wundef"
4750
#endif
4851

4952
#if _GNU_SOURCE_DEFINED

modules/java-modules/CMakeLists.txt

+36-30
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,36 @@
1-
if(ENABLE_JAVA)
2-
find_package(Gradle 3.4)
3-
4-
set(GRADLE_WORKDIR ${CMAKE_CURRENT_BINARY_DIR}/.gradle)
5-
set(SYSLOG_DEPS_DIR ${PROJECT_BINARY_DIR}/modules/java)
6-
7-
if(GRADLE_FOUND)
8-
OPTION(ENABLE_JAVA_MODULES "Enable Java modules" ON)
9-
else()
10-
OPTION(ENABLE_JAVA_MODULES "Enable Java modules" OFF)
11-
endif()
12-
13-
set(JAVA_MOD_DST_DIR "${CMAKE_INSTALL_PREFIX}/lib/syslog-ng/java-modules")
14-
15-
if(ENABLE_JAVA_MODULES)
16-
add_custom_target(BuildJavaModules ALL
17-
COMMAND ${GRADLE_EXECUTABLE} --project-cache-dir ${GRADLE_WORKDIR} -g ${GRADLE_WORKDIR} -p ${CMAKE_CURRENT_SOURCE_DIR} -PsyslogBuildDir=${CMAKE_CURRENT_BINARY_DIR} -PsyslogDepsDir=${SYSLOG_DEPS_DIR} build copyJars
18-
)
19-
add_dependencies(BuildJavaModules mod-java)
20-
21-
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/built-jars/ DESTINATION lib/syslog-ng/java-modules)
22-
install(CODE "execute_process(COMMAND ${GRADLE_EXECUTABLE} --project-cache-dir ${GRADLE_WORKDIR} -g ${GRADLE_WORKDIR} -p ${CMAKE_CURRENT_SOURCE_DIR} -PsyslogBuildDir=${CMAKE_CURRENT_BINARY_DIR} -PsyslogDepsDir=${SYSLOG_DEPS_DIR} -PjarDestDir=${JAVA_MOD_DST_DIR} copyLog4j)")
23-
install(CODE "execute_process(COMMAND ${GRADLE_EXECUTABLE} --project-cache-dir ${GRADLE_WORKDIR} -g ${GRADLE_WORKDIR} -p ${CMAKE_CURRENT_SOURCE_DIR} -PsyslogBuildDir=${CMAKE_CURRENT_BINARY_DIR} -PsyslogDepsDir=${SYSLOG_DEPS_DIR} -PjarDestDir=${JAVA_MOD_DST_DIR} copyJestRuntimeDeps)")
24-
25-
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ".gradle")
26-
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "built-jars")
27-
endif()
28-
else()
29-
OPTION(ENABLE_JAVA_MODULES "Enable Java modules" OFF)
30-
endif()
1+
if (ENABLE_JAVA_MODULES AND NOT ENABLE_JAVA)
2+
message(FATAL_ERROR "Java based modules enabled, but the required syslog-ng Java plugin is disabled.")
3+
endif ()
4+
5+
find_package (Gradle 3.4)
6+
7+
if (ENABLE_JAVA_MODULES AND NOT GRADLE_FOUND)
8+
message(FATAL_ERROR "Java based modules enabled, but the required gardle dependency is not found.")
9+
endif ()
10+
11+
set (CAN_ENABLE_JAVA_MODULES OFF)
12+
if ((GRADLE_FOUND AND ENABLE_JAVA))
13+
set (CAN_ENABLE_JAVA_MODULES ON)
14+
endif ()
15+
16+
module_switch (ENABLE_JAVA_MODULES "Enable Java modules" CAN_ENABLE_JAVA_MODULES)
17+
18+
if (NOT ENABLE_JAVA_MODULES)
19+
return ()
20+
endif ()
21+
22+
set(GRADLE_WORKDIR ${CMAKE_CURRENT_BINARY_DIR}/.gradle)
23+
set(SYSLOG_DEPS_DIR ${PROJECT_BINARY_DIR}/modules/java)
24+
set(JAVA_MOD_DST_DIR "${CMAKE_INSTALL_PREFIX}/lib/syslog-ng/java-modules")
25+
26+
add_custom_target(BuildJavaModules ALL
27+
COMMAND ${GRADLE_EXECUTABLE} --project-cache-dir ${GRADLE_WORKDIR} -g ${GRADLE_WORKDIR} -p ${CMAKE_CURRENT_SOURCE_DIR} -PsyslogBuildDir=${CMAKE_CURRENT_BINARY_DIR} -PsyslogDepsDir=${SYSLOG_DEPS_DIR} build copyJars
28+
)
29+
add_dependencies(BuildJavaModules mod-java)
30+
31+
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/built-jars/ DESTINATION lib/syslog-ng/java-modules)
32+
install(CODE "execute_process(COMMAND ${GRADLE_EXECUTABLE} --project-cache-dir ${GRADLE_WORKDIR} -g ${GRADLE_WORKDIR} -p ${CMAKE_CURRENT_SOURCE_DIR} -PsyslogBuildDir=${CMAKE_CURRENT_BINARY_DIR} -PsyslogDepsDir=${SYSLOG_DEPS_DIR} -PjarDestDir=${JAVA_MOD_DST_DIR} copyLog4j)")
33+
install(CODE "execute_process(COMMAND ${GRADLE_EXECUTABLE} --project-cache-dir ${GRADLE_WORKDIR} -g ${GRADLE_WORKDIR} -p ${CMAKE_CURRENT_SOURCE_DIR} -PsyslogBuildDir=${CMAKE_CURRENT_BINARY_DIR} -PsyslogDepsDir=${SYSLOG_DEPS_DIR} -PjarDestDir=${JAVA_MOD_DST_DIR} copyJestRuntimeDeps)")
34+
35+
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ".gradle")
36+
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "built-jars")

modules/kafka/kafka-dest-driver.h

+3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@
2626
#define KAFKA_H_INCLUDED
2727

2828
#include "logthrdest/logthrdestdrv.h"
29+
#pragma GCC diagnostic push "-Wignored-qualifiers"
30+
#pragma GCC diagnostic ignored "-Wignored-qualifiers"
2931
#include <librdkafka/rdkafka.h>
32+
#pragma GCC diagnostic pop "-Wignored-qualifiers"
3033

3134
typedef struct
3235
{

0 commit comments

Comments
 (0)