mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 13:20:03 +00:00 
			
		
		
		
	externals: allow users to use system libenet (#7100)
This commit is contained in:
		
							parent
							
								
									597a2e8ead
								
							
						
					
					
						commit
						d3ce43782d
					
				
					 3 changed files with 45 additions and 2 deletions
				
			
		
							
								
								
									
										10
									
								
								externals/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								externals/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							|  | @ -228,8 +228,14 @@ else() | |||
| endif() | ||||
| 
 | ||||
| # ENet | ||||
| add_subdirectory(enet) | ||||
| target_include_directories(enet INTERFACE ./enet/include) | ||||
| if(USE_SYSTEM_ENET) | ||||
|     find_package(libenet REQUIRED) | ||||
|     add_library(enet INTERFACE) | ||||
|     target_link_libraries(enet INTERFACE libenet::libenet) | ||||
| else() | ||||
|     add_subdirectory(enet) | ||||
|     target_include_directories(enet INTERFACE ./enet/include) | ||||
| endif() | ||||
| 
 | ||||
| # Cubeb | ||||
| if (ENABLE_CUBEB) | ||||
|  |  | |||
|  | @ -19,6 +19,7 @@ option(USE_SYSTEM_FDK_AAC_HEADERS "Use the system fdk-aac headers (instead of th | |||
| option(USE_SYSTEM_FFMPEG_HEADERS "Use the system FFmpeg headers (instead of the bundled one)" OFF) | ||||
| option(USE_SYSTEM_GLSLANG "Use the system glslang and SPIR-V libraries (instead of the bundled ones)" OFF) | ||||
| option(USE_SYSTEM_ZSTD "Use the system Zstandard library (instead of the bundled one)" OFF) | ||||
| option(USE_SYSTEM_ENET "Use the system libenet (instead of the bundled one)" OFF) | ||||
| 
 | ||||
| # Qt and MoltenVK are handled separately | ||||
| CMAKE_DEPENDENT_OPTION(DISABLE_SYSTEM_SDL2 "Disable system SDL2" OFF "USE_SYSTEM_LIBS" OFF) | ||||
|  | @ -37,6 +38,7 @@ CMAKE_DEPENDENT_OPTION(DISABLE_SYSTEM_FDK_AAC_HEADERS "Disable system fdk_aac" O | |||
| CMAKE_DEPENDENT_OPTION(DISABLE_SYSTEM_FFMPEG_HEADERS "Disable system ffmpeg" OFF "USE_SYSTEM_LIBS" OFF) | ||||
| CMAKE_DEPENDENT_OPTION(DISABLE_SYSTEM_GLSLANG "Disable system glslang" OFF "USE_SYSTEM_LIBS" OFF) | ||||
| CMAKE_DEPENDENT_OPTION(DISABLE_SYSTEM_ZSTD "Disable system Zstandard" OFF "USE_SYSTEM_LIBS" OFF) | ||||
| CMAKE_DEPENDENT_OPTION(DISABLE_SYSTEM_ENET "Disable system libenet" OFF "USE_SYSTEM_LIBS" OFF) | ||||
| 
 | ||||
| set(LIB_VAR_LIST | ||||
|     SDL2 | ||||
|  | @ -55,6 +57,7 @@ set(LIB_VAR_LIST | |||
|     FFMPEG_HEADERS | ||||
|     GLSLANG | ||||
|     ZSTD | ||||
|     ENET | ||||
|     ) | ||||
| 
 | ||||
| # First, check that USE_SYSTEM_XXX is not used with USE_SYSTEM_LIBS | ||||
|  |  | |||
							
								
								
									
										34
									
								
								externals/cmake-modules/Findlibenet.cmake
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								externals/cmake-modules/Findlibenet.cmake
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,34 @@ | |||
| if(NOT libenet_FOUND) | ||||
|     pkg_check_modules(ENET_TMP libenet) | ||||
| 
 | ||||
|     find_path(libenet_INCLUDE_DIRS NAMES enet.h PATH_SUFFIXES enet | ||||
|             PATHS | ||||
|             ${ENET_TMP_INCLUDE_DIRS} | ||||
|             /usr/include | ||||
|             /usr/local/include | ||||
|             ) | ||||
| 
 | ||||
|     find_library(libenet_LIBRARY_DIRS NAMES enet | ||||
|             PATHS | ||||
|             ${ENET_TMP_LIBRARY_DIRS} | ||||
|             /usr/lib | ||||
|             /usr/local/lib | ||||
|             ) | ||||
| 
 | ||||
|     if(libenet_INCLUDE_DIRS AND libenet_LIBRARY_DIRS) | ||||
|         set(libenet_FOUND TRUE CACHE INTERNAL "Found libenet") | ||||
|         message(STATUS "Found libenet ${libenet_LIBRARY_DIRS}, ${libenet_INCLUDE_DIRS}") | ||||
|     else() | ||||
|         set(libenet_FOUND FALSE CACHE INTERNAL "Found libenet") | ||||
|         message(STATUS "Libenet not found.") | ||||
|     endif() | ||||
| endif() | ||||
| 
 | ||||
| if(libenet_FOUND AND NOT TARGET libenet::libenet) | ||||
|     add_library(libenet::libenet UNKNOWN IMPORTED) | ||||
|     set_target_properties(libenet::libenet PROPERTIES | ||||
|             INCLUDE_DIRECTORIES ${libenet_INCLUDE_DIRS} | ||||
|             INTERFACE_LINK_LIBRARIES ${libenet_LIBRARY_DIRS} | ||||
|             IMPORTED_LOCATION ${libenet_LIBRARY_DIRS} | ||||
|             ) | ||||
| endif() | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue