media-gfx/solvespace: new package
authorktrace <ktrace@yandex.ru>
Wed, 7 Nov 2018 21:26:46 +0000 (00:26 +0300)
committerMichał Górny <mgorny@gentoo.org>
Fri, 9 Nov 2018 19:47:12 +0000 (20:47 +0100)
Parametric 3D/2D CAD software with DXF import/export and STL export for
3D printing.

Signed-off-by: Victor Kustov <ktrace@yandex.ru>
Package-Manager: Portage-2.3.49, Repoman-2.3.10
Closes: https://github.com/gentoo/gentoo/pull/10115
Signed-off-by: Michał Górny <mgorny@gentoo.org>
media-gfx/solvespace/Manifest [new file with mode: 0644]
media-gfx/solvespace/metadata.xml [new file with mode: 0644]
media-gfx/solvespace/solvespace-2.3.ebuild [new file with mode: 0644]

diff --git a/media-gfx/solvespace/Manifest b/media-gfx/solvespace/Manifest
new file mode 100644 (file)
index 0000000..2e0dfeb
--- /dev/null
@@ -0,0 +1,2 @@
+DIST libdxfrw-0.6.3-87ff1082f49b1286a033ac8f38fe8dde0975bb8b.tar.gz 691867 BLAKE2B bd3414930efe8cc1185a20f889dda3ec8ea46e40d3a1a4c24975683fc444161acdff576a1f40c34203e523e88bacf3841c50928340e7865650a113e65375f930 SHA512 0f8e2561887fbc5101787f0d7818328864b5c4a679ef539fcdbda8c124ab4a808663f9ba645d397f154596eab1eb7c6f0bdf3883bf6975392863e01bada3a1f0
+DIST solvespace-2.3.tar.gz 2115940 BLAKE2B 67e2d81e0a609d0344a6f28d33a78609b01c7105785f93aa1124f0592fe0e31d4846e6dd406339b2ef2c5f3961f91302a73c5391fe2e0f435e78c3a97ed67612 SHA512 9d22e467337591cd9a4935124d18733b8337f5785ab5738f4a94300f283ffe7d313569e379ae77e509d14182ffde8c9db7beaebb46ea7c0507c6b05010fe1a56
diff --git a/media-gfx/solvespace/metadata.xml b/media-gfx/solvespace/metadata.xml
new file mode 100644 (file)
index 0000000..e63161b
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+    <maintainer type="person">
+        <email>ktrace@yandex.ru</email>
+        <name>Victor Kustov</name>
+    </maintainer>
+    <maintainer type="project">
+        <email>proxy-maint@gentoo.org</email>
+        <name>Proxy Maintainers</name>
+    </maintainer>
+    <longdescription lang="en">
+    Solvespace is a parametric 2D/3D CAD tool. Applications include:
+    - modeling 3d parts — draw with extrudes, revolves, and Boolean (union / difference) operations
+    - modeling 2d parts — draw the part as a single section, and export DXF, PDF, SVG; use 3d assembly to verify fit
+    - 3d-printed parts — export the STL or other triangle mesh expected by most 3d printers
+    - preparing CAM data — export 2d vector art for a waterjet machine or laser cutter;
+      or generate STEP or STL, for import into third-party CAM software for machining
+    - mechanism design — use the constraint solver to simulate planar or spatial linkages, with pin, ball, or slide joints
+    - plane and solid geometry — replace hand-solved trigonometry and spreadsheets with a live dimensioned drawing
+    </longdescription>
+</pkgmetadata>
diff --git a/media-gfx/solvespace/solvespace-2.3.ebuild b/media-gfx/solvespace/solvespace-2.3.ebuild
new file mode 100644 (file)
index 0000000..ca5fc52
--- /dev/null
@@ -0,0 +1,56 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+DXFRW_COMMIT="87ff1082f49b1286a033ac8f38fe8dde0975bb8b"
+DXFRW_PV="0.6.3"
+DXFRW_P="libdxfrw-${DXFRW_PV}-${DXFRW_COMMIT}"
+
+inherit cmake-utils gnome2-utils
+
+DESCRIPTION="Parametric 2d/3d CAD"
+HOMEPAGE="http://solvespace.com"
+SRC_URI="https://github.com/solvespace/solvespace/archive/v${PV}.tar.gz -> ${P}.tar.gz
+       https://github.com/solvespace/libdxfrw/archive/${DXFRW_COMMIT}.tar.gz -> ${DXFRW_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-cpp/gtkmm:2.4=
+       dev-cpp/pangomm:1.4
+       dev-libs/json-c:=
+       media-libs/fontconfig
+       media-libs/freetype:2
+       media-libs/glew:0=
+       media-libs/libpng:0=
+       virtual/opengl"
+DEPEND="${RDEPEND}
+       virtual/pkgconfig"
+
+# NOTE: please keep commit hash actually when version up
+GIT_COMMIT_HASH="4d1e1341d926ac356b295d5cc3d61c7a6cd7d07d"
+
+src_prepare() {
+       rm -r "extlib/libdxfrw" || die  "rm extlib/libdxfrw failed"
+       mv "${WORKDIR}/libdxfrw-${DXFRW_COMMIT}" "extlib/libdxfrw" || die "move libdxfrw-${DXFRW_COMMIT} failed"
+       sed -i '/include(GetGitCommitHash)/d' CMakeLists.txt || die 'remove GetGitCommitHash by sed failed'
+       # fixed in master already
+       sed -i -e 's/CHAR_WIDTH/CHAR_WIDTH_/' src/textwin.cpp src/toolbar.cpp src/win32/w32main.cpp src/ui.h || die 'sed failed'
+       cmake-utils_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DGIT_COMMIT_HASH="${GIT_COMMIT_HASH}"
+       )
+       cmake-utils_src_configure
+}
+
+pkg_postinst() {
+       gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+       gnome2_icon_cache_update
+}