| From aa833cf56c5cc2e87a1d91881eb2286beb34e417 Mon Sep 17 00:00:00 2001 |
| From: Leon Anavi <leon.anavi@konsulko.com> |
| Date: Wed, 26 Aug 2020 10:52:10 +0300 |
| Subject: [PATCH] doxygen: Fix Python issues for doxygen-native |
| |
| It fails to compile doxygen-native when /usr/bin/python is a link |
| to python3 on build host: |
| |
| | Failed to import the site module |
| | Traceback (most recent call last): |
| | File "/usr/lib64/python3.6/site.py", line 564, in <module> |
| | main() |
| | File "/usr/lib64/python3.6/site.py", line 550, in main |
| | known_paths = addusersitepackages(known_paths) |
| | File "/usr/lib64/python3.6/site.py", line 282, in addusersitepackages |
| | user_site = getusersitepackages() |
| | File "/usr/lib64/python3.6/site.py", line 258, in getusersitepackages |
| | user_base = getuserbase() # this will also set USER_BASE |
| | File "/usr/lib64/python3.6/site.py", line 248, in getuserbase |
| | USER_BASE = get_config_var('userbase') |
| | File "/usr/lib64/python3.6/sysconfig.py", line 604, in get_config_var |
| | return get_config_vars().get(name) |
| | File "/usr/lib64/python3.6/sysconfig.py", line 553, in get_config_vars |
| | _init_posix(_CONFIG_VARS) |
| | File "/usr/lib64/python3.6/sysconfig.py", line 424, in _init_posix |
| | _temp = __import__(name, globals(), locals(), ['build_time_vars'], 0) |
| | ModuleNotFoundError: No module named '_sysconfigdata' |
| |
| Replace find_package PythonInterp with Python3 to fix this issue |
| that it uses python3 from python3-native. And it also replaces the |
| result variable PYTHON_EXECUTABLE with Python3_EXECUTABLE. |
| |
| This patch is only needded by doxygen-native. |
| |
| Upstream-Status: Inappropriate[oe specific] |
| |
| Co-Authored-By: Kai Kang <kai.kang@windriver.com> |
| Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> |
| --- |
| CMakeLists.txt | 2 +- |
| addon/doxywizard/CMakeLists.txt | 6 +++--- |
| doc/CMakeLists.txt | 6 +++--- |
| examples/CMakeLists.txt | 4 ++-- |
| libmscgen/CMakeLists.txt | 2 +- |
| src/CMakeLists.txt | 12 ++++++------ |
| testing/CMakeLists.txt | 4 ++-- |
| 7 files changed, 18 insertions(+), 18 deletions(-) |
| |
| diff --git a/CMakeLists.txt b/CMakeLists.txt |
| index 35e6a0c2..9aaebbdf 100644 |
| --- a/CMakeLists.txt |
| +++ b/CMakeLists.txt |
| @@ -100,7 +100,7 @@ else () |
| endif () |
| |
| find_program(DOT NAMES dot) |
| -find_package(PythonInterp REQUIRED) |
| +find_package(Python3 REQUIRED) |
| find_package(FLEX REQUIRED) |
| find_package(BISON REQUIRED) |
| if (BISON_VERSION VERSION_LESS 2.7) |
| diff --git a/addon/doxywizard/CMakeLists.txt b/addon/doxywizard/CMakeLists.txt |
| index 6aacd8b6..fa197e9e 100644 |
| --- a/addon/doxywizard/CMakeLists.txt |
| +++ b/addon/doxywizard/CMakeLists.txt |
| @@ -58,7 +58,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/settings.h PROPERTIES GENERA |
| |
| # generate version.cpp |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/version.py ${VERSION} > ${GENERATED_SRC_WIZARD}/version.cpp |
| DEPENDS ${CMAKE_SOURCE_DIR}/VERSION ${CMAKE_SOURCE_DIR}/src/version.py |
| OUTPUT ${GENERATED_SRC_WIZARD}/version.cpp |
| ) |
| @@ -66,7 +66,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/version.cpp PROPERTIES GENER |
| |
| # generate configdoc.cpp |
| add_custom_command( |
| -COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -wiz ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp |
| +COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -wiz ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC_WIZARD}/configdoc.cpp |
| OUTPUT ${GENERATED_SRC_WIZARD}/configdoc.cpp |
| ) |
| set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GENERATED 1) |
| @@ -74,7 +74,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GEN |
| set(LEX_FILES config_doxyw) |
| foreach(lex_file ${LEX_FILES}) |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l > ${GENERATED_SRC_WIZARD}/${lex_file}.l.h |
| DEPENDS ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/addon/doxywizard/${lex_file}.l |
| OUTPUT ${GENERATED_SRC_WIZARD}/${lex_file}.l.h |
| ) |
| diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt |
| index a094c570..8a757c20 100644 |
| --- a/doc/CMakeLists.txt |
| +++ b/doc/CMakeLists.txt |
| @@ -132,7 +132,7 @@ configure_file(${CMAKE_SOURCE_DIR}/doc/doxyindexer.1 ${PROJECT_BINARY_DIR}/ |
| |
| # doc/language.doc (see tag Doxyfile:INPUT) |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} translator.py ${CMAKE_SOURCE_DIR} |
| + COMMAND ${Python3_EXECUTABLE} translator.py ${CMAKE_SOURCE_DIR} |
| DEPENDS ${CMAKE_SOURCE_DIR}/doc/maintainers.txt ${CMAKE_SOURCE_DIR}/doc/language.tpl ${PROJECT_BINARY_DIR}/doc/translator.py ${LANG_FILES} |
| OUTPUT language.doc |
| WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc |
| @@ -141,7 +141,7 @@ set_source_files_properties(language.doc PROPERTIES GENERATED 1) |
| |
| # doc/config.doc (see tag Doxyfile:INPUT) |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${TOP}/src/configgen.py -doc ${TOP}/src/config.xml > config.doc |
| + COMMAND ${Python3_EXECUTABLE} ${TOP}/src/configgen.py -doc ${TOP}/src/config.xml > config.doc |
| DEPENDS ${TOP}/src/config.xml ${TOP}/src/configgen.py |
| OUTPUT config.doc |
| WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/doc/ |
| @@ -192,7 +192,7 @@ add_custom_target(docs_chm |
| COMMAND ${CMAKE_COMMAND} -E echo " for file in files:" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py |
| COMMAND ${CMAKE_COMMAND} -E echo " if file.endswith('.html') or file.endswith('.png') or file.endswith('.css') or file.endswith('.gif'):" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py |
| COMMAND ${CMAKE_COMMAND} -E echo " print(os.path.join(root, file))" >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py |
| - COMMAND ${CMAKE_COMMAND} -E chdir ${PROJECT_BINARY_DIR}/chm ${PYTHON_EXECUTABLE} ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual.hhp |
| + COMMAND ${CMAKE_COMMAND} -E chdir ${PROJECT_BINARY_DIR}/chm ${Python3_EXECUTABLE} ${PROJECT_BINARY_DIR}/chm/doxygen_manual_examples_chm.py >> ${PROJECT_BINARY_DIR}/chm/doxygen_manual.hhp |
| COMMAND ${CMAKE_COMMAND} -E chdir ${PROJECT_BINARY_DIR}/chm "${HTML_HELP_COMPILER}" doxygen_manual.hhp || echo > nul |
| COMMAND ${CMAKE_COMMAND} -E rename ${PROJECT_BINARY_DIR}/chm/index.chm ${PROJECT_BINARY_DIR}/chm/doxygen_manual.chm |
| DEPENDS ${PROJECT_BINARY_DIR}/doc/language.doc ${PROJECT_BINARY_DIR}/doc/config.doc |
| diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt |
| index 3f1c79b8..d5866ee1 100644 |
| --- a/examples/CMakeLists.txt |
| +++ b/examples/CMakeLists.txt |
| @@ -51,7 +51,7 @@ foreach (f_inp ${BASIC_EXAMPLES}) |
| string(REGEX REPLACE ":.*" "" f ${f_inp}) |
| add_custom_command( |
| COMMAND ${EXECUTABLE_OUTPUT_PATH}/doxygen ${f}.cfg |
| - COMMAND ${PYTHON_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex |
| + COMMAND ${Python3_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex |
| DEPENDS doxygen ${f}.${f_ext} ${f}.cfg ${TOP}/examples/strip_example.py |
| OUTPUT ${PROJECT_BINARY_DIR}/html/examples/${f}/html/index.html ${PROJECT_BINARY_DIR}/html/examples/${f}/latex/refman_doc.tex |
| ) |
| @@ -68,7 +68,7 @@ add_custom_target(examples |
| if (DOT) |
| add_custom_command( |
| COMMAND ${EXECUTABLE_OUTPUT_PATH}/doxygen diagrams.cfg |
| - COMMAND ${PYTHON_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex |
| + COMMAND ${Python3_EXECUTABLE} ${TOP}/examples/strip_example.py < ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman.tex > ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex |
| DEPENDS doxygen diagrams_a.h diagrams_b.h diagrams_c.h diagrams_d.h diagrams_e.h diagrams.cfg ${TOP}/examples/strip_example.py |
| OUTPUT ${PROJECT_BINARY_DIR}/html/examples/diagrams/html/index.html ${PROJECT_BINARY_DIR}/html/examples/diagrams/latex/refman_doc.tex |
| ) |
| diff --git a/libmscgen/CMakeLists.txt b/libmscgen/CMakeLists.txt |
| index 079fcfc8..e6d86f61 100644 |
| --- a/libmscgen/CMakeLists.txt |
| +++ b/libmscgen/CMakeLists.txt |
| @@ -7,7 +7,7 @@ include_directories( |
| set(LEX_FILES mscgen_lexer) |
| foreach(lex_file ${LEX_FILES}) |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h |
| DEPENDS ${CMAKE_SOURCE_DIR}/src/scan_states.py ${CMAKE_SOURCE_DIR}/libmscgen/${lex_file}.l |
| OUTPUT ${GENERATED_SRC}/${lex_file}.l.h |
| ) |
| diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt |
| index cb289116..356741ff 100644 |
| --- a/src/CMakeLists.txt |
| +++ b/src/CMakeLists.txt |
| @@ -39,7 +39,7 @@ set_source_files_properties(${GENERATED_SRC}/settings.h PROPERTIES GENERATED 1) |
| |
| # configvalues.h |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/configgen.py -maph ${CMAKE_CURRENT_LIST_DIR}/config.xml > ${GENERATED_SRC}/configvalues.h |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/configgen.py -maph ${CMAKE_CURRENT_LIST_DIR}/config.xml > ${GENERATED_SRC}/configvalues.h |
| DEPENDS ${CMAKE_CURRENT_LIST_DIR}/config.xml ${CMAKE_CURRENT_LIST_DIR}/configgen.py |
| OUTPUT ${GENERATED_SRC}/configvalues.h |
| ) |
| @@ -51,7 +51,7 @@ add_custom_target( |
| |
| # configvalues.cpp |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/configgen.py -maps ${CMAKE_CURRENT_LIST_DIR}/config.xml > ${GENERATED_SRC}/configvalues.cpp |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/configgen.py -maps ${CMAKE_CURRENT_LIST_DIR}/config.xml > ${GENERATED_SRC}/configvalues.cpp |
| DEPENDS ${CMAKE_CURRENT_LIST_DIR}/config.xml ${CMAKE_CURRENT_LIST_DIR}/configgen.py |
| OUTPUT ${GENERATED_SRC}/configvalues.cpp |
| ) |
| @@ -59,7 +59,7 @@ set_source_files_properties(${GENERATED_SRC}/configvalues.cpp PROPERTIES GENERAT |
| |
| # configoptions.cpp |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/configgen.py -cpp ${CMAKE_CURRENT_LIST_DIR}/config.xml > ${GENERATED_SRC}/configoptions.cpp |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/configgen.py -cpp ${CMAKE_CURRENT_LIST_DIR}/config.xml > ${GENERATED_SRC}/configoptions.cpp |
| DEPENDS ${CMAKE_CURRENT_LIST_DIR}/config.xml ${CMAKE_CURRENT_LIST_DIR}/configgen.py |
| OUTPUT ${GENERATED_SRC}/configoptions.cpp |
| ) |
| @@ -94,7 +94,7 @@ endif() |
| # resources.cpp |
| add_custom_command( |
| COMMENT "Generating ${GENERATED_SRC}/resources.cpp" |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${CMAKE_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py ${CMAKE_SOURCE_DIR}/templates ${GENERATED_SRC}/resources.cpp |
| DEPENDS ${RESOURCES} ${CMAKE_CURRENT_LIST_DIR}/res2cc_cmd.py |
| OUTPUT ${GENERATED_SRC}/resources.cpp |
| ) |
| @@ -102,7 +102,7 @@ set_source_files_properties(${GENERATED_SRC}/resources.cpp PROPERTIES GENERATED |
| |
| # layout_default.xml |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py < ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml > ${GENERATED_SRC}/layout_default.xml.h |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py < ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml > ${GENERATED_SRC}/layout_default.xml.h |
| DEPENDS ${CMAKE_CURRENT_LIST_DIR}/layout_default.xml ${CMAKE_CURRENT_LIST_DIR}/to_c_cmd.py |
| OUTPUT ${GENERATED_SRC}/layout_default.xml.h |
| ) |
| @@ -131,7 +131,7 @@ foreach(lex_file ${LEX_FILES}) |
| set(LEX_FILES_H ${LEX_FILES_H} " " ${GENERATED_SRC}/${lex_file}.l.h CACHE INTERNAL "Stores generated files") |
| set(LEX_FILES_CPP ${LEX_FILES_CPP} " " ${GENERATED_SRC}/${lex_file}.cpp CACHE INTERNAL "Stores generated files") |
| add_custom_command( |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/scan_states.py ${CMAKE_CURRENT_LIST_DIR}/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_LIST_DIR}/scan_states.py ${CMAKE_CURRENT_LIST_DIR}/${lex_file}.l > ${GENERATED_SRC}/${lex_file}.l.h |
| DEPENDS ${CMAKE_CURRENT_LIST_DIR}/scan_states.py ${CMAKE_CURRENT_LIST_DIR}/${lex_file}.l |
| OUTPUT ${GENERATED_SRC}/${lex_file}.l.h |
| ) |
| diff --git a/testing/CMakeLists.txt b/testing/CMakeLists.txt |
| index b354e78f..28d45e11 100644 |
| --- a/testing/CMakeLists.txt |
| +++ b/testing/CMakeLists.txt |
| @@ -1,7 +1,7 @@ |
| # run all tests sequentially (keep for backward compatibility) |
| add_custom_target(tests |
| COMMENT "Running doxygen tests..." |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --doxygen ${PROJECT_BINARY_DIR}/bin/doxygen --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing |
| DEPENDS doxygen |
| ) |
| |
| @@ -19,6 +19,6 @@ foreach(TEST_FILE ${TEST_FILES}) |
| string(REGEX REPLACE "^.*/([0-9][0-9][0-9]*).*$" "\\1" TEST_ID "${TEST_FILE}") |
| # add a test target for each test |
| add_test(NAME ${TEST_NAME} |
| - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing |
| + COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/testing/runtests.py --id ${TEST_ID} --doxygen $<TARGET_FILE:doxygen> --inputdir ${CMAKE_SOURCE_DIR}/testing --outputdir ${PROJECT_BINARY_DIR}/testing |
| ) |
| endforeach() |
| -- |
| 2.17.1 |
| |