@@ -90,12 +90,12 @@ add_compile_options(-Wall -Werror -g -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fsta
9090#
9191# support for C++17
9292#
93- set (CMAKE_CXX_FLAGS "-std=gnu++17" )
93+ set (CMAKE_CXX_FLAGS "-std=gnu++17 -Wno-write-strings " )
9494
9595#
96- # rely on libxml2 having been installed, for XML configuration and output
96+ # pugixml - vendored lightweight XML library (replaces libxml2)
9797#
98- find_package ( LibXml2 2.0.0 REQUIRED )
98+ set ( PUGIXML_SOURCE_DIR " ${ CMAKE_SOURCE_DIR } /pugixml" )
9999
100100#
101101# source directories
@@ -161,7 +161,9 @@ add_executable(sysmon
161161 linuxWideChar.c
162162 linuxHelpers.cpp
163163 networkTracker.cpp
164- outputxml.c
164+ outputxml.cpp
165+ sysmonevents_defs.c
166+ ${PUGIXML_SOURCE_DIR } /pugixml.cpp
165167 installer.c
166168 "${SYSMON_COMMON_SOURCE_DIR } /usage.c"
167169 "${SYSMON_COMMON_SOURCE_DIR } /parsecommandline.c"
@@ -213,7 +215,7 @@ target_include_directories(sysmon PUBLIC
213215 "${PROJECT_BINARY_DIR } "
214216 "/usr/include"
215217 "/usr/local/include"
216- "${LIBXML2_INCLUDE_DIR } "
218+ "${PUGIXML_SOURCE_DIR } "
217219 "/opt/sysinternalsEBPF/ebpfKern"
218220 )
219221
@@ -370,7 +372,7 @@ set(EBPF_DEPENDS
370372#
371373# link sysmon
372374#
373- target_link_libraries (sysmon sysinternalsEBPF " ${LIBXML2_LIBRARIES} " pthread ${openssl_SOURCE_DIR } /libcrypto.a ${CMAKE_DL_LIBS } )
375+ target_link_libraries (sysmon sysinternalsEBPF pthread ${openssl_SOURCE_DIR } /libcrypto.a ${CMAKE_DL_LIBS } )
374376
375377
376378#
@@ -379,6 +381,7 @@ target_link_libraries(sysmon sysinternalsEBPF "${LIBXML2_LIBRARIES}" pthread ${o
379381add_executable (sysmonLogView
380382 sysmonLogView/sysmonLogView.cpp
381383 sysmonLogView/sysmonGetEventName.c
384+ ${PUGIXML_SOURCE_DIR } /pugixml.cpp
382385 sysmonmsgop.c
383386 sysmonevents.h
384387 sysmonmsg.h
@@ -390,10 +393,10 @@ target_include_directories(sysmonLogView PUBLIC
390393 "${SYSMON_COMMON_SOURCE_DIR } "
391394 "${PROJECT_BINARY_DIR } "
392395 "/usr/include"
393- "${LIBXML2_INCLUDE_DIR } "
396+ "${PUGIXML_SOURCE_DIR } "
394397 )
395398
396- target_link_libraries (sysmonLogView " ${LIBXML2_LIBRARIES} " )
399+ target_link_libraries (sysmonLogView )
397400
398401
399402#
@@ -425,7 +428,9 @@ add_executable(sysmonUnitTests
425428 test /linuxRules.cpp
426429 linuxWideChar.c
427430 linuxHelpers.cpp
428- outputxml.c
431+ outputxml.cpp
432+ sysmonevents_defs.c
433+ ${PUGIXML_SOURCE_DIR } /pugixml.cpp
429434 hexdump.c
430435 "${SYSMON_COMMON_SOURCE_DIR } /parsecommandline.c"
431436 "${SYSMON_COMMON_SOURCE_DIR } /xml.cpp"
@@ -439,14 +444,14 @@ add_executable(sysmonUnitTests
439444 "${PROJECT_BINARY_DIR } /yoursleep"
440445 )
441446
442- target_link_libraries (sysmonUnitTests " ${LIBXML2_LIBRARIES} " ${GTEST_LIBRARIES} pthread ${openssl_SOURCE_DIR } /libcrypto.a ${CMAKE_DL_LIBS } )
447+ target_link_libraries (sysmonUnitTests ${GTEST_LIBRARIES} pthread ${openssl_SOURCE_DIR } /libcrypto.a ${CMAKE_DL_LIBS } )
443448target_include_directories (sysmonUnitTests PUBLIC
444449 "${CMAKE_SOURCE_DIR } "
445450 "${SYSMON_COMMON_SOURCE_DIR } "
446451 "${SYSMON_TESTS_SOURCE_DIR } "
447452 "${PROJECT_BINARY_DIR } "
448453 "/usr/include"
449- "${LIBXML2_INCLUDE_DIR } "
454+ "${PUGIXML_SOURCE_DIR } "
450455 "${GTEST_INCLUDE_DIRS} "
451456 )
452457
0 commit comments