X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=package%2Fnetwork%2Fservices%2Fdnsmasq%2FMakefile;h=3aff519e6bc51c1a2b06098a02386cde90653d7a;hb=c2bd4695211e78da3a7899f8ee386ff06c3501e8;hp=467c93494ea45d291714cbe4aac74971395316a6;hpb=dd161ae62b19ee40db81a544b879eeaf22766e58;p=openwrt%2Fstaging%2Flynxis%2Fomap.git diff --git a/package/network/services/dnsmasq/Makefile b/package/network/services/dnsmasq/Makefile index 467c93494e..3aff519e6b 100644 --- a/package/network/services/dnsmasq/Makefile +++ b/package/network/services/dnsmasq/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2013 OpenWrt.org +# Copyright (C) 2006-2016 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,28 +8,35 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dnsmasq -PKG_VERSION:=2.66 -PKG_RELEASE:=2 +PKG_VERSION:=2.76 +PKG_RELEASE:=3 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq -PKG_MD5SUM:=c5eb8fb88847a5e9bf18db67c74efd47 +PKG_MD5SUM:=00f5ee66b4e4b7f14538bf62ae3c9461 -PKG_LICENSE:=GPLv2 +PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_CONFIG_DEPENDS:=CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_dhcpv6 \ + CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_dnssec \ + CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_auth \ + CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_ipset \ + CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_conntrack \ + CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_broken_rtc include $(INCLUDE_DIR)/package.mk define Package/dnsmasq/Default SECTION:=net CATEGORY:=Base system - TITLE:=A lightweight DNS and DHCP server + TITLE:=DNS and DHCP server URL:=http://www.thekelleys.org.uk/dnsmasq/ + USERID:=dnsmasq=453:dnsmasq=453 endef define Package/dnsmasq @@ -40,10 +47,19 @@ endef define Package/dnsmasq-dhcpv6 $(call Package/dnsmasq/Default) TITLE += (with DHCPv6 support) - DEPENDS:=@IPV6 +kmod-ipv6 + DEPENDS:=@IPV6 VARIANT:=dhcpv6 endef +define Package/dnsmasq-full +$(call Package/dnsmasq/Default) + TITLE += (with DNSSEC, DHCPv6, Auth DNS, IPset, Conntrack enabled by default) + DEPENDS:=+PACKAGE_dnsmasq_full_dnssec:libnettle \ + +PACKAGE_dnsmasq_full_ipset:kmod-ipt-ipset \ + +PACKAGE_dnsmasq_full_conntrack:libnetfilter-conntrack + VARIANT:=full +endef + define Package/dnsmasq/description It is intended to provide coupled DNS and DHCP service to a LAN. endef @@ -54,25 +70,71 @@ $(call Package/dnsmasq/description) This is a variant with DHCPv6 support endef +define Package/dnsmasq-full/description +$(call Package/dnsmasq/description) + +This is a fully configurable variant with DHCPv6, DNSSEC, Authoritative DNS and +IPset, Conntrack support enabled by default. +endef + define Package/dnsmasq/conffiles /etc/config/dhcp /etc/dnsmasq.conf endef +define Package/dnsmasq-full/config + if PACKAGE_dnsmasq-full + config PACKAGE_dnsmasq_full_dhcpv6 + bool "Build with DHCPv6 support." + depends on IPV6 + default y + config PACKAGE_dnsmasq_full_dnssec + bool "Build with DNSSEC support." + default y + config PACKAGE_dnsmasq_full_auth + bool "Build with the facility to act as an authoritative DNS server." + default y + config PACKAGE_dnsmasq_full_ipset + bool "Build with IPset support." + default y + config PACKAGE_dnsmasq_full_conntrack + bool "Build with Conntrack support." + default y + config PACKAGE_dnsmasq_full_broken_rtc + bool "Build with HAVE_BROKEN_RTC." + default n + endif +endef + Package/dnsmasq-dhcpv6/conffiles = $(Package/dnsmasq/conffiles) +Package/dnsmasq-full/conffiles = $(Package/dnsmasq/conffiles) + +TARGET_CFLAGS += -ffunction-sections -fdata-sections +TARGET_LDFLAGS += -Wl,--gc-sections -TARGET_CFLAGS += \ - -ffunction-sections -fdata-sections \ - $(if $(CONFIG_IPV6),,-DNO_IPV6) -DNO_IPSET -DNO_AUTH +COPTS = $(if $(CONFIG_IPV6),,-DNO_IPV6) ifeq ($(BUILD_VARIANT),nodhcpv6) - TARGET_CFLAGS += -DNO_DHCP6 + COPTS += -DNO_DHCP6 +endif + +ifeq ($(BUILD_VARIANT),full) + COPTS += $(if $(CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_dhcpv6),,-DNO_DHCP6) \ + $(if $(CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_dnssec),-DHAVE_DNSSEC) \ + $(if $(CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_auth),,-DNO_AUTH) \ + $(if $(CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_ipset),,-DNO_IPSET) \ + $(if $(CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_conntrack),-DHAVE_CONNTRACK,) \ + $(if $(CONFIG_PACKAGE_dnsmasq_$(BUILD_VARIANT)_broken_rtc),-DHAVE_BROKEN_RTC) + COPTS += $(if $(CONFIG_LIBNETTLE_MINI),-DNO_GMP,) +else + COPTS += -DNO_AUTH -DNO_IPSET endif MAKE_FLAGS := \ $(TARGET_CONFIGURE_OPTS) \ CFLAGS="$(TARGET_CFLAGS)" \ - LDFLAGS="-Wl,--gc-sections" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + COPTS="$(COPTS)" \ PREFIX="/usr" define Package/dnsmasq/install @@ -83,9 +145,22 @@ define Package/dnsmasq/install $(INSTALL_DATA) ./files/dnsmasq.conf $(1)/etc/dnsmasq.conf $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/dnsmasq.init $(1)/etc/init.d/dnsmasq + $(INSTALL_DIR) $(1)/etc/hotplug.d/iface + $(INSTALL_DATA) ./files/dnsmasq.hotplug $(1)/etc/hotplug.d/iface/25-dnsmasq + $(INSTALL_DIR) $(1)/etc/hotplug.d/ntp + $(INSTALL_DATA) ./files/dnsmasqsec.hotplug $(1)/etc/hotplug.d/ntp/25-dnsmasqsec endef Package/dnsmasq-dhcpv6/install = $(Package/dnsmasq/install) +define Package/dnsmasq-full/install +$(call Package/dnsmasq/install,$(1)) +ifneq ($(CONFIG_PACKAGE_dnsmasq_full_dnssec),) + $(INSTALL_DIR) $(1)/usr/share/dnsmasq + $(INSTALL_DATA) $(PKG_BUILD_DIR)/trust-anchors.conf $(1)/usr/share/dnsmasq +endif +endef + $(eval $(call BuildPackage,dnsmasq)) $(eval $(call BuildPackage,dnsmasq-dhcpv6)) +$(eval $(call BuildPackage,dnsmasq-full))