mirror of
				https://github.com/Telecominfraproject/wlan-cloud-lib-cppkafka.git
				synced 2025-11-04 04:27:48 +00:00 
			
		
		
		
	Merge pull request #190 from accelerated/pc_config
Support for generating pkg-config file
This commit is contained in:
		@@ -56,6 +56,10 @@ if (CPPKAFKA_RDKAFKA_STATIC_LIB)
 | 
				
			|||||||
    add_definitions("-DLIBRDKAFKA_STATICLIB")
 | 
					    add_definitions("-DLIBRDKAFKA_STATICLIB")
 | 
				
			||||||
endif()
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if (NOT CPPKAFKA_PKGCONFIG_DIR)
 | 
				
			||||||
 | 
					    set(CPPKAFKA_PKGCONFIG_DIR share/pkgconfig)
 | 
				
			||||||
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Look for Boost (just need boost.optional headers here)
 | 
					# Look for Boost (just need boost.optional headers here)
 | 
				
			||||||
find_package(Boost REQUIRED ${FIND_PACKAGE_QUIET})
 | 
					find_package(Boost REQUIRED ${FIND_PACKAGE_QUIET})
 | 
				
			||||||
find_package(RdKafka REQUIRED ${FIND_PACKAGE_QUIET})
 | 
					find_package(RdKafka REQUIRED ${FIND_PACKAGE_QUIET})
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -80,6 +80,7 @@ The following cmake options can be specified:
 | 
				
			|||||||
* `CPPKAFKA_BOOST_STATIC_LIBS` : Link with Boost static libraries. Default is `ON`.
 | 
					* `CPPKAFKA_BOOST_STATIC_LIBS` : Link with Boost static libraries. Default is `ON`.
 | 
				
			||||||
* `CPPKAFKA_BOOST_USE_MULTITHREADED` : Use Boost multi-threaded libraries. Default is `ON`.
 | 
					* `CPPKAFKA_BOOST_USE_MULTITHREADED` : Use Boost multi-threaded libraries. Default is `ON`.
 | 
				
			||||||
* `CPPKAFKA_RDKAFKA_STATIC_LIB` : Link to Rdkafka static library. Default is `OFF`.
 | 
					* `CPPKAFKA_RDKAFKA_STATIC_LIB` : Link to Rdkafka static library. Default is `OFF`.
 | 
				
			||||||
 | 
					* `CPPKAFKA_PKGCONFIG_DIR` : Install location of the .pc file. Default is `share/pkgconfig`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Example:
 | 
					Example:
 | 
				
			||||||
```Shell
 | 
					```Shell
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										14
									
								
								cppkafka.pc.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								cppkafka.pc.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					prefix=@CMAKE_INSTALL_PREFIX@
 | 
				
			||||||
 | 
					exec_prefix=${prefix}
 | 
				
			||||||
 | 
					libdir=${prefix}/lib
 | 
				
			||||||
 | 
					sharedlibdir=${prefix}/lib
 | 
				
			||||||
 | 
					includedir=${prefix}/include
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name: cppkafka
 | 
				
			||||||
 | 
					Url: https://github.com/mfontanini/cppkafka
 | 
				
			||||||
 | 
					Description: C++ wrapper library on top of RdKafka
 | 
				
			||||||
 | 
					Version: @CPPKAFKA_VERSION@
 | 
				
			||||||
 | 
					Requires: librdkafka >= 0.9.4
 | 
				
			||||||
 | 
					Requires.private:
 | 
				
			||||||
 | 
					Libs: -L${libdir} -L${sharedlibdir} -L@RDKAFKA_ROOT_DIR@/lib -lcppkafka -lrdkafka -lpthread -lrt -lssl -lcrypto -ldl -lz
 | 
				
			||||||
 | 
					Cflags: -I${includedir} -I${includedir}/cppkafka -I@RDKAFKA_INCLUDE_DIR@ -I@Boost_INCLUDE_DIRS@
 | 
				
			||||||
@@ -10,7 +10,7 @@ function(make_cppkafka_header)
 | 
				
			|||||||
    endforeach()
 | 
					    endforeach()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    #create file from template
 | 
					    #create file from template
 | 
				
			||||||
    configure_file(${PROJECT_SOURCE_DIR}/cppkafka.h.in ${CPPKAFKA_HEADER})
 | 
					    configure_file(${PROJECT_SOURCE_DIR}/cppkafka.h.in ${CPPKAFKA_HEADER} @ONLY)
 | 
				
			||||||
endfunction()
 | 
					endfunction()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Run file generation function
 | 
					# Run file generation function
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -47,3 +47,13 @@ install(
 | 
				
			|||||||
    ARCHIVE DESTINATION lib
 | 
					    ARCHIVE DESTINATION lib
 | 
				
			||||||
    COMPONENT dev
 | 
					    COMPONENT dev
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Generate package configuration file
 | 
				
			||||||
 | 
					set(PKG_CONFIG ${PROJECT_SOURCE_DIR}/package/cppkafka.pc)
 | 
				
			||||||
 | 
					configure_file(${PROJECT_SOURCE_DIR}/cppkafka.pc.in ${PKG_CONFIG} @ONLY)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					install(
 | 
				
			||||||
 | 
					    FILES ${PKG_CONFIG}
 | 
				
			||||||
 | 
					    DESTINATION ${CPPKAFKA_PKGCONFIG_DIR}
 | 
				
			||||||
 | 
					    COMPONENT pkgconfig
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user