mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-01 19:30:13 -06:00
42 lines
860 B
C
42 lines
860 B
C
|
|
#include <stdio.h>
|
|
|
|
#define PY_SSIZE_T_CLEAN
|
|
#include <Python.h>
|
|
|
|
#include "display_time.h"
|
|
|
|
void display_time(void)
|
|
{
|
|
#if defined(PYTHON3)
|
|
PyConfig config;
|
|
PyStatus status;
|
|
|
|
PyConfig_InitPythonConfig(&config);
|
|
status =
|
|
PyConfig_SetBytesString(&config, &config.program_name, "display_time");
|
|
if (PyStatus_Exception(status)) {
|
|
Py_ExitStatusException(status);
|
|
}
|
|
|
|
char* cmd = "from time import time,ctime\n"
|
|
"print('Today is', ctime(time()))\n";
|
|
#else
|
|
char* program = "display_time";
|
|
char* cmd = "from time import time,ctime\n"
|
|
"print 'Today is', ctime(time())\n";
|
|
|
|
Py_SetProgramName(program); /* optional but recommended */
|
|
#endif
|
|
Py_Initialize();
|
|
PyRun_SimpleString(cmd);
|
|
#if defined(PYTHON3)
|
|
if (Py_FinalizeEx() < 0) {
|
|
exit(120);
|
|
}
|
|
PyConfig_Clear(&config);
|
|
#else
|
|
Py_Finalize();
|
|
#endif
|
|
}
|