Hi,

I think the solution is pretty simple, same as for libgmp, which ships without
documentation.

The patch removes the documentation, adds a note similar to the libgmp note,
fixes a couple of warnings.

For ease of maintenance it also removes the C++ symbol list. libmpdec++
is mostly a header library, so users will not have any heightened symbol
stability expectations.

The next mpdecimal release will have separate HTML documentation and
include small man pages that point to the documentation.

mpdecimal does not include the rst sources because new issues arise
with new Sphinx releases, which would then again not pass dh_sphinxdoc.

I might switch to man pages entirely in the future.


Stefan Krah



================================================================================
diff -Naur a/debian/README.Debian b/debian/README.Debian
--- a/debian/README.Debian      1970-01-01 01:00:00.000000000 +0100
+++ b/debian/README.Debian      2023-11-06 16:50:21.472367979 +0100
@@ -0,0 +1,4 @@
+Due to the Debian policy for prebuilt HTML documentation the mpdecimal
+documentation is no longer shipped in Debian.
+
+Please see https://www.bytereef.org/mpdecimal/ for the documentation.
diff -Naur a/debian/control b/debian/control
--- a/debian/control    2021-03-25 11:54:28.000000000 +0100
+++ b/debian/control    2023-11-06 16:50:21.472367979 +0100
@@ -2,7 +2,6 @@
 Priority: optional
 Maintainer: Matthias Klose <d...@debian.org>
 Build-Depends: debhelper (>= 12),
-Build-Depends-Indep: python3-sphinx
 Standards-Version: 4.5.1
 Section: libs
 Homepage: https://www.bytereef.org/mpdecimal/index.html
@@ -11,7 +10,7 @@
 Section: libdevel
 Architecture: any
 Multi-Arch: same
-Depends: libmpdec3 (= ${binary:Version}), ${sphinxdoc:Depends}, ${misc:Depends}
+Depends: libmpdec3 (= ${binary:Version}),                       ${misc:Depends}
 Suggests: libmpdec-doc
 Description: library for decimal floating point arithmetic (development files)
  mpdecimal is a package for correctly-rounded arbitrary precision decimal
@@ -27,12 +26,3 @@
 Description: library for decimal floating point arithmetic (runtime library)
  mpdecimal is a package for correctly-rounded arbitrary precision decimal
  floating point arithmetic.
-
-Package: libmpdec-doc
-Section: doc
-Architecture: all
-Multi-Arch: foreign
-Depends: ${misc:Depends}
-Description: library for decimal floating point arithmetic (documentation)
- mpdecimal is a package for correctly-rounded arbitrary precision decimal
- floating point arithmetic.
diff -Naur a/debian/copyright b/debian/copyright
--- a/debian/copyright  2021-01-10 18:00:58.000000000 +0100
+++ b/debian/copyright  2023-11-06 16:50:21.472367979 +0100
@@ -4,7 +4,7 @@

 Files: *
 Copyright: Copyright (c) 2008-2020 Stefan Krah. All rights reserved.
-License: BSD
+License: BSD-2-clause
  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions
  are met:
diff -Naur a/debian/libmpdec-dev.docs b/debian/libmpdec-dev.docs
--- a/debian/libmpdec-dev.docs  2018-04-23 09:57:17.000000000 +0200
+++ b/debian/libmpdec-dev.docs  1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-README.txt
diff -Naur a/debian/libmpdec3.symbols b/debian/libmpdec3.symbols
--- a/debian/libmpdec3.symbols  2021-03-25 11:54:10.000000000 +0100
+++ b/debian/libmpdec3.symbols  2023-11-06 16:50:21.472367979 +0100
@@ -346,146 +346,4 @@
  mpd_xor@Base 2.3
  mpd_zerocoeff@Base 2.3
 libmpdec++.so.3 libmpdec3 #MINVER#
