Merge branch 'experimental/master'

This commit is contained in:
Carlos Maddela
2017-12-21 01:05:26 +11:00
11 changed files with 166 additions and 53 deletions

16
debian/changelog vendored
View File

@@ -1,3 +1,19 @@
dvdisaster (0.79.5-4) UNRELEASED; urgency=medium
* Team upload.
* Use complete Debian revision number as build number, instead of
just the numeric part.
* Re-implement scripts/time-stamper.bash without direct calls to
dpkg-parsechangelog.
* Call ./configure script directly, instead of relying on debhelper,
to resolve incompatibilities with Bash-based script.
* Use alternative way of installing icons to remove dependency on
dh-exec.
* Drop redundant dependency on dpkg-dev.
* Reproducibly generate PDF documentation from TeX sources.
-- Carlos Maddela <e7appew@gmail.com> Mon, 14 Aug 2017 23:04:38 +1000
dvdisaster (0.79.5-3) unstable; urgency=medium dvdisaster (0.79.5-3) unstable; urgency=medium
* Team upload. * Team upload.

8
debian/control vendored
View File

@@ -6,17 +6,15 @@ Uploaders: TANIGUCHI Takaki <takaki@debian.org>,
Rogério Brito <rbrito@ime.usp.br>, Rogério Brito <rbrito@ime.usp.br>,
Carlos Maddela <e7appew@gmail.com> Carlos Maddela <e7appew@gmail.com>
Build-Depends: debhelper (>= 10), Build-Depends: debhelper (>= 10),
dh-exec,
dpkg-dev (>= 1.16.1.1),
gettext, gettext,
libbz2-dev, libbz2-dev,
libcam-dev [kfreebsd-any], libcam-dev [kfreebsd-any],
libgtk2.0-dev, libgtk2.0-dev,
libpng-dev, libpng-dev,
pkg-config pkg-config
# Build-Depends-Indep: texlive-fonts-recommended, Build-Depends-Indep: texlive-fonts-recommended,
# texlive-latex-base, texlive-latex-base,
# texlive-latex-extra texlive-latex-extra
Standards-Version: 4.0.1 Standards-Version: 4.0.1
Vcs-Browser: https://anonscm.debian.org/git/pkg-opt-media/dvdisaster.git Vcs-Browser: https://anonscm.debian.org/git/pkg-opt-media/dvdisaster.git
Vcs-Git: https://anonscm.debian.org/git/pkg-opt-media/dvdisaster.git Vcs-Git: https://anonscm.debian.org/git/pkg-opt-media/dvdisaster.git

9
debian/dvdisaster.install vendored Executable file → Normal file
View File

@@ -1,10 +1,5 @@
#!/usr/bin/dh-exec contrib/dvdisaster.desktop usr/share/applications
usr/bin usr/bin
usr/share/icons
usr/share/locale usr/share/locale
usr/share/man usr/share/man
contrib/dvdisaster.desktop usr/share/applications
contrib/dvdisaster16.png => usr/share/icons/hicolor/16x16/apps/dvdisaster.png
contrib/dvdisaster24.png => usr/share/icons/hicolor/24x24/apps/dvdisaster.png
contrib/dvdisaster32.png => usr/share/icons/hicolor/32x32/apps/dvdisaster.png
contrib/dvdisaster48.png => usr/share/icons/hicolor/48x48/apps/dvdisaster.png
contrib/dvdisaster64.png => usr/share/icons/hicolor/64x64/apps/dvdisaster.png

View File

