Gentoo Archives: gentoo-commits

From: "Tomas Chvatal (scarabeus)" <scarabeus@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-doc/doxygen: doxygen-1.8.4-r1.ebuild ChangeLog
Date: Tue, 04 Jun 2013 12:21:12
Message-Id: 20130604122106.E484A2171E@flycatcher.gentoo.org
1 scarabeus 13/06/04 12:21:06
2
3 Modified: ChangeLog
4 Added: doxygen-1.8.4-r1.ebuild
5 Log:
6 Revbump 1.8.4 due to broken libo doc generating. Patch already applied upstream and will be in next version.
7
8 (Portage version: 2.2.0_alpha177/cvs/Linux x86_64, signed Manifest commit with key 8EEE3BE8)
9
10 Revision Changes Path
11 1.243 app-doc/doxygen/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-doc/doxygen/ChangeLog?rev=1.243&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-doc/doxygen/ChangeLog?rev=1.243&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-doc/doxygen/ChangeLog?r1=1.242&r2=1.243
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/app-doc/doxygen/ChangeLog,v
20 retrieving revision 1.242
21 retrieving revision 1.243
22 diff -u -r1.242 -r1.243
23 --- ChangeLog 3 Jun 2013 12:03:36 -0000 1.242
24 +++ ChangeLog 4 Jun 2013 12:21:06 -0000 1.243
25 @@ -1,6 +1,13 @@
26 # ChangeLog for app-doc/doxygen
27 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/app-doc/doxygen/ChangeLog,v 1.242 2013/06/03 12:03:36 jer Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/app-doc/doxygen/ChangeLog,v 1.243 2013/06/04 12:21:06 scarabeus Exp $
30 +
31 +*doxygen-1.8.4-r1 (04 Jun 2013)
32 +
33 + 04 Jun 2013; Tomáš Chvátal <scarabeus@g.o> +doxygen-1.8.4-r1.ebuild,
34 + +files/doxygen-1.8.4-libreoffice.patch:
35 + Revbump 1.8.4 due to broken libo doc generating. Patch already applied
36 + upstream and will be in next version.
37
38 03 Jun 2013; Jeroen Roovers <jer@g.o> doxygen-1.8.3.1.ebuild:
39 Stable for HPPA (bug #471692).
40
41
42
43 1.1 app-doc/doxygen/doxygen-1.8.4-r1.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-doc/doxygen/doxygen-1.8.4-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-doc/doxygen/doxygen-1.8.4-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: doxygen-1.8.4-r1.ebuild
49 ===================================================================
50 # Copyright 1999-2013 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/app-doc/doxygen/doxygen-1.8.4-r1.ebuild,v 1.1 2013/06/04 12:21:06 scarabeus Exp $
53
54 EAPI=4
55
56 PYTHON_COMPAT=( python{2_5,2_6,2_7} )
57 inherit eutils fdo-mime flag-o-matic python-any-r1 qt4-r2 toolchain-funcs
58
59 DESCRIPTION="Documentation system for most programming languages"
60 HOMEPAGE="http://www.doxygen.org/"
61 SRC_URI="http://ftp.stack.nl/pub/users/dimitri/${P}.src.tar.gz
62 http://dev.gentoo.org/~xarthisius/distfiles/doxywizard.png"
63
64 LICENSE="GPL-2"
65 SLOT="0"
66 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
67 IUSE="debug doc dot qt4 latex sqlite elibc_FreeBSD userland_GNU"
68
69 #missing SerbianCyrilic, JapaneseEn, KoreanEn, Chinesetraditional
70
71 LANGS=(hy ar pt_BR ca zh cs de da eo es fa fi fr el hr hu id it ja ko lt mk
72 nl nb pl pt ro ru sl sk sr sv tr uk vi af)
73 for X in "${LANGS[@]}" ; do
74 IUSE="${IUSE} linguas_${X}"
75 done
76
77 RDEPEND="qt4? ( dev-qt/qtgui:4 )
78 latex? ( app-text/texlive[extra] )
79 dev-lang/perl
80 virtual/libiconv
81 media-libs/libpng
82 app-text/ghostscript-gpl
83 sqlite? ( dev-db/sqlite:3 )
84 dot? (
85 media-gfx/graphviz
86 media-libs/freetype
87 )"
88
89 DEPEND="sys-apps/sed
90 sys-devel/flex
91 sys-devel/bison
92 doc? ( ${PYTHON_DEPS} )
93 ${RDEPEND}"
94
95 RESTRICT="mirror"
96 EPATCH_SUFFIX="patch"
97
98 get_langs() {
99 # using only user set linguas also fixes #263641
100 my_linguas=()
101 for lingua in ${LINGUAS}; do
102 if has ${lingua} "${LANGS[@]}"; then
103 case ${lingua} in
104 hy) lingua=am ;;
105 pt_BR) lingua=br ;;
106 zh*) lingua=cn ;;
107 cs) lingua=cz ;;
108 da) lingua=dk ;;
109 el*) lingua=gr ;;
110 ja*) lingua=jp ;;
111 ko) lingua=kr ;;
112 nb) lingua=no ;;
113 sl) lingua=si ;;
114 tr*) lingua=tr ;;
115 uk) lingua=ua ;;
116 af) lingua=za ;;
117 esac
118 has ${lingua} "${my_linguas[@]}" ||
119 my_linguas+=(${lingua})
120 fi
121 done
122 f_langs="${my_linguas[@]}"
123 echo ${f_langs// /,}
124 }
125
126 pkg_setup() {
127 tc-export CC CXX
128 use doc && python-any-r1_pkg_setup
129 }
130
131 src_prepare() {
132 # use CFLAGS, CXXFLAGS, LDFLAGS
133 export ECFLAGS="${CFLAGS}" ECXXFLAGS="${CXXFLAGS}" ELDFLAGS="${LDFLAGS}"
134
135 sed -i.orig -e 's:^\(TMAKE_CFLAGS_RELEASE\t*\)= .*$:\1= $(ECFLAGS):' \
136 -e 's:^\(TMAKE_CXXFLAGS_RELEASE\t*\)= .*$:\1= $(ECXXFLAGS):' \
137 -e 's:^\(TMAKE_LFLAGS_RELEASE\s*\)=.*$:\1= $(ELDFLAGS):' \
138 -e "s:^\(TMAKE_CXX\s*\)=.*$:\1= $(tc-getCXX):" \
139 -e "s:^\(TMAKE_LINK\s*\)=.*$:\1= $(tc-getCXX):" \
140 -e "s:^\(TMAKE_LINK_SHLIB\s*\)=.*$:\1= $(tc-getCXX):" \
141 -e "s:^\(TMAKE_CC\s*\)=.*$:\1= $(tc-getCC):" \
142 -e "s:^\(TMAKE_AR\s*\)=.*$:\1= $(tc-getAR) cqs:" \
143 tmake/lib/{{linux,gnu,freebsd,netbsd,openbsd,solaris}-g++,macosx-c++,linux-64}/tmake.conf \
144 || die
145
146 # Ensure we link to -liconv
147 if use elibc_FreeBSD; then
148 for pro in */*.pro.in */*/*.pro.in; do
149 echo "unix:LIBS += -liconv" >> "${pro}"
150 done
151 fi
152
153 # Call dot with -Teps instead of -Tps for EPS generation - bug #282150
154 sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die
155
156 # prefix search tools patch, plus OSX fixes
157 epatch "${FILESDIR}"/${PN}-1.8.1-prefix-misc-alt.patch
158 epatch "${FILESDIR}"/${PN}-1.8.3.1-empty-line-sigsegv.patch #454348
159
160 # patch applied upstream
161 epatch ""${FILESDIR}"/${P}-libreoffice.patch"
162
163 # fix final DESTDIR issue
164 sed -i.orig -e "s:\$(INSTALL):\$(DESTDIR)/\$(INSTALL):g" \
165 -e "s/all: Makefile.doxywizard/all:/g" \
166 addon/doxywizard/Makefile.in || die
167
168 # fix pdf doc
169 sed -i.orig -e "s:g_kowal:g kowal:" \
170 doc/maintainers.txt || die
171
172 sed -e "s/\$(DATE)/$(LC_ALL="C" LANG="C" date)/g" \
173 -i Makefile.in || die #428280
174
175 if is-flagq "-O3" ; then
176 echo
177 ewarn "Compiling with -O3 is known to produce incorrectly"
178 ewarn "optimized code which breaks doxygen."
179 echo
180 elog "Continuing with -O2 instead ..."
181 echo
182 replace-flags "-O3" "-O2"
183 fi
184 }
185
186 src_configure() {
187 # set ./configure options (prefix, Qt based wizard, docdir)
188
189 local my_conf="--shared --enable-langs $(get_langs)"
190
191 if use debug ; then
192 my_conf="${my_conf} --debug"
193 else
194 my_conf="${my_conf} --release "
195 fi
196
197 use ppc64 && my_conf="${my_conf} --english-only" #263641
198
199 use qt4 && my_conf="${my_conf} --with-doxywizard"
200
201 use sqlite && my_conf="${my_conf} --with-sqlite3"
202
203 # On non GNU userland (e.g. BSD), configure script picks up make and bails
204 # out because it is not GNU make, so we force the right value.
205 use userland_GNU || my_conf="${my_conf} --make ${MAKE} --install install"
206
207 export LINK="${QMAKE_LINK}"
208 export LINK_SHLIB="${QMAKE_CXX}"
209
210 if use qt4 ; then
211 pushd addon/doxywizard &> /dev/null
212 eqmake4 doxywizard.pro -o Makefile.doxywizard
213 popd &> /dev/null
214 fi
215
216 ./configure --prefix "${EPREFIX}/usr" ${my_conf} \
217 || die
218 }
219
220 src_compile() {
221
222 emake CFLAGS+="${ECFLAGS}" CXXFLAGS+="${ECXXFLAGS}" \
223 LFLAGS+="${ELDFLAGS}" all
224
225 # generate html and pdf (if tetex in use) documents.
226 # errors here are not considered fatal, hence the ewarn message
227 # TeX's font caching in /var/cache/fonts causes sandbox warnings,
228 # so we allow it.
229 if use doc; then
230 if ! use dot; then
231 sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \
232 {Doxyfile,doc/Doxyfile} \
233 || ewarn "disabling dot failed"
234 fi
235 if use latex; then
236 addwrite /var/cache/fonts
237 addwrite /var/cache/fontconfig
238 addwrite /usr/share/texmf/fonts/pk
239 addwrite /usr/share/texmf/ls-R
240 make pdf || ewarn '"make pdf docs" failed.'
241 else
242 cp doc/Doxyfile doc/Doxyfile.orig
243 cp doc/Makefile doc/Makefile.orig
244 sed -i.orig -e "s/GENERATE_LATEX = YES/GENERATE_LATEX = NO/" \
245 doc/Doxyfile
246 sed -i.orig -e "s/@epstopdf/# @epstopdf/" \
247 -e "s/@cp Makefile.latex/# @cp Makefile.latex/" \
248 -e "s/@sed/# @sed/" doc/Makefile
249 make docs || ewarn '"make docs" failed.'
250 fi
251 fi
252 }
253
254 src_install() {
255 emake DESTDIR="${D}" MAN1DIR=share/man/man1 install
256
257 if use qt4; then
258 doicon "${DISTDIR}/doxywizard.png"
259 make_desktop_entry doxywizard "DoxyWizard ${PV}" \
260 "/usr/share/pixmaps/doxywizard.png" \
261 "Development"
262 fi
263
264 dodoc INSTALL LANGUAGE.HOWTO README
265
266 # pdf and html manuals
267 if use doc; then
268 dohtml -r html/*
269 use latex && dodoc latex/doxygen_manual.pdf
270 fi
271 }
272
273 pkg_postinst() {
274 fdo-mime_desktop_database_update
275
276 elog
277 elog "The USE flags qt4, doc, and latex will enable doxywizard, or"
278 elog "the html and pdf documentation, respectively. For examples"
279 elog "and other goodies, see the source tarball. For some example"
280 elog "output, run doxygen on the doxygen source using the Doxyfile"
281 elog "provided in the top-level source dir."
282 elog
283 elog "Disabling the dot USE flag will remove the GraphViz dependency,"
284 elog "along with Doxygen's ability to generate diagrams in the docs."
285 elog "See the Doxygen homepage for additional helper tools to parse"
286 elog "more languages."
287 elog
288 }
289
290 pkg_postrm() {
291 fdo-mime_desktop_database_update
292 }