- _ZN7decimal10MaxContextEv@Base 2.5
- (optional=lto)_ZN7decimal10ValueErrorD0Ev@Base 2.5
- (optional=lto)_ZN7decimal10ValueErrorD1Ev@Base 2.5
- (optional=lto)_ZN7decimal10ValueErrorD2Ev@Base 2.5
- _ZN7decimal11IEEEContextEi@Base 2.5
- (optional=lto)_ZN7decimal11MallocErrorD0Ev@Base 2.5
- (optional=lto)_ZN7decimal11MallocErrorD1Ev@Base 2.5
- (optional=lto)_ZN7decimal11MallocErrorD2Ev@Base 2.5
- (optional=lto)_ZN7decimal12RuntimeErrorD0Ev@Base 2.5
- (optional=lto)_ZN7decimal12RuntimeErrorD1Ev@Base 2.5
- (optional=lto)_ZN7decimal12RuntimeErrorD2Ev@Base 2.5
- (optional=lto)_ZN7decimal14DivisionByZeroD0Ev@Base 2.5
- (optional=lto)_ZN7decimal14DivisionByZeroD1Ev@Base 2.5
- (optional=lto)_ZN7decimal14DivisionByZeroD2Ev@Base 2.5
- (optional=lto)_ZN7decimal16ConversionSyntaxD0Ev@Base 2.5
- (optional=lto)_ZN7decimal16ConversionSyntaxD1Ev@Base 2.5
- (optional=lto)_ZN7decimal16ConversionSyntaxD2Ev@Base 2.5
- (optional=lto)_ZN7decimal16DecimalExceptionD0Ev@Base 2.5
- (optional=lto)_ZN7decimal16DecimalExceptionD1Ev@Base 2.5
- (optional=lto)_ZN7decimal16DecimalExceptionD2Ev@Base 2.5
- (optional=lto)_ZN7decimal16InvalidOperationD0Ev@Base 2.5
- (optional=lto)_ZN7decimal16InvalidOperationD1Ev@Base 2.5
- (optional=lto)_ZN7decimal16InvalidOperationD2Ev@Base 2.5
- _ZN7decimal16context_templateE@Base 2.5
- (optional=lto)_ZN7decimal17DivisionUndefinedD0Ev@Base 2.5
- (optional=lto)_ZN7decimal17DivisionUndefinedD1Ev@Base 2.5
- (optional=lto)_ZN7decimal17DivisionUndefinedD2Ev@Base 2.5
- (optional=lto)_ZN7decimal18DivisionImpossibleD0Ev@Base 2.5
- (optional=lto)_ZN7decimal18DivisionImpossibleD1Ev@Base 2.5
- (optional=lto)_ZN7decimal18DivisionImpossibleD2Ev@Base 2.5
- (optional=lto)_ZN7decimal20IEEEInvalidOperationD0Ev@Base 2.5
- (optional=lto)_ZN7decimal20IEEEInvalidOperationD1Ev@Base 2.5
- (optional=lto)_ZN7decimal20IEEEInvalidOperationD2Ev@Base 2.5
- (optional=lto)_ZN7decimal7ClampedD0Ev@Base 2.5
- (optional=lto)_ZN7decimal7ClampedD1Ev@Base 2.5
- (optional=lto)_ZN7decimal7ClampedD2Ev@Base 2.5
- _ZN7decimal7Context7raiseitEj@Base 2.5
- (arch=any-i386 armel armhf hppa m68k mips mipsel powerpc powerpcspe s390 sh4 
sparc x32)_ZN7decimal7ContextC1Eiiiijii@Base 2.5
- (arch=any-i386 armel armhf hppa m68k mips mipsel powerpc powerpcspe s390 sh4 
sparc x32)_ZN7decimal7ContextC2Eiiiijii@Base 2.5
- (arch=any-i386 armel armhf hppa m68k mips mipsel powerpc powerpcspe s390 sh4 
sparc x32)_ZN7decimal7Decimal4ln10ExRNS_7ContextE@Base 2.5
- (optional=lto)_ZN7decimal7ContextC1Elllijii@Base 2.5
- (optional=lto)_ZN7decimal7ContextC2Elllijii@Base 2.5
- (arch=amd64 arm64 ia64 mips64el ppc64 ppc64el riscv64 s390x sparc64 
kfreebsd-amd64)_ZN7decimal7Decimal4ln10ElRNS_7ContextE@Base 2.5
- _ZN7decimal7Decimal5exactEPKcRNS_7ContextE@Base 2.5
- 
_ZN7decimal7Decimal5exactERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERNS_7ContextE@Base
 2.5
