svn commit: r498334 - in head/sysutils/dvdisaster: . files
Kai Knoblich
kai at FreeBSD.org
Sun Apr 7 21:00:29 UTC 2019
Author: kai
Date: Sun Apr 7 21:00:25 2019
New Revision: 498334
URL: https://svnweb.freebsd.org/changeset/ports/498334
Log:
sysutils/dvdisaster: Update to 0.79.5
* Pass maintainership to submitter
* Switch to new MASTER_SITES as the previous one ceased to exist
* Switch to GCC as upstream officially supports GCC only (it still compiles
with CLANG if appropriate patching of the GNUMakefile is used. But the
chances are somewhat higher that it might introduce subtle errors during
runtime because some valid statements are optimized out by CLANG)
* Add desktop and icon file
* Add missing library dependencies
* Add additional documentation that describes how dvdisaster accesses
optical drives with FreeBSD
* Add more information to pkg-message and make it dynamic
* Include two patches from Debian that fix the missing language fields with
.po files. [1]
* Remove debug options that are not really useful for end users
* Remove redundant configure script arguments
* Remove redundant do-configure target
* Sort pkg-plist
While I'm here:
* Fix the license
* Simplify the makefile targets further by using only option helpers and
thus remove the need for <bsd.port.{pre,post}.mk>
Changelog since 0.72.6 (summary):
The most prominent feature of this version is that the multithreaded RS03
codec reached production quality, and all required features have been
implemented.
A few things will be added with the next releases:
* Adaptive reading is currently disabled as it does not support RS03 yet and
would crash or misbehave on RS03 error correction data
* A heuristic for an exhaustive re-discovery of RS03 structures in a badly
damaged medium is missing in the decoder
But these things should not keep you from using RS03, as the encoder is
complete and future decoder enhancements do not affect already created RS03
data.
0.79.4 (07-10-2012 / not released)
* Optical drives would only be detected for /dev/pass[0-9] on FreeBSD. Fixed
to work with arbitrary /dev/pass numbers.
* Blocked menu selection when any other action is in progress
* Made actions properly shut down (e.g. remove incomplete ecc data) when
closing the window or pushing the "Quit" button.
* Changed sources for clean compile on gcc 4.4.3
* Added #include <zlib.h> for libpng 1.5 compatibility
* Introduced internal Image object for unified access to optical media and
on disk ISO images; lots of internal changes and fixes due to that
* Added --ignore-iso-size option
* Fixed bug in pngpack
* Added remaining patches for Czech online manual.
* More comprehensive and unified version information for banner, --version,
log window and log file to aid in working on bug reports
* Hardcoded icons to defeat theming
* Changed glib.h include for compatibility with glib 2.32
* Removed Darwin / Mac OS X support
* Synced with dvdisaster 0.72.4 fixes
* Completed RS01 and RS03 specification in the papers subdir
0.79.3 (21-11-2010)
* Fixed and documented -n command line options for RS02.
* Reworked configure for current NetBSD release
PR: 236423
Submitted by: Bob Eager <bob at eager.cx>
Approved by: tcberner (mentor)
Obtained from: Debian [1]
Differential Revision: https://reviews.freebsd.org/D19807
Added:
head/sysutils/dvdisaster/files/DEVICES.html.in (contents, props changed)
head/sysutils/dvdisaster/files/DEVICES.md.in (contents, props changed)
head/sysutils/dvdisaster/files/patch-icon-factory.c (contents, props changed)
head/sysutils/dvdisaster/files/patch-locale_pt__BR.po (contents, props changed)
head/sysutils/dvdisaster/files/patch-locale_ru.po (contents, props changed)
head/sysutils/dvdisaster/files/pkg-message.in (contents, props changed)
Deleted:
head/sysutils/dvdisaster/pkg-message
Modified:
head/sysutils/dvdisaster/Makefile
head/sysutils/dvdisaster/distinfo
head/sysutils/dvdisaster/pkg-descr
head/sysutils/dvdisaster/pkg-plist
Modified: head/sysutils/dvdisaster/Makefile
==============================================================================
--- head/sysutils/dvdisaster/Makefile Sun Apr 7 20:40:54 2019 (r498333)
+++ head/sysutils/dvdisaster/Makefile Sun Apr 7 21:00:25 2019 (r498334)
@@ -2,98 +2,67 @@
# $FreeBSD$
PORTNAME= dvdisaster
-PORTVERSION= 0.72.6
-PORTREVISION= 1
+PORTVERSION= 0.79.5
CATEGORIES= sysutils
-MASTER_SITES= http://dvdisaster.net/downloads/
+MASTER_SITES= http://www.ml1.org.uk/distfiles/ \
+ http://www.ancientgeek.org.uk/distfiles/
-MAINTAINER= ports at FreeBSD.org
-COMMENT= CD/DVD error recovery tool
+MAINTAINER= bob at eager.cx
+COMMENT= Optical disc error correction data and recovery tool
-LICENSE= GPLv2
+LICENSE= GPLv3+
+LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= bash:shells/bash
+LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2
-MAKEFILE= GNUmakefile
+USES= gmake gnome pkgconfig
+USE_GCC= yes
+USE_GNOME= gdkpixbuf2 gtk20 cairo
-USES= gmake pkgconfig tar:bzip2
-USE_GNOME= gtk20 cairo
-GNU_CONFIGURE= yes
+CFLAGS+= -Wno-stringop-overflow
+MAKEFILE= GNUmakefile
+HAS_CONFIGURE= yes
CONFIGURE_LOG= configure.log
-CONFIGURE_ARGS= --prefix=${PREFIX} \
- --docsubdir="/" \
- --png-includes=${LOCALBASE}/include \
- --png-libraries=${LOCALBASE}/lib \
- --phpmountdir=${LOCALBASE}/www/${PORTNAME} \
+CONFIGURE_ARGS= --docsubdir="/" \
--localedir=${PREFIX}/share/locale \
--buildroot=${STAGEDIR}
MAKE_JOBS_UNSAFE= yes
PORTDOCS= *
+SUB_FILES= pkg-message DEVICES.md DEVICES.html
OPTIONS_DEFINE= DOCS NLS
-OPTIONS_GROUP= DEBUG
-OPTIONS_GROUP_DEBUG= EFENCE MEMDEBUG
OPTIONS_SUB= yes
-EFENCE_DESC= Electric Fence malloc() debugger
-MEMDEBUG_DESC= Enable memory debugging
-
DOCS_CONFIGURE_ON= --docdir=${DOCSDIR}
-
-MEMDEBUG_CONFIGURE_ON= -with-memdebug=yes
-
-EFENCE_LIB_DEPENDS= libefence.so.0:devel/ElectricFence
-EFENCE_CONFIGURE_ON= -with-efence=yes
-
NLS_USES= gettext
NLS_CONFIGURE_OFF= -with-nls=no
-.include <bsd.port.pre.mk>
-
post-patch:
- ${REINPLACE_CMD} -e '/REQUIRE_GCC/d' \
- ${WRKSRC}/configure ${WRKSRC}/tools/configure
- ${REINPLACE_CMD} -e '/dvdisaster uninstaller/,+12 d' \
+ ${REINPLACE_CMD} -e '/dvdisaster uninstaller/,+19 d' \
${WRKSRC}/GNUmakefile.template
- ${REINPLACE_CMD} -e 's|(ctx)|(*ctx)|' \
- ${WRKSRC}/md5.c
- ${REINPLACE_CMD} -e 's|stdout, msg|stdout, "msg\\n"|' \
- ${WRKSRC}/tools/memory.c
-.if ! ${PORT_OPTIONS:MDOCS}
+post-patch-DOCS-off:
${REINPLACE_CMD} -e 's|THESE_ARE_THE_DEVEL_SOURCES;|GNUmakefile;|; \
- /install -d $$(BUILDROOT)$$(DOCSUBDIR)/,+18 d' \
+ /install -d $$(BUILDROOT)$$(DOCSUBDIR)/,+7 d' \
${WRKSRC}/GNUmakefile.template
-.elif ${ARCH} == i386
- ${REINPLACE_CMD} -e 's|THESE_ARE_THE_DEVEL_SOURCES;|GNUmakefile;|; \
- /install -m 644 README.MODIFYING/{N;p;s/.*/ install -m 644 TODO $$(BUILDROOT)$$(DOCSUBDIR)/;}; \
- /install -m 644 TODO $$(BUILDROOT)$$(DOCSUBDIR)/,+13 d' \
- ${WRKSRC}/GNUmakefile.template
-.endif
post-patch-NLS-off:
- ${REINPLACE_CMD} -e 's|DOC_LOCALES = cs de en ru|DOC_LOCALES = en|; \
+ ${REINPLACE_CMD} -Ee 's|(PO_LOCALES)|#\1|; \
s|install -m 644 CREDITS\*|install -m 644 CREDITS\.en|' \
${WRKSRC}/GNUmakefile.template
-do-configure:
- @(cd ${CONFIGURE_WRKSRC} && \
- if ! ${SETENV} CC="${CC}" CXX="${CXX}" \
- CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
- INSTALL="${INSTALL} -c " \
- INSTALL_DATA="${INSTALL_DATA}" \
- INSTALL_PROGRAM="${INSTALL_PROGRAM}" \
- INSTALL_SCRIPT="${INSTALL_SCRIPT}" \
- ${CONFIGURE_ENV} bash configure ${CONFIGURE_ARGS}; then \
- ${ECHO_CMD} "===> Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \
- (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | ${FMT} 75 79 ; \
- ${FALSE}; \
- fi)
-
post-install:
-.if ! ${PORT_OPTIONS:MEFENCE} || ! ${PORT_OPTIONS:MMEMDEBUG}
+ @${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
+ ${INSTALL_DATA} ${WRKSRC}/contrib/dvdisaster48.png ${STAGEDIR}${PREFIX}/share/pixmaps/
+ @${MKDIR} ${STAGEDIR}${PREFIX}/share/applications
+ ${INSTALL_DATA} ${WRKSRC}/contrib/dvdisaster.desktop ${STAGEDIR}${PREFIX}/share/applications/
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
-.endif
-.include <bsd.port.post.mk>
+post-install-DOCS-on:
+ ${INSTALL_MAN} ${WRKDIR}/DEVICES.md ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${WRKDIR}/DEVICES.html ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
Modified: head/sysutils/dvdisaster/distinfo
==============================================================================
--- head/sysutils/dvdisaster/distinfo Sun Apr 7 20:40:54 2019 (r498333)
+++ head/sysutils/dvdisaster/distinfo Sun Apr 7 21:00:25 2019 (r498334)
@@ -1,2 +1,3 @@
-SHA256 (dvdisaster-0.72.6.tar.bz2) = e9787dea39aeafa38b26604752561bc895083c17b588489d857ac05c58be196b
-SIZE (dvdisaster-0.72.6.tar.bz2) = 5048399
+TIMESTAMP = 1551738342
+SHA256 (dvdisaster-0.79.5.tar.gz) = d6efa1643945fe7b16382f4164a68bdad14de48c8506d844d740cd3a2b143e55
+SIZE (dvdisaster-0.79.5.tar.gz) = 9722312
Added: head/sysutils/dvdisaster/files/DEVICES.html.in
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/dvdisaster/files/DEVICES.html.in Sun Apr 7 21:00:25 2019 (r498334)
@@ -0,0 +1,80 @@
+<h1>Useful hints for dvdisaster</h1>
+
+<h2>Device access</h2>
+
+<p>dvdisaster tries to read <code>/dev/pass*</code> to list available optical drives,
+so it will not detect any available drives if the user running
+dvdisaster does not have permissions to read <code>/dev/pass*</code>.</p>
+
+<p>The solution is to create the file <code>/etc/devfs.rules</code>, containing
+something like the following.</p>
+
+<pre><code> [localrules=10]
+ add path 'pass*' mode 0775 group mygroup
+</code></pre>
+
+<p>You also need to add this line to <code>/etc/rc.conf</code>:</p>
+
+<pre><code> devfs_system_ruleset="localrules"
+</code></pre>
+
+<p>You can use anything you like for <code>localrules</code>, and the number does not have to be <code>10</code>.
+See <code>devfs.rules(5)</code> for more details.</p>
+
+<p>If <code>/etc/devfs.rules</code> already exists, add the line starting <code>add</code> to the section for the ruleset
+mentioned in <code>/etc/rc.conf</code>.</p>
+
+<p>For this to take effect, either reboot, or issue the command:</p>
+
+<pre><code> # service devfs restart
+</code></pre>
+
+<p>as root.</p>
+
+<h2>Missing optical drives</h2>
+
+<p>The most common problem encountered is that dvdisaster does not detect
+optical drives on older versions of FreeBSD.</p>
+
+<p>FreeBSD 9.x does not pre-install a uniform CD-ROM driver for SCSI and
+ATAPI drives, thus it cannot use any ATAPI drives in an out-of-the-box
+FreeBSD 9.x installation. Normally, this can be fixed by loading a
+kernel module called <code>atapicam</code>.</p>
+
+<h3>Loading the <code>atapicam</code> kernel module by hand</h3>
+
+<p>To manually load the required kernel module, issue the command:</p>
+
+<pre><code> # kldload atapicam
+</code></pre>
+
+<p>To see if any optical drives are available:</p>
+
+<pre><code> # camcontrol devlist
+ <NAME OF YOUR DRIVE> at scbus1 target 0 lun 0 (pass0,cd0)
+</code></pre>
+
+<h3>Loading the <code>atapicam</code> kernel module permanently</h3>
+
+<p>If the above step works, the module can be loaded automatically at boot time by adding
+the line:</p>
+
+<pre><code> atapicam_load="YES"
+</code></pre>
+
+<p>to the file <code>/boot/loader.conf</code>.</p>
+
+<h3>Building the <code>atapicam</code> module</h3>
+
+<p>If the atapicam kernel module is not available (check the contents
+of /boot/kernel) you will need to recompile the kernel with the following
+additional device line in the kernel configuration:</p>
+
+<pre><code> device atapicam
+</code></pre>
+
+<p>This will actually build the module into the kernel. To build it separately,
+see <code>make.conf(5)</code>.</p>
+
+<p>The devices <code>ata</code>, <code>scbus</code>, <code>cd</code>, and <code>pass</code> are also required, but are included by
+default in FreeBSD 6.0 and later.</p>
Added: head/sysutils/dvdisaster/files/DEVICES.md.in
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/dvdisaster/files/DEVICES.md.in Sun Apr 7 21:00:25 2019 (r498334)
@@ -0,0 +1,76 @@
+Useful hints for dvdisaster
+===========================
+
+Device access
+-------------
+dvdisaster tries to read `/dev/pass*` to list available optical drives,
+so it will not detect any available drives if the user running
+dvdisaster does not have permissions to read `/dev/pass*`.
+
+The solution is to create the file `/etc/devfs.rules`, containing
+something like the following.
+
+ [localrules=10]
+ add path 'pass*' mode 0775 group mygroup
+
+You also need to add this line to `/etc/rc.conf`:
+
+ devfs_system_ruleset="localrules"
+
+You can use anything you like for `localrules`, and the number does not have to be `10`.
+See `devfs.rules(5)` for more details.
+
+If `/etc/devfs.rules` already exists, add the line starting `add` to the section for the ruleset
+mentioned in `/etc/rc.conf`.
+
+For this to take effect, either reboot, or issue the command:
+
+ # service devfs restart
+
+as root.
+
+Missing optical drives
+----------------------
+
+The most common problem encountered is that dvdisaster does not detect
+optical drives on older versions of FreeBSD.
+
+FreeBSD 9.x does not pre-install a uniform CD-ROM driver for SCSI and
+ATAPI drives, thus it cannot use any ATAPI drives in an out-of-the-box
+FreeBSD 9.x installation. Normally, this can be fixed by loading a
+kernel module called `atapicam`.
+
+### Loading the `atapicam` kernel module by hand
+
+To manually load the required kernel module, issue the command:
+
+ # kldload atapicam
+
+To see if any optical drives are available:
+
+ # camcontrol devlist
+ <NAME OF YOUR DRIVE> at scbus1 target 0 lun 0 (pass0,cd0)
+
+### Loading the `atapicam` kernel module permanently
+
+If the above step works, the module can be loaded automatically at boot time by adding
+the line:
+
+ atapicam_load="YES"
+
+to the file `/boot/loader.conf`.
+
+### Building the `atapicam` module
+
+If the atapicam kernel module is not available (check the contents
+of /boot/kernel) you will need to recompile the kernel with the following
+additional device line in the kernel configuration:
+
+ device atapicam
+
+This will actually build the module into the kernel. To build it separately,
+see `make.conf(5)`.
+
+The devices `ata`, `scbus`, `cd`, and `pass` are also required, but are included by
+default in FreeBSD 6.0 and later.
+
Added: head/sysutils/dvdisaster/files/patch-icon-factory.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/dvdisaster/files/patch-icon-factory.c Sun Apr 7 21:00:25 2019 (r498334)
@@ -0,0 +1,11 @@
+--- icon-factory.c.orig 2019-03-06 11:28:20 UTC
++++ icon-factory.c
+@@ -20,6 +20,8 @@
+ * along with dvdisaster. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#define GDK_PIXBUF_VERSION_MIN_REQUIRED GDK_PIXBUF_VERSION_2_30
++
+ #include "dvdisaster.h"
+
+ #include "inlined-icons.h"
Added: head/sysutils/dvdisaster/files/patch-locale_pt__BR.po
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/dvdisaster/files/patch-locale_pt__BR.po Sun Apr 7 21:00:25 2019 (r498334)
@@ -0,0 +1,12 @@
+Taken from Debian "13-fix-missing-language-field-in-po-files.patch"
+--- locale/pt_BR.po.orig 2019-03-06 10:42:22 UTC
++++ locale/pt_BR.po
+@@ -11,7 +11,7 @@ msgstr ""
+ "PO-Revision-Date: 2010-06-09 11:13+0200\n"
+ "Last-Translator: cg <cg at dvdisaster.org>\n"
+ "Language-Team: Portuguese\n"
+-"Language: \n"
++"Language: Portuguese\n"
+ "MIME-Version: 1.0\n"
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
Added: head/sysutils/dvdisaster/files/patch-locale_ru.po
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/dvdisaster/files/patch-locale_ru.po Sun Apr 7 21:00:25 2019 (r498334)
@@ -0,0 +1,12 @@
+Taken from Debian "13-fix-missing-language-field-in-po-files.patch"
+--- locale/ru.po.orig 2019-03-06 10:41:55 UTC
++++ locale/ru.po
+@@ -13,7 +13,7 @@ msgstr ""
+ "PO-Revision-Date: 2009-07-23 08:11+0300\n"
+ "Last-Translator: Igor Gorbounov <igor.gorbounov at gmail.com>\n"
+ "Language-Team: Russian\n"
+-"Language: \n"
++"Language: Russian\n"
+ "MIME-Version: 1.0\n"
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
Added: head/sysutils/dvdisaster/files/pkg-message.in
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/dvdisaster/files/pkg-message.in Sun Apr 7 21:00:25 2019 (r498334)
@@ -0,0 +1,8 @@
+----------------------------------------------------------------------
+If there are problems detecting optical drives, please see the files
+DEVICES.md or DEVICES.html in the directory:
+ %%DOCSDIR%%
+
+Note that the documentation option (DOCS) must be selected for these
+files to be installed.
+----------------------------------------------------------------------
Modified: head/sysutils/dvdisaster/pkg-descr
==============================================================================
--- head/sysutils/dvdisaster/pkg-descr Sun Apr 7 20:40:54 2019 (r498333)
+++ head/sysutils/dvdisaster/pkg-descr Sun Apr 7 21:00:25 2019 (r498334)
@@ -1,4 +1,3 @@
-The dvdisaster project:
dvdisaster provides a margin of safety against data loss on CD and DVD media
caused by aging or scratches.
@@ -17,4 +16,4 @@ If you create the error correction data in time and ke
you have a good chance of recovering the medium contents from typical read
errors and to transfer your complete data onto a new medium.
-WWW: http://dvdisaster.net/
+WWW: http://www.bobeager.uk/software.html
Modified: head/sysutils/dvdisaster/pkg-plist
==============================================================================
--- head/sysutils/dvdisaster/pkg-plist Sun Apr 7 20:40:54 2019 (r498333)
+++ head/sysutils/dvdisaster/pkg-plist Sun Apr 7 21:00:25 2019 (r498334)
@@ -1,11 +1,11 @@
bin/dvdisaster
-man/cs/man1/dvdisaster.1.gz
man/de/man1/dvdisaster.1.gz
-man/it/man1/dvdisaster.1.gz
man/man1/dvdisaster.1.gz
+share/applications/dvdisaster.desktop
+share/pixmaps/dvdisaster48.png
%%NLS%%share/locale/cs/LC_MESSAGES/dvdisaster.mo
%%NLS%%share/locale/de/LC_MESSAGES/dvdisaster.mo
%%NLS%%share/locale/it/LC_MESSAGES/dvdisaster.mo
+%%NLS%%share/locale/pt_BR/LC_MESSAGES/dvdisaster.mo
%%NLS%%share/locale/ru/LC_MESSAGES/dvdisaster.mo
%%NLS%%share/locale/sv/LC_MESSAGES/dvdisaster.mo
-%%NLS%%share/locale/pt_BR/LC_MESSAGES/dvdisaster.mo
More information about the svn-ports-head
mailing list