mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	issue 4483 - _dbm build failures on systems with gdbm_compat lib.
This commit is contained in:
		
							parent
							
								
									008d8ef1a8
								
							
						
					
					
						commit
						c1ce286061
					
				
					 3 changed files with 20 additions and 5 deletions
				
			
		|  | @ -25,6 +25,9 @@ Core and Builtins | ||||||
| Library | Library | ||||||
| ------- | ------- | ||||||
| 
 | 
 | ||||||
|  | - Issue #4483: _dbm module now builds on systems with gdbm & gdbm_compat | ||||||
|  |   libs. | ||||||
|  | 
 | ||||||
| - Issue #4542: On Windows, binascii.crc32 still accepted str as binary input; | - Issue #4542: On Windows, binascii.crc32 still accepted str as binary input; | ||||||
|   the corresponding tests now pass. |   the corresponding tests now pass. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -21,6 +21,9 @@ static char *which_dbm = "GNU gdbm";  /* EMX port of GDBM */ | ||||||
| #elif defined(HAVE_GDBM_NDBM_H) | #elif defined(HAVE_GDBM_NDBM_H) | ||||||
| #include <gdbm/ndbm.h> | #include <gdbm/ndbm.h> | ||||||
| static char *which_dbm = "GNU gdbm"; | static char *which_dbm = "GNU gdbm"; | ||||||
|  | #elif defined(HAVE_GDBM_DASH_NDBM_H) | ||||||
|  | #include <gdbm-ndbm.h> | ||||||
|  | static char *which_dbm = "GNU gdbm"; | ||||||
| #elif defined(HAVE_BERKDB_H) | #elif defined(HAVE_BERKDB_H) | ||||||
| #include <db.h> | #include <db.h> | ||||||
| static char *which_dbm = "Berkeley DB"; | static char *which_dbm = "Berkeley DB"; | ||||||
|  |  | ||||||
							
								
								
									
										19
									
								
								setup.py
									
										
									
									
									
								
							
							
						
						
									
										19
									
								
								setup.py
									
										
									
									
									
								
							|  | @ -783,11 +783,20 @@ def detect_modules(self): | ||||||
|                 exts.append( Extension('_dbm', ['_dbmmodule.c'], |                 exts.append( Extension('_dbm', ['_dbmmodule.c'], | ||||||
|                                        define_macros=[('HAVE_NDBM_H',None)], |                                        define_macros=[('HAVE_NDBM_H',None)], | ||||||
|                                        libraries = ndbm_libs ) ) |                                        libraries = ndbm_libs ) ) | ||||||
|             elif (self.compiler.find_library_file(lib_dirs, 'gdbm') |             elif self.compiler.find_library_file(lib_dirs, 'gdbm'): | ||||||
|                   and find_file("gdbm/ndbm.h", inc_dirs, []) is not None): |                 gdbm_libs = ['gdbm'] | ||||||
|                 exts.append( Extension('_dbm', ['_dbmmodule.c'], |                 if self.compiler.find_library_file(lib_dirs, 'gdbm_compat'): | ||||||
|                                        define_macros=[('HAVE_GDBM_NDBM_H',None)], |                     gdbm_libs.append('gdbm_compat') | ||||||
|                                        libraries = ['gdbm'] ) ) |                 if find_file("gdbm/ndbm.h", inc_dirs, []) is not None: | ||||||
|  |                     exts.append( Extension( | ||||||
|  |                         '_dbm', ['_dbmmodule.c'], | ||||||
|  |                         define_macros=[('HAVE_GDBM_NDBM_H',None)], | ||||||
|  |                         libraries = gdbm_libs ) ) | ||||||
|  |                 elif find_file("gdbm-ndbm.h", inc_dirs, []) is not None: | ||||||
|  |                     exts.append( Extension( | ||||||
|  |                         '_dbm', ['_dbmmodule.c'], | ||||||
|  |                         define_macros=[('HAVE_GDBM_DASH_NDBM_H',None)], | ||||||
|  |                         libraries = gdbm_libs ) ) | ||||||
|             elif db_incs is not None: |             elif db_incs is not None: | ||||||
|                 exts.append( Extension('_dbm', ['_dbmmodule.c'], |                 exts.append( Extension('_dbm', ['_dbmmodule.c'], | ||||||
|                                        library_dirs=dblib_dir, |                                        library_dirs=dblib_dir, | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Skip Montanaro
						Skip Montanaro