- _ZN7decimal7Decimal5radixEv@Base 2.5
- (optional=lto)_ZN7decimal7InexactD0Ev@Base 2.5
- (optional=lto)_ZN7decimal7InexactD1Ev@Base 2.5
- (optional=lto)_ZN7decimal7InexactD2Ev@Base 2.5
- (optional=lto)_ZN7decimal7RoundedD0Ev@Base 2.5
- (optional=lto)_ZN7decimal7RoundedD1Ev@Base 2.5
- (optional=lto)_ZN7decimal7RoundedD2Ev@Base 2.5
- _ZN7decimal7contextE@Base 2.5
- (optional=lto)_ZN7decimal8OverflowD0Ev@Base 2.5
- (optional=lto)_ZN7decimal8OverflowD1Ev@Base 2.5
- (optional=lto)_ZN7decimal8OverflowD2Ev@Base 2.5
- (optional=lto)_ZN7decimal9SubnormalD0Ev@Base 2.5
- (optional=lto)_ZN7decimal9SubnormalD1Ev@Base 2.5
- (optional=lto)_ZN7decimal9SubnormalD2Ev@Base 2.5
- (optional=lto)_ZN7decimal9UnderflowD0Ev@Base 2.5
- (optional=lto)_ZN7decimal9UnderflowD1Ev@Base 2.5
- (optional=lto)_ZN7decimal9UnderflowD2Ev@Base 2.5
- _ZN7decimallsERSoRKNS_7ContextE@Base 2.5
- _ZN7decimallsERSoRKNS_7DecimalE@Base 2.5
- 
(optional=templinst)_ZN9__gnu_cxx12__to_xstringINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcEET_PFiPT0_mPKS8_PvEmSB_z@Base
 2.5
- _ZNK7decimal7Context4reprB5cxx11Ev@Base 2.5
- _ZNK7decimal7Decimal4reprB5cxx11Eb@Base 2.5
- (optional=inline)_ZNK7decimal7Decimal6to_sciB5cxx11Eb@Base 2.5
- 
(optional=templinst)_ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv@Base
 2.5
- 
(optional=templinst)_ZNSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv@Base
 2.5
- 
(optional=templinst)_ZNSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv@Base
 2.5
- 
(optional=templinst)_ZNSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info@Base
 2.5
- 
(optional=templinst)_ZNSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EED0Ev@Base
 2.5
- 
(optional=templinst)_ZNSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EED1Ev@Base
 2.5
- 
(optional=templinst)_ZNSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EED2Ev@Base
 2.5
- 
(optional=templinst)_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag@Base
 2.5
- _ZTHN7decimal7contextE@Base 2.5
- _ZTHN7decimal7contextE@Base 2.5
- _ZTIN7decimal10ValueErrorE@Base 2.5
- _ZTIN7decimal11MallocErrorE@Base 2.5
- _ZTIN7decimal12RuntimeErrorE@Base 2.5
- _ZTIN7decimal14DivisionByZeroE@Base 2.5
- _ZTIN7decimal16ConversionSyntaxE@Base 2.5
- _ZTIN7decimal16DecimalExceptionE@Base 2.5
- _ZTIN7decimal16InvalidOperationE@Base 2.5
- _ZTIN7decimal17DivisionUndefinedE@Base 2.5
- _ZTIN7decimal18DivisionImpossibleE@Base 2.5
- _ZTIN7decimal20IEEEInvalidOperationE@Base 2.5
- _ZTIN7decimal7ClampedE@Base 2.5
- _ZTIN7decimal7InexactE@Base 2.5
- _ZTIN7decimal7RoundedE@Base 2.5
- _ZTIN7decimal8OverflowE@Base 2.5
- _ZTIN7decimal9SubnormalE@Base 2.5
- _ZTIN7decimal9UnderflowE@Base 2.5
- (optional=templinst)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 
2.5
- 
(optional=templinst)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base
 2.5
- 
(optional=templinst)_ZTISt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EE@Base
 2.5
- (optional=templinst)_ZTIN9__gnu_cxx7__mutexE@Base 2.5
- (optional=templinst)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 
2.5
- 
(optional=templinst)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE@Base
 2.5
- 
(optional=templinst)_ZTISt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE1EE@Base
 2.5
- (arch=armhf)_ZTIZN7decimal4util9shared_cpEPKcEUlS2_E_@Base 2.5
- _ZTSN7decimal10ValueErrorE@Base 2.5
- _ZTSN7decimal11MallocErrorE@Base 2.5
- _ZTSN7decimal12RuntimeErrorE@Base 2.5
- _ZTSN7decimal14DivisionByZeroE@Base 2.5
- _ZTSN7decimal16ConversionSyntaxE@Base 2.5
- _ZTSN7decimal16DecimalExceptionE@Base 2.5
- _ZTSN7decimal16InvalidOperationE@Base 2.5
- _ZTSN7decimal17DivisionUndefinedE@Base 2.5
- _ZTSN7decimal18DivisionImpossibleE@Base 2.5
- _ZTSN7decimal20IEEEInvalidOperationE@Base 2.5
- _ZTSN7decimal7ClampedE@Base 2.5
- _ZTSN7decimal7InexactE@Base 2.5
- _ZTSN7decimal7RoundedE@Base 2.5
- _ZTSN7decimal8OverflowE@Base 2.5
- _ZTSN7decimal9SubnormalE@Base 2.5
- _ZTSN7decimal9UnderflowE@Base 2.5
- (optional=templinst)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 
2.5
- 
(optional=templinst)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base
 2.5
