kumquat-buildroot/package/pppd/pppd.mk
Fabrice Fontaine 075b01f2f7 package/pppd: bump to version 2.4.9
- Drop patch (already in version)
- Update hash of bsd-comp.c, ccp.c and passprompt.c (no change in
  license)
- rp-pppoe has been renamed to pppoe since
  b2c36e6c0e
- Manage EAP-TLS which depends on openssl and has been added and is
  enabled by default since
  e87fe1bbd3
  It should be noted that openssl is still mandatory with glibc because
  encrypt and setkey have been removed since version 2.28 (see commit
  b519bcafe7)
- musl is now supported
- Update indentation in hash file (two spaces)

https://github.com/paulusmack/ppp/blob/2.4.9/README

Fixes:
 - https://bugs.busybox.net/show_bug.cgi?id=13436

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2021-12-10 19:28:16 +01:00

125 lines
4.5 KiB
Makefile

################################################################################
#
# pppd
#
################################################################################
PPPD_VERSION = 2.4.9
PPPD_SITE = $(call github,paulusmack,ppp,ppp-$(PPPD_VERSION))
PPPD_LICENSE = LGPL-2.0+, LGPL, BSD-4-Clause, BSD-3-Clause, GPL-2.0+
PPPD_LICENSE_FILES = \
pppd/tdb.c pppd/plugins/pppoatm/COPYING \
pppdump/bsd-comp.c pppd/ccp.c pppd/plugins/passprompt.c
PPPD_CPE_ID_VENDOR = samba
PPPD_CPE_ID_PRODUCT = ppp
PPPD_SELINUX_MODULES = ppp
PPPD_MAKE_OPTS = HAVE_INET6=y
ifeq ($(BR2_PACKAGE_OPENSSL),y)
PPPD_DEPENDENCIES += openssl
PPPD_MAKE_OPTS += USE_EAPTLS=y
else
PPPD_MAKE_OPTS += \
USE_CRYPT=y \
USE_EAPTLS=
endif
PPPD_INSTALL_STAGING = YES
PPPD_TARGET_BINS = chat pppd pppdump pppstats
PPPD_RADIUS_CONF = \
dictionary dictionary.ascend dictionary.compat \
dictionary.merit dictionary.microsoft \
issue port-id-map realms servers radiusclient.conf
ifeq ($(BR2_PACKAGE_PPPD_FILTER),y)
PPPD_DEPENDENCIES += libpcap
PPPD_MAKE_OPTS += FILTER=y
endif
# pppd bundles some but not all of the needed kernel headers. The embedded
# if_pppol2tp.h is unfortunately not compatible with kernel headers > 2.6.34,
# and has been part of the kernel headers since 2.6.23, so drop it
define PPPD_DROP_INTERNAL_IF_PPOL2TP_H
$(RM) $(@D)/include/linux/if_pppol2tp.h
endef
PPPD_POST_EXTRACT_HOOKS += PPPD_DROP_INTERNAL_IF_PPOL2TP_H
# pppd defaults to /etc/ppp/resolv.conf, which not be writable and is
# definitely not useful since the C library only uses
# /etc/resolv.conf. Therefore, we change pppd to use /etc/resolv.conf
# instead.
define PPPD_SET_RESOLV_CONF
$(SED) 's,ppp/resolv.conf,resolv.conf,' $(@D)/pppd/pathnames.h
endef
ifeq ($(BR2_PACKAGE_PPPD_OVERWRITE_RESOLV_CONF),y)
PPPD_POST_EXTRACT_HOOKS += PPPD_SET_RESOLV_CONF
endif
define PPPD_CONFIGURE_CMDS
$(SED) 's/FILTER=y/#FILTER=y/' $(PPPD_DIR)/pppd/Makefile.linux
$(SED) 's/ifneq ($$(wildcard \/usr\/include\/pcap-bpf.h),)/ifdef FILTER/' $(PPPD_DIR)/*/Makefile.linux
( cd $(@D); $(TARGET_MAKE_ENV) ./configure --prefix=/usr )
endef
define PPPD_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" COPTS="$(TARGET_CFLAGS)" \
-C $(@D) $(PPPD_MAKE_OPTS)
endef
ifeq ($(BR2_PACKAGE_PPPD_RADIUS),y)
define PPPD_INSTALL_RADIUS
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radattr.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radattr.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radius.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radius.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radrealms.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radrealms.so
for m in $(PPPD_RADIUS_CONF); do \
$(INSTALL) -m 644 -D $(PPPD_DIR)/pppd/plugins/radius/etc/$$m \
$(TARGET_DIR)/etc/ppp/radius/$$m; \
done
$(SED) 's:/usr/local/etc:/etc:' \
$(TARGET_DIR)/etc/ppp/radius/radiusclient.conf
$(SED) 's:/usr/local/sbin:/usr/sbin:' \
$(TARGET_DIR)/etc/ppp/radius/radiusclient.conf
$(SED) 's:/etc/radiusclient:/etc/ppp/radius:g' \
$(TARGET_DIR)/etc/ppp/radius/*
endef
endif
define PPPD_INSTALL_TARGET_CMDS
for sbin in $(PPPD_TARGET_BINS); do \
$(INSTALL) -D $(PPPD_DIR)/$$sbin/$$sbin \
$(TARGET_DIR)/usr/sbin/$$sbin; \
done
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/minconn.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/minconn.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/passprompt.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/passprompt.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/passwordfd.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/passwordfd.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppoatm/pppoatm.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/pppoatm.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppoe/pppoe.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/pppoe.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppoe/pppoe-discovery \
$(TARGET_DIR)/usr/sbin/pppoe-discovery
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/winbind.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/winbind.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppol2tp/openl2tp.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/openl2tp.so
$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppol2tp/pppol2tp.so \
$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/pppol2tp.so
$(INSTALL) -D -m 0755 $(PPPD_DIR)/scripts/pon $(TARGET_DIR)/usr/bin/pon
$(INSTALL) -D -m 0755 $(PPPD_DIR)/scripts/poff $(TARGET_DIR)/usr/bin/poff
$(PPPD_INSTALL_RADIUS)
endef
define PPPD_INSTALL_STAGING_CMDS
$(TARGET_MAKE_ENV) $(MAKE) INSTROOT=$(STAGING_DIR)/ -C $(@D) $(PPPD_MAKE_OPTS) install-devel
endef
$(eval $(generic-package))