Bug 210645 - [New Port] sysutils/squashfuse: utility which allows SquashFS archives to be mounted in user-space
Summary: [New Port] sysutils/squashfuse: utility which allows SquashFS archives to be ...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Jan Beich
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-06-27 21:41 UTC by Jesse Smith
Modified: 2016-07-18 18:52 UTC (History)
2 users (show)

See Also:


Attachments
Shell archive of the squashfuse port (2.01 KB, text/plain)
2016-06-27 21:41 UTC, Jesse Smith
no flags Details
Updated squashfuse shar (1.83 KB, text/plain)
2016-07-09 19:11 UTC, Jesse Smith
no flags Details
Shell archive of the squashfuse port (1.91 KB, text/plain)
2016-07-11 20:07 UTC, Jesse Smith
no flags Details
proposed changes (1.84 KB, patch)
2016-07-12 04:12 UTC, Jan Beich
no flags Details | Diff
proposed changes (1.85 KB, patch)
2016-07-12 04:14 UTC, Jan Beich
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jesse Smith 2016-06-27 21:41:20 UTC
Created attachment 171888 [details]
Shell archive of the squashfuse port

Squashfuse is a command line utility which allows SquashFS archives to be mounted in user-space. The program allows squash file archives to be mounted and explored under a local directory.

The attached file provides a shell archive of the Squashfuse port.

The upstream project's source and documentation can be found at https://github.com/vasi/squashfuse
Comment 1 Pawel Pekala freebsd_committer freebsd_triage 2016-07-09 15:27:30 UTC
===> Portlint output:
WARN: /usr/local/ports/sysutils/squashfuse/pkg-plist: There are only 3 items in the plist.  Consider using PLIST_FILES instead of pkg-plist when installing less than 6 items.
WARN: /usr/local/ports/sysutils/squashfuse/pkg-descr: includes lines that exceed 80 characters.
FATAL: Makefile: [14]: use a tab (not space) after a variable name
FATAL: Makefile: [15]: use a tab (not space) after a variable name
FATAL: Makefile: [16]: use a tab (not space) after a variable name
FATAL: Makefile: [17]: use a tab (not space) after a variable name
WARN: Makefile: [21]: whitespace before end of line.
FATAL: Makefile: [23]: use a tab (not space) after a variable name
FATAL: Makefile: [24]: use a tab (not space) after a variable name
WARN: Makefile: [25]: use tab (not space) to make indentation
FATAL: Makefile: [26]: contiguous blank lines (> 1 lines) found.
FATAL: Makefile: PKGNAMEPREFIX appears out-of-order.
FATAL: Makefile: order must be PORTNAME/PORTVERSION/DISTVERSIONPREFIX/DISTVERSION/DISTVERSIONSUFFIX/PORTREVISION/PORTEPOCH/CATEGORIES/MASTER_SITES/MASTER_SITE_SUBDIR/PROJECTHOST/PKGNAMEPREFIX/PKGNAMESUFFIX/DISTNAME/EXTRACT_SUFX/DISTFILES/DIST_SUBDIR/EXTRACT_ONLY.
WARN: Makefile: COMMENT should begin with a capital, and end without a period
WARN: Makefile: "LIB_DEPENDS" has to appear earlier.
9 fatal errors and 6 warnings found.

Please test before submitting:
https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/testing.html
Comment 2 Jesse Smith 2016-07-09 19:11:34 UTC
Created attachment 172293 [details]
Updated squashfuse shar

Thank you for the advice. I have put together an updated port that passes the portlint checks.
Comment 3 Jan Beich freebsd_committer freebsd_triage 2016-07-10 14:35:30 UTC
Comment on attachment 172293 [details]
Updated squashfuse shar

poudriere bulk -t build fails due to lack of USES=libtool

  ===>  Configuring for fusefs-squashfuse-0.1.100
  aclocal-1.15: installing 'm4/pkg.m4' from '/usr/local/share/aclocal/pkg.m4'
  configure.ac:8: installing 'build-aux/ar-lib'
  configure.ac:8: installing 'build-aux/compile'
  configure.ac:5: installing 'build-aux/config.guess'
  configure.ac:5: installing 'build-aux/config.sub'
  configure.ac:6: installing 'build-aux/install-sh'
  configure.ac:6: installing 'build-aux/missing'
  Makefile.am:16: error: Libtool library used but 'LIBTOOL' is undefined
  Makefile.am:16:   The usual way to define 'LIBTOOL' is to add 'LT_INIT'
  Makefile.am:16:   to 'configure.ac' and run 'aclocal' and 'autoconf' again.
  Makefile.am:16:   If 'LT_INIT' is in 'configure.ac', make sure
  Makefile.am:16:   its definition is in aclocal's search path.
  Makefile.am: installing 'build-aux/depcomp'
  autoreconf-2.69: automake failed with exit status: 1
  *** [do-autoreconf] Error code 1

