mirror of
				https://git.tukaani.org/xz.git
				synced 2025-10-30 21:12:55 +00:00 
			
		
		
		
	Build: Let the users override the symbol versioning variant.
There are cases when the users want to decide themselves whether they want to have the generic (even on GNU/Linux) or the linux (even if we do not recommend that) symbol versioning variant. The former might be needed to circumvent compiler issues (i.e. the compiler does not support all features that are required for the linux versioning), the latter might help in overriding the assumptions made in the configure script.
This commit is contained in:
		
							parent
							
								
									a4f2e20d84
								
							
						
					
					
						commit
						f56ed6fac6
					
				
							
								
								
									
										21
									
								
								configure.ac
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								configure.ac
									
									
									
									
									
								
							| @ -716,6 +716,7 @@ elif test "x$enable_shared" = xno ; then | |||||||
| 	enable_symbol_versions=no | 	enable_symbol_versions=no | ||||||
| 	AC_MSG_RESULT([no (not building a shared library)]) | 	AC_MSG_RESULT([no (not building a shared library)]) | ||||||
| else | else | ||||||
|  | 	if test "x$enable_symbol_versions" = xyes ; then | ||||||
| 		case "$host_cpu-$host_os" in | 		case "$host_cpu-$host_os" in | ||||||
| 			microblaze*) | 			microblaze*) | ||||||
| 				# GCC 12 on MicroBlaze doesn't support __symver__ | 				# GCC 12 on MicroBlaze doesn't support __symver__ | ||||||
| @ -726,6 +727,15 @@ else | |||||||
| 				enable_symbol_versions=generic | 				enable_symbol_versions=generic | ||||||
| 				;; | 				;; | ||||||
| 			*-linux*) | 			*-linux*) | ||||||
|  | 				enable_symbol_versions=linux | ||||||
|  | 				;; | ||||||
|  | 			*) | ||||||
|  | 				enable_symbol_versions=generic | ||||||
|  | 				;; | ||||||
|  | 		esac | ||||||
|  | 	fi | ||||||
|  | 
 | ||||||
|  | 	if test "x$enable_symbol_versions" = xlinux ; then | ||||||
| 		case "$pic_mode-$enable_static" in | 		case "$pic_mode-$enable_static" in | ||||||
| 			default-*) | 			default-*) | ||||||
| 				# Use symvers if PIC is defined. | 				# Use symvers if PIC is defined. | ||||||
| @ -746,7 +756,6 @@ else | |||||||
|     possibly picking only src/liblzma/.libs/liblzma.a from the static build.]) |     possibly picking only src/liblzma/.libs/liblzma.a from the static build.]) | ||||||
| 				;; | 				;; | ||||||
| 		esac | 		esac | ||||||
| 			enable_symbol_versions=linux |  | ||||||
| 		AC_DEFINE_UNQUOTED([HAVE_SYMBOL_VERSIONS_LINUX], | 		AC_DEFINE_UNQUOTED([HAVE_SYMBOL_VERSIONS_LINUX], | ||||||
| 			[$have_symbol_versions_linux], | 			[$have_symbol_versions_linux], | ||||||
| 			[Define to 1 to if GNU/Linux-specific details | 			[Define to 1 to if GNU/Linux-specific details | ||||||
| @ -757,11 +766,11 @@ else | |||||||
| 			time with Libtool if neither --with-pic nor | 			time with Libtool if neither --with-pic nor | ||||||
| 			--without-pic is used). This define must be | 			--without-pic is used). This define must be | ||||||
| 			used together with liblzma_linux.map.]) | 			used together with liblzma_linux.map.]) | ||||||
| 			;; | 	elif test "x$enable_symbol_versions" != xgeneric ; then | ||||||
| 		*) | 		AC_MSG_RESULT([]) | ||||||
| 			enable_symbol_versions=generic | 		AC_MSG_ERROR( | ||||||
| 			;; | 			[unknown symbol versioning variant '$enable_symbol_versions']) | ||||||
| 	esac | 	fi | ||||||
| 	AC_MSG_RESULT([yes ($enable_symbol_versions)]) | 	AC_MSG_RESULT([yes ($enable_symbol_versions)]) | ||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user