From owner-svn-ports-head@freebsd.org Fri Oct 21 09:01:12 2016 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 45A3BC1B5A4; Fri, 21 Oct 2016 09:01:12 +0000 (UTC) (envelope-from pi@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 16BB9274; Fri, 21 Oct 2016 09:01:12 +0000 (UTC) (envelope-from pi@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9L91BIK071187; Fri, 21 Oct 2016 09:01:11 GMT (envelope-from pi@FreeBSD.org) Received: (from pi@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9L91AUT071182; Fri, 21 Oct 2016 09:01:10 GMT (envelope-from pi@FreeBSD.org) Message-Id: <201610210901.u9L91AUT071182@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pi set sender to pi@FreeBSD.org using -f From: Kurt Jaeger Date: Fri, 21 Oct 2016 09:01:10 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r424395 - in head/math/cadabra2: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Oct 2016 09:01:12 -0000 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 (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@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 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 + 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