1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-20 08:27:15 +00:00
freebsd-ports/cad/qcad/Makefile

81 lines
2.4 KiB
Makefile
Raw Normal View History

# Created by: Thomas Gellekum <tg@FreeBSD.org>
# $FreeBSD$
PORTNAME= qcad
PORTVERSION= 3.17.3.6
DISTVERSIONPREFIX= v
2017-06-19 17:02:46 +00:00
#PORTREVISION= 1
CATEGORIES= cad
DIST_SUBDIR= ${PORTNAME}
MAINTAINER= mr@FreeBSD.org
COMMENT= Professional CAD system
LICENSE= GPLv3
BUILD_DEPENDS= bash:shells/bash \
${LOCALBASE}/lib/libopenNURBS.a:graphics/opennurbs
LIB_DEPENDS= libquazip.so:archivers/quazip
MAKE_JOBS_UNSAFE=yes
2014-08-04 23:06:51 +00:00
USES= execinfo gmake qmake
USE_GITHUB= yes
USE_LDCONFIG= yes
USE_QT4= qmake_build codecs-cn codecs-jp codecs-kr codecs-tw corelib \
designer gui help imageformats moc_build network opengl rcc_build script \
scripttools sql svg uic_build xml xmlpatterns webkit
2013-09-11 13:15:46 +00:00
USE_GL= glu
DESKTOP_ENTRIES="QCad" \
"" \
"${DATADIR}/scripts/qcad_icon.png" \
"${PREFIX}/bin/qcad-bin" \
"" \
true
.if defined(WITH_DEBUG)
RESDIR= ${WRKSRC}/debug
.else
RESDIR= ${WRKSRC}/release
.endif
SHRLIBS= qcadcore qcadecmaapi qcadentity qcadgrid qcadgui qcadoperations \
qcadsnap qcadspatialindex qcadstemmer spatialindexnavel qcadzip
STALIBS= dxflib stemmer
SHRDIR= fonts libraries linetypes patterns plugins scripts ts
#QSCRIPTS should not be installed to avoid conflicts with texlive-base
QSCRIPTS= bbox dwg2bmp dwg2pdf dwg2svg
pre-configure:
2015-01-30 17:20:20 +00:00
${REINPLACE_CMD} -e "s|%%DATADIR%%|${DATADIR}|" \
${WRKSRC}/src/core/RS.cpp
${REINPLACE_CMD} -e "s|%%DATADIR%%|${DATADIR}|" \
${WRKSRC}/src/core/RSettings.cpp
Update the Qt4 ports to 4.8.7. According to upstream, this is the last planned Qt4 release. A list of changes since 4.8.6 can be found here: <http://download.qt.io/official_releases/qt/4.8/4.8.7/changes-4.8.7> Porting notes and changes: - Remove several patches that have been upstreamed. - Make Uses/qmake.mk pass the contents of LIBS to the qmake environment. [1] - Repurpose devel/qt4/files/extrapatch-src-corelib-global-qglobal.h now the original patch is part of the release (curiously enough, the original patch was never actually used, as the ?= assignment in r362837 after r362770 was never possible). This works around the way compiler support for C++11 features is detected in Qt 4.8.7: while it originally only uses the compiler to determine if something is supported or not, the initializer lists feature also depends on the C++ standard library being used. It's a problem in FreeBSD 9.x, where USES=compiler:c++0x or USES=compiler:c++11-lang means we will use clang to build a port but use libstdc++ from base (GCC 4.2). The latter obviously does not support initializer lists, and the build fails because Qt tries to include headers that do not exist (<initializer_list>). Since detecting libstdc++'s version is not trivial (we need to include a non-lightweight header like cstdio and then check for __GLIBCXX__), we just enable Q_COMPILER_INITIALIZER_LISTS support only when libc++ is used (there should be no reason for someone to be using clang with GCC 4.8's libstdc++, for example). x11/kdelibs4's FindQt4.cmake had to include a backported change from the upstream FindQt4.cmake in CMake itself to use a C++ compiler to detect flags like Q_WS_X11, otherwise the inclusion of <ciso646> in qglobal.h makes the build fail. This patch contains changes by me, makc@ and alonso@. PR: 202552 [1] PR: 202808 [exp-run] Submitted by: pawel@ [1]
2015-09-16 08:55:04 +00:00
# Temporary hack for Qt 4.8.7 support while upstream does not add proper
# bindings.
2015-11-28 21:09:31 +00:00
# (cd ${WRKSRC}/src/3rdparty/qt-labs-qtscriptgenerator-4.8.5 && \
# ${COPYTREE_SHARE} . ../qt-labs-qtscriptgenerator-4.8.7)
# (cd ${WRKSRC}/src/3rdparty/qt-labs-qtscriptgenerator-4.8.7 && \
# mv qt-labs-qtscriptgenerator-4.8.5.pro qt-labs-qtscriptgenerator-4.8.7.pro)
do-install:
${INSTALL_PROGRAM} ${RESDIR}/qcad-bin ${STAGEDIR}${PREFIX}/bin/
${LN} -sf qcad-bin ${STAGEDIR}${PREFIX}/bin/qcad
.for lib in ${SHRLIBS:C|^|lib|:C|$|.so|}
${INSTALL_LIB} ${RESDIR}/${lib} ${STAGEDIR}${PREFIX}/lib/${lib}.0
2017-02-24 14:17:01 +00:00
${LN} -sf ${lib}.0 ${STAGEDIR}${PREFIX}/lib/${lib}
.endfor
.for lib in ${STALIBS:C|^|lib|:C|$|.a|}
${INSTALL_DATA} ${RESDIR}/${lib} ${STAGEDIR}${PREFIX}/lib/
.endfor
${MKDIR} ${STAGEDIR}${DATADIR}
.for dir in ${SHRDIR}
cd ${WRKSRC} && ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${DATADIR}
.endfor
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}
.include <bsd.port.mk>