1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-15 03:14:23 +00:00
freebsd-ports/www/wt/Makefile
2018-04-18 13:57:42 +00:00

233 lines
6.3 KiB
Makefile

# Created by: Mohammad S. Babaei <info@babaei.net>
# $FreeBSD$
PORTNAME= wt
PORTVERSION= 3.3.7
PORTREVISION= 8
CATEGORIES= www
MAINTAINER= info@babaei.net
COMMENT= Widget-centric C++ library for developing web applications
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS+= libpng.so:graphics/png \
libboost_system.so:devel/boost-libs \
libGraphicsMagick.so:graphics/GraphicsMagick
BROKEN= fails to build with boost 1.66, see bug 224183
BROKEN_powerpc64= fails to link: libwthttp.so. undefined reference to boost::program_options::abstract_variables_map::operator
USE_GITHUB= yes
GH_ACCOUNT= kdeforche
USE_LDCONFIG= yes
USE_XORG+=x11
USES= cmake:outsource pkgconfig ssl
CMAKE_ARGS+= -DCONFIGDIR:STRING=${LOCALBASE}/etc/wt \
-DGM_PREFIX:STRING=${LOCALBASE} \
-DPNG_PREFIX:STRING=${LOCALBASE} \
-DSSL_PREFIX:STRING=/usr \
-DZLIB_PREFIX:STRING=/usr \
-DCONNECTOR_ISAPI:BOOL=OFF \
-DWEBUSER:STRING=www \
-DWEBGROUP:STRING=www \
-DWT_WRASTERIMAGE_IMPLEMENTATION:STRING=GraphicsMagick \
-DENABLE_SSL:BOOL=ON
NO_OPTIONS_SORT= yes
OPTIONS_DEFINE= \
DOXYGEN \
EXAMPLES \
TESTS \
RESOURCES \
CMAKE_MODULE \
CPP11 \
HARU \
PANGO \
EXT \
QT4 \
LIBWTTEST \
OPENGL
OPTIONS_DEFAULT= \
TESTS \
RESOURCES \
CMAKE_MODULE \
CPP11 \
HARU \
PANGO \
OPENGL \
LIBWTTEST
OPTIONS_GROUP= CONNECTOR DBO WSTRING
OPTIONS_SUB= yes
EXAMPLES_DESC= Install examples (implies SQLITE3 and WTHTTP)
TESTS_DESC= Build Wt tests
RESOURCES_DESC= Install resources directory
CMAKE_MODULE_DESC= Install FindWt.cmake in systemwide cmake dir
CPP11_DESC= Compile Wt in C++11 mode (Clang or GCC 4.6+)
HARU_DESC= Enable Haru Free PDF Library
EXT_DESC= Build Wt Ext library with JavaScript-only widgets
LIBWTTEST_DESC= Build Wt::Test for automated (integration/unit) tests
OPTIONS_GROUP_CONNECTOR= FCGI WTHTTP
OPTIONS_DEFAULT += FCGI WTHTTP
CONNECTOR_DESC= Connector
FCGI_DESC= Build FastCGI connector
WTHTTP_DESC= Build Wt stand-alone httpd connector
OPTIONS_GROUP_DBO= SQLITE3 POSTGRES FIREBIRD MYSQL
OPTIONS_DEFAULT += SQLITE3
DBO_DESC= Wt::DBO
SQLITE3_DESC= Build Wt with SQLite 3 support
POSTGRES_DESC= Build Wt with PostgreSQL support
FIREBIRD_DESC= Build Wt with Firebird support
MYSQL_DESC= Build Wt with MariaDB or MySQL support
OPTIONS_GROUP_WSTRING= NO_STD_LOCALE NO_STD_WSTRING
WSTRING_DESC= Wt::WString
NO_STD_LOCALE_DESC= Build for a system without std::locale support
NO_STD_WSTRING_DESC= Build for a system without std::wstring support
EXAMPLES_IMPLIES= SQLITE3 WTHTTP
CMAKE_MODULE_CMAKE_ON= -DINSTALL_FINDWT_CMAKE_FILE:BOOL=ON
CMAKE_MODULE_CMAKE_OFF= -DINSTALL_FINDWT_CMAKE_FILE:BOOL=OFF
DOXYGEN_CMAKE_ON= -DBUILD_DOCS:BOOL=ON
DOXYGEN_CMAKE_OFF= -DBUILD_DOCS:BOOL=OFF
FCGI_CMAKE_ON= -DCONNECTOR_FCGI:BOOL=ON
FCGI_CMAKE_OFF= -DCONNECTOR_FCGI:BOOL=OFF
FIREBIRD_CMAKE_ON= -DENABLE_FIREBIRD:BOOL=ON
FIREBIRD_CMAKE_OFF= -DENABLE_FIREBIRD:BOOL=OFF
EXT_CMAKE_ON= -DENABLE_EXT:BOOL=ON
EXT_CMAKE_OFF= -DENABLE_EXT:BOOL=OFF
HARU_CMAKE_ON= -DENABLE_HARU:BOOL=ON
HARU_CMAKE_OFF= -DENABLE_HARU:BOOL=OFF
LIBWTTEST_CMAKE_ON= -DENABLE_LIBWTTEST:BOOL=ON
LIBWTTEST_CMAKE_OFF= -DENABLE_LIBWTTEST:BOOL=OFF
MYSQL_CMAKE_ON= -DENABLE_MYSQL:BOOL=ON
MYSQL_CMAKE_OFF= -DENABLE_MYSQL:BOOL=OFF
NO_STD_LOCALE_CMAKE_ON= -DWT_NO_STD_LOCALE:BOOL=ON
NO_STD_LOCALE_CMAKE_OFF=-DWT_NO_STD_LOCALE:BOOL=OFF
NO_STD_WSTRING_CMAKE_ON= -DWT_NO_STD_WSTRING:BOOL=ON
NO_STD_WSTRING_CMAKE_OFF= -DWT_NO_STD_WSTRING:BOOL=OFF
OPENGL_CMAKE_ON= -DENABLE_OPENGL:BOOL=ON
OPENGL_CMAKE_OFF= -DENABLE_OPENGL:BOOL=OFF
PANGO_CMAKE_ON= -DENABLE_PANGO:BOOL=ON
PANGO_CMAKE_OFF= -DENABLE_PANGO:BOOL=OFF
POSTGRES_CMAKE_ON= -DENABLE_POSTGRES:BOOL=ON
POSTGRES_CMAKE_OFF= -DENABLE_POSTGRES:BOOL=OFF
QT4_CMAKE_ON= -DENABLE_QT4:BOOL=ON
QT4_CMAKE_OFF= -DENABLE_QT4:BOOL=OFF
RESOURCES_CMAKE_ON= -DINSTALL_RESOURCES:BOOL=ON
RESOURCES_CMAKE_OFF= -DINSTALL_RESOURCES:BOOL=OFF
SQLITE_CMAKE_ON= -DENABLE_SQLITE:BOOL=ON
SQLITE_CMAKE_OFF= -DENABLE_SQLITE:BOOL=OFF
TESTS_CMAKE_ON= -DBUILD_TESTS:BOOL=ON
TESTS_CMAKE_OFF= -DBUILD_TESTS:BOOL=OFF
WTHTTP_CMAKE_ON= -DCONNECTOR_HTTP:BOOL=ON
WTHTTP_CMAKE_OFF= -DCONNECTOR_HTTP:BOOL=OFF
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MDOXYGEN}
BUILD_DEPENDS+= asciidoc:textproc/asciidoc \
doxygen:devel/doxygen
.endif
.if ${PORT_OPTIONS:MEXAMPLES}
CMAKE_ARGS+= -DBUILD_EXAMPLES:BOOL=ON -DINSTALL_EXAMPLES:BOOL=ON
.if ${PORT_OPTIONS:MSQLITE3} \
|| ${PORT_OPTIONS:MPOSTGRES} \
|| ${PORT_OPTIONS:MFIREBIRD} \
|| ${PORT_OPTIONS:MMYSQL}
PLIST_SUB+= DBO_EXAMPLES=""
.if ${PORT_OPTIONS:MSQLITE3}
.else
PLIST_SUB+= DBO_SQLITE3_EXAMPLES=""
.endif
PLIST_SUB+= DBO_SQLITE3_EXAMPLES="@comment "
.else
PLIST_SUB+= DBO_EXAMPLES="@comment "
PLIST_SUB+= DBO_SQLITE3_EXAMPLES="@comment "
.endif
.if ${PORT_OPTIONS:MQT4}
PLIST_SUB+= QT4_EXAMPLES=""
.else
PLIST_SUB+= QT4_EXAMPLES="@comment "
.endif
.else
CMAKE_ARGS+= -DBUILD_EXAMPLES:BOOL=OFF -DINSTALL_EXAMPLES:BOOL=OFF
PLIST_SUB+= DBO_EXAMPLES="@comment "
PLIST_SUB+= DBO_SQLITE3_EXAMPLES="@comment "
PLIST_SUB+= QT4_EXAMPLES="@comment "
.endif
.if ${PORT_OPTIONS:MCPP11}
USES+= compiler:c++11-lib
CMAKE_ARGS+= -DWT_CPP_11_MODE:STRING=-std=c++0x
.endif
.if ${PORT_OPTIONS:MHARU}
LIB_DEPENDS+= libhpdf.so:print/libharu
CMAKE_ARGS+= -DHARU_PREFIX:STRING=${LOCALBASE}
.endif
.if ${PORT_OPTIONS:MPANGO}
USE_GNOME+= pango
.endif
.if ${PORT_OPTIONS:MQT4}
USE_QT4= corelib moc_build
.endif
.if ${PORT_OPTIONS:MOPENGL}
USE_GL= gl glew
.endif
.if ${PORT_OPTIONS:MFCGI}
LIB_DEPENDS+= libfcgi.so:www/fcgi \
libfcgi++.so:www/fcgi
CMAKE_ARGS+= -DFCGI_PREFIX:STRING=${LOCALBASE}
.endif
.if ${PORT_OPTIONS:MSQLITE3} \
|| ${PORT_OPTIONS:MPOSTGRES} \
|| ${PORT_OPTIONS:MFIREBIRD} \
|| ${PORT_OPTIONS:MMYSQL}
CMAKE_ARGS+= -DENABLE_LIBWTDBO:BOOL=ON
PLIST_SUB+= DBO=""
.else
CMAKE_ARGS+= -DENABLE_LIBWTDBO:BOOL=OFF
PLIST_SUB+= DBO="@comment "
.endif
.if ${PORT_OPTIONS:MSQLITE3}
USES+= sqlite:3
CMAKE_ARGS+= -DSQLITE3_PREFIX:STRING=${LOCALBASE}
.endif
.if ${PORT_OPTIONS:MPOSTGRES}
USE_PGSQL= yes
CMAKE_ARGS+= -DPOSTGRES_PREFIX:STRING=${LOCALBASE}
.endif
.if ${PORT_OPTIONS:MFIREBIRD}
USE_FIREBIRD= yes
CMAKE_AGS+= -DFIREBIRD_PREFIX:STRING=${LOCALBASE}
.endif
.if ${PORT_OPTIONS:MMYSQL}
USE_MYSQL= yes
CMAKE_ARGS+= -DMYSQL_PREFIX:STRING=${LOCALBASE}
.endif
post-install:
@${RM} ${STAGEDIR}${ETCDIR}/wt_config.xml
@${MKDIR} ${STAGEDIR}${ETCDIR}
@${CP} -p ${BUILD_WRKSRC}/wt_config.xml \
${STAGEDIR}${ETCDIR}/wt_config.xml.sample
.include <bsd.port.mk>