Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Sep 2007 15:19:35 -0300
From:      "Alejandro Pulver" <alepulver@FreeBSD.org>
To:        "FreeBSD gnats submit" <FreeBSD-gnats-submit@FreeBSD.org>
Subject:   ports/116286: [PATCH] sysutils/e2fsprogs: clean-up
Message-ID:  <1189534775.56130@deimos.mars.bsd>
Resent-Message-ID: <200709111820.l8BIK7kt037358@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>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@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@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@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
+@cwd /usr
+sbin/e2fsck
+sbin/fsck_ext2fs
--- e2fsprogs.diff ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1189534775.56130>