Date: Thu, 10 Mar 2016 14:11:17 +0000 (UTC) From: Raphael Kubo da Costa <rakuco@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: 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... Message-ID: <201603101411.u2AEBH65074559@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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@FreeBSD.org> # $FreeBSD$ -PORTNAME= qt4-${DB}-plugin -DISTVERSION= ${QT4_VERSION} -CATEGORIES= databases +PORTREVISION= 1 -MAINTAINER= kde@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@web.de> # $FreeBSD$ -PORTNAME= qt4-${DB}-plugin -DISTVERSION= ${QT4_VERSION} -CATEGORIES= databases +PORTREVISION= 1 -MAINTAINER= kde@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@FreeBSD.org> # $FreeBSD$ -PORTNAME= qt4-${DB}-plugin -DISTVERSION= ${QT4_VERSION} -CATEGORIES= databases - -MAINTAINER= kde@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@kde.org> # $FreeBSD$ -PORTNAME= qt4-${DB}-plugin -DISTVERSION= ${QT4_VERSION} -CATEGORIES= databases +PORTREVISION= 1 -MAINTAINER= kde@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@FreeBSD.org> # $FreeBSD$ -PORTNAME= qt4-${DB}-plugin -DISTVERSION= ${QT4_VERSION} -CATEGORIES= databases +PORTREVISION= 1 -MAINTAINER= kde@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@FreeBSD.org> # $FreeBSD$ -PORTNAME= qt4-${DB}-plugin -DISTVERSION= ${QT4_VERSION} -CATEGORIES= databases +PORTREVISION= 1 -MAINTAINER= kde@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@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>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201603101411.u2AEBH65074559>