diff options
author | Tony Vroon <chainsaw@gentoo.org> | 2007-03-20 10:49:13 +0000 |
---|---|---|
committer | Tony Vroon <chainsaw@gentoo.org> | 2007-03-20 10:49:13 +0000 |
commit | eced74782e25a912e221baa714926c8860e29150 (patch) | |
tree | 767c914ee05d4e572e24407913f7bc735a79f7cc /sys-boot | |
parent | New upstream release. 22.7.3-r1 now stable on amd64, ack'ed by malc on IRC. ... (diff) | |
download | gentoo-2-eced74782e25a912e221baa714926c8860e29150.tar.gz gentoo-2-eced74782e25a912e221baa714926c8860e29150.tar.bz2 gentoo-2-eced74782e25a912e221baa714926c8860e29150.zip |
Delete orphaned patches as well.
(Portage version: 2.1.2.2)
Diffstat (limited to 'sys-boot')
19 files changed, 18 insertions, 1512 deletions
diff --git a/sys-boot/lilo/ChangeLog b/sys-boot/lilo/ChangeLog index 3abe524d16b2..8267b4726012 100644 --- a/sys-boot/lilo/ChangeLog +++ b/sys-boot/lilo/ChangeLog @@ -1,6 +1,23 @@ # ChangeLog for sys-boot/lilo # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/ChangeLog,v 1.46 2007/03/20 10:46:25 chainsaw Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/ChangeLog,v 1.47 2007/03/20 10:49:13 chainsaw Exp $ + + 20 Mar 2007; Tony Vroon <chainsaw@gentoo.org> + -files/lilo-22.7.1-correct-usage-info.patch, + -files/lilo-22.7.1-create-install-dirs.patch, + -files/lilo-22.7.1-devmapper_gentoo.patch, + -files/lilo-22.7.1-manpath.patch, -files/lilo-22.7.1-novga.patch, + -files/lilo-22.7.2-correct-usage-info.patch, + -files/lilo-22.7.2-create-install-dirs.patch, + -files/lilo-22.7.2-devmapper_gentoo.patch, + -files/lilo-22.7.2-install-nostrip.patch, + -files/lilo-22.7.2-makefile.patch, -files/lilo-22.7.2-manpath.patch, + -files/lilo-22.7.2-novga.patch, -files/lilo-22.7-correct-usage-info.patch, + -files/lilo-22.7-create-install-dirs.patch, + -files/lilo-22.7-devmapper_gentoo.patch, + -files/lilo-22.7-install-nostrip.patch, -files/lilo-22.7-manpath.patch, + -files/lilo-22.7-novga.patch: + Delete orphaned patches as well. *lilo-22.8 (20 Mar 2007) diff --git a/sys-boot/lilo/files/lilo-22.7-correct-usage-info.patch b/sys-boot/lilo/files/lilo-22.7-correct-usage-info.patch deleted file mode 100644 index 7b26b339f93f..000000000000 --- a/sys-boot/lilo/files/lilo-22.7-correct-usage-info.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- lilo-22.7.ORIG/lilo.c 2005-05-02 01:52:16.000000000 +0100 -+++ lilo-22.7/lilo.c 2005-05-02 01:53:50.000000000 +0100 -@@ -381,7 +381,8 @@ - fprintf(errstd,"%7s%s -T help \t\t\tlist additional options\n", "", name); - fprintf(errstd,"%7s%s -X\t\t\t\tinternal compile-time options\n", "", name); - #endif /* !__MSDOS__ */ -- fprintf(errstd,"%7s%s -V [ -v ]\t\t\tversion information\n\n","",name); -+ fprintf(errstd,"%7s%s -V\t\t\t\tversion information\n","",name); -+ fprintf(errstd,"%7s%s -v\t\t\t\tverbose mode\n\n","",name); - exit(1); - } - diff --git a/sys-boot/lilo/files/lilo-22.7-create-install-dirs.patch b/sys-boot/lilo/files/lilo-22.7-create-install-dirs.patch deleted file mode 100644 index c9e58a2312a5..000000000000 --- a/sys-boot/lilo/files/lilo-22.7-create-install-dirs.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- lilo-22.5.8/Makefile.bak 2004-02-06 01:41:06.000000000 +0000 -+++ lilo-22.5.8/Makefile 2004-02-06 02:02:57.000000000 +0000 -@@ -302,16 +302,8 @@ - # normal install, but doesn't make the diagnostic binaries - # - install: all -- if [ ! -d $$ROOT$(SBIN_DIR) ]; then mkdir $$ROOT$(SBIN_DIR); fi -- if [ ! -d $$ROOT$(CFG_DIR) ]; then mkdir $$ROOT$(CFG_DIR); fi -- if [ ! -d $$ROOT$(BOOT_DIR) ]; then mkdir $$ROOT$(BOOT_DIR); fi -- if [ ! -d $$ROOT$(USRSBIN_DIR) ]; then \ -- mkdir -p $$ROOT$(USRSBIN_DIR); fi -- if [ ! -d $$ROOT$(MAN_DIR) ]; then mkdir $$ROOT$(MAN_DIR); fi -- if [ ! -d $$ROOT$(MAN_DIR)/man5 ]; then \ -- mkdir $$ROOT$(MAN_DIR)/man5; fi -- if [ ! -d $$ROOT$(MAN_DIR)/man8 ]; then \ -- mkdir $$ROOT$(MAN_DIR)/man8; fi -+ mkdir -p $$ROOT$(SBIN_DIR) $$ROOT$(CFG_DIR) $$ROOT$(BOOT_DIR) \ -+ $$ROOT$(USRSBIN_DIR) $$ROOT$(MAN_DIR)/man5 $$ROOT$(MAN_DIR)/man8 - if [ -f diag1.img ]; then \ - cp -f diag1.img $$ROOT$(BOOT_DIR); fi - if [ -f diag2.img ]; then \ diff --git a/sys-boot/lilo/files/lilo-22.7-devmapper_gentoo.patch b/sys-boot/lilo/files/lilo-22.7-devmapper_gentoo.patch deleted file mode 100644 index 44325e71ca51..000000000000 --- a/sys-boot/lilo/files/lilo-22.7-devmapper_gentoo.patch +++ /dev/null @@ -1,413 +0,0 @@ -diff -Nur lilo-22.6.1.orig/geometry.c lilo-22.6.1/geometry.c ---- lilo-22.6.1.orig/geometry.c 2004-11-16 08:11:03.000000000 +0100 -+++ lilo-22.6.1/geometry.c 2005-03-15 00:13:42.761215192 +0100 -@@ -15,6 +15,9 @@ - #include <stdio.h> - #include <fcntl.h> - #include <errno.h> -+#include <stdlib.h> -+#include <limits.h> -+#include <ctype.h> - #include <sys/types.h> - - #ifdef LCF_REISERFS -@@ -27,6 +30,10 @@ - - #include <string.h> - -+#ifdef LCF_DEVMAPPER -+#include <libdevmapper.h> -+#endif -+ - #include "config.h" - #include "lilo.h" - #include "common.h" -@@ -61,6 +68,25 @@ - #endif - #endif - -+#ifdef LCF_DEVMAPPER -+typedef struct _dm_target { -+ struct _dm_target *next; -+ uint64_t start,length,offset; -+ int device; -+} DM_TARGET; -+ -+typedef struct _dm_table { -+ struct _dm_table *next; -+ int device; -+ struct _dm_target *target; -+} DM_TABLE; -+ -+int dm_version_nr = 0; -+int dm_major_list[16]; -+int dm_major_nr = 0; -+DM_TABLE *dmtab = NULL; -+#endif -+ - #ifdef LCF_LVM - struct lv_bmap { - __u32 lv_block; -@@ -115,6 +141,12 @@ - { - FILE *file; - char line[MAX_LINE+1]; -+#ifdef LCF_DEVMAPPER -+ struct dm_task *dmt; -+ char major_name[32]; -+ char dm_version[32]; -+ int major; -+#endif - char *here; - DT_ENTRY *entry; - int disk_section,items; -@@ -123,29 +155,69 @@ - if ((file = fopen(name,"r")) == NULL) - die("open %s: %s",name,strerror(errno)); - } -- else if ((file = fopen(DFL_DISKTAB,"r")) == NULL) return; -- disk_section = !!disktab; -- while (fgets(line,MAX_LINE,file)) { -- here = strchr(line,'\n'); -- if (here) *here = 0; -- here = strchr(line,'#'); -- if (here) *here = 0; -- if (strspn(line," \t") != strlen(line)) { -- entry = alloc_t(DT_ENTRY); -- items = sscanf(line,"0x%x 0x%x %d %d %d %d",&entry->device, -- &entry->bios,&entry->sectors,&entry->heads,&entry->cylinders, -- &entry->start); -- if (items == 5) entry->start = -1; -- if (items < 5) -- die("Invalid line in %s:\n\"%s\"",name ? name : DFL_DISKTAB, -- line); -- entry->next = disktab; -- disktab = entry; -- if (disk_section) die("DISKTAB and DISK are mutually exclusive"); -- old_disktab = 1; -+ if (name || (file = fopen(DFL_DISKTAB,"r")) != NULL) { -+ disk_section = !!disktab; -+ while (fgets(line,MAX_LINE,file)) { -+ here = strchr(line,'\n'); -+ if (here) *here = 0; -+ here = strchr(line,'#'); -+ if (here) *here = 0; -+ if (strspn(line," \t") != strlen(line)) { -+ entry = alloc_t(DT_ENTRY); -+ items = sscanf(line,"0x%x 0x%x %d %d %d %d",&entry->device, -+ &entry->bios,&entry->sectors,&entry->heads,&entry->cylinders, -+ &entry->start); -+ if (items == 5) entry->start = -1; -+ if (items < 5) -+ die("Invalid line in %s:\n\"%s\"",name ? name : DFL_DISKTAB, -+ line); -+ entry->next = disktab; -+ disktab = entry; -+ if (disk_section) die("DISKTAB and DISK are mutually exclusive"); -+ old_disktab = 1; -+ } - } -+ (void) fclose(file); - } -+ -+#ifdef LCF_DEVMAPPER -+ if (!(dmt = dm_task_create(DM_DEVICE_VERSION))) -+ return; -+ if (!dm_task_run(dmt)) -+ return; -+ if (!dm_task_get_driver_version(dmt, dm_version, sizeof dm_version)) -+ return; -+ -+ /* -+ * to not confuse returned device number formats %02x:%02x and %d:%d -+ * we assume here that the %02x:%02x format is only found in the ioctl -+ * interface version < 4 (this is really getting ugly...) -+ */ -+ dm_version_nr = atoi(dm_version); -+ -+ dm_task_destroy(dmt); -+ -+ dm_major_nr = 0; -+ file = fopen("/proc/devices", "r"); -+ if (!file) return; -+ -+ do { -+ if (!fgets(line, (sizeof line)-1, file)) { -+ (void) fclose(file); -+ return; -+ } -+ line[(sizeof line)-1] = 0; -+ } while(strncmp(line, "Block", 5) != 0); -+ -+ while(fgets(line, (sizeof line)-1, file)) { -+ if (sscanf(line, "%d %31s\n", &major, major_name) != 2) continue; -+ if (strcmp(major_name, "device-mapper") != 0) continue; -+ dm_major_list[dm_major_nr] = major; -+ if (++dm_major_nr > (sizeof dm_major_list)/(sizeof dm_major_list[0])) break; -+ } -+ - (void) fclose(file); -+#endif - } - - -@@ -777,6 +849,161 @@ - { - DT_ENTRY *walk; - int inherited,keep_cyls,is_raid=0; -+#ifdef LCF_DEVMAPPER -+ int i; -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(device) == dm_major_list[i]) -+ break; -+ while (i < dm_major_nr) { -+ DM_TABLE *dm_table; -+ -+ for(dm_table = dmtab; dm_table; dm_table = dm_table->next) -+ if (dm_table->device == device) -+ break; -+ -+ if (dm_table) { -+ DM_TARGET *target; -+ -+ device = 0; -+ for(target = dm_table->target; target; target = target->next) -+ device = target->device; -+ } else { -+ DEVICE dev; -+ struct dm_task *dmt; -+ void *next = NULL; -+ char dmdev[PATH_MAX+1]; -+ char buf[PATH_MAX+1]; -+ char *slash; -+ int result; -+ -+ dev_open(&dev, device, -1); -+ strncpy(dmdev, dev.name, PATH_MAX); -+ dmdev[PATH_MAX] = 0; -+ do { -+ memset(buf, 0, PATH_MAX + 1); -+ if ((result = readlink(dmdev, buf, PATH_MAX)) < 0 && errno != EINVAL) -+ die("device-mapper: readlink(\"%s\") failed with: %s",buf, -+ strerror(errno)); -+ if (result >= 0) { -+ if (buf[0] != '/' && (slash = strrchr(dmdev, '/')) != NULL) -+ slash++; -+ else -+ slash = dmdev; -+ strncpy(slash, buf, PATH_MAX - (slash-dmdev)); -+ } -+ if (realpath(dmdev, buf) == NULL) -+ die("device-mapper: realpath(\"%s\") failed with: %s",dmdev, -+ strerror(errno)); -+ strncpy(dmdev, buf, PATH_MAX); -+ } while (result >= 0); -+ dmdev[PATH_MAX] = 0; -+ -+ if (!(dmt = dm_task_create(DM_DEVICE_TABLE))) -+ die("device-mapper: dm_task_create(DM_DEVICE_TABLE) failed"); -+ slash = strrchr(dmdev, '/'); -+ if (slash) -+ slash++; -+ else -+ slash = dmdev; -+ if (!dm_task_set_name(dmt, slash)) -+ die("device-mapper: dm_task_set_name(\"%s\") failed",dmdev); -+ if (!dm_task_run(dmt)) -+ die("device-mapper: dm_task_run(DM_DEVICE_TABLE) failed"); -+ -+ dm_table = alloc_t(DM_TABLE); -+ dm_table->device = device; -+ dm_table->target = NULL; -+ dm_table->next = dmtab; -+ dmtab = dm_table; -+ -+ device = 0; -+ -+ do { -+ DM_TARGET *target; -+ uint64_t start,length; -+ int major,minor; -+ char *target_type,*params; -+ char *p; -+ -+ next = dm_get_next_target(dmt, next, &start, &length, -+ &target_type, ¶ms); -+ -+ if (!target_type) continue; -+ -+ if (strcmp(target_type, "linear") != 0) -+ die("device-mapper: only linear boot device supported"); -+ -+ target = alloc_t(DM_TARGET); -+ target->start = start; -+ target->length = length; -+ if (dm_version_nr < 4 && -+ isxdigit(params[0]) && -+ isxdigit(params[1]) && -+ params[2] == ':' && -+ isxdigit(params[3]) && -+ isxdigit(params[4])) { /* old 2.4 format */ -+ if (sscanf(params, "%02x:%02x %"PRIu64, &major, &minor, &target->offset) != 3) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } else if (isdigit(params[0]) && -+ strchr(params, ':')) { /* dm_bdevname/format_dev_t (>= 2.6.0-test4?) format */ -+ if (sscanf(params, "%u:%u %"PRIu64, &major, &minor, &target->offset) != 3) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } else { /* >= 2.5.69 format, this should go away soon */ -+ struct stat st; -+ FILE *file; -+ -+ p = strrchr(params, ' '); -+ if (p == NULL) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ *p = 0; -+ sprintf(buf, "/dev/%s", params); /* let's hope it's there */ -+ if (stat(buf, &st) == 0) { -+ if (!S_ISBLK(st.st_mode)) -+ die("device-mapper: %s is not a valid block device", buf); -+ major = MAJOR(st.st_rdev); -+ minor = MINOR(st.st_rdev); -+ } else { /* let's try sysfs */ -+ int dev; -+ sprintf(buf, "/sys/block/%s/dev", params); -+ file = fopen(buf, "r"); -+ if (!file) -+ die("device-mapper: \"%s\" could not be opened. /sys mounted?", buf); -+ if (!fgets(buf, PATH_MAX, file)) -+ die("device-mapper: read error from \"/sys/block/%s/dev\"", params); -+ if (sscanf(buf, "%u:%u", &major, &minor) != 2) { -+ if (sscanf(buf, "%x", &dev) != 1) -+ die("device-mapper: error getting device from \"%s\"", buf); -+ major = MAJOR(dev); -+ minor = MINOR(dev); -+ } -+ (void) fclose(file); -+ } -+ *p = ' '; -+ if (sscanf(p+1, "%"PRIu64, &target->offset) != 1) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } -+ target->device = (major << 8) | minor; -+ if (!device) -+ device = target->device; -+ target->next = dm_table->target; -+ dm_table->target = target; -+ } while(next); -+ -+ dm_task_destroy(dmt); -+ -+ dev_close(&dev); -+ } -+ -+ if (!device) -+ die("device-mapper: Error finding real device"); -+ geo->base_dev = device; -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(device) == dm_major_list[i]) -+ break; -+ } -+#endif - - if (verbose>=5) printf("geo_get: device %04X, all=%d\n", device, all); - #ifdef LCF_LVM -@@ -1154,14 +1381,50 @@ - die("EVMS boot volume cannot be on multiple disks.\n"); - sector = ebm.rsector + ((offset/SECTOR_SIZE) % geo->spb) + geo->start; - } -- else { -- sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -- sector += geo->start; -- } --#else -- sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -- sector += geo->start; -+ else -+#endif -+ { -+#ifdef LCF_DEVMAPPER -+ int dev = geo->dev; -+ int i; -+#endif -+ sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -+#ifdef LCF_DEVMAPPER -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(dev) == dm_major_list[i]) -+ break; -+ while (i < dm_major_nr) { -+ DM_TABLE *dm_table; -+ DM_TARGET *dm_target; -+ -+ for(dm_table = dmtab; dm_table; dm_table = dm_table->next) -+ if (dm_table->device == dev) -+ break; -+ if (!dm_table) -+ die("device-mapper: Mapped device suddenly lost? (%d)", dev); -+ -+ for(dm_target = dm_table->target; dm_target; dm_target = dm_target->next) -+ if (dm_target->start <= sector && sector < (dm_target->start+dm_target->length)) -+ break; -+ if (!dm_target) -+ die("device-mapper: Sector outside mapped device? (%d: %u/%"PRIu64")", -+ geo->base_dev, sector, (uint64_t)(dm_table->target ? -+ (dm_table->target->start+dm_table->target->length) : 0)); -+ -+ dev = dm_target->device; -+ sector = dm_target->offset+(sector-dm_target->start); -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(dev) == dm_major_list[i]) -+ break; -+ } -+ -+ if (dev != geo->dev && dev != geo->base_dev) -+ die("device-mapper: mapped boot device cannot be on multiple real devices\n"); - #endif -+ sector += geo->start; -+ } -+ - /* DON'T always use CHS addressing on floppies: JRC */ - /* if ((geo->device & 0x80) && (linear || lba32)) { */ - if ((linear || lba32)) { -diff -Nur lilo-22.6.1.orig/Makefile lilo-22.6.1/Makefile ---- lilo-22.6.1.orig/Makefile 2004-11-17 19:41:56.000000000 +0100 -+++ lilo-22.6.1/Makefile 2005-03-15 00:14:28.277295696 +0100 -@@ -59,7 +59,7 @@ - # XL_SECS=n Support for extra large (non-standard) floppies. - - CONFIG=-DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 \ -- -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL -+ -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL -DDEVMAPPER - - # set the compiler optimization level - -@@ -101,6 +101,8 @@ - LDFLAGS=#-Xlinker -qmagic - LIBS= - -+DEVMAPPER=-ldevmapper -+ - OBJS=lilo.o raid.o map.o geometry.o boot.o device.o common.o bsect.o cfg.o \ - partition.o identify.o probe.o shs2.o edit.o temp.o - -@@ -291,10 +293,18 @@ - cp -p dparam.S dparam.s - - lilo: $(OBJS) -+ifneq (,$(findstring DEVMAPPER,$(CONFIG))) -+ $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS) $(DEVMAPPER) -+else - $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS) -+endif - - lilo-static: $(OBJS) -+ifneq (,$(findstring DEVMAPPER,$(CONFIG))) -+ $(CC) -o lilo-static -static $(LDFLAGS) $(OBJS) $(LIBS) $(DEVMAPPER) -+else - $(CC) -o lilo-static -static $(LDFLAGS) $(OBJS) $(LIBS) -+endif - - boot-text.b: first.b second.b - (dd if=first.b bs=512 conv=sync; dd if=second.b) >boot-text.b diff --git a/sys-boot/lilo/files/lilo-22.7-install-nostrip.patch b/sys-boot/lilo/files/lilo-22.7-install-nostrip.patch deleted file mode 100644 index b8d9f2dc5a9b..000000000000 --- a/sys-boot/lilo/files/lilo-22.7-install-nostrip.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- lilo-22.7.2/Makefile~ 2006-07-13 15:10:06.000000000 +0200 -+++ lilo-22.7.2/Makefile 2006-07-13 15:12:47.000000000 +0200 -@@ -439,7 +439,6 @@ - rm -f $$ROOT$(BOOT_DIR)/boot.b; fi - cp mkrescue $$ROOT$(SBIN_DIR) - cp lilo $$ROOT$(SBIN_DIR) -- strip $$ROOT$(SBIN_DIR)/lilo - cp keytab-lilo.pl $$ROOT$(USRSBIN_DIR) - cp manPages/lilo.8 $$ROOT$(MAN_DIR)/man8 - cp manPages/mkrescue.8 $$ROOT$(MAN_DIR)/man8 diff --git a/sys-boot/lilo/files/lilo-22.7-manpath.patch b/sys-boot/lilo/files/lilo-22.7-manpath.patch deleted file mode 100644 index 7860a997680e..000000000000 --- a/sys-boot/lilo/files/lilo-22.7-manpath.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- lilo-22.7.1/Makefile.orig 2006-01-07 13:19:53.000000000 +0000 -+++ lilo-22.7.1/Makefile 2006-01-07 13:20:35.000000000 +0000 -@@ -81,8 +81,7 @@ - # elif [ -f /usr/bin/manpath ]; then \ - # manpath | sed "s/:.*//"; else echo /usr/man; fi` - # --MAN_DIR=`if [ -f /usr/bin/manpath ]; then \ -- manpath | sed "s/:.*//"; else echo /usr/man; fi` -+MAN_DIR=/usr/share/man - BUILTIN=1 - - PCONFIG=$(KVER) $(LILO) `( if [ -r $$ROOT/etc/lilo.defines ]; then \ diff --git a/sys-boot/lilo/files/lilo-22.7-novga.patch b/sys-boot/lilo/files/lilo-22.7-novga.patch deleted file mode 100644 index 108b41343d18..000000000000 --- a/sys-boot/lilo/files/lilo-22.7-novga.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -u lilo-22.6.1/first.S lilo-22.6.1.novga/first.S ---- lilo-22.6.1/first.S 2004-08-31 12:39:25.000000000 -0700 -+++ lilo-22.6.1.novga/first.S 2004-12-06 14:47:22.000000000 -0800 -@@ -522,7 +522,8 @@ - ; display - write byte in AL to console - ; preserves all register contents - ; --display: pusha ! make sure no register is changed -+display: ret -+ pusha ! make sure no register is changed - mov bx,#7 ! BH=0, BL=07 - mov ah,#14 - int 0x10 -diff -u lilo-22.6.1/second.S lilo-22.6.1.novga/second.S ---- lilo-22.6.1/second.S 2004-11-15 18:59:35.000000000 -0800 -+++ lilo-22.6.1.novga/second.S 2004-12-06 14:49:03.000000000 -0800 -@@ -2155,7 +2155,7 @@ - - ! Display one character on the console - --display: -+display: - push bx ! save BX - - #ifndef LCF_NOSERIAL -@@ -2219,7 +2219,7 @@ - ;;; xor bh,bh ! display on screen - mov bx,#7 ! set color for TEXT interface - mov ah,#14 -- int 0x10 -+;; int 0x10 - dispret: - pop bx ! restore BX - ret diff --git a/sys-boot/lilo/files/lilo-22.7.1-correct-usage-info.patch b/sys-boot/lilo/files/lilo-22.7.1-correct-usage-info.patch deleted file mode 100644 index 7b26b339f93f..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.1-correct-usage-info.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- lilo-22.7.ORIG/lilo.c 2005-05-02 01:52:16.000000000 +0100 -+++ lilo-22.7/lilo.c 2005-05-02 01:53:50.000000000 +0100 -@@ -381,7 +381,8 @@ - fprintf(errstd,"%7s%s -T help \t\t\tlist additional options\n", "", name); - fprintf(errstd,"%7s%s -X\t\t\t\tinternal compile-time options\n", "", name); - #endif /* !__MSDOS__ */ -- fprintf(errstd,"%7s%s -V [ -v ]\t\t\tversion information\n\n","",name); -+ fprintf(errstd,"%7s%s -V\t\t\t\tversion information\n","",name); -+ fprintf(errstd,"%7s%s -v\t\t\t\tverbose mode\n\n","",name); - exit(1); - } - diff --git a/sys-boot/lilo/files/lilo-22.7.1-create-install-dirs.patch b/sys-boot/lilo/files/lilo-22.7.1-create-install-dirs.patch deleted file mode 100644 index c9e58a2312a5..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.1-create-install-dirs.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- lilo-22.5.8/Makefile.bak 2004-02-06 01:41:06.000000000 +0000 -+++ lilo-22.5.8/Makefile 2004-02-06 02:02:57.000000000 +0000 -@@ -302,16 +302,8 @@ - # normal install, but doesn't make the diagnostic binaries - # - install: all -- if [ ! -d $$ROOT$(SBIN_DIR) ]; then mkdir $$ROOT$(SBIN_DIR); fi -- if [ ! -d $$ROOT$(CFG_DIR) ]; then mkdir $$ROOT$(CFG_DIR); fi -- if [ ! -d $$ROOT$(BOOT_DIR) ]; then mkdir $$ROOT$(BOOT_DIR); fi -- if [ ! -d $$ROOT$(USRSBIN_DIR) ]; then \ -- mkdir -p $$ROOT$(USRSBIN_DIR); fi -- if [ ! -d $$ROOT$(MAN_DIR) ]; then mkdir $$ROOT$(MAN_DIR); fi -- if [ ! -d $$ROOT$(MAN_DIR)/man5 ]; then \ -- mkdir $$ROOT$(MAN_DIR)/man5; fi -- if [ ! -d $$ROOT$(MAN_DIR)/man8 ]; then \ -- mkdir $$ROOT$(MAN_DIR)/man8; fi -+ mkdir -p $$ROOT$(SBIN_DIR) $$ROOT$(CFG_DIR) $$ROOT$(BOOT_DIR) \ -+ $$ROOT$(USRSBIN_DIR) $$ROOT$(MAN_DIR)/man5 $$ROOT$(MAN_DIR)/man8 - if [ -f diag1.img ]; then \ - cp -f diag1.img $$ROOT$(BOOT_DIR); fi - if [ -f diag2.img ]; then \ diff --git a/sys-boot/lilo/files/lilo-22.7.1-devmapper_gentoo.patch b/sys-boot/lilo/files/lilo-22.7.1-devmapper_gentoo.patch deleted file mode 100644 index 44325e71ca51..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.1-devmapper_gentoo.patch +++ /dev/null @@ -1,413 +0,0 @@ -diff -Nur lilo-22.6.1.orig/geometry.c lilo-22.6.1/geometry.c ---- lilo-22.6.1.orig/geometry.c 2004-11-16 08:11:03.000000000 +0100 -+++ lilo-22.6.1/geometry.c 2005-03-15 00:13:42.761215192 +0100 -@@ -15,6 +15,9 @@ - #include <stdio.h> - #include <fcntl.h> - #include <errno.h> -+#include <stdlib.h> -+#include <limits.h> -+#include <ctype.h> - #include <sys/types.h> - - #ifdef LCF_REISERFS -@@ -27,6 +30,10 @@ - - #include <string.h> - -+#ifdef LCF_DEVMAPPER -+#include <libdevmapper.h> -+#endif -+ - #include "config.h" - #include "lilo.h" - #include "common.h" -@@ -61,6 +68,25 @@ - #endif - #endif - -+#ifdef LCF_DEVMAPPER -+typedef struct _dm_target { -+ struct _dm_target *next; -+ uint64_t start,length,offset; -+ int device; -+} DM_TARGET; -+ -+typedef struct _dm_table { -+ struct _dm_table *next; -+ int device; -+ struct _dm_target *target; -+} DM_TABLE; -+ -+int dm_version_nr = 0; -+int dm_major_list[16]; -+int dm_major_nr = 0; -+DM_TABLE *dmtab = NULL; -+#endif -+ - #ifdef LCF_LVM - struct lv_bmap { - __u32 lv_block; -@@ -115,6 +141,12 @@ - { - FILE *file; - char line[MAX_LINE+1]; -+#ifdef LCF_DEVMAPPER -+ struct dm_task *dmt; -+ char major_name[32]; -+ char dm_version[32]; -+ int major; -+#endif - char *here; - DT_ENTRY *entry; - int disk_section,items; -@@ -123,29 +155,69 @@ - if ((file = fopen(name,"r")) == NULL) - die("open %s: %s",name,strerror(errno)); - } -- else if ((file = fopen(DFL_DISKTAB,"r")) == NULL) return; -- disk_section = !!disktab; -- while (fgets(line,MAX_LINE,file)) { -- here = strchr(line,'\n'); -- if (here) *here = 0; -- here = strchr(line,'#'); -- if (here) *here = 0; -- if (strspn(line," \t") != strlen(line)) { -- entry = alloc_t(DT_ENTRY); -- items = sscanf(line,"0x%x 0x%x %d %d %d %d",&entry->device, -- &entry->bios,&entry->sectors,&entry->heads,&entry->cylinders, -- &entry->start); -- if (items == 5) entry->start = -1; -- if (items < 5) -- die("Invalid line in %s:\n\"%s\"",name ? name : DFL_DISKTAB, -- line); -- entry->next = disktab; -- disktab = entry; -- if (disk_section) die("DISKTAB and DISK are mutually exclusive"); -- old_disktab = 1; -+ if (name || (file = fopen(DFL_DISKTAB,"r")) != NULL) { -+ disk_section = !!disktab; -+ while (fgets(line,MAX_LINE,file)) { -+ here = strchr(line,'\n'); -+ if (here) *here = 0; -+ here = strchr(line,'#'); -+ if (here) *here = 0; -+ if (strspn(line," \t") != strlen(line)) { -+ entry = alloc_t(DT_ENTRY); -+ items = sscanf(line,"0x%x 0x%x %d %d %d %d",&entry->device, -+ &entry->bios,&entry->sectors,&entry->heads,&entry->cylinders, -+ &entry->start); -+ if (items == 5) entry->start = -1; -+ if (items < 5) -+ die("Invalid line in %s:\n\"%s\"",name ? name : DFL_DISKTAB, -+ line); -+ entry->next = disktab; -+ disktab = entry; -+ if (disk_section) die("DISKTAB and DISK are mutually exclusive"); -+ old_disktab = 1; -+ } - } -+ (void) fclose(file); - } -+ -+#ifdef LCF_DEVMAPPER -+ if (!(dmt = dm_task_create(DM_DEVICE_VERSION))) -+ return; -+ if (!dm_task_run(dmt)) -+ return; -+ if (!dm_task_get_driver_version(dmt, dm_version, sizeof dm_version)) -+ return; -+ -+ /* -+ * to not confuse returned device number formats %02x:%02x and %d:%d -+ * we assume here that the %02x:%02x format is only found in the ioctl -+ * interface version < 4 (this is really getting ugly...) -+ */ -+ dm_version_nr = atoi(dm_version); -+ -+ dm_task_destroy(dmt); -+ -+ dm_major_nr = 0; -+ file = fopen("/proc/devices", "r"); -+ if (!file) return; -+ -+ do { -+ if (!fgets(line, (sizeof line)-1, file)) { -+ (void) fclose(file); -+ return; -+ } -+ line[(sizeof line)-1] = 0; -+ } while(strncmp(line, "Block", 5) != 0); -+ -+ while(fgets(line, (sizeof line)-1, file)) { -+ if (sscanf(line, "%d %31s\n", &major, major_name) != 2) continue; -+ if (strcmp(major_name, "device-mapper") != 0) continue; -+ dm_major_list[dm_major_nr] = major; -+ if (++dm_major_nr > (sizeof dm_major_list)/(sizeof dm_major_list[0])) break; -+ } -+ - (void) fclose(file); -+#endif - } - - -@@ -777,6 +849,161 @@ - { - DT_ENTRY *walk; - int inherited,keep_cyls,is_raid=0; -+#ifdef LCF_DEVMAPPER -+ int i; -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(device) == dm_major_list[i]) -+ break; -+ while (i < dm_major_nr) { -+ DM_TABLE *dm_table; -+ -+ for(dm_table = dmtab; dm_table; dm_table = dm_table->next) -+ if (dm_table->device == device) -+ break; -+ -+ if (dm_table) { -+ DM_TARGET *target; -+ -+ device = 0; -+ for(target = dm_table->target; target; target = target->next) -+ device = target->device; -+ } else { -+ DEVICE dev; -+ struct dm_task *dmt; -+ void *next = NULL; -+ char dmdev[PATH_MAX+1]; -+ char buf[PATH_MAX+1]; -+ char *slash; -+ int result; -+ -+ dev_open(&dev, device, -1); -+ strncpy(dmdev, dev.name, PATH_MAX); -+ dmdev[PATH_MAX] = 0; -+ do { -+ memset(buf, 0, PATH_MAX + 1); -+ if ((result = readlink(dmdev, buf, PATH_MAX)) < 0 && errno != EINVAL) -+ die("device-mapper: readlink(\"%s\") failed with: %s",buf, -+ strerror(errno)); -+ if (result >= 0) { -+ if (buf[0] != '/' && (slash = strrchr(dmdev, '/')) != NULL) -+ slash++; -+ else -+ slash = dmdev; -+ strncpy(slash, buf, PATH_MAX - (slash-dmdev)); -+ } -+ if (realpath(dmdev, buf) == NULL) -+ die("device-mapper: realpath(\"%s\") failed with: %s",dmdev, -+ strerror(errno)); -+ strncpy(dmdev, buf, PATH_MAX); -+ } while (result >= 0); -+ dmdev[PATH_MAX] = 0; -+ -+ if (!(dmt = dm_task_create(DM_DEVICE_TABLE))) -+ die("device-mapper: dm_task_create(DM_DEVICE_TABLE) failed"); -+ slash = strrchr(dmdev, '/'); -+ if (slash) -+ slash++; -+ else -+ slash = dmdev; -+ if (!dm_task_set_name(dmt, slash)) -+ die("device-mapper: dm_task_set_name(\"%s\") failed",dmdev); -+ if (!dm_task_run(dmt)) -+ die("device-mapper: dm_task_run(DM_DEVICE_TABLE) failed"); -+ -+ dm_table = alloc_t(DM_TABLE); -+ dm_table->device = device; -+ dm_table->target = NULL; -+ dm_table->next = dmtab; -+ dmtab = dm_table; -+ -+ device = 0; -+ -+ do { -+ DM_TARGET *target; -+ uint64_t start,length; -+ int major,minor; -+ char *target_type,*params; -+ char *p; -+ -+ next = dm_get_next_target(dmt, next, &start, &length, -+ &target_type, ¶ms); -+ -+ if (!target_type) continue; -+ -+ if (strcmp(target_type, "linear") != 0) -+ die("device-mapper: only linear boot device supported"); -+ -+ target = alloc_t(DM_TARGET); -+ target->start = start; -+ target->length = length; -+ if (dm_version_nr < 4 && -+ isxdigit(params[0]) && -+ isxdigit(params[1]) && -+ params[2] == ':' && -+ isxdigit(params[3]) && -+ isxdigit(params[4])) { /* old 2.4 format */ -+ if (sscanf(params, "%02x:%02x %"PRIu64, &major, &minor, &target->offset) != 3) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } else if (isdigit(params[0]) && -+ strchr(params, ':')) { /* dm_bdevname/format_dev_t (>= 2.6.0-test4?) format */ -+ if (sscanf(params, "%u:%u %"PRIu64, &major, &minor, &target->offset) != 3) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } else { /* >= 2.5.69 format, this should go away soon */ -+ struct stat st; -+ FILE *file; -+ -+ p = strrchr(params, ' '); -+ if (p == NULL) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ *p = 0; -+ sprintf(buf, "/dev/%s", params); /* let's hope it's there */ -+ if (stat(buf, &st) == 0) { -+ if (!S_ISBLK(st.st_mode)) -+ die("device-mapper: %s is not a valid block device", buf); -+ major = MAJOR(st.st_rdev); -+ minor = MINOR(st.st_rdev); -+ } else { /* let's try sysfs */ -+ int dev; -+ sprintf(buf, "/sys/block/%s/dev", params); -+ file = fopen(buf, "r"); -+ if (!file) -+ die("device-mapper: \"%s\" could not be opened. /sys mounted?", buf); -+ if (!fgets(buf, PATH_MAX, file)) -+ die("device-mapper: read error from \"/sys/block/%s/dev\"", params); -+ if (sscanf(buf, "%u:%u", &major, &minor) != 2) { -+ if (sscanf(buf, "%x", &dev) != 1) -+ die("device-mapper: error getting device from \"%s\"", buf); -+ major = MAJOR(dev); -+ minor = MINOR(dev); -+ } -+ (void) fclose(file); -+ } -+ *p = ' '; -+ if (sscanf(p+1, "%"PRIu64, &target->offset) != 1) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } -+ target->device = (major << 8) | minor; -+ if (!device) -+ device = target->device; -+ target->next = dm_table->target; -+ dm_table->target = target; -+ } while(next); -+ -+ dm_task_destroy(dmt); -+ -+ dev_close(&dev); -+ } -+ -+ if (!device) -+ die("device-mapper: Error finding real device"); -+ geo->base_dev = device; -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(device) == dm_major_list[i]) -+ break; -+ } -+#endif - - if (verbose>=5) printf("geo_get: device %04X, all=%d\n", device, all); - #ifdef LCF_LVM -@@ -1154,14 +1381,50 @@ - die("EVMS boot volume cannot be on multiple disks.\n"); - sector = ebm.rsector + ((offset/SECTOR_SIZE) % geo->spb) + geo->start; - } -- else { -- sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -- sector += geo->start; -- } --#else -- sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -- sector += geo->start; -+ else -+#endif -+ { -+#ifdef LCF_DEVMAPPER -+ int dev = geo->dev; -+ int i; -+#endif -+ sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -+#ifdef LCF_DEVMAPPER -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(dev) == dm_major_list[i]) -+ break; -+ while (i < dm_major_nr) { -+ DM_TABLE *dm_table; -+ DM_TARGET *dm_target; -+ -+ for(dm_table = dmtab; dm_table; dm_table = dm_table->next) -+ if (dm_table->device == dev) -+ break; -+ if (!dm_table) -+ die("device-mapper: Mapped device suddenly lost? (%d)", dev); -+ -+ for(dm_target = dm_table->target; dm_target; dm_target = dm_target->next) -+ if (dm_target->start <= sector && sector < (dm_target->start+dm_target->length)) -+ break; -+ if (!dm_target) -+ die("device-mapper: Sector outside mapped device? (%d: %u/%"PRIu64")", -+ geo->base_dev, sector, (uint64_t)(dm_table->target ? -+ (dm_table->target->start+dm_table->target->length) : 0)); -+ -+ dev = dm_target->device; -+ sector = dm_target->offset+(sector-dm_target->start); -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(dev) == dm_major_list[i]) -+ break; -+ } -+ -+ if (dev != geo->dev && dev != geo->base_dev) -+ die("device-mapper: mapped boot device cannot be on multiple real devices\n"); - #endif -+ sector += geo->start; -+ } -+ - /* DON'T always use CHS addressing on floppies: JRC */ - /* if ((geo->device & 0x80) && (linear || lba32)) { */ - if ((linear || lba32)) { -diff -Nur lilo-22.6.1.orig/Makefile lilo-22.6.1/Makefile ---- lilo-22.6.1.orig/Makefile 2004-11-17 19:41:56.000000000 +0100 -+++ lilo-22.6.1/Makefile 2005-03-15 00:14:28.277295696 +0100 -@@ -59,7 +59,7 @@ - # XL_SECS=n Support for extra large (non-standard) floppies. - - CONFIG=-DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 \ -- -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL -+ -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL -DDEVMAPPER - - # set the compiler optimization level - -@@ -101,6 +101,8 @@ - LDFLAGS=#-Xlinker -qmagic - LIBS= - -+DEVMAPPER=-ldevmapper -+ - OBJS=lilo.o raid.o map.o geometry.o boot.o device.o common.o bsect.o cfg.o \ - partition.o identify.o probe.o shs2.o edit.o temp.o - -@@ -291,10 +293,18 @@ - cp -p dparam.S dparam.s - - lilo: $(OBJS) -+ifneq (,$(findstring DEVMAPPER,$(CONFIG))) -+ $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS) $(DEVMAPPER) -+else - $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS) -+endif - - lilo-static: $(OBJS) -+ifneq (,$(findstring DEVMAPPER,$(CONFIG))) -+ $(CC) -o lilo-static -static $(LDFLAGS) $(OBJS) $(LIBS) $(DEVMAPPER) -+else - $(CC) -o lilo-static -static $(LDFLAGS) $(OBJS) $(LIBS) -+endif - - boot-text.b: first.b second.b - (dd if=first.b bs=512 conv=sync; dd if=second.b) >boot-text.b diff --git a/sys-boot/lilo/files/lilo-22.7.1-manpath.patch b/sys-boot/lilo/files/lilo-22.7.1-manpath.patch deleted file mode 100644 index 7860a997680e..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.1-manpath.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- lilo-22.7.1/Makefile.orig 2006-01-07 13:19:53.000000000 +0000 -+++ lilo-22.7.1/Makefile 2006-01-07 13:20:35.000000000 +0000 -@@ -81,8 +81,7 @@ - # elif [ -f /usr/bin/manpath ]; then \ - # manpath | sed "s/:.*//"; else echo /usr/man; fi` - # --MAN_DIR=`if [ -f /usr/bin/manpath ]; then \ -- manpath | sed "s/:.*//"; else echo /usr/man; fi` -+MAN_DIR=/usr/share/man - BUILTIN=1 - - PCONFIG=$(KVER) $(LILO) `( if [ -r $$ROOT/etc/lilo.defines ]; then \ diff --git a/sys-boot/lilo/files/lilo-22.7.1-novga.patch b/sys-boot/lilo/files/lilo-22.7.1-novga.patch deleted file mode 100644 index 108b41343d18..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.1-novga.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -u lilo-22.6.1/first.S lilo-22.6.1.novga/first.S ---- lilo-22.6.1/first.S 2004-08-31 12:39:25.000000000 -0700 -+++ lilo-22.6.1.novga/first.S 2004-12-06 14:47:22.000000000 -0800 -@@ -522,7 +522,8 @@ - ; display - write byte in AL to console - ; preserves all register contents - ; --display: pusha ! make sure no register is changed -+display: ret -+ pusha ! make sure no register is changed - mov bx,#7 ! BH=0, BL=07 - mov ah,#14 - int 0x10 -diff -u lilo-22.6.1/second.S lilo-22.6.1.novga/second.S ---- lilo-22.6.1/second.S 2004-11-15 18:59:35.000000000 -0800 -+++ lilo-22.6.1.novga/second.S 2004-12-06 14:49:03.000000000 -0800 -@@ -2155,7 +2155,7 @@ - - ! Display one character on the console - --display: -+display: - push bx ! save BX - - #ifndef LCF_NOSERIAL -@@ -2219,7 +2219,7 @@ - ;;; xor bh,bh ! display on screen - mov bx,#7 ! set color for TEXT interface - mov ah,#14 -- int 0x10 -+;; int 0x10 - dispret: - pop bx ! restore BX - ret diff --git a/sys-boot/lilo/files/lilo-22.7.2-correct-usage-info.patch b/sys-boot/lilo/files/lilo-22.7.2-correct-usage-info.patch deleted file mode 100644 index 7b26b339f93f..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-correct-usage-info.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- lilo-22.7.ORIG/lilo.c 2005-05-02 01:52:16.000000000 +0100 -+++ lilo-22.7/lilo.c 2005-05-02 01:53:50.000000000 +0100 -@@ -381,7 +381,8 @@ - fprintf(errstd,"%7s%s -T help \t\t\tlist additional options\n", "", name); - fprintf(errstd,"%7s%s -X\t\t\t\tinternal compile-time options\n", "", name); - #endif /* !__MSDOS__ */ -- fprintf(errstd,"%7s%s -V [ -v ]\t\t\tversion information\n\n","",name); -+ fprintf(errstd,"%7s%s -V\t\t\t\tversion information\n","",name); -+ fprintf(errstd,"%7s%s -v\t\t\t\tverbose mode\n\n","",name); - exit(1); - } - diff --git a/sys-boot/lilo/files/lilo-22.7.2-create-install-dirs.patch b/sys-boot/lilo/files/lilo-22.7.2-create-install-dirs.patch deleted file mode 100644 index c9e58a2312a5..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-create-install-dirs.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- lilo-22.5.8/Makefile.bak 2004-02-06 01:41:06.000000000 +0000 -+++ lilo-22.5.8/Makefile 2004-02-06 02:02:57.000000000 +0000 -@@ -302,16 +302,8 @@ - # normal install, but doesn't make the diagnostic binaries - # - install: all -- if [ ! -d $$ROOT$(SBIN_DIR) ]; then mkdir $$ROOT$(SBIN_DIR); fi -- if [ ! -d $$ROOT$(CFG_DIR) ]; then mkdir $$ROOT$(CFG_DIR); fi -- if [ ! -d $$ROOT$(BOOT_DIR) ]; then mkdir $$ROOT$(BOOT_DIR); fi -- if [ ! -d $$ROOT$(USRSBIN_DIR) ]; then \ -- mkdir -p $$ROOT$(USRSBIN_DIR); fi -- if [ ! -d $$ROOT$(MAN_DIR) ]; then mkdir $$ROOT$(MAN_DIR); fi -- if [ ! -d $$ROOT$(MAN_DIR)/man5 ]; then \ -- mkdir $$ROOT$(MAN_DIR)/man5; fi -- if [ ! -d $$ROOT$(MAN_DIR)/man8 ]; then \ -- mkdir $$ROOT$(MAN_DIR)/man8; fi -+ mkdir -p $$ROOT$(SBIN_DIR) $$ROOT$(CFG_DIR) $$ROOT$(BOOT_DIR) \ -+ $$ROOT$(USRSBIN_DIR) $$ROOT$(MAN_DIR)/man5 $$ROOT$(MAN_DIR)/man8 - if [ -f diag1.img ]; then \ - cp -f diag1.img $$ROOT$(BOOT_DIR); fi - if [ -f diag2.img ]; then \ diff --git a/sys-boot/lilo/files/lilo-22.7.2-devmapper_gentoo.patch b/sys-boot/lilo/files/lilo-22.7.2-devmapper_gentoo.patch deleted file mode 100644 index 87921442b015..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-devmapper_gentoo.patch +++ /dev/null @@ -1,413 +0,0 @@ -diff -uNr lilo-22.7.2.ORIG/Makefile lilo-22.7.2/Makefile ---- lilo-22.7.2.ORIG/Makefile 2006-07-12 14:02:11.000000000 +0100 -+++ lilo-22.7.2/Makefile 2006-07-12 14:10:08.000000000 +0100 -@@ -65,7 +65,7 @@ - - CONFIG=-DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DNOKEYBOARD -DONE_SHOT \ - -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL \ -- -DATARAID -DMDPRAID -+ -DATARAID -DMDPRAID -DDEVMAPPER - - # set the compiler optimization level - -@@ -109,6 +109,8 @@ - LDFLAGS=#-Xlinker -qmagic - LIBS= - -+DEVMAPPER=-ldevmapper -+ - OBJS=lilo.o raid.o map.o geometry.o boot.o device.o common.o bsect.o cfg.o \ - partition.o identify.o probe.o shs2.o edit.o temp.o - -@@ -346,10 +348,18 @@ - cp -p dparam.S dparam.s - - lilo: $(OBJS) -+ ifneq (,$(findstring DEVMAPPER,$(CONFIG))) -+ $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS) $(DEVMAPPER) -+ else - $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS) -+ endif - - lilo.static: $(OBJS) -+ ifneq (,$(findstring DEVMAPPER,$(CONFIG))) -+ $(CC) -o lilo.static -static $(LDFLAGS) $(OBJS) $(LIBS) $(DEVMAPPER) -+ else - $(CC) -o lilo.static -static $(LDFLAGS) $(OBJS) $(LIBS) -+ endif - - boot-text.b: first.b second.b - (dd if=first.b bs=512 conv=sync; dd if=second.b) >boot-text.b -diff -uNr lilo-22.7.2.ORIG/geometry.c lilo-22.7.2/geometry.c ---- lilo-22.7.2.ORIG/geometry.c 2006-07-12 14:02:11.000000000 +0100 -+++ lilo-22.7.2/geometry.c 2006-07-12 14:02:41.000000000 +0100 -@@ -15,6 +15,9 @@ - #include <stdio.h> - #include <fcntl.h> - #include <errno.h> -+#include <stdlib.h> -+#include <limits.h> -+#include <ctype.h> - #include <sys/types.h> - - #ifdef LCF_REISERFS -@@ -27,6 +30,10 @@ - - #include <string.h> - -+#ifdef LCF_DEVMAPPER -+#include <libdevmapper.h> -+#endif -+ - #include "config.h" - #include "lilo.h" - #include "common.h" -@@ -61,6 +68,25 @@ - #endif - #endif - -+#ifdef LCF_DEVMAPPER -+typedef struct _dm_target { -+ struct _dm_target *next; -+ uint64_t start,length,offset; -+ int device; -+} DM_TARGET; -+ -+typedef struct _dm_table { -+ struct _dm_table *next; -+ int device; -+ struct _dm_target *target; -+} DM_TABLE; -+ -+int dm_version_nr = 0; -+int dm_major_list[16]; -+int dm_major_nr = 0; -+DM_TABLE *dmtab = NULL; -+#endif -+ - #ifdef LCF_LVM - struct lv_bmap { - __u32 lv_block; -@@ -115,6 +141,12 @@ - { - FILE *file; - char line[MAX_LINE+1]; -+#ifdef LCF_DEVMAPPER -+ struct dm_task *dmt; -+ char major_name[32]; -+ char dm_version[32]; -+ int major; -+#endif - char *here; - DT_ENTRY *entry; - int disk_section,items; -@@ -123,29 +155,69 @@ - if ((file = fopen(name,"r")) == NULL) - die("open %s: %s",name,strerror(errno)); - } -- else if ((file = fopen(DFL_DISKTAB,"r")) == NULL) return; -- disk_section = !!disktab; -- while (fgets(line,MAX_LINE,file)) { -- here = strchr(line,'\n'); -- if (here) *here = 0; -- here = strchr(line,'#'); -- if (here) *here = 0; -- if (strspn(line," \t") != strlen(line)) { -- entry = alloc_t(DT_ENTRY); -- items = sscanf(line,"0x%x 0x%x %d %d %d %d",&entry->device, -- &entry->bios,&entry->sectors,&entry->heads,&entry->cylinders, -- &entry->start); -- if (items == 5) entry->start = -1; -- if (items < 5) -- die("Invalid line in %s:\n\"%s\"",name ? name : DFL_DISKTAB, -- line); -- entry->next = disktab; -- disktab = entry; -- if (disk_section) die("DISKTAB and DISK are mutually exclusive"); -- old_disktab = 1; -+ if (name || (file = fopen(DFL_DISKTAB,"r")) != NULL) { -+ disk_section = !!disktab; -+ while (fgets(line,MAX_LINE,file)) { -+ here = strchr(line,'\n'); -+ if (here) *here = 0; -+ here = strchr(line,'#'); -+ if (here) *here = 0; -+ if (strspn(line," \t") != strlen(line)) { -+ entry = alloc_t(DT_ENTRY); -+ items = sscanf(line,"0x%x 0x%x %d %d %d %d",&entry->device, -+ &entry->bios,&entry->sectors,&entry->heads,&entry->cylinders, -+ &entry->start); -+ if (items == 5) entry->start = -1; -+ if (items < 5) -+ die("Invalid line in %s:\n\"%s\"",name ? name : DFL_DISKTAB, -+ line); -+ entry->next = disktab; -+ disktab = entry; -+ if (disk_section) die("DISKTAB and DISK are mutually exclusive"); -+ old_disktab = 1; -+ } - } -+ (void) fclose(file); - } -+ -+#ifdef LCF_DEVMAPPER -+ if (!(dmt = dm_task_create(DM_DEVICE_VERSION))) -+ return; -+ if (!dm_task_run(dmt)) -+ return; -+ if (!dm_task_get_driver_version(dmt, dm_version, sizeof dm_version)) -+ return; -+ -+ /* -+ * to not confuse returned device number formats %02x:%02x and %d:%d -+ * we assume here that the %02x:%02x format is only found in the ioctl -+ * interface version < 4 (this is really getting ugly...) -+ */ -+ dm_version_nr = atoi(dm_version); -+ -+ dm_task_destroy(dmt); -+ -+ dm_major_nr = 0; -+ file = fopen("/proc/devices", "r"); -+ if (!file) return; -+ -+ do { -+ if (!fgets(line, (sizeof line)-1, file)) { -+ (void) fclose(file); -+ return; -+ } -+ line[(sizeof line)-1] = 0; -+ } while(strncmp(line, "Block", 5) != 0); -+ -+ while(fgets(line, (sizeof line)-1, file)) { -+ if (sscanf(line, "%d %31s\n", &major, major_name) != 2) continue; -+ if (strcmp(major_name, "device-mapper") != 0) continue; -+ dm_major_list[dm_major_nr] = major; -+ if (++dm_major_nr > (sizeof dm_major_list)/(sizeof dm_major_list[0])) break; -+ } -+ - (void) fclose(file); -+#endif - } - - -@@ -792,6 +864,161 @@ - { - DT_ENTRY *walk; - int inherited,keep_cyls,is_raid=0; -+#ifdef LCF_DEVMAPPER -+ int i; -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(device) == dm_major_list[i]) -+ break; -+ while (i < dm_major_nr) { -+ DM_TABLE *dm_table; -+ -+ for(dm_table = dmtab; dm_table; dm_table = dm_table->next) -+ if (dm_table->device == device) -+ break; -+ -+ if (dm_table) { -+ DM_TARGET *target; -+ -+ device = 0; -+ for(target = dm_table->target; target; target = target->next) -+ device = target->device; -+ } else { -+ DEVICE dev; -+ struct dm_task *dmt; -+ void *next = NULL; -+ char dmdev[PATH_MAX+1]; -+ char buf[PATH_MAX+1]; -+ char *slash; -+ int result; -+ -+ dev_open(&dev, device, -1); -+ strncpy(dmdev, dev.name, PATH_MAX); -+ dmdev[PATH_MAX] = 0; -+ do { -+ memset(buf, 0, PATH_MAX + 1); -+ if ((result = readlink(dmdev, buf, PATH_MAX)) < 0 && errno != EINVAL) -+ die("device-mapper: readlink(\"%s\") failed with: %s",buf, -+ strerror(errno)); -+ if (result >= 0) { -+ if (buf[0] != '/' && (slash = strrchr(dmdev, '/')) != NULL) -+ slash++; -+ else -+ slash = dmdev; -+ strncpy(slash, buf, PATH_MAX - (slash-dmdev)); -+ } -+ if (realpath(dmdev, buf) == NULL) -+ die("device-mapper: realpath(\"%s\") failed with: %s",dmdev, -+ strerror(errno)); -+ strncpy(dmdev, buf, PATH_MAX); -+ } while (result >= 0); -+ dmdev[PATH_MAX] = 0; -+ -+ if (!(dmt = dm_task_create(DM_DEVICE_TABLE))) -+ die("device-mapper: dm_task_create(DM_DEVICE_TABLE) failed"); -+ slash = strrchr(dmdev, '/'); -+ if (slash) -+ slash++; -+ else -+ slash = dmdev; -+ if (!dm_task_set_name(dmt, slash)) -+ die("device-mapper: dm_task_set_name(\"%s\") failed",dmdev); -+ if (!dm_task_run(dmt)) -+ die("device-mapper: dm_task_run(DM_DEVICE_TABLE) failed"); -+ -+ dm_table = alloc_t(DM_TABLE); -+ dm_table->device = device; -+ dm_table->target = NULL; -+ dm_table->next = dmtab; -+ dmtab = dm_table; -+ -+ device = 0; -+ -+ do { -+ DM_TARGET *target; -+ uint64_t start,length; -+ int major,minor; -+ char *target_type,*params; -+ char *p; -+ -+ next = dm_get_next_target(dmt, next, &start, &length, -+ &target_type, ¶ms); -+ -+ if (!target_type) continue; -+ -+ if (strcmp(target_type, "linear") != 0) -+ die("device-mapper: only linear boot device supported"); -+ -+ target = alloc_t(DM_TARGET); -+ target->start = start; -+ target->length = length; -+ if (dm_version_nr < 4 && -+ isxdigit(params[0]) && -+ isxdigit(params[1]) && -+ params[2] == ':' && -+ isxdigit(params[3]) && -+ isxdigit(params[4])) { /* old 2.4 format */ -+ if (sscanf(params, "%02x:%02x %"PRIu64, &major, &minor, &target->offset) != 3) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } else if (isdigit(params[0]) && -+ strchr(params, ':')) { /* dm_bdevname/format_dev_t (>= 2.6.0-test4?) format */ -+ if (sscanf(params, "%u:%u %"PRIu64, &major, &minor, &target->offset) != 3) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } else { /* >= 2.5.69 format, this should go away soon */ -+ struct stat st; -+ FILE *file; -+ -+ p = strrchr(params, ' '); -+ if (p == NULL) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ *p = 0; -+ sprintf(buf, "/dev/%s", params); /* let's hope it's there */ -+ if (stat(buf, &st) == 0) { -+ if (!S_ISBLK(st.st_mode)) -+ die("device-mapper: %s is not a valid block device", buf); -+ major = MAJOR(st.st_rdev); -+ minor = MINOR(st.st_rdev); -+ } else { /* let's try sysfs */ -+ int dev; -+ sprintf(buf, "/sys/block/%s/dev", params); -+ file = fopen(buf, "r"); -+ if (!file) -+ die("device-mapper: \"%s\" could not be opened. /sys mounted?", buf); -+ if (!fgets(buf, PATH_MAX, file)) -+ die("device-mapper: read error from \"/sys/block/%s/dev\"", params); -+ if (sscanf(buf, "%u:%u", &major, &minor) != 2) { -+ if (sscanf(buf, "%x", &dev) != 1) -+ die("device-mapper: error getting device from \"%s\"", buf); -+ major = MAJOR(dev); -+ minor = MINOR(dev); -+ } -+ (void) fclose(file); -+ } -+ *p = ' '; -+ if (sscanf(p+1, "%"PRIu64, &target->offset) != 1) -+ die("device-mapper: parse error in linear params (\"%s\")", params); -+ } -+ target->device = (major << 8) | minor; -+ if (!device) -+ device = target->device; -+ target->next = dm_table->target; -+ dm_table->target = target; -+ } while(next); -+ -+ dm_task_destroy(dmt); -+ -+ dev_close(&dev); -+ } -+ -+ if (!device) -+ die("device-mapper: Error finding real device"); -+ geo->base_dev = device; -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(device) == dm_major_list[i]) -+ break; -+ } -+#endif - - if (verbose>=5) printf("geo_get: device %04X, all=%d\n", device, all); - #ifdef LCF_LVM -@@ -1188,14 +1415,50 @@ - die("EVMS boot volume cannot be on multiple disks.\n"); - sector = ebm.rsector + ((offset/SECTOR_SIZE) % geo->spb) + geo->start; - } -- else { -- sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -- sector += geo->start; -- } --#else -- sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -- sector += geo->start; -+ else -+#endif -+ { -+#ifdef LCF_DEVMAPPER -+ int dev = geo->dev; -+ int i; -+#endif -+ sector = block*geo->spb+((offset/SECTOR_SIZE) % geo->spb); -+#ifdef LCF_DEVMAPPER -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(dev) == dm_major_list[i]) -+ break; -+ while (i < dm_major_nr) { -+ DM_TABLE *dm_table; -+ DM_TARGET *dm_target; -+ -+ for(dm_table = dmtab; dm_table; dm_table = dm_table->next) -+ if (dm_table->device == dev) -+ break; -+ if (!dm_table) -+ die("device-mapper: Mapped device suddenly lost? (%d)", dev); -+ -+ for(dm_target = dm_table->target; dm_target; dm_target = dm_target->next) -+ if (dm_target->start <= sector && sector < (dm_target->start+dm_target->length)) -+ break; -+ if (!dm_target) -+ die("device-mapper: Sector outside mapped device? (%d: %u/%"PRIu64")", -+ geo->base_dev, sector, (uint64_t)(dm_table->target ? -+ (dm_table->target->start+dm_table->target->length) : 0)); -+ -+ dev = dm_target->device; -+ sector = dm_target->offset+(sector-dm_target->start); -+ -+ for(i = 0; i < dm_major_nr; i++) -+ if (MAJOR(dev) == dm_major_list[i]) -+ break; -+ } -+ -+ if (dev != geo->dev && dev != geo->base_dev) -+ die("device-mapper: mapped boot device cannot be on multiple real devices\n"); - #endif -+ sector += geo->start; -+ } -+ - /* DON'T always use CHS addressing on floppies: JRC */ - /* if ((geo->device & 0x80) && (linear || lba32)) { */ - if ((linear || lba32)) { diff --git a/sys-boot/lilo/files/lilo-22.7.2-install-nostrip.patch b/sys-boot/lilo/files/lilo-22.7.2-install-nostrip.patch deleted file mode 100644 index b8d9f2dc5a9b..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-install-nostrip.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- lilo-22.7.2/Makefile~ 2006-07-13 15:10:06.000000000 +0200 -+++ lilo-22.7.2/Makefile 2006-07-13 15:12:47.000000000 +0200 -@@ -439,7 +439,6 @@ - rm -f $$ROOT$(BOOT_DIR)/boot.b; fi - cp mkrescue $$ROOT$(SBIN_DIR) - cp lilo $$ROOT$(SBIN_DIR) -- strip $$ROOT$(SBIN_DIR)/lilo - cp keytab-lilo.pl $$ROOT$(USRSBIN_DIR) - cp manPages/lilo.8 $$ROOT$(MAN_DIR)/man8 - cp manPages/mkrescue.8 $$ROOT$(MAN_DIR)/man8 diff --git a/sys-boot/lilo/files/lilo-22.7.2-makefile.patch b/sys-boot/lilo/files/lilo-22.7.2-makefile.patch deleted file mode 100644 index 0b23b353223f..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-makefile.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- Makefile.orig 2006-09-05 12:11:46.000000000 +0100 -+++ Makefile 2006-09-05 12:12:11.000000000 +0100 -@@ -77,8 +77,7 @@ - CFG_DIR=/etc - BOOT_DIR=/boot - USRSBIN_DIR=/usr/sbin --# set the following if you wish LILO.COM to be installed --DOS_DIR=/dosC/boot -+ - # - #MAN_DIR=`if [ -z "$(whereis lilo | grep 'lilo.8')" ]; then \ - # whereis lilo | sed -e "sX.* /usrX/usrX" -e "sX/man8/lilo.8.*XX" ; \ -@@ -155,10 +154,7 @@ - # - # everything needed to run, just short of installation - # --all: lilo bootsect.b diag1.img # OBSOLETE: $(BOOTS) edit dparam.com activate -- if [ -x /usr/bin/bcc -o -x /usr/local/bin/bcc ]; then \ -- make diagnostic; \ -- make dosexe; fi -+all: lilo - - # - # everything above plus the statically linked version diff --git a/sys-boot/lilo/files/lilo-22.7.2-manpath.patch b/sys-boot/lilo/files/lilo-22.7.2-manpath.patch deleted file mode 100644 index 7860a997680e..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-manpath.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- lilo-22.7.1/Makefile.orig 2006-01-07 13:19:53.000000000 +0000 -+++ lilo-22.7.1/Makefile 2006-01-07 13:20:35.000000000 +0000 -@@ -81,8 +81,7 @@ - # elif [ -f /usr/bin/manpath ]; then \ - # manpath | sed "s/:.*//"; else echo /usr/man; fi` - # --MAN_DIR=`if [ -f /usr/bin/manpath ]; then \ -- manpath | sed "s/:.*//"; else echo /usr/man; fi` -+MAN_DIR=/usr/share/man - BUILTIN=1 - - PCONFIG=$(KVER) $(LILO) `( if [ -r $$ROOT/etc/lilo.defines ]; then \ diff --git a/sys-boot/lilo/files/lilo-22.7.2-novga.patch b/sys-boot/lilo/files/lilo-22.7.2-novga.patch deleted file mode 100644 index 0b145eb29b70..000000000000 --- a/sys-boot/lilo/files/lilo-22.7.2-novga.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -uNr lilo-22.7.2.ORIG/first.S lilo-22.7.2/first.S ---- lilo-22.7.2.ORIG/first.S 2006-07-12 14:14:16.000000000 +0100 -+++ lilo-22.7.2/first.S 2006-07-12 14:14:34.000000000 +0100 -@@ -531,7 +531,8 @@ - ; display - write byte in AL to console - ; preserves all register contents - ; --display: pusha ! make sure no register is changed -+display: ret -+ pusha ! make sure no register is changed - mov bx,#7 ! BH=0, BL=07 - mov ah,#14 - int 0x10 -diff -uNr lilo-22.7.2.ORIG/second.S lilo-22.7.2/second.S ---- lilo-22.7.2.ORIG/second.S 2006-07-12 14:14:16.000000000 +0100 -+++ lilo-22.7.2/second.S 2006-07-12 14:14:34.000000000 +0100 -@@ -2342,7 +2342,7 @@ - ;;; xor bh,bh ; display on screen - mov bx,#7 ; set color for TEXT interface - mov ah,#14 -- int 0x10 -+;; int 0x10 - dispret: - pop bx ; restore BX - ret |