#
-# initrd.git/Makefile
+# initrd/Makefile
#
TOPDIR = $(shell pwd)
$(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2:
wget -P $(WORK) -c $(BUSYBOX_SOURCE)
-$(WORK)/busybox-$(BUSYBOX_VERSION): $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 $(TOPDIR)/busybox-$(BUSYBOX_VERSION).config
+$(WORK)/busybox-$(BUSYBOX_VERSION): $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2 $(TOPDIR)/busybox-$(BUSYBOX_VERSION).config $(WORK)/fix-resource_header.patch
tar -C $(WORK) -xvjf $(WORK)/busybox-$(BUSYBOX_VERSION).tar.bz2
cd $(WORK)/busybox-$(BUSYBOX_VERSION) && \
patch -p1 -i $(WORK)/fix-resource_header.patch
$(WORK)/busybox-$(BUSYBOX_VERSION)/_install/bin/busybox: $(WORK)/busybox-$(BUSYBOX_VERSION)
export PATH=$(CROSSTOOLS)/bin:$$PATH && \
export LD_LIBRARY_PATH=$(CROSSTOOLS)/lib:$$LD_LIBRARY_PATH && \
- make -C $(WORK)/busybox-$(BUSYBOX_VERSION) ARCH=arm CROSS_COMPILE=$(TARGET)- install && \
+ make -j1 -C $(WORK)/busybox-$(BUSYBOX_VERSION) ARCH=arm CROSS_COMPILE=$(TARGET)- install && \
install -D -m 0755 $(WORK)/busybox-$(BUSYBOX_VERSION)/examples/udhcp/simple.script $(WORK)/busybox-$(BUSYBOX_VERSION)/_install/usr/share/udhcpc/default.script && \
$(TARGET)-strip $(WORK)/busybox-$(BUSYBOX_VERSION)/_install/bin/busybox && \
touch $(WORK)/busybox-$(BUSYBOX_VERSION)/_install/bin/busybox
./configure --build=$(BUILD) --host=$(TARGET) --prefix=/usr --with-ncursesw && \
find -type f -name 'makefile' \
-exec sed -e "s|-I/usr|-I$(CLFS)/usr|g" -e "s|-L/usr|-L$(CLFS)/usr|g" -i {} \; && \
- make CC="$(TARGET)-gcc -static -mno-unaligned-access" && \
+ make CC="$(TARGET)-gcc -static" && \
make DESTDIR=$(WORK)/dialog-$(DIALOG_VERSION)/_install install && \
$(TARGET)-strip $(WORK)/dialog-$(DIALOG_VERSION)/_install/usr/bin/dialog && \
touch $(WORK)/dialog-$(DIALOG_VERSION)/_install/usr/bin/dialog
install -v -m 0400 $(TOPDIR)/filesystem/shadow $(WORK)/mnt/etc
install -v -m 0755 $(TOPDIR)/filesystem/rc $(WORK)/mnt/etc && \
install -v -m 0755 $(TOPDIR)/filesystem/{setup,setup-chroot,crux} $(WORK)/mnt/usr/bin && \
+ ln -s bin/busybox $(WORK)/mnt/init
/sbin/ldconfig -r $(WORK)/mnt
umount -v $(WORK)/mnt
cd $(WORK) && gzip -v initrd
initrd: $(WORK)/initrd.gz
initrd-clean: check-root
- rm -vf $(WORK)/initrd.gz
+ rm -rvf $(WORK)/initrd.gz $(WORK)/mnt
initrd-distclean: initrd-clean