From: "Davide Pesavento" <pesa@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/qt:master commit in: eclass/
Date: Fri, 30 Mar 2012 15:20:44 +0000 (UTC) [thread overview]
Message-ID: <1333120655.ad0d41c7708c73f94d49c58c873baa79d062450e.pesa@gentoo> (raw)
commit: ad0d41c7708c73f94d49c58c873baa79d062450e
Author: Davide Pesavento <davidepesa <AT> gmail <DOT> com>
AuthorDate: Fri Mar 30 15:17:35 2012 +0000
Commit: Davide Pesavento <pesa <AT> gentoo <DOT> org>
CommitDate: Fri Mar 30 15:17:35 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/qt.git;a=commit;h=ad0d41c7
Merged qt4-build and qt4-build-edge eclasses.
---
eclass/qt4-build.eclass | 872 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 872 insertions(+), 0 deletions(-)
diff --git a/eclass/qt4-build.eclass b/eclass/qt4-build.eclass
new file mode 100644
index 0000000..e3c60cf
--- /dev/null
+++ b/eclass/qt4-build.eclass
@@ -0,0 +1,872 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/eclass/qt4-build.eclass,v 1.123 2012/03/08 14:24:40 pesa Exp $
+
+# @ECLASS: qt4-build.eclass
+# @MAINTAINER:
+# Qt herd <qt@gentoo.org>
+# @BLURB: Eclass for Qt4 split ebuilds.
+# @DESCRIPTION:
+# This eclass contains various functions that are used when building Qt4.
+
+case ${EAPI} in
+ 2|3|4) : ;;
+ *) die "qt4-build.eclass requires EAPI 2, 3 or 4." ;;
+esac
+
+inherit base eutils flag-o-matic multilib toolchain-funcs versionator
+
+if [[ ${PV} == *9999* ]]; then
+ QT4_BUILD_TYPE="live"
+ inherit git-2
+else
+ QT4_BUILD_TYPE="release"
+fi
+
+HOMEPAGE="http://qt-project.org/ http://qt.nokia.com/"
+LICENSE="|| ( LGPL-2.1 GPL-3 )"
+
+MY_PV=${PV/_/-}
+MY_P=qt-everywhere-opensource-src-${MY_PV}
+
+case ${QT4_BUILD_TYPE} in
+ live)
+ EGIT_REPO_URI="git://gitorious.org/qt/qt.git
+ https://git.gitorious.org/qt/qt.git"
+ EGIT_BRANCH="${PV%.9999}"
+ ;;
+ release)
+ SRC_URI="http://get.qt.nokia.com/qt/source/${MY_P}.tar.gz"
+ ;;
+esac
+
+IUSE="aqua debug pch"
+if [[ ${CATEGORY}/${PN} != x11-libs/qt-xmlpatterns ]]; then
+ IUSE+=" +exceptions"
+fi
+if version_is_at_least 4.8; then
+ IUSE+=" c++0x qpa"
+fi
+
+DEPEND="dev-util/pkgconfig"
+if [[ ${QT4_BUILD_TYPE} == live ]]; then
+ DEPEND+=" dev-lang/perl"
+fi
+
+RDEPEND="
+ !<x11-libs/qt-assistant-${PV}
+ !>x11-libs/qt-assistant-${PV}-r9999
+ !<x11-libs/qt-core-${PV}
+ !>x11-libs/qt-core-${PV}-r9999
+ !<x11-libs/qt-dbus-${PV}
+ !>x11-libs/qt-dbus-${PV}-r9999
+ !<x11-libs/qt-declarative-${PV}
+ !>x11-libs/qt-declarative-${PV}-r9999
+ !<x11-libs/qt-demo-${PV}
+ !>x11-libs/qt-demo-${PV}-r9999
+ !<x11-libs/qt-gui-${PV}
+ !>x11-libs/qt-gui-${PV}-r9999
+ !<x11-libs/qt-multimedia-${PV}
+ !>x11-libs/qt-multimedia-${PV}-r9999
+ !<x11-libs/qt-opengl-${PV}
+ !>x11-libs/qt-opengl-${PV}-r9999
+ !<x11-libs/qt-openvg-${PV}
+ !>x11-libs/qt-openvg-${PV}-r9999
+ !<x11-libs/qt-phonon-${PV}
+ !>x11-libs/qt-phonon-${PV}-r9999
+ !<x11-libs/qt-qt3support-${PV}
+ !>x11-libs/qt-qt3support-${PV}-r9999
+ !<x11-libs/qt-script-${PV}
+ !>x11-libs/qt-script-${PV}-r9999
+ !<x11-libs/qt-sql-${PV}
+ !>x11-libs/qt-sql-${PV}-r9999
+ !<x11-libs/qt-svg-${PV}
+ !>x11-libs/qt-svg-${PV}-r9999
+ !<x11-libs/qt-test-${PV}
+ !>x11-libs/qt-test-${PV}-r9999
+ !<x11-libs/qt-webkit-${PV}
+ !>x11-libs/qt-webkit-${PV}-r9999
+ !<x11-libs/qt-xmlpatterns-${PV}
+ !>x11-libs/qt-xmlpatterns-${PV}-r9999
+"
+
+S=${WORKDIR}/${MY_P}
+
+# @FUNCTION: qt4-build_pkg_setup
+# @DESCRIPTION:
+# Sets up PATH and LD_LIBRARY_PATH.
+qt4-build_pkg_setup() {
+ [[ ${EAPI} == 2 ]] && use !prefix && EPREFIX=
+
+ # Protect users by not allowing downgrades between releases
+ # Downgrading revisions within the same release should be allowed
+ if has_version '>'${CATEGORY}/${P}-r9999; then
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]]; then
+ eerror
+ eerror "Sanity check to keep you from breaking your system:"
+ eerror " Downgrading Qt is completely unsupported and will break your system!"
+ eerror
+ die "aborting to save your system"
+ else
+ ewarn "Downgrading Qt is completely unsupported and will break your system!"
+ fi
+ fi
+
+ if [[ ${PN} == qt-webkit ]]; then
+ eshopts_push -s extglob
+ if is-flagq '-g?(gdb)?([1-9])'; then
+ echo
+ ewarn "You have enabled debug info (probably have -g or -ggdb in your CFLAGS/CXXFLAGS)."
+ ewarn "You may experience really long compilation times and/or increased memory usage."
+ ewarn "If compilation fails, please try removing -g/-ggdb before reporting a bug."
+ ewarn "For more info check out bug #307861"
+ echo
+ fi
+ eshopts_pop
+ fi
+
+ PATH="${S}/bin${PATH:+:}${PATH}"
+ if [[ ${CHOST} != *-darwin* ]]; then
+ LD_LIBRARY_PATH="${S}/lib${LD_LIBRARY_PATH:+:}${LD_LIBRARY_PATH}"
+ else
+ DYLD_LIBRARY_PATH="${S}/lib${DYLD_LIBRARY_PATH:+:}${DYLD_LIBRARY_PATH}"
+ # On MacOS we *need* at least src/gui/kernel/qapplication_mac.mm for
+ # platform detection. Note: needs to come before any directories to
+ # avoid extract failure.
+ [[ ${CHOST} == *-apple-darwin* ]] && \
+ QT4_EXTRACT_DIRECTORIES="src/gui/kernel/qapplication_mac.mm
+ ${QT4_EXTRACT_DIRECTORIES}"
+ fi
+
+ if ! version_is_at_least 4.1 $(gcc-version); then
+ ewarn "Using a GCC version lower than 4.1 is not supported."
+ fi
+}
+
+# @ECLASS-VARIABLE: QT4_TARGET_DIRECTORIES
+# @DESCRIPTION:
+# Arguments for build_target_directories. Takes the directories in which the
+# code should be compiled. This is a space-separated list.
+
+# @ECLASS-VARIABLE: QT4_EXTRACT_DIRECTORIES
+# @DESCRIPTION:
+# Space-separated list including the directories that will be extracted from
+# Qt tarball.
+
+# @FUNCTION: qt4-build_src_unpack
+# @DESCRIPTION:
+# Unpacks the sources.
+qt4-build_src_unpack() {
+ setqtenv
+
+ case ${QT4_BUILD_TYPE} in
+ live)
+ git-2_src_unpack
+ ;;
+ release)
+ local tarball="${MY_P}.tar.gz" target= targets=
+ for target in configure LICENSE.GPL3 LICENSE.LGPL projects.pro \
+ src/{qbase,qt_targets,qt_install}.pri bin config.tests \
+ mkspecs qmake ${QT4_EXTRACT_DIRECTORIES}
+ do
+ targets+="${MY_P}/${target} "
+ done
+
+ ebegin "Unpacking parts of ${tarball}:" ${targets//${MY_P}\/}
+ tar -xzf "${DISTDIR}/${tarball}" ${targets}
+ eend $? || die "failed to unpack"
+ ;;
+ esac
+}
+
+# @ECLASS-VARIABLE: PATCHES
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# PATCHES array variable containing all various patches to be applied.
+# This variable is expected to be defined in global scope of ebuild.
+# Make sure to specify the full path. This variable is utilised in
+# src_unpack/src_prepare phase, based on EAPI.
+#
+# @CODE
+# PATCHES=( "${FILESDIR}/mypatch.patch"
+# "${FILESDIR}/patches_folder/" )
+# @CODE
+
+# @FUNCTION: qt4-build_src_prepare
+# @DESCRIPTION:
+# Prepare the sources before the configure phase. Strip CFLAGS if necessary, and fix
+# the build system in order to respect CFLAGS/CXXFLAGS/LDFLAGS specified in /etc/make.conf.
+qt4-build_src_prepare() {
+ setqtenv
+
+ if [[ ${QT4_BUILD_TYPE} == live ]]; then
+ QTDIR="." ./bin/syncqt || die "syncqt failed"
+ fi
+
+ if version_is_at_least 4.7; then
+ # fix libX11 dependency on non X packages
+ local nolibx11_pkgs="qt-core qt-dbus qt-script qt-sql qt-test qt-xmlpatterns"
+ has ${PN} ${nolibx11_pkgs} && qt_nolibx11
+
+ qt_assistant_cleanup
+ fi
+
+ if use aqua; then
+ # provide a proper macx-g++-64
+ use x64-macos && ln -s macx-g++ mkspecs/$(qt_mkspecs_dir)
+
+ sed -e '/^CONFIG/s:app_bundle::' \
+ -e '/^CONFIG/s:plugin_no_soname:plugin_with_soname absolute_library_soname:' \
+ -i mkspecs/$(qt_mkspecs_dir)/qmake.conf || die
+ fi
+
+ if [[ ${PN} != qt-core ]]; then
+ skip_qmake_build
+ skip_project_generation
+ symlink_binaries_to_buildtree
+ fi
+
+ if [[ ${CHOST} == *86*-apple-darwin* ]]; then
+ # qmake bus errors with -O2 but -O3 works
+ replace-flags -O2 -O3
+ fi
+
+ # Bug 178652
+ if [[ $(gcc-major-version) == 3 ]] && use amd64; then
+ ewarn "Appending -fno-gcse to CFLAGS/CXXFLAGS"
+ append-flags -fno-gcse
+ fi
+
+ if use_if_iuse c++0x; then
+ echo
+ ewarn "You are about to build Qt4 using the C++11 standard. Even though"
+ ewarn "this is an official standard, some of the reverse dependencies"
+ ewarn "may fail to compile or link againt the Qt4 libraries. Before"
+ ewarn "reporting a bug, make sure your bug is reproducible with c++0x"
+ ewarn "disabled."
+ echo
+ append-flags -std=c++0x
+ fi
+
+ # Unsupported old gcc versions - hardened needs this :(
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ ewarn "Appending -fno-stack-protector to CXXFLAGS"
+ append-cxxflags -fno-stack-protector
+ # Bug 253127
+ sed -e "/^QMAKE_CFLAGS\t/ s:$: -fno-stack-protector-all:" \
+ -i mkspecs/common/g++.conf || die
+ fi
+
+ # Bug 261632
+ if use ppc64; then
+ ewarn "Appending -mminimal-toc to CFLAGS/CXXFLAGS"
+ append-flags -mminimal-toc
+ fi
+
+ # Respect CC, CXX, {C,CXX,LD}FLAGS in .qmake.cache
+ sed -e "/^SYSTEM_VARIABLES=/i \
+ CC='$(tc-getCC)'\n\
+ CXX='$(tc-getCXX)'\n\
+ CFLAGS='${CFLAGS}'\n\
+ CXXFLAGS='${CXXFLAGS}'\n\
+ LDFLAGS='${LDFLAGS}'\n" \
+ -i configure \
+ || die "sed SYSTEM_VARIABLES failed"
+
+ # Respect CC, CXX, LINK and *FLAGS in config.tests
+ find config.tests/unix -name '*.test' -type f -print0 | xargs -0 \
+ sed -i -e "/bin\/qmake/ s: \"QT_BUILD_TREE=: \
+ 'QMAKE_CC=$(tc-getCC)' 'QMAKE_CXX=$(tc-getCXX)' 'QMAKE_LINK=$(tc-getCXX)' \
+ 'QMAKE_CFLAGS+=${CFLAGS}' 'QMAKE_CXXFLAGS+=${CXXFLAGS}' 'QMAKE_LFLAGS+=${LDFLAGS}'&:" \
+ || die "sed config.tests failed"
+
+ # Strip predefined CFLAGS from mkspecs (bug 312689)
+ sed -i -e '/^QMAKE_CFLAGS_RELEASE/s:+=.*:+=:' mkspecs/common/g++.conf || die
+
+ # Bug 172219
+ sed -e 's:/X11R6/:/:' -i mkspecs/$(qt_mkspecs_dir)/qmake.conf || die
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ # Set FLAGS *and* remove -arch, since our gcc-apple is multilib
+ # crippled (by design) :/
+ sed \
+ -e "s:QMAKE_CFLAGS_RELEASE.*=.*:QMAKE_CFLAGS_RELEASE=${CFLAGS}:" \
+ -e "s:QMAKE_CXXFLAGS_RELEASE.*=.*:QMAKE_CXXFLAGS_RELEASE=${CXXFLAGS}:" \
+ -e "s:QMAKE_LFLAGS_RELEASE.*=.*:QMAKE_LFLAGS_RELEASE=-headerpad_max_install_names ${LDFLAGS}:" \
+ -e "s:-arch\s\w*::g" \
+ -i mkspecs/common/mac-g++.conf \
+ || die "sed mkspecs/common/mac-g++.conf failed"
+
+ # Fix configure's -arch settings that appear in qmake/Makefile and also
+ # fix arch handling (automagically duplicates our -arch arg and breaks
+ # pch). Additionally disable Xarch support.
+ sed \
+ -e "s:-arch i386::" \
+ -e "s:-arch ppc::" \
+ -e "s:-arch x86_64::" \
+ -e "s:-arch ppc64::" \
+ -e "s:-arch \$i::" \
+ -e "/if \[ ! -z \"\$NATIVE_64_ARCH\" \]; then/,/fi/ d" \
+ -e "s:CFG_MAC_XARCH=yes:CFG_MAC_XARCH=no:g" \
+ -e "s:-Xarch_x86_64::g" \
+ -e "s:-Xarch_ppc64::g" \
+ -i configure mkspecs/common/mac-g++.conf \
+ || die "sed -arch/-Xarch failed"
+
+ # On Snow Leopard don't fall back to 10.5 deployment target.
+ if [[ ${CHOST} == *-apple-darwin10 ]]; then
+ sed -e "s:QMakeVar set QMAKE_MACOSX_DEPLOYMENT_TARGET.*:QMakeVar set QMAKE_MACOSX_DEPLOYMENT_TARGET 10.6:g" \
+ -e "s:-mmacosx-version-min=10.[0-9]:-mmacosx-version-min=10.6:g" \
+ -i configure mkspecs/common/mac-g++.conf \
+ || die "sed deployment target failed"
+ fi
+ fi
+
+ # this one is needed for all systems with a separate -liconv, apart from
+ # Darwin, for which the sources already cater for -liconv
+ if use !elibc_glibc && [[ ${CHOST} != *-darwin* ]]; then
+ sed -e 's|mac:\(LIBS += -liconv\)|\1|g' \
+ -i config.tests/unix/iconv/iconv.pro \
+ || die "sed iconv.pro failed"
+ fi
+
+ # we need some patches for Solaris
+ sed -i -e '/^QMAKE_LFLAGS_THREAD/a\QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,' \
+ mkspecs/$(qt_mkspecs_dir)/qmake.conf || die
+ # use GCC over SunStudio
+ sed -i -e '/PLATFORM=solaris-cc/s/cc/g++/' configure || die
+ # do not flirt with non-Prefix stuff, we're quite possessive
+ sed -i -e '/^QMAKE_\(LIB\|INC\)DIR\(_X11\|_OPENGL\|\)\t/s/=.*$/=/' \
+ mkspecs/$(qt_mkspecs_dir)/qmake.conf || die
+
+ base_src_prepare
+}
+
+# @FUNCTION: qt4-build_src_configure
+# @DESCRIPTION:
+# Default configure phase
+qt4-build_src_configure() {
+ setqtenv
+
+ local conf="
+ -prefix ${QTPREFIXDIR}
+ -bindir ${QTBINDIR}
+ -libdir ${QTLIBDIR}
+ -docdir ${QTDOCDIR}
+ -headerdir ${QTHEADERDIR}
+ -plugindir ${QTPLUGINDIR}
+ $(version_is_at_least 4.7 && echo -importdir ${QTIMPORTDIR})
+ -datadir ${QTDATADIR}
+ -translationdir ${QTTRANSDIR}
+ -sysconfdir ${QTSYSCONFDIR}
+ -examplesdir ${QTEXAMPLESDIR}
+ -demosdir ${QTDEMOSDIR}
+ -opensource -confirm-license
+ -shared -fast -largefile -stl -verbose
+ -nomake examples -nomake demos"
+
+ # ARCH is set on Gentoo. Qt now falls back to generic on an unsupported
+ # $(tc-arch). Therefore we convert it to supported values.
+ case "$(tc-arch)" in
+ amd64|x64-*) conf+=" -arch x86_64" ;;
+ ppc-macos) conf+=" -arch ppc" ;;
+ ppc|ppc64|ppc-*) conf+=" -arch powerpc" ;;
+ sparc|sparc-*|sparc64-*) conf+=" -arch sparc" ;;
+ x86-macos) conf+=" -arch x86" ;;
+ x86|x86-*) conf+=" -arch i386" ;;
+ alpha|arm|ia64|mips|s390) conf+=" -arch $(tc-arch)" ;;
+ hppa|sh) conf+=" -arch generic" ;;
+ *) die "$(tc-arch) is unsupported by this eclass. Please file a bug." ;;
+ esac
+
+ conf+=" -platform $(qt_mkspecs_dir)"
+
+ [[ $(get_libdir) != lib ]] && conf+=" -L${EPREFIX}/usr/$(get_libdir)"
+
+ # debug/release
+ if use debug; then
+ conf+=" -debug"
+ else
+ conf+=" -release"
+ fi
+ conf+=" -no-separate-debug-info"
+
+ # exceptions USE flag
+ conf+=" $(in_iuse exceptions && qt_use exceptions || echo -exceptions)"
+
+ # disable RPATH on Qt >= 4.8 (bug 380415)
+ version_is_at_least 4.8 && conf+=" -no-rpath"
+
+ # precompiled headers don't work on hardened, where the flag is masked
+ conf+=" $(qt_use pch)"
+
+ # -reduce-relocations
+ # This flag seems to introduce major breakage to applications,
+ # mostly to be seen as a core dump with the message "QPixmap: Must
+ # construct a QApplication before a QPaintDevice" on Solaris.
+ # -- Daniel Vergien
+ [[ ${CHOST} != *-solaris* ]] && conf+=" -reduce-relocations"
+
+ # this one is needed for all systems with a separate -liconv, apart from
+ # Darwin, for which the sources already cater for -liconv
+ if use !elibc_glibc && [[ ${CHOST} != *-darwin* ]]; then
+ conf+=" -liconv"
+ fi
+
+ if use_if_iuse glib; then
+ local glibflags="$(pkg-config --cflags --libs glib-2.0 gthread-2.0)"
+ # avoid the -pthread argument
+ conf+=" ${glibflags//-pthread}"
+ unset glibflags
+ fi
+
+ if use_if_iuse qpa; then
+ echo
+ ewarn "The qpa useflag enables the Qt Platform Abstraction, formely"
+ ewarn "known as Qt Lighthouse. If you are not sure what that is, then"
+ ewarn "disable it before reporting any bugs related to this useflag."
+ echo
+ conf+=" -qpa"
+ fi
+
+ if use aqua; then
+ # On (snow) leopard use the new (frameworked) cocoa code.
+ if [[ ${CHOST##*-darwin} -ge 9 ]]; then
+ conf+=" -cocoa -framework"
+ # We need the source's headers, not the installed ones.
+ conf+=" -I${S}/include"
+ # Add hint for the framework location.
+ conf+=" -F${QTLIBDIR}"
+
+ # We are crazy and build cocoa + qt3support :-)
+ if use qt3support; then
+ sed -e "/case \"\$PLATFORM,\$CFG_MAC_COCOA\" in/,/;;/ s|CFG_QT3SUPPORT=\"no\"|CFG_QT3SUPPORT=\"yes\"|" \
+ -i configure || die
+ fi
+ else
+ conf+=" -no-framework"
+ fi
+ else
+ # freetype2 include dir is non-standard, thus pass it to configure
+ conf+=" $(pkg-config --cflags-only-I freetype2)"
+ fi
+
+ conf+=" ${myconf}"
+ myconf=
+
+ echo ./configure ${conf}
+ ./configure ${conf} || die "./configure failed"
+
+ prepare_directories ${QT4_TARGET_DIRECTORIES}
+}
+
+# @FUNCTION: qt4-build_src_compile
+# @DESCRIPTION:
+# Actual compile phase
+qt4-build_src_compile() {
+ setqtenv
+
+ build_directories ${QT4_TARGET_DIRECTORIES}
+}
+
+# @FUNCTION: qt4-build_src_test
+# @DESCRIPTION:
+# Runs tests only in target directories.
+qt4-build_src_test() {
+ # QtMultimedia does not have any test suite (bug #332299)
+ [[ ${PN} == qt-multimedia ]] && return
+
+ for dir in ${QT4_TARGET_DIRECTORIES}; do
+ emake -j1 check -C ${dir}
+ done
+}
+
+# @FUNCTION: fix_includes
+# @DESCRIPTION:
+# For MacOS X we need to add some symlinks when frameworks are
+# being used, to avoid complications with some more or less stupid packages.
+fix_includes() {
+ if use aqua && [[ ${CHOST##*-darwin} -ge 9 ]]; then
+ # Some packages tend to include <Qt/...>
+ dodir "${QTHEADERDIR#${EPREFIX}}"/Qt
+
+ # Fake normal headers when frameworks are installed... eases life later on
+ local dest f h
+ for frw in "${D}${QTLIBDIR}"/*.framework; do
+ [[ -e "${frw}"/Headers ]] || continue
+ f=$(basename ${frw})
+ dest="${QTHEADERDIR#${EPREFIX}}"/${f%.framework}
+ dosym "${QTLIBDIR#${EPREFIX}}"/${f}/Headers "${dest}"
+
+ # Link normal headers as well.
+ for hdr in "${D}/${QTLIBDIR}/${f}"/Headers/*; do
+ h=$(basename ${hdr})
+ dosym "${QTLIBDIR#${EPREFIX}}"/${f}/Headers/${h} "${QTHEADERDIR#${EPREFIX}}"/Qt/${h}
+ done
+ done
+ fi
+}
+
+# @FUNCTION: qt4-build_src_install
+# @DESCRIPTION:
+# Perform the actual installation including some library fixes.
+qt4-build_src_install() {
+ [[ ${EAPI} == 2 ]] && use !prefix && ED=${D}
+ setqtenv
+
+ install_directories ${QT4_TARGET_DIRECTORIES}
+ install_qconfigs
+ fix_library_files
+ fix_includes
+
+ # remove .la files since we are building only shared Qt libraries
+ find "${D}"${QTLIBDIR} -type f -name '*.la' -print0 | xargs -0 rm -f
+}
+
+# @FUNCTION: setqtenv
+# @INTERNAL
+setqtenv() {
+ # Set up installation directories
+ QTPREFIXDIR=${EPREFIX}/usr
+ QTBINDIR=${EPREFIX}/usr/bin
+ QTLIBDIR=${EPREFIX}/usr/$(get_libdir)/qt4
+ QTPCDIR=${EPREFIX}/usr/$(get_libdir)/pkgconfig
+ QTDOCDIR=${EPREFIX}/usr/share/doc/qt-${PV}
+ QTHEADERDIR=${EPREFIX}/usr/include/qt4
+ QTPLUGINDIR=${QTLIBDIR}/plugins
+ QTIMPORTDIR=${QTLIBDIR}/imports
+ QTDATADIR=${EPREFIX}/usr/share/qt4
+ QTTRANSDIR=${QTDATADIR}/translations
+ QTSYSCONFDIR=${EPREFIX}/etc/qt4
+ QTEXAMPLESDIR=${QTDATADIR}/examples
+ QTDEMOSDIR=${QTDATADIR}/demos
+ QMAKE_LIBDIR_QT=${QTLIBDIR}
+ QT_INSTALL_PREFIX=${EPREFIX}/usr/$(get_libdir)/qt4
+
+ PLATFORM=$(qt_mkspecs_dir)
+
+ unset QMAKESPEC
+}
+
+# @FUNCTION: prepare_directories
+# @USAGE: < directories >
+# @INTERNAL
+# @DESCRIPTION:
+# Generates Makefiles for the given list of directories.
+prepare_directories() {
+ for x in "$@"; do
+ pushd "${S}"/${x} >/dev/null || die
+ einfo "Running qmake in: ${x}"
+ # avoid running over the maximum argument number, bug #299810
+ {
+ echo "${S}"/mkspecs/common/*.conf
+ find "${S}" -name '*.pr[io]'
+ } | xargs sed -i \
+ -e "s:\$\$\[QT_INSTALL_LIBS\]:${QTLIBDIR}:g" \
+ -e "s:\$\$\[QT_INSTALL_PLUGINS\]:${QTPLUGINDIR}:g" \
+ || die
+ "${S}"/bin/qmake "LIBS+=-L${QTLIBDIR}" "CONFIG+=nostrip" || die "qmake failed"
+ popd >/dev/null || die
+ done
+}
+
+
+# @FUNCTION: build_directories
+# @USAGE: < directories >
+# @INTERNAL
+# @DESCRIPTION:
+# Compiles the code in the given list of directories.
+build_directories() {
+ for x in "$@"; do
+ pushd "${S}"/${x} >/dev/null || die
+ emake CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ LINK="$(tc-getCXX)" || die "emake failed"
+ popd >/dev/null || die
+ done
+}
+
+# @FUNCTION: install_directories
+# @USAGE: < directories >
+# @INTERNAL
+# @DESCRIPTION:
+# Runs emake install in the given directories, which are separated by spaces.
+install_directories() {
+ for x in "$@"; do
+ pushd "${S}"/${x} >/dev/null || die
+ emake INSTALL_ROOT="${D}" install || die "emake install failed"
+ popd >/dev/null || die
+ done
+}
+
+# @ECLASS-VARIABLE: QCONFIG_ADD
+# @DESCRIPTION:
+# List options that need to be added to QT_CONFIG in qconfig.pri
+: ${QCONFIG_ADD:=}
+
+# @ECLASS-VARIABLE: QCONFIG_REMOVE
+# @DESCRIPTION:
+# List options that need to be removed from QT_CONFIG in qconfig.pri
+: ${QCONFIG_REMOVE:=}
+
+# @ECLASS-VARIABLE: QCONFIG_DEFINE
+# @DESCRIPTION:
+# List variables that should be defined at the top of QtCore/qconfig.h
+: ${QCONFIG_DEFINE:=}
+
+# @FUNCTION: install_qconfigs
+# @INTERNAL
+# @DESCRIPTION:
+# Install gentoo-specific mkspecs configurations.
+install_qconfigs() {
+ local x
+ if [[ -n ${QCONFIG_ADD} || -n ${QCONFIG_REMOVE} ]]; then
+ for x in QCONFIG_ADD QCONFIG_REMOVE; do
+ [[ -n ${!x} ]] && echo ${x}=${!x} >> "${T}"/${PN}-qconfig.pri
+ done
+ insinto ${QTDATADIR#${EPREFIX}}/mkspecs/gentoo
+ doins "${T}"/${PN}-qconfig.pri || die "installing ${PN}-qconfig.pri failed"
+ fi
+
+ if [[ -n ${QCONFIG_DEFINE} ]]; then
+ for x in ${QCONFIG_DEFINE}; do
+ echo "#define ${x}" >> "${T}"/gentoo-${PN}-qconfig.h
+ done
+ insinto ${QTHEADERDIR#${EPREFIX}}/Gentoo
+ doins "${T}"/gentoo-${PN}-qconfig.h || die "installing ${PN}-qconfig.h failed"
+ fi
+}
+
+# @FUNCTION: generate_qconfigs
+# @INTERNAL
+# @DESCRIPTION:
+# Generates gentoo-specific qconfig.{h,pri}.
+generate_qconfigs() {
+ if [[ -n ${QCONFIG_ADD} || -n ${QCONFIG_REMOVE} || -n ${QCONFIG_DEFINE} || ${PN} == qt-core ]]; then
+ local x qconfig_add qconfig_remove qconfig_new
+ for x in "${ROOT}${QTDATADIR}"/mkspecs/gentoo/*-qconfig.pri; do
+ [[ -f ${x} ]] || continue
+ qconfig_add+=" $(sed -n 's/^QCONFIG_ADD=//p' "${x}")"
+ qconfig_remove+=" $(sed -n 's/^QCONFIG_REMOVE=//p' "${x}")"
+ done
+
+ # these error checks do not use die because dying in pkg_post{inst,rm}
+ # just makes things worse.
+ if [[ -e "${ROOT}${QTDATADIR}"/mkspecs/gentoo/qconfig.pri ]]; then
+ # start with the qconfig.pri that qt-core installed
+ if ! cp "${ROOT}${QTDATADIR}"/mkspecs/gentoo/qconfig.pri \
+ "${ROOT}${QTDATADIR}"/mkspecs/qconfig.pri; then
+ eerror "cp qconfig failed."
+ return 1
+ fi
+
+ # generate list of QT_CONFIG entries from the existing list
+ # including qconfig_add and excluding qconfig_remove
+ for x in $(sed -n 's/^QT_CONFIG +=//p' \
+ "${ROOT}${QTDATADIR}"/mkspecs/qconfig.pri) ${qconfig_add}; do
+ has ${x} ${qconfig_remove} || qconfig_new+=" ${x}"
+ done
+
+ # replace the existing QT_CONFIG list with qconfig_new
+ if ! sed -i -e "s/QT_CONFIG +=.*/QT_CONFIG += ${qconfig_new}/" \
+ "${ROOT}${QTDATADIR}"/mkspecs/qconfig.pri; then
+ eerror "Sed for QT_CONFIG failed"
+ return 1
+ fi
+
+ # create Gentoo/qconfig.h
+ if [[ ! -e ${ROOT}${QTHEADERDIR}/Gentoo ]]; then
+ if ! mkdir -p "${ROOT}${QTHEADERDIR}"/Gentoo; then
+ eerror "mkdir ${QTHEADERDIR}/Gentoo failed"
+ return 1
+ fi
+ fi
+ : > "${ROOT}${QTHEADERDIR}"/Gentoo/gentoo-qconfig.h
+ for x in "${ROOT}${QTHEADERDIR}"/Gentoo/gentoo-*-qconfig.h; do
+ [[ -f ${x} ]] || continue
+ cat "${x}" >> "${ROOT}${QTHEADERDIR}"/Gentoo/gentoo-qconfig.h
+ done
+ else
+ rm -f "${ROOT}${QTDATADIR}"/mkspecs/qconfig.pri
+ rm -f "${ROOT}${QTHEADERDIR}"/Gentoo/gentoo-qconfig.h
+ rmdir "${ROOT}${QTDATADIR}"/mkspecs \
+ "${ROOT}${QTDATADIR}" \
+ "${ROOT}${QTHEADERDIR}"/Gentoo \
+ "${ROOT}${QTHEADERDIR}" 2>/dev/null
+ fi
+ fi
+}
+
+# @FUNCTION: qt4-build_pkg_postrm
+# @DESCRIPTION:
+# Regenerate configuration when the package is completely removed.
+qt4-build_pkg_postrm() {
+ generate_qconfigs
+}
+
+# @FUNCTION: qt4-build_pkg_postinst
+# @DESCRIPTION:
+# Regenerate configuration, plus throw a message about possible
+# breakages and proposed solutions.
+qt4-build_pkg_postinst() {
+ generate_qconfigs
+}
+
+# @FUNCTION: skip_qmake_build
+# @INTERNAL
+# @DESCRIPTION:
+# Patches configure to skip qmake compilation, as it's already installed by qt-core.
+skip_qmake_build() {
+ sed -i -e "s:if true:if false:g" "${S}"/configure || die
+}
+
+# @FUNCTION: skip_project_generation
+# @INTERNAL
+# @DESCRIPTION:
+# Exit the script early by throwing in an exit before all of the .pro files are scanned.
+skip_project_generation() {
+ sed -i -e "s:echo \"Finding:exit 0\n\necho \"Finding:g" "${S}"/configure || die
+}
+
+# @FUNCTION: symlink_binaries_to_buildtree
+# @INTERNAL
+# @DESCRIPTION:
+# Symlinks generated binaries to buildtree, so they can be used during compilation time.
+symlink_binaries_to_buildtree() {
+ for bin in qmake moc uic rcc; do
+ ln -s "${QTBINDIR}"/${bin} "${S}"/bin/ || die "symlinking ${bin} to ${S}/bin failed"
+ done
+}
+
+# @FUNCTION: fix_library_files
+# @INTERNAL
+# @DESCRIPTION:
+# Fixes the paths in *.la, *.prl, *.pc, as they are wrong due to sandbox and
+# moves the *.pc files into the pkgconfig directory.
+fix_library_files() {
+ local libfile
+ for libfile in "${D}"/${QTLIBDIR}/{*.la,*.prl,pkgconfig/*.pc}; do
+ if [[ -e ${libfile} ]]; then
+ sed -i -e "s:${S}/lib:${QTLIBDIR}:g" ${libfile} || die "sed on ${libfile} failed"
+ fi
+ done
+
+ # pkgconfig files refer to WORKDIR/bin as the moc and uic locations
+ for libfile in "${D}"/${QTLIBDIR}/pkgconfig/*.pc; do
+ if [[ -e ${libfile} ]]; then
+ sed -i -e "s:${S}/bin:${QTBINDIR}:g" ${libfile} || die "sed on ${libfile} failed"
+
+ # Move .pc files into the pkgconfig directory
+ dodir ${QTPCDIR#${EPREFIX}}
+ mv ${libfile} "${D}"/${QTPCDIR}/ || die "moving ${libfile} to ${D}/${QTPCDIR}/ failed"
+ fi
+ done
+
+ # Don't install an empty directory
+ rmdir "${D}"/${QTLIBDIR}/pkgconfig
+}
+
+# @FUNCTION: qt_use
+# @USAGE: < flag > [ feature ] [ enableval ]
+# @DESCRIPTION:
+# This will echo "-${enableval}-${feature}" if <flag> is enabled, or
+# "-no-${feature}" if it's disabled. If [feature] is not specified, <flag>
+# will be used for that. If [enableval] is not specified, it omits the
+# "-${enableval}" part.
+qt_use() {
+ use "$1" && echo "${3:+-$3}-${2:-$1}" || echo "-no-${2:-$1}"
+}
+
+# @FUNCTION: qt_mkspecs_dir
+# @RETURN: the specs-directory w/o path
+# @DESCRIPTION:
+# Allows us to define which mkspecs dir we want to use.
+qt_mkspecs_dir() {
+ local spec=
+
+ case "${CHOST}" in
+ *-freebsd*|*-dragonfly*)
+ spec=freebsd ;;
+ *-openbsd*)
+ spec=openbsd ;;
+ *-netbsd*)
+ spec=netbsd ;;
+ *-darwin*)
+ if use aqua; then
+ # mac with carbon/cocoa
+ spec=macx
+ else
+ # darwin/mac with x11
+ spec=darwin
+ fi
+ ;;
+ *-solaris*)
+ spec=solaris ;;
+ *-linux-*|*-linux)
+ spec=linux ;;
+ *)
+ die "${FUNCNAME}(): Unknown CHOST '${CHOST}'" ;;
+ esac
+
+ case "$(tc-getCXX)" in
+ *g++*)
+ spec+=-g++ ;;
+ *icpc*)
+ spec+=-icc ;;
+ *)
+ die "${FUNCNAME}(): Unknown compiler '$(tc-getCXX)'" ;;
+ esac
+
+ # Add -64 for 64bit profiles
+ if use x64-freebsd ||
+ use amd64-linux ||
+ use x64-macos ||
+ use x64-solaris ||
+ use sparc64-solaris
+ then
+ spec+=-64
+ fi
+
+ echo "${spec}"
+}
+
+# @FUNCTION: qt_assistant_cleanup
+# @INTERNAL
+# @DESCRIPTION:
+# Tries to clean up tools.pro for qt-assistant ebuilds.
+# Meant to be called in src_prepare().
+# Since Qt 4.7.4 this function is a no-op.
+qt_assistant_cleanup() {
+ # apply patching to qt-assistant ebuilds only
+ [[ ${PN} != qt-assistant ]] && return
+
+ # no longer needed for 4.7.4 and later
+ version_is_at_least 4.7.4 && return
+
+ # different versions (and branches...) may need different handling,
+ # add a case if you need special handling
+ case "${MY_PV_EXTRA}" in
+ *kde-qt*)
+ sed -e "/^[ \t]*porting/,/^[ \t]*win32.*activeqt$/d" \
+ -e "/mac/,/^embedded.*makeqpf$/d" \
+ -i tools/tools.pro || die "patching tools.pro failed"
+ ;;
+ *)
+ sed -e "/^[ \t]*porting/,/^[ \t]*win32.*activeqt$/d" \
+ -e "/mac/,/^embedded.*makeqpf$/d" \
+ -e "s/^\([ \t]*pixeltool\) /\1 qdoc3 /" \
+ -i tools/tools.pro || die "patching tools.pro failed"
+ ;;
+ esac
+}
+
+# @FUNCTION: qt_nolibx11
+# @INTERNAL
+# @DESCRIPTION:
+# Ignore X11 tests for packages that don't need X libraries installed.
+qt_nolibx11() {
+ sed -i "/unixtests\/compile.test.*config.tests\/x11\/xlib/,/fi$/d" "${S}"/configure ||
+ die "x11 check sed failed"
+}
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_configure src_compile src_install src_test pkg_postrm pkg_postinst
next reply other threads:[~2012-03-30 15:21 UTC|newest]
Thread overview: 453+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-30 15:20 Davide Pesavento [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-10-23 21:03 [gentoo-commits] proj/qt:master commit in: eclass/ Ionen Wolkens
2024-10-23 21:03 Ionen Wolkens
2024-05-28 19:34 Andreas Sturmlechner
2024-01-10 9:40 Andreas Sturmlechner
2024-01-03 18:12 Andreas Sturmlechner
2024-01-03 11:31 Sam James
2024-01-03 10:45 Sam James
2023-12-12 12:51 Andreas Sturmlechner
2023-10-15 20:00 Andreas Sturmlechner
2023-07-08 21:26 Andreas Sturmlechner
2023-06-22 15:53 Andreas Sturmlechner
2023-06-22 15:53 Andreas Sturmlechner
2023-06-13 8:14 Andreas Sturmlechner
2023-06-11 17:39 Andreas Sturmlechner
2023-06-11 17:36 Andreas Sturmlechner
2023-06-11 17:17 Andreas Sturmlechner
2023-06-11 17:17 Andreas Sturmlechner
2023-04-13 19:48 Andreas Sturmlechner
2023-03-26 12:28 Andreas Sturmlechner
2023-03-26 12:28 Andreas Sturmlechner
2023-03-26 12:28 Andreas Sturmlechner
2023-03-26 12:28 Andreas Sturmlechner
2023-01-08 14:38 Andreas Sturmlechner
2022-12-16 22:27 Jimi Huotari
2022-11-29 19:19 Andreas Sturmlechner
2022-10-16 13:37 Jimi Huotari
2022-08-03 9:14 Andreas Sturmlechner
2022-07-23 11:24 Andreas Sturmlechner
2022-07-23 11:24 Andreas Sturmlechner
2022-06-20 18:42 Jimi Huotari
2022-06-18 11:15 Andreas Sturmlechner
2022-06-15 17:20 Andreas Sturmlechner
2022-06-15 17:20 Andreas Sturmlechner
2022-04-18 12:48 Andreas Sturmlechner
2022-03-25 19:46 Andreas Sturmlechner
2022-03-21 10:06 Andreas Sturmlechner
2022-03-21 10:06 Andreas Sturmlechner
2022-03-12 13:54 Andreas Sturmlechner
2022-03-04 9:51 Andreas Sturmlechner
2022-01-07 15:49 Andreas Sturmlechner
2021-12-24 23:08 Andreas Sturmlechner
2021-11-17 6:08 Jimi Huotari
2021-11-17 6:08 Jimi Huotari
2021-11-17 6:08 Jimi Huotari
2021-09-08 8:10 Andreas Sturmlechner
2021-09-08 8:10 Andreas Sturmlechner
2021-09-05 20:15 Andreas Sturmlechner
2021-08-26 13:55 Andreas Sturmlechner
2021-08-20 12:36 Andreas Sturmlechner
2021-07-14 13:24 Andreas Sturmlechner
2021-07-14 13:24 Andreas Sturmlechner
2021-07-09 2:17 Davide Pesavento
2021-07-09 2:17 Davide Pesavento
2021-04-25 20:53 Andreas Sturmlechner
2021-04-25 20:53 Andreas Sturmlechner
2021-04-25 20:53 Andreas Sturmlechner
2021-04-25 20:53 Andreas Sturmlechner
2021-04-14 6:54 Jimi Huotari
2021-02-05 22:05 Andreas Sturmlechner
2021-02-02 0:43 Andreas Sturmlechner
2021-02-02 0:41 Andreas Sturmlechner
2021-01-10 16:16 Andreas Sturmlechner
2021-01-07 19:02 Andreas Sturmlechner
2021-01-01 18:58 Andreas Sturmlechner
2020-12-28 9:49 Andreas Sturmlechner
2020-12-26 20:18 Andreas Sturmlechner
2020-12-26 20:18 Andreas Sturmlechner
2020-10-18 20:51 Andreas Sturmlechner
2020-06-02 22:44 Andreas Sturmlechner
2020-06-01 23:41 Andreas Sturmlechner
2020-05-09 8:32 Andreas Sturmlechner
2020-04-28 21:41 Andreas Sturmlechner
2020-04-09 19:45 Andreas Sturmlechner
2020-04-09 17:32 Andreas Sturmlechner
2020-03-02 8:26 Andreas Sturmlechner
2019-12-16 15:06 Andreas Sturmlechner
2019-12-01 10:53 Andreas Sturmlechner
2019-10-21 11:23 Andreas Sturmlechner
2019-10-20 16:46 Andreas Sturmlechner
2019-09-18 14:02 Jimi Huotari
2019-06-20 11:07 Andreas Sturmlechner
2019-06-08 19:36 Jimi Huotari
2019-06-06 21:16 Andreas Sturmlechner
2019-04-30 13:06 Michael Palimaka
2019-02-28 14:19 Andreas Sturmlechner
2019-02-05 20:38 Andreas Sturmlechner
2018-12-27 20:37 Jimi Huotari
2018-12-06 20:49 Andreas Sturmlechner
2018-12-06 20:49 Andreas Sturmlechner
2018-12-06 20:49 Andreas Sturmlechner
2018-12-06 19:46 Andreas Sturmlechner
2018-12-06 3:47 Andreas Sturmlechner
2018-08-15 11:22 Jimi Huotari
2018-07-21 20:20 Davide Pesavento
2018-07-21 20:20 Davide Pesavento
2018-07-21 18:20 Davide Pesavento
2018-03-17 1:04 Michael Palimaka
2018-03-10 2:01 Michael Palimaka
2018-03-10 1:55 Michael Palimaka
2018-03-07 12:53 Michael Palimaka
2018-03-07 12:47 Michael Palimaka
2018-03-06 21:28 Davide Pesavento
2018-03-06 21:18 Davide Pesavento
2018-03-06 21:18 Davide Pesavento
2018-02-22 22:19 Andreas Sturmlechner
2018-02-10 0:00 Davide Pesavento
2018-02-09 23:35 Michael Palimaka
2018-02-09 23:19 Michael Palimaka
2018-02-02 11:54 Michael Palimaka
2018-02-01 18:56 Davide Pesavento
2018-02-01 18:52 Davide Pesavento
2018-01-26 0:02 Michael Palimaka
2018-01-25 12:10 Michael Palimaka
2018-01-25 12:10 Michael Palimaka
2018-01-14 5:48 Michael Palimaka
2018-01-01 1:13 Michael Palimaka
2017-12-22 12:00 Michael Palimaka
2017-12-10 11:29 Michael Palimaka
2017-12-09 11:55 Jimi Huotari
2017-11-27 2:14 Davide Pesavento
2017-11-27 1:29 Davide Pesavento
2017-10-12 11:27 Michael Palimaka
2017-10-10 11:13 Michael Palimaka
2017-10-07 3:38 Michael Palimaka
2017-09-22 14:45 Michael Palimaka
2017-09-22 14:45 Michael Palimaka
2017-09-08 15:52 Michael Palimaka
2017-09-03 0:24 Davide Pesavento
2017-09-03 0:24 Davide Pesavento
2017-08-27 5:37 Michael Palimaka
2017-05-18 0:23 Davide Pesavento
2017-05-18 0:23 Davide Pesavento
2017-04-25 19:21 Davide Pesavento
2017-04-24 1:03 Davide Pesavento
2017-04-15 4:46 Davide Pesavento
2016-12-07 10:27 Michael Palimaka
2016-12-04 15:36 Davide Pesavento
2016-12-04 3:01 Davide Pesavento
2016-12-04 2:55 Davide Pesavento
2016-12-01 13:49 Michael Palimaka
2016-11-30 17:23 Michael Palimaka
2016-11-19 16:59 Michael Palimaka
2016-08-12 18:44 Michael Palimaka
2016-07-07 21:45 Davide Pesavento
2016-06-12 22:57 Davide Pesavento
2016-06-12 1:19 Davide Pesavento
2016-06-11 0:13 Davide Pesavento
2016-05-30 0:40 Davide Pesavento
2016-04-27 12:16 Davide Pesavento
2016-04-27 12:16 Davide Pesavento
2016-04-07 16:23 Davide Pesavento
2016-04-07 14:13 Davide Pesavento
2016-03-13 21:39 Davide Pesavento
2016-03-13 20:28 Davide Pesavento
2016-03-13 20:28 Davide Pesavento
2016-03-13 2:04 Davide Pesavento
2016-03-13 1:27 Davide Pesavento
2016-03-13 1:27 Davide Pesavento
2016-03-13 1:27 Davide Pesavento
2016-02-23 1:15 Davide Pesavento
2016-02-21 21:36 Davide Pesavento
2016-02-08 0:02 Davide Pesavento
2016-01-23 2:03 Davide Pesavento
2016-01-23 2:03 Davide Pesavento
2016-01-23 2:03 Davide Pesavento
2016-01-20 18:04 Davide Pesavento
2016-01-20 15:47 Davide Pesavento
2016-01-19 19:14 Davide Pesavento
2016-01-19 17:09 Davide Pesavento
2016-01-14 18:28 Michael Palimaka
2016-01-08 0:09 Davide Pesavento
2016-01-07 19:10 Michael Palimaka
2016-01-06 18:19 Michael Palimaka
2016-01-06 18:19 Michael Palimaka
2016-01-06 13:49 Michael Palimaka
2015-12-28 3:40 Davide Pesavento
2015-12-28 3:40 Davide Pesavento
2015-12-28 1:42 Davide Pesavento
2015-12-28 1:42 Davide Pesavento
2015-12-28 1:42 Davide Pesavento
2015-12-28 1:42 Davide Pesavento
2015-12-27 2:32 Davide Pesavento
2015-12-26 21:52 Davide Pesavento
2015-12-20 2:05 Davide Pesavento
2015-12-20 1:57 Davide Pesavento
2015-11-22 23:09 Davide Pesavento
2015-11-22 22:48 Davide Pesavento
2015-11-19 17:13 Davide Pesavento
2015-11-19 16:28 Davide Pesavento
2015-11-19 15:48 Michael Palimaka
2015-11-19 15:48 Michael Palimaka
2015-08-27 22:35 Davide Pesavento
2015-08-22 1:56 Davide Pesavento
2015-08-22 1:56 Davide Pesavento
2015-08-04 21:40 Davide Pesavento
2015-07-08 0:06 Davide Pesavento
2015-07-05 13:26 Davide Pesavento
2015-06-29 0:31 Davide Pesavento
2015-06-24 18:46 Davide Pesavento
2015-06-23 20:57 Davide Pesavento
2015-06-16 20:13 Davide Pesavento
2015-06-16 19:23 Davide Pesavento
2015-06-16 17:42 Davide Pesavento
2015-06-16 17:23 Davide Pesavento
2015-06-13 23:08 Davide Pesavento
2015-06-11 17:47 Davide Pesavento
2015-06-11 0:21 Davide Pesavento
2015-06-11 0:03 Davide Pesavento
2015-06-10 1:57 Davide Pesavento
2015-05-31 19:17 Davide Pesavento
2015-05-31 17:33 Michael Palimaka
2015-05-31 14:13 Davide Pesavento
2015-05-31 12:53 Davide Pesavento
2015-05-10 15:28 Davide Pesavento
2015-05-10 14:50 Davide Pesavento
2015-05-10 1:18 Davide Pesavento
2015-05-06 1:14 Davide Pesavento
2015-05-05 17:26 Davide Pesavento
2015-04-19 16:55 Michael Palimaka
2015-04-14 17:34 Davide Pesavento
2015-04-12 16:30 Davide Pesavento
2015-04-12 15:54 Davide Pesavento
2015-04-12 15:54 Davide Pesavento
2015-04-12 15:54 Davide Pesavento
2015-03-30 19:30 Davide Pesavento
2015-03-30 19:30 Davide Pesavento
2015-03-23 2:16 Davide Pesavento
2015-03-15 1:28 Davide Pesavento
2015-03-11 14:11 Michael Palimaka
2015-03-06 14:11 Michael Palimaka
2015-02-26 2:15 Davide Pesavento
2015-02-18 14:24 Davide Pesavento
2015-02-11 15:11 Ben de Groot
2015-01-18 1:59 Davide Pesavento
2015-01-18 1:59 Davide Pesavento
2014-12-12 17:46 Davide Pesavento
2014-11-20 2:51 Davide Pesavento
2014-11-17 2:18 Davide Pesavento
2014-11-17 1:34 Davide Pesavento
2014-11-14 2:30 Davide Pesavento
2014-11-10 3:02 Davide Pesavento
2014-11-01 23:46 Davide Pesavento
2014-11-01 23:35 Davide Pesavento
2014-10-26 1:22 Davide Pesavento
2014-10-26 1:22 Davide Pesavento
2014-10-26 1:22 Davide Pesavento
2014-10-20 23:50 Davide Pesavento
2014-10-13 19:35 Davide Pesavento
2014-10-09 17:00 Davide Pesavento
2014-10-07 16:26 Davide Pesavento
2014-09-22 0:09 Davide Pesavento
2014-09-16 14:15 Davide Pesavento
2014-09-11 0:06 Davide Pesavento
2014-08-29 23:01 Davide Pesavento
2014-08-27 2:06 Davide Pesavento
2014-08-27 0:40 Davide Pesavento
2014-08-27 0:10 Davide Pesavento
2014-08-25 1:38 Davide Pesavento
2014-08-19 1:07 Davide Pesavento
2014-08-15 1:53 ` Davide Pesavento
2014-08-19 1:07 Davide Pesavento
2014-08-15 1:53 ` Davide Pesavento
2014-08-15 1:53 Davide Pesavento
2014-08-19 1:07 ` Davide Pesavento
2014-08-15 1:53 Davide Pesavento
2014-08-19 1:07 ` Davide Pesavento
2014-08-05 0:08 Davide Pesavento
2014-07-30 19:35 Davide Pesavento
2014-07-29 23:40 Davide Pesavento
2014-07-28 21:53 Davide Pesavento
2014-07-28 21:22 Davide Pesavento
2014-07-28 20:26 Davide Pesavento
2014-07-27 19:54 Michael Palimaka
2014-07-27 13:36 Davide Pesavento
2014-07-26 12:43 Davide Pesavento
2014-07-26 10:46 Davide Pesavento
2014-07-24 1:05 Davide Pesavento
2014-07-24 1:05 Davide Pesavento
2014-07-24 1:05 Davide Pesavento
2014-07-16 17:43 Michael Palimaka
2014-07-13 23:36 Davide Pesavento
2014-07-11 14:06 Davide Pesavento
2014-07-11 13:46 Davide Pesavento
2014-07-08 16:34 Davide Pesavento
2014-07-08 10:46 Michael Palimaka
2014-07-07 21:02 Davide Pesavento
2014-06-29 0:51 Davide Pesavento
2014-06-28 23:56 Davide Pesavento
2014-06-22 18:28 Davide Pesavento
2014-06-09 20:39 Davide Pesavento
2014-06-05 10:28 Davide Pesavento
2014-06-05 9:45 Davide Pesavento
2014-06-04 2:08 Davide Pesavento
2014-06-04 2:08 Davide Pesavento
2014-06-04 2:08 Davide Pesavento
2014-06-04 0:13 Davide Pesavento
2014-06-04 0:13 Davide Pesavento
2014-06-04 0:13 Davide Pesavento
2014-06-03 14:04 Davide Pesavento
2014-06-01 2:41 Davide Pesavento
2014-06-01 2:41 Davide Pesavento
2014-06-01 2:41 Davide Pesavento
2014-05-29 21:44 Davide Pesavento
2014-05-29 17:40 Davide Pesavento
2014-05-27 10:56 Davide Pesavento
2014-05-27 10:48 Davide Pesavento
2014-05-27 10:48 Davide Pesavento
2014-05-27 10:48 Davide Pesavento
2014-05-22 1:07 Davide Pesavento
2014-05-19 18:02 Davide Pesavento
2014-05-19 18:02 Davide Pesavento
2014-05-09 19:19 Michael Palimaka
2014-05-09 19:14 Michael Palimaka
2014-03-27 13:43 Michael Palimaka
2014-03-26 14:31 Davide Pesavento
2014-01-22 17:45 Davide Pesavento
2013-11-11 19:43 Davide Pesavento
2013-11-11 19:32 Davide Pesavento
2013-10-23 17:15 Davide Pesavento
2013-10-23 0:34 Davide Pesavento
2013-10-22 22:34 Davide Pesavento
2013-10-20 21:22 Davide Pesavento
2013-10-14 17:33 Davide Pesavento
2013-10-07 23:31 Davide Pesavento
2013-07-28 0:01 Davide Pesavento
2013-07-06 8:01 Davide Pesavento
2013-06-10 8:22 Davide Pesavento
2013-06-10 2:08 Davide Pesavento
2013-06-10 2:03 Davide Pesavento
2013-06-10 2:03 Davide Pesavento
2013-06-10 1:48 Davide Pesavento
2013-06-10 1:48 Davide Pesavento
2013-05-31 9:02 Davide Pesavento
2013-04-07 13:20 Davide Pesavento
2013-03-16 8:32 Davide Pesavento
2013-03-05 19:11 Davide Pesavento
2013-01-03 8:42 Davide Pesavento
2013-01-02 0:02 Davide Pesavento
2013-01-02 0:02 Davide Pesavento
2012-12-31 6:27 Davide Pesavento
2012-12-22 3:34 Davide Pesavento
2012-12-22 3:34 Davide Pesavento
2012-12-22 3:34 Davide Pesavento
2012-12-20 3:16 Davide Pesavento
2012-12-09 16:40 Davide Pesavento
2012-12-09 16:40 Davide Pesavento
2012-12-08 17:52 Davide Pesavento
2012-12-08 12:45 Davide Pesavento
2012-12-07 16:28 Davide Pesavento
2012-12-07 11:55 Davide Pesavento
2012-12-07 11:15 Davide Pesavento
2012-12-07 11:06 Davide Pesavento
2012-11-22 11:00 Davide Pesavento
2012-11-19 10:38 Davide Pesavento
2012-11-19 4:12 Davide Pesavento
2012-11-19 3:51 Davide Pesavento
2012-11-19 3:51 Davide Pesavento
2012-11-17 22:52 Davide Pesavento
2012-11-12 9:20 Davide Pesavento
2012-11-12 9:20 Davide Pesavento
2012-11-12 9:20 Davide Pesavento
2012-11-12 4:35 Davide Pesavento
2012-11-12 4:07 Davide Pesavento
2012-11-12 4:07 Davide Pesavento
2012-11-12 4:07 Davide Pesavento
2012-11-09 9:37 Davide Pesavento
2012-11-09 9:24 Davide Pesavento
2012-11-09 9:24 Davide Pesavento
2012-11-07 3:12 Davide Pesavento
2012-11-01 8:26 Davide Pesavento
2012-10-20 0:26 Davide Pesavento
2012-10-20 0:26 Davide Pesavento
2012-10-19 15:31 Davide Pesavento
2012-10-06 2:04 Davide Pesavento
2012-10-04 3:57 Davide Pesavento
2012-10-04 1:22 Davide Pesavento
2012-10-04 1:12 Davide Pesavento
2012-10-04 1:12 Davide Pesavento
2012-09-27 22:39 Davide Pesavento
2012-09-27 22:23 Davide Pesavento
2012-09-05 2:21 Davide Pesavento
2012-08-31 7:06 Davide Pesavento
2012-08-31 7:06 Davide Pesavento
2012-08-28 7:37 Davide Pesavento
2012-08-13 4:48 Davide Pesavento
2012-08-09 8:04 Davide Pesavento
2012-08-06 3:04 Davide Pesavento
2012-08-06 3:04 Davide Pesavento
2012-08-06 0:57 Davide Pesavento
2012-07-25 14:46 Michael Palimaka
2012-07-23 18:10 Davide Pesavento
2012-07-23 13:24 Ben de Groot
2012-07-23 12:31 Ben de Groot
2012-07-20 18:27 Davide Pesavento
2012-07-19 15:27 Ben de Groot
2012-07-19 6:07 Ben de Groot
2012-07-15 11:59 Ben de Groot
2012-07-14 16:45 Ben de Groot
2012-07-14 12:34 Ben de Groot
2012-07-12 21:09 Davide Pesavento
2012-07-11 0:07 Davide Pesavento
2012-07-10 21:46 Davide Pesavento
2012-07-10 20:44 Davide Pesavento
2012-07-10 20:44 Davide Pesavento
2012-07-10 20:44 Davide Pesavento
2012-07-10 20:44 Davide Pesavento
2012-07-05 15:23 Davide Pesavento
2012-07-05 14:19 Davide Pesavento
2012-07-03 23:03 Davide Pesavento
2012-07-01 23:39 Davide Pesavento
2012-06-30 0:41 Davide Pesavento
2012-06-29 23:09 Davide Pesavento
2012-06-29 15:16 Davide Pesavento
2012-06-29 12:48 Davide Pesavento
2012-06-29 12:19 Davide Pesavento
2012-06-29 0:17 Davide Pesavento
2012-06-28 19:01 Davide Pesavento
2012-06-26 23:31 Davide Pesavento
2012-06-24 21:05 Davide Pesavento
2012-06-24 21:05 Davide Pesavento
2012-06-18 21:52 Davide Pesavento
2012-06-17 21:23 Davide Pesavento
2012-06-17 21:23 Davide Pesavento
2012-06-17 21:23 Davide Pesavento
2012-06-11 23:59 Davide Pesavento
2012-06-11 23:12 Davide Pesavento
2012-06-11 22:37 Davide Pesavento
2012-06-10 17:56 Davide Pesavento
2012-06-08 19:14 Davide Pesavento
2012-06-08 0:14 Davide Pesavento
2012-06-08 0:07 Davide Pesavento
2012-06-07 15:39 Davide Pesavento
2012-06-07 14:12 Davide Pesavento
2012-06-06 17:53 Davide Pesavento
2012-05-25 12:09 Davide Pesavento
2012-05-22 15:13 Davide Pesavento
2012-05-22 13:00 Johannes Huber
2012-05-21 23:42 Davide Pesavento
2012-05-20 17:14 Davide Pesavento
2012-05-07 21:30 Davide Pesavento
2012-05-03 7:24 Johannes Huber
2012-04-26 13:06 Davide Pesavento
2012-04-19 14:55 Davide Pesavento
2012-04-05 13:37 Davide Pesavento
2012-04-05 12:51 Davide Pesavento
2012-04-04 18:24 Michael Palimaka
2012-04-04 18:24 Michael Palimaka
2012-04-04 17:54 Michael Palimaka
2012-04-01 18:03 Michael Palimaka
2012-03-31 12:21 Davide Pesavento
2012-03-25 17:13 Davide Pesavento
2012-01-31 23:10 Markos Chandras
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1333120655.ad0d41c7708c73f94d49c58c873baa79d062450e.pesa@gentoo \
--to=pesa@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox