From 2a70e87e9d850ab870e84187c8bcce5091cfdf01 Mon Sep 17 00:00:00 2001 From: EnumDev Date: Wed, 29 Jul 2026 22:18:03 +0300 Subject: [PATCH] Initial commit --- .gitignore | 3 +++ check-version.sh | 4 ++++ info.yml | 17 +++++++++++++++++ recipe.sh | 31 +++++++++++++++++++++++++++++++ source-files/dvddl.patch | 13 +++++++++++++ source-files/glibc.patch | 11 +++++++++++ source-files/sysmacros.patch | 10 ++++++++++ source-files/wctomb.patch | 11 +++++++++++ source-files/wexit.patch | 11 +++++++++++ 9 files changed, 111 insertions(+) create mode 100644 .gitignore create mode 100644 check-version.sh create mode 100644 info.yml create mode 100644 recipe.sh create mode 100644 source-files/dvddl.patch create mode 100644 source-files/glibc.patch create mode 100644 source-files/sysmacros.patch create mode 100644 source-files/wctomb.patch create mode 100644 source-files/wexit.patch diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9d96df7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Ignore BPM archives and signatures +*.bpm +*.bpm.sig diff --git a/check-version.sh b/check-version.sh new file mode 100644 index 0000000..cd89e29 --- /dev/null +++ b/check-version.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +# Ignore this package +echo "ignore" diff --git a/info.yml b/info.yml new file mode 100644 index 0000000..8183256 --- /dev/null +++ b/info.yml @@ -0,0 +1,17 @@ +name: dvd-rw-tools +description: Tools for DVD+RW/-RW drives +version: "7.1" +revision: 1 +url: https://web.archive.org/web/20250512175714/https://fy.chalmers.se/~appro/linux/DVD+RW/ +license: GPL-2.0-or-later +architecture: any +type: source +depends: + - cdrtools + - gcc-libs + - glibc +downloads: + - url: https://ftp2.osuosl.org/pub/blfs/conglomeration/dvd+rw-tools/dvd+rw-tools-${BPM_PKG_VERSION}.tar.gz + extract_to: ${BPM_SOURCE} + extract_strip_components: 1 + checksum: f8d60f822e914128bcbc5f64fbe3ed131cbff9045dca7e12c5b77b26edde72ca diff --git a/recipe.sh b/recipe.sh new file mode 100644 index 0000000..31073a9 --- /dev/null +++ b/recipe.sh @@ -0,0 +1,31 @@ +# This is the recipe.sh script. It is executed by BPM in a temporary directory when compiling a source package +# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE +# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT + +# The prepare function is executed in the root of the temp directory +# This function is used for putting downloaded files to the correct location or applying patches +prepare() { + cd "$BPM_SOURCE" + + # Apply patches + patch -Np1 -i "$BPM_WORKDIR"/dvddl.patch + patch -Np1 -i "$BPM_WORKDIR"/glibc.patch + patch -Np1 -i "$BPM_WORKDIR"/sysmacros.patch + patch -Np1 -i "$BPM_WORKDIR"/wctomb.patch + patch -Np1 -i "$BPM_WORKDIR"/wexit.patch +} + +# The build function is executed in the source directory +# This function is used to compile the source code +build() { + make +} + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + make prefix="$BPM_OUTPUT"/usr install + + # Install package license + install -Dm644 "$BPM_SOURCE"/LICENSE "$BPM_OUTPUT"/usr/share/licenses/dvd-rw-tools/LICENSE +} diff --git a/source-files/dvddl.patch b/source-files/dvddl.patch new file mode 100644 index 0000000..7990a1d --- /dev/null +++ b/source-files/dvddl.patch @@ -0,0 +1,13 @@ +--- a/growisofs_mmc.cpp.joe 2006-04-27 20:45:00.788446635 +0200 ++++ b/growisofs_mmc.cpp 2006-04-27 20:46:01.666824300 +0200 +@@ -1412,9 +1412,7 @@ + blocks += 15, blocks &= ~15; + + if (blocks <= split) +- fprintf (stderr,":-( more than 50%% of space will be *wasted*!\n" +- " use single layer media for this recording\n"), +- exit (FATAL_START(EMEDIUMTYPE)); ++ fprintf (stderr,":-? more than 50%% of space will be *wasted*!\n"); + + blocks /= 16; + blocks += 1; diff --git a/source-files/glibc.patch b/source-files/glibc.patch new file mode 100644 index 0000000..7bfd56f --- /dev/null +++ b/source-files/glibc.patch @@ -0,0 +1,11 @@ +diff -up transport.hxx.glibc2.6.90 transport.hxx +--- a/transport.hxx.glibc2.6.90 2007-08-15 12:56:17.000000000 +0200 ++++ b/transport.hxx 2007-08-15 12:56:42.000000000 +0200 +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include diff --git a/source-files/sysmacros.patch b/source-files/sysmacros.patch new file mode 100644 index 0000000..e48e5cc --- /dev/null +++ b/source-files/sysmacros.patch @@ -0,0 +1,10 @@ +--- a/growisofs.c 2018-10-25 17:33:50.039660925 +0200 ++++ b/growisofs.c 2018-10-25 17:34:10.649662395 +0200 +@@ -450,6 +450,7 @@ + # include + # include + # include ++# include + # include + # include + # include diff --git a/source-files/wctomb.patch b/source-files/wctomb.patch new file mode 100644 index 0000000..eac1e22 --- /dev/null +++ b/source-files/wctomb.patch @@ -0,0 +1,11 @@ +--- a/transport.hxx~ 2008-03-25 21:24:47.000000000 -0400 ++++ b/transport.hxx 2008-03-25 21:25:36.000000000 -0400 +@@ -116,7 +116,7 @@ + extern "C" char *plusminus_locale() + { static class __plusminus { + private: +- char str[4]; ++ char str[MB_LEN_MAX]; + public: + __plusminus() { setlocale(LC_CTYPE,ENV_LOCALE); + int l = wctomb(str,(wchar_t)(unsigned char)'±'); diff --git a/source-files/wexit.patch b/source-files/wexit.patch new file mode 100644 index 0000000..db3e5f5 --- /dev/null +++ b/source-files/wexit.patch @@ -0,0 +1,11 @@ +--- a/dvd+rw-format.cpp.wexit 2007-06-21 12:42:30.000000000 +0200 ++++ b/dvd+rw-format.cpp 2007-06-21 12:44:13.000000000 +0200 +@@ -245,7 +245,7 @@ int main (int argc, char *argv[]) + alarm(1); + while ((waitpid(pid,&i,0) != pid) && !WIFEXITED(i)) ; + if (WEXITSTATUS(i) == 0) fprintf (stderr,"\n"); +- exit (0); ++ exit (WEXITSTATUS(i)); + } + #endif +