summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-mathematics/yacas/Manifest1
-rw-r--r--sci-mathematics/yacas/files/yacas-1.7.0-use-bundled-not-external.patch112
-rw-r--r--sci-mathematics/yacas/yacas-1.7.0-r1.ebuild57
3 files changed, 170 insertions, 0 deletions
diff --git a/sci-mathematics/yacas/Manifest b/sci-mathematics/yacas/Manifest
index d55969a0d637..ea8473edce24 100644
--- a/sci-mathematics/yacas/Manifest
+++ b/sci-mathematics/yacas/Manifest
@@ -1 +1,2 @@
DIST yacas-1.7.0.tar.gz 2610016 BLAKE2B 62400d8aaba192a088bb48e0e12ff79e7e2d24af4825b2d53aeffa7aace011beb728118d56e5a9dd9e7dedba545706bbf77cb9ef27b5075e555fc5cc1983dc5e SHA512 6da7d454b3a74638d743c5e8168b27b9a8a71e2c41fe3f35bcb397fb80e866277ddb5b4e15167e2c0d11dd6033491ca72b560440fe2db6dc34b91b2ad047ca1d
+DIST yacas-bundled-1.7.0.tar.xz 4940180 BLAKE2B e191f3806df0c15149df053c47b1f11a5113ee3b55cbc9a78bfaec058fb5d783e4157687bf4ee9a953bcd23a4e3e49a59e6743e4471e31209a9e24e03ddc8ff5 SHA512 a9c519d0721df69ec81998a3ec17043b59230f5b0650fc2fd6555eccb5503460f387433c019ae15bbd0fd3ff11e697d6da56a3d08aac5fadf4ff023ca5d8691c
diff --git a/sci-mathematics/yacas/files/yacas-1.7.0-use-bundled-not-external.patch b/sci-mathematics/yacas/files/yacas-1.7.0-use-bundled-not-external.patch
new file mode 100644
index 000000000000..f66a62987e45
--- /dev/null
+++ b/sci-mathematics/yacas/files/yacas-1.7.0-use-bundled-not-external.patch
@@ -0,0 +1,112 @@
+From deda267cd182e48c8af657c0d26dbeeb04879d6f Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Wed, 24 Jul 2019 09:58:58 +0200
+Subject: [PATCH] Install bundled files from repacked tarball, disable external
+ downloads
+
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ cyacas/yacas-gui/resources/CMakeLists.txt | 77 +++++------------------
+ 1 file changed, 17 insertions(+), 60 deletions(-)
+
+diff --git a/cyacas/yacas-gui/resources/CMakeLists.txt b/cyacas/yacas-gui/resources/CMakeLists.txt
+index ca3bf32..bae7076 100644
+--- a/cyacas/yacas-gui/resources/CMakeLists.txt
++++ b/cyacas/yacas-gui/resources/CMakeLists.txt
+@@ -1,49 +1,6 @@
+ include (ExternalProject)
+
+-ExternalProject_Add (yacas-gui_codemirror
+- PREFIX external_packages
+- URL https://github.com/codemirror/CodeMirror/archive/5.35.0.zip
+- CONFIGURE_COMMAND npm install --no-progress
+- BUILD_IN_SOURCE 1
+- BUILD_COMMAND npm run-script build
+- INSTALL_COMMAND "")
+-
+-ExternalProject_Add (yacas-gui_flot
+- PREFIX external_packages
+- URL https://github.com/flot/flot/archive/v0.8.3.zip
+- CONFIGURE_COMMAND ""
+- BUILD_COMMAND ""
+- INSTALL_COMMAND "")
+-
+-ExternalProject_Add (yacas-gui_three
+- PREFIX external_packages
+- URL https://github.com/mrdoob/three.js/archive/r90.zip
+- CONFIGURE_COMMAND ""
+- BUILD_COMMAND ""
+- INSTALL_COMMAND "")
+-
+-ExternalProject_Add (yacas-gui_vis
+- PREFIX external_packages
+- URL https://github.com/almende/vis/archive/v4.21.0.zip
+- CONFIGURE_COMMAND ""
+- BUILD_COMMAND ""
+- INSTALL_COMMAND "")
+-
+-ExternalProject_Add (yacas-gui_mathjax
+- PREFIX external_packages
+- URL https://github.com/mathjax/MathJax/archive/2.7.3.zip
+- CONFIGURE_COMMAND ""
+- BUILD_COMMAND ""
+- INSTALL_COMMAND "")
+-
+-ExternalProject_Add (yacas-gui_delanuay
+- PREFIX external_packages
+- URL https://github.com/ironwallaby/delaunay/archive/1.0.1.zip
+- CONFIGURE_COMMAND ""
+- BUILD_COMMAND ""
+- INSTALL_COMMAND "")
+-
+-install (FILES ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_delanuay/delaunay.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/plot3d)
++install (FILES yacas-gui_delanuay/delaunay.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/plot3d)
+
+ if (NOT APPLE)
+ install (FILES plot3d/plot3d.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/plot3d)
+@@ -55,26 +12,26 @@ if (NOT APPLE)
+ install (DIRECTORY pixmaps DESTINATION ${CMAKE_INSTALL_DATAROOTDIR})
+ install (DIRECTORY icons DESTINATION ${CMAKE_INSTALL_DATAROOTDIR})
+
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_codemirror/lib DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror)
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_codemirror/mode/yacas DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror/mode)
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_codemirror/addon/edit DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror/addon)
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_codemirror/addon/hint DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror/addon)
++ install (DIRECTORY yacas-gui_codemirror/lib DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror)
++ install (DIRECTORY yacas-gui_codemirror/mode/yacas DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror/mode)
++ install (DIRECTORY yacas-gui_codemirror/addon/edit DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror/addon)
++ install (DIRECTORY yacas-gui_codemirror/addon/hint DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/codemirror/addon)
+
+- install (FILES ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_flot/jquery.flot.js ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_flot/jquery.flot.resize.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/flot)
++ install (FILES yacas-gui_flot/jquery.flot.js yacas-gui_flot/jquery.flot.resize.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/flot)
+
+ install (FILES
+- ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_three/build/three.min.js
+- ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_three/examples/js/Detector.js
+- ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_three/examples/js/controls/TrackballControls.js
+- ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_three/examples/js/renderers/CanvasRenderer.js
+- ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_three/examples/js/renderers/Projector.js
+- ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_three/examples/js/utils/SceneUtils.js
++ yacas-gui_three/build/three.min.js
++ yacas-gui_three/examples/js/Detector.js
++ yacas-gui_three/examples/js/controls/TrackballControls.js
++ yacas-gui_three/examples/js/renderers/CanvasRenderer.js
++ yacas-gui_three/examples/js/renderers/Projector.js
++ yacas-gui_three/examples/js/utils/SceneUtils.js
+ DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/three)
+
+- install (FILES ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_vis/dist/vis.min.css ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_vis/dist/vis.min.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/vis)
++ install (FILES yacas-gui_vis/dist/vis.min.css yacas-gui_vis/dist/vis.min.js DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/vis)
+
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_mathjax/fonts/HTML-CSS/STIX-Web/otf DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax/fonts/HTML-CSS/STIX-Web)
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_mathjax/fonts/HTML-CSS/STIX-Web/woff DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax/fonts/HTML-CSS/STIX-Web)
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_mathjax/fonts/HTML-CSS/TeX/otf DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax/fonts/HTML-CSS/TeX)
+- install (DIRECTORY ${CMAKE_BINARY_DIR}/cyacas/yacas-gui/resources/external_packages/src/yacas-gui_mathjax/unpacked DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax)
++ install (DIRECTORY yacas-gui_mathjax/fonts/HTML-CSS/STIX-Web/otf DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax/fonts/HTML-CSS/STIX-Web)
++ install (DIRECTORY yacas-gui_mathjax/fonts/HTML-CSS/STIX-Web/woff DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax/fonts/HTML-CSS/STIX-Web)
++ install (DIRECTORY yacas-gui_mathjax/fonts/HTML-CSS/TeX/otf DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax/fonts/HTML-CSS/TeX)
++ install (DIRECTORY yacas-gui_mathjax/unpacked DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/yacas/resources/mathjax)
+ endif ()
+--
+2.22.0
+
diff --git a/sci-mathematics/yacas/yacas-1.7.0-r1.ebuild b/sci-mathematics/yacas/yacas-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..99da4e3dd157
--- /dev/null
+++ b/sci-mathematics/yacas/yacas-1.7.0-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils
+
+DESCRIPTION="General purpose computer algebra system"
+HOMEPAGE="http://www.yacas.org/"
+SRC_URI="https://codeload.github.com/grzegorzmazur/${PN}/tar.gz/v${PV} -> ${P}.tar.gz
+gui? ( https://dev.gentoo.org/~asturm/distfiles/${PN}-bundled-${PV}.tar.xz )"
+
+LICENSE="GPL-2 gui? ( MIT Apache-2.0 OFL-1.1 )"
+SLOT="0/1"
+KEYWORDS="~amd64 ~x86"
+IUSE="gui +jupyter static-libs test"
+
+DEPEND="
+ gui? (
+ dev-qt/qtcore:5[icu]
+ dev-qt/qtgui:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtsql:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwebengine:5[widgets]
+ dev-qt/qtwidgets:5
+ )
+ jupyter? (
+ dev-libs/boost:=
+ dev-libs/jsoncpp:=
+ dev-libs/openssl:0=
+ dev-python/jupyter
+ net-libs/zeromq
+ >=net-libs/zmqpp-4.1.2
+ )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-gnuinstalldirs.patch"
+ "${FILESDIR}/${P}-use-bundled-not-external.patch" # bug 690534
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_CYACAS_BENCHMARKS=OFF
+ -DENABLE_DOCS=OFF # requires sphinxcontrib-bibtex
+ -DENABLE_JYACAS=OFF # requires manual install
+ -DENABLE_CYACAS_GUI=$(usex gui)
+ -DENABLE_CYACAS_KERNEL=$(usex jupyter)
+ -DENABLE_CYACAS_UNIT_TESTS=$(usex test)
+ )
+ cmake-utils_src_configure
+}