Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 25139 - Ebuild for Qt 3.2 final (qt-3.2)
Summary: Ebuild for Qt 3.2 final (qt-3.2)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High enhancement
Assignee: Gentoo KDE team
URL: http://www.trolltech.com/
Whiteboard:
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2003-07-23 14:55 UTC by Simon Ask Ulsnes
Modified: 2003-07-30 19:56 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
The ebuild for qt-3.2 (qt-3.2.ebuild,4.39 KB, text/plain)
2003-07-23 14:56 UTC, Simon Ask Ulsnes
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Ask Ulsnes 2003-07-23 14:55:43 UTC
Hello, here is an ebuild for the final version of Qt 3.2... sorry if it's a dupe, but I haven't 
seen others... 
 
# Copyright 1999-2003 Gentoo Technologies, Inc. 
# Distributed under the terms of the GNU General Public License v2 
# $Header: /home/cvsroot/gentoo-x86/x11-libs/qt/qt-3.2.0_beta2.ebuild,v 1.1 
2003/06/23 21:54:16 caleb Exp $ 
 
inherit eutils 
 
IUSE="cups nas postgres opengl mysql odbc gif" 
 
MY_P="qt-x11-free-3.2.0" 
S=${WORKDIR}/${MY_P} 
 
DESCRIPTION="QT version ${PV}" 
SLOT="3" 
LICENSE="QPL-1.0 | GPL-2" 
 
KEYWORDS="~x86" 
 
SRC_URI="ftp://ftp.trolltech.com/qt/source/${MY_P}.tar.bz2" 
 
HOMEPAGE="http://www.trolltech.com/" 
 
DEPEND="virtual/x11 
	media-libs/libpng 
	media-libs/lcms 
	media-libs/jpeg 
	>=media-libs/libmng-1.0.0 
	>=media-libs/freetype-2 
	virtual/xft 
	nas? ( >=media-libs/nas-1.4.1 ) 
	odbc? ( >=dev-db/unixODBC-2.0 ) 
	mysql? ( >=dev-db/mysql-3.2.10 ) 
	opengl? ( virtual/opengl virtual/glu ) 
	postgres? ( >=dev-db/postgresql-7.2 )" 
 
RDEPEND="$DEPEND" 
	#doc? ( ~app-doc/qt-docs- )" 
	 
QTBASE=/usr/qt/3 
export QTDIR=${S} 
 
src_unpack() { 
 
	export QTDIR=${S} 
 
	unpack ${A} 
 
	cd ${S} 
	 
	cp configure configure.orig 
	sed -e 's:read acceptance:acceptance=yes:' configure.orig > configure 
	 
	cd mkspecs/linux-g++ 
	# use env's $CC, $CXX 
	if [ -n "$CXX" ]; then 
	    einfo 'Using environment definition of $CXX' 
	    cp qmake.conf qmake.conf.orig 
	    sed -e "s:= g++:= ${CXX}:" qmake.conf.orig > qmake.conf 
	fi 
	if [ -n "$CC" ]; then 
	    einfo 'Using environment definition of $CC' 
	    cp qmake.conf qmake.conf.orig 
	    sed -e "s:= gcc:= ${CC}:" qmake.conf.orig > qmake.conf 
	fi 
	 
	# hppa and alpha people, please review the following 
	 
	# hppa need some additional flags 
	if [ "${ARCH}" = "hppa" ]; then 
		echo "QMAKE_CFLAGS += -fPIC -ffunction-sections" >> qmake.conf 
		echo "QMAKE_CXXFLAGS += -fPIC -ffunction-sections" >> qmake.conf 
		echo "QMAKE_LFLAGS += -ffunction-sections -Wl,--stub-group-size=25000" 
>> qmake.conf 
	fi 
	 
	# on alpha we need to compile everything with -fPIC 
	if [ ${ARCH} == "alpha" ]; then 
	    cp qmake.conf qmake.conf.orig 
	    sed -e "s:= -O2:= -O2 -fPIC:" qmake.conf.orig > qmake.conf 
	    cat >> ${S}/tools/designer/editor/editor.pro <<_EOF_ 
QMAKE_CFLAGS += -fPIC 
QMAKE_CXXFLAGS += -fPIC 
_EOF_ 
	fi 
 
 
} 
 
