public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
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



             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