diff options
-rw-r--r-- | CMakeLists.txt | 3 | ||||
-rw-r--r-- | docs/CMakeLists.txt | 3 | ||||
-rw-r--r-- | docs/cmdline-opts/CMakeLists.txt | 12 | ||||
-rw-r--r-- | src/CMakeLists.txt | 12 |
4 files changed, 24 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 8390c38c9..58d159e2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -224,6 +224,8 @@ if(ENABLE_MANUAL) message(WARNING "Found no *nroff program") endif() endif() +# Required for building manual, docs, tests +find_package(Perl REQUIRED) # We need ansi c-flags, especially on HP set(CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS}") @@ -1082,6 +1084,7 @@ function(TRANSFORM_MAKEFILE_INC INPUT_FILE OUTPUT_FILE) endfunction() +add_subdirectory(docs) add_subdirectory(lib) if(BUILD_CURL_EXE) add_subdirectory(src) diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt new file mode 100644 index 000000000..4b111b85a --- /dev/null +++ b/docs/CMakeLists.txt @@ -0,0 +1,3 @@ +#add_subdirectory(examples) +#add_subdirectory(libcurl) +add_subdirectory(cmdline-opts) diff --git a/docs/cmdline-opts/CMakeLists.txt b/docs/cmdline-opts/CMakeLists.txt new file mode 100644 index 000000000..ccee4a142 --- /dev/null +++ b/docs/cmdline-opts/CMakeLists.txt @@ -0,0 +1,12 @@ +set(MANPAGE "${CMAKE_BINARY_DIR}/docs/curl.1") + +# Load DPAGES and OTHERPAGES from shared file +transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake") +include("${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake") + +add_custom_command(OUTPUT "${MANPAGE}" + COMMAND "${PERL_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/gen.pl" mainpage "${CMAKE_CURRENT_SOURCE_DIR}" > "${MANPAGE}" + DEPENDS "${DPAGES}" "${OTHERPAGES}" + VERBATIM +) +add_custom_target(generate-curl.1 DEPENDS "${MANPAGE}") diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 9bbeb6054..e6004ceae 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,7 +1,6 @@ set(EXE_NAME curl) if(USE_MANUAL) - find_package(Perl REQUIRED) # Use the C locale to ensure that only ASCII characters appear in the # embedded text. NROFF and MANOPT are set in the parent CMakeLists.txt add_custom_command( @@ -9,18 +8,19 @@ if(USE_MANUAL) COMMAND ${CMAKE_COMMAND} -E echo "#include \"tool_setup.h\"" > tool_hugehelp.c COMMAND ${CMAKE_COMMAND} -E echo "#ifndef HAVE_LIBZ" >> tool_hugehelp.c COMMAND env LC_ALL=C "${NROFF}" ${NROFF_MANOPT} - "${CURL_SOURCE_DIR}/docs/curl.1" | - "${PERL}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" + "${CURL_BINARY_DIR}/docs/curl.1" | + "${PERL_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" "${CURL_SOURCE_DIR}/docs/MANUAL" >> tool_hugehelp.c COMMAND ${CMAKE_COMMAND} -E echo "#else" >> tool_hugehelp.c COMMAND env LC_ALL=C "${NROFF}" ${NROFF_MANOPT} - "${CURL_SOURCE_DIR}/docs/curl.1" | - "${PERL}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" -c + "${CURL_BINARY_DIR}/docs/curl.1" | + "${PERL_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" -c "${CURL_SOURCE_DIR}/docs/MANUAL" >> tool_hugehelp.c COMMAND ${CMAKE_COMMAND} -E echo "#endif /* HAVE_LIBZ */" >> tool_hugehelp.c DEPENDS "${CURL_SOURCE_DIR}/docs/MANUAL" - "${CURL_SOURCE_DIR}/docs/curl.1" + generate-curl.1 + "${CURL_BINARY_DIR}/docs/curl.1" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" "${CMAKE_CURRENT_SOURCE_DIR}/tool_hugehelp.h" VERBATIM) |