ports/116286: [PATCH] sysutils/e2fsprogs: clean-up
Alejandro Pulver
alepulver at FreeBSD.org
Tue Sep 11 18:20:07 UTC 2007
>Number: 116286
>Category: ports
>Synopsis: [PATCH] sysutils/e2fsprogs: clean-up
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Tue Sep 11 18:20:06 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Alejandro Pulver
>Release: FreeBSD 6.2-RELEASE i386
>Organization:
>Environment:
System: FreeBSD 6.2-RELEASE #0: Fri Jan 12 11:05:30 UTC 2007
root at dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP
>Description:
- Bump PORTREVISION.
- Add OPTIONS for NLS instead of using knob.
- Format the Makefile and pkg-message.
- Avoid installing of some files instead of deleting them after.
- Remove pkg-install, do the link/copy automatically.
>How-To-Repeat:
>Fix:
--- e2fsprogs.diff begins here ---
Index: e2fsprogs/Makefile
===================================================================
RCS file: /home/pcvs/ports/sysutils/e2fsprogs/Makefile,v
retrieving revision 1.33
diff -u -r1.33 Makefile
--- e2fsprogs/Makefile 23 Jul 2007 09:36:34 -0000 1.33
+++ e2fsprogs/Makefile 11 Sep 2007 18:18:09 -0000
@@ -7,7 +7,7 @@
PORTNAME= e2fsprogs
PORTVERSION= 1.40.2
-PORTREVISION?= 0
+PORTREVISION?= 1
CATEGORIES?= sysutils
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE_EXTENDED}
MASTER_SITE_SUBDIR= ${PORTNAME}
@@ -15,30 +15,21 @@
MAINTAINER?= matthias.andree at gmx.de
COMMENT?= Utilities and library to manipulate ext2/ext3 filesystems
-.if !defined(WITHOUT_NLS)
-USE_GETTEXT= yes
-.endif
-
PATCH_STRIP= -p1
+
+USE_LDCONFIG= yes
GNU_CONFIGURE= yes
-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}'
+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 "
-.else
-MAKE_ARGS+= STATIC_LIBS="../lib/libext2fs.a ../lib/libcom_err.a ../lib/libblkid.a \
- ../lib/libuuid.a ${LOCALBASE}/lib/libintl.a ${LOCALBASE}/lib/libiconv.a"
-PLIST_SUB= NLS=""
-.endif
-USE_LDCONFIG= yes
-PKGDEINSTALL= ${PKGINSTALL}
+CONFIGURE_ENV+= CPPFLAGS='${CPPFLAGS} -I${WRKSRC}/lib \
+ -I${LOCALBASE}/include -D_EXT2_USE_C_VERSIONS_'
+
+OPTIONS= NLS "Enable national language support" on
.if !defined(MASTERDIR)
MAN1= chattr.1 lsattr.1
@@ -48,37 +39,45 @@
fsck.ext2.8 fsck.ext3.8 mkfs.ext2.8 mkfs.ext3.8 \
findfs.8 blkid.8 logsave.8 fsck_ext2fs.8
-pre-build:
- @${ECHO_CMD} "-------------------------------------------------------------"
-.if defined(WITHOUT_NLS)
- @${ECHO_CMD} "National language support disabled, -DWITHOUT_NLS in effect. "
-.else
- @${ECHO_CMD} "Use -DWITHOUT_NLS to build without national language support."
-.endif
- @${ECHO_CMD} "-------------------------------------------------------------"
-
post-extract:
- ${CHMOD} u+w ${WRKSRC}/po/*.po ${WRKSRC}/po/*.pot \
+ @${CHMOD} u+w ${WRKSRC}/po/*.po ${WRKSRC}/po/*.pot \
${WRKSRC}/${CONFIGURE_SCRIPT}
.endif
.include <bsd.port.pre.mk>
+.if defined(WITHOUT_NLS)
+CONFIGURE_ARGS+=--disable-nls
+PLIST_SUB= NLS="@comment "
+.else
+USE_GETTEXT= yes
+MAKE_ARGS+= STATIC_LIBS="../lib/libext2fs.a ../lib/libcom_err.a \
+ ../lib/libblkid.a ../lib/libuuid.a \
+ ${LOCALBASE}/lib/libintl.a ${LOCALBASE}/lib/libiconv.a"
+PLIST_SUB= NLS=""
+.endif
+
post-patch:
- ${REINPLACE_CMD} -E -e 's:\$$\(libdir\)/pkgconfig:${PREFIX}/libdata/pkgconfig:' \
+ @${REINPLACE_CMD} -Ee \
+ 's:\$$\(libdir\)/pkgconfig:${PREFIX}/libdata/pkgconfig:' \
${WRKSRC}/lib/*/Makefile.in
- @: # disable uuidgen
- ${REINPLACE_CMD} \
- -e 's/^\(UPROGS.*\) uuidgen\(.*\)/\1\2/' \
- -e 's/^\(UMANPAGES.*\) uuidgen.1\(.*\)/\1\2/' \
+# disable uuidgen and filefrag
+ @${REINPLACE_CMD} -Ee \
+ 's/^(UPROGS.*) uuidgen(.*)/\1\2/; \
+ s/^(UMANPAGES.*) uuidgen.1(.*)/\1\2/; \
+ s/^(USPROGS.*) filefrag(.*)/\1\2/; \
+ s/filefrag\.8 //' \
${WRKSRC}/misc/Makefile.in
+# don't build/install libext2fs.info
+ @${REINPLACE_CMD} -e 's/ install-doc-libs$$//' ${WRKSRC}/Makefile.in
.if ${MASTERDIR} == ${.CURDIR}
post-build:
.if !defined(WITHOUT_NLS)
cd ${WRKSRC}/po && ${MAKE} update-gmo
.endif
- ${CC} ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -s -static ${LIBS} -o ${WRKSRC}/fsck_ext2fs ${FILESDIR}/fsck_ext2fs.c
+ ${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
@@ -90,17 +89,14 @@
# -- 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/
- ${INSTALL_MAN} ${FILESDIR}/fsck_ext2fs.8 ${PREFIX}/man/man8/
+ ${INSTALL_PROGRAM} ${WRKSRC}/fsck_ext2fs ${PREFIX}/sbin
+ ${INSTALL_MAN} ${FILESDIR}/fsck_ext2fs.8 ${MANPREFIX}/man/man8
[ -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}
+ ${CP} -p ${PREFIX}/etc/mke2fs.conf.dist \
+ ${PREFIX}/etc/mke2fs.conf
+ cd ${PREFIX}/sbin && ${LN} -f fsck_ext2fs e2fsck /usr/sbin || \
+ ${INSTALL_PROGRAM} fsck_ext2fs e2fsck /usr/sbin 2>/dev/null
+ @${ECHO_CMD}; ${CAT} ${PKGMESSAGE}; ${ECHO_MSG}
.endif
.include <bsd.port.post.mk>
Index: e2fsprogs/pkg-install
===================================================================
RCS file: e2fsprogs/pkg-install
diff -N e2fsprogs/pkg-install
--- e2fsprogs/pkg-install 12 Jun 2006 12:13:08 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,79 +0,0 @@
-# $FreeBSD: ports/sysutils/e2fsprogs/pkg-install,v 1.1 2006/06/12 12:13:08 pav Exp $
-#
-# 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
Index: e2fsprogs/pkg-message
===================================================================
RCS file: /home/pcvs/ports/sysutils/e2fsprogs/pkg-message,v
retrieving revision 1.1
diff -u -r1.1 pkg-message
--- e2fsprogs/pkg-message 12 Jun 2006 12:13:08 -0000 1.1
+++ e2fsprogs/pkg-message 11 Sep 2007 18:18:09 -0000
@@ -1,3 +1,7 @@
+==============================================================================
+
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 at gmx.de>.
+
+==============================================================================
Index: e2fsprogs/pkg-plist
===================================================================
RCS file: /home/pcvs/ports/sysutils/e2fsprogs/pkg-plist,v
retrieving revision 1.12
diff -u -r1.12 pkg-plist
--- e2fsprogs/pkg-plist 4 Jul 2007 11:32:35 -0000 1.12
+++ e2fsprogs/pkg-plist 11 Sep 2007 18:18:09 -0000
@@ -34,3 +34,6 @@
%%NLS%%share/locale/tr/LC_MESSAGES/e2fsprogs.mo
%%NLS%%share/locale/vi/LC_MESSAGES/e2fsprogs.mo
%%NLS%%@unexec for i in cs de es fr it nl pl rw sv tr vi ; do rmdir -p %D/share/locale/$i/LC_MESSAGES 2>/dev/null || true ; done
+ at cwd /usr
+sbin/e2fsck
+sbin/fsck_ext2fs
--- e2fsprogs.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list