 0e70f69a35
			
		
	
	0e70f69a35
	
	
	
		
			
			- Annotate versionless libraries (such as libubox, libuci etc.) with a fixed ABI_VERSION resembling the source date of the last incompatible change - Annotate packages shipping versioned library objects with ABI_VERSION - Stop shipping unversioned library symlinks for packages with ABI_VERSION Ref: https://openwrt.org/docs/guide-developer/package-policies#shared_libraries Ref: https://github.com/KanjiMonster/maintainer-tools/blob/master/check-abi-versions.pl Signed-off-by: Jo-Philipp Wich <jo@mein.io>
		
			
				
	
	
		
			79 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| #
 | |
| # Copyright (C) 2011-2012 OpenWrt.org
 | |
| #
 | |
| # This is free software, licensed under the GNU General Public License v2.
 | |
| # See /LICENSE for more information.
 | |
| #
 | |
| 
 | |
| include $(TOPDIR)/rules.mk
 | |
| 
 | |
| PKG_NAME:=libmnl
 | |
| PKG_VERSION:=1.0.4
 | |
| PKG_RELEASE:=2
 | |
| 
 | |
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 | |
| PKG_SOURCE_URL:= \
 | |
| 	http://www.netfilter.org/projects/libmnl/files \
 | |
| 	ftp://ftp.netfilter.org/pub/libmnl
 | |
| PKG_HASH:=171f89699f286a5854b72b91d06e8f8e3683064c5901fb09d954a9ab6f551f81
 | |
| 
 | |
| PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
 | |
| 
 | |
| PKG_FIXUP:=autoreconf
 | |
| PKG_INSTALL:=1
 | |
| PKG_LICENSE:=LGPL-2.1+
 | |
| 
 | |
| include $(INCLUDE_DIR)/package.mk
 | |
| 
 | |
| define Package/libmnl
 | |
|   SECTION:=libs
 | |
|   CATEGORY:=Libraries
 | |
|   TITLE:=Minimalistic user-space library for Netlink
 | |
|   URL:=http://www.netfilter.org/projects/libmnl/
 | |
|   ABI_VERSION:=0
 | |
| endef
 | |
| 
 | |
| define Package/libmnl/description
 | |
|  libmnl is a minimalistic user-space library oriented to Netlink developers.
 | |
|  There are a lot of common tasks in parsing, validating, constructing of
 | |
|  both the Netlink header and TLVs that are repetitive and easy to get wrong.
 | |
|  This library aims to provide simple helpers that allows you to re-use code
 | |
|  and to avoid re-inventing the wheel. The main features of this library are:
 | |
|  .
 | |
|  * Small: the shared library requires around 30KB for an x86-based computer.
 | |
|  .
 | |
|  * Simple: this library avoids complexity and elaborated abstractions that
 | |
|    tend to hide Netlink details.
 | |
|  .
 | |
|  * Easy to use: the library simplifies the work for Netlink-wise developers.
 | |
|    It provides functions to make socket handling, message building, validating,
 | |
|    parsing and sequence tracking, easier.
 | |
|  .
 | |
|  * Easy to re-use: you can use the library to build your own abstraction layer
 | |
|    on top of this library.
 | |
|  .
 | |
|  * Decoupling: the interdependency of the main bricks that compose the library
 | |
|    is reduced, i.e. the library provides many helpers, but the programmer is not
 | |
|    forced to use them.
 | |
| endef
 | |
| 
 | |
| CONFIGURE_ARGS+= \
 | |
| 	--enable-shared \
 | |
| 	--enable-static \
 | |
| 
 | |
| define Build/InstallDev
 | |
| 	$(INSTALL_DIR) $(1)/usr/include
 | |
| 	$(CP) $(PKG_INSTALL_DIR)/usr/include/libmnl $(1)/usr/include/
 | |
| 	$(INSTALL_DIR) $(1)/usr/lib
 | |
| 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmnl.{a,so*} $(1)/usr/lib/
 | |
| 	$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
 | |
| 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libmnl.pc $(1)/usr/lib/pkgconfig/
 | |
| endef
 | |
| 
 | |
| define Package/libmnl/install
 | |
| 	$(INSTALL_DIR) $(1)/usr/lib
 | |
| 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmnl.so.* $(1)/usr/lib/
 | |
| endef
 | |
| 
 | |
| $(eval $(call BuildPackage,libmnl))
 |