diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-01 19:09:11 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-01 19:09:57 +0100 |
commit | d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612 (patch) | |
tree | f36fe3008f36ff75cbdd31b630f8f13f1f205ebb /meta-extras/packages/qmake | |
parent | caab7fc509bf27706ff3248689f6afd04225cfda (diff) | |
download | openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.gz openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.bz2 openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.xz openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.zip |
packages: Separate out most of the remaining packages into recipes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta-extras/packages/qmake')
4 files changed, 217 insertions, 0 deletions
diff --git a/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch b/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch new file mode 100644 index 000000000..4ebc3dea8 --- /dev/null +++ b/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch @@ -0,0 +1,120 @@ +From 594157753a24d0575aaf948dc0e9500f6bdb2178 Mon Sep 17 00:00:00 2001 +From: Michael Krelin <hacker@klever.net> +Date: Sat, 2 Jun 2007 16:39:58 +0200 +Subject: [PATCH] fix mkspecs + +--- + mkspecs/common/g++.conf | 18 +++++++++--------- + mkspecs/common/linux.conf | 26 +++++++++++++------------- + 2 files changed, 22 insertions(+), 22 deletions(-) + +Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf +=================================================================== +--- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/g++.conf ++++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf +@@ -2,12 +2,12 @@ + # qmake configuration for common gcc + # + +-QMAKE_CC = gcc +-QMAKE_CFLAGS += -pipe ++QMAKE_CC = $(OE_QMAKE_CC) ++QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS) + QMAKE_CFLAGS_DEPS += -M + QMAKE_CFLAGS_WARN_ON += -Wall -W + QMAKE_CFLAGS_WARN_OFF += -w +-QMAKE_CFLAGS_RELEASE += -O2 ++QMAKE_CFLAGS_RELEASE += -O2 + QMAKE_CFLAGS_DEBUG += -g + QMAKE_CFLAGS_SHLIB += -fPIC + QMAKE_CFLAGS_STATIC_LIB += -fPIC +@@ -16,8 +16,8 @@ QMAKE_CFLAGS_HIDESYMS += -fvisibility= + QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} + QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE} + +-QMAKE_CXX = g++ +-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS ++QMAKE_CXX = $(OE_QMAKE_CXX) ++QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS) + QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS + QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON + QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF +@@ -30,11 +30,11 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAG + QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} + QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE + +-QMAKE_LINK = g++ +-QMAKE_LINK_SHLIB = g++ +-QMAKE_LINK_C = gcc +-QMAKE_LINK_C_SHLIB = gcc +-QMAKE_LFLAGS += ++QMAKE_LINK = $(OE_QMAKE_LINK) ++QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK) ++QMAKE_LINK_C = $(OE_QMAKE_CC) ++QMAKE_LINK_C_SHLIB = $(OE_QMAKE_CC) ++QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS) + QMAKE_LFLAGS_RELEASE += -Wl,-O1 + QMAKE_LFLAGS_DEBUG += + QMAKE_LFLAGS_APP += +@@ -43,7 +43,7 @@ QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SH + QMAKE_LFLAGS_SONAME += -Wl,-soname, + QMAKE_LFLAGS_THREAD += + QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined +-QMAKE_RPATH = -Wl,-rpath, ++QMAKE_RPATH = -Wl,-rpath-link, + + QMAKE_PCH_OUTPUT_EXT = .gch + +Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf +=================================================================== +--- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/linux.conf ++++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf +@@ -7,27 +7,27 @@ QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_ + + QMAKE_INCDIR = + QMAKE_LIBDIR = +-QMAKE_INCDIR_X11 = /usr/X11R6/include +-QMAKE_LIBDIR_X11 = /usr/X11R6/lib +-QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS] +-QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS] +-QMAKE_INCDIR_OPENGL = /usr/X11R6/include +-QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib ++QMAKE_INCDIR_X11 = ++QMAKE_LIBDIR_X11 = ++QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT) ++QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT) ++QMAKE_INCDIR_OPENGL = ++QMAKE_LIBDIR_OPENGL = + + QMAKE_LIBS = + QMAKE_LIBS_DYNLOAD = -ldl +-QMAKE_LIBS_X11 = -lXext -lX11 -lm +-QMAKE_LIBS_X11SM = -lSM -lICE ++QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11) ++QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM) + QMAKE_LIBS_NIS = -lnsl + QMAKE_LIBS_OPENGL = -lGLU -lGL + QMAKE_LIBS_OPENGL_QT = -lGL + QMAKE_LIBS_THREAD = -lpthread + +-QMAKE_MOC = $$[QT_INSTALL_BINS]/moc +-QMAKE_UIC = $$[QT_INSTALL_BINS]/uic ++QMAKE_MOC = $(OE_QMAKE_MOC) ++QMAKE_UIC = $(OE_QMAKE_UIC) + +-QMAKE_AR = ar cqs +-QMAKE_OBJCOPY = objcopy ++QMAKE_AR = $(OE_QMAKE_AR) cqs ++QMAKE_OBJCOPY = $(OE_QMAKE_OBJCOPY) + QMAKE_RANLIB = + + QMAKE_TAR = tar -cf +@@ -39,7 +39,7 @@ QMAKE_COPY_DIR = $(COPY) -r + QMAKE_MOVE = mv -f + QMAKE_DEL_FILE = rm -f + QMAKE_DEL_DIR = rmdir +-QMAKE_STRIP = strip ++QMAKE_STRIP = $(OE_QMAKE_STRIP) + QMAKE_STRIPFLAGS_LIB += --strip-unneeded + QMAKE_CHK_DIR_EXISTS = test -d + QMAKE_MKDIR = mkdir -p diff --git a/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf b/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf new file mode 100644 index 000000000..f58481a69 --- /dev/null +++ b/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf @@ -0,0 +1 @@ +include(../linux-g++/qmake.conf) diff --git a/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch b/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch new file mode 100644 index 000000000..4197dbbf6 --- /dev/null +++ b/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch @@ -0,0 +1,22 @@ +Index: qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp +=================================================================== +--- qtopia-core-opensource-src-4.3.1.orig/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:45:26.000000000 +0200 ++++ qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:57:09.000000000 +0200 +@@ -416,7 +416,7 @@ + t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t"; + if(!project->isEmpty("QMAKE_PRE_LINK")) + t << var("QMAKE_PRE_LINK") << "\n\t"; +- t << "$(LINK) $(LFLAGS) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS)"; ++ t << "$(LINK) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS) $(LFLAGS)"; + if(!project->isEmpty("QMAKE_POST_LINK")) + t << "\n\t" << var("QMAKE_POST_LINK"); + t << endl << endl; +@@ -430,7 +430,7 @@ + t << mkdir_p_asstring(destdir) << "\n\t"; + if(!project->isEmpty("QMAKE_PRE_LINK")) + t << var("QMAKE_PRE_LINK") << "\n\t"; +- t << "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)"; ++ t << "$(LINK) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) $(LFLAGS)"; + if(!project->isEmpty("QMAKE_POST_LINK")) + t << "\n\t" << var("QMAKE_POST_LINK"); + t << endl << endl; diff --git a/meta-extras/packages/qmake/qmake2-cross_2.10a.bb b/meta-extras/packages/qmake/qmake2-cross_2.10a.bb new file mode 100644 index 000000000..60f738b9c --- /dev/null +++ b/meta-extras/packages/qmake/qmake2-cross_2.10a.bb @@ -0,0 +1,74 @@ +DESCRIPTION = "TrollTech Makefile Generator" +PRIORITY = "optional" +HOMEPAGE = "http://www.trolltech.com" +SECTION = "devel" +LICENSE = "GPL" +PR = "r2" + +QTVER = "qt-embedded-linux-opensource-src-4.5.3" + +SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \ + file://0001-fix-mkspecs.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}" +CROSS_BINDIR := "${STAGING_BINDIR_CROSS}" +inherit autotools cross + +export QTDIR = "${S}" +EXTRA_OEMAKE = "-e" +EXTRA_OECONF = "-opensource" + +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_OBJCOPY="${OBJCOPY}" + 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_install() { + install -d ${D}${CROSS_BINDIR}/ + install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake2 + install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake-qt4 + install -d ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/ + cp -PfR mkspecs ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/ + install -d ${D}${STAGING_DIR}/${HOST_SYS}/qt4/ + cp -PfR mkspecs ${D}${STAGING_DIR}/${HOST_SYS}/qt4/ +} + +sysroot_stage_all_append() { + sysroot_stage_dir ${D}/${STAGING_DIR_NATIVE}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/qt4 + sysroot_stage_dir ${D}/${STAGING_DIR_TARGET}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4 +} + + |