# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ EAPI="5" inherit cmake-utils versionator eutils user DESCRIPTION="C++ library for developing interactive web applications" MY_P=${P/_/-} HOMEPAGE="http://webtoolkit.eu/" SRC_URI="mirror://sourceforge/witty/wt/3.3.0/${MY_P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="amd64 x86" IUSE="doc +extjs fcgi graphicsmagick mysql pdf postgres resources +server ssl +sqlite test zlib" RDEPEND=" >=dev-libs/boost-1.41 graphicsmagick? ( media-gfx/graphicsmagick ) pdf? ( media-libs/libharu x11-libs/pango ) postgres? ( dev-db/postgresql:= ) mysql? ( virtual/mysql ) sqlite? ( dev-db/sqlite:3 ) fcgi? ( dev-libs/fcgi virtual/httpd-fastcgi ) server? ( ssl? ( dev-libs/openssl:= ) zlib? ( sys-libs/zlib ) ) " DEPEND=" ${RDEPEND} >=dev-util/cmake-2.6 " DOCS="Changelog INSTALL" S=${WORKDIR}/${MY_P} pkg_setup() { if use !server && use !fcgi; then ewarn "You have to select at least built-in server support or fcgi support." ewarn "Invalid use flag combination, enable at least one of: server, fcgi" fi if use test && use !sqlite; then ewarn "Tests need sqlite, disabling." fi enewgroup wt enewuser wt -1 -1 /var/lib/wt/home wt } src_prepare() { # just to be sure rm -rf Wt/Dbo/backend/amalgamation # fix png linking if use pdf; then sed -e 's/-lpng12/-lpng/' \ -i cmake/WtFindHaru.txt || die fi cmake-utils_src_prepare } src_configure() { BOOST_PKG="$(best_version ">=dev-libs/boost-1.41.0")" BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")" BOOST_VER="$(replace_all_version_separators _ "${BOOST_VER}")" BOOST_INC="/usr/include/boost-${BOOST_VER}" local mycmakeargs=( -DDESTDIR="${D}" -DLIB_INSTALL_DIR=$(get_libdir) $(cmake-utils_use test BUILD_TESTS) -DSHARED_LIBS=ON -DMULTI_THREADED=ON -DUSE_SYSTEM_SQLITE3=ON -DWEBUSER=wt -DWEBGROUP=wt $(cmake-utils_use extjs ENABLE_EXT) $(cmake-utils_use graphicsmagick ENABLE_GM) $(cmake-utils_use pdf ENABLE_HARU) $(cmake-utils_use postgres ENABLE_POSTGRES) $(cmake-utils_use sqlite ENABLE_SQLITE) $(cmake-utils_use mysql ENABLE_MYSQL) $(cmake-utils_use fcgi CONNECTOR_FCGI) $(cmake-utils_use server CONNECTOR_HTTP) $(cmake-utils_use ssl WT_WITH_SSL) $(cmake-utils_use zlib HTTP_WITH_ZLIB) -DBUILD_EXAMPLES=OFF $(cmake-utils_use resources INSTALL_RESOURCES) ) cmake-utils_src_configure } src_test() { # Tests need sqlite if use sqlite; then pushd "${CMAKE_BUILD_DIR}" > /dev/null ./test/test || die popd > /dev/null fi } src_install() { dodir \ /var/lib/wt \ /var/lib/wt/home cmake-utils_src_install use doc && dohtml -A pdf,xhtml -r doc/* } pkg_postinst() { if use fcgi; then elog "You selected fcgi support. Please make sure that the web-server" elog "has fcgi support and access to the fcgi socket." elog "You can use spawn-fcgi to spawn the witty-processes and run them" elog "in a chroot environment." fi chown -R wt:wt \ "${ROOT}"/var/lib/wt chmod 0750 \ "${ROOT}"/var/lib/wt \ "${ROOT}"/var/lib/wt/home }