summaryrefslogtreecommitdiff
path: root/packages/qmake/qmake2-native.inc
blob: f7bdd7836b04972974ef31c45c768c76be557e3a (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
DESCRIPTION = "TrollTech Makefile Generator"
PRIORITY = "optional"
HOMEPAGE = "http://www.trolltech.com"
SECTION = "devel"
LICENSE = "GPL"
PR = "r2"

QTVER = "qtopia-core-opensource-src-${QTVERSION}"

SRC_URI = "ftp://ftp.trolltech.com/qt/source/${QTVER}.tar.gz \
           file://0001-fix-mkspecs.patch;patch=1 \
           file://0008-backport-qt-lib-infix.patch;patch=1 \
           file://qt-config.patch;patch=1 \
           file://use-lflags-last.patch;patch=1 \
           file://linux-oe-qmake.conf"
S = "${WORKDIR}/${QTVER}"

# we need the real target system here
CROSS_SYS := "${TARGET_SYS}"
inherit autotools  

export QTDIR = "${S}"
EXTRA_OEMAKE = "-e"

do_configure() {
    # Install the OE build templates
    for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++
    do
        install -d ${S}/mkspecs/$template
        install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
        ln -sf ../linux-g++/qplatformdefs.h ${S}/mkspecs/$template/qplatformdefs.h
    done

    QMAKESPEC=
    PLATFORM=${HOST_OS}-oe-g++
    export PLATFORM
    # yes, TARGET_SYS is correct, because this is a 'cross'-qmake-native :) :M:
    export OE_QMAKE_CC="${CC}"
    export OE_QMAKE_CFLAGS="${CFLAGS}"
    export OE_QMAKE_CXX="${CXX}"
    export OE_QMAKE_CXXFLAGS="-fno-exceptions -fno-rtti ${CXXFLAGS}"
    export OE_QMAKE_LDFLAGS="${LDFLAGS}"
    export OE_QMAKE_LINK="${CCLD}"
    export OE_QMAKE_AR="${AR}"
    export OE_QMAKE_STRIP="${STRIP}"
    export OE_QMAKE_UIC="${STAGING_BINDIR_NATIVE}/uic"
    export OE_QMAKE_MOC="${STAGING_BINDIR_NATIVE}/moc"
    export OE_QMAKE_RCC="non-existant"
    export OE_QMAKE_QMAKE="${STAGING_BINDIR_NATIVE}/qmake"
    export OE_QMAKE_RPATH="-Wl,-rpath-link,"
    echo yes | ./configure -prefix ${STAGING_DIR}/${CROSS_SYS}/qt4 ${EXTRA_OECONF} || die "Configuring qt failed"
}

do_compile() {
    :
}

do_stage() {
    install -m 0755 bin/qmake ${STAGING_BINDIR}/qmake2
    install -m 0755 bin/qmake ${STAGING_BINDIR}/qmake-qt4
    install -d ${CROSS_DATADIR}/qt4
    cp -PfR mkspecs ${CROSS_DATADIR}/qt4/
}