freebsd-ports/x11-toolkits/qt31/Makefile
Will Andrews 1d206a3483 Upgrade KDE to 2.2.2:
* General:
 	- Support for objprelink.
 	- Hack for autoconf 2.13/automake 1.4.  Note that we can't use
	  the standard USE_AUTO* because they change things in work/*;
	  KDE has its own way of doing that.
 	- Light cleanup of extra dirs in the PLISTs provided by
	   my mkplistpkg[1] script.
 	- Speedups of both compile and runtime through the usage of
	  --disable-debug and --enable-final.  The latter did not work
	  with the kdemultimedia package, unfortunately.
	- Patch updates.
 * audio/kdemultimedia2:
	- Patch to fix KSCD on FreeBSD[2].  It works very well now.
 * deskutils/kdepim:
 	- Enable kpilot[3].  Pull in the latest pilot-link stuff.
 * devel/kdesdk,
 * devel/kdevelop:
 	- No specific changes.
 * devel/qt-designer:
 	- Make this port depend almost entirely on qt23 to make it more
	  maintainable, so I don't have to keep hacking the patches to
	  get them to apply.
 * editors/koffice,
 * games/kdegames,
 * graphics/kdegraphics:
 	- No specific changes.
 * misc/kdeaddons:
	- SDL is required now.  Cull SDL PLIST_SUB and such.
	- Fix breakage from hardcoding "sdl-config".
 * misc/kdeutils2:
	- Fix problem with klaptopdaemon[4] where it didn't properly
	  display the battery time.  This patch is untested, but applied.
 * net/kdenetwork2:
	- Fix DCC for KSIRC[5].
	- Remove ktalkd from the build.  It requires some weird thing
	  in the configure script that I don't have time to look at.
 * sysutils/kdeadmin:
	- No specific changes.
 * textproc/kdoc:
	- Remove bogus requirement that kdoc requires Perl 5.6.0; it sure
	  seems to operate fine with >= 5.005.  But I'll let time tell.
 * www/quanta:
	- No specific changes (--disable-debug support only).
 * x11/kde2:
	- No specific changes.
 * x11/kdebase2:
	- Fix ksysguard compile by merging the files from the HEAD branch
	  of KDE CVS that were missing at release time for FreeBSD[6].  :\
 * x11/kdelibs2:
	- Recognize CUPS' spinoff[7].
	- Add libxslt dependency since it was removed from kdelibs.
	- Fix libxml compile problems[8] (accomplished by upgrading).
	- Remove libkformula from port Makefile; this library has been
	  spun off into koffice.
	- Fix mode problems with DCOP[9].  This allows you to save files
	  properly.  It also seems to be a FreeBSD specific problem.
	- Fix bashisms in kdeprint/imagetops script[10].
 * x11-clocks/kdetoys2:
 	- No specific changes.
 * x11-toolkits/qt23:
	- Do NOT upgrade to QT 2.3.2[11].
	- Allow devel/qt-designer to depend on this port entirely for the
	  patches by adding a perlre to accomplish this.
 * x11-wm/kdeartwork:
	- No specific changes.

Thanks to the FreeBSD/KDE[1] team[12] who helped me test these out!

[1]  http://freebsd.kde.org/;
     http://www.databits.net/cgi-bin/cvsweb.cgi/scripts/portbuild/mkplistpkg
[2]  Submitted by:	Matthew Holmes <matt@speakeasy.net>
[3]  PR:		31914
     Submitted by:	Alan Eldridge <alane@geeksrus.net>
[4]  PR:		28475
     Submitted by:	Arun Sharma <arun@sharmas.dhs.org>
[5]  Submitted by:	Luc Morin <luc_m@videotron.ca>
[6]  Found at:	http://webcvs.kde.org/kdebase/ksysguard/ksysguardd/FreeBSD/
[7]  PR:		32321
     Reported by:	gad
     Submitted by:	James A. Halstead <jah4007@cs.rit.edu>
[8]  PR:		32055
     Reported by:	William Richard <wrichard@trivalley.com>, others
[9]  PR:		31629
     Submitted by:	Alan Eldridge <alane@geeksrus.net>
[10] PR:		32358
     Submitted by:	Alexander N. Kabaev <ak03@gte.com>
[11] PR:		31809
     Requested by:	Nathan Ahlstrom <nrahlstr@winternet.com> (denied)
[12] http://freebsd.kde.org/contact.shtml;
     http://lists.csociety.org/pipermail/kde-freebsd;
     http://lists.csociety.org/listinfo/kde-freebsd
2001-12-04 03:47:18 +00:00

156 lines
5.1 KiB
Makefile

# New ports collection makefile for: qt22
# Date created: 17 Jul 1999
# Whom: imura@kml.cs.titech.ac.jp
#
# $FreeBSD$
#
PORTNAME?= qt
PORTVERSION?= 2.3.1
PORTREVISION= 1
CATEGORIES?= x11-toolkits
MASTER_SITES= ftp://ftp.trolltech.com/qt/source/ \
ftp://ftp.chg.ru/pub/X11/qt/source/
DISTNAME= qt-x11-${PORTVERSION}
DIST_SUBDIR= KDE
MAINTAINER?= kde@FreeBSD.org
LIB_DEPENDS= mng.1:${PORTSDIR}/graphics/libmng \
png.5:${PORTSDIR}/graphics/png \
jpeg.9:${PORTSDIR}/graphics/jpeg
BUILD_DEPENDS= objprelink:${PORTSDIR}/devel/objprelink
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
USE_MESA= yes
USE_GMAKE= yes
USE_X_PREFIX= yes
USE_NEWGCC= yes
HAS_CONFIGURE= yes
CONFIGURE_ARGS= -system-zlib -system-libpng -system-jpeg -sm -gif \
-system-libmng -thread -no-opengl -no-g++-exceptions \
-I${LOCALBASE}/include -L${LOCALBASE}/lib
.if defined(QT_DEBUG)
CONFIGURE_ARGS+= -debug
.endif
CONFIGURE_ENV= ${ECHO} yes | QTDIR=${WRKSRC}
.if defined(MAKE_JOBS)
MAKE_ARGS+= MAKE="${GMAKE} -j${MAKE_JOBS}"
.endif
MAKE_ENV?= QTDIR=${WRKSRC} LD_LIBRARY_PATH=${WRKSRC}/lib
CONFIG= ${WRKSRC}/configs/freebsd-g++-${STATIC}
.if !defined(NOPORTDOCS)
.if (${PORTNAME} == "qt")
.include "files/manpages"
.endif
.endif
.if defined(WANT_STATIC)
STATIC=static
CONFIGURE_ARGS+=-static
PLIST_SUB+= SHARED="@comment " STATIC=""
.else
STATIC=shared
INSTALLS_SHLIB=yes
PLIST_SUB+= SHARED="" STATIC="@comment "
.endif
.include <bsd.port.pre.mk>
.if ${MACHINE_ARCH} == "alpha"
CFLAGS+= -O0
.endif
pre-fetch:
.if exists(${X11BASE}/lib/libqt2.so.3)
.if !defined(WANT_STATIC)
@${ECHO} "An older version of QT2 is installed. To avoid clobbering"
@${ECHO} "that installation, deinstall it and then install this port."
@${ECHO} "Note that this port contains beta-quality source code and"
@${ECHO} "must be used only wherever absolutely needed, such as for"
@${ECHO} "KDE 2.0 and later."
@${FALSE}
.endif
.endif
qt-pre-configure:
@true
pre-configure: qt-pre-configure
${PERL} -pi -e "s,gcc,${CC},g; s,g\+\+,${CXX},g; \
s,/usr/X11R6,${X11BASE},g; \
s,-fno-exceptions,-fno-exceptions ${CXXFLAGS} -I/usr/include -D_PTH_H_ -D_PTH_PTHREAD_H_ -frerun-cse-after-loop,g" ${CONFIG}
${PERL} -pi -e "s,VER_MAJ = 2,VER_MAJ = 4,g; \
s,TARGET = qt,TARGET = qt2,g" ${WRKSRC}/src/Makefile.in
${PERL} -pi -e "s@TARGET\t= moc@TARGET = moc2@g" ${WRKSRC}/src/moc/Makefile.in
${PERL} -pi -e "s,rm -f bin/moc,rm -f bin/moc2,g; \
s,cp src/moc/moc bin/moc,cp src/moc/moc2 bin/moc2,g; \
s,symlinks src-moc src-mt sub-src sub-tools sub-tutorial sub-examples,symlinks src-moc src-mt sub-src sub-tools,g" \
${WRKSRC}/Makefile
.if (${PORTNAME} == "qt")
${PERL} -pi -e "s@\$$(MAKE) designer@@g; s@uic \\\@uic@g; \
s@\t\tdesigner@@g" ${WRKSRC}/tools/designer/Makefile.in
.endif
post-configure:
@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${GMAKE} symlinks)
# Add hack to bring in support for GL. The last line is necessary to ensure that
# one can rebuild with the same tree and get the same results.
do-build:
(cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET})
.if !defined(WANT_STATIC)
(cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} opengl/qgl.o opengl/qgl_x11.o opengl/moc_qgl.o)
${MV} ${WRKSRC}/lib/libqt2.so.4 ${WRKSRC}/lib/libqt2-real.so.4
${PERL} -pi.orig -e "s@ xml/qdom.o@xml/qdom.o opengl/qgl.o opengl/qgl_x11.o opengl/moc_qgl.o@g; \
s@SYSCONF_LIBS_OPENGL =@SYSCONF_LIBS_OPENGL= ${PTHREAD_LIBS} -lGL -lGLU -lXmu@g" ${WRKSRC}/src/Makefile
(cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} all)
${CP} ${WRKSRC}/lib/libqt2.so.4 ${WRKSRC}/lib/libqtgl.so.4
${CP} ${WRKSRC}/lib/libqt2-real.so.4 ${WRKSRC}/lib/libqt2.so.4
${CP} ${WRKSRC}/src/Makefile.orig ${WRKSRC}/src/Makefile
.endif
# XXX: This target looks like crap now.
do-install:
.if (${PORTNAME} == "qt")
${MKDIR} ${PREFIX}/include/qt2
.for BIN in moc2 uic
${INSTALL_PROGRAM} ${WRKSRC}/bin/${BIN} ${PREFIX}/bin
.endfor
.for SCRIPT in findtr qt20fix qtrename140
${INSTALL_SCRIPT} ${WRKSRC}/bin/${SCRIPT} ${PREFIX}/bin
.endfor
${INSTALL_DATA} ${WRKSRC}/include/*.h ${PREFIX}/include/qt2
.if !defined(WANT_STATIC)
.for LIB in qt2 qt2-mt qtgl
${INSTALL_PROGRAM} ${WRKSRC}/lib/lib${LIB}.so.4 ${PREFIX}/lib
${LN} -sf ${PREFIX}/lib/lib${LIB}.so.4 ${PREFIX}/lib/lib${LIB}.so
.endfor
${INSTALL_PROGRAM} ${WRKSRC}/lib/libqutil.so.1 ${PREFIX}/lib
${LN} -sf ${PREFIX}/lib/libqutil.so.1 ${PREFIX}/lib/libqutil.so
.else
.for LIB in qt2 qutil
${INSTALL_DATA} ${WRKSRC}/lib/lib${LIB}.a ${PREFIX}/lib
.endfor
.endif
.if !defined(NOPORTDOCS)
${MKDIR} ${PREFIX}/share/doc/qt2/html
.for FILE in ANNOUNCE FAQ PORTING README README.QT
${INSTALL_DATA} ${WRKSRC}/${FILE} ${PREFIX}/share/doc/qt2
.endfor
.for SUFFIX in g1n html png
(for FILE in ${WRKSRC}/doc/html/*.${SUFFIX}; do \
${INSTALL_DATA} $$FILE ${PREFIX}/share/doc/qt2/html; done)
.endfor
.for FILE in index titleindex propertyindex whatsthis
${INSTALL_DATA} ${WRKSRC}/doc/html/${FILE} ${PREFIX}/share/doc/qt2/html
.endfor
${INSTALL_MAN} ${WRKSRC}/doc/man/man3/q* ${PREFIX}/man/man3
.endif
.endif
.include <bsd.port.post.mk>