logo

overlay

My own overlay for experimentations, use with caution, no support is provided

gtk-doc-1.32-r1.ebuild (2203B)


      1 # Copyright 1999-2019 Gentoo Authors
      2 # Distributed under the terms of the GNU General Public License v2
      3 
      4 EAPI=6
      5 PYTHON_COMPAT=( python3_{5,6,7} )
      6 
      7 inherit eutils elisp-common gnome2 python-single-r1 readme.gentoo-r1
      8 
      9 DESCRIPTION="GTK+ Documentation Generator"
     10 HOMEPAGE="https://www.gtk.org/gtk-doc/"
     11 
     12 LICENSE="GPL-2 FDL-1.1"
     13 SLOT="0"
     14 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris"
     15 
     16 IUSE="debug doc emacs pdf test"
     17 REQUIRED_USE="${PYTHON_REQUIRED_USE}"
     18 
     19 RDEPEND="
     20 	${PYTHON_DEPS}
     21 	dev-libs/libxslt
     22 	dev-libs/libxml2
     23 	app-text/docbook-xsl-stylesheets
     24 	$(python_gen_cond_dep '
     25 		dev-python/pygments[${PYTHON_MULTI_USEDEP}]
     26 	')
     27 	doc? ( app-text/yelp-tools )
     28 	emacs? ( virtual/emacs )
     29 	pdf? (
     30 		|| (
     31 			app-text/dblatex
     32 			dev-java/fop
     33 		)
     34 	)
     35 	test? ( >=dev-libs/glib-2.38.0:2 )
     36 "
     37 DEPEND="${RDEPEND}
     38 	~dev-util/gtk-doc-am-${PV}
     39 	dev-util/itstool
     40 	virtual/pkgconfig
     41 "
     42 
     43 pkg_setup() {
     44 	DOC_CONTENTS="gtk-doc does no longer define global key bindings for Emacs.
     45 		You may set your own key bindings for \"gtk-doc-insert\" and
     46 		\"gtk-doc-insert-section\" in your ~/.emacs file."
     47 	SITEFILE=61${PN}-gentoo.el
     48 	python-single-r1_pkg_setup
     49 }
     50 
     51 src_prepare() {
     52 	# Remove global Emacs keybindings, bug #184588
     53 	eapply "${FILESDIR}"/${PN}-1.8-emacs-keybindings.patch
     54 
     55 	# Apply upstream commit 1baf9a6, bug #646850
     56 	sed -e '1,/exit 1/s/exit 1/exit $1/' \
     57 		-i gtkdoc-mkpdf.in || die
     58 
     59 	gnome2_src_prepare
     60 }
     61 
     62 src_configure() {
     63 	gnome2_src_configure \
     64 		$(use_enable debug)
     65 }
     66 
     67 src_compile() {
     68 	gnome2_src_compile
     69 	use emacs && elisp-compile tools/gtk-doc.el
     70 }
     71 
     72 src_install() {
     73 	gnome2_src_install
     74 
     75 	python_fix_shebang "${ED}"/usr/bin/
     76 
     77 	if use doc; then
     78 		docinto doc
     79 		dodoc doc/*
     80 		docinto examples
     81 		dodoc examples/*
     82 	fi
     83 
     84 	if use emacs; then
     85 		elisp-install ${PN} tools/gtk-doc.el*
     86 		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
     87 		readme.gentoo_create_doc
     88 	fi
     89 }
     90 
     91 src_test() {
     92 	emake -j1 check
     93 }
     94 
     95 pkg_postinst() {
     96 	gnome2_pkg_postinst
     97 	if use emacs; then
     98 		elisp-site-regen
     99 		readme.gentoo_print_elog
    100 	fi
    101 }
    102 
    103 pkg_postrm() {
    104 	gnome2_pkg_postrm
    105 	use emacs && elisp-site-regen
    106 }