> PKGNAMEPREFIX=	fusefs-

Make sure to reflect this in how the port directory named as well.

> DISTNAME=	${PORTNAME}-${PORTVERSION}

Why do you need to customize it? USE_GITHUB default naming is preferred.

> GH_PROJECT=	squashfuse

This is default.

> GH_TAGNAME=	78360b7

GH_TAGNAME isn't a substitute for removed GH_COMMIT. 78360b7 exactly matches 0.1.100, so just drop it. If you want to track snapshots in future better use DISTVERSION + DISTVERSIONSUFFIX e.g., see security/passivedns or graphics/mapcache.

> CONFIGURE_ENV=	MOUNT_FUSE_PATH=${PREFIX}/sbin

What's this for? If it's to install squashfuse under ${PREFIX}/sbin then PLIST_FILES disagrees with you.

> CONFIGURE_ARGS=	--prefix=${PREFIX} \

This is default for GNU_CONFIGURE.

>		--with-pkgconfigdir=${PREFIX}/libdata/pkgconfig

Not used by this port as there're no *.pc files installed.

Also, consider adding --disable-silent-rules to CONFIGURE_ARGS to make package build logs more verbose to improve troubleshooting.
Comment 4 Jesse Smith 2016-07-11 20:07:35 UTC
Created attachment 172390 [details]
Shell archive of the squashfuse port

Updated port which removes pkgtool dependency and cleans up configure variables.
Comment 5 Jan Beich freebsd_committer freebsd_triage 2016-07-12 04:12:03 UTC
Created attachment 172399 [details]
proposed changes

I'm still hesitating to land this without further cleanup. Here's what poudriere has to say:

=======================<phase: check-sanity   >============================
/!\ fusefs-squashfuse-0.1.100: Makefile errors /!\

GH_COMMIT is unsupported, please convert GHL->GH in MASTER_SITES and set GH_TAGNAME to tag or commit hash and remove GH_COMMIT

*** [show-dev-errors] Error code 1

===>  Configuring for fusefs-squashfuse-0.1.100
aclocal-1.15: installing 'm4/libtool.m4' from '/usr/local/share/aclocal/libtool.m4'
aclocal-1.15: installing 'm4/ltoptions.m4' from '/usr/local/share/aclocal/ltoptions.m4'
aclocal-1.15: installing 'm4/ltsugar.m4' from '/usr/local/share/aclocal/ltsugar.m4'
aclocal-1.15: installing 'm4/ltversion.m4' from '/usr/local/share/aclocal/ltversion.m4'
aclocal-1.15: installing 'm4/lt~obsolete.m4' from '/usr/local/share/aclocal/lt~obsolete.m4'
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:35: error: possibly undefined macro: AC_MSG_FAILURE
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf-2.69: /usr/local/bin/autoconf-2.69 failed with exit status: 1
*** [do-autoreconf] Error code 1
Comment 6 Jan Beich freebsd_committer freebsd_triage 2016-07-12 04:14:57 UTC
Created attachment 172400 [details]
proposed changes

Even LIB_DEPENDS is redundant with USES=fuse.
Comment 7 commit-hook freebsd_committer freebsd_triage 2016-07-18 18:47:14 UTC
A commit references this bug:

Author: jbeich
Date: Mon Jul 18 18:46:28 UTC 2016
New revision: 418729
URL: https://svnweb.freebsd.org/changeset/ports/418729

Log:
  sysutils/fusefs-squashfuse: add new port

  PR:		210645
  Submitted by:	jsmith@resonatingmedia.com

  Squashfuse is a command line utility for mounting SquashFS archives
  in user-space. It supports almost all features of the SquashFS format.

  https://github.com/vasi/squashfuse

Changes:
  head/sysutils/Makefile
  head/sysutils/fusefs-squashfuse/
  head/sysutils/fusefs-squashfuse/Makefile
  head/sysutils/fusefs-squashfuse/distinfo
  head/sysutils/fusefs-squashfuse/pkg-descr
Comment 8 commit-hook freebsd_committer freebsd_triage 2016-07-18 18:50:16 UTC
A commit references this bug:

Author: jbeich
Date: Mon Jul 18 18:49:46 UTC 2016
New revision: 418730
URL: https://svnweb.freebsd.org/changeset/ports/418730

Log:
  sysutils/fusefs-squashfuse: fix LICENSE

  PR:		210645
  Approved by:	portmgr blanket

Changes:
  head/sysutils/fusefs-squashfuse/Makefile
Comment 9 Jan Beich freebsd_committer freebsd_triage 2016-07-18 18:52:28 UTC
Thanks. Landed. If you have issues with my cleanup open a new bug blocking this one.