mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-19 13:48:06 +00:00
07730ff346
This reduces open coding and allows to easily add a knob to enable it treewide, where chosen packages can still opt-out via "no-lto". Some packages used LTO, but not the linker plugin. This unifies 'em all to attempt to produce better code. Quoting man gcc(1): "This improves the quality of optimization by exposing more code to the link-time optimizer." Also use -flto=auto instead of -flto=jobserver, as it's not guaranteed that every buildsystem uses +$(MAKE) correctly. Signed-off-by: Andre Heider <a.heider@gmail.com>
76 lines
1.7 KiB
Makefile
76 lines
1.7 KiB
Makefile
#
|
|
# Copyright (C) 2014 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:=libnftnl
|
|
PKG_CPE_ID:=cpe:/a:netfilter:libnftnl
|
|
PKG_VERSION:=1.2.5
|
|
PKG_RELEASE:=$(AUTORELEASE)
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
|
PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
|
|
PKG_HASH:=966de0a8120c8a53db859889749368bfb2cba0c4f0b4c1a30d264eccc45f1226
|
|
|
|
PKG_MAINTAINER:=Steven Barth <steven@midlink.org>
|
|
PKG_LICENSE:=GPL-2.0-or-later
|
|
PKG_LICENSE_FILES:=COPYING
|
|
|
|
PKG_INSTALL:=1
|
|
PKG_BUILD_PARALLEL:=1
|
|
PKG_BUILD_FLAGS:=lto
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
DISABLE_NLS:=
|
|
|
|
define Package/libnftnl
|
|
SECTION:=libs
|
|
CATEGORY:=Libraries
|
|
DEPENDS:=+libmnl
|
|
TITLE:=Low-level netlink library for the nf_tables subsystem
|
|
URL:=http://www.netfilter.org/projects/libnftnl
|
|
ABI_VERSION:=11
|
|
endef
|
|
|
|
define Package/libnftnl/description
|
|
libnftnl is a userspace library providing a low-level netlink
|
|
programming interface (API) to the in-kernel nf_tables subsystem.
|
|
endef
|
|
|
|
TARGET_CFLAGS += $(FPIC)
|
|
|
|
CONFIGURE_ARGS += \
|
|
--enable-static \
|
|
--enable-shared
|
|
|
|
define Build/InstallDev
|
|
$(INSTALL_DIR) $(1)/usr/include/libnftnl
|
|
$(CP) \
|
|
$(PKG_INSTALL_DIR)/usr/include/libnftnl/*.h \
|
|
$(1)/usr/include/libnftnl/
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
$(CP) \
|
|
$(PKG_INSTALL_DIR)/usr/lib/libnftnl.{so*,a,la} \
|
|
$(1)/usr/lib/
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
|
|
$(CP) \
|
|
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnftnl.pc \
|
|
$(1)/usr/lib/pkgconfig/
|
|
endef
|
|
|
|
define Package/libnftnl/install
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
$(CP) \
|
|
$(PKG_INSTALL_DIR)/usr/lib/libnftnl.so.* \
|
|
$(1)/usr/lib/
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,libnftnl))
|