svn commit: r424395 - in head/math/cadabra2: . files
Kurt Jaeger
pi at FreeBSD.org
Fri Oct 21 09:01:12 UTC 2016
Author: pi
Date: Fri Oct 21 09:01:10 2016
New Revision: 424395
URL: https://svnweb.freebsd.org/changeset/ports/424395
Log:
math/cadabra2: update 2.0.816 -> 2.0.930
- Unbreaks GUI by applying two patches:
- Patch in boost headers to prevent EINPROGRESS mishandling
https://github.com/zaphoyd/websocketpp/issues/563
- Patch in websocketpp fixing IPv4 vs. IPv6 mismatch
https://github.com/zaphoyd/websocketpp/issues/587
- GUI option is made default
- Clones icons for the GUI app cadabra2-gui
- Adds "USE_TEX=texmf texhash" to allow for unincluded latex macros,
and to make tex hash local packages installed by cadabra2
- Verified that cadabra2 GUI now works fine - it is able to run
many examples from their website.
PR: 213329
Submitted by: Yuri Victorovich <yuri at rawbw.com> (maintainer)
Added:
head/math/cadabra2/files/patch-override_include_boost_asio_detail_impl_socket__ops.ipp (contents, props changed)
head/math/cadabra2/files/patch-override_include_websocketpp_transport_asio_endpoint.hpp (contents, props changed)
Deleted:
head/math/cadabra2/files/patch-CMakeLists.txt
Modified:
head/math/cadabra2/Makefile
head/math/cadabra2/distinfo
head/math/cadabra2/pkg-plist
Modified: head/math/cadabra2/Makefile
==============================================================================
--- head/math/cadabra2/Makefile Fri Oct 21 08:56:35 2016 (r424394)
+++ head/math/cadabra2/Makefile Fri Oct 21 09:01:10 2016 (r424395)
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= cadabra2
-PORTVERSION= 2.0.816
-PORTREVISION= 2
+PORTVERSION= 2.0.930
CATEGORIES= math
MAINTAINER= yuri at rawbw.com
@@ -12,9 +11,12 @@ COMMENT= Computer algebra system for sol
LICENSE= LGPL3
LICENSE_FILE= ${WRKSRC}/doc/license.txt
+PATCH_DEPENDS= ${NONEXISTENT}:devel/boost-libs:extract \
+ ${NONEXISTENT}:devel/websocketpp:extract
+BUILD_DEPENDS= ${LOCALBASE}/include/websocketpp/client.hpp:devel/websocketpp
LIB_DEPENDS= libboost_python.so:devel/boost-python-libs \
- libpcrecpp.so:devel/pcre \
libboost_system.so:devel/boost-libs \
+ libpcrecpp.so:devel/pcre \
libjsoncpp.so:devel/jsoncpp \
libgmp.so:math/gmp \
libuuid.so:misc/e2fsprogs-libuuid
@@ -23,23 +25,23 @@ RUN_DEPENDS= ${PYTHON_SITELIBDIR}/sympy/
USE_GITHUB= yes
GH_ACCOUNT= kpeeters
-GH_TAGNAME= 8258bfc
+GH_TAGNAME= 85ac041
BROKEN_FreeBSD_9= does not build: fatal error: 'type_traits' file not found
-GUI_BROKEN= Builds but has a WebSockets communication problem in the runtime
-GUI_CONFLICTS_BUILD= websocketpp-*
OPTIONS_DEFINE= GUI
+OPTIONS_DEFAULT=GUI
-USES= compiler:c++14-lang cmake gettext gmake pkgconfig python:2 sqlite
+USES= compiler:c++14-lang cmake gettext-runtime gmake pkgconfig python:2 sqlite
GUI_USE= GNOME=gtkmm30,gdkpixbuf2
-USE_TEX= base
+USE_TEX= base texmf texhash
USE_LDCONFIG= yes
OPTIONS_SUB= yes
GUI_INSTALLS_ICONS= yes
CMAKE_ARGS+= -DBOOST_ROOT=${LOCALBASE}
CMAKE_ARGS+= -DUSE_PYTHON_3:BOOL=OFF
+GUI_CMAKE_OFF+= -DENABLE_FRONTEND:BOOL=OFF
GUI_CMAKE_ON+= -DENABLE_FRONTEND:BOOL=ON
CXXFLAGS+= -I${LOCALBASE}/include
CXXFLAGS+= -I${LOCALBASE}/include/jsoncpp
@@ -48,7 +50,23 @@ CMAKE_CXX_FLAGS=${CXXFLAGS}
CMAKE_INSTALL_PREFIX=${PREFIX}
post-extract:
- ${RM} -r ${WRKSRC}/client_server/jsoncpp
+ @${RM} -r ${WRKSRC}/client_server/jsoncpp ${WRKSRC}/client_server/websocketpp
+
+pre-patch:
+ # workaround for https://github.com/zaphoyd/websocketpp/issues/563, so that the local patch can be applied
+ @${MKDIR} ${WRKSRC}/override/include/boost/asio/detail/impl
+ @${CP} `${MAKE} -C ${PORTSDIR}/devel/boost-libs -V WRKSRC`/boost/asio/detail/impl/socket_ops.ipp \
+ ${WRKSRC}/override/include/boost/asio/detail/impl/
+ # workaround for https://github.com/zaphoyd/websocketpp/issues/587, so that the local patch can be applied
+ @${MKDIR} ${WRKSRC}/override/include/websocketpp/transport/asio
+ @${CP} `${MAKE} -C ${PORTSDIR}/devel/websocketpp -V WRKSRC`/websocketpp/transport/asio/endpoint.hpp \
+ ${WRKSRC}/override/include/websocketpp/transport/asio/
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|"$${GIT_COMMIT_SERIAL}.$${GIT_SHORT_SHA}"|"FreeBSD port version=${PORTVERSION} tag=${GH_TAGNAME}"|' \
+ ${WRKSRC}/CMakeLists.txt
+ @${REINPLACE_CMD} -e 's|include_directories(|include_directories($${PROJECT_SOURCE_DIR}/override/include |' \
+ ${WRKSRC}/CMakeLists.txt
post-install:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/cadabra2html
@@ -57,5 +75,14 @@ post-install:
post-install-GUI-on:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/cadabra-gtk
+ @${GZIP_CMD} ${GZIP} < ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2.svg \
+ > ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2.svgz
+ @${RM} ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2.svg
+ @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/cadabra2.png \
+ ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/cadabra-gtk.png
+ @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/64x64/apps/cadabra2.png \
+ ${STAGEDIR}${PREFIX}/share/icons/hicolor/64x64/apps/cadabra-gtk.png
+ @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2.svgz \
+ ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra-gtk.svgz
.include <bsd.port.mk>
Modified: head/math/cadabra2/distinfo
==============================================================================
--- head/math/cadabra2/distinfo Fri Oct 21 08:56:35 2016 (r424394)
+++ head/math/cadabra2/distinfo Fri Oct 21 09:01:10 2016 (r424395)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1466580644
-SHA256 (kpeeters-cadabra2-2.0.816-8258bfc_GH0.tar.gz) = ca8b8179b9745737aaa5185825b00031ec5fa79ad23f27bc287254963a17e318
-SIZE (kpeeters-cadabra2-2.0.816-8258bfc_GH0.tar.gz) = 3880224
+TIMESTAMP = 1476032351
+SHA256 (kpeeters-cadabra2-2.0.930-85ac041_GH0.tar.gz) = 3d07c5e72fd3ae79214e9472d44c12e2b304ad91d992ced2377a0484a5c494b2
+SIZE (kpeeters-cadabra2-2.0.930-85ac041_GH0.tar.gz) = 3908288
Added: head/math/cadabra2/files/patch-override_include_boost_asio_detail_impl_socket__ops.ipp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/cadabra2/files/patch-override_include_boost_asio_detail_impl_socket__ops.ipp Fri Oct 21 09:01:10 2016 (r424395)
@@ -0,0 +1,19 @@
+--- override/include/boost/asio/detail/impl/socket_ops.ipp.orig 2016-10-09 22:39:18 UTC
++++ override/include/boost/asio/detail/impl/socket_ops.ipp
+@@ -469,7 +469,15 @@ template <typename SockLenType>
+ inline int call_connect(SockLenType msghdr::*,
+ socket_type s, const socket_addr_type* addr, std::size_t addrlen)
+ {
+- return ::connect(s, addr, (SockLenType)addrlen);
++ int res = ::connect(s, addr, (SockLenType)addrlen);
++ if (res == -1 && errno==EINPROGRESS) {
++ fd_set write_fd;
++ FD_ZERO(&write_fd);
++ FD_SET(s, &write_fd);
++ res = ::select (s+1, NULL, &write_fd,NULL,NULL);
++ res = res > 0 ? 0 : res;
++ }
++ return res;
+ }
+
+ int connect(socket_type s, const socket_addr_type* addr,
Added: head/math/cadabra2/files/patch-override_include_websocketpp_transport_asio_endpoint.hpp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/cadabra2/files/patch-override_include_websocketpp_transport_asio_endpoint.hpp Fri Oct 21 09:01:10 2016 (r424395)
@@ -0,0 +1,20 @@
+--- override/include/websocketpp/transport/asio/endpoint.hpp.orig 2016-10-09 22:39:45 UTC
++++ override/include/websocketpp/transport/asio/endpoint.hpp
+@@ -491,7 +491,7 @@ public:
+ * @param ec Set to indicate what error occurred, if any.
+ */
+ void listen(uint16_t port, lib::error_code & ec) {
+- listen(lib::asio::ip::tcp::v6(), port, ec);
++ listen(lib::asio::ip::tcp::v4(), port, ec);
+ }
+
+ /// Set up endpoint for listening on a port
+@@ -507,7 +507,7 @@ public:
+ * @param ec Set to indicate what error occurred, if any.
+ */
+ void listen(uint16_t port) {
+- listen(lib::asio::ip::tcp::v6(), port);
++ listen(lib::asio::ip::tcp::v4(), port);
+ }
+
+ /// Set up endpoint for listening on a host and service (exception free)
Modified: head/math/cadabra2/pkg-plist
==============================================================================
--- head/math/cadabra2/pkg-plist Fri Oct 21 08:56:35 2016 (r424394)
+++ head/math/cadabra2/pkg-plist Fri Oct 21 09:01:10 2016 (r424395)
@@ -13,7 +13,10 @@ lib/libcadabra_server.so
%%GUI%%%%DATADIR%%/manual/algorithms/distribute.cnb
%%GUI%%share/icons/hicolor/256x256/apps/cadabra2.png
%%GUI%%share/icons/hicolor/64x64/apps/cadabra2.png
-%%GUI%%share/icons/hicolor/scalable/apps/cadabra2.svg
+%%GUI%%share/icons/hicolor/scalable/apps/cadabra2.svgz
+%%GUI%%share/icons/hicolor/256x256/apps/cadabra-gtk.png
+%%GUI%%share/icons/hicolor/64x64/apps/cadabra-gtk.png
+%%GUI%%share/icons/hicolor/scalable/apps/cadabra-gtk.svgz
%%GUI%%%%TEXMFLOCALDIR%%/tex/latex/cadabra2/breqn.sty
%%GUI%%%%TEXMFLOCALDIR%%/tex/latex/cadabra2/cmbase.sym
%%GUI%%%%TEXMFLOCALDIR%%/tex/latex/cadabra2/flexisym.sty
@@ -23,3 +26,74 @@ lib/libcadabra_server.so
%%GUI%%%%TEXMFLOCALDIR%%/tex/latex/cadabra2/msabm.sym
%%GUI%%%%TEXMFLOCALDIR%%/tex/latex/cadabra2/tableaux.sty
%%GUI%%@dir %%DATADIR%%/manual/properties
+%%GUI%%%%DATADIR%%/manual/algorithms/asym.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/canonicalise.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/collect_factors.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/collect_terms.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/combine.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/complete.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/decompose_product.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/drop_weight.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/eliminate_kronecker.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/eliminate_metric.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/epsilon_to_delta.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/evaluate.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/expand.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/expand_delta.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/expand_diracbar.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/expand_power.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/factor_in.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/factor_out.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/fierz.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/integrate_by_parts.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/join_gamma.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/keep_weight.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/product_rule.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/reduce_delta.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/rename_dummies.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/rewrite_indices.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/sort_product.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/sort_sum.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/split_gamma.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/split_index.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/substitute.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/take_match.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/unwrap.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/vary.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/young_project_product.cnb
+%%GUI%%%%DATADIR%%/manual/algorithms/young_project_tensor.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Accent.cnb
+%%GUI%%%%DATADIR%%/manual/properties/AntiCommuting.cnb
+%%GUI%%%%DATADIR%%/manual/properties/AntiSymmetric.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Commuting.cnb
+%%GUI%%%%DATADIR%%/manual/properties/CommutingAsProduct.cnb
+%%GUI%%%%DATADIR%%/manual/properties/CommutingAsSum.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Coordinate.cnb
+%%GUI%%%%DATADIR%%/manual/properties/DAntiSymmetric.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Depends.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Derivative.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Diagonal.cnb
+%%GUI%%%%DATADIR%%/manual/properties/DiracBar.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Distributable.cnb
+%%GUI%%%%DATADIR%%/manual/properties/EpsilonTensor.cnb
+%%GUI%%%%DATADIR%%/manual/properties/FilledTableau.cnb
+%%GUI%%%%DATADIR%%/manual/properties/GammaMatrix.cnb
+%%GUI%%%%DATADIR%%/manual/properties/ImplicitIndex.cnb
+%%GUI%%%%DATADIR%%/manual/properties/IndexInherit.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Indices.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Integer.cnb
+%%GUI%%%%DATADIR%%/manual/properties/InverseMetric.cnb
+%%GUI%%%%DATADIR%%/manual/properties/KroneckerDelta.cnb
+%%GUI%%%%DATADIR%%/manual/properties/LaTeXForm.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Metric.cnb
+%%GUI%%%%DATADIR%%/manual/properties/NonCommuting.cnb
+%%GUI%%%%DATADIR%%/manual/properties/PartialDerivative.cnb
+%%GUI%%%%DATADIR%%/manual/properties/RiemannTensor.cnb
+%%GUI%%%%DATADIR%%/manual/properties/SatisfiesBianchi.cnb
+%%GUI%%%%DATADIR%%/manual/properties/SelfAntiCommuting.cnb
+%%GUI%%%%DATADIR%%/manual/properties/SelfCommuting.cnb
+%%GUI%%%%DATADIR%%/manual/properties/SelfNonCommuting.cnb
+%%GUI%%%%DATADIR%%/manual/properties/SortOrder.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Spinor.cnb
+%%GUI%%%%DATADIR%%/manual/properties/Symmetric.cnb
+%%GUI%%%%DATADIR%%/manual/properties/TableauSymmetry.cnb
More information about the svn-ports-head
mailing list