X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=lfs%2Finitrd;h=896d78ecf83df754b23cb5df45cb42016dc7c291;hp=8c2bd6851872294144b888eb2371673635a9d408;hb=1ec332b04b50d452390905af394e1c4715282cd7;hpb=330345c2824b2e0d7e63cfe952af3e4a6cc2cd3b diff --git a/lfs/initrd b/lfs/initrd index 8c2bd68518..896d78ecf8 100644 --- a/lfs/initrd +++ b/lfs/initrd @@ -1,22 +1,20 @@ ############################################################################### -# This file is part of the IPCop Firewall. # # # -# IPCop is free software; you can redistribute it and/or modify # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# This program 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 # +# the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # -# IPCop is distributed in the hope that it will be useful, # +# This program 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 # +# along with this program. If not, see . # # # ############################################################################### @@ -56,68 +54,48 @@ $(TARGET) : -mkdir -p /install/initrd/{dev,etc,mnt,root,lib/modules/$(KVER)-ipfire/kernel/drivers,cdrom,dev,harddisk,proc,tmp,usr/share/terminfo/l,var/run,sys} && \ cd /install/initrd/etc && rm -f fstab cp -aRf $(DIR_SRC)/config/install/* /install/initrd/etc/ - rm -rf /install/initrd/etc{,/udev,/udev/rules.d}/.svn rm -rf /install/initrd/usr/share/man chmod 755 /install/initrd/etc/halt /install/initrd/etc/rc cp -f /usr/share/terminfo/l/linux /install/initrd/usr/share/terminfo/l - # Install SCSI Drivers - cp -rf /lib/modules/$(KVER)-ipfire/kernel/drivers/scsi \ - /lib/modules/$(KVER)-ipfire/kernel/drivers/block \ - /lib/modules/$(KVER)-ipfire/kernel/drivers/ide \ - /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/ - rm -f /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/message/fusion/mptlan* - # make new dependencies depmod -a -F /boot/System.map-$(KVER)-ipfire $(KVER)-ipfire - depmod -a -F /boot/System.map-$(KVER)-ipfire-smp $(KVER)-ipfire-smp - - cd / && tar -cvf /tmp/drivers.tar \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/{arch,crypto} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/drivers/{acpi,atm,bluetooth,block,char,cdrom,connector,cpufreq,hwmon,ide} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/drivers/{ieee1394,isdn,mmc,md,parport,video} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/drivers/net/{wan,ppp*,slip*,slhc*,tun*,wireless} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/drivers/usb/{atm,input,storage,host} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/drivers/usb/{3cp4218.ko,acm.ko,amedyn.ko,cxacru.ko} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/drivers/usb/{speedtch.ko,hid.ko,usbcore.ko,at76c50*.ko} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/net/{8021q,atm,bluetooth,bridge,ieee80211,ipsec,ipv4} \ - --exclude=lib/modules/$(KVER)-ipfire/kernel/net/{wanrouter,netfilter,sched} \ - --exclude=lib/modules/$(KVER)-ipfire/{build,extra,misc,modules.*,source} \ - lib/modules/$(KVER)-ipfire - cd /install/initrd/ && tar -xvf /tmp/drivers.tar && rm -f /tmp/drivers.tar - - # Extra modules - -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/storage - cp -f /lib/modules/$(KVER)-ipfire/kernel/drivers/usb/storage/*.ko \ - /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/storage/ - - -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/host - cp -f /lib/modules/$(KVER)-ipfire/kernel/drivers/usb/host/*.ko \ - /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/host - - -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/input - cp -f /lib/modules/$(KVER)-ipfire/kernel/drivers/usb/input/usbhid.ko \ - /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/input - - -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/core - cp -f /lib/modules/$(KVER)-ipfire/kernel/drivers/usb/core/*.ko \ - /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/usb/core - - cp -f /lib/modules/$(KVER)-ipfire/modules.* /install/initrd/lib/modules/$(KVER)-ipfire + #depmod -a -F /boot/System.map-$(KVER)-ipfire-smp $(KVER)-ipfire-smp + + cp -a /lib/modules/$(KVER)-ipfire/ /install/initrd/lib/modules/ + + rm -rf /install/initrd/lib/modules/$(KVER)-ipfire/{build,mISDN,source,misc/*,kernel/{sound,drivers/{acpi,bluetooth,cpufreq,hwmon,gpu,rtc,isdn,media,video,watchdog}}} \ + /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/message/fusion/mptlan* \ + /install/initrd/lib/modules/$(KVER)-ipfire/net/{bridge,netfilter,ipsec} \ + /install/initrd/lib/modules/$(KVER)-ipfire/dahdi + + # ... acpi/dock.ko is needed for libata +# -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/acpi +# cp -a /lib/modules/$(KVER)-ipfire/kernel/drivers/acpi/dock.ko \ +# /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/acpi/dock.ko cp /opt/$(MACHINE)-uClibc/lib/libgcc_s.so.1 /install/initrd/lib/ cd /install/initrd/lib/ && ln -sf libgcc_s.so.1 libgcc_s.so - + -mkdir -p /install/{images,mnt} rm -rf /install/mnt/* cp -aR /install/initrd/* /install/mnt - # make new dependencies - depmod -a -F /boot/System.map-$(KVER)-ipfire $(KVER)-ipfire + # make new dependencies for installer + depmod -a -F /boot/System.map-$(KVER)-ipfire \ + -b /install/initrd $(KVER)-ipfire + + # Remove binary depmod files + rm -rf /install/initrd/lib/modules/$(KVER)-ipfire/modules.*.bin + + cd /install/initrd && strip --strip-all {,usr/}{,s}bin/* || true + cd /install/initrd && strip --strip-debug {,usr/}lib/* || true + + cd /install/initrd && ln -svf sbin/init init - mksquashfs /install/initrd /install/images/initrd + cd /install/initrd && find . | cpio -o -H newc | lzma -9 > /install/images/initrd cd /install/initrd && find ./ -ls > $(DIR_INFO)/_build.initrd.log @$(POSTBUILD)