Gentoo Archives: gentoo-commits

From: "Davide Pesavento (pesa)" <pesa@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-qt/qtcore: qtcore-4.8.5-r1.ebuild ChangeLog
Date: Sat, 28 Dec 2013 01:25:56
Message-Id: 20131228012552.C720E2004E@flycatcher.gentoo.org
1 pesa 13/12/28 01:25:52
2
3 Modified: ChangeLog
4 Added: qtcore-4.8.5-r1.ebuild
5 Log:
6 Apply upstream patches for CVE-2013-4549.
7
8 (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key 17A85C72)
9
10 Revision Changes Path
11 1.32 dev-qt/qtcore/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-qt/qtcore/ChangeLog?rev=1.32&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-qt/qtcore/ChangeLog?rev=1.32&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-qt/qtcore/ChangeLog?r1=1.31&r2=1.32
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-qt/qtcore/ChangeLog,v
20 retrieving revision 1.31
21 retrieving revision 1.32
22 diff -u -r1.31 -r1.32
23 --- ChangeLog 11 Nov 2013 13:56:14 -0000 1.31
24 +++ ChangeLog 28 Dec 2013 01:25:52 -0000 1.32
25 @@ -1,6 +1,13 @@
26 # ChangeLog for dev-qt/qtcore
27 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtcore/ChangeLog,v 1.31 2013/11/11 13:56:14 jer Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtcore/ChangeLog,v 1.32 2013/12/28 01:25:52 pesa Exp $
30 +
31 +*qtcore-4.8.5-r1 (28 Dec 2013)
32 +
33 + 28 Dec 2013; Davide Pesavento <pesa@g.o>
34 + +files/CVE-2013-4549-01-disallow-deep-or-widely-nested-entity-refs.patch,
35 + +files/CVE-2013-4549-02-fully-expand-entities.patch, +qtcore-4.8.5-r1.ebuild:
36 + Apply upstream patches for CVE-2013-4549.
37
38 11 Nov 2013; Jeroen Roovers <jer@g.o> qtcore-4.8.5.ebuild:
39 Stable for HPPA (bug #488536).
40
41
42
43 1.1 dev-qt/qtcore/qtcore-4.8.5-r1.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-qt/qtcore/qtcore-4.8.5-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-qt/qtcore/qtcore-4.8.5-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: qtcore-4.8.5-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/dev-qt/qtcore/qtcore-4.8.5-r1.ebuild,v 1.1 2013/12/28 01:25:52 pesa Exp $
53
54 EAPI=5
55
56 inherit qt4-build
57
58 DESCRIPTION="Cross-platform application development framework"
59 SLOT="4"
60 if [[ ${QT4_BUILD_TYPE} == live ]]; then
61 KEYWORDS=""
62 else
63 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
64 fi
65 IUSE="+glib iconv icu qt3support ssl"
66
67 DEPEND="
68 sys-libs/zlib
69 glib? ( dev-libs/glib:2 )
70 icu? ( >=dev-libs/icu-49:= )
71 ssl? ( dev-libs/openssl )
72 !<x11-libs/cairo-1.10.2-r2
73 "
74 RDEPEND="${DEPEND}"
75 PDEPEND="
76 qt3support? ( ~dev-qt/qtgui-${PV}[aqua=,debug=,glib=,qt3support] )
77 "
78
79 PATCHES=(
80 "${FILESDIR}/moc-boost-lexical-cast.patch"
81 "${FILESDIR}/CVE-2013-4549-01-disallow-deep-or-widely-nested-entity-refs.patch"
82 "${FILESDIR}/CVE-2013-4549-02-fully-expand-entities.patch"
83 )
84
85 pkg_setup() {
86 QT4_TARGET_DIRECTORIES="
87 src/tools/bootstrap
88 src/tools/moc
89 src/tools/rcc
90 src/tools/uic
91 src/corelib
92 src/xml
93 src/network
94 src/plugins/codecs
95 tools/linguist/lconvert
96 tools/linguist/lrelease
97 tools/linguist/lupdate"
98
99 QT4_EXTRACT_DIRECTORIES="${QT4_TARGET_DIRECTORIES}
100 include
101 src/plugins/plugins.pro
102 src/plugins/qpluginbase.pri
103 src/src.pro
104 src/3rdparty/des
105 src/3rdparty/harfbuzz
106 src/3rdparty/md4
107 src/3rdparty/md5
108 src/3rdparty/sha1
109 src/3rdparty/easing
110 src/3rdparty/zlib_dependency.pri
111 src/declarative
112 src/gui
113 src/script
114 tools/shared
115 tools/linguist/shared
116 translations"
117
118 qt4-build_pkg_setup
119 }
120
121 src_prepare() {
122 # Don't pre-strip, bug 235026
123 for i in kr jp cn tw; do
124 echo "CONFIG+=nostrip" >> "${S}"/src/plugins/codecs/${i}/${i}.pro
125 done
126
127 qt4-build_src_prepare
128
129 # bug 172219
130 sed -i -e "s:CXXFLAGS.*=:CXXFLAGS=${CXXFLAGS} :" \
131 "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix CXXFLAGS failed"
132 sed -i -e "s:LFLAGS.*=:LFLAGS=${LDFLAGS} :" \
133 "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix LDFLAGS failed"
134
135 # bug 427782
136 sed -i -e "/^CPPFLAGS/s/-g//" \
137 "${S}/qmake/Makefile.unix" || die "sed qmake/Makefile.unix CPPFLAGS failed"
138 sed -i -e "s/setBootstrapVariable QMAKE_CFLAGS_RELEASE/QMakeVar set QMAKE_CFLAGS_RELEASE/" \
139 -e "s/setBootstrapVariable QMAKE_CXXFLAGS_RELEASE/QMakeVar set QMAKE_CXXFLAGS_RELEASE/" \
140 "${S}/configure" || die "sed configure setBootstrapVariable failed"
141 }
142
143 src_configure() {
144 myconf+="
145 -no-accessibility -no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon
146 -no-phonon-backend -no-svg -no-webkit -no-script -no-scripttools -no-declarative
147 -system-zlib -no-gif -no-libtiff -no-libpng -no-libmng -no-libjpeg
148 -no-cups -no-dbus -no-gtkstyle -no-nas-sound -no-opengl -no-openvg
149 -no-sm -no-xshape -no-xvideo -no-xsync -no-xinerama -no-xcursor -no-xfixes
150 -no-xrandr -no-xrender -no-mitshm -no-fontconfig -no-freetype -no-xinput -no-xkb
151 $(qt_use glib)
152 $(qt_use iconv)
153 $(qt_use icu)
154 $(use ssl && echo -openssl-linked || echo -no-openssl)
155 $(qt_use qt3support)"
156
157 qt4-build_src_configure
158 }
159
160 src_install() {
161 dobin bin/{qmake,moc,rcc,uic,lconvert,lrelease,lupdate}
162
163 install_directories src/{corelib,xml,network,plugins/codecs}
164
165 emake INSTALL_ROOT="${D}" install_mkspecs
166
167 # install private headers
168 insinto "${QTHEADERDIR#${EPREFIX}}"/QtCore/private
169 find "${S}"/src/corelib -type f -name "*_p.h" -exec doins {} +
170
171 # use freshly built libraries
172 local DYLD_FPATH=
173 [[ -d "${S}"/lib/QtCore.framework ]] \
174 && DYLD_FPATH=$(for x in "${S}"/lib/*.framework; do echo -n ":$x"; done)
175 DYLD_LIBRARY_PATH="${S}/lib${DYLD_FPATH}" \
176 LD_LIBRARY_PATH="${S}/lib" \
177 "${S}"/bin/lrelease translations/*.ts \
178 || die "generating translations failed"
179 insinto "${QTTRANSDIR#${EPREFIX}}"
180 doins translations/*.qm
181
182 setqtenv
183 fix_library_files
184
185 # List all the multilib libdirs
186 local libdirs=
187 for libdir in $(get_all_libdirs); do
188 libdirs+=":${EPREFIX}/usr/${libdir}/qt4"
189 done
190
191 cat <<-EOF > "${T}"/44qt4
192 LDPATH="${libdirs:1}"
193 EOF
194 doenvd "${T}"/44qt4
195
196 dodir "${QTDATADIR#${EPREFIX}}"/mkspecs/gentoo
197 mv "${D}/${QTDATADIR}"/mkspecs/qconfig.pri "${D}${QTDATADIR}"/mkspecs/gentoo \
198 || die "failed to move qconfig.pri"
199
200 # Framework hacking
201 if use aqua && [[ ${CHOST#*-darwin} -ge 9 ]]; then
202 # TODO: do this better
203 sed -i -e '2a#include <QtCore/Gentoo/gentoo-qconfig.h>\n' \
204 "${D}${QTLIBDIR}"/QtCore.framework/Headers/qconfig.h \
205 || die "sed for qconfig.h failed."
206 dosym "${QTHEADERDIR#${EPREFIX}}"/Gentoo "${QTLIBDIR#${EPREFIX}}"/QtCore.framework/Headers/Gentoo
207 else
208 sed -i -e '2a#include <Gentoo/gentoo-qconfig.h>\n' \
209 "${D}${QTHEADERDIR}"/QtCore/qconfig.h \
210 "${D}${QTHEADERDIR}"/Qt/qconfig.h \
211 || die "sed for qconfig.h failed"
212 fi
213
214 QCONFIG_DEFINE="QT_ZLIB"
215 install_qconfigs
216
217 # remove .la files
218 prune_libtool_files
219
220 keepdir "${QTSYSCONFDIR#${EPREFIX}}"
221
222 # Framework magic
223 fix_includes
224 }