QA fix, bug #70112. Stable on x86. Cleaned out old ebuild and patches.
authorTony Vroon <chainsaw@gentoo.org>
Fri, 5 Nov 2004 11:11:11 +0000 (11:11 +0000)
committerTony Vroon <chainsaw@gentoo.org>
Fri, 5 Nov 2004 11:11:11 +0000 (11:11 +0000)
sys-boot/lilo/ChangeLog
sys-boot/lilo/Manifest
sys-boot/lilo/files/digest-lilo-22.5.9-r2 [deleted file]
sys-boot/lilo/files/lilo-22.5.9-correct-usage-info.patch [deleted file]
sys-boot/lilo/files/lilo-22.5.9-create-install-dirs.patch [deleted file]
sys-boot/lilo/files/lilo-22.5.9-devmapper_gentoo.patch [deleted file]
sys-boot/lilo/files/lilo-22.5.9-glibc233.patch [deleted file]
sys-boot/lilo/files/lilo-22.5.9-lvm.2-6headers.patch [deleted file]
sys-boot/lilo/files/lilo-glibc233.patch [deleted file]
sys-boot/lilo/lilo-22.5.9-r2.ebuild [deleted file]
sys-boot/lilo/lilo-22.6.ebuild

index 6bb9bd5601f6e8d43f4bba42194b26ab7dda5195..e25e5c328c6dd88368475e0638ecbe820e23ab85 100644 (file)
@@ -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
index 4699c66a752a929817e6d4b4b30a716142f0365d..ac660adfb41def415ba858213fbad7708f8040e7 100644 (file)
@@ -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 (file)
index e0d3ab9..0000000
+++ /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 (file)
index 3812115..0000000
+++ /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 (file)
index c9e58a2..0000000
+++ /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 (file)
index 847f953..0000000
+++ /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 (file)
index 61cb30d..0000000
+++ /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 (file)
index 7c93db0..0000000
+++ /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 (file)
index 96d582d..0000000
+++ /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 (file)
index cb42960..0000000
+++ /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
-}
index cdc0b64e7bb35c14320365cc760f6035fd5ad155..3cc0a744f756f80e0c2b3d2582fc2b529efa85b9 100644 (file)
@@ -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."