freebsd-ports/biology/ugene/Makefile
Dimitry Andric 488fd1255a During the exp-run in bug 208158, it was found that biology/ugene gives
errors with libc++ 3.8.0:

In file included from src/QScoreAdapter.cpp:1:
In file included from src/QScoreAdapter.h:4:
In file included from ../../include/U2Core/MAlignment.h:1:
In file included from ../../include/U2Core/../../corelibs/U2Core/src/datatype/MAlignment.h:25:
In file included from ../../include/U2Core/../../corelibs/U2Core/src/datatype/MAlignmentInfo.h:25:
In file included from /usr/local/include/qt5/QtCore/QString:1:
In file included from /usr/local/include/qt5/QtCore/qstring.h:41:
In file included from /usr/local/include/qt5/QtCore/qchar.h:37:
In file included from /usr/local/include/qt5/QtCore/qglobal.h:39:
/usr/include/c++/v1/cstddef:43:15: fatal error: 'stddef.h' file not found
#include_next <stddef.h>
              ^

This is because the port tries to add /usr/include as a system include
directory, using -isystem, and this screws up the order of include
directories.  Fix it by patching up a number of .pri files to avoid
using the -isystem flag.

Approved by:	h2+fbsdports@fsfe.org (maintainer)
PR:		209366
MFH:		2016Q2
2016-05-07 19:38:53 +00:00

78 lines
2.2 KiB
Makefile

# Created by: Hannes Hauswedell <h2+fbsdports@fsfe.org>
# $FreeBSD$
PORTNAME= ugene
DISTVERSION= 1.22.0
PORTREVISION= 1
CATEGORIES= biology science
MASTER_SITES= http://ugene.unipro.ru/downloads/
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} QueryDesigner_UserManual.pdf \
UniproUGENE_UserManual.pdf WorkflowDesigner_UserManual.pdf
DIST_SUBDIR= ${PORTNAME}
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= h2+fbsdports@fsfe.org
COMMENT= Free, open-source, cross-platform bioinformatics toolkit
LICENSE= GPLv2
RUN_DEPENDS= bash:shells/bash
USES= desktop-file-utils execinfo qmake
USE_GL= glu
USE_QT5= buildtools_build linguisttools_build scripttools_build \
gui network printsupport script sql svg webkit widgets xml \
imageformats_run
QMAKE_ARGS= INSTALL_PREFIX="${PREFIX}" UGENE_INSTALL_DATA="${DATADIR}" \
INSTALL_MANDIR="${MAN1PREFIX}/man" LRELEASE="${LRELEASE}" \
LUPDATE="${LUPDATE}"
ALL_TARGET= release
DOCSDIR= ${DATADIR}/manuals
OPTIONS_DEFINE= DOCS
DOCS_DESC= Install official UGENE documentation (PDF)
.include <bsd.port.pre.mk>
# Required for Google Test code
.if ${OSVERSION} > 1000054
CXXFLAGS+= -std=c++11
.endif
.if ${ARCH} == amd64
# XXX: need to manually tell the build we are on x64
QMAKE_ARGS+= CONFIG+=x64
PLIST_SUB+= NOX64="@comment "
.else
PLIST_SUB+= NOX64=""
.endif
.if ${MACHINE_CPU:Msse2}
QMAKE_ARGS+= UGENE_SSE2_DETECTED=1
PLIST_SUB+= SSE2=""
.else
PLIST_SUB+= SSE2="@comment "
.endif
post-extract:
@${MKDIR} ${WRKSRC}/data/manuals
${CP} -p ${_DISTDIR}/*.pdf ${WRKSRC}/data/manuals
post-patch:
# yes, bash is required, stuff will not execute with sh
@${REINPLACE_CMD} -e 's|/bin/bash|/usr/bin/env bash|' \
${WRKSRC}/src/gen_bin_script.cmd \
${WRKSRC}/installer/_common_data/ugene
@${REINPLACE_CMD} -e 's|-bit version|& for ${OPSYS}/${ARCH}|' \
${WRKSRC}/src/ugeneui/src/main_window/AboutDialogController.cpp
@${REINPLACE_CMD} -e '/unix_not_mac/,+11d' \
${WRKSRC}/src/corelibs/U2Core/U2Core.pri
@${REINPLACE_CMD} 's, -lbreakpad,,' \
${WRKSRC}/src/corelibs/U2Private/U2Private.pri \
${WRKSRC}/src/plugins_checker/plugins_checker.pri \
${WRKSRC}/src/ugenecl/ugenecl.pri \
${WRKSRC}/src/ugeneui/ugeneui.pri
.include <bsd.port.post.mk>