Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 205703 - app-text/docbook2X-0.8.8 fix naming convention
Summary: app-text/docbook2X-0.8.8 fix naming convention
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-01-13 20:00 UTC by Vaclav Slavik
Modified: 2014-01-22 04:48 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
patch for the ebuild (docbook2X-0.8.8-bin-names-fix.patch,909 bytes, patch)
2008-01-13 20:01 UTC, Vaclav Slavik
Details | Diff
Version-0.8.8 build log (docbook2x-0.8.8.log,17.58 KB, text/plain)
2008-05-19 17:10 UTC, Mike Weissman
Details
Version-0.8.8-r1 build log (docbook2x-0.8.8-r1.log,17.88 KB, text/plain)
2008-05-19 17:10 UTC, Mike Weissman
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vaclav Slavik 2008-01-13 20:00:26 UTC
app-text/docbook2X ebuilds rename installed programs to have ".pl" extension to avoid conflict with sgml-common-utils utils with the same name. But it renames _all_ programs while the conflict is only with docbook2* utils. This actually breaks e.g. docbook2man which is trying to run db2x_manxml, but only  db2x_manxml.pl is available.

This patch fixes this by renaming only docbook2* programs.

It also adds additional aliases (in addition to ".pl" renaming), docbook2x-texi and docbook2x-man. These are used by Debian to solve the same problem (see http://packages.debian.org/etch/i386/docbook2x/filelist) and the reason I'm suggesting their addition is that it improves cross-distro compatibility by making it possible for developers' scripts/makefiles to work without having to write additional checks for Gentoo-specific docbook2man.pl name.

Reproducible: Always
Comment 1 Vaclav Slavik 2008-01-13 20:01:08 UTC
Created attachment 140895 [details, diff]
patch for the ebuild
Comment 2 4nykey 2008-01-18 18:59:49 UTC
Hello.
Something like the following would probably be better:
--- docbook2X-0.8.8.ebuild 2007-08-22 22:05:50.000000000 +0300
+++ docbook2X-0.8.8.ebuild      2008-01-18 20:39:27.000000000 +0200
@@ -22,7 +22,7 @@
 src_compile() {
        econf \
                --with-xslt-processor=libxslt \
-               --program-suffix=.pl \
+               --program-transform-name='s:docbook2:docbook2x-:' \
                || die "econf failed"
 
        emake || die "emake failed"
@@ -36,5 +36,5 @@
 
 pkg_postinst() {
        elog "To avoid conflict with docbook-sgml-utils, which is much more widely used,"
-       elog "all executables have been renamed to *.pl."
+       elog "docbook2xxx executables have been renamed to docbook2x-xxx."
 }

By the way as of now `docbook2man.pl' bails out with
> sh: /usr/bin/db2x_xsltproc: No such file or directory
> sh: /usr/bin/db2x_manxml: No such file or directory
Comment 3 Peter Volkov (RETIRED) gentoo-dev 2008-04-09 09:33:49 UTC
Vaclav, thank you for report! I went ahead and fixed suggested in bug 166127... Reopen, please, if I broke anything. FIXED.
Comment 4 Vaclav Slavik 2008-04-10 10:00:51 UTC
Any particular reason to _not_ apply the part of my patch that makes Gentoo's renaming compatible with Debian's? It may not sound like such a big deal, but it *is* making the life of developers who use these tools in their makefiles (such as me) harder by forcing them to detect Gentoo as yet another favor that needs special treatment. To make matters worse, Fedora uses something else too (db2x_docbook2man, would be nice to symlink for too) -- in my book, that's yet another reason to not make the matters even worse by introducing *yet another* different renaming scheme.
Comment 5 Peter Volkov (RETIRED) gentoo-dev 2008-04-10 10:20:18 UTC
Why debian but not Fedore? Personally I do not like xxx extension as it's not clear what that means. And how does this package is named in SUSE, ASPlinux, AltLinux? Or in FreeBSD? If you really want to fix this, please, try to post to distributions mailing list:

http://lists.freedesktop.org/mailman/listinfo/distributions

and find some consensus there. Also you may CC actual maintainers of said package  in different distributions, to be sure they do not miss your mail. After I'll do whatever will be solution.
Comment 6 Mike Weissman 2008-05-19 17:04:03 UTC
I am unable to merge this package either version-0.8.8 with the above patch or version-.0.8.8-r1 on x86.   Attaching both build logs.  The error i get in both cases is:

make[2]: Entering directory `/var/tmp/portage/app-text/docbook2X-0.8.8                 -r1/work/docbook2X-0.8.8/test/refentry'
../../perl/db2x_xsltproc -C ../../xslt/catalog.xml -s man -o sgml2xml.                 mxml sgml2xml.xml
I/O error : Attempt to load network entity http://www.oasis-open.org/d                 ocbook/xml/4.2/docbookx.dtd
sgml2xml.xml:15: warning: failed to load external entity "http://www.o                 asis-open.org/docbook/xml/4.2/docbookx.dtd"
]>
  ^
sgml2xml.xml:32: parser error : Entity 'mdash' not defined
      An SGML System Conforming to International Standard ISO 8879 &md                 ash;
                                                                                           ^
/usr/bin/perl ../../perl/db2x_manxml --utf8trans-program=../../utf8tra                 ns/utf8trans --utf8trans-map=../../charmaps/roff.charmap sgml2xml.mxml
/usr/bin/iconv: illegal input sequence at position 622
../../perl/db2x_manxml: program in pipeline exited with an error
make[2]: *** [sgml2xml.1] Error 1
make[2]: *** Deleting file `sgml2xml.1'
rm sgml2xml.mxml
make[2]: Leaving directory `/var/tmp/portage/app-text/docbook2X-0.8.8-                 r1/work/docbook2X-0.8.8/test/refentry'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/app-text/docbook2X-0.8.8-                 r1/work/docbook2X-0.8.8/test'
make: *** [check-recursive] Error 1


emerge --info:
Portage 2.1.5 (default/linux/x86/2008.0, gcc-4.2.3, glibc-2.7-r2, 2.6.24-gentoo-r4 i686)
=================================================================
System uname: 2.6.24-gentoo-r4 i686 Intel(R) Pentium(R) D CPU 2.80GHz
Timestamp of tree: Mon, 19 May 2008 12:34:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r6, 2.5.2-r3
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.4-r1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.4_p6, 1.5, 1.7.9-r1, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.25-r3
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer -g -ggdb"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/sudoers /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache collision-protect distlocks metadata-transfer nostrip parallel-fetch sandbox sfperms strict test unmerge-orphans userfetch userpriv"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ "
LDFLAGS=""
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/myebuilds"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl alsa apache2 avi bash-completion bzip2 cli compat cracklib crypt cups dbcpalsa dbus dri firefox ftp gdbm gpm hal iconv intel isdnlog java java5 java6 jbdc jboss jpeg kde logitech mailwrapper midi mp3 mpeg mudflap mysql ncurses nls nptl nptlonly ntp nvidia odbc opengl openmp pam pcre perl png postgres pppd python qt3 qt4 rar readline reflection sdk session spl ssl svg tcpd tiff tomcat truetype unicode vim vim-completion vim-syntax vim-with-x x86 xml xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="prefork" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 7 Mike Weissman 2008-05-19 17:10:14 UTC
Created attachment 153679 [details]
Version-0.8.8 build log
Comment 8 Mike Weissman 2008-05-19 17:10:30 UTC
Created attachment 153681 [details]
Version-0.8.8-r1 build log
Comment 9 Peter Volkov (RETIRED) gentoo-dev 2008-05-21 08:24:56 UTC
Mike, please, report a different bug then. This bug became bug about naming convention so don't hijack with not related issues.

Concerning naming convention, I failed to see any activity/help from Vaclav so I went ahead and mailed other maintainers a mail. Just for record - this is what different distributions do:

AltLinux: --program-transform-name='s/docbook2/db2x_docbook2/'
Redhat EL, Fedore: --program-transform-name='s/docbook2/db2x_docbook2/'
Debian: --program-transform-name="s/^docbook2/docbook2x-/"
OpenSuse: just moves files to docbook-to-man and docbook-to-texi
Mandriva: does nothing
Gentoo: --program-transform-name='s,\(docbook2.*\),\1.pl,'

Only AltLinux, Fedore and Redhat have consistent naming. So if ever change anything then to something they suggest, not Debian.
Comment 10 Mike Gilbert gentoo-dev 2014-01-22 04:48:11 UTC
+*docbook2X-0.8.8-r4 (22 Jan 2014)
+
+  22 Jan 2014; Mike Gilbert <floppym@gentoo.org> +docbook2X-0.8.8-r4.ebuild:
+  Add some symlinks for docbook2x-{man,texi} for Debian compatibility, bug
+  205703.