Skip to content

Commit

Permalink
add more manpage installs
Browse files Browse the repository at this point in the history
  • Loading branch information
goatshriek committed Jun 28, 2023
1 parent 2df944e commit efbe390
Show file tree
Hide file tree
Showing 4 changed files with 239 additions and 51 deletions.
50 changes: 1 addition & 49 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -395,55 +395,7 @@ else()
endif()

if(STUMPLESS_JOURNALD_TARGETS_SUPPORTED)
list(APPEND STUMPLESS_SOURCES src/target/journald.c)
list(APPEND STUMPLESS_SOURCES ${PROJECT_SOURCE_DIR}/src/config/journald_supported.c)
list(APPEND WRAPTURE_SPECS ${PROJECT_SOURCE_DIR}/tools/wrapture/journald_target.yml)

install(FILES
${PROJECT_SOURCE_DIR}/include/stumpless/target/journald.h
DESTINATION "include/stumpless/target"
)

install(FILES
${PROJECT_SOURCE_DIR}/include/stumpless/config/journald_supported.h
DESTINATION "include/stumpless/config"
)

add_function_test(journald
SOURCES
${PROJECT_SOURCE_DIR}/test/function/target/journald.cpp
$<TARGET_OBJECTS:test_helper_fixture>
LIBRARIES
systemd
)

add_function_test(journald_supported
SOURCES
${PROJECT_SOURCE_DIR}/test/function/config/journald_supported.cpp
$<TARGET_OBJECTS:test_helper_fixture>
LIBRARIES
systemd
)

add_performance_test(journald
SOURCES
${PROJECT_SOURCE_DIR}/test/performance/target/journald.cpp
$<TARGET_OBJECTS:test_helper_fixture>
)

add_example(journald
${PROJECT_SOURCE_DIR}/docs/examples/journald/journald_example.c
)

if(STUMPLESS_THREAD_SAFETY_SUPPORTED)
add_thread_safety_test(journald
SOURCES
${PROJECT_SOURCE_DIR}/test/thread_safety/target/journald.cpp
$<TARGET_OBJECTS:test_helper_usage>
LIBRARIES
systemd
)
endif()
include(tools/cmake/journald.cmake)
else()
add_function_test(journald_unsupported
SOURCES
Expand Down
173 changes: 173 additions & 0 deletions tools/cmake/install_manpages.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,181 @@ set(MANPAGE_BUILD_DIR "${PROJECT_BINARY_DIR}/docs/man/man3")

# install the generated manpages
# rename them so that they are globally unique
install(FILES
${MANPAGE_BUILD_DIR}/stumpless.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/config.h.3
RENAME stumpless_config.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/element.h.3
RENAME stumpless_element.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/entry.h.3
RENAME stumpless_entry.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/error.h.3
RENAME stumpless_error.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/facility.h.3
RENAME stumpless_facility.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/filter.h.3
RENAME stumpless_filter.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/generator.h.3
RENAME stumpless_generator.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/id.h.3
RENAME stumpless_id.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/log.h.3
RENAME stumpless_log.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/memory.h.3
RENAME stumpless_memory.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/option.h.3
RENAME stumpless_option.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/param.h.3
RENAME stumpless_param.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/severity.h.3
RENAME stumpless_severity.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/target.h.3
RENAME stumpless_target.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/version.h.3
RENAME stumpless_version.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/alert.h.3
RENAME stumpless_level_alert.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/crit.h.3
RENAME stumpless_level_crit.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/debug.h.3
RENAME stumpless_level_debug.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/emerg.h.3
RENAME stumpless_level_emerg.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/err.h.3
RENAME stumpless_level_err.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/info.h.3
RENAME stumpless_level_info.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/mask.h.3
RENAME stumpless_level_mask.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/notice.h.3
RENAME stumpless_level_notice.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/trace.h.3
RENAME stumpless_level_trace.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/warning.h.3
RENAME stumpless_level_warning.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/buffer.h.3
RENAME stumpless_target_buffer.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/file.h.3
RENAME stumpless_target_file.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/function.h.3
RENAME stumpless_target_function.h.3
DESTINATION "man/man3"
)

install(FILES
${MANPAGE_BUILD_DIR}/stream.h.3
RENAME stumpless_target_stream.h.3
DESTINATION "man/man3"
)
63 changes: 63 additions & 0 deletions tools/cmake/journald.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
list(APPEND STUMPLESS_SOURCES src/target/journald.c)
list(APPEND STUMPLESS_SOURCES ${PROJECT_SOURCE_DIR}/src/config/journald_supported.c)
list(APPEND WRAPTURE_SPECS ${PROJECT_SOURCE_DIR}/tools/wrapture/journald_target.yml)

install(FILES
${PROJECT_SOURCE_DIR}/include/stumpless/target/journald.h
DESTINATION "include/stumpless/target"
)

install(FILES
${PROJECT_SOURCE_DIR}/include/stumpless/config/journald_supported.h
DESTINATION "include/stumpless/config"
)

if(INCLUDE_MANPAGES_IN_INSTALL)
install(FILES
${PROJECT_BINARY_DIR}/docs/man/man3/journald.h.3
RENAME stumpless_target_journald.h.3
DESTINATION "man/man3"
)

install(FILES
${PROJECT_BINARY_DIR}/docs/man/man3/journald_supported.h.3
RENAME stumpless_config_journald_supported.h.3
DESTINATION "man/man3"
)
endif()

add_function_test(journald
SOURCES
${PROJECT_SOURCE_DIR}/test/function/target/journald.cpp
$<TARGET_OBJECTS:test_helper_fixture>
LIBRARIES
systemd
)

add_function_test(journald_supported
SOURCES
${PROJECT_SOURCE_DIR}/test/function/config/journald_supported.cpp
$<TARGET_OBJECTS:test_helper_fixture>
LIBRARIES
systemd
)

add_performance_test(journald
SOURCES
${PROJECT_SOURCE_DIR}/test/performance/target/journald.cpp
$<TARGET_OBJECTS:test_helper_fixture>
)

add_example(journald
${PROJECT_SOURCE_DIR}/docs/examples/journald/journald_example.c
)

if(STUMPLESS_THREAD_SAFETY_SUPPORTED)
add_thread_safety_test(journald
SOURCES
${PROJECT_SOURCE_DIR}/test/thread_safety/target/journald.cpp
$<TARGET_OBJECTS:test_helper_usage>
LIBRARIES
systemd
)
endif()
4 changes: 2 additions & 2 deletions tools/doxygen/Doxyfile.in
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ HTML_INDEX_NUM_ENTRIES = 100
GENERATE_MAN = YES
MAN_OUTPUT = man
MAN_EXTENSION = .3
# because we update the manpage names to be unique, the generated link entries
# don't work, so we turn them off
# since the manpage names are renamed in the build script
# so that they are unique, the generated link entries wouldn't work
MAN_LINKS = NO


Expand Down

0 comments on commit efbe390

Please sign in to comment.