diff options
Diffstat (limited to 'obsolete-buildroot/make/pppoecd.mk')
-rw-r--r-- | obsolete-buildroot/make/pppoecd.mk | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/obsolete-buildroot/make/pppoecd.mk b/obsolete-buildroot/make/pppoecd.mk new file mode 100644 index 000000000..48ebbb8a3 --- /dev/null +++ b/obsolete-buildroot/make/pppoecd.mk @@ -0,0 +1,73 @@ +# build the Linksys pppoecd + +# Note that this patches the linksys pppd before patching pppoecd. +# The pppd patch changes the pathnames that pppoecd will use. +# In an attempt to avoid conflicts the marker file is called +# .patched-pppoecd in the pppd directory. + +PPPD_DIR=$(BUILD_DIR)/WRT54GS/release/src/router/ppp/pppd +PPPD_PATCH=$(SOURCE_DIR)/pppoecd-pathnames.patch + +PPPOECD_DIR=$(BUILD_DIR)/WRT54GS/release/src/router/ppp/pppoecd +PPPOECD_PATCH=$(SOURCE_DIR)/pppoecd.patch +PPPOECD_BIN=$(TARGET_DIR)/sbin/pppoecd + +PPPOECD_IPK_DIR=$(BUILD_DIR)/pppoecd-1.0 +PPPOECD_PACKAGE=$(BUILD_DIR)/pppoecd_1.0_mipsel.ipk +PPPOECD_IPK_BIN=$(PPPOECD_IPK_DIR)/sbin/pppoecd + +# patch pppd for the openwrt compatible path names +$(PPPD_DIR)/.patched-pppoecd: $(BUILD_DIR)/WRT54GS/.source + cat $(PPPD_PATCH) | patch -d $(PPPD_DIR) + touch $(PPPD_DIR)/.patched-pppoecd + +# patch the pppoecd itself for GCC3.x compatibility and to move pppoecd to /sbin +$(PPPOECD_DIR)/.patched: $(PPPD_DIR)/.patched-pppoecd + cat $(PPPOECD_PATCH) | patch -d $(PPPOECD_DIR) + touch $(PPPOECD_DIR)/.patched + +# build the pppoecd binary for the ipk version +$(PPPOECD_IPK_BIN): $(PPPOECD_DIR)/.patched + mkdir -p $(PPPOECD_IPK_DIR)/etc/ppp + cp $(SOURCE_DIR)/pppoecd.ip-up $(PPPOECD_IPK_DIR)/etc/ppp/ip-up + chmod a+x $(PPPOECD_IPK_DIR)/etc/ppp/ip-up + $(MAKE) -C $(PPPOECD_DIR) CC=$(TARGET_CC) LD=$(TARGET_CROSS)ld \ + SRCBASE=$(OPENWRT_SRCBASE) INSTALLDIR=$(PPPOECD_IPK_DIR) LIBDIR=$(UCLIBC_DIR)/lib \ + STRIP="$(STRIP)" \ + install + +# setup ipkg control files +$(PPPOECD_IPK_DIR)/CONTROL/control: + mkdir -p $(PPPOECD_IPK_DIR)/CONTROL + cp $(SOURCE_DIR)/pppoecd.prerm $(PPPOECD_IPK_DIR)/CONTROL/prerm + chmod a+x $(PPPOECD_IPK_DIR)/CONTROL/prerm + cp $(SOURCE_DIR)/pppoecd.postrm $(PPPOECD_IPK_DIR)/CONTROL/postrm + chmod a+x $(PPPOECD_IPK_DIR)/CONTROL/postrm + cp $(SOURCE_DIR)/pppoecd.conffiles $(PPPOECD_IPK_DIR)/CONTROL/conffiles + cp $(SOURCE_DIR)/pppoecd.control $(PPPOECD_IPK_DIR)/CONTROL/control + +# build the ipk package +$(PPPOECD_PACKAGE): $(PPPOECD_IPK_BIN) $(PPPOECD_IPK_DIR)/CONTROL/control + cd $(BUILD_DIR); $(STAGING_DIR)/bin/ipkg-build -c -o root -g root pppoecd-1.0 + +# main target for building the ipk version +pppoecd-ipk: $(PPPOECD_PACKAGE) + +# the embedded binary +$(PPPOECD_BIN): $(PPPOECD_DIR)/.patched + mkdir $(TARGET_DIR)/etc/ppp + cp $(SOURCE_DIR)/pppoecd.ip-up $(TARGET_DIR)/etc/ppp/ip-up + chmod a+x $(TARGET_DIR)/etc/ppp/ip-up + $(MAKE) -C $(PPPOECD_DIR) CC=$(TARGET_CC) LD=$(TARGET_CROSS)ld \ + SRCBASE=$(OPENWRT_SRCBASE) INSTALLDIR=$(TARGET_DIR) LIBDIR=$(UCLIBC_DIR)/lib \ + STRIP="$(STRIP)" \ + install + +# main target for building the embedded version +pppoecd: $(PPPOECD_BIN) + +pppoecd-clean: + -$(MAKE) -C $(PPPOECD_DIR) clean + rm -f $(TARGET_DIR)/usr/sbin/pppoecd + rm -rf $(PPPOECD_IPK_DIR) + rm -f $(PPPOECD_PACKAGE) |