blob: 2c806e0043abfb2d8f58ebf5964c8890389ecf27 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
DESCRIPTION = "SDK tools for Qt/[X11|Mac|Embedded] version 4.x"
DEPENDS = "nativesdk-zlib nativesdk-dbus nativesdk-libx11 qt4-native"
SECTION = "libs"
HOMEPAGE = "http://qt-project.org/"
LICENSE = "LGPLv2.1 | GPLv3"
INC_PR = "r13"
FILESEXTRAPATHS =. "${FILE_DIRNAME}/qt4-${PV}:"
inherit nativesdk qmake2
SRC_URI = "http://download.qt-project.org/official_releases/qt/4.8/${PV}/qt-everywhere-opensource-src-${PV}.tar.gz \
file://0001-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \
file://0004-configure-qmake-is-already-built-in-qt4-tools-native.patch \
file://0005-configure-set-LFLAGS-to-pick-up-zlib-from-staging.patch \
file://0006-configure-Use-OE_QMAKE_-values-to-specify-Qt-utility.patch \
file://0007-dbus-Remove-const-usage-that-causes-compile-failure-.patch \
file://0008-qmake.pro-Allow-building-a-separate-qmake-for-the-ta.patch \
file://g++.conf \
file://linux.conf"
S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
file://LICENSE.GPL3;md5=6e1694ee338db410417517884918d4d2 \
file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6"
require qt4_arch.inc
# FIXME: make it work with "${STAGING_BINDIR_NATIVE}/pkg-config --cflags dbus-1"
EXTRA_OECONF = "-prefix ${prefix} \
-qt-libjpeg -system-zlib \
-no-libjpeg -no-libpng -no-libmng -no-libtiff \
-no-accessibility \
-no-cups \
-no-exceptions \
-no-nas-sound \
-no-nis -no-openssl \
-verbose -release -fast -static \
-platform ${TARGET_OS}-oe-g++ \
-xplatform ${TARGET_OS}-oe-g++ \
-arch ${QT_ARCH} \
-embedded -no-freetype -no-glib -no-iconv \
-qt3support \
-I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/dbus-1.0 \
-I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/lib/dbus-1.0/include"
# yank default -e, otherwise we get the following error:
# moc_qbuffer.cpp: No such file or directory
EXTRA_OEMAKE = " "
do_configure() {
# Avoid problems with Qt 4.8.0 configure setting QMAKE_LINK from LD (since we want the linker to be g++)
unset LD
if [ ! -e mkspecs/${TARGET_OS}-oe-g++ ]; then
ln -sf linux-g++ mkspecs/${TARGET_OS}-oe-g++
fi
cp ../g++.conf mkspecs/common
cp ../linux.conf mkspecs/common
if [ -f mkspecs/common/g++-base.conf ] ; then
# don't use host g++ even during configure (4.8.0+)
sed -i -e "s#= g++#= ${CXX}#" mkspecs/common/g++-base.conf
sed -i -e "s#= gcc#= ${CC}#" mkspecs/common/g++-base.conf
fi
# Use qmake from qt4-native for building
if [ ! -e bin/qmake ]; then
ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
fi
set_arch
(echo o; echo yes) | CC="${CC}" CXX="${CXX}" ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
}
TOBUILD = "\
src/tools/bootstrap \
src/tools/moc \
src/corelib \
src/sql \
src/dbus \
src/qt3support \
src/xml \
src/tools/uic \
src/tools/rcc \
src/network \
src/gui \
src/tools/uic3 \
tools/linguist/lrelease \
tools/linguist/lupdate \
tools/qdbus \
"
do_compile() {
for i in ${TOBUILD}; do
cd ${S}/$i && oe_runmake CC="${CC}" CXX="${CXX}"
done
# Build nativesdk qmake
export QMAKESPEC="${S}/mkspecs/${TARGET_OS}-oe-g++"
cd ${S}/qmake
${OE_QMAKE_QMAKE}
oe_runmake CC="${CC}" CXX="${CXX}"
cd ${S}
}
do_install() {
install -d ${D}${bindir}
install -m 0755 bin/qmake2 ${D}${bindir}/qmake2
for i in moc uic uic3 rcc lrelease lupdate qdbuscpp2xml qdbusxml2cpp; do
install -m 0755 bin/${i} ${D}${bindir}/${i}4
done
(cd ${D}${bindir}; \
ln -s qmake2 qmake; \
for i in moc uic uic3 rcc lrelease lupdate qdbuscpp2xml qdbusxml2cpp; do \
ln -s ${i}4 ${i}; \
done)
install -d ${D}${sysconfdir}
cat >${D}${sysconfdir}/qt.conf <<EOF
[Paths]
Prefix = ${prefix}
EOF
}
|