packages/net/tinc/Makefile
Jo-Philipp Wich 4004ec2c75 tinc: fix musl compatibility
Let configure include `sys/if_tun.h` when testing for `netinet/if_ether.h`
to detect the Kernel/libc header conflict on musl.

After this patch, configure will correctly detect `netinet/if_ether.h` as
unusable and the subsequent compilation will not attempt to use it.

Fixes the following compatibility error:

	In file included from .../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/linux/if_tun.h:20:0,
	                 from linux/device.c:24:
	.../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/linux/if_ether.h:137:8: error: redefinition of 'struct ethhdr'
	 struct ethhdr {
	        ^
	In file included from .../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/net/ethernet.h:10:0,
	                 from linux/../have.h:180,
	                 from linux/../system.h:26,
	                 from linux/device.c:21:
	.../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/netinet/if_ether.h:96:8: note: originally defined here
	 struct ethhdr {
	        ^
	make[5]: *** [linux/device.o] Error 1

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-06-18 19:51:59 +02:00

60 lines
1.5 KiB
Makefile

#
# Copyright (C) 2007-2015 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:=tinc
PKG_VERSION:=1.0.25
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.tinc-vpn.org/packages
PKG_MD5SUM:=0b91b693f7cf76f481b547d0c86f9578
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
define Package/tinc
SECTION:=net
CATEGORY:=Network
DEPENDS:=+liblzo +libopenssl +kmod-tun
TITLE:=VPN tunneling daemon
URL:=http://www.tinc-vpn.org/
MAINTAINER:=Saverio Proto <zioproto@gmail.com>
SUBMENU:=VPN
endef
define Package/tinc/description
tinc is a Virtual Private Network (VPN) daemon that uses tunnelling and
encryption to create a secure private network between hosts on the Internet.
endef
TARGET_CFLAGS += -std=gnu99
CONFIGURE_ARGS += \
--with-kernel="$(LINUX_DIR)" \
--with-zlib="$(STAGING_DIR)/usr" \
--with-lzo-include="$(STAGING_DIR)/usr/include/lzo"
define Package/tinc/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tincd $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/etc/init.d/
$(INSTALL_BIN) files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME)
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_CONF) files/$(PKG_NAME).config $(1)/etc/config/$(PKG_NAME)
$(INSTALL_DIR) $(1)/etc/tinc
$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
$(INSTALL_DATA) files/tinc.upgrade $(1)/lib/upgrade/keep.d/tinc
endef
define Package/tinc/conffiles
/etc/config/tinc
endef
$(eval $(call BuildPackage,tinc))