############################################################################### # This file is part of the IPCop Firewall. # # # # IPCop is free software; you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation; either version 2 of the License, or # # (at your option) any later version. # # # # IPCop is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with IPCop; if not, write to the Free Software # # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # # # Makefiles are based on LFSMake, which is # # Copyright (C) 2002 Rod Roard # # # ############################################################################### ############################################################################### # Definitions ############################################################################### include Config VER = 0.60.5 THISAPP = busybox-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) ############################################################################### # Top-level Rules ############################################################################### objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) $(DL_FILE)_MD5 = 1dfe09e0b1db1aab2a5f7d03e47640a6 install : $(TARGET) check : $(patsubst %,$(DIR_CHK)/%,$(objects)) download :$(patsubst %,$(DIR_DL)/%,$(objects)) md5 : $(subst %,%_MD5,$(objects)) ############################################################################### # Downloading, checking, md5sum ############################################################################### $(patsubst %,$(DIR_CHK)/%,$(objects)) : @$(CHECK) $(patsubst %,$(DIR_DL)/%,$(objects)) : @$(LOAD) $(subst %,%_MD5,$(objects)) : @$(MD5) ############################################################################### # Installation Details ############################################################################### $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/busybox-0.60.5-config.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/busybox-0.60.5-gzip.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/busybox-0.60.5-spider.patch cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/busybox-0.60.5-insmod_gpl_symbols.patch cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/busybox-0.60.5-wget-unlink.patch if [ "$(MACHINE)" = "alpha" ]; then \ cd $(DIR_APP) && sed -i -e 's/#define BB_INSMOD//' Config.h; \ cd $(DIR_APP) && sed -i -e 's/#define BB_RMMOD//' Config.h; \ cd $(DIR_APP) && sed -i -e 's/#define BB_MODPROBE//' Config.h; \ fi # cd $(DIR_APP) && sed -i -e 's/enum { NAME_SIZE = 100 };/enum { NAME_SIZE = 150 };/' tar.c; \ cd $(DIR_APP) && make -mkdir -p /install/initrd/bin cd $(DIR_APP) && install -m 0755 busybox /install/initrd/bin cd /install/initrd/bin && for i in [ ash cat chroot dd df echo gzip \ gunzip halt insmod ifconfig init ls mkswap modprobe mount reboot \ rmmod sed sh sleep swapon swapoff syslogd tar umount wget ping \ sync; do \ ln -sf busybox $$i; \ done if [ "$(MACHINE)" = "alpha" ]; then \ cd /install/initrd/bin && rm -f rmmod modprobe insmod; \ cp /sbin/insmod.static /install/initrd/bin/insmod; \ cd /install/initrd/bin && ln -s insmod modprobe; \ cd /install/initrd/bin && ln -s insmod rmmod; \ fi @rm -rf $(DIR_APP) @$(POSTBUILD)