New Installer based on dracut hw-detection (uClibc removed).

This commit is contained in:
Arne Fitzenreiter
2010-08-11 17:23:41 +02:00
parent eb91255c85
commit 6cf9e77034
52 changed files with 231 additions and 693 deletions

View File

@@ -99,7 +99,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
sed -i -e "s|DEVICE2|#DEVICE2|g" $(MNThdd)/etc/fstab
sed -i -e "s|DEVICE|/dev/sda|g" $(MNThdd)/etc/fstab
sed -i -e "s|FSTYPE|ext2|g" $(MNThdd)/etc/fstab
chroot $(MNThdd) /usr/local/bin/rebuild-initrd
# chroot $(MNThdd) /sbin/dracut --force --verbose /boot/ipfirerd-$(KVER) $(KVER)-ipfire
# Copy grub files manually
cp -f $(MNThdd)/usr/share/grub/i386-pc/* $(MNThdd)/boot/grub/

View File

@@ -51,50 +51,31 @@ $(TARGET) :
rm -f /install/images/initrd
# Finish up initrd directory
-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} && \
-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 && lzma -d -c /boot/ipfirerd-$(KVER).img | cpio -i
# Copy Files packages for installer
find $(DIR_SRC)/config/rootfiles/installer/* -maxdepth 1 | xargs cat > /tmp/ROOTFILES
-cd / && cpio -d -p /install/initrd < /tmp/ROOTFILES
cd /install/initrd/etc && rm -f fstab
cp -aRf $(DIR_SRC)/config/install/* /install/initrd/etc/
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
chmod 755 /install/initrd/etc/halt /install/initrd/etc/rc_installer
cd /install/initrd/ && patch -Np0 < $(DIR_SRC)/src/patches/dracut-init_start_ipfireinstaller.patch
# 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
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 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
cd /install/initrd && find . | cpio -o -H newc | lzma > /install/images/initrd
cd /install/initrd && find ./ -ls > $(DIR_INFO)/_build.initrd.log

View File

@@ -163,6 +163,7 @@ $(TARGET) :
ln -sf ../init.d/cleanfs /etc/rc.d/rcsysinit.d/S50cleanfs
ln -sf ../init.d/setclock /etc/rc.d/rcsysinit.d/S60setclock
ln -sf ../init.d/console /etc/rc.d/rcsysinit.d/S70console
ln -sf ../init.d/firstsetup /etc/rc.d/rcsysinit.d/S75firstsetup
ln -sf ../init.d/localnet /etc/rc.d/rcsysinit.d/S80localnet
ln -sf ../init.d/sysctl /etc/rc.d/rcsysinit.d/S90sysctl

View File

@@ -48,6 +48,7 @@ md5 :
$(TARGET) :
@$(PREBUILD)
-mkdir -p /install/initrd/bin
@rm -rf $(DIR_APP) && mkdir $(DIR_APP) && cp -R $(DIR_SRC)/src/install+setup/* $(DIR_APP)
for i in $(DIR_SRC)/langs/*/install/lang_*.c ; do \
cp $$i $(DIR_APP)/libsmooth; \