svn commit: r410751 - in head: databases/qt4-ibase-plugin databases/qt4-ibase-plugin/files databases/qt4-mysql-plugin databases/qt4-mysql-plugin/files databases/qt4-odbc-plugin databases/qt4-odbc-p...
Raphael Kubo da Costa
rakuco at FreeBSD.org
Thu Mar 10 14:11:19 UTC 2016
Author: rakuco
Date: Thu Mar 10 14:11:16 2016
New Revision: 410751
URL: https://svnweb.freebsd.org/changeset/ports/410751
Log:
qt4 sqldrivers: Switch to a proper qmake build, use Makefile.sqldrivers.
We've recently started receiving pkg-fallout emails because qt4-mysql-plugin
is failing to build in HEAD. It turns out we were using some custom-made
Makefile.bsd files to drive the builds, and they did not always register all
dependencies between the files correctly.
Fix it by switching to a proper qmake build that uses the .pro files shipped
with Qt4 itself: they can be used without running the `configure' script
almost as if they were not part of the Qt distribution itself. By doing this
we can stop having our own Makefiles and also stop setting a lot of
variables in the port Makefiles.
While here, consolidate most of the variable setting into a single
Makefile.sqldrivers in devel/qt4 (like we already do for devel/qt5) so that
each of the qt4-*-plugin ports only need to set a few values such as the
plugin name and additional USES or includes that might be necessary.
Bump PORTREVISION because we now include the debug versions of the plugins
in PLIST_FILES when the ports are built with WITH_DEBUG=yes (they were
already shipped before, but not registered in the plists).
Added:
head/devel/qt4/Makefile.sqldrivers (contents, props changed)
Deleted:
head/databases/qt4-ibase-plugin/files/
head/databases/qt4-ibase-plugin/pkg-plist
head/databases/qt4-mysql-plugin/files/
head/databases/qt4-mysql-plugin/pkg-plist
head/databases/qt4-odbc-plugin/files/
head/databases/qt4-odbc-plugin/pkg-plist
head/databases/qt4-pgsql-plugin/files/
head/databases/qt4-pgsql-plugin/pkg-plist
head/databases/qt4-sqlite-plugin/files/
head/databases/qt4-sqlite-plugin/pkg-plist
head/databases/qt4-sqlite3-plugin/files/
head/databases/qt4-sqlite3-plugin/pkg-plist
Modified:
head/databases/qt4-ibase-plugin/Makefile
head/databases/qt4-mysql-plugin/Makefile
head/databases/qt4-odbc-plugin/Makefile
head/databases/qt4-pgsql-plugin/Makefile
head/databases/qt4-sqlite-plugin/Makefile
head/databases/qt4-sqlite3-plugin/Makefile
Modified: head/databases/qt4-ibase-plugin/Makefile
==============================================================================
--- head/databases/qt4-ibase-plugin/Makefile Thu Mar 10 13:25:54 2016 (r410750)
+++ head/databases/qt4-ibase-plugin/Makefile Thu Mar 10 14:11:16 2016 (r410751)
@@ -1,38 +1,10 @@
# Created by: Michael Nottebrock <lofi at FreeBSD.org>
# $FreeBSD$
-PORTNAME= qt4-${DB}-plugin
-DISTVERSION= ${QT4_VERSION}
-CATEGORIES= databases
+PORTREVISION= 1
-MAINTAINER= kde at FreeBSD.org
COMMENT= Qt InterBase/Firebird database plugin
-
DB= ibase
-
USE_FIREBIRD= yes
-USE_QT4= moc_build sql
-QT_DIST= yes
-
-DRIVER= src/sql/drivers/${DB}
-PLUGIN= src/plugins/sqldrivers/${DB}
-EXTRACT_AFTER_ARGS?= ${DISTNAME}/${DRIVER} ${DISTNAME}/${PLUGIN} \
- ${DISTNAME}/include/QtSql \
- ${DISTNAME}/src/corelib \
- ${DISTNAME}/src/sql/kernel
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-MAKE_ENV+= DB="${DB}" DRIVER="${DRIVER}" MOC="${MOC}" \
- PLUGIN="${PLUGIN}" \
- QT_INCDIR="${QT_INCDIR}" \
- QT_LIBDIR="${QT_LIBDIR}"
-PLIST_SUB= DB=${DB}
-
-EXTRA_PATCHES= # empty
-
-SQL_PLUGINDIR= ${PREFIX}/${QT_PLUGINDIR_REL}/sqldrivers
-
-do-install:
- @${MKDIR} ${STAGEDIR}${SQL_PLUGINDIR}
- ${INSTALL_LIB} ${WRKSRC}/libqsql${DB}.so ${STAGEDIR}${SQL_PLUGINDIR}
-.include <bsd.port.mk>
+.include "${.CURDIR:H:H}/devel/qt4/Makefile.sqldrivers"
Modified: head/databases/qt4-mysql-plugin/Makefile
==============================================================================
--- head/databases/qt4-mysql-plugin/Makefile Thu Mar 10 13:25:54 2016 (r410750)
+++ head/databases/qt4-mysql-plugin/Makefile Thu Mar 10 14:11:16 2016 (r410751)
@@ -1,37 +1,13 @@
# Created by: Kay Lehmann <kay_lehmann at web.de>
# $FreeBSD$
-PORTNAME= qt4-${DB}-plugin
-DISTVERSION= ${QT4_VERSION}
-CATEGORIES= databases
+PORTREVISION= 1
-MAINTAINER= kde at FreeBSD.org
COMMENT= Qt MySQL database plugin
-
DB= mysql
-
-USE_QT4= moc_build sql
-QT_DIST= yes
-
USE_MYSQL= yes
-DRIVER= src/sql/drivers/${DB}
-PLUGIN= src/plugins/sqldrivers/${DB}
-EXTRACT_AFTER_ARGS?= ${DISTNAME}/${DRIVER} \
- ${DISTNAME}/src/corelib \
- ${DISTNAME}/${PLUGIN}
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-MAKE_ENV+= DB="${DB}" DRIVER="${DRIVER}" MOC="${MOC}" \
- PLUGIN="${PLUGIN}" \
- QT_INCDIR="${QT_INCDIR}" \
- QT_LIBDIR="${QT_LIBDIR}"
-PLIST_SUB= DB=${DB}
-
-EXTRA_PATCHES= # empty
-
-SQL_PLUGINDIR= ${PREFIX}/${QT_PLUGINDIR_REL}/sqldrivers
-do-install:
- @${MKDIR} ${STAGEDIR}${SQL_PLUGINDIR}
- ${INSTALL_LIB} ${WRKSRC}/libqsql${DB}.so ${STAGEDIR}${SQL_PLUGINDIR}
+CXXFLAGS+= -I${LOCALBASE}/include/mysql
+LDFLAGS+= -L${LOCALBASE}/lib/mysql
-.include <bsd.port.mk>
+.include "${.CURDIR:H:H}/devel/qt4/Makefile.sqldrivers"
Modified: head/databases/qt4-odbc-plugin/Makefile
==============================================================================
--- head/databases/qt4-odbc-plugin/Makefile Thu Mar 10 13:25:54 2016 (r410750)
+++ head/databases/qt4-odbc-plugin/Makefile Thu Mar 10 14:11:16 2016 (r410751)
@@ -1,38 +1,11 @@
# Created by: Michael Nottebrock <lofi at FreeBSD.org>
# $FreeBSD$
-PORTNAME= qt4-${DB}-plugin
-DISTVERSION= ${QT4_VERSION}
-CATEGORIES= databases
-
-MAINTAINER= kde at FreeBSD.org
-COMMENT= Qt Open Database Connectivity plugin
+PORTREVISION= 1
DB= odbc
+COMMENT= Qt Open Database Connectivity plugin
-LIB_DEPENDS+= libodbc.so:${PORTSDIR}/databases/unixODBC
-
-USE_QT4= moc_build sql
-QT_DIST= yes
-
-DRIVER= src/sql/drivers/${DB}
-PLUGIN= src/plugins/sqldrivers/${DB}
-EXTRACT_AFTER_ARGS?= ${DISTNAME}/${DRIVER} \
- ${DISTNAME}/src/corelib \
- ${DISTNAME}/${PLUGIN}
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-MAKE_ENV+= DB="${DB}" DRIVER="${DRIVER}" MOC="${MOC}" \
- PLUGIN="${PLUGIN}" \
- QT_INCDIR="${QT_INCDIR}" \
- QT_LIBDIR="${QT_LIBDIR}"
-PLIST_SUB= DB=${DB}
-
-EXTRA_PATCHES= # empty
-
-SQL_PLUGINDIR= ${PREFIX}/${QT_PLUGINDIR_REL}/sqldrivers
-
-do-install:
- @${MKDIR} ${STAGEDIR}${SQL_PLUGINDIR}
- ${INSTALL_LIB} ${WRKSRC}/libqsql${DB}.so ${STAGEDIR}${SQL_PLUGINDIR}
+LIB_DEPENDS= libodbc.so:${PORTSDIR}/databases/unixODBC
-.include <bsd.port.mk>
+.include "${.CURDIR:H:H}/devel/qt4/Makefile.sqldrivers"
Modified: head/databases/qt4-pgsql-plugin/Makefile
==============================================================================
--- head/databases/qt4-pgsql-plugin/Makefile Thu Mar 10 13:25:54 2016 (r410750)
+++ head/databases/qt4-pgsql-plugin/Makefile Thu Mar 10 14:11:16 2016 (r410751)
@@ -1,37 +1,10 @@
# Created by: Lauri Watts <lauri at kde.org>
# $FreeBSD$
-PORTNAME= qt4-${DB}-plugin
-DISTVERSION= ${QT4_VERSION}
-CATEGORIES= databases
+PORTREVISION= 1
-MAINTAINER= kde at FreeBSD.org
COMMENT= Qt PostgreSQL database plugin
-
DB= psql
+USES= pgsql
-USE_QT4= moc_build sql
-QT_DIST= yes
-
-USES+= pgsql
-DRIVER= src/sql/drivers/${DB}
-PLUGIN= src/plugins/sqldrivers/${DB}
-EXTRACT_AFTER_ARGS?= ${DISTNAME}/${DRIVER} \
- ${DISTNAME}/src/corelib \
- ${DISTNAME}/${PLUGIN}
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-MAKE_ENV+= DB="${DB}" DRIVER="${DRIVER}" MOC="${MOC}" \
- PLUGIN="${PLUGIN}" \
- QT_INCDIR="${QT_INCDIR}" \
- QT_LIBDIR="${QT_LIBDIR}"
-PLIST_SUB= DB=${DB}
-
-EXTRA_PATCHES= # empty
-
-SQL_PLUGINDIR= ${PREFIX}/${QT_PLUGINDIR_REL}/sqldrivers
-
-do-install:
- @${MKDIR} ${STAGEDIR}${SQL_PLUGINDIR}
- ${INSTALL_LIB} ${WRKSRC}/libqsql${DB}.so ${STAGEDIR}${SQL_PLUGINDIR}
-
-.include <bsd.port.mk>
+.include "${.CURDIR:H:H}/devel/qt4/Makefile.sqldrivers"
Modified: head/databases/qt4-sqlite-plugin/Makefile
==============================================================================
--- head/databases/qt4-sqlite-plugin/Makefile Thu Mar 10 13:25:54 2016 (r410750)
+++ head/databases/qt4-sqlite-plugin/Makefile Thu Mar 10 14:11:16 2016 (r410751)
@@ -1,38 +1,10 @@
# Created by: Michael Nottebrock <lofi at FreeBSD.org>
# $FreeBSD$
-PORTNAME= qt4-${DB}-plugin
-DISTVERSION= ${QT4_VERSION}
-CATEGORIES= databases
+PORTREVISION= 1
-MAINTAINER= kde at FreeBSD.org
COMMENT= Qt SQLite 2 database plugin
-
DB= sqlite2
-
-USE_QT4= moc_build sql
-QT_DIST= yes
USE_SQLITE= 2
-DRIVER= src/sql/drivers/${DB}
-PLUGIN= src/plugins/sqldrivers/${DB}
-EXTRACT_AFTER_ARGS?= ${DISTNAME}/${DRIVER} ${DISTNAME}/${PLUGIN} \
- ${DISTNAME}/include/QtSql \
- ${DISTNAME}/src/corelib \
- ${DISTNAME}/src/sql/kernel
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-MAKE_ENV+= DB="${DB}" DRIVER="${DRIVER}" MOC="${MOC}" \
- PLUGIN="${PLUGIN}" \
- QT_INCDIR="${QT_INCDIR}" \
- QT_LIBDIR="${QT_LIBDIR}"
-PLIST_SUB= DB=${DB}
-
-EXTRA_PATCHES= # empty
-
-SQL_PLUGINDIR= ${PREFIX}/${QT_PLUGINDIR_REL}/sqldrivers
-
-do-install:
- @${MKDIR} ${STAGEDIR}${SQL_PLUGINDIR}
- ${INSTALL_LIB} ${WRKSRC}/libq${DB}.so ${STAGEDIR}${SQL_PLUGINDIR}
-
-.include <bsd.port.mk>
+.include "${.CURDIR:H:H}/devel/qt4/Makefile.sqldrivers"
Modified: head/databases/qt4-sqlite3-plugin/Makefile
==============================================================================
--- head/databases/qt4-sqlite3-plugin/Makefile Thu Mar 10 13:25:54 2016 (r410750)
+++ head/databases/qt4-sqlite3-plugin/Makefile Thu Mar 10 14:11:16 2016 (r410751)
@@ -1,38 +1,10 @@
# Created by: Michael Nottebrock <lofi at FreeBSD.org>
# $FreeBSD$
-PORTNAME= qt4-${DB}-plugin
-DISTVERSION= ${QT4_VERSION}
-CATEGORIES= databases
+PORTREVISION= 1
-MAINTAINER= kde at FreeBSD.org
COMMENT= Qt SQLite 3 database plugin
-
DB= sqlite
-
-USE_QT4= moc_build sql
-QT_DIST= yes
USE_SQLITE= 3
-DRIVER= src/sql/drivers/${DB}
-PLUGIN= src/plugins/sqldrivers/${DB}
-EXTRACT_AFTER_ARGS?= ${DISTNAME}/${DRIVER} ${DISTNAME}/${PLUGIN} \
- ${DISTNAME}/include/QtSql \
- ${DISTNAME}/src/corelib \
- ${DISTNAME}/src/sql/kernel
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-MAKE_ENV+= DB="${DB}" DRIVER="${DRIVER}" MOC="${MOC}" \
- PLUGIN="${PLUGIN}" \
- QT_INCDIR="${QT_INCDIR}" \
- QT_LIBDIR="${QT_LIBDIR}"
-PLIST_SUB= DB=${DB}
-
-EXTRA_PATCHES= # empty
-
-SQL_PLUGINDIR= ${PREFIX}/${QT_PLUGINDIR_REL}/sqldrivers
-
-do-install:
- @${MKDIR} ${STAGEDIR}${SQL_PLUGINDIR}
- ${INSTALL_LIB} ${WRKSRC}/libq${DB}.so ${STAGEDIR}${SQL_PLUGINDIR}
-
-.include <bsd.port.mk>
+.include "${.CURDIR:H:H}/devel/qt4/Makefile.sqldrivers"
Added: head/devel/qt4/Makefile.sqldrivers
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/qt4/Makefile.sqldrivers Thu Mar 10 14:11:16 2016 (r410751)
@@ -0,0 +1,27 @@
+# $FreeBSD$
+
+PORTNAME= ${DB:tl}
+DISTVERSION= ${QT4_VERSION}
+CATEGORIES= databases
+PKGNAMEPREFIX= qt4-
+PKGNAMESUFFIX= -plugin
+
+MAINTAINER= kde at FreeBSD.org
+
+EXTRA_PATCHES= # empty
+
+USE_QT4= corelib sql moc_build qmake_build
+QT_DIST= yes
+USES+= qmake:outsource
+
+CXXFLAGS+= -I${WRKSRC}/include # For private QtSql headers.
+
+EXTRACT_AFTER_ARGS= ${DISTNAME}/include/QtSql \
+ ${DISTNAME}/src/corelib ${DISTNAME}/src/plugins \
+ ${DISTNAME}/src/qt_targets.pri ${DISTNAME}/src/sql
+QMAKE_SOURCE_PATH= ${WRKSRC}/src/plugins/sqldrivers/${DB}/${DB}.pro
+
+PLIST_FILES= ${QT_PLUGINDIR_REL}/sqldrivers/libqsql${DB:tl:C/^sql//}.so \
+ %%DEBUG%%${QT_PLUGINDIR_REL}/sqldrivers/libq${DB:tl:C/^sql//}.so.debug
+
+.include <bsd.port.mk>
More information about the svn-ports-all
mailing list