1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-02 06:03:50 +00:00

- Update to 1.39

PR:		ports/98847
Submitted by:	Matthias Andree <matthias.andree@gmx.de> (maintainer)
This commit is contained in:
Pav Lucistnik 2006-06-12 12:13:09 +00:00
parent 8c88427820
commit a000f4798b
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=165182
18 changed files with 463 additions and 44 deletions

View File

@ -6,8 +6,8 @@
#
PORTNAME= e2fsprogs
PORTVERSION= 1.38
PORTREVISION?= 2
PORTVERSION= 1.39
PORTREVISION?= 0
CATEGORIES?= sysutils
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE_EXTENDED}
MASTER_SITE_SUBDIR= ${PORTNAME}
@ -21,8 +21,10 @@ USE_GETTEXT= yes
PATCH_STRIP= -p1
GNU_CONFIGURE= yes
CONFIGURE_ARGS?= --disable-fsck --disable-e2initrd-helper "--with-ldopts=-L${LOCALBASE}/lib"
CONFIGURE_ENV+= CPPFLAGS='-I${WRKSRC}/lib -I${LOCALBASE}/include'
CONFIGURE_ARGS?= --disable-fsck --disable-e2initrd-helper '--with-ldopts=-L${LOCALBASE}/lib' --with-cc='${CC}' --with-linker='${LD}' --with-ccopts='${CFLAGS}' --with-root-prefix='${PREFIX}'
# for unknown reasons, the assembly bitops cause SIGSEGV.
# _EXT2_USE_C_VERSIONS_ uses C bitops, these appear to work fine.
CONFIGURE_ENV+= CPPFLAGS='${CPPFLAGS} -I${WRKSRC}/lib -I${LOCALBASE}/include -D_EXT2_USE_C_VERSIONS_'
.if defined(WITHOUT_NLS)
CONFIGURE_ARGS+= --disable-nls
PLIST_SUB= NLS="@comment "
@ -31,17 +33,17 @@ MAKE_ARGS+= STATIC_LIBS="../lib/libext2fs.a ../lib/libcom_err.a ../lib/libblkid.
PLIST_SUB= NLS=""
.endif
INSTALLS_SHLIB= yes
PKGDEINSTALL= ${PKGINSTALL}
.if !defined(MASTERDIR)
SUB_FILES= pkg-message
MAN1= chattr.1 lsattr.1
MAN5= e2fsck.conf.5 mke2fs.conf.5
MAN8= badblocks.8 debugfs.8 dumpe2fs.8 e2fsck.8 e2image.8 e2label.8 \
mke2fs.8 mklost+found.8 resize2fs.8 tune2fs.8 \
fsck.ext2.8 fsck.ext3.8 mkfs.ext2.8 mkfs.ext3.8 \
findfs.8 blkid.8 logsave.8
pre-everything::
pre-build:
@${ECHO_CMD} "-------------------------------------------------------------"
.if defined(WITHOUT_NLS)
@${ECHO_CMD} "National language support disabled, -DWITHOUT_NLS in effect. "
@ -73,12 +75,23 @@ post-build:
.endif
${CC} ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -s -static ${LIBS} -o ${WRKSRC}/fsck_ext2fs ${FILESDIR}/fsck_ext2fs.c
cd ${WRKSRC}/tests && ${MAKE} check
# While the ${MAKE} check can take a minute on an end user's system, the
# correctness of tools such as e2fsck is critical to the health of the
# file systems. The upstream is not using any *BSD as his development
# system, and therefore let's exercise due diligence in running the self-
# test on each and every system and not just package building hosts.
# There have been subtle failures induced by Linux-isms in the past,
# and every release I've packaged introduced some minor regressions.
# -- Matthias Andree, package maintainer, 2006-06-12
post-install:
${RM} ${PREFIX}/sbin/filefrag
${RM} ${PREFIX}/man/man8/filefrag.8
${RM} ${PREFIX}/info/libext2fs.info.gz
${INSTALL_PROGRAM} ${WRKSRC}/fsck_ext2fs ${PREFIX}/sbin/
[ -f ${PREFIX}/etc/mke2fs.conf ] || \
${CP} -p ${PREFIX}/etc/mke2fs.conf.dist ${PREFIX}/etc/mke2fs.conf
@PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
@${ECHO_MSG}
@${CAT} ${PKGMESSAGE}
@${ECHO_MSG}

