2013-08-21 07:52:35 +00:00
|
|
|
# Created by: Thomas Gellekum <tg@FreeBSD.org>
|
|
|
|
# $FreeBSD$
|
|
|
|
|
|
|
|
PORTNAME= qcad
|
2017-08-13 15:23:38 +00:00
|
|
|
PORTVERSION= 3.17.3.6
|
2015-05-18 17:07:45 +00:00
|
|
|
DISTVERSIONPREFIX= v
|
2017-06-19 17:02:46 +00:00
|
|
|
#PORTREVISION= 1
|
2013-08-21 07:52:35 +00:00
|
|
|
CATEGORIES= cad
|
|
|
|
DIST_SUBDIR= ${PORTNAME}
|
|
|
|
|
|
|
|
MAINTAINER= mr@FreeBSD.org
|
|
|
|
COMMENT= Professional CAD system
|
|
|
|
|
|
|
|
LICENSE= GPLv3
|
|
|
|
|
2016-04-01 13:29:15 +00:00
|
|
|
BUILD_DEPENDS= bash:shells/bash \
|
|
|
|
${LOCALBASE}/lib/libopenNURBS.a:graphics/opennurbs
|
|
|
|
LIB_DEPENDS= libquazip.so:archivers/quazip
|
2013-08-21 07:52:35 +00:00
|
|
|
|
2013-11-05 20:34:42 +00:00
|
|
|
MAKE_JOBS_UNSAFE=yes
|
2013-08-21 07:52:35 +00:00
|
|
|
|
2014-08-04 23:06:51 +00:00
|
|
|
USES= execinfo gmake qmake
|
2015-05-18 17:07:45 +00:00
|
|
|
USE_GITHUB= yes
|
2013-08-21 07:52:35 +00:00
|
|
|
USE_LDCONFIG= yes
|
2013-10-10 12:47:00 +00:00
|
|
|
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
|
2013-08-21 07:52:35 +00:00
|
|
|
|
2013-10-10 12:47:00 +00:00
|
|
|
DESKTOP_ENTRIES="QCad" \
|
|
|
|
"" \
|
2013-08-21 07:52:35 +00:00
|
|
|
"${DATADIR}/scripts/qcad_icon.png" \
|
|
|
|
"${PREFIX}/bin/qcad-bin" \
|
2013-10-10 12:47:00 +00:00
|
|
|
"" \
|
|
|
|
true
|
2013-08-21 07:52:35 +00:00
|
|
|
|
|
|
|
.if defined(WITH_DEBUG)
|
|
|
|
RESDIR= ${WRKSRC}/debug
|
|
|
|
.else
|
|
|
|
RESDIR= ${WRKSRC}/release
|
|
|
|
.endif
|
|
|
|
|
|
|
|
SHRLIBS= qcadcore qcadecmaapi qcadentity qcadgrid qcadgui qcadoperations \
|
2016-05-19 10:57:35 +00:00
|
|
|
qcadsnap qcadspatialindex qcadstemmer spatialindexnavel qcadzip
|
2013-08-21 07:52:35 +00:00
|
|
|
STALIBS= dxflib stemmer
|
2017-08-13 15:23:38 +00:00
|
|
|
SHRDIR= fonts libraries linetypes patterns plugins scripts ts
|
2015-01-19 17:30:48 +00:00
|
|
|
#QSCRIPTS should not be installed to avoid conflicts with texlive-base
|
2013-08-21 07:52:35 +00:00
|
|
|
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
|
2013-08-21 07:52:35 +00:00
|
|
|
${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
|
2014-05-05 20:47:22 +00:00
|
|
|
# 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)
|
2014-05-05 20:47:22 +00:00
|
|
|
|
2013-08-21 07:52:35 +00:00
|
|
|
do-install:
|
2013-10-10 12:47:00 +00:00
|
|
|
${INSTALL_PROGRAM} ${RESDIR}/qcad-bin ${STAGEDIR}${PREFIX}/bin/
|
2016-06-23 07:09:57 +00:00
|
|
|
${LN} -sf qcad-bin ${STAGEDIR}${PREFIX}/bin/qcad
|
2013-08-21 07:52:35 +00:00
|
|
|
.for lib in ${SHRLIBS:C|^|lib|:C|$|.so|}
|
2013-10-10 12:47:00 +00:00
|
|
|
${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}
|
2013-08-21 07:52:35 +00:00
|
|
|
.endfor
|
|
|
|
.for lib in ${STALIBS:C|^|lib|:C|$|.a|}
|
2015-05-20 01:21:11 +00:00
|
|
|
${INSTALL_DATA} ${RESDIR}/${lib} ${STAGEDIR}${PREFIX}/lib/
|
2013-08-21 07:52:35 +00:00
|
|
|
.endfor
|
2013-10-10 12:47:00 +00:00
|
|
|
${MKDIR} ${STAGEDIR}${DATADIR}
|
2013-08-21 07:52:35 +00:00
|
|
|
.for dir in ${SHRDIR}
|
2013-10-10 12:47:00 +00:00
|
|
|
cd ${WRKSRC} && ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${DATADIR}
|
2013-08-21 07:52:35 +00:00
|
|
|
.endfor
|
2013-10-10 12:47:00 +00:00
|
|
|
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
|
|
|
|
cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}
|
2013-08-21 07:52:35 +00:00
|
|
|
|
|
|
|
.include <bsd.port.mk>
|