Files
main/network/connection/ppp/actions.py
T

48 lines
1.6 KiB
Python

#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import get
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
def setup():
pisitools.cflags.add("-fPIC", "-D_GNU_SOURCE")
shelltools.copytree("%s/dhcp" % get.workDIR(), "pppd/plugins")
pisitools.dosed("pppd/plugins/dhcp/Makefile.linux", "^(CFLAGS=.+)\s-O2", "\\1 %s" % get.CFLAGS())
# Enable atm
pisitools.dosed("pppd/Makefile.linux", "^#(HAVE_LIBATM=yes)", "\\1")
# Enable pam
pisitools.dosed("pppd/Makefile.linux", "^#(USE_PAM=y)", "\\1")
# Enable CBCP
pisitools.dosed("pppd/Makefile.linux", "^#(CBCP=y)", "\\1")
# Enable IPv6
pisitools.dosed("pppd/Makefile.linux", "^#(HAVE_INET6)", "\\1")
# Enable dhcp
pisitools.dosed("pppd/plugins/Makefile.linux", "^(SUBDIRS\s:=.+)", "\\1 dhcp")
autotools.configure()
def build():
autotools.make()
def install():
# The build mechanism is crap. Don't remove \/usr from DESTDIR or else the paths will fail
autotools.rawInstall("DESTDIR=%s/usr INSTROOT=%s install-etcppp" % ((get.installDIR(),)*2))
# No suid libraries
shelltools.chmod("%s/usr/lib/pppd/%s/*.so" % (get.installDIR(),get.srcVERSION()), 0755)
# Install Radius config files
pisitools.insinto("/etc/radiusclient", "pppd/plugins/radius/etc/*")
# Create peers directory
pisitools.dodir("/run/ppp")
pisitools.dodir("/etc/ppp/peers")
pisitools.dodoc("Changes*", "README*", "FAQ")