Add an option to enable building with -fvisibility=hidden.
When this option is set gtest itself is built with -fvisibility=hidden with gcc and clang. This replicates MSVC's default behaviour with gcc and clang.
This commit is contained in:
		
							parent
							
								
									b9be8ead94
								
							
						
					
					
						commit
						667b177753
					
				@ -22,6 +22,11 @@ option(gtest_build_samples "Build gtest's sample programs." OFF)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
option(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF)
 | 
					option(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					option(
 | 
				
			||||||
 | 
					  gtest_hide_internal_symbols
 | 
				
			||||||
 | 
					  "Build gtest with internal symbols hidden in shared libraries."
 | 
				
			||||||
 | 
					  OFF)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build().
 | 
					# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build().
 | 
				
			||||||
include(cmake/hermetic_build.cmake OPTIONAL)
 | 
					include(cmake/hermetic_build.cmake OPTIONAL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -46,6 +51,11 @@ if (COMMAND set_up_hermetic_build)
 | 
				
			|||||||
  set_up_hermetic_build()
 | 
					  set_up_hermetic_build()
 | 
				
			||||||
endif()
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if (gtest_hide_internal_symbols)
 | 
				
			||||||
 | 
					  set(CMAKE_CXX_VISIBILITY_PRESET hidden)
 | 
				
			||||||
 | 
					  set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
 | 
				
			||||||
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Define helper functions and macros used by Google Test.
 | 
					# Define helper functions and macros used by Google Test.
 | 
				
			||||||
include(cmake/internal_utils.cmake)
 | 
					include(cmake/internal_utils.cmake)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user