add support for multiple /etc/ppp/ip-{up,down} scripts.
[openwrt/svn-archive/archive.git] / openwrt / package / ppp / Makefile
index eec2bd8462784146283417c983b491b4f68eaac9..c2c7c9694031ff24f8b72100663249ee4d055849 100644 (file)
@@ -39,6 +39,11 @@ $(eval $(call PKG_mod_template,PPP_MOD_PPPOA,pppoatm))
 $(eval $(call PKG_mod_template,PPP_MOD_PPPOE,rp-pppoe))
 $(eval $(call PKG_mod_template,PPP_MOD_RADIUS,radius))
 
+PKG_DEPEND:="kmod-ppp"
+ifeq ($(BR2_PACKAGE_PPP_WITH_FILTER),y)
+ENABLE_FILTER:="PRECOMPILED_FILTER=1"
+endif
+
 $(PKG_BUILD_DIR)/.configured:
        (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
                $(TARGET_CONFIGURE_OPTS) \
@@ -73,22 +78,30 @@ $(PKG_BUILD_DIR)/.built:
                CC=$(TARGET_CC) \
                COPTS="$(TARGET_CFLAGS)" \
                HAVE_INET6="1" \
+               $(ENABLE_FILTER) \
+               STAGING_DIR=$(STAGING_DIR) \
                DESTDIR="$(PKG_INSTALL_DIR)/usr" \
                all install
        touch $@
 
+ifeq ($(BR2_PACKAGE_PPP_WITH_FILTER),y)
+INSTALL_FILTER=install -m0644 ./files/etc/ppp/filter $(IDIR_PPP)/etc/ppp/
+endif
+
 $(IPKG_PPP):
        install -d -m0755 $(IDIR_PPP)/etc/ppp
        ln -sf /tmp/resolv.conf $(IDIR_PPP)/etc/ppp/resolv.conf
        install -m0600 ./files/etc/ppp/chap-secrets $(IDIR_PPP)/etc/ppp/
        install -m0644 ./files/etc/ppp/options $(IDIR_PPP)/etc/ppp/
+       $(INSTALL_FILTER)
        install -m0755 ./files/etc/ppp/ip-up $(IDIR_PPP)/etc/ppp/
+       install -d -m0755 ./files/etc/ppp/ip-up.d
        install -m0755 ./files/etc/ppp/ip-down $(IDIR_PPP)/etc/ppp/
-       install -d -m0755 $(IDIR_PPP)/etc/ppp/peers
-       install -m0644 ./files/etc/ppp/peers/sample $(IDIR_PPP)/etc/ppp/peers/
+       install -d -m0755 ./files/etc/ppp/ip-down.d
        install -d -m0755 $(IDIR_PPP)/usr/sbin
        install -m0755 $(PKG_INSTALL_DIR)/usr/sbin/pppd $(IDIR_PPP)/usr/sbin/
        install -d -m0755 $(IDIR_PPP)/usr/lib/pppd
+       echo "Depends: $(PKG_DEPEND)" >> $(IDIR_PPP)/CONTROL/control
        $(RSTRIP) $(IDIR_PPP)
        $(IPKG_BUILD) $(IDIR_PPP) $(PACKAGE_DIR)
        
@@ -105,7 +118,6 @@ $(IDIR_PPP_MOD_PPPOE)/sbin/ifup.pppoe:
 $(IPKG_PPP_MOD_PPPOE): $(IDIR_PPP_MOD_PPPOE)/sbin/ifup.pppoe
 
 $(IDIR_PPP_MOD_RADIUS)/etc/ppp/radius.conf:
-
        install -d -m0755 $(IDIR_PPP_MOD_RADIUS)/etc/ppp
        install -m644 ./files/etc/ppp/radius.conf $(IDIR_PPP_MOD_RADIUS)/etc/ppp/
        install -d -m0755 $(IDIR_PPP_MOD_RADIUS)/etc/ppp/radius
@@ -118,19 +130,19 @@ $(IPKG_PPP_MOD_RADIUS): $(IDIR_PPP_MOD_RADIUS)/etc/ppp/radius.conf
 
 $(IPKG_CHAT):
        install -d -m0755 $(IDIR_CHAT)/usr/sbin
-       cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/chat $(IDIR_CHAT)/usr/sbin/
+       $(CP) $(PKG_INSTALL_DIR)/usr/sbin/chat $(IDIR_CHAT)/usr/sbin/
        $(RSTRIP) $(IDIR_CHAT)
        $(IPKG_BUILD) $(IDIR_CHAT) $(PACKAGE_DIR)
 
 $(IPKG_PPPDUMP):
        install -d -m0755 $(IDIR_PPPDUMP)/usr/sbin
-       cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/pppdump $(IDIR_PPPDUMP)/usr/sbin/
+       $(CP) $(PKG_INSTALL_DIR)/usr/sbin/pppdump $(IDIR_PPPDUMP)/usr/sbin/
        $(RSTRIP) $(IDIR_PPPDUMP)
        $(IPKG_BUILD) $(IDIR_PPPDUMP) $(PACKAGE_DIR)
 
 $(IPKG_PPPSTATS): $(IPKG_PPP)
        install -d -m0755 $(IDIR_PPPSTATS)/usr/sbin
-       cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/pppstats $(IDIR_PPPSTATS)/usr/sbin/
+       $(CP) $(PKG_INSTALL_DIR)/usr/sbin/pppstats $(IDIR_PPPSTATS)/usr/sbin/
        $(RSTRIP) $(IDIR_PPPSTATS)
        $(IPKG_BUILD) $(IDIR_PPPSTATS) $(PACKAGE_DIR)