summaryrefslogtreecommitdiff
path: root/media-gfx/librecad
diff options
context:
space:
mode:
Diffstat (limited to 'media-gfx/librecad')
-rw-r--r--media-gfx/librecad/Manifest2
-rw-r--r--media-gfx/librecad/files/librecad-2.1.3-gcc-9.patch209
-rw-r--r--media-gfx/librecad/librecad-2.1.3-r5.ebuild51
3 files changed, 262 insertions, 0 deletions
diff --git a/media-gfx/librecad/Manifest b/media-gfx/librecad/Manifest
index 5ceaa2897606..a5c54d4794df 100644
--- a/media-gfx/librecad/Manifest
+++ b/media-gfx/librecad/Manifest
@@ -1,5 +1,7 @@
+AUX librecad-2.1.3-gcc-9.patch 8494 BLAKE2B 85f7cfd7822d27c4b76b6cc9b71f9667b912ef80229e2a70110155d4b52f0e203b186ffb6a0be160d6d2aadcaf241994d7f78d81a096d7540c46b946ed7cb892 SHA512 5adb8086244ec18e78f503b7522ea79213b629d297bb07fad0c21ae1e205731fd544aff7e979f1cc5709542a23311c771d61f13f4ba09f34baff9a24deae5eed
AUX librecad-2.1.3-qt-5.11.patch 1396 BLAKE2B 80e637b724df81dce60c17354bed56a2329dd4c3f445b40ea18a4a49614f2ee34114e1b6cc008b29e2dbd7b65c53340aaa447173f6f4d23d80e1a8809131aae7 SHA512 5e4ae43ac89fc8acf779fec9e062cac3896f0e41b0bf7fdab91ef128ab1a20a4ecda71ef332d9af7403f11a813323cc509e0682e5ffdf97786599271a2711f25
DIST librecad-2.1.3.tar.gz 22415288 BLAKE2B fb920113a7e4b2e9e7e3425f77364c36f6be676a3cd109798786b06d31698fd11437bc7f50cb843ca02d761730e83db7fde475d1bce6a65336a845b5b0114918 SHA512 246cffcc1ea3389997b4a738ab5e3d78e8c1096817ecb1ca28f38d601bc5d1a95f60798ac82308914a34da7b5dbc302b8363cf8b58a97221fdc8ee63010adc6c
EBUILD librecad-2.1.3-r4.ebuild 1102 BLAKE2B 8f9a34ce4d164d741fd9c053a956eb28b289d2287f1a627ac11362b47799390753db65e32ace5b57bd2ad0c9f2b84223f86fd9fd77160c0f85a31915b7041c1b SHA512 907a94b6d98f6dfc49e33d2fcb1611b76cbb5f309b22c4ed5ae51ffaaefab146379b39e42849f7bcc97bb7a0f394e31b6df82bd720537ddc387aeaced110a40b
+EBUILD librecad-2.1.3-r5.ebuild 1132 BLAKE2B 1f2f4506ac904e51304f45ce788d4a1b610419297ea0666b481e6bb7f759777b6ad2dbaf777d17707ebe844fa525e76e2faad4e138883c917f5e1ab2688a7229 SHA512 dd4a522f66341db71ef068212781ce482d79220faa9e554c8f5c6e0ff4e95f754214d6e6e0e69ce0b0e151081750de164807d37d6c3d85a1d9602a50e7b87c98
EBUILD librecad-9999.ebuild 997 BLAKE2B c2f46819e1188ac08ff278385f696c578dac20c707b666d5fe297c2ff19b3f8c37f048e8c3083acacf4f7165378ed5f5de37209b6eff50fd73b8970dd7377b18 SHA512 8e8633998807024c30de31be9eb996b5a6abb1ab416247258e35b1497ea9824b7035556201b3a9c8c546cb3402406344353cfca37ce5d2fbe268bfaafe693b77
MISC metadata.xml 459 BLAKE2B 8b648b5abdd62d9df306c90d182164694c753231b16ad37319863ee37feac91b2e0fcc89212b5259a899287a638a68cb2e48fcc55af8a076d23b201e6b38ebb3 SHA512 108977904dfb070a16279d3306f40982a73b1cdddfa90e8ab22f83c4a75cd620a829fea9a56a0290d2d160b1d30fd0fb67e320f526726dd57a613e781c700b6c
diff --git a/media-gfx/librecad/files/librecad-2.1.3-gcc-9.patch b/media-gfx/librecad/files/librecad-2.1.3-gcc-9.patch
new file mode 100644
index 000000000000..f8214f29fab3
--- /dev/null
+++ b/media-gfx/librecad/files/librecad-2.1.3-gcc-9.patch
@@ -0,0 +1,209 @@
+diff --git a/librecad/src/actions/rs_actiondrawcircletan1_2p.cpp b/librecad/src/actions/rs_actiondrawcircletan1_2p.cpp
+index c14da00e4..f305408aa 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan1_2p.cpp
++++ b/librecad/src/actions/rs_actiondrawcircletan1_2p.cpp
+@@ -36,11 +36,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace{
+-//list of entity types supported by current action
+-auto enTypeList={RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle};
+-}
+-
+ struct RS_ActionDrawCircleTan1_2P::Points {
+ std::vector<RS_Vector> points;
+ RS_CircleData cData;
+diff --git a/librecad/src/actions/rs_actiondrawcircletan1_2p.h b/librecad/src/actions/rs_actiondrawcircletan1_2p.h
+index a6f40a6ea..b5976c9f6 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan1_2p.h
++++ b/librecad/src/actions/rs_actiondrawcircletan1_2p.h
+@@ -79,6 +79,9 @@ class RS_ActionDrawCircleTan1_2P : public RS_PreviewActionInterface {
+ private:
+ struct Points;
+ std::unique_ptr<Points> pPoints;
++
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> enTypeList {RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle};
+ };
+
+ #endif
+diff --git a/librecad/src/actions/rs_actiondrawcircletan2.cpp b/librecad/src/actions/rs_actiondrawcircletan2.cpp
+index d0558f05b..820e42266 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan2.cpp
++++ b/librecad/src/actions/rs_actiondrawcircletan2.cpp
+@@ -33,10 +33,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace {
+-auto enTypeList={RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle};
+-}
+-
+ struct RS_ActionDrawCircleTan2::Points {
+ RS_CircleData cData;
+ RS_Vector coord;
+diff --git a/librecad/src/actions/rs_actiondrawcircletan2.h b/librecad/src/actions/rs_actiondrawcircletan2.h
+index bed568970..5b2040e90 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan2.h
++++ b/librecad/src/actions/rs_actiondrawcircletan2.h
+@@ -77,6 +77,9 @@ class RS_ActionDrawCircleTan2 : public RS_PreviewActionInterface {
+ private:
+ struct Points;
+ std::unique_ptr<Points> pPoints;
++
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> enTypeList {RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle};
+ };
+
+ #endif
+diff --git a/librecad/src/actions/rs_actiondrawcircletan2_1p.cpp b/librecad/src/actions/rs_actiondrawcircletan2_1p.cpp
+index 324c16686..51cd29a19 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan2_1p.cpp
++++ b/librecad/src/actions/rs_actiondrawcircletan2_1p.cpp
+@@ -35,10 +35,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace {
+-auto enTypeList={RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle};
+-}
+-
+ struct RS_ActionDrawCircleTan2_1P::Points {
+ RS_Vector point;
+ RS_CircleData cData;
+diff --git a/librecad/src/actions/rs_actiondrawcircletan2_1p.h b/librecad/src/actions/rs_actiondrawcircletan2_1p.h
+index 40c239037..e44a56c36 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan2_1p.h
++++ b/librecad/src/actions/rs_actiondrawcircletan2_1p.h
+@@ -73,6 +73,9 @@ class RS_ActionDrawCircleTan2_1P : public RS_PreviewActionInterface {
+ private:
+ struct Points;
+ std::unique_ptr<Points> pPoints;
++
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> enTypeList {RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle};
+ };
+
+ #endif
+diff --git a/librecad/src/actions/rs_actiondrawcircletan3.cpp b/librecad/src/actions/rs_actiondrawcircletan3.cpp
+index 026ed30e5..eaca13d63 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan3.cpp
++++ b/librecad/src/actions/rs_actiondrawcircletan3.cpp
+@@ -35,10 +35,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace {
+-auto enTypeList={RS2::EntityArc, RS2::EntityCircle, RS2::EntityLine, RS2::EntityPoint};
+-}
+-
+ struct RS_ActionDrawCircleTan3::Points {
+ std::vector<RS_AtomicEntity*> circles;
+ std::shared_ptr<RS_CircleData> cData{std::make_shared<RS_CircleData>()};
+diff --git a/librecad/src/actions/rs_actiondrawcircletan3.h b/librecad/src/actions/rs_actiondrawcircletan3.h
+index d0cabfa2d..3201c5f88 100644
+--- a/librecad/src/actions/rs_actiondrawcircletan3.h
++++ b/librecad/src/actions/rs_actiondrawcircletan3.h
+@@ -78,6 +78,8 @@ class RS_ActionDrawCircleTan3 : public RS_PreviewActionInterface {
+ struct Points;
+ std::unique_ptr<Points> pPoints;
+
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> enTypeList {RS2::EntityArc, RS2::EntityCircle, RS2::EntityLine, RS2::EntityPoint};
+ };
+
+ #endif
+diff --git a/librecad/src/actions/rs_actiondrawlinerelangle.cpp b/librecad/src/actions/rs_actiondrawlinerelangle.cpp
+index 8415dd604..b9ce996fe 100644
+--- a/librecad/src/actions/rs_actiondrawlinerelangle.cpp
++++ b/librecad/src/actions/rs_actiondrawlinerelangle.cpp
+@@ -38,11 +38,6 @@
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace {
+-auto enTypeList={RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle,
+- RS2::EntityEllipse};
+-}
+-
+ RS_ActionDrawLineRelAngle::RS_ActionDrawLineRelAngle(
+ RS_EntityContainer& container,
+ RS_GraphicView& graphicView,
+diff --git a/librecad/src/actions/rs_actiondrawlinerelangle.h b/librecad/src/actions/rs_actiondrawlinerelangle.h
+index 1e102792d..71e5185b7 100644
+--- a/librecad/src/actions/rs_actiondrawlinerelangle.h
++++ b/librecad/src/actions/rs_actiondrawlinerelangle.h
+@@ -110,6 +110,9 @@ class RS_ActionDrawLineRelAngle : public RS_PreviewActionInterface {
+ * Is the angle fixed?
+ */
+ bool fixedAngle;
++
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> enTypeList {RS2::EntityLine, RS2::EntityArc, RS2::EntityCircle,RS2::EntityEllipse};
+ };
+
+ #endif
+diff --git a/librecad/src/actions/rs_actiondrawlinetangent1.cpp b/librecad/src/actions/rs_actiondrawlinetangent1.cpp
+index 197b0cb6c..47a93c766 100644
+--- a/librecad/src/actions/rs_actiondrawlinetangent1.cpp
++++ b/librecad/src/actions/rs_actiondrawlinetangent1.cpp
+@@ -36,12 +36,6 @@
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace{
+-auto circleType={RS2::EntityArc, RS2::EntityCircle,
+- RS2::EntityEllipse, RS2::EntitySplinePoints
+- };
+-}
+-
+ RS_ActionDrawLineTangent1::RS_ActionDrawLineTangent1(
+ RS_EntityContainer& container,
+ RS_GraphicView& graphicView)
+diff --git a/librecad/src/actions/rs_actiondrawlinetangent1.h b/librecad/src/actions/rs_actiondrawlinetangent1.h
+index 0f76b3684..d20d302dd 100644
+--- a/librecad/src/actions/rs_actiondrawlinetangent1.h
++++ b/librecad/src/actions/rs_actiondrawlinetangent1.h
+@@ -66,6 +66,12 @@ class RS_ActionDrawLineTangent1 : public RS_PreviewActionInterface {
+ std::unique_ptr<RS_Vector> point;
+ /** Chosen entity */
+ RS_Entity* circle;
++
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> circleType { RS2::EntityArc,
++ RS2::EntityCircle,
++ RS2::EntityEllipse,
++ RS2::EntitySplinePoints };
+ };
+
+ #endif
+diff --git a/librecad/src/actions/rs_actiondrawlinetangent2.cpp b/librecad/src/actions/rs_actiondrawlinetangent2.cpp
+index fed3545e0..0f1600e53 100644
+--- a/librecad/src/actions/rs_actiondrawlinetangent2.cpp
++++ b/librecad/src/actions/rs_actiondrawlinetangent2.cpp
+@@ -35,10 +35,6 @@
+ #include "rs_preview.h"
+ #include "rs_debug.h"
+
+-namespace{
+-auto circleType={RS2::EntityArc, RS2::EntityCircle, RS2::EntityEllipse};
+-}
+-
+ RS_ActionDrawLineTangent2::RS_ActionDrawLineTangent2(
+ RS_EntityContainer& container,
+ RS_GraphicView& graphicView)
+diff --git a/librecad/src/actions/rs_actiondrawlinetangent2.h b/librecad/src/actions/rs_actiondrawlinetangent2.h
+index b0d884cd7..95d82465d 100644
+--- a/librecad/src/actions/rs_actiondrawlinetangent2.h
++++ b/librecad/src/actions/rs_actiondrawlinetangent2.h
+@@ -68,6 +68,9 @@ class RS_ActionDrawLineTangent2 : public RS_PreviewActionInterface {
+ /** 2nd chosen entity */
+ RS_Entity* circle2;
+ bool valid;
++
++ //list of entity types supported by current action
++ const std::initializer_list<RS2::EntityType> circleType {RS2::EntityArc, RS2::EntityCircle, RS2::EntityEllipse};
+ };
+
+ #endif
diff --git a/media-gfx/librecad/librecad-2.1.3-r5.ebuild b/media-gfx/librecad/librecad-2.1.3-r5.ebuild
new file mode 100644
index 000000000000..5bb715ffa4ee
--- /dev/null
+++ b/media-gfx/librecad/librecad-2.1.3-r5.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit desktop qmake-utils
+
+DESCRIPTION="Generic 2D CAD program"
+HOMEPAGE="https://www.librecad.org/"
+SRC_URI="https://github.com/LibreCAD/LibreCAD/archive/${PV/_/}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+
+IUSE="debug doc tools"
+
+RDEPEND="
+ dev-cpp/muParser
+ dev-libs/boost:=
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ media-libs/freetype:2"
+DEPEND="${RDEPEND}
+ dev-qt/linguist-tools:5
+ dev-qt/qthelp:5
+ dev-qt/qtxml:5
+"
+
+S="${WORKDIR}/LibreCAD-${PV}"
+
+PATCHES=( "${FILESDIR}/${P}-qt-5.11.patch" "${FILESDIR}/${P}-gcc-9.patch" )
+
+src_configure() {
+ eqmake5 -r
+}
+
+src_install() {
+ dobin unix/librecad
+ use tools && dobin unix/ttf2lff
+ insinto /usr/share/${PN}
+ doins -r unix/resources/*
+ use doc && docinto html && dodoc -r librecad/support/doc/*
+ insinto /usr/share/appdata
+ doins unix/appdata/librecad.appdata.xml
+ doicon librecad/res/main/${PN}.png
+ make_desktop_entry ${PN} LibreCAD ${PN} Graphics
+}