Package: debian-installer Severity: wishlist Tags: patch Currently, win32-loader is linking in loadlin.exe, gzip.exe and cpio.exe statically into the executable, which is less than ideal for the propagation of upgraded versions.
This patch adds them in their own win32-loader/ directory, so that newer versions can get these files from there instead. -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.18-6-amd64 (SMP w/2 CPU cores) Locale: LANG=ca_AD.UTF-8, LC_CTYPE=ca_AD.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash
Index: build/config/x86.cfg =================================================================== --- build/config/x86.cfg (revision 52185) +++ build/config/x86.cfg (working copy) @@ -82,9 +82,14 @@ fi || echo "*** Failed to add boot logo, probably out of space." >&2 # win32-loader - (mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/win32-loader.exe ::setup.exe ; \ - mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/g2ldr ::g2ldr ; \ - mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/g2ldr.mbr ::g2ldr.mbr ; \ + (mmd -i$(TEMP_BOOT) ::win32-loader ; \ + mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/win32-loader.exe ::setup.exe ; \ + mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/g2ldr ::win32-loader\\g2ldr ; \ + mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/g2ldr.mbr ::win32-loader\\g2ldr.mbr ; \ + mcopy -i$(TEMP_BOOT) /usr/share/win32/gzip.exe ::win32-loader\\gzip.exe ; \ + mcopy -i$(TEMP_BOOT) /usr/share/win32/cpio.exe ::win32-loader\\cpio.exe ; \ + gunzip /usr/lib/loadlin/loadlin.exe.gz -c > $(TEMP)/loadlin.exe ; \ + mcopy -i$(TEMP_BOOT) $(TEMP)/loadlin.exe ::win32-loader\\loadlin.exe ; \ \ (echo -en "[installer]\n"; \ echo -en "arch=$(ARCH)\n"; \ @@ -95,9 +100,15 @@ echo -en "user_interface=text\n"; \ echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ fi; \ - echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ + echo -en "\n[util]\n"; \ + echo -en "grub=win32-loader\\\\g2ldr\ngrub.mbr=win32-loader\\\\g2ldr.mbr\n"; \ + echo -en "gzip=win32-loader\\\\gzip.exe\n"; \ + echo -en "cpio=win32-loader\\\\cpio.exe\n"; \ + echo -en "loadlin=win32-loader\\\\loadlin.exe\n"; \ + echo -en "\n; deprecated section\n[grub]\ng2ldr=win32-loader\\\\g2ldr\ng2ldr.mbr=win32-loader\\\\g2ldr.mbr\n") \ | todos | mcopy -i$(TEMP_BOOT) - ::win32-loader.ini) \ - || (mdel -i$(TEMP_BOOT) ::setup.exe ::g2ldr ::g2ldr.mbr ::win32-loader.ini ; \ + || (mdel -i$(TEMP_BOOT) ::setup.exe ::win32-loader.ini ; \ + mdeltree -i$(TEMP_BOOT) ::win32-loader ; \ echo "*** Failed to add win32-loader, probably out of space." >&2) $(if $(GZIPPED),gzip -v9f $(TEMP_BOOT)) @@ -169,8 +180,14 @@ # win32-loader cp /usr/lib/win32-loader/win32-loader.exe $(TEMP_CD_INFO_DIR)/setup.exe - cp /usr/lib/win32-loader/g2ldr $(TEMP_CD_INFO_DIR)/g2ldr - cp /usr/lib/win32-loader/g2ldr.mbr $(TEMP_CD_INFO_DIR)/g2ldr.mbr + mkdir -p $(TEMP_CD_INFO_DIR)/win32-loader + cp \ + /usr/lib/win32-loader/g2ldr \ + /usr/lib/win32-loader/g2ldr.mbr \ + /usr/share/win32/gzip.exe \ + /usr/share/win32/cpio.exe \ + $(TEMP_CD_INFO_DIR)/win32-loader/ + gunzip /usr/lib/loadlin/loadlin.exe.gz -c > $(TEMP_CD_INFO_DIR)/win32-loader/loadlin.exe # win32-loader.ini (echo -en "[installer]\n"; \ @@ -182,7 +199,12 @@ echo -en "user_interface=text\n"; \ echo -en "$(ARCH)/linux=install/vmlinuz\n$(ARCH)/initrd=install/initrd.gz\n"; \ fi; \ - echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ + echo -en "\n[util]\n"; \ + echo -en "grub=win32-loader\\\\g2ldr\ngrub.mbr=win32-loader\\\\g2ldr.mbr\n"; \ + echo -en "gzip=win32-loader\\\\gzip.exe\n"; \ + echo -en "cpio=win32-loader\\\\cpio.exe\n"; \ + echo -en "loadlin=win32-loader\\\\loadlin.exe\n"; \ + echo -en "\n; deprecated section\n[grub]\ng2ldr=win32-loader\\\\g2ldr\ng2ldr.mbr=win32-loader\\\\g2ldr.mbr\n") \ | todos > $(TEMP_CD_INFO_DIR)/win32-loader.ini .PHONY: arch_miniiso @@ -216,8 +238,14 @@ # win32-loader cp /usr/lib/win32-loader/win32-loader.exe $(TEMP_CD_TREE)/setup.exe - cp /usr/lib/win32-loader/g2ldr $(TEMP_CD_TREE)/g2ldr - cp /usr/lib/win32-loader/g2ldr.mbr $(TEMP_CD_TREE)/g2ldr.mbr + mkdir -p $(TEMP_CD_TREE)/win32-loader + cp \ + /usr/lib/win32-loader/g2ldr \ + /usr/lib/win32-loader/g2ldr.mbr \ + /usr/share/win32/gzip.exe \ + /usr/share/win32/cpio.exe \ + $(TEMP_CD_TREE)/win32-loader/ + gunzip /usr/lib/loadlin/loadlin.exe.gz -c > $(TEMP_CD_TREE)/win32-loader/loadlin.exe # win32-loader.ini (echo -en "[installer]\n"; \ @@ -229,7 +257,12 @@ echo -en "user_interface=text\n"; \ echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ fi; \ - echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ + echo -en "\n[util]\n"; \ + echo -en "grub=win32-loader\\\\g2ldr\ngrub.mbr=win32-loader\\\\g2ldr.mbr\n"; \ + echo -en "gzip=win32-loader\\\\gzip.exe\n"; \ + echo -en "cpio=win32-loader\\\\cpio.exe\n"; \ + echo -en "loadlin=win32-loader\\\\loadlin.exe\n"; \ + echo -en "\n; deprecated section\n[grub]\ng2ldr=win32-loader\\\\g2ldr\ng2ldr.mbr=win32-loader\\\\g2ldr.mbr\n") \ | todos > $(TEMP_CD_TREE)/win32-loader.ini mkisofs -r -J -b isolinux.bin -c boot.cat \ Index: debian/control =================================================================== --- debian/control (revision 52185) +++ debian/control (working copy) @@ -160,6 +160,9 @@ # Used to encrypt a firmware image so an ARM based device # (Thecus N2100) will accept it. # - win32-loader [i386 amd64 kfreebsd-i386 kfreebsd-amd64] +# - loadlin [i386 amd64 kfreebsd-i386 kfreebsd-amd64] +# - cpio-win32 [i386 amd64 kfreebsd-i386 kfreebsd-amd64] +# - gzip-win32 [i386 amd64 kfreebsd-i386 kfreebsd-amd64] # Alternative boot method for win32 platforms. Package: debian-installer