summaryrefslogtreecommitdiff
path: root/devel/qmake
diff options
context:
space:
mode:
authorMikhail Teterin <mi@FreeBSD.org>2003-09-05 19:21:30 +0000
committerMikhail Teterin <mi@FreeBSD.org>2003-09-05 19:21:30 +0000
commitb1ab77137ae2195c99daac676e346c988cdcd866 (patch)
treef1f5173de0624badd3fbf2a8ae55065851abbcbc /devel/qmake
parent- Update to version 0.24.5 (diff)
This is first step in an attempt to break the Qt port into pieces.
This port installs qmake, which is only needed to build Qt -- not to use it. It should also help futute work on the Qt port, by not requiring the developer to recompile qmake as frequently as at present. This port uses Qt-3.2.1, which is not committed yet. Discussed with: kde@
Notes
Notes: svn path=/head/; revision=88602
Diffstat (limited to 'devel/qmake')
-rw-r--r--devel/qmake/Makefile65
-rw-r--r--devel/qmake/distinfo1
-rw-r--r--devel/qmake/files/Makefile.bsd43
-rw-r--r--devel/qmake/files/qconfig.cpp15
-rw-r--r--devel/qmake/pkg-descr8
-rw-r--r--devel/qmake/pkg-plist180
6 files changed, 312 insertions, 0 deletions
diff --git a/devel/qmake/Makefile b/devel/qmake/Makefile
new file mode 100644
index 000000000000..c5830926c5a0
--- /dev/null
+++ b/devel/qmake/Makefile
@@ -0,0 +1,65 @@
+# New ports collection makefile for: qmake
+# Date created: 2 September 2003
+# Whom: mi@aldan.algebra.com
+#
+# $FreeBSD$
+#
+
+PORTNAME= qmake
+PORTVERSION= 3.2.1
+CATEGORIES= devel
+MASTER_SITES= ftp://ftp.trolltech.com/qt/source/ \
+ ftp://ftp.silug.org/pub/qt/ \
+ ftp://ftp.bero.org/pub/qt/ \
+ ftp://ftp.planetmirror.com.au/pub/trolltech/qt/
+DISTNAME= qt-x11-free-${PORTVERSION}
+DIST_SUBDIR= KDE
+
+MAINTAINER= mi@aldan.algebra.com
+COMMENT= The build utility of the Qt project
+
+USE_REINPLACE= yes
+REINPLACE_ARGS= -i ""
+WRKSRC= ${WRKDIR}/${DISTNAME}/qmake
+MAKEFILE= ${FILESDIR}/Makefile.bsd
+#MAKE_ARGS+= -j2
+PLIST_SUB+= _PREFIX="${PREFIX}"
+MAKE_ENV+= FILESDIR="${FILESDIR}"
+
+USE_BZIP2= yes
+
+EXTRACT_AFTER_ARGS=| ${TAR} -xf - \
+ '${DISTNAME}/mkspecs' \
+ '${DISTNAME}/src/*/*.h' '${DISTNAME}/qmake' \
+ '${DISTNAME}/src/tools'
+
+.if !defined(NOPORTDOCS)
+EXTRACT_AFTER_ARGS+='${DISTNAME}/doc/html/qmake*'
+DOCSDIR=${PREFIX}/share/doc/qt
+PLIST_SUB+= DOCSDIR='${DOCSDIR}'
+post-install:
+ ${MKDIR} '${DOCSDIR}'
+ ${CP} -Rp '${WRKSRC:H}/doc/html' '${DOCSDIR}'
+.endif
+
+post-patch:
+ @${RM} -fr ${WRKSRC}/examples ${WRKSRC}/tutorial
+ @${REINPLACE_CMD} -e 's,-O2,${CXXFLAGS},' \
+ -e 's,gcc,${CC},' \
+ -e 's,g++,${CXX},' \
+ -e 's,/usr/local,${LOCALBASE},' \
+ -e 's,/usr/X11R6,${X11BASE},' \
+ -e 's,release,release thread,' \
+ -e 's,-pthread,,g' \
+ ${WRKSRC}/../mkspecs/freebsd-g++/qmake.conf
+ @${REINPLACE_CMD} -e 's,@QMAKE_QTOBJS@,,g' ${WRKSRC}/Makefile.unix
+
+do-configure:
+ ${SED} -e 's|/usr/local|${PREFIX}|g' \
+ < ${FILESDIR}/qconfig.cpp \
+ > ${WRKSRC:H}/src/tools/qconfig.cpp
+ ${ECHO} '/* empty */' > ${WRKSRC}/qconfig.h
+ ${LN} ${WRKSRC}/qconfig.h ${WRKSRC}/qmodules.h
+ ${LN} -s . ${WRKDIR}/${DISTNAME}/src/tools/private
+
+.include <bsd.port.mk>
diff --git a/devel/qmake/distinfo b/devel/qmake/distinfo
new file mode 100644
index 000000000000..e2cdecd987cc
--- /dev/null
+++ b/devel/qmake/distinfo
@@ -0,0 +1 @@
+MD5 (KDE/qt-x11-free-3.2.1.tar.bz2) = 9ae022ffe7603ec34aba150f6cca257a
diff --git a/devel/qmake/files/Makefile.bsd b/devel/qmake/files/Makefile.bsd
new file mode 100644
index 000000000000..30c96ae66b1c
--- /dev/null
+++ b/devel/qmake/files/Makefile.bsd
@@ -0,0 +1,43 @@
+# $FreeBSD$
+
+_OBJS!= ${MAKE} -f Makefile.unix -V OBJS -V QOBJS
+# We'd like to avoid using qconfig.cpp, but can't -- see the comment
+# next to -DHAVE_CONFIG_CPP below:
+#_OBJS:= ${_OBJS:S/qconfig.o//}
+SRCS:= ${_OBJS:.o=.cpp}
+NOMAN= true # qmake.1 anyone?
+
+.PATH: ${.CURDIR} ${.CURDIR:H}/src/tools
+CXXFLAGS+=-I${.CURDIR:H}/mkspecs/freebsd-g++
+
+.for s in tools kernel codecs
+CXXFLAGS+=-I${.CURDIR:H}/src/$s
+.endfor
+
+.for g in /. /unix /win32 /mac
+.PATH: ${.CURDIR}/generators$g
+CXXFLAGS+=-I${.CURDIR}/generators$g
+.endfor
+
+CXXFLAGS+=-I. -I"${FILESDIR}"
+
+CXXFLAGS+=-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT \
+ -DQT_NO_STL -DQT_NO_COMPRESS -DQT_INSTALL_DATA="\"${SHAREDIR}\""
+
+# I guess, qconfig.cpp used to be optional, but no longer is -- due to
+# bit-rot in Qt sources. So we still have to compile it, but, by not
+# adding the following define, we reduce the seemingly needless usage of
+# it:
+# -DHAVE_QCONFIG_CPP
+
+PROG_CXX= qmake
+BINDIR= ${PREFIX}/bin
+SHAREDIR=${PREFIX}/share/qt
+
+${SHAREDIR}:
+ mkdir -p "$@"
+
+beforeinstall: ${SHAREDIR}
+ cp -Rp ${.CURDIR:H}/mkspecs ${SHAREDIR}
+
+.include <bsd.prog.mk>
diff --git a/devel/qmake/files/qconfig.cpp b/devel/qmake/files/qconfig.cpp
new file mode 100644
index 000000000000..3079f2acd576
--- /dev/null
+++ b/devel/qmake/files/qconfig.cpp
@@ -0,0 +1,15 @@
+/*
+ * $FreeBSD$
+ * Hand-crafted...
+ * The default prefix (/ usr / local) is dynamicly replaced
+ * at configure time.
+ */
+const char *qInstallPath() { return "/usr/local"; }
+const char *qInstallPathDocs() { return "/usr/local/share/doc/qt"; }
+const char *qInstallPathHeaders() { return "/usr/local/include"; }
+const char *qInstallPathLibs() { return "/usr/local/lib"; }
+const char *qInstallPathBins() { return "/usr/local/bin"; }
+const char *qInstallPathPlugins() { return "/usr/local/plugins"; }
+const char *qInstallPathData() { return "/usr/local/share/qt"; }
+const char *qInstallPathTranslations() { return "/usr/local/translations"; }
+const char *qInstallPathSysconf() { return "/usr/local/etc"; }
diff --git a/devel/qmake/pkg-descr b/devel/qmake/pkg-descr
new file mode 100644
index 000000000000..eccbc5d9c1e0
--- /dev/null
+++ b/devel/qmake/pkg-descr
@@ -0,0 +1,8 @@
+Qt is a C++ toolkit for application development. It lets application
+developers target all major operating systems with a single application
+source code.
+
+Qmake is a project and makefile creating utility, that is part of Qt.
+For ease of maintainance it is split out into a port of its own.
+
+WWW: http://www.trolltech.com/products/qt/index.html
diff --git a/devel/qmake/pkg-plist b/devel/qmake/pkg-plist
new file mode 100644
index 000000000000..4b5378ece2c5
--- /dev/null
+++ b/devel/qmake/pkg-plist
@@ -0,0 +1,180 @@
+bin/qmake
+@comment A bug in pkg_* prevents us from using %D below
+@cwd %%_PREFIX%%/share/qt/mkspecs
+aix-g++/qmake.conf
+aix-g++/qplatformdefs.h
+aix-xlc-64/qmake.conf
+aix-xlc-64/qplatformdefs.h
+aix-xlc/qmake.conf
+aix-xlc/qplatformdefs.h
+bsdi-g++/qmake.conf
+bsdi-g++/qplatformdefs.h
+cygwin-g++/qmake.conf
+cygwin-g++/qplatformdefs.h
+darwin-g++/qmake.conf
+darwin-g++/qplatformdefs.h
+dgux-g++/qmake.conf
+dgux-g++/qplatformdefs.h
+freebsd-g++/qmake.conf
+freebsd-g++/qplatformdefs.h
+hpux-acc-64/qmake.conf
+hpux-acc-64/qplatformdefs.h
+hpux-acc-o64/qmake.conf
+hpux-acc-o64/qplatformdefs.h
+hpux-acc/qmake.conf
+hpux-acc/qplatformdefs.h
+hpux-cc/qmake.conf
+hpux-cc/qplatformdefs.h
+hpux-g++-64/qmake.conf
+hpux-g++-64/qplatformdefs.h
+hpux-g++/qmake.conf
+hpux-g++/qplatformdefs.h
+hpuxi-acc-32/qmake.conf
+hpuxi-acc-32/qplatformdefs.h
+hpuxi-acc-64/qmake.conf
+hpuxi-acc-64/qplatformdefs.h
+hurd-g++/qmake.conf
+hurd-g++/qplatformdefs.h
+irix-cc-64/qmake.conf
+irix-cc-64/qplatformdefs.h
+irix-cc-o32/qmake.conf
+irix-cc-o32/qplatformdefs.h
+irix-cc/qmake.conf
+irix-cc/qplatformdefs.h
+irix-g++/qmake.conf
+irix-g++/qplatformdefs.h
+linux-cxx/qmake.conf
+linux-cxx/qplatformdefs.h
+linux-g++/qmake.conf
+linux-g++/qplatformdefs.h
+linux-icc/qmake.conf
+linux-icc/qplatformdefs.h
+linux-kcc/qmake.conf
+linux-kcc/qplatformdefs.h
+linux-kylix/qmake.conf
+linux-kylix/qplatformdefs.h
+linux-pgcc/qmake.conf
+linux-pgcc/qplatformdefs.h
+lynxos-g++/qmake.conf
+lynxos-g++/qplatformdefs.h
+macx-g++/Info.plist.app
+macx-g++/qmake.conf
+macx-g++/qplatformdefs.h
+macx-mwerks/mwerkstmpl.xml
+macx-mwerks/qmake.conf
+macx-mwerks/qplatformdefs.h
+macx-pbuilder/Info.plist.app
+macx-pbuilder/qmake.conf
+macx-pbuilder/qplatformdefs.h
+netbsd-g++/qmake.conf
+netbsd-g++/qplatformdefs.h
+openbsd-g++/qmake.conf
+openbsd-g++/qplatformdefs.h
+qnx-g++/qmake.conf
+qnx-g++/qplatformdefs.h
+reliant-cds-64/qmake.conf
+reliant-cds-64/qplatformdefs.h
+reliant-cds/qmake.conf
+reliant-cds/qplatformdefs.h
+sco-cc/qmake.conf
+sco-cc/qplatformdefs.h
+sco-g++/qmake.conf
+sco-g++/qplatformdefs.h
+solaris-cc-64/qmake.conf
+solaris-cc-64/qplatformdefs.h
+solaris-cc/qmake.conf
+solaris-cc/qplatformdefs.h
+solaris-g++-64/qmake.conf
+solaris-g++-64/qplatformdefs.h
+solaris-g++/qmake.conf
+solaris-g++/qplatformdefs.h
+tru64-cxx/qmake.conf
+tru64-cxx/qplatformdefs.h
+tru64-g++/qmake.conf
+tru64-g++/qplatformdefs.h
+unixware-cc/qmake.conf
+unixware-cc/qplatformdefs.h
+unixware-g++/qmake.conf
+unixware-g++/qplatformdefs.h
+win32-borland/qmake.conf
+win32-borland/qplatformdefs.h
+win32-g++/qmake.conf
+win32-g++/qplatformdefs.h
+win32-icc/qmake.conf
+win32-icc/qplatformdefs.h
+win32-icc/win32app.dsp
+win32-icc/win32dll.dsp
+win32-icc/win32lib.dsp
+win32-msvc.net/qmake.conf
+win32-msvc.net/qplatformdefs.h
+win32-msvc/qmake.conf
+win32-msvc/qplatformdefs.h
+win32-msvc/win32app.dsp
+win32-msvc/win32dll.dsp
+win32-msvc/win32lib.dsp
+win32-watcom/qmake.conf
+@dirrm aix-g++
+@dirrm aix-xlc
+@dirrm aix-xlc-64
+@dirrm bsdi-g++
+@dirrm cygwin-g++
+@dirrm darwin-g++
+@dirrm dgux-g++
+@dirrm freebsd-g++
+@dirrm hpux-acc
+@dirrm hpux-acc-64
+@dirrm hpux-acc-o64
+@dirrm hpux-cc
+@dirrm hpux-g++
+@dirrm hpux-g++-64
+@dirrm hpuxi-acc-32
+@dirrm hpuxi-acc-64
+@dirrm hurd-g++
+@dirrm irix-cc
+@dirrm irix-cc-64
+@dirrm irix-cc-o32
+@dirrm irix-g++
+@dirrm linux-cxx
+@dirrm linux-g++
+@dirrm linux-icc
+@dirrm linux-kcc
+@dirrm linux-kylix
+@dirrm linux-pgcc
+@dirrm lynxos-g++
+@dirrm macx-g++
+@dirrm macx-mwerks
+@dirrm macx-pbuilder
+@dirrm netbsd-g++
+@dirrm openbsd-g++
+@dirrm qnx-g++
+@dirrm reliant-cds
+@dirrm reliant-cds-64
+@dirrm sco-cc
+@dirrm sco-g++
+@dirrm solaris-cc
+@dirrm solaris-cc-64
+@dirrm solaris-g++
+@dirrm solaris-g++-64
+@dirrm tru64-cxx
+@dirrm tru64-g++
+@dirrm unixware-cc
+@dirrm unixware-g++
+@dirrm win32-borland
+@dirrm win32-g++
+@dirrm win32-icc
+@dirrm win32-msvc
+@dirrm win32-msvc.net
+@dirrm win32-watcom
+@unexec rmdir %%_PREFIX%%/share/qt/mkspecs
+@unexec rmdir %%_PREFIX%%/share/qt || echo %%_PREFIX%%/share/qt is still in use -- probably by the rest of Qt
+%%PORTDOCS%%@cwd %%DOCSDIR%%
+%%PORTDOCS%%html/qmake.dcf
+%%PORTDOCS%%html/qmake-manual.html
+%%PORTDOCS%%html/qmake-manual-1.html
+%%PORTDOCS%%html/qmake-manual-2.html
+%%PORTDOCS%%html/qmake-manual-3.html
+%%PORTDOCS%%html/qmake-manual-4.html
+%%PORTDOCS%%html/qmake-manual-5.html
+%%PORTDOCS%%html/qmake-manual-6.html
+%%PORTDOCS%%html/qmake-manual-7.html
+%%PORTDOCS%%@unexec (rmdir %%DOCSDIR%%/html && rmdir %%DOCSDIR%%) || echo %%DOCSDIR%% is still in use -- by other Qt docs?