@@ -7,15 +7,111 @@ Description: Make builds reproducible.
so that we can make reproducible binaries. so that we can make reproducible binaries.
Author: Carlos Maddela <e7appew@gmail.com> Author: Carlos Maddela <e7appew@gmail.com>
Forwarded: not-needed Forwarded: not-needed
Last-Update: 2016-12-19 Last-Update: 2017-08-14
--- ---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- ---
scripts/time-stamper.bash | 6 +++--- build.c | 2 +-
1 file changed, 3 insertions(+), 3 deletions(-) closure.c | 2 +-
dvdisaster.h | 2 +-
locale/cs.po | 4 ++--
locale/pt_BR.po | 4 ++--
locale/ru.po | 4 ++--
scripts/time-stamper.bash | 8 ++++----
7 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/build.c b/build.c
index 1666795..05a3b24 100644
--- a/build.c
+++ b/build.c
@@ -25,4 +25,4 @@
/* build is incremented at each make;
make recompile of dependent file as fast as possible */
-int buildCount = BUILD;
+const char *const buildCount = BUILD;
diff --git a/closure.c b/closure.c
index 7568cba..51e91a2 100644
--- a/closure.c
+++ b/closure.c
@@ -433,7 +433,7 @@ void InitClosure()
#define BITNESS_STRING ""
#endif
- Closure->versionString = g_strdup_printf("dvdisaster %s build %d, %s%s",
+ Closure->versionString = g_strdup_printf("dvdisaster %s build %s, %s%s",
Closure->cookedVersion, buildCount, SYS_NAME, BITNESS_STRING);
/* Replace the dot with a locale-resistant separator */
diff --git a/dvdisaster.h b/dvdisaster.h
index db2031e..bcfd4f5 100644
--- a/dvdisaster.h
+++ b/dvdisaster.h
@@ -450,7 +450,7 @@ void FreeBitmap(Bitmap*);
*** build.h
***/
-int buildCount;
+extern const char *const buildCount;
/***
*** cacheprobe.h
diff --git a/locale/cs.po b/locale/cs.po
index ed1fc65..24b1e7c 100644
--- a/locale/cs.po
+++ b/locale/cs.po
@@ -6476,11 +6476,11 @@ msgstr "<i>Novinky v této verzi:</i>"
#~ msgid ""
#~ "\n"
-#~ "dvdisaster version %s build %d\n"
+#~ "dvdisaster version %s build %s\n"
#~ "\n"
#~ msgstr ""
#~ "\n"
-#~ "dvdisaster verze %s sestavení %d\n"
+#~ "dvdisaster verze %s sestavení %s\n"
#~ "\n"
#~ msgid "--prefetch-sectors must be in range 32...8096"
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
index 04b33b5..012ce9e 100644
--- a/locale/pt_BR.po
+++ b/locale/pt_BR.po
@@ -6200,11 +6200,11 @@ msgstr "<i>Novidades dessa versão:</i>"
#~ msgid ""
#~ "\n"
-#~ "dvdisaster version %s build %d\n"
+#~ "dvdisaster version %s build %s\n"
#~ "\n"
#~ msgstr ""
#~ "\n"
-#~ "dvdisaster, versão %s build %d\n"
+#~ "dvdisaster, versão %s build %s\n"
#~ msgid "--cache-size maximum is 8192MiB."
#~ msgstr "--cache-size máximo é 8192MiB."
diff --git a/locale/ru.po b/locale/ru.po
index 6cd3789..912d6fb 100644
--- a/locale/ru.po
+++ b/locale/ru.po
@@ -6215,11 +6215,11 @@ msgstr "<i>Новое в этой версии:</i>"
#~ msgid ""
#~ "\n"
-#~ "dvdisaster version %s build %d\n"
+#~ "dvdisaster version %s build %s\n"
#~ "\n"
#~ msgstr ""
#~ "\n"
-#~ "dvdisaster версия %s сборка %d\n"
+#~ "dvdisaster версия %s сборка %s\n"
#~ "\n"
#~ msgid "--cache-size maximum is 8192MiB."
diff --git a/scripts/time-stamper.bash b/scripts/time-stamper.bash diff --git a/scripts/time-stamper.bash b/scripts/time-stamper.bash
index fd28794..60fe91a 100755 index fd28794..4ec3e60 100755
--- a/scripts/time-stamper.bash --- a/scripts/time-stamper.bash
+++ b/scripts/time-stamper.bash +++ b/scripts/time-stamper.bash
@@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
@@ -23,9 +119,10 @@ index fd28794..60fe91a 100755
-build=$(grep BUILD $1 | cut -d\ -f3) -build=$(grep BUILD $1 | cut -d\ -f3)
-build=$((build+1)) -build=$((build+1))
+# Use Debian changelog details to derive build number and date. -echo "#define BUILD $build" >$1
+build=$(dpkg-parsechangelog -S Version | sed 's/.*-\([0-9]\+\).*/\1/')
echo "#define BUILD $build" >$1
-date=$(date +"%d.%m.%y (%A, %H:%M)") -date=$(date +"%d.%m.%y (%A, %H:%M)")
+date=$(date --date="$(dpkg-parsechangelog -S Date)" +"%d.%m.%y (%A, %H:%M)") +# Use Debian changelog details to derive build number and date.
+build=$(echo "${DEB_VERSION}" | cut -f2 -d-)
+echo "#define BUILD \"$build\"" >$1
+date=$(date --date="@${SOURCE_DATE_EPOCH}" --utc +"%d.%m.%y (%A, %H:%M)")
echo "#define BDATE \"$date\"" >>$1 echo "#define BDATE \"$date\"" >>$1

View File

@@ -22,7 +22,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
9 files changed, 38 insertions(+), 32 deletions(-) 9 files changed, 38 insertions(+), 32 deletions(-)
diff --git a/closure.c b/closure.c diff --git a/closure.c b/closure.c
index 7568cba..0e2f889 100644 index 51e91a2..40bb225 100644
--- a/closure.c --- a/closure.c
+++ b/closure.c +++ b/closure.c
@@ -196,7 +196,7 @@ void ReadDotfile() @@ -196,7 +196,7 @@ void ReadDotfile()

View File

@@ -17,7 +17,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
create mode 100644 show-html.c create mode 100644 show-html.c
diff --git a/closure.c b/closure.c diff --git a/closure.c b/closure.c
index 0e2f889..632c103 100644 index 40bb225..f408f7a 100644
--- a/closure.c --- a/closure.c
+++ b/closure.c +++ b/closure.c
@@ -467,6 +467,7 @@ void InitClosure() @@ -467,6 +467,7 @@ void InitClosure()
@@ -37,7 +37,7 @@ index 0e2f889..632c103 100644
cond_free(Closure->simulateCD); cond_free(Closure->simulateCD);
cond_free(Closure->dDumpDir); cond_free(Closure->dDumpDir);
diff --git a/dvdisaster.h b/dvdisaster.h diff --git a/dvdisaster.h b/dvdisaster.h
index db2031e..22eab5a 100644 index bcfd4f5..ae874ae 100644
--- a/dvdisaster.h --- a/dvdisaster.h
+++ b/dvdisaster.h +++ b/dvdisaster.h
@@ -213,6 +213,7 @@ typedef struct _GlobalClosure @@ -213,6 +213,7 @@ typedef struct _GlobalClosure

View File

@@ -1,26 +1,29 @@
From: Carlos Maddela <e7appew@gmail.com> From: Carlos Maddela <e7appew@gmail.com>
Date: Thu, 5 Jan 2017 19:14:35 +1100 Date: Thu, 5 Jan 2017 19:14:35 +1100
Subject: Generate the same PDF document IDs for build reproducibility. Subject: Apply pdftex workarounds for build reproducibility.
Description: Generate the same PDF IDs for build reproducibility. Description: Apply pdftex workarounds for build reproducibility.
* Generate the same PDF IDs.
* Suppress additional metadata for included images.
Author: Carlos Maddela <e7appew@gmail.com> Author: Carlos Maddela <e7appew@gmail.com>
Forwarded: not-needed Forwarded: not-needed
Last-Update: 2016-12-21 Last-Update: 2017-08-15
--- ---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- ---
documentation/user-manual/manual.tex | 1 + documentation/user-manual/manual.tex | 2 ++
1 file changed, 1 insertion(+) 1 file changed, 2 insertions(+)
diff --git a/documentation/user-manual/manual.tex b/documentation/user-manual/manual.tex diff --git a/documentation/user-manual/manual.tex b/documentation/user-manual/manual.tex
index 60fb51e..aaab4fa 100644 index 60fb51e..bf4364d 100644
--- a/documentation/user-manual/manual.tex --- a/documentation/user-manual/manual.tex
+++ b/documentation/user-manual/manual.tex +++ b/documentation/user-manual/manual.tex
@@ -65,6 +65,7 @@ @@ -65,6 +65,8 @@
\fancyfoot{} \fancyfoot{}
\fancyfoot[LE,RO]{page \thepage\ of \pageref{LastPage}} \fancyfoot[LE,RO]{page \thepage\ of \pageref{LastPage}}
+\pdftrailerid{dvdisaster} +\pdftrailerid{dvdisaster}
+\pdfsuppressptexinfo=-1
\begin{document} \begin{document}
\definecolor{lightorange}{RGB}{255,224,150} \definecolor{lightorange}{RGB}{255,224,150}

View File

@@ -40,7 +40,7 @@ index 51ff827..80fe9d3 100644
\bigskip \bigskip
diff --git a/locale/cs.po b/locale/cs.po diff --git a/locale/cs.po b/locale/cs.po
index ed1fc65..9010d21 100644 index 24b1e7c..497a4a9 100644
--- a/locale/cs.po --- a/locale/cs.po
+++ b/locale/cs.po +++ b/locale/cs.po
@@ -1903,7 +1903,7 @@ msgid "Media ejection" @@ -1903,7 +1903,7 @@ msgid "Media ejection"
@@ -79,7 +79,7 @@ index a074339..000d5c3 100644
#: preferences.c:2091 #: preferences.c:2091
diff --git a/locale/pt_BR.po b/locale/pt_BR.po diff --git a/locale/pt_BR.po b/locale/pt_BR.po
index 04b33b5..00bcaee 100644 index 012ce9e..4624071 100644
--- a/locale/pt_BR.po --- a/locale/pt_BR.po
+++ b/locale/pt_BR.po +++ b/locale/pt_BR.po
@@ -1839,7 +1839,7 @@ msgid "Media ejection" @@ -1839,7 +1839,7 @@ msgid "Media ejection"
@@ -92,7 +92,7 @@ index 04b33b5..00bcaee 100644
#: preferences.c:2091 #: preferences.c:2091
diff --git a/locale/ru.po b/locale/ru.po diff --git a/locale/ru.po b/locale/ru.po
index 6cd3789..1c677d4 100644 index 912d6fb..66fc036 100644
--- a/locale/ru.po --- a/locale/ru.po
+++ b/locale/ru.po +++ b/locale/ru.po
@@ -1841,7 +1841,7 @@ msgid "Media ejection" @@ -1841,7 +1841,7 @@ msgid "Media ejection"

View File

@@ -75,7 +75,7 @@ index 60c55f9..f30f5d3 100644
diff --git a/closure.c b/closure.c diff --git a/closure.c b/closure.c
index 632c103..7c8b3bd 100644 index f408f7a..f4b1893 100644
--- a/closure.c --- a/closure.c
+++ b/closure.c +++ b/closure.c
@@ -50,7 +50,8 @@ static void get_base_dirs() @@ -50,7 +50,8 @@ static void get_base_dirs()

View File

@@ -19,7 +19,7 @@
25-fix-man-pages.patch 25-fix-man-pages.patch
26-fix-display-of-manual.pdf.patch 26-fix-display-of-manual.pdf.patch
27-allow-opening-in-browser-again.patch 27-allow-opening-in-browser-again.patch
28-fudge-pdf-doc-ids.patch 28-pdftex-reproducibility.patch
29-fix-more-typos.patch 29-fix-more-typos.patch
30-hurd-kfreebsd-ftbfs.patch 30-hurd-kfreebsd-ftbfs.patch
31-improve-hurd-and-kfreebsd-support.patch 31-improve-hurd-and-kfreebsd-support.patch

40
debian/rules vendored
View File

@@ -7,10 +7,16 @@ export DEB_CFLAGS_MAINT_APPEND = $(CPPFLAGS) -Wall -Wno-deprecated-declarations
export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
include /usr/share/dpkg/pkg-info.mk include /usr/share/dpkg/pkg-info.mk
export DEB_VERSION
export FORCE_SOURCE_DATE = 1 export FORCE_SOURCE_DATE = 1
MUTABLE_FILES := build.h $(wildcard locale/*.po) \ MUTABLE_FILES := build.h $(wildcard locale/*.po) \
documentation/config/version.tex documentation/config/version.tex \
documentation/user-manual/manual.pdf
BUILDROOT := $(CURDIR)/debian/tmp
ICONS := $(wildcard contrib/dvdisaster*.png)
ICON_SIZES := $(patsubst contrib/dvdisaster%.png,%,$(ICONS))
%: %:
dh $@ dh $@
@@ -19,9 +25,11 @@ override_dh_auto_configure:
for f in $(MUTABLE_FILES); do \ for f in $(MUTABLE_FILES); do \
cp -an $$f $$f.orig; \ cp -an $$f $$f.orig; \
done done
dh_auto_configure -- \ ./configure \
--localedir=\$${prefix}/share/locale \ --prefix=/usr \
--docdir=\$${prefix}share/doc \ --mandir=share/man \
--localedir=share/locale \
--docdir=share/doc \
--docsubdir=dvdisaster-doc \ --docsubdir=dvdisaster-doc \
--with-embedded-src-path=no --with-embedded-src-path=no
@@ -34,28 +42,24 @@ override_dh_clean:
override_dh_auto_build-arch: override_dh_auto_build-arch:
make all make all
# For the time being, we'll just package the upstream-generated
# manual.pdf, since we can't build the PDF reproducibly ourselves.
# The reason we can't is most probably due to the fact that the
# LaTeX document embeds other PDF documents and PNG images.
# Although we are able to reproduce the PDF's creation and mod
# dates, as well as its PDF IDs, the stream elements representing
# the embedded images are always what seem to differ each time we
# try to generate the PDF.
override_dh_auto_build-indep: override_dh_auto_build-indep:
# make manual make manual
true
override_dh_auto_install-arch: override_dh_auto_install-arch:
dh_auto_install -a -- BUILDROOT=$(CURDIR)/debian/tmp dh_auto_install -a -- BUILDROOT=$(BUILDROOT)
set -e; \
for S in $(ICON_SIZES); do \
D="$(BUILDROOT)/usr/share/icons/hicolor/$${S}x$${S}/apps"; \
install -d "$${D}"; \
install -T "contrib/dvdisaster$${S}.png" "$${D}/dvdisaster.png"; \
done
override_dh_auto_install-indep: override_dh_auto_install-indep:
true true
# Ensure that none of the text files that the application # Ensure that none of the text files that the application
# tries to display directly are not compressed, as it doesn't # tries to display directly are compressed, as it doesn't
# automatically decompress text files. # automatically decompress text files.
override_dh_compress: override_dh_compress-arch:
dh_compress -p dvdisaster \ dh_compress -p dvdisaster \
-XCHANGELOG -XCREDITS -XREADME.MODIFYING -XTODO -XCHANGELOG -XCREDITS -XREADME.MODIFYING -XTODO
dh_compress --remaining-packages