Ensure that global Py_UnbufferedStdioFlag is set when PYTHONUNBUFFERED=1
This commit is contained in:
@ -55,6 +55,16 @@ PythonImpl::PythonImpl(LAMMPS *lmp) : Pointers(lmp)
|
|||||||
|
|
||||||
nfunc = 0;
|
nfunc = 0;
|
||||||
pfuncs = nullptr;
|
pfuncs = nullptr;
|
||||||
|
|
||||||
|
// check for PYTHONUNBUFFERED environment variable
|
||||||
|
const char * PYTHONUNBUFFERED = getenv("PYTHONUNBUFFERED");
|
||||||
|
|
||||||
|
if (PYTHONUNBUFFERED != nullptr && strcmp(PYTHONUNBUFFERED, "1") == 0) {
|
||||||
|
// Python Global configuration variable
|
||||||
|
// Force the stdout and stderr streams to be unbuffered.
|
||||||
|
Py_UnbufferedStdioFlag = 1;
|
||||||
|
}
|
||||||
|
|
||||||
// one-time initialization of Python interpreter
|
// one-time initialization of Python interpreter
|
||||||
// pyMain stores pointer to main module
|
// pyMain stores pointer to main module
|
||||||
external_interpreter = Py_IsInitialized();
|
external_interpreter = Py_IsInitialized();
|
||||||
|
|||||||
@ -8,7 +8,7 @@ add_executable(test_python_package test_python_package.cpp)
|
|||||||
target_link_libraries(test_python_package PRIVATE lammps GTest::GMock GTest::GTest)
|
target_link_libraries(test_python_package PRIVATE lammps GTest::GMock GTest::GTest)
|
||||||
target_compile_definitions(test_python_package PRIVATE -DTEST_INPUT_FOLDER=${TEST_INPUT_FOLDER})
|
target_compile_definitions(test_python_package PRIVATE -DTEST_INPUT_FOLDER=${TEST_INPUT_FOLDER})
|
||||||
add_test(NAME PythonPackage COMMAND test_python_package WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
add_test(NAME PythonPackage COMMAND test_python_package WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
set_tests_properties(PythonPackage PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR};PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${LAMMPS_PYTHON_DIR}:$ENV{PYTHONPATH}")
|
set_tests_properties(PythonPackage PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR};PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${LAMMPS_PYTHON_DIR}:$ENV{PYTHONPATH};PYTHONUNBUFFERED=1")
|
||||||
|
|
||||||
# we must have shared libraries enabled for testing the python module
|
# we must have shared libraries enabled for testing the python module
|
||||||
if(NOT BUILD_SHARED_LIBS)
|
if(NOT BUILD_SHARED_LIBS)
|
||||||
|
|||||||
Reference in New Issue
Block a user