src_compile() { 
     
	# fix #11144; qt wants to create lock files etc. in that directory 
	[ -d "$QTBASE/etc/settings" ] && addwrite "$QTBASE/etc/settings" 
 
	export QTDIR=${S} 
	 
	export LDFLAGS="-ldl" 
 
	use cups || myconf="${myconf} -no-cups" 
	use nas		&& myconf="${myconf} -system-nas-sound" 
	use gif		&& myconf="${myconf} -qt-gif" 
	use mysql	&& myconf="${myconf} -plugin-sql-mysql -I/usr/include/mysql 
-L/usr/lib/mysql" 
	use postgres	&& myconf="${myconf} -plugin-sql-psql 
-I/usr/include/postgresql/server" 
	use odbc	&& myconf="${myconf} -plugin-sql-odbc" 
	use opengl	&& myconf="${myconf} -enable-module=opengl" || 
myconf="${myconf} -disable-opengl" 
	[ -n "$DEBUG" ]	&& myconf="${myconf} -debug" 		|| 
myconf="${myconf} -release -no-g++-exceptions" 
	 
	# avoid wasting time building things we won't install 
	rm -rf tutorial examples 
 
	export YACC='byacc -d' 
	 
	./configure -sm -thread -stl -system-zlib -system-libjpeg -verbose \ 
		-qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \ 
		-system-libpng -ldl -lpthread -xft -platform linux-g++ -xplatform \ 
		linux-g++ -xrender -prefix ${QTBASE} -fast ${myconf} || die 
 
	export QTDIR=${S} 
 
	emake src-qmake src-moc sub-src sub-tools || die 
 
} 
 
src_install() { 
 
	export QTDIR=${S} 
 
	cd ${S} 
 
	# binaries 
	into $QTBASE 
	dobin bin/* 
 
	# libraries 
	dolib lib/libqt-mt.so.3.2.0 lib/libqui.so.1.0.0 
lib/lib{editor,qassistantclient,designer}.a 
	cd ${D}$QTBASE/lib 
	for x in libqui.so 
	do 
	    ln -s $x.1.0.0 $x.1.0 
	    ln -s $x.1.0 $x.1 
	    ln -s $x.1 $x 
	done 
	 
	# version symlinks - 3.2.0->3.2->3->.so 
	ln -s libqt-mt.so.3.2.0 libqt-mt.so.3.2 
	ln -s libqt-mt.so.3.2 libqt-mt.so.3 
	ln -s libqt-mt.so.3 libqt-mt.so 
 
	# libqt -> libqt-mt symlinks 
	ln -s libqt-mt.so.3.2.0 	libqt.so.3.2.0 
	ln -s libqt-mt.so.3.2		libqt.so.3.2 
	ln -s libqt-mt.so.3		libqt.so.3 
	ln -s libqt-mt.so		libqt.so 
 
	# includes 
	cd ${S} 
	dodir ${QTBASE}/include/private 
	cp include/* ${D}/${QTBASE}/include/ 
	cp include/private/* ${D}/${QTBASE}/include/private/ 
 
	# misc 
	insinto /etc/env.d 
	doins ${FILESDIR}/{45qt3,50qtdir3} 
 
	# misc build reqs 
	dodir ${QTBASE}/mkspecs 
	cp -R ${S}/mkspecs/linux-g++ ${D}/${QTBASE}/mkspecs/ 
 
	sed -e "s:${S}:${QTBASE}:g" \ 
	    ${S}/.qmake.cache > ${D}${QTBASE}/.qmake.cache 
 
	# plugins 
	cd ${S} 
	plugins=`find plugins -name "lib*.so" -print` 
	for x in $plugins; do 
		insinto ${QTBASE}/`dirname $x` 
	doins $x 
	done 
 
}
Comment 1 Simon Ask Ulsnes 2003-07-23 14:56:50 UTC
Created attachment 14939 [details]
The ebuild for qt-3.2

The ebuild...
Comment 2 Carlos Vendramini 2003-07-23 18:07:40 UTC
I tried to emerge QT 3.2 and received the errors below:

------------------------------------------------------------------------
make[3]: *** [listboxeditor.cpp] Error 127
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/var/tmp/portage/qt-3.2/work/qt-x11-free-3.2.0/tools/designer/designer'
make[2]: *** [sub-designer] Error 2
make[2]: Leaving directory `/var/tmp/portage/qt-3.2/work/qt-x11-free-3.2.0/tools/designer'
make[1]: *** [sub-designer] Error 2
make[1]: Leaving directory `/var/tmp/portage/qt-3.2/work/qt-x11-free-3.2.0/tools'
make: *** [sub-tools] Error 2

!!! ERROR: x11-libs/qt-3.2 failed.
!!! Function src_compile, Line 117, Exitcode 2
!!! (no error message)
------------------------------------------------------------------------
Comment 3 Caleb Tennis (RETIRED) gentoo-dev 2003-07-23 19:09:39 UTC
You can circumvent this in the interim by removing te old qt first (manually or enemerging)

What I think is happening is that the designer that gets compiled with the 3.2 ebuild find the qt 3.1.2 libraries when it is being used during the qt 3.2 build and that calls segfaults.  I intend to look into this.

ALso, please note that kde >=3.1.2 is thus far NOT COMPATIBLE with qt 3.2 and will not compile if you have qt 3.2 installed.
Comment 4 Caleb Tennis (RETIRED) gentoo-dev 2003-07-30 19:56:13 UTC
3.2 is now in portage.