Magellan Linux

Annotation of /branches/magellan-next/extras/qt3/qt3-3.3.8b-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3476 - (hide annotations) (download)
Thu Oct 22 10:49:44 2009 UTC (14 years, 7 months ago) by niro
Original Path: trunk/core/qt/qt-3.3.8b-r3.smage2
File size: 6190 byte(s)
auto added: ver bump to 3.3.8b-r3
1 niro 3476 # $Id$
2    
3     PNAME="qt"
4     PVER="3.3.8b"
5     PBUILD="r3"
6    
7     PCATEGORIE="x11-libs"
8     STATE="unstable"
9    
10     DESCRIPTION="Qt: Cross-Platform Rich Client Development Framework."
11     HOMEPAGE="http://trolltech.com/products/qt/"
12    
13     DEPEND=">= dev-libs/expat-2
14     >= x11-libs/libICE-1
15     >= x11-libs/libSM-1
16     >= x11-libs/libX11-1
17     >= x11-libs/libXau-1
18     >= x11-libs/libxcb-1
19     >= x11-libs/libXcursor-1
20     >= x11-libs/libXdmcp-1
21     >= x11-libs/libXext-1
22     >= x11-libs/libXfixes-4
23     >= x11-libs/libXft-2
24     >= x11-libs/libXi-1
25     >= x11-libs/libXinerama-1
26     >= x11-libs/libXrandr-1
27     >= x11-libs/libXrender-0.9
28     >= media-libs/libjpeg-7
29     >= media-libs/libmng-1.0.10
30     >= media-libs/libpng-1.2.40
31     >= media-libs/lcms-1.18
32     >= media-libs/freetype-2
33     >= media-libs/fontconfig-2
34     >= net-print/cups-1.4
35     >= sys-libs/zlib-1.2.3
36     >= media-libs/giflib-4"
37    
38     SDEPEND=">= sys-dev/bison-2"
39    
40     SRCFILE="${PNAME}-x11-free-${PVER}.tar.gz"
41     SRCDIR="${BUILDDIR}/${PNAME}-x11-free-${PVER}"
42    
43     sminclude mtools
44    
45     SRC_URI=(
46     ftp://ftp.trolltech.com/qt/source/${SRCFILE}
47     mirror://${PNAME}/${SRCFILE}
48     mirror://${PNAME}/qt-no-rpath-uic.patch
49     mirror://${PNAME}/qt-no-rpath.patch
50     mirror://${PNAME}/qt-3.3.4-qclipboard-hack.patch
51     mirror://${PNAME}/qt-3.3.4-flickerfree_qiconview_buffered.patch
52     mirror://${PNAME}/qt-3.3.4-flickerfree_qscrollview_fixwindowactivate.patch
53     mirror://${PNAME}/qt-3.3.4-0047-fix-kmenu-widget.diff
54     mirror://${PNAME}/0001-dnd_optimization.patch
55     mirror://${PNAME}/0002-dnd_active_window_fix.patch
56     mirror://${PNAME}/0038-dragobject-dont-prefer-unknown.patch
57     mirror://${PNAME}/qt-3.3.8-uic-fix.patch
58     mirror://${PNAME}/qt-3.3.8-xinerama-improvements.patch
59     mirror://${PNAME}/qt-3.3.8-visibility.patch
60     )
61    
62     ## global vars ##
63     export QTDIR=${SRCDIR}
64     export LD_LIBRARY_PATH=${QTDIR}/lib
65     export PATH=${QTDIR}/bin:${PATH}
66     export PLATFORM=linux-g++
67     [[ ${ARCH} = x86_64 ]] && export PLATFORM=linux-g++-64
68    
69     # qt3 tarballs are named qt-x11-free
70     UP2DATE="updatecmd http://get.qt.nokia.com/qt/source/ | grep qt-x11-free | lasttarball gz"
71    
72     src_prepare()
73     {
74     munpack ${SRCFILE} || die
75     cd ${SRCDIR}
76    
77     sed -i 's:read acceptance:acceptance=yes:' configure || die
78    
79     mpatch qt-no-rpath-uic.patch || die
80     mpatch qt-no-rpath.patch || die
81    
82     # fixes includehint errors
83     mpatch qt-3.3.8-uic-fix.patch || die
84    
85     # fix freeze caused by bad interaction with kde klipper (kde bug 80072)
86     mpatch qt-3.3.4-qclipboard-hack.patch || die
87    
88     # performance patches (see http://robotics.dei.unipd.it/~koral/KDE/kflicker.html)
89     mpatch qt-3.3.4-flickerfree_qiconview_buffered.patch || die
90     mpatch qt-3.3.4-flickerfree_qscrollview_fixwindowactivate.patch || die
91    
92     # kde related patches
93     mpatch 0001-dnd_optimization.patch || die
94     mpatch 0002-dnd_active_window_fix.patch || die
95     mpatch 0038-dragobject-dont-prefer-unknown.patch || die
96     mpatch qt-3.3.4-0047-fix-kmenu-widget.diff || die
97    
98     # improved xinerama support (see http://ktown.kde.org/~seli/xinerama/)
99     mpatch qt-3.3.8-xinerama-improvements.patch || die
100    
101     # gcc-4.1 visibility fixes (do not apply on <gcc-4.1)
102     mpatch qt-3.3.8-visibility.patch || die
103    
104     # set our cflags and fix up our header and lib locations
105     cd ${SRCDIR}/mkspecs/${PLATFORM}
106     sed -i -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
107     -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
108     -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=${LDFLAGS}:" \
109     -e 's:$(QTDIR)/include:&/qt:' \
110     -e "s:\$(QTDIR)/lib:\$(QTDIR)/$(mlibdir):" \
111     qmake.conf \
112     || die
113    
114     # fix libdir to lib64 on 64bit arches
115     if [[ $(mlibdir) != lib ]]
116     then
117     sed -i -e "s:/lib$:/$(mlibdir):" qmake.conf || die
118     fi
119     }
120    
121     src_compile()
122     {
123     cd ${SRCDIR}
124    
125     # add missing lib64 search path on 64bit arches
126     local myconf
127     [[ $(mlibdir) != lib ]] && myconf="-L/usr/$(mlibdir)"
128    
129     ./configure \
130     -prefix /usr \
131     -sysconfdir /etc/qt \
132     -datadir /usr/share/qt \
133     -docdir /usr/share/doc/qt-${PVER} \
134     -headerdir /usr/include/qt \
135     -plugindir /usr/$(mlibdir)/qt/plugins \
136     -libdir /usr/$(mlibdir) \
137     -datadir /usr/share/qt \
138     -translationdir /usr/share/qt/translations \
139     -sm \
140     -thread \
141     -stl \
142     -system-libjpeg \
143     -verbose \
144     -largefile \
145     -qt-imgfmt-{jpeg,mng,png} \
146     -tablet \
147     -system-libmng \
148     -system-libpng \
149     -lpthread \
150     -xft \
151     -platform ${PLATFORM} \
152     -xplatform ${PLATFORM} \
153     -xrender \
154     -fast \
155     -cups \
156     -enable-module=opengl \
157     -system-zlib \
158     -qt-gif \
159     -dlopen-opengl \
160     -release \
161     ${myconf} \
162     || die
163    
164     mmake src-qmake src-moc sub-src || die
165     mmake sub-tools || die
166     }
167    
168     src_install()
169     {
170     cd ${SRCDIR}
171     make INSTALL_ROOT=${BINDIR} install || die
172    
173     # remove broken qmake link and install binary
174     if [ -L ${BINDIR}/usr/bin/qmake ]
175     then
176     echo "removing broken qmake symlink"
177     rm -f ${BINDIR}/usr/bin/qmake || die
178     echo "installing qmake binary"
179     minstallexec ${SRCDIR}/qmake/qmake || die
180     fi
181    
182     # remove broken linux-g++ link if exists
183     if [ -L ${BINDIR}/usr/share/qt/mkspecs/${PLATFORM}/${PLATFORM} ]
184     then
185     echo "removing broken ${PLATFORM} symlink"
186     rm ${BINDIR}/usr/share/qt/mkspecs/${PLATFORM}/${PLATFORM} || die
187     fi
188    
189     # install some missing binaries
190     minstallexec ${SRCDIR}/bin/qtrename140 || die
191     minstallexec ${SRCDIR}/bin/uic || die
192     minstallexec ${SRCDIR}/bin/findtr || die
193     minstallexec ${SRCDIR}/bin/qt20fix || die
194    
195     # qmake cache file
196     sed "s:${SRCDIR}:/usr:g" ${SRCDIR}/.qmake.cache > ${BINDIR}/usr/share/qt/.qmake.cache || die
197    
198     # some needed symlinks
199     mlink libqt-mt.so /usr/$(mlibdir)/libqt.so || die
200    
201     # remove unneeded specs
202     echo "removing unneeded specs ..."
203     install -d ${BUILDDIR}/keep
204     mv ${BINDIR}/usr/share/qt/mkspecs/default ${BUILDDIR}/keep || die
205     mv ${BINDIR}/usr/share/qt/mkspecs/${PLATFORM} ${BUILDDIR}/keep || die
206     rm -rf ${BINDIR}/usr/share/qt/mkspecs/* || die
207     mv ${BUILDDIR}/keep/* ${BINDIR}/usr/share/qt/mkspecs || die
208    
209     # docs
210     minstalldocs FAQ changes-${PVER} LICENSE* MANIFEST PLATFORMS README* || die
211    
212     # man
213     cp -r doc/man ${BINDIR}/usr/share || die
214     gzip -r9 ${BINDIR}/usr/share/man || die
215    
216     # don't want the tutorial anymore, too big
217     rm -rf ${BINDIR}/usr/share/doc/qt-${PVER}/html || die
218    
219     # environ vars
220     minstalldir /etc/env.d || die
221     echo "QMAKESPEC=\"${PLATFORM}\"" > ${BINDIR}/etc/env.d/45qt3 || die
222     echo 'QTDIR="/usr"' >> ${BINDIR}/etc/env.d/45qt3 || die
223     }

Properties

Name Value
svn:keywords Id