mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	cmake: Search for both libmsgpackc and libmsgpack #4075
libmsgpack was the old C++ library provided by msgpack-c. The C library is libmsgpackc. The C++ support became header-only, but there was a bug (msgpack/msgpack-c#395) wherein using msgpack-c's CMake build system would only install libmsgpack instead of libmsgpackc. Searching for both libraries, but preferring libmsgpackc, allows for building against older msgpack-c releases and prepares for the upcoming msgpack-c release which fixes the aforementioned issues. Signed-off-by: James McCoy <jamessan@jamessan.com>
This commit is contained in:
		 James McCoy
					James McCoy
				
			
				
					committed by
					
						 Florian Walch
						Florian Walch
					
				
			
			
				
	
			
			
			 Florian Walch
						Florian Walch
					
				
			
						parent
						
							bcbcf235f6
						
					
				
				
					commit
					feb70192a8
				
			| @@ -7,7 +7,7 @@ | |||||||
| if(NOT MSGPACK_USE_BUNDLED) | if(NOT MSGPACK_USE_BUNDLED) | ||||||
|   find_package(PkgConfig) |   find_package(PkgConfig) | ||||||
|   if (PKG_CONFIG_FOUND) |   if (PKG_CONFIG_FOUND) | ||||||
|     pkg_check_modules(PC_MSGPACK QUIET msgpack) |     pkg_search_module(PC_MSGPACK QUIET msgpackc msgpack) | ||||||
|   endif() |   endif() | ||||||
| else() | else() | ||||||
|   set(PC_MSGPACK_INCLUDEDIR) |   set(PC_MSGPACK_INCLUDEDIR) | ||||||
| @@ -23,13 +23,14 @@ find_path(MSGPACK_INCLUDE_DIR msgpack.h | |||||||
|   HINTS ${PC_MSGPACK_INCLUDEDIR} ${PC_MSGPACK_INCLUDE_DIRS} |   HINTS ${PC_MSGPACK_INCLUDEDIR} ${PC_MSGPACK_INCLUDE_DIRS} | ||||||
|   ${LIMIT_SEARCH}) |   ${LIMIT_SEARCH}) | ||||||
|  |  | ||||||
| # If we're asked to use static linkage, add libmsgpack.a as a preferred library name. | # If we're asked to use static linkage, add libmsgpack{,c}.a as a preferred library name. | ||||||
| if(MSGPACK_USE_STATIC) | if(MSGPACK_USE_STATIC) | ||||||
|   list(APPEND MSGPACK_NAMES |   list(APPEND MSGPACK_NAMES | ||||||
|  |     "${CMAKE_STATIC_LIBRARY_PREFIX}msgpackc${CMAKE_STATIC_LIBRARY_SUFFIX}" | ||||||
|     "${CMAKE_STATIC_LIBRARY_PREFIX}msgpack${CMAKE_STATIC_LIBRARY_SUFFIX}") |     "${CMAKE_STATIC_LIBRARY_PREFIX}msgpack${CMAKE_STATIC_LIBRARY_SUFFIX}") | ||||||
| endif() | endif() | ||||||
|  |  | ||||||
| list(APPEND MSGPACK_NAMES msgpack) | list(APPEND MSGPACK_NAMES msgpackc msgpack) | ||||||
|  |  | ||||||
| find_library(MSGPACK_LIBRARY NAMES ${MSGPACK_NAMES} | find_library(MSGPACK_LIBRARY NAMES ${MSGPACK_NAMES} | ||||||
|   HINTS ${PC_MSGPACK_LIBDIR} ${PC_MSGPACK_LIBRARY_DIRS} |   HINTS ${PC_MSGPACK_LIBDIR} ${PC_MSGPACK_LIBRARY_DIRS} | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user