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
Created attachment 140895 [details, diff] patch for the ebuild
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
Vaclav, thank you for report! I went ahead and fixed suggested in bug 166127... Reopen, please, if I broke anything. FIXED.
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.
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.
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
Created attachment 153679 [details] Version-0.8.8 build log
Created attachment 153681 [details] Version-0.8.8-r1 build log
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.
+*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.