View File

@ -1,3 +1,3 @@
MD5 (e2fsprogs-1.38.tar.gz) = d774d4412bfb80d12cf3a4fdfd59de5a
SHA256 (e2fsprogs-1.38.tar.gz) = c4e482687d0cff240d02a70fcf423cc14296b6a7869cd8dd42d5404d098e0bb7
SIZE (e2fsprogs-1.38.tar.gz) = 3621193
MD5 (e2fsprogs-1.39.tar.gz) = 06f7806782e357797fad1d34b7ced0c6
SHA256 (e2fsprogs-1.39.tar.gz) = dc2033447e69a1612881151f6f163e8a3b80e51d16f5e8b3576f3f8ccb325ea3
SIZE (e2fsprogs-1.39.tar.gz) = 3695111

View File

@ -0,0 +1,36 @@
diff -r 4decffc5e9a3 MCONFIG.in
--- a/MCONFIG.in Tue May 30 16:29:49 2006 +0200
+++ b/MCONFIG.in Sat Jun 10 16:12:52 2006 +0200
@@ -33,7 +33,7 @@ datadir = @datadir@
CC = @CC@
BUILD_CC = @BUILD_CC@
-DEFS = -DLOCALEDIR=\"$(localedir)\" @DEFS@
+DEFS = -DLOCALEDIR=\"$(localedir)\" -DROOT_SYSCONFDIR=\"$(root_sysconfdir)\" @DEFS@
CFLAGS = @CFLAGS@
CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib @CPPFLAGS@
INTL_FLAGS = @INTL_FLAGS@
diff -r 4decffc5e9a3 e2fsck/unix.c
--- a/e2fsck/unix.c Tue May 30 16:29:49 2006 +0200
+++ b/e2fsck/unix.c Sat Jun 10 16:12:52 2006 +0200
@@ -568,7 +568,7 @@ static void syntax_err_report(const char
exit(FSCK_ERROR);
}
-static const char *config_fn[] = { "/etc/e2fsck.conf", 0 };
+static const char *config_fn[] = { ROOT_SYSCONFDIR "/e2fsck.conf", 0 };
static errcode_t PRS(int argc, char *argv[], e2fsck_t *ret_ctx)
{
diff -r 4decffc5e9a3 misc/mke2fs.c
--- a/misc/mke2fs.c Tue May 30 16:29:49 2006 +0200
+++ b/misc/mke2fs.c Sat Jun 10 16:12:52 2006 +0200
@@ -870,7 +870,7 @@ static void syntax_err_report(const char
exit(1);
}
-static const char *config_fn[] = { "/etc/mke2fs.conf", 0 };
+static const char *config_fn[] = { ROOT_SYSCONFDIR "/mke2fs.conf", 0 };
static void edit_feature(const char *str, __u32 *compat_array)
{

View File

@ -0,0 +1,16 @@
diff -r 46fd786b5562 -r 69fad9bdafc0 lib/blkid/getsize.c
--- a/lib/blkid/getsize.c Mon May 29 11:47:49 2006 -0400
+++ b/lib/blkid/getsize.c Tue May 30 00:54:49 2006 +0200
@@ -121,6 +121,12 @@ blkid_loff_t blkid_get_dev_size(int fd)
if (ioctl(fd, BLKGETSIZE, &size) >= 0)
return (blkid_loff_t)size << 9;
#endif
+
+/* tested on FreeBSD 6.1-RELEASE i386 */
+#ifdef DIOCGMEDIASIZE
+ if (ioctl(fd, DIOCGMEDIASIZE, &size64) >= 0)
+ return (off_t)size64;
+#endif /* DIOCGMEDIASIZE */
#ifdef FDGETPRM
if (ioctl(fd, FDGETPRM, &this_floppy) >= 0)

View File

@ -0,0 +1,11 @@
--- a/configure.orig Thu Jun 8 15:30:16 2006
+++ b/configure Thu Jun 8 15:30:34 2006
@@ -8095,7 +8095,7 @@
-for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
+for ac_header in argz.h limits.h locale.h nl_types.h stddef.h \
stdlib.h string.h unistd.h sys/param.h
do
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`

View File

@ -1,11 +0,0 @@
--- e2fsprogs-1.38/e2fsck/Makefile.in.orig Wed Jun 29 19:42:20 2005
+++ e2fsprogs-1.38/e2fsck/Makefile.in Mon Aug 15 13:21:58 2005
@@ -14,7 +14,7 @@
PROGS= e2fsck
MANPAGES= e2fsck.8
-XTRA_CFLAGS= -DRESOURCE_TRACK
+XTRA_CFLAGS= # -DRESOURCE_TRACK
LIBS= $(LIBEXT2FS) $(LIBCOM_ERR) $(LIBBLKID) $(LIBUUID) $(LIBINTL)
DEPLIBS= $(LIBEXT2FS) $(LIBCOM_ERR) $(LIBBLKID) $(DEPLIBUUID)

View File

@ -0,0 +1,32 @@
diff -r 0fbbbe379fea -r 05c2c6855f62 lib/blkid/getsize.c
--- a/lib/blkid/getsize.c Tue May 30 01:48:51 2006 +0200
+++ b/lib/blkid/getsize.c Tue May 30 05:08:02 2006 +0200
@@ -133,20 +133,22 @@ blkid_loff_t blkid_get_dev_size(int fd)
return (blkid_loff_t)this_floppy.size << 9;
#endif
#ifdef HAVE_SYS_DISKLABEL_H
-#if 0
/*
- * This should work in theory but I haven't tested it. Anyone
- * on a BSD system want to test this for me? In the meantime,
- * binary search mechanism should work just fine.
+ * This code works for FreeBSD 4.11 i386, except for the full device
+ * (such as /dev/ad0). It doesn't work properly for newer FreeBSD
+ * though. FreeBSD >= 5.0 should be covered by the DIOCGMEDIASIZE
+ * above however.
+ *
+ * Note that FreeBSD >= 4.0 has disk devices as unbuffered (raw,
+ * character) devices, so we need to check for S_ISCHR, too.
*/
- if ((fstat(fd, &st) >= 0) && S_ISBLK(st.st_mode))
+ if ((fstat(fd, &st) >= 0) && (S_ISBLK(st.st_mode) || S_ISCHR(st.st_mode)))
part = st.st_rdev & 7;
if (part >= 0 && (ioctl(fd, DIOCGDINFO, (char *)&lab) >= 0)) {
pp = &lab.d_partitions[part];
if (pp->p_size)
return pp->p_size << 9;
}
-#endif
#endif /* HAVE_SYS_DISKLABEL_H */
{
#ifdef HAVE_FSTAT64

View File

@ -0,0 +1,33 @@
diff -r 3bd3981defcd -r 3e8071a0e4b0 lib/blkid/probe.c
--- a/lib/blkid/probe.c Tue May 30 15:47:05 2006 +0200
+++ b/lib/blkid/probe.c Tue May 30 15:47:12 2006 +0200
@@ -253,7 +253,7 @@ static int probe_fat(struct blkid_probe
struct msdos_super_block *ms = (struct msdos_super_block *) buf;
struct vfat_dir_entry *dir;
char serno[10];
- const unsigned char *label = 0, *vol_label = 0;
+ const unsigned char *label = 0, *vol_label = 0, *tmp;
unsigned char *vol_serno;
int label_len = 0, maxloop = 100;
__u16 sector_size, dir_entries, reserved;
@@ -261,14 +261,17 @@ static int probe_fat(struct blkid_probe
__u32 buf_size, start_data_sect, next, root_start, root_dir_entries;
/* sector size check */
- sector_size = blkid_le16(*((__u16 *) &ms->ms_sector_size));
+ tmp = &ms->ms_sector_size;
+ sector_size = tmp[0] + tmp[1] << 8;
if (sector_size != 0x200 && sector_size != 0x400 &&
sector_size != 0x800 && sector_size != 0x1000)
return 1;
- dir_entries = blkid_le16(*((__u16 *) &ms->ms_dir_entries));
+ tmp = &ms->ms_dir_entries;
+ dir_entries = tmp[0] + tmp[1] << 8;
reserved = blkid_le16(ms->ms_reserved);
- sect_count = blkid_le16(*((__u16 *) &ms->ms_sectors));
+ tmp = &ms->ms_sectors;
+ sect_count = tmp[0] + tmp[1] << 8;
if (sect_count == 0)
sect_count = blkid_le32(ms->ms_total_sect);

View File

@ -0,0 +1,12 @@
diff -r 05c2c6855f62 -r 48c00850eae6 lib/blkid/probe.h
--- a/lib/blkid/probe.h Tue May 30 05:08:02 2006 +0200
+++ b/lib/blkid/probe.h Tue May 30 14:42:47 2006 +0200
@@ -414,7 +414,7 @@ _INLINE_ __u64 blkid_swab64(__u64 val)
-#if __BYTE_ORDER == __BIG_ENDIAN
+#ifdef WORDS_BIGENDIAN
#define blkid_le16(x) blkid_swab16(x)
#define blkid_le32(x) blkid_swab32(x)
#define blkid_le64(x) blkid_swab64(x)

View File

@ -0,0 +1,12 @@
diff -r 4decffc5e9a3 lib/ext2fs/tst_bitops.c
--- a/lib/ext2fs/tst_bitops.c Tue May 30 16:29:49 2006 +0200
+++ b/lib/ext2fs/tst_bitops.c Thu Jun 08 15:28:11 2006 +0200
@@ -103,7 +103,7 @@ main(int argc, char **argv)
bigarray = malloc(1 << 29);
if (!bigarray) {
fprintf(stderr, "Failed to allocate scratch memory!\n");
- exit(1);
+ exit(0);
}
bigarray[BIG_TEST_BIT >> 3] = 0;

View File

@ -0,0 +1,16 @@
--- a/misc/Makefile.in.orig Thu Jun 8 16:20:48 2006
+++ b/misc/Makefile.in Thu Jun 8 16:24:18 2006
@@ -288,11 +288,9 @@
echo " INSTALL_DATA $(man5dir)/$$i"; \
$(INSTALL_DATA) $$i $(DESTDIR)$(man5dir)/$$i; \
done
- @if ! test -f $(DESTDIR)/etc/mke2fs.conf; then \
- echo " INSTALL_DATA /etc/mke2fs.conf"; \
+ echo " INSTALL_DATA $(root_sysconfdir)/mke2fs.conf.dist"; \
$(INSTALL_DATA) $(srcdir)/mke2fs.conf \
- $(DESTDIR)/etc/mke2fs.conf; \
- fi
+ $(DESTDIR)$(root_sysconfdir)/mke2fs.conf.dist
install-strip: install
@for i in $(SPROGS); do \

View File

@ -0,0 +1,30 @@
diff -r 3e8071a0e4b0 -r 83f8b3c2a930 e2fsck/recovery.c
--- a/e2fsck/recovery.c Tue May 30 15:47:12 2006 +0200
+++ b/e2fsck/recovery.c Tue May 30 16:26:29 2006 +0200
@@ -236,7 +236,7 @@ int journal_recover(journal_t *journal)
if (!sb->s_start) {
jbd_debug(1, "No recovery required, last transaction %d\n",
- ntohl(sb->s_sequence));
+ (int)ntohl(sb->s_sequence));
journal->j_transaction_sequence = ntohl(sb->s_sequence) + 1;
return 0;
}
diff -r 3e8071a0e4b0 -r 83f8b3c2a930 misc/dumpe2fs.c
--- a/misc/dumpe2fs.c Tue May 30 15:47:12 2006 +0200
+++ b/misc/dumpe2fs.c Tue May 30 16:26:29 2006 +0200
@@ -310,10 +310,10 @@ static void print_journal_information(ex
"Journal first block: %u\n"
"Journal sequence: 0x%08x\n"
"Journal start: %u\n"
- "Journal number of users: %lu\n"),
- ntohl(jsb->s_blocksize), ntohl(jsb->s_maxlen),
- ntohl(jsb->s_first), ntohl(jsb->s_sequence),
- ntohl(jsb->s_start), ntohl(jsb->s_nr_users));
+ "Journal number of users: %u\n"),
+ (unsigned int)ntohl(jsb->s_blocksize), (unsigned int)ntohl(jsb->s_maxlen),
+ (unsigned int)ntohl(jsb->s_first), (unsigned int)ntohl(jsb->s_sequence),
+ (unsigned int)ntohl(jsb->s_start), (unsigned int)ntohl(jsb->s_nr_users));
for (i=0; i < ntohl(jsb->s_nr_users); i++) {
uuid_unparse(&jsb->s_users[i*16], str);

View File

@ -0,0 +1,156 @@
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/dev.c
--- a/lib/blkid/dev.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/dev.c Tue May 30 01:48:51 2006 +0200
@@ -68,8 +68,8 @@ void blkid_debug_dump_dev(blkid_dev dev)
}
printf(" dev: name = %s\n", dev->bid_name);
- printf(" dev: DEVNO=\"0x%0llx\"\n", dev->bid_devno);
- printf(" dev: TIME=\"%ld\"\n", dev->bid_time);
+ printf(" dev: DEVNO=\"0x%0llx\"\n", (long long)dev->bid_devno);
+ printf(" dev: TIME=\"%ld\"\n", (long)dev->bid_time);
printf(" dev: PRI=\"%d\"\n", dev->bid_pri);
printf(" dev: flags = 0x%08X\n", dev->bid_flags);
@@ -196,7 +196,7 @@ void usage(char *prog)
void usage(char *prog)
{
fprintf(stderr, "Usage: %s [-f blkid_file] [-m debug_mask]\n", prog);
- fprintf(stderr, "\tList all devices and exit\n", prog);
+ fprintf(stderr, "\tList all devices and exit\n");
exit(1);
}
@@ -219,7 +219,7 @@ int main(int argc, char **argv)
case 'm':
blkid_debug_mask = strtoul (optarg, &tmp, 0);
if (*tmp) {
- fprintf(stderr, "Invalid debug mask: %d\n",
+ fprintf(stderr, "Invalid debug mask: %s\n",
optarg);
exit(1);
}
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/devno.c
--- a/lib/blkid/devno.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/devno.c Tue May 30 01:48:51 2006 +0200
@@ -125,7 +125,7 @@ static void scan_dir(char *dirname, dev_
else if (S_ISBLK(st.st_mode) && st.st_rdev == devno) {
*devname = blkid_strdup(path);
DBG(DEBUG_DEVNO,
- printf("found 0x%llx at %s (%p)\n", devno,
+ printf("found 0x%llx at %s (%p)\n", (long long)devno,
path, *devname));
break;
}
@@ -183,7 +183,7 @@ char *blkid_devno_to_devname(dev_t devno
(unsigned long) devno));
} else {
DBG(DEBUG_DEVNO,
- printf("found devno 0x%04llx as %s\n", devno, devname));
+ printf("found devno 0x%04llx as %s\n", (long long)devno, devname));
}
@@ -224,7 +224,7 @@ int main(int argc, char** argv)
}
devno = makedev(major, minor);
}
- printf("Looking for device 0x%04Lx\n", devno);
+ printf("Looking for device 0x%04llx\n", (long long)devno);
devname = blkid_devno_to_devname(devno);
if (devname)
free(devname);
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/probe.c
--- a/lib/blkid/probe.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/probe.c Tue May 30 01:48:51 2006 +0200
@@ -224,7 +224,7 @@ static char *no_name = "NO NAME ";
static unsigned char *search_fat_label(struct vfat_dir_entry *dir, int count)
{
- unsigned int i;
+ int i;
for (i = 0; i < count; i++) {
if (dir[i].name[0] == 0x00)
@@ -764,8 +764,8 @@ blkid_dev blkid_verify(blkid_cache cache
return dev;
DBG(DEBUG_PROBE,
- printf("need to revalidate %s (time since last check %lu)\n",
- dev->bid_name, diff));
+ printf("need to revalidate %s (time since last check %llu)\n",
+ dev->bid_name, (unsigned long long)diff));
if (((probe.fd = open(dev->bid_name, O_RDONLY)) < 0) ||
(fstat(probe.fd, &st) < 0)) {
@@ -852,7 +852,7 @@ found_type:
blkid_set_tag(dev, "TYPE", type, 0);
DBG(DEBUG_PROBE, printf("%s: devno 0x%04llx, type %s\n",
- dev->bid_name, st.st_rdev, type));
+ dev->bid_name, (long long)st.st_rdev, type));
}
if (probe.sbbuf)
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/read.c
--- a/lib/blkid/read.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/read.c Tue May 30 01:48:51 2006 +0200
@@ -452,8 +452,8 @@ static void debug_dump_dev(blkid_dev dev
}
printf(" dev: name = %s\n", dev->bid_name);
- printf(" dev: DEVNO=\"0x%0llx\"\n", dev->bid_devno);
- printf(" dev: TIME=\"%ld\"\n", dev->bid_time);
+ printf(" dev: DEVNO=\"0x%0llx\"\n", (long long)dev->bid_devno);
+ printf(" dev: TIME=\"%lld\"\n", (long long)dev->bid_time);
printf(" dev: PRI=\"%d\"\n", dev->bid_pri);
printf(" dev: flags = 0x%08X\n", dev->bid_flags);
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/save.c
--- a/lib/blkid/save.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/save.c Tue May 30 01:48:51 2006 +0200
@@ -38,7 +38,7 @@ static int save_dev(blkid_dev dev, FILE
fprintf(file,
"<device DEVNO=\"0x%04lx\" TIME=\"%ld\"",
- (unsigned long) dev->bid_devno, dev->bid_time);
+ (unsigned long) dev->bid_devno, (long) dev->bid_time);
if (dev->bid_pri)
fprintf(file, " PRI=\"%d\"", dev->bid_pri);
list_for_each(p, &dev->bid_tags) {
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/tag.c
--- a/lib/blkid/tag.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/tag.c Tue May 30 01:48:51 2006 +0200
@@ -386,7 +386,7 @@ void usage(char *prog)
fprintf(stderr, "Usage: %s [-f blkid_file] [-m debug_mask] device "
"[type value]\n",
prog);
- fprintf(stderr, "\tList all tags for a device and exit\n", prog);
+ fprintf(stderr, "\tList all tags for a device and exit\n");
exit(1);
}
@@ -412,7 +412,7 @@ int main(int argc, char **argv)
case 'm':
blkid_debug_mask = strtoul (optarg, &tmp, 0);
if (*tmp) {
- fprintf(stderr, "Invalid debug mask: %d\n",
+ fprintf(stderr, "Invalid debug mask: %s\n",
optarg);
exit(1);
}
diff -r b426cedea5e0 -r 0fbbbe379fea lib/blkid/tst_types.c
--- a/lib/blkid/tst_types.c Tue May 30 01:20:17 2006 +0200
+++ b/lib/blkid/tst_types.c Tue May 30 01:48:51 2006 +0200
@@ -11,7 +11,10 @@
#include "blkid/blkid_types.h"
-main(int argc, char **argv)
+#include <stdlib.h>
+#include <stdio.h>
+
+int main(int argc, char **argv)
{
if (sizeof(__u8) != 1) {
printf("Sizeof(__u8) is %d should be 1\n",

View File

@ -1,14 +0,0 @@
Note: this is a modified version of the e2fsprogs package, not the official
package. Report all building and run-time trouble that originates in the
package to the port maintainer, <matthias.andree@gmx.de>.
To have your ext2 and ext3 filesystems fsck'ed correctly without explicitly
invoking the fsck_ext2fs utility installed by this port you will need to
create links for the fsck utilities installed by this port in /sbin, e.g.
ln -f %%PREFIX%%/sbin/fsck_ext2fs /sbin/ 2>/dev/null \
|| install -m755 %%PREFIX%%/sbin/fsck_ext2fs /sbin/
ln -f %%PREFIX%%/sbin/e2fsck /sbin/e2fsck 2>/dev/null \
|| install -m755 %%PREFIX%%/sbin/e2fsck /sbin/e2fsck
IMPORTANT: you also need to repeat the steps above after a port upgrade!

View File

@ -1,9 +0,0 @@
if [ "$2" = "POST-DEINSTALL" ] ; then cat - <<_EOF
If you are deinstalling the e2fsprogs port for good, rather than upgrading it,
remember to remove the files you may have installed into /sbin, example:
rm -f /sbin/fsck_ext2fs /sbin/e2fsck
_EOF
fi

View File

@ -0,0 +1,79 @@
# $FreeBSD$
#
# ports/sysutils/e2fsprogs/pkg-install - (C) 2006 by Matthias Andree
# redistributable under the modified BSD license
#
# ask() and yesno() based on ports/mail/postfix/pkg-install
PKG_PREFIX=${PKG_PREFIX:=/usr/local}
BATCH=${BATCH:=no}
ask() {
local question default answer
question=$1
default=$2
if [ -z "${PACKAGE_BUILDING}" -a x${BATCH} = xno ]; then
read -p "${question} [${default}]? " answer
fi
if [ x${answer} = x ]; then
answer=${default}
fi
echo ${answer}
}
yesno() {
local question default answer
question=$1
default=$2
while :; do
answer=$(ask "${question}" "${default}")
case "${answer}" in
[Yy][Ee][SsPp]|[Yy]) return 0;;
[Nn]|[Nn][Oo]) return 1;;
esac
echo "Please answer yes or no."
done
}
if [ "x$2" = xPOST-INSTALL ] && [ -z "${PACKAGE_BUILDING}" ]; then
cat <<_EOF
To have your ext2 and ext3 filesystems fsck'ed correctly without explicitly
invoking the fsck_ext2fs utility installed by this port you will need to
create links or copy the fsck utilities installed by this port in/to /sbin, e.g.
ln -f "${PKG_PREFIX}/sbin/fsck_ext2fs" /sbin/ 2>/dev/null \\
|| install -m755 "${PKG_PREFIX}/sbin/fsck_ext2fs" /sbin/
ln -f "${PKG_PREFIX}/sbin/e2fsck" /sbin/e2fsck 2>/dev/null \\
|| install -m755 "${PKG_PREFIX}/sbin/e2fsck" /sbin/e2fsck
IMPORTANT: you also need to repeat the steps above after a port upgrade!
_EOF
if yesno "Shall I create the links now?" yes ; then
echo "Installing /sbin/fsck_ext2fs and /sbin/e2fsck."
ln -f "${PKG_PREFIX}/sbin/fsck_ext2fs" /sbin/ 2>/dev/null \
|| install -m755 "${PKG_PREFIX}/sbin/fsck_ext2fs" /sbin/
ln -f "${PKG_PREFIX}/sbin/e2fsck" /sbin/e2fsck 2>/dev/null \
|| install -m755 "${PKG_PREFIX}/sbin/e2fsck" /sbin/e2fsck
fi
fi
if [ "x$2" = xDEINSTALL ] ; then
cat <<_EOF
If you are deinstalling the e2fsprogs port for good, rather than upgrading it,
remember to remove the files you may have installed into /sbin, example:
rm -f /sbin/fsck_ext2fs /sbin/e2fsck
_EOF
if yesno "Shall I remove the links now?" yes ; then
echo "Removing /sbin/fsck_ext2fs and /sbin/e2fsck."
rm -f /sbin/fsck_ext2fs /sbin/e2fsck
fi
fi

View File

@ -0,0 +1,3 @@
Note: this is a modified version of the e2fsprogs package, not the official
package. Report all building and run-time trouble that originates in the
package to the port maintainer, <matthias.andree@gmx.de>.

View File

@ -1,5 +1,9 @@
bin/chattr
bin/lsattr
@unexec if cmp -s %D/etc/mke2fs.conf %D/etc/mke2fs.conf.dist ; then rm -f %D/etc/mke2fs.conf ; else echo "If and only if you are deleting e2fsprogs forever," ; echo "remember to delete %D/etc/mke2fs.conf." ; fi
@unexec if test -f %D/etc/e2fsck.conf ; then echo "If and only if you are deleting e2fsprogs forever," ; echo "remember to delete %D/etc/e2fsck.conf, too." ; fi
etc/mke2fs.conf.dist
@exec test -f %D/etc/mke2fs.conf || cp -p %D/etc/mke2fs.conf.dist %D/etc/mke2fs.conf
sbin/badblocks
sbin/blkid
sbin/debugfs