Gentoo Archives: gentoo-commits

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