summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Vroon <chainsaw@gentoo.org>2004-11-05 11:11:11 +0000
committerTony Vroon <chainsaw@gentoo.org>2004-11-05 11:11:11 +0000
commit9e94f4291f6bc9858fa4fcb9c14d11cd1413323e (patch)
tree788ff082498520eec103d2a1c802167d68751eb2 /sys-boot/lilo
parentAdd virtual/gsasl (diff)
downloadhistorical-9e94f4291f6bc9858fa4fcb9c14d11cd1413323e.tar.gz
historical-9e94f4291f6bc9858fa4fcb9c14d11cd1413323e.tar.bz2
historical-9e94f4291f6bc9858fa4fcb9c14d11cd1413323e.zip
QA fix, bug #70112. Stable on x86. Cleaned out old ebuild and patches.
Diffstat (limited to 'sys-boot/lilo')
-rw-r--r--sys-boot/lilo/ChangeLog7
-rw-r--r--sys-boot/lilo/Manifest22
-rw-r--r--sys-boot/lilo/files/digest-lilo-22.5.9-r22
-rw-r--r--sys-boot/lilo/files/lilo-22.5.9-correct-usage-info.patch13
-rw-r--r--sys-boot/lilo/files/lilo-22.5.9-create-install-dirs.patch21
-rw-r--r--sys-boot/lilo/files/lilo-22.5.9-devmapper_gentoo.patch407
-rw-r--r--sys-boot/lilo/files/lilo-22.5.9-glibc233.patch24
-rw-r--r--sys-boot/lilo/files/lilo-22.5.9-lvm.2-6headers.patch16
-rw-r--r--sys-boot/lilo/files/lilo-glibc233.patch24
-rw-r--r--sys-boot/lilo/lilo-22.5.9-r2.ebuild198
-rw-r--r--sys-boot/lilo/lilo-22.6.ebuild16
11 files changed, 15 insertions, 735 deletions
diff --git a/sys-boot/lilo/ChangeLog b/sys-boot/lilo/ChangeLog
index 6bb9bd5601f6..e25e5c328c6d 100644
--- a/sys-boot/lilo/ChangeLog
+++ b/sys-boot/lilo/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sys-boot/lilo
# Copyright 1999-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/ChangeLog,v 1.25 2004/10/17 01:56:05 solar Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/ChangeLog,v 1.26 2004/11/05 11:11:11 chainsaw Exp $
+
+ 05 Nov 2004; Tony Vroon <chainsaw@gentoo.org> -lilo-22.5.9-r2.ebuild,
+ lilo-22.6.ebuild:
+ Use CC functionality in toolchain eclass, closes bug #70112. Marked stable
+ on x86, old ebuild cleaned.
16 Oct 2004; <solar@gentoo.org> lilo-22.5.9-r2.ebuild, lilo-22.6.ebuild:
removed erroneous RDEPEND on sed4
diff --git a/sys-boot/lilo/Manifest b/sys-boot/lilo/Manifest
index 4699c66a752a..ac660adfb41d 100644
--- a/sys-boot/lilo/Manifest
+++ b/sys-boot/lilo/Manifest
@@ -1,26 +1,8 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-MD5 9d604c5551670fd0725d1d434c55ff38 lilo-22.6.ebuild 4863
-MD5 61f7649363167fd2015fe8b74b995502 lilo-22.5.9-r2.ebuild 5070
-MD5 1dbda5e7f59173cf0e1da8d92874278d ChangeLog 1807
+MD5 604d21f27d3d62c0687b8c9229d0e489 lilo-22.6.ebuild 4759
+MD5 26875dbb7fab6998f65939be7dca0d2a ChangeLog 2010
MD5 eeee4743c4e463eeed3a7a4c15380e0d metadata.xml 254
-MD5 ab2657bc635313522eb791e30b1166ef files/lilo-22.5.9-correct-usage-info.patch 683
-MD5 925f55c96304e240bdb20cc35c6745ae files/digest-lilo-22.5.9-r2 124
MD5 42faa8a84fae547fe181da0ad7b67b04 files/lilo-22.6-devmapper_gentoo.patch 11826
-MD5 77acd52c9bdf0a660026777a3419ccb3 files/lilo-22.5.9-glibc233.patch 584
MD5 a12e27d3f9076bb13d357533303f77ff files/digest-lilo-22.6 122
MD5 2419c22323e1cfdbbc1ca149cb05e74d files/lilo-22.6-create-install-dirs.patch 970
-MD5 2419c22323e1cfdbbc1ca149cb05e74d files/lilo-22.5.9-create-install-dirs.patch 970
MD5 5f2172291cc1252b30f5a60981a51ac4 files/lilo.conf 1722
MD5 ab2657bc635313522eb791e30b1166ef files/lilo-22.6-correct-usage-info.patch 683
-MD5 348f7a96783361cf8f0a0703bfeaa03a files/lilo-22.5.9-lvm.2-6headers.patch 470
-MD5 fdc2575e3b1e96d80ba2c1409abcad0e files/lilo-22.5.9-devmapper_gentoo.patch 11884
-MD5 ca44cc6ec0aecfe30c49c455f74aacec files/lilo-glibc233.patch 640
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.2.4 (GNU/Linux)
-
-iD8DBQFBcdEO94CCfB4KcwwRAj6oAJ9DA0zJOOVU5OcbBU1Mry3Ja6ERHgCfZF33
-+IxtTvrlBqKwz+a0zREILGQ=
-=AcWm
------END PGP SIGNATURE-----
diff --git a/sys-boot/lilo/files/digest-lilo-22.5.9-r2 b/sys-boot/lilo/files/digest-lilo-22.5.9-r2
deleted file mode 100644
index e0d3ab92e91c..000000000000
--- a/sys-boot/lilo/files/digest-lilo-22.5.9-r2
+++ /dev/null
@@ -1,2 +0,0 @@
-MD5 d5b561190cbe0968d50e09e0031edb79 lilo-22.5.9.tar.gz 415378
-MD5 62a7ebbbf998d84e06a3f18569567a9e dolilo-0.2.tar.bz2 4263
diff --git a/sys-boot/lilo/files/lilo-22.5.9-correct-usage-info.patch b/sys-boot/lilo/files/lilo-22.5.9-correct-usage-info.patch
deleted file mode 100644
index 3812115fe41d..000000000000
--- a/sys-boot/lilo/files/lilo-22.5.9-correct-usage-info.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -uNr lilo-22.5.8-ORIG/lilo.c lilo-22.5.8/lilo.c
---- lilo-22.5.8-ORIG/lilo.c 2004-06-07 19:47:58.028442608 +0100
-+++ lilo-22.5.8/lilo.c 2004-06-07 19:50:17.837188448 +0100
-@@ -336,7 +336,8 @@
- fprintf(errstd,"%7s%s -M /dev/XXX [ mbr | ext ]\tinstall master boot record\n","",name);
- 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);
-- 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.5.9-create-install-dirs.patch b/sys-boot/lilo/files/lilo-22.5.9-create-install-dirs.patch
deleted file mode 100644
index c9e58a2312a5..000000000000
--- a/sys-boot/lilo/files/lilo-22.5.9-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.5.9-devmapper_gentoo.patch b/sys-boot/lilo/files/lilo-22.5.9-devmapper_gentoo.patch
deleted file mode 100644
index 847f953b061e..000000000000
--- a/sys-boot/lilo/files/lilo-22.5.9-devmapper_gentoo.patch
+++ /dev/null
@@ -1,407 +0,0 @@
-diff -uNr lilo-22.5.9.orig/Makefile lilo-22.5.9/Makefile
---- lilo-22.5.9.orig/Makefile 2004-06-09 22:41:24.519057048 +0100
-+++ lilo-22.5.9/Makefile 2004-06-09 22:42:25.269821528 +0100
-@@ -53,7 +53,8 @@
- # 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 -DATARAID
-+ -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL -DATARAID \
-+ -DDEVMAPPER
-
- # set the compiler optimization level
-
-@@ -88,6 +89,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 \
- temp.o partition.o identify.o probe.o shs2.o loader.o edit.o
-
-@@ -255,7 +258,11 @@
- cp -p dparam.S dparam.s
-
- lilo: $(OBJS)
-+ifneq (,$(findstring DEVMAPPER,$(CONFIG)))
-+ $(CC) -o lilo -L/lib $(LDFLAGS) $(DEVMAPPER) $(OBJS) $(LIBS)
-+else
- $(CC) -o lilo $(LDFLAGS) $(OBJS) $(LIBS)
-+endif
-
- lilo-static: $(OBJS)
- $(CC) -o lilo-static -static $(LDFLAGS) $(OBJS) $(LIBS)
-diff -uNr lilo-22.5.9.orig/geometry.c lilo-22.5.9/geometry.c
---- lilo-22.5.9.orig/geometry.c 2004-06-09 22:41:24.526055984 +0100
-+++ lilo-22.5.9/geometry.c 2004-06-09 22:41:42.016397048 +0100
-@@ -14,6 +14,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
-@@ -26,6 +29,10 @@
-
- #include <string.h>
-
-+#ifdef LCF_DEVMAPPER
-+#include <libdevmapper.h>
-+#endif
-+
- #include "config.h"
- #include "lilo.h"
- #include "common.h"
-@@ -60,6 +67,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;
-@@ -121,6 +147,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;
-@@ -129,29 +161,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
- }
-
-
-@@ -775,6 +847,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, &params);
-+
-+ 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
-@@ -1146,14 +1373,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.5.9-glibc233.patch b/sys-boot/lilo/files/lilo-22.5.9-glibc233.patch
deleted file mode 100644
index 61cb30dc963c..000000000000
--- a/sys-boot/lilo/files/lilo-22.5.9-glibc233.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- boot.c.orig 2003-11-25 05:31:24.000000000 +0000
-+++ boot.c 2004-06-09 16:35:49.092481712 +0100
-@@ -17,6 +17,9 @@
- #include <ctype.h>
- #include <fcntl.h>
- #include <errno.h>
-+#ifndef PAGE_SIZE
-+# include <asm/page.h>
-+#endif
- #include <sys/stat.h>
-
- #include "config.h"
---- partition.c.orig 2003-11-25 06:00:02.000000000 +0000
-+++ partition.c 2004-06-09 16:36:51.579982168 +0100
-@@ -17,6 +17,9 @@
- #include <ctype.h>
- #include <fcntl.h>
- #include <errno.h>
-+#ifndef PAGE_SIZE
-+# include <asm/page.h>
-+#endif
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <asm/unistd.h>
diff --git a/sys-boot/lilo/files/lilo-22.5.9-lvm.2-6headers.patch b/sys-boot/lilo/files/lilo-22.5.9-lvm.2-6headers.patch
deleted file mode 100644
index 7c93db0ae03c..000000000000
--- a/sys-boot/lilo/files/lilo-22.5.9-lvm.2-6headers.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- lilo-22.5.8/geometry.c 2003-10-10 00:59:07.000000000 +0100
-+++ lilo-22.5.8/geometry.c 2004-01-28 19:28:17.000000000 +0000
-@@ -99,6 +99,13 @@
- #define HDIO_GETGEO HDIO_REQ
- #endif
-
-+/* plasmaroo@gentoo.org :: 2.6 Compatibility */
-+
-+#undef _IOR
-+#undef _IOWR
-+
-+#define _IOR(type,nr,size) _IOC(_IOC_READ,(type),(nr),sizeof(size))
-+#define _IOWR(type,nr,size) _IOC(_IOC_READ|_IOC_WRITE,(type),(nr),sizeof(size))
-
- typedef struct _st_buf {
- struct _st_buf *next;
diff --git a/sys-boot/lilo/files/lilo-glibc233.patch b/sys-boot/lilo/files/lilo-glibc233.patch
deleted file mode 100644
index 96d582d418e8..000000000000
--- a/sys-boot/lilo/files/lilo-glibc233.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- lilo-22.5.6/boot.c 2003-08-03 21:02:55.000000000 +0200
-+++ lilo-22.5.6.glibc233/boot.c 2003-08-03 21:03:17.000000000 +0200
-@@ -18,6 +18,9 @@
- #include <fcntl.h>
- #include <errno.h>
- #include <a.out.h>
-+#ifndef PAGE_SIZE
-+# include <asm/page.h>
-+#endif
- #include <sys/stat.h>
-
- #include "config.h"
---- lilo-22.5.6/partition.c 2003-08-03 21:03:33.000000000 +0200
-+++ lilo-22.5.6.glibc233/partition.c 2003-08-03 21:03:56.000000000 +0200
-@@ -18,6 +18,9 @@
- #include <fcntl.h>
- #include <errno.h>
- #include <a.out.h>
-+#ifndef PAGE_SIZE
-+# include <asm/page.h>
-+#endif
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <asm/unistd.h>
diff --git a/sys-boot/lilo/lilo-22.5.9-r2.ebuild b/sys-boot/lilo/lilo-22.5.9-r2.ebuild
deleted file mode 100644
index cb429600484b..000000000000
--- a/sys-boot/lilo/lilo-22.5.9-r2.ebuild
+++ /dev/null
@@ -1,198 +0,0 @@
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/lilo-22.5.9-r2.ebuild,v 1.5 2004/10/17 01:56:05 solar Exp $
-
-inherit eutils flag-o-matic
-
-DOLILO_V="0.2"
-IUSE="devmap static"
-
-DESCRIPTION="Standard Linux boot loader"
-HOMEPAGE="http://lilo.go.dyndns.org/pub/linux/lilo/"
-DOLILO_TAR="dolilo-${DOLILO_V}.tar.bz2"
-SRC_URI="http://home.san.rr.com/johninsd/pub/linux/lilo/${P}.tar.gz
- ftp://metalab.unc.edu/pub/Linux/system/boot/lilo/${P}.tar.gz
- ftp://metalab.unc.edu/pub/Linux/system/boot/lilo/obsolete/${P}.tar.gz
- mirror://gentoo/${DOLILO_TAR}"
-
-SLOT="0"
-LICENSE="BSD GPL-2"
-KEYWORDS="-* x86"
-
-RDEPEND="devmap? ( >=sys-libs/device-mapper-1.00.08 )"
-DEPEND="${RDEPEND}
- dev-lang/nasm
- >=sys-apps/sed-4
- >=sys-devel/bin86-0.15.5"
-
-PROVIDE="virtual/bootloader"
-
-src_unpack() {
- einfo
- einfo "If you want to use lilo with device mapper, please enable the"
- einfo "\"devmap\" USE flag."
- einfo
-
- unpack ${P}.tar.gz
-
- # Do not try and build the dos crap.
- sed -i -e 's|^all:.*$|all: lilo|' ${S}/Makefile
-
- # The bootlogo patch from SuSE linux, which was originally in
- # here, has been dropped because it's no longer compatible
- # with lilo since the 22.5.x series.
- # Quequero has done a good attempt to port the patch in bug
- # #19397, but unfortunately that breaks the timeout at boot.
- # If you can overcome these problems, a patch is very welcome.
-
- if use devmap; then
- # devmapper-patch (boot on evms/lvm2)
- cd ${S}; epatch ${FILESDIR}/${P}-devmapper_gentoo.patch
- fi
-
- cd ${S}
- unpack ${DOLILO_TAR}
-
- # Fixup things for glibc-2.3.3 (and later CVS versions of 2.3.2)
- epatch ${FILESDIR}/${P}-glibc233.patch
- # Fix building against 2.6 headers
- epatch ${FILESDIR}/${P}-lvm.2-6headers.patch
- # Fix creating install dirs, bug #39405
- epatch ${FILESDIR}/${P}-create-install-dirs.patch
- # Correctly document commandline options -v and -V, bug #43554
- epatch ${FILESDIR}/${P}-correct-usage-info.patch
- # Get the manpage path right
- sed -i -e s,usr/man,usr/share/man,g ${S}/Makefile
-}
-
-src_compile() {
- # hardened automatic PIC plus PIE building should be suppressed
- # because of assembler instructions that cannot be compiled PIC
- HARDENED_CFLAGS="`test_flag -fno-pic` `test_flag -nopie`"
-
- # we explicitly prevent the custom CFLAGS for stability reasons
- if use static; then
- emake CC="${CC:=gcc} ${HARDENED_CFLAGS}" lilo-static || die
- mv lilo-static lilo || die
- else
- emake CC="${CC:=gcc} ${HARDENED_CFLAGS}" lilo || die
- fi
-}
-
-src_install() {
- keepdir /boot
- make ROOT=${D} install || die
-
- into /
- dosbin ${S}/dolilo/dolilo
-
- into /usr
- dosbin keytab-lilo.pl
-
- insinto /etc
- newins ${FILESDIR}/lilo.conf lilo.conf.example
-
- insinto /etc/conf.d
- newins ${S}/dolilo/dolilo.conf.d dolilo.example
-
- doman manPages/*.[5-8]
- dodoc CHANGES COPYING INCOMPAT README*
- docinto samples ; dodoc sample/*
-}
-
-# Check whether LILO is installed
-# This function is from /usr/sbin/mkboot from debianutils, with copyright:
-#
-# Debian GNU/Linux
-# Copyright 1996-1997 Guy Maor <maor@debian.org>
-#
-# Modified for Gentoo for use with the lilo ebuild by:
-# Martin Schlemmer <azarah@gentoo.org> (16 Mar 2003)
-#
-lilocheck () {
- local bootpart=
- local rootpart="$(rdev 2> /dev/null | cut -d ' ' -f 1 2> /dev/null)"
-
- echo
- einfon "Checking for LILO ..."
-
- if [ "$(whoami)" != "root" ]
- then
- echo; echo
- eerror "Only root can check for LILO!"
- return 1
- fi
-
- if [ -z "${rootpart}" ]
- then
- echo; echo
- eerror "Could not determine root partition!"
- return 1
- fi
-
- if [ ! -f /etc/lilo.conf -o ! -x /sbin/lilo ]
- then
- echo " No"
- return 1
- fi
-
- bootpart="$(sed -n "s:^boot[ ]*=[ ]*\(.*\)[ ]*:\1:p" /etc/lilo.conf)"
-
- if [ -z "${bootpart}" ]
- then
- # lilo defaults to current root when 'boot=' is not present
- bootpart="${rootpart}"
- fi
-
- if ! dd if=${bootpart} ibs=16 count=1 2>&- | grep -q 'LILO'
- then
- echo; echo
- ewarn "Yes, but I couldn't find a LILO signature on ${bootpart}"
- ewarn "Check your /etc/lilo.conf, or run /sbin/lilo by hand."
- return 1
- fi
-
- echo " Yes, on ${bootpart}"
-
- return 0
-}
-
-
-pkg_postinst() {
- if [ ! -e ${ROOT}/boot/boot.b -a ! -L ${ROOT}/boot/boot.b ]
- then
- [ -f "${ROOT}/boot/boot-menu.b" ] && \
- ln -snf boot-menu.b ${ROOT}/boot/boot.b
- fi
-
- if [ "${ROOT}" = "/" ]
- then
- if lilocheck
- then
- einfo "Running DOLILO to complete the install ..."
- # do not redirect to /dev/null because it may display some input
- # prompt
- /sbin/dolilo
- if [ "$?" -ne 0 ]
- then
- echo
- ewarn "Running /sbin/dolilo failed! Please check what the problem is"
- ewarn "before your next reboot."
-
- ebeep 5
- epause 5
- fi
- fi
- echo
- fi
-
- echo
- einfo "Please note that all the loader files (/boot/*.b) are now linked"
- einfo "into LILO, and thus no longer installed."
- einfo "Issue 'dolilo' instead of 'lilo' to have a friendly wrapper that"
- einfo "handles mounting and unmounting /boot for you. It can do more then"
- einfo "that when asked, edit /etc/conf.d/dolilo to harness it's full potential."
- ebeep 5
- epause 3
- echo
-}
diff --git a/sys-boot/lilo/lilo-22.6.ebuild b/sys-boot/lilo/lilo-22.6.ebuild
index cdc0b64e7bb3..3cc0a744f756 100644
--- a/sys-boot/lilo/lilo-22.6.ebuild
+++ b/sys-boot/lilo/lilo-22.6.ebuild
@@ -1,8 +1,8 @@
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/lilo-22.6.ebuild,v 1.2 2004/10/17 01:56:05 solar Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/lilo/lilo-22.6.ebuild,v 1.3 2004/11/05 11:11:11 chainsaw Exp $
-inherit eutils flag-o-matic
+inherit eutils flag-o-matic toolchain-funcs
DOLILO_V="0.2"
IUSE="devmap static"
@@ -17,11 +17,11 @@ SRC_URI="http://home.san.rr.com/johninsd/pub/linux/lilo/${P}.tar.gz
SLOT="0"
LICENSE="BSD GPL-2"
-KEYWORDS="-* ~x86"
+KEYWORDS="-* x86"
-RDEPEND="devmap? ( >=sys-libs/device-mapper-1.00.08 )"
+RDEPEND=">=sys-apps/sed-4
+ devmap? ( >=sys-libs/device-mapper-1.00.08 )"
DEPEND="${RDEPEND}
- >=sys-apps/sed-4
>=sys-devel/bin86-0.15.5"
PROVIDE="virtual/bootloader"
@@ -67,10 +67,10 @@ src_compile() {
# we explicitly prevent the custom CFLAGS for stability reasons
if use static; then
- emake CC="${CC:=gcc} ${HARDENED_CFLAGS}" lilo-static || die
+ emake CC="$(tc-getCC) ${HARDENED_CFLAGS}" lilo-static || die
mv lilo-static lilo || die
else
- emake CC="${CC:=gcc} ${HARDENED_CFLAGS}" lilo || die
+ emake CC="$(tc-getCC) ${HARDENED_CFLAGS}" lilo || die
fi
}
@@ -182,8 +182,6 @@ pkg_postinst() {
fi
echo
- einfo "Please note that all the loader files (/boot/*.b) are now linked"
- einfo "into LILO, and thus no longer installed."
einfo "Issue 'dolilo' instead of 'lilo' to have a friendly wrapper that"
einfo "handles mounting and unmounting /boot for you. It can do more then"
einfo "that when asked, edit /etc/conf.d/dolilo to harness it's full potential."