summaryrefslogtreecommitdiff
path: root/filesystems
diff options
context:
space:
mode:
authorpho <pho@pkgsrc.org>2021-12-01 14:35:15 +0000
committerpho <pho@pkgsrc.org>2021-12-01 14:35:15 +0000
commit5402db838ea282a9024bf77eccf33dd67ace515c (patch)
treebe71b4e7788c68508f10f56a9dfd06e6a0c406a5 /filesystems
parente37a520a0c636e185e8b043c86991e3ef6f70f96 (diff)
downloadpkgsrc-5402db838ea282a9024bf77eccf33dd67ace515c.tar.gz
Update to mp3fs-1.1.1; tested on NetBSD 9.2 release
## Important changes in 1.1.1 (2021-03-08) The only change in this release is a fix for an issue with filenames containing square brackets. ## Important changes in 1.1 (2021-01-30) This contains various bug fixes, mostly. Fixes/improvements: - Recognize upper/mixed case in input filenames - Fix file size handling with and without cache - Various code simplifications/cleanup New features: - Log lines now include thread ID and can be customized. ## Important changes in 1.0 (2020-05-24) mp3fs 1.0 is finally here\! Fixes/code improvements: - Many, many bug fixes (buffer overflows, memory leaks, and others) - Memory handling improvements (using RAII with C++ nearly everywhere) - Adopting C++11 and modernizing code - Static tests for code (e.g. clang-format, clang-tidy, IWYU) New features: - Ogg Vorbis decoding support - MP3 VBR encoding support - Improved, much more customizable logging Other: - Docs licensed under GPL 3+ (now entire codebase is distributable as GPL 3) - All docs switched to Markdown (including manpage, using pandoc) - Docker image now available ## Important changes in 0.91 (2014-05-14) This contains mainly bug fixes. Changes in this release: - Fixed a segfault caused by an overflow reading the list of available decoders. - A number of problems with the previous distribution tar are now fixed. - The output of `mp3fs --version` has been made more complete. ## Important changes in 0.9 (2014-04-06) This is a major new release, and brings us very close to a 1.0 release\! Changes in this release: - All transcoding code has been completely rewritten. Encoding and decoding have been abstracted out into base classes defining interfaces that can be implemented by different codec classes, with just a FLAC decoder and MP3 encoder at the moment. - The build system has been modified as well to support this usage. - A number of small bugs or code inefficiencies have been fixed. ## Important changes in 0.32 (2012-06-18) This release has a lot of bug fixes and some code cleanup. Changes in this release: - The file size calculation should always be correct. - A crash affecting programs like scp that might try to access past the end of the file has been fixed. - Too many other little fixes were made to list here. See the ChangeLog for full details. ## Important changes in 0.31 (2011-12-04) This is a minor update, with bug fixes and a new feature. Changes in this release: - The ReplayGain support added earlier now can be configured through the command line. - Filename translation (from .flac to .mp3) is now fixed on filesystems such as XFS that do not populate dirent.d\_type. - A couple other minor bugs fixes and changes were made. ## Important changes in 0.30 (2010-12-01) This is a major new release, and brings mp3fs much closer to an eventual 1.0 release. Changes in this release: - Support for additional metadata tags has been added. (From Gregor Zurowski) - Documentation improvements: the help message is more useful, and a man page has been added. - Choosing bitrate is now done with a command-line or mount option, rather than the old comma syntax. - A new option to select LAME encoding quality is now available. (From Gregor Zurowski) - Debug output can be enabled at runtime. - Old external libraries included in distribution (StringIO, talloc) have been removed and replaced. - Numerous bug fixes have been made. (Some from Gregor Zurowski)
Diffstat (limited to 'filesystems')
-rw-r--r--filesystems/fuse-mp3fs/Makefile20
-rw-r--r--filesystems/fuse-mp3fs/PLIST4
-rw-r--r--filesystems/fuse-mp3fs/distinfo13
-rw-r--r--filesystems/fuse-mp3fs/options.mk21
-rw-r--r--filesystems/fuse-mp3fs/patches/patch-aa51
-rw-r--r--filesystems/fuse-mp3fs/patches/patch-ab15
-rw-r--r--filesystems/fuse-mp3fs/patches/patch-src_class.h44
-rw-r--r--filesystems/fuse-mp3fs/patches/patch-src_fuseops.cc17
-rw-r--r--filesystems/fuse-mp3fs/patches/patch-src_mp3fs.cc40
9 files changed, 95 insertions, 130 deletions
diff --git a/filesystems/fuse-mp3fs/Makefile b/filesystems/fuse-mp3fs/Makefile
index 46f4297a3a7..0ad65342614 100644
--- a/filesystems/fuse-mp3fs/Makefile
+++ b/filesystems/fuse-mp3fs/Makefile
@@ -1,26 +1,24 @@
-# $NetBSD: Makefile,v 1.7 2020/03/20 11:57:37 nia Exp $
+# $NetBSD: Makefile,v 1.8 2021/12/01 14:35:15 pho Exp $
#
-DISTNAME= mp3fs-0.13
+DISTNAME= mp3fs-1.1.1
PKGNAME= fuse-${DISTNAME}
-PKGREVISION= 1
CATEGORIES= filesystems
-MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mp3fs/}
+MASTER_SITES= ${MASTER_SITE_GITHUB:=khenriks/}
+GITHUB_PROJECT= mp3fs
+GITHUB_RELEASE= v${PKGVERSION_NOREV}
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://mp3fs.sourceforge.net/
COMMENT= MP3 transcoding FUSE file system
LICENSE= gnu-gpl-v3
-GNU_CONFIGURE= yes
-USE_TOOLS= pkg-config
+GNU_CONFIGURE= yes
+USE_LANGUAGES= c c++03
+USE_TOOLS= pkg-config gmake
-INSTALLATION_DIRS= share/doc/fuse-mp3fs
+.include "options.mk"
-post-install:
- ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${PREFIX}/share/doc/fuse-mp3fs
-
-.include "../../audio/flac/buildlink3.mk"
.include "../../audio/lame/buildlink3.mk"
.include "../../audio/libid3tag/buildlink3.mk"
.include "../../mk/fuse.buildlink3.mk"
diff --git a/filesystems/fuse-mp3fs/PLIST b/filesystems/fuse-mp3fs/PLIST
index b1e69e97c84..0d647d8a546 100644
--- a/filesystems/fuse-mp3fs/PLIST
+++ b/filesystems/fuse-mp3fs/PLIST
@@ -1,3 +1,3 @@
-@comment $NetBSD: PLIST,v 1.3 2014/11/26 22:31:41 wiz Exp $
+@comment $NetBSD: PLIST,v 1.4 2021/12/01 14:35:15 pho Exp $
bin/mp3fs
-share/doc/fuse-mp3fs/README
+man/man1/mp3fs.1
diff --git a/filesystems/fuse-mp3fs/distinfo b/filesystems/fuse-mp3fs/distinfo
index e41b7025b28..a8ebec52845 100644
--- a/filesystems/fuse-mp3fs/distinfo
+++ b/filesystems/fuse-mp3fs/distinfo
@@ -1,8 +1,7 @@
-$NetBSD: distinfo,v 1.10 2021/10/26 10:25:28 nia Exp $
+$NetBSD: distinfo,v 1.11 2021/12/01 14:35:15 pho Exp $
-BLAKE2s (mp3fs-0.13.tar.gz) = 003d01e14336dcbd03bf7380c414f57308d68488aca5e7e1313cfa429f1c2e94
-SHA512 (mp3fs-0.13.tar.gz) = 0bcbd55c3a17a8e94a29794e3225b9c18f0501a5c987f3a32e206dc3db489f778dab2cc6c2b841ec640da7a319e4be1104868c1a1e54f19f6e30491c272792ee
-Size (mp3fs-0.13.tar.gz) = 301642 bytes
-SHA1 (patch-aa) = 0013f729158988403ea7ed7aa3a3102e9531ef91
-SHA1 (patch-ab) = 0e76e444566e2e0ff0c31a6aa64dcd82a931f397
-SHA1 (patch-src_class.h) = 2a0c03c20ffce50c1270d552215edb052f3ecf50
+BLAKE2s (mp3fs-1.1.1.tar.gz) = 0b576b8ee68fc3a7d21c241bd475fad3921c0200074e05d50756addf9bb1789a
+SHA512 (mp3fs-1.1.1.tar.gz) = b1e4f403666122056f924514a7e63ddd53dc00346d7750e37e8150ad5f13294129595d79398677c69726fb2abf942d4ddb8fdcac3b1312a01ed467475f22592b
+Size (mp3fs-1.1.1.tar.gz) = 804399 bytes
+SHA1 (patch-src_fuseops.cc) = e12d4287b0a4d49f779996364f3ee9a360f04100
+SHA1 (patch-src_mp3fs.cc) = baf76d4db37a10f064159e955161e738f3a0ad1f
diff --git a/filesystems/fuse-mp3fs/options.mk b/filesystems/fuse-mp3fs/options.mk
new file mode 100644
index 00000000000..4b548b99e0a
--- /dev/null
+++ b/filesystems/fuse-mp3fs/options.mk
@@ -0,0 +1,21 @@
+# $NetBSD: options.mk,v 1.1 2021/12/01 14:35:15 pho Exp $
+PKG_OPTIONS_VAR= PKG_OPTIONS.mp3fs
+PKG_OPTIONS_NONEMPTY_SETS= decoders
+PKG_OPTIONS_SET.decoders= flac vorbis
+PKG_SUGGESTED_OPTIONS= flac vorbis
+
+.include "../../mk/bsd.options.mk"
+
+###
+### FLAC support
+###
+.if !empty(PKG_OPTIONS:Mflac)
+.include "../../audio/flac/buildlink3.mk"
+.endif
+
+###
+### Ogg Vorbis support
+###
+.if !empty(PKG_OPTIONS:Mvorbis)
+.include "../../audio/libvorbis/buildlink3.mk"
+.endif
diff --git a/filesystems/fuse-mp3fs/patches/patch-aa b/filesystems/fuse-mp3fs/patches/patch-aa
deleted file mode 100644
index 3955f3d3a21..00000000000
--- a/filesystems/fuse-mp3fs/patches/patch-aa
+++ /dev/null
@@ -1,51 +0,0 @@
-$NetBSD: patch-aa,v 1.5 2014/11/26 22:31:41 wiz Exp $
-
---- src/mp3fs.c.orig 2008-12-14 06:17:35.000000000 +0100
-+++ src/mp3fs.c
-@@ -30,7 +30,11 @@
- #include <fcntl.h>
- #include <dirent.h>
- #include <errno.h>
-+#if defined (__NetBSD__) || defined (__DragonFly__)
-+#include <sys/statvfs.h>
-+#else
- #include <sys/statfs.h>
-+#endif
-
- #include "transcode.h"
- #include "talloc.h"
-@@ -195,7 +199,12 @@ static int mp3fs_read(const char *path,
- return f->Read(f, buf, offset, size);
- }
-
--static int mp3fs_statfs(const char *path, struct statfs *stbuf) {
-+#if defined (__NetBSD__) || defined (__DragonFly__)
-+static int mp3fs_statfs(const char *path, struct statvfs *stbuf)
-+#else
-+static int mp3fs_statfs(const char *path, struct statfs *stbuf)
-+#endif
-+{
- int res;
- char name[256];
-
-@@ -204,7 +213,11 @@ static int mp3fs_statfs(const char *path
- strncpy(name, basepath, sizeof(name));
- strncat(name, path, sizeof(name) - strlen(name));
-
-+#if defined (__NetBSD__) || defined (__DragonFly__)
-+ res = statvfs(name, stbuf);
-+#else
- res = statfs(name, stbuf);
-+#endif
- if(res == -1)
- return -errno;
-
-@@ -252,7 +265,7 @@ int main(int argc, char *argv[]) {
- basepath = argv[1];
- bitrate = 0;
-
-- rate = strchr(basepath, ',');
-+ rate = strrchr(basepath, ',');
- if(rate) {
- rate[0] = '\0';
- bitrate = atoi(rate + 1);
diff --git a/filesystems/fuse-mp3fs/patches/patch-ab b/filesystems/fuse-mp3fs/patches/patch-ab
deleted file mode 100644
index 88bee512e58..00000000000
--- a/filesystems/fuse-mp3fs/patches/patch-ab
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-ab,v 1.4 2014/11/26 22:31:41 wiz Exp $
-
-Add inttypes.h for PRIu64.
-
---- src/transcode.c.orig 2008-12-14 05:24:21.000000000 +0000
-+++ src/transcode.c
-@@ -24,7 +24,7 @@
- #include <fcntl.h>
- #include <dirent.h>
- #include <errno.h>
--#include <sys/statfs.h>
-+#include <inttypes.h>
-
- #include <FLAC/metadata.h>
- #ifdef LEGACY_FLAC
diff --git a/filesystems/fuse-mp3fs/patches/patch-src_class.h b/filesystems/fuse-mp3fs/patches/patch-src_class.h
deleted file mode 100644
index fd76bade78a..00000000000
--- a/filesystems/fuse-mp3fs/patches/patch-src_class.h
+++ /dev/null
@@ -1,44 +0,0 @@
-$NetBSD: patch-src_class.h,v 1.3 2014/11/26 22:31:41 wiz Exp $
-
-Fix build with clang-3.1.
-
---- src/class.h.orig 2007-11-15 05:34:32.000000000 +0000
-+++ src/class.h
-@@ -171,7 +171,7 @@ super.add as well.
-
- #define CLASS(class,super_class) \
- typedef struct class *class; \
-- inline void class ## _init(void); \
-+ void class ## _init(void); \
- void class ## _Alloc(class this); \
- extern int __ ## class ## _initialised; \
- extern struct class __ ## class; \
-@@ -209,7 +209,7 @@ super.add as well.
-
- #define VIRTUAL(class,superclass) \
- struct class __ ## class; \
-- inline void class ## _init(void) { \
-+ void class ## _init(void) { \
- if(!__ ## class ## _initialised) { \
- class ## _Alloc(&__ ## class); \
- __ ## class ## _initialised = 1; \
-@@ -233,7 +233,7 @@ super.add as well.
-
- #define VIRTUAL(class,superclass) \
- struct class __ ## class; \
-- inline void class ## _init(void) { \
-+ void class ## _init(void) { \
- if(!__ ## class ## _initialised) { \
- class ## _Alloc(&__ ## class); \
- __ ## class ## _initialised = 1; \
-@@ -348,8 +348,8 @@ struct Object {
- #define GET_CLASS(name) \
- &__ ## name
-
--inline void Object_init(void);
--inline void Object_Alloc(Object this);
-+void Object_init(void);
-+void Object_Alloc(Object this);
-
- extern struct Object __Object;
-
diff --git a/filesystems/fuse-mp3fs/patches/patch-src_fuseops.cc b/filesystems/fuse-mp3fs/patches/patch-src_fuseops.cc
new file mode 100644
index 00000000000..2fc11f2a2e4
--- /dev/null
+++ b/filesystems/fuse-mp3fs/patches/patch-src_fuseops.cc
@@ -0,0 +1,17 @@
+$NetBSD: patch-src_fuseops.cc,v 1.1 2021/12/01 14:35:15 pho Exp $
+
+Hunk #0:
+ <fuse_common.h> is not meant to be directly #include'd by user
+ code. It's only an implementation detail, and librefuse doesn't
+ provide one.
+
+--- src/fuseops.cc.orig 2021-12-01 13:29:28.302797012 +0000
++++ src/fuseops.cc
+@@ -26,7 +26,6 @@
+ #include <dirent.h>
+ #include <fcntl.h>
+ #include <fuse.h>
+-#include <fuse_common.h>
+ #include <sys/stat.h>
+ #include <sys/statvfs.h>
+ #include <unistd.h>
diff --git a/filesystems/fuse-mp3fs/patches/patch-src_mp3fs.cc b/filesystems/fuse-mp3fs/patches/patch-src_mp3fs.cc
new file mode 100644
index 00000000000..6a76fedc1ac
--- /dev/null
+++ b/filesystems/fuse-mp3fs/patches/patch-src_mp3fs.cc
@@ -0,0 +1,40 @@
+$NetBSD: patch-src_mp3fs.cc,v 1.1 2021/12/01 14:35:15 pho Exp $
+
+Hunk #0:
+ <fuse_common.h> is not meant to be directly #include'd by user
+ code. It's only an implementation detail, and librefuse doesn't
+ provide one.
+
+Hunk #1:
+ Work around an issue in librefuse <fuse_opt.h>. It has been
+ incompatible with C++11 compilers. Fixed in HEAD:
+ * http://mail-index.netbsd.org/source-changes/2021/12/01/msg134169.html
+ * http://mail-index.netbsd.org/source-changes/2021/12/01/msg134169.html
+
+--- src/mp3fs.cc.orig 2021-01-31 04:07:18.000000000 +0000
++++ src/mp3fs.cc
+@@ -26,7 +26,6 @@
+ #define FUSE_USE_VERSION 26
+
+ #include <fuse.h>
+-#include <fuse_common.h>
+ #include <fuse_opt.h>
+ #ifdef __APPLE__
+ #include <fuse_darwin.h>
+@@ -63,6 +62,8 @@ enum { KEY_HELP, KEY_VERSION, KEY_KEEP_O
+ #define FUSE_OPT_KEY(templ, key) \
+ { templ, (unsigned int)(-1), key }
+
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wnarrowing"
+ struct fuse_opt mp3fs_opts[] = {
+ MP3FS_OPT("-b %d", bitrate, 0),
+ MP3FS_OPT("bitrate=%d", bitrate, 0),
+@@ -98,6 +99,7 @@ struct fuse_opt mp3fs_opts[] = {
+ FUSE_OPT_KEY("-d", KEY_KEEP_OPT),
+ FUSE_OPT_KEY("debug", KEY_KEEP_OPT),
+ FUSE_OPT_END};
++#pragma GCC diagnostic pop
+
+ void usage(const std::string& name) {
+ std::cout << "Usage: " << name << " [OPTION]... IN_DIR OUT_DIR"