123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #
- # Copyright (C) 2016 Dan Luedtke <mail@danrl.com>
- #
- # This is free software, licensed under the GNU General Public License v2.
- # See /LICENSE for more information.
- include $(TOPDIR)/rules.mk
- PKG_NAME:=jool
- PKG_VERSION:=2016.12.17
- PKG_RELEASE:=3
- PKG_LICENSE:=GPL-3.0
- PKG_LICENSE_FILES:=COPYING
- PKG_SOURCE_PROTO:=git
- PKG_SOURCE_URL:=https://github.com/NICMx/Jool.git
- PKG_SOURCE_VERSION:=66a791c90751d7941b08c142babe1deec73d0996
- PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
- PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.xz
- PKG_BUILD_DIR=$(KERNEL_BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
- PKG_BUILD_PARALLEL:=1
- PKG_BUILD_DEPENDS:=USE_UCLIBC:argp-standalone USE_MUSL:argp-standalone
- PKG_FIXUP:=autoreconf
- include $(INCLUDE_DIR)/kernel.mk
- include $(INCLUDE_DIR)/package.mk
- MAKE_PATH:=usr
- CONFIGURE_PATH:=usr
- define Build/Compile
- $(MAKE) -C "$(LINUX_DIR)" \
- KERNEL_DIR="$(LINUX_DIR)" \
- ARCH="$(LINUX_KARCH)" \
- CROSS_COMPILE="$(TARGET_CROSS)" \
- SUBDIRS="$(PKG_BUILD_DIR)/mod/stateful" \
- V="$(V)" \
- modules
- $(MAKE) -C "$(LINUX_DIR)" \
- KERNEL_DIR="$(LINUX_DIR)" \
- ARCH="$(LINUX_KARCH)" \
- CROSS_COMPILE="$(TARGET_CROSS)" \
- SUBDIRS="$(PKG_BUILD_DIR)/mod/stateless" \
- V="$(V)" \
- modules
- $(call Build/Compile/Default)
- endef
- define Package/jool/Default
- SECTION:=net
- CATEGORY:=Network
- URL:=https://www.jool.mx
- MAINTAINER:=Dan Luedtke <mail@danrl.com>
- endef
- define Package/jool/Default/description
- Jool is an Open Source SIIT and NAT64 for Linux.
- endef
- define Package/jool
- $(call Package/jool/Default)
- TITLE:=Jool meta-package
- DEPENDS:=+kmod-jool +jool-tools
- endef
- define Package/jool/description
- $(call Package/jool/Default/description)
- endef
- define KernelPackage/jool
- SECTION:=kernel
- CATEGORY:=Kernel modules
- SUBMENU:=Network Support
- TITLE:=Jool kernel module
- DEPENDS:= \
- @IPV6 \
- +kmod-crypto-md5 \
- +kmod-nf-conntrack \
- +kmod-nf-conntrack6
- FILES:= \
- $(PKG_BUILD_DIR)/mod/stateful/jool.$(LINUX_KMOD_SUFFIX) \
- $(PKG_BUILD_DIR)/mod/stateless/jool_siit.$(LINUX_KMOD_SUFFIX)
- endef
- define KernelPackage/jool/description
- $(call Package/jool/Default/description)
- This package provides the kernel module for Jool.
- endef
- define Package/jool-tools
- $(call Package/jool/Default)
- TITLE:=Jool userspace control programs
- DEPENDS:=+libnl +ethtool
- endef
- define Package/jool-tools/description
- $(call Package/jool/Default/description)
- This package provides the userspace control programs for Jool.
- endef
- define Package/jool-tools/install
- $(INSTALL_DIR) $(1)/usr/sbin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/stateful/jool $(1)/usr/sbin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/stateless/jool_siit $(1)/usr/sbin/
- endef
- $(eval $(call BuildPackage,jool))
- $(eval $(call KernelPackage,jool))
- $(eval $(call BuildPackage,jool-tools))
|