- 
(optional=templinst)_ZTSSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EE@Base
 2.5
- (optional=templinst)_ZTSN9__gnu_cxx7__mutexE@Base 2.5
- (optional=templinst)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE1EE@Base 
2.5
- 
(optional=templinst)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE1EE@Base
 2.5
- 
(optional=templinst)_ZTSSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE1EE@Base
 2.5
- _ZTSZN7decimal4util9shared_cpEPKcEUlS2_E_@Base 2.5
- (optional=lto)_ZTVN7decimal10ValueErrorE@Base 2.5
- (optional=lto)_ZTVN7decimal11MallocErrorE@Base 2.5
- (optional=lto)_ZTVN7decimal12RuntimeErrorE@Base 2.5
- (optional=lto)_ZTVN7decimal14DivisionByZeroE@Base 2.5
- (optional=lto)_ZTVN7decimal16ConversionSyntaxE@Base 2.5
- (optional=lto)_ZTVN7decimal16DecimalExceptionE@Base 2.5
- (optional=lto)_ZTVN7decimal16InvalidOperationE@Base 2.5
- (optional=lto)_ZTVN7decimal17DivisionUndefinedE@Base 2.5
- (optional=lto)_ZTVN7decimal18DivisionImpossibleE@Base 2.5
- (optional=lto)_ZTVN7decimal20IEEEInvalidOperationE@Base 2.5
- (optional=lto)_ZTVN7decimal7ClampedE@Base 2.5
- (optional=lto)_ZTVN7decimal7InexactE@Base 2.5
- (optional=lto)_ZTVN7decimal7RoundedE@Base 2.5
- (optional=lto)_ZTVN7decimal8OverflowE@Base 2.5
- (optional=lto)_ZTVN7decimal9SubnormalE@Base 2.5
- (optional=lto)_ZTVN7decimal9UnderflowE@Base 2.5
- 
(optional=templinst)_ZTVSt19_Sp_counted_deleterIPKcZN7decimal4util9shared_cpES1_EUlS1_E_SaIvELN9__gnu_cxx12_Lock_policyE2EE@Base
 2.5
+ (regex)"_Z*" 2.5.1
diff -Naur a/debian/not-installed b/debian/not-installed
--- a/debian/not-installed      1970-01-01 01:00:00.000000000 +0100
+++ b/debian/not-installed      2023-11-06 16:50:21.472367979 +0100
@@ -0,0 +1 @@
+usr/share/doc/mpdecimal/*
diff -Naur a/debian/rules b/debian/rules
--- a/debian/rules      2021-01-10 18:06:51.000000000 +0100
+++ b/debian/rules      2023-11-06 16:50:21.472367979 +0100
@@ -20,7 +20,7 @@
        dh $@ --buildsystem=autoconf

 binary binary-indep build build-indep:
-       dh $@ --buildsystem=autoconf --with sphinxdoc
+       dh $@ --buildsystem=autoconf

 # work around debhelper, v9 overwrites CFLAGS in the build :-/

@@ -48,15 +48,3 @@
 override_dh_auto_install:
        dh_auto_install
        ln -sf libmpdec.so.3 
debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libmpdec.so
-
-override_dh_sphinxdoc:
-       rm -rf debian/tmp/usr/share/doc/mpdecimal/libmpdec++/_static
-       ln -sf ../libmpdec/_static 
debian/tmp/usr/share/doc/mpdecimal/libmpdec++/_static
-       rm -f 
debian/tmp/usr/share/doc/mpdecimal/libmpdec/_static/{doctools,jquery,searchtools,sidebar,underscore}.js
-       cp -p 
/usr/share/javascript/sphinxdoc/1.0/{doctools,jquery,searchtools,sidebar,underscore}.js
 \
-               debian/tmp/usr/share/doc/mpdecimal/libmpdec/_static/.
-       cp -a debian/tmp/usr/share/doc/mpdecimal/* \
-               debian/libmpdec-doc/usr/share/doc/libmpdec-doc
-       rm -f debian/libmpdec-doc/usr/share/doc/libmpdec-doc/LICENSE*
-       rm -f debian/libmpdec-doc/usr/share/doc/libmpdec-doc/INSTALL*
-       dh_sphinxdoc
================================================================================

Reply via email to