mirror of
				https://github.com/python/cpython.git
				synced 2025-10-27 03:34:32 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #include "Python.h"
 | |
| 
 | |
| #ifndef DONT_HAVE_STDIO_H
 | |
| #include <stdio.h>
 | |
| #endif
 | |
| 
 | |
| #ifndef DATE
 | |
| #ifdef __DATE__
 | |
| #define DATE __DATE__
 | |
| #else
 | |
| #define DATE "xx/xx/xx"
 | |
| #endif
 | |
| #endif
 | |
| 
 | |
| #ifndef TIME
 | |
| #ifdef __TIME__
 | |
| #define TIME __TIME__
 | |
| #else
 | |
| #define TIME "xx:xx:xx"
 | |
| #endif
 | |
| #endif
 | |
| 
 | |
| /* XXX Only unix build process has been tested */
 | |
| #ifndef HGVERSION
 | |
| #define HGVERSION ""
 | |
| #endif
 | |
| #ifndef HGTAG
 | |
| #define HGTAG ""
 | |
| #endif
 | |
| #ifndef HGBRANCH
 | |
| #define HGBRANCH ""
 | |
| #endif
 | |
| 
 | |
| const char *
 | |
| Py_GetBuildInfo(void)
 | |
| {
 | |
|     static char buildinfo[50 + sizeof(HGVERSION) +
 | |
|                           ((sizeof(HGTAG) > sizeof(HGBRANCH)) ?
 | |
|                            sizeof(HGTAG) : sizeof(HGBRANCH))];
 | |
|     const char *revision = _Py_hgversion();
 | |
|     const char *sep = *revision ? ":" : "";
 | |
|     const char *hgid = _Py_hgidentifier();
 | |
|     if (!(*hgid))
 | |
|         hgid = "default";
 | |
|     PyOS_snprintf(buildinfo, sizeof(buildinfo),
 | |
|                   "%s%s%s, %.20s, %.9s", hgid, sep, revision,
 | |
|                   DATE, TIME);
 | |
|     return buildinfo;
 | |
| }
 | |
| 
 | |
| const char *
 | |
| _Py_hgversion(void)
 | |
| {
 | |
|     return HGVERSION;
 | |
| }
 | |
| 
 | |
| const char *
 | |
| _Py_hgidentifier(void)
 | |
| {
 | |
|     const char *hgtag, *hgid;
 | |
|     hgtag = HGTAG;
 | |
|     if ((*hgtag) && strcmp(hgtag, "tip") != 0)
 | |
|         hgid = hgtag;
 | |
|     else
 | |
|         hgid = HGBRANCH;
 | |
|     return hgid;
 | |
| }
 | 
