public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2015-08-11  9:02 Michael Weber
  0 siblings, 0 replies; 17+ messages in thread
From: Michael Weber @ 2015-08-11  9:02 UTC (permalink / raw
  To: gentoo-commits

commit:     122ef11195655fc578f5df41ff608df3fb8b4004
Author:     Michael Weber <xmw <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 11 09:01:49 2015 +0000
Commit:     Michael Weber <xmw <AT> gentoo <DOT> org>
CommitDate: Tue Aug 11 09:02:05 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=122ef111

media-gfx/freecad: install the proper icons and file associations (bug 551872, thanks Fat-Zer).

Package-Manager: portage-2.2.20

 media-gfx/freecad/files/freecad.sharedmimeinfo |  8 ++++++++
 media-gfx/freecad/freecad-0.14.3702-r1.ebuild  | 26 +++++++++++++++++++++---
 media-gfx/freecad/freecad-0.15.4671.ebuild     | 28 ++++++++++++++++++++++----
 media-gfx/freecad/freecad-9999.ebuild          | 27 +++++++++++++++++++++----
 4 files changed, 78 insertions(+), 11 deletions(-)

diff --git a/media-gfx/freecad/files/freecad.sharedmimeinfo b/media-gfx/freecad/files/freecad.sharedmimeinfo
new file mode 100644
index 0000000..6d5e93e
--- /dev/null
+++ b/media-gfx/freecad/files/freecad.sharedmimeinfo
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+	<mime-type type="application/x-extension-fcstd">
+		<!-- <sub-class-of type="application/zip"/> -->
+		<comment>FreeCAD document files</comment>
+		<glob pattern="*.fcstd"/>
+	</mime-type>
+</mime-info>

diff --git a/media-gfx/freecad/freecad-0.14.3702-r1.ebuild b/media-gfx/freecad/freecad-0.14.3702-r1.ebuild
index 30df418..c1158cb 100644
--- a/media-gfx/freecad/freecad-0.14.3702-r1.ebuild
+++ b/media-gfx/freecad/freecad-0.14.3702-r1.ebuild
@@ -6,7 +6,7 @@ EAPI=5
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit cmake-utils eutils fortran-2 multilib python-single-r1
+inherit cmake-utils eutils fortran-2 multilib python-single-r1 fdo-mime
 
 DESCRIPTION="QT based Computer Aided Design application"
 HOMEPAGE="http://www.freecadweb.org/"
@@ -123,14 +123,34 @@ src_install() {
 		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCADCmd \
 		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
 
-	newicon src/Main/icon.ico ${PN}.ico
-	make_desktop_entry FreeCAD
+	make_desktop_entry FreeCAD "FreeCAD" "" "" "MimeType=application/x-extension-fcstd;"
 
 	dodoc README.Linux ChangeLog.txt
 
+	# install mimetype for FreeCAD files
+	insinto /usr/share/mime/packages
+	newins "${FILESDIR}"/${PN}.sharedmimeinfo "${PN}.xml"
+
+	# install icons to correct place rather than /usr/share/freecad
+	pushd "${ED}/usr/share/${P}"
+	for size in 16 32 48 64; do
+		newicon -s ${size} freecad-icon-${size}.png freecad.png
+	done
+	doicon -s scalable freecad.svg
+	newicon -s 64 -c mimetypes freecad-doc.png application-x-extension-fcstd.png
+	popd
+
 	# disable compression of QT assistant help files
 	>> "${ED}"usr/share/doc/${P}/freecad.qhc.ecompress.skip
 	>> "${ED}"usr/share/doc/${P}/freecad.qch.ecompress.skip
 
 	python_optimize "${ED}"usr/{$(get_libdir),share}/${P}/Mod/
 }
+
+pkg_postinst() {
+	fdo-mime_mime_database_update
+}
+
+pkg_postrm() {
+	fdo-mime_mime_database_update
+}

diff --git a/media-gfx/freecad/freecad-0.15.4671.ebuild b/media-gfx/freecad/freecad-0.15.4671.ebuild
index 63375fb..a0b4954 100644
--- a/media-gfx/freecad/freecad-0.15.4671.ebuild
+++ b/media-gfx/freecad/freecad-0.15.4671.ebuild
@@ -6,7 +6,7 @@ EAPI=5
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit cmake-utils eutils fortran-2 multilib python-single-r1
+inherit cmake-utils eutils fortran-2 multilib python-single-r1 fdo-mime
 
 DESCRIPTION="QT based Computer Aided Design application"
 HOMEPAGE="http://www.freecadweb.org/"
@@ -111,10 +111,22 @@ src_install() {
 		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCADCmd \
 		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
 
-	newicon src/Main/icon.ico ${PN}.ico
-	make_desktop_entry FreeCAD
+	make_desktop_entry FreeCAD "FreeCAD" "" "" "MimeType=application/x-extension-fcstd;"
 
-	dodoc README.Linux ChangeLog.txt
+	dodoc README.linux ChangeLog.txt
+
+	# install mimetype for FreeCAD files
+	insinto /usr/share/mime/packages
+	newins "${FILESDIR}"/${PN}.sharedmimeinfo "${PN}.xml"
+
+	# install icons to correct place rather than /usr/share/freecad
+	pushd "${ED}/usr/share/${P}"
+	for size in 16 32 48 64; do
+		newicon -s ${size} freecad-icon-${size}.png freecad.png
+	done
+	doicon -s scalable freecad.svg
+	newicon -s 64 -c mimetypes freecad-doc.png application-x-extension-fcstd.png
+	popd
 
 	# disable compression of QT assistant help files
 	>> "${ED}"usr/share/doc/${P}/freecad.qhc.ecompress.skip
@@ -122,3 +134,11 @@ src_install() {
 
 	python_optimize "${ED}"usr/{$(get_libdir),share}/${P}/Mod/
 }
+
+pkg_postinst() {
+	fdo-mime_mime_database_update
+}
+
+pkg_postrm() {
+	fdo-mime_mime_database_update
+}

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index 6b494f9..5001cf3 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -6,7 +6,7 @@ EAPI=5
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit cmake-utils eutils git-r3 fortran-2 multilib python-single-r1
+inherit cmake-utils eutils git-r3 fortran-2 multilib python-single-r1 fdo-mime
 
 DESCRIPTION="QT based Computer Aided Design application"
 HOMEPAGE="http://www.freecadweb.org/"
@@ -17,7 +17,6 @@ SLOT="0"
 KEYWORDS=""
 IUSE=""
 
-# sci-libs/opencascade ok: failed: 6.9.0
 COMMON_DEPEND="dev-cpp/eigen:3
 	dev-libs/boost
 	dev-libs/xerces-c[icu]
@@ -112,14 +111,34 @@ src_install() {
 		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCADCmd \
 		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
 
-	newicon src/Main/icon.ico ${PN}.ico
-	make_desktop_entry FreeCAD
+	make_desktop_entry FreeCAD "FreeCAD" "" "" "MimeType=application/x-extension-fcstd;"
 
 	dodoc README.md ChangeLog.txt
 
+	# install mimetype for FreeCAD files
+	insinto /usr/share/mime/packages
+	newins "${FILESDIR}"/${PN}.sharedmimeinfo "${PN}.xml"
+
+	# install icons to correct place rather than /usr/share/freecad
+	pushd "${ED}/usr/share/${P}"
+	for size in 16 32 48 64; do
+		newicon -s ${size} freecad-icon-${size}.png freecad.png
+	done
+	doicon -s scalable freecad.svg
+	newicon -s 64 -c mimetypes freecad-doc.png application-x-extension-fcstd.png
+	popd
+
 	# disable compression of QT assistant help files
 	>> "${ED}"usr/share/doc/${P}/freecad.qhc.ecompress.skip
 	>> "${ED}"usr/share/doc/${P}/freecad.qch.ecompress.skip
 
 	python_optimize "${ED}"usr/{$(get_libdir),share}/${P}/Mod/
 }
+
+pkg_postinst() {
+	fdo-mime_mime_database_update
+}
+
+pkg_postrm() {
+	fdo-mime_mime_database_update
+}


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2016-03-20 20:53 Michael Weber
  0 siblings, 0 replies; 17+ messages in thread
From: Michael Weber @ 2016-03-20 20:53 UTC (permalink / raw
  To: gentoo-commits

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=UTF-8, Size: 90663 bytes --]

commit:     45f7a63ea41df92d92eda4b3aebbae40d8c79a36
Author:     Michael Weber <xmw <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 20 20:50:31 2016 +0000
Commit:     Michael Weber <xmw <AT> gentoo <DOT> org>
CommitDate: Sun Mar 20 20:50:50 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=45f7a63e

media-gfx/freecad: drop old and unsecure versions (bug 526090).

Package-Manager: portage-2.2.28

 media-gfx/freecad/Manifest                         |   3 -
 .../freecad/files/freecad-0.12.5284-boost148.patch |  25 --
 .../files/freecad-0.12.5284-cmake-2.8.12.patch     | 294 ---------------------
 .../freecad/files/freecad-0.12.5284-gcc46.patch    |  11 -
 .../freecad/files/freecad-0.12.5284-glu.patch      |  12 -
 .../files/freecad-0.12.5284-no-3rdParty.patch      |   9 -
 .../files/freecad-0.12.5284-no-permissive.patch    |  40 ---
 .../freecad/files/freecad-0.12.5284-nodir.patch    |  21 --
 .../freecad/files/freecad-0.12.5284-nopivy.patch   |  17 --
 .../files/freecad-0.12.5284-occ-6.5.5.patch        | 224 ----------------
 .../freecad/files/freecad-0.12.5284-occ-6.6.patch  |  69 -----
 .../files/freecad-0.12.5284-qt3support.patch       |  36 ---
 .../files/freecad-0.12.5284-removeoldswig.patch    | 111 --------
 .../freecad-0.12.5284-salomesmesh-occ-6.5.5.patch  | 228 ----------------
 .../files/freecad-0.13.1830-CMakefile.patch        |  21 --
 .../freecad-0.13.1830-avoid-include-salome.patch   |  11 -
 .../files/freecad-0.13.1830-cmake-2.8.12.patch     | 294 ---------------------
 .../files/freecad-0.13.1830-no-machdist.patch      |  11 -
 .../freecad/files/freecad-0.13.1830-occ-6.7.patch  |  63 -----
 .../freecad-0.13.1830-remove-qt3-support.patch     |  33 ---
 .../files/freecad-0.13.1830-startpage-links.patch  |  97 -------
 media-gfx/freecad/freecad-0.12.5284-r4.ebuild      | 119 ---------
 media-gfx/freecad/freecad-0.13.1830-r1.ebuild      | 141 ----------
 media-gfx/freecad/freecad-0.14.3702-r1.ebuild      | 155 -----------
 24 files changed, 2045 deletions(-)

diff --git a/media-gfx/freecad/Manifest b/media-gfx/freecad/Manifest
index 1ce41bc..ef0b503 100644
--- a/media-gfx/freecad/Manifest
+++ b/media-gfx/freecad/Manifest
@@ -1,4 +1 @@
-DIST freecad-0.12.5284.tar.gz 48399004 SHA256 45486c6cc3ae212fd3eba994c603fd97962c7f505bf2a807d1533f9ee6d6026d SHA512 f1fee73ae7b43e7b3a136847f0dbb0b3f3e8f62ad3a9063f759efd8b9ed5a0dfff54961870465f37c0563161c4c5e2821f1f3379ead72dbdeddae36702e2ec0a WHIRLPOOL 7a46119d86a5d43ae8eaec6b5532e4739d54b0443769381630e644aa16c3f4185b63b513e4350c7562beacd86d56a7edbb3b506d10cb54190cbeaab48a504d5f
-DIST freecad-0.13.1830.tar.gz 70168706 SHA256 550ed16225e4cd67a463ae9b826f3a64edf7d2819cc8d235b15a89e10be72f13 SHA512 3e8d4eed8cace38da9615965f79a2b0da21d31a6df793ceaf3f732e0abd5666e9715ec9eb162e6ff998718e8d609a7dff2d0993b28f493200b734318a2322160 WHIRLPOOL 6d41565423edf8a0c67901a8559600ff1088f645c3ecb4aad8d7597490522f80d6475af3e7f5a623fc30b4d1571187bf6e6a132e6c480825798b957bea90bb83
-DIST freecad-0.14.3702.tar.gz 66927339 SHA256 ee24cf3542bfb1a887a12d2df52458bcc0e3e82679370c449b9d8b5b473b9dc9 SHA512 6333bc8256728084b492687c5c6a5b3356212cbcab4bf0beb95fcdb0f9ac7c49df8eee0275e83feadc7b2460cf2396e88b0b309cbc1e1c9d46375bcadb334c13 WHIRLPOOL eb7d22f255536d4fde5a182e5b59c63eb38a6d70ecf0b6a7abdf1d76c00c51492c517053d09eb56d5657d8cc3a49bad56e67e8965ce03d27982d36dcd1944982
 DIST freecad-0.15.4671.tar.gz 93680347 SHA256 8dda8f355cb59866a55c9c6096f39a3ebc5347892284db4c305352cc9be03bbc SHA512 695081117b5511bbc0b7335b63a8760e164987a6dff2c5b0dc86b6b0a93bb7d7b83aa9f4fab1d66d7d2c917a42b0135af78553b463579873a1d1e52e3dd9aecb WHIRLPOOL 0c351ad9ee360dfd9af54af9cc348a6ba3d8c15b6743667f6943e41aa252cec9bd2149baa32fceeceac65660a9b629aefba3c80a5c3a84c45a8d502323547287

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-boost148.patch b/media-gfx/freecad/files/freecad-0.12.5284-boost148.patch
deleted file mode 100644
index 4c9c735..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-boost148.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From d6061d30a053617b8127c96e8c6a65e47589a182 Mon Sep 17 00:00:00 2001
-From: Werner Mayer <werner@werner-VirtualBox.(none)>
-Date: Sat, 31 Mar 2012 19:22:11 +0200
-Subject: [PATCH] #0000585: bug with boost 1.48
-
----
- CMakeLists.txt |    2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 920aca7..9e3bbf5 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -284,6 +284,8 @@ MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK_CHECKFILE6X FREECAD_LIBPACK_CHECKFILE7X)
-         # get include dirs
-         QT4_GET_MOC_FLAGS(moc_flags)
-         QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
-+        # fixes bug 0000585: bug with boost 1.48
-+        SET(moc_options ${moc_options} -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED)
- 
-         foreach(it ${moc_files})
-             get_filename_component(it ${it} ABSOLUTE)
--- 
-1.7.9.2
-

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-cmake-2.8.12.patch b/media-gfx/freecad/files/freecad-0.12.5284-cmake-2.8.12.patch
deleted file mode 100644
index b38a440..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-cmake-2.8.12.patch
+++ /dev/null
@@ -1,294 +0,0 @@
-commit f061b6f7ea667e1d6944590d67b9b5b6659e4ba0
-Author: wmayer <wmayer@users.sourceforge.net>
-Date:   Tue Oct 22 10:33:18 2013 +0200
-
-    0001278: No build possible with current CMake version 2.8.12
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 862cd7b..11c9b43 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -270,14 +270,14 @@ MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK_CHECKFILE6X FREECAD_LIBPACK_CHECKFILE7X)
-     macro(fc_wrap_cpp outfiles )
-         # get include dirs
-         QT4_GET_MOC_FLAGS(moc_includes)
--        QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
-+        QT4_EXTRACT_OPTIONS(moc_files moc_options moc_target ${ARGN})
-         # fixes bug 0000585: bug with boost 1.48
-         SET(moc_options ${moc_options} -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED)
- 
-         foreach(it ${moc_files})
-             get_filename_component(it ${it} ABSOLUTE)
-             QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
--            QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_includes}" "${moc_options}")
-+            QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_includes}" "${moc_options}" "${moc_target}")
-             set(${outfiles} ${${outfiles}} ${outfile})
-             add_file_dependencies(${it} ${outfile})
-         endforeach(it)
-diff --git a/cMake/FreeCadMacros.cmake b/cMake/FreeCadMacros.cmake
-index 5fa7680..78bc0b8 100644
---- a/cMake/FreeCadMacros.cmake
-+++ b/cMake/FreeCadMacros.cmake
-@@ -168,69 +168,6 @@ endmacro(generate_from_py)
- #endmacro(qt4_wrap_ui)
- 
- 
--# This is a special version of the built in macro qt4_add_resources that generates .cpp files
--#
--#macro(fc_add_resources outfiles )
--#    #QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
--#	set(ARGN )
--#    foreach (it ${rcc_files})
--#      get_filename_component(outfilename ${it} NAME_WE)
--#      get_filename_component(infile ${it} ABSOLUTE)
--#      get_filename_component(rc_path ${infile} PATH)
--#      set(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cpp)
--#      #  parse file for dependencies 
--#      #  all files are absolute paths or relative to the location of the qrc file
--#      file(READ "${infile}" _RC_FILE_CONTENTS)
--#      string(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
--#      set(_RC_DEPENDS)
--#      foreach(_RC_FILE ${_RC_FILES})
--#        string(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
--#        string(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
--#        if(NOT _ABS_PATH_INDICATOR)
--#          set(_RC_FILE "${rc_path}/${_RC_FILE}")
--#        endif(NOT _ABS_PATH_INDICATOR)
--#        set(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
--#      endforeach(_RC_FILE)
--#      add_custom_command(OUTPUT ${outfile}
--#        COMMAND ${QT_RCC_EXECUTABLE}
--#        ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
--#        MAIN_DEPENDENCY ${infile}
--#        DEPENDS ${_RC_DEPENDS})
--#      set(${outfiles} ${${outfiles}} ${outfile})
--#    endforeach (it)
--#endmacro(fc_add_resources)
--
--MACRO (fc_add_resources outfiles )
--  QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
--
--  FOREACH (it ${rcc_files})
--    GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
--    GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
--    GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
--    SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cpp)
--    #  parse file for dependencies 
--    #  all files are absolute paths or relative to the location of the qrc file
--    FILE(READ "${infile}" _RC_FILE_CONTENTS)
--    STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
--    SET(_RC_DEPENDS)
--    FOREACH(_RC_FILE ${_RC_FILES})
--      STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
--      STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
--      IF(NOT _ABS_PATH_INDICATOR)
--        SET(_RC_FILE "${rc_path}/${_RC_FILE}")
--      ENDIF(NOT _ABS_PATH_INDICATOR)
--      SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
--    ENDFOREACH(_RC_FILE)
--    ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
--      COMMAND ${QT_RCC_EXECUTABLE}
--      ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
--      MAIN_DEPENDENCY ${infile}
--      DEPENDS ${_RC_DEPENDS})
--    SET(${outfiles} ${${outfiles}} ${outfile})
--  ENDFOREACH (it)
--
--ENDMACRO (fc_add_resources)
--
- MACRO(ADD_MSVC_PRECOMPILED_HEADER PrecompiledHeader PrecompiledSource SourcesVar)
-   IF(MSVC)
-     GET_FILENAME_COMPONENT(PrecompiledBasename ${PrecompiledHeader} NAME_WE)
-diff --git a/src/Gui/CMakeLists.txt b/src/Gui/CMakeLists.txt
-index b9f1939..124c4f8 100644
---- a/src/Gui/CMakeLists.txt
-+++ b/src/Gui/CMakeLists.txt
-@@ -608,7 +608,7 @@ SOURCE_GROUP("Widget\\iisTaskPanel\\Mocs" FILES ${iis_MOC_SRCS})
- #SET(Resource_RCS
- #   Icons/resource.qrc
- #   Language/translation.qrc)
--#fc_add_resources(Resource_SRCS ${Resource_RCS})
-+#qt4_add_resources(Resource_SRCS ${Resource_RCS})
- #SET(Resource_SRCS
- #   ${Resource_SRCS}
- #   Icons/resource.qrc
-diff --git a/src/Mod/Image/Gui/AppImageGui.cpp b/src/Mod/Image/Gui/AppImageGui.cpp
-index c26129e..c817860 100644
---- a/src/Mod/Image/Gui/AppImageGui.cpp
-+++ b/src/Mod/Image/Gui/AppImageGui.cpp
-@@ -20,7 +20,6 @@
- #include <Gui/Language/Translator.h>
- #include "Workbench.h"
- #include "ViewProviderImagePlane.h"
--#include "qrc_Image.cpp"
- 
- // use a different name to CreateCommand()
- void CreateImageCommands(void);
-diff --git a/src/Mod/Image/Gui/CMakeLists.txt b/src/Mod/Image/Gui/CMakeLists.txt
-index cc967ee..4edb462 100644
---- a/src/Mod/Image/Gui/CMakeLists.txt
-+++ b/src/Mod/Image/Gui/CMakeLists.txt
-@@ -30,8 +30,7 @@ SET(ImageGui_RES_SRCS
-     Resources/Image.qrc
- )
- 
--fc_add_resources(ImageGui_QRC_SRCS ${ImageGui_RES_SRCS})
--#QT4_ADD_RESOURCES(ImageGui_QRC_SRCS ${ImageGui_RES_SRCS})
-+qt4_add_resources(ImageGui_QRC_SRCS ${ImageGui_RES_SRCS})
- 
- set(ImageGui_UIC_SRCS
-     ImageOrientationDialog.ui
-@@ -40,7 +39,7 @@ qt4_wrap_ui(ImageGui_UIC_HDRS ${ImageGui_UIC_SRCS})
- 
- SET(ImageGui_SRCS
- #   ${ImageGui_MOC_SRCS}
--#   ${ImageGui_QRC_SRCS}
-+    ${ImageGui_QRC_SRCS}
-     AppImageGui.cpp
-     AppImageGuiPy.cpp
-     Command.cpp
-diff --git a/src/Mod/Mesh/Gui/AppMeshGui.cpp b/src/Mod/Mesh/Gui/AppMeshGui.cpp
-index 624d569..8fb68cf 100644
---- a/src/Mod/Mesh/Gui/AppMeshGui.cpp
-+++ b/src/Mod/Mesh/Gui/AppMeshGui.cpp
-@@ -50,7 +50,6 @@
- #include "ViewProviderDefects.h"
- #include "ViewProviderPython.h"
- #include "Workbench.h"
--#include "qrc_Mesh.cpp"
- 
- 
- // use a different name to CreateCommand()
-diff --git a/src/Mod/Mesh/Gui/CMakeLists.txt b/src/Mod/Mesh/Gui/CMakeLists.txt
-index cafca6c..9ef1dae 100644
---- a/src/Mod/Mesh/Gui/CMakeLists.txt
-+++ b/src/Mod/Mesh/Gui/CMakeLists.txt
-@@ -75,9 +75,9 @@ SET(Inventor_SRCS
- )
- SOURCE_GROUP("Inventor" FILES ${Inventor_SRCS})
- 
--fc_add_resources(resource_SRCS Resources/Mesh.qrc)
-+qt4_add_resources(resource_SRCS Resources/Mesh.qrc)
- SET(resource_SRCS
--#   ${resource_SRCS}
-+    ${resource_SRCS}
-     Resources/Mesh.qrc
- )
- SOURCE_GROUP("resource" FILES ${resource_SRCS})
-diff --git a/src/Mod/Part/Gui/AppPartGui.cpp b/src/Mod/Part/Gui/AppPartGui.cpp
-index 9c3ebb3..ae84470 100644
---- a/src/Mod/Part/Gui/AppPartGui.cpp
-+++ b/src/Mod/Part/Gui/AppPartGui.cpp
-@@ -57,7 +57,6 @@
- #include "Workbench.h"
- 
- #include <Gui/Language/Translator.h>
--#include "qrc_Part.cpp"
- 
- #include "Resources/icons/PartFeature.xpm"
- #include "Resources/icons/PartFeatureImport.xpm"
-diff --git a/src/Mod/Part/Gui/CMakeLists.txt b/src/Mod/Part/Gui/CMakeLists.txt
-index 375f6e4..87c4c28 100644
---- a/src/Mod/Part/Gui/CMakeLists.txt
-+++ b/src/Mod/Part/Gui/CMakeLists.txt
-@@ -50,7 +50,7 @@ set(PartGui_MOC_HDRS
- fc_wrap_cpp(PartGui_MOC_SRCS ${PartGui_MOC_HDRS})
- SOURCE_GROUP("Moc" FILES ${PartGui_MOC_SRCS})
- 
--fc_add_resources(PartGui_QRC_SRCS Resources/Part.qrc)
-+qt4_add_resources(PartGui_QRC_SRCS Resources/Part.qrc)
- 
- set(PartGui_UIC_SRCS
-     CrossSections.ui
-@@ -77,7 +77,7 @@ set(PartGui_UIC_SRCS
- qt4_wrap_ui(PartGui_UIC_HDRS ${PartGui_UIC_SRCS})
- 
- SET(PartGui_SRCS
--#   ${PartGui_QRC_SRCS}
-+    ${PartGui_QRC_SRCS}
-     ${PartGui_UIC_HDRS}
-     AppPartGui.cpp
-     Command.cpp
-diff --git a/src/Mod/Points/Gui/AppPointsGui.cpp b/src/Mod/Points/Gui/AppPointsGui.cpp
-index 9acd98e..953d3e2 100644
---- a/src/Mod/Points/Gui/AppPointsGui.cpp
-+++ b/src/Mod/Points/Gui/AppPointsGui.cpp
-@@ -33,7 +33,6 @@
- 
- #include "ViewProvider.h"
- #include "Workbench.h"
--#include "qrc_Points.cpp"
- 
- // use a different name to CreateCommand()
- void CreatePointsCommands(void);
-diff --git a/src/Mod/Points/Gui/CMakeLists.txt b/src/Mod/Points/Gui/CMakeLists.txt
-index fab12ff..7e30f0d 100644
---- a/src/Mod/Points/Gui/CMakeLists.txt
-+++ b/src/Mod/Points/Gui/CMakeLists.txt
-@@ -32,9 +32,9 @@ SET(Dialogs_SRCS
- )
- SOURCE_GROUP("Dialogs" FILES ${Dialogs_SRCS})
- 
--fc_add_resources(Resource_SRCS Resources/Points.qrc)
-+qt4_add_resources(Resource_SRCS Resources/Points.qrc)
- SET(Resource_SRCS
--#   ${Resource_SRCS}
-+    ${Resource_SRCS}
-     Resources/Points.qrc
- )
- SOURCE_GROUP("Resource" FILES ${Resource_SRCS})
-diff --git a/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp b/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
-index 156bd90..c59369a 100644
---- a/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
-+++ b/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
-@@ -32,7 +32,6 @@
- #include "DlgSettingsRayImp.h"
- #include "ViewProvider.h"
- #include "Workbench.h"
--#include "qrc_Raytracing.cpp"
- 
- 
- using namespace RaytracingGui;
-diff --git a/src/Mod/Raytracing/Gui/CMakeLists.txt b/src/Mod/Raytracing/Gui/CMakeLists.txt
-index 38aa739..1da30c9 100644
---- a/src/Mod/Raytracing/Gui/CMakeLists.txt
-+++ b/src/Mod/Raytracing/Gui/CMakeLists.txt
-@@ -43,8 +43,9 @@ set(RaytracingGui_MOC_HDRS
- fc_wrap_cpp(RaytracingGui_MOC_SRCS ${RaytracingGui_MOC_HDRS})
- SOURCE_GROUP("Moc" FILES ${RaytracingGui_MOC_SRCS})
- 
--fc_add_resources(Resource_SRCS Resources/Raytracing.qrc)
-+qt4_add_resources(Resource_SRCS Resources/Raytracing.qrc)
- SET(Resource_SRCS
-+    ${Resource_SRCS}
-     Resources/Raytracing.qrc
- )
- SOURCE_GROUP("Resource" FILES ${Resource_SRCS})
-diff --git a/src/Mod/Test/Gui/AppTestGui.cpp b/src/Mod/Test/Gui/AppTestGui.cpp
-index a027d9d..7c2ef21 100644
---- a/src/Mod/Test/Gui/AppTestGui.cpp
-+++ b/src/Mod/Test/Gui/AppTestGui.cpp
-@@ -28,7 +28,6 @@
- 
- #include "UnitTestPy.h"
- #include "UnitTestImp.h"
--#include "qrc_Test.cpp"
- 
- #include <Gui/Language/Translator.h>
- #include <Base/Console.h>
-diff --git a/src/Mod/Test/Gui/CMakeLists.txt b/src/Mod/Test/Gui/CMakeLists.txt
-index 9b8b672..eaa0dcd 100644
---- a/src/Mod/Test/Gui/CMakeLists.txt
-+++ b/src/Mod/Test/Gui/CMakeLists.txt
-@@ -30,9 +30,9 @@ SET(Dialogs_SRCS
- )
- SOURCE_GROUP("Dialogs" FILES ${Dialogs_SRCS})
- 
--fc_add_resources(Resource_SRCS Resources/Test.qrc)
-+qt4_add_resources(Resource_SRCS Resources/Test.qrc)
- SET(Resource_SRCS
--#   ${Resource_SRCS}
-+    ${Resource_SRCS}
-     Resources/Test.qrc
- )
- SOURCE_GROUP("Resource" FILES ${Resource_SRCS})

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-gcc46.patch b/media-gfx/freecad/files/freecad-0.12.5284-gcc46.patch
deleted file mode 100644
index df2fb19..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-gcc46.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ruN FreeCAD-0.11.4422.orig/src/zipios++/directory.h FreeCAD-0.11.4422/src/zipios++/directory.h
---- FreeCAD-0.11.4422.orig/src/zipios++/directory.h	2011-02-11 01:48:21.000000000 +0100
-+++ FreeCAD-0.11.4422/src/zipios++/directory.h	2011-11-13 22:11:27.000000000 +0100
-@@ -31,6 +31,7 @@
- #include <string>
- #include <ctime>
- #include <stdexcept>
-+#include <cstddef>
- 
- // #include <boost.h>  Contents of boost.h
- 

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-glu.patch b/media-gfx/freecad/files/freecad-0.12.5284-glu.patch
deleted file mode 100644
index 9567215..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-glu.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ruN FreeCAD-0.12.5284.orig/src/Mod/Image/Gui/GLImageBox.cpp FreeCAD-0.12.5284/src/Mod/Image/Gui/GLImageBox.cpp
---- FreeCAD-0.12.5284.orig/src/Mod/Image/Gui/GLImageBox.cpp	2012-01-03 13:24:30.000000000 +0100
-+++ FreeCAD-0.12.5284/src/Mod/Image/Gui/GLImageBox.cpp	2012-01-06 10:26:38.000000000 +0100
-@@ -27,6 +27,8 @@
- # include <GL/glext.h>
- #endif
- 
-+#include <GL/glu.h>
-+
- #include "GLImageBox.h"
- 
- using namespace ImageGui;

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-no-3rdParty.patch b/media-gfx/freecad/files/freecad-0.12.5284-no-3rdParty.patch
deleted file mode 100644
index d579756..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-no-3rdParty.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- FreeCAD-0.12.5284/src/CMakeLists.txt
-+++ FreeCAD-0.12.5284/src/CMakeLists.txt
-@@ -1,6 +1,5 @@
- 
- add_subdirectory(Build)
--add_subdirectory(3rdParty)
- add_subdirectory(Base)
- add_subdirectory(App)
- add_subdirectory(Main)

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-no-permissive.patch b/media-gfx/freecad/files/freecad-0.12.5284-no-permissive.patch
deleted file mode 100644
index d19a92f..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-no-permissive.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- FreeCAD-0.12.5284/src/Mod/Mesh/App/WildMagic4/Wm4Query2Filtered.inl
-+++ FreeCAD-0.12.5284/src/Mod/Mesh/App/WildMagic4/Wm4Query2Filtered.inl
-@@ -55,7 +55,7 @@
-     Real fLen1 = Math<Real>::Sqrt(fX1*fX1 + fY1*fY1);
-     Real fScaledUncertainty = m_fUncertainty*fLen0*fLen1;
- 
--    Real fDet2 = Det2(fX0,fY0,fX1,fY1);
-+    Real fDet2 = this->Det2(fX0,fY0,fX1,fY1);
-     if (Math<Real>::FAbs(fDet2) >= fScaledUncertainty)
-     {
-         return (fDet2 > (Real)0.0 ? +1 : (fDet2 < (Real)0.0 ? -1 : 0));
-@@ -93,7 +93,7 @@
-     Real fLen2 = Math<Real>::Sqrt(fD2x*fD2x + fD2y*fD2y + fZ2*fZ2);
-     Real fScaledUncertainty = m_fUncertainty*fLen0*fLen1*fLen2;
- 
--    Real fDet3 = Det3(fD0x,fD0y,fZ0,fD1x,fD1y,fZ1,fD2x,fD2y,fZ2);
-+    Real fDet3 = this->Det3(fD0x,fD0y,fZ0,fD1x,fD1y,fZ1,fD2x,fD2y,fZ2);
-     if (Math<Real>::FAbs(fDet3) >= fScaledUncertainty)
-     {
-         return (fDet3 < (Real)0.0 ? 1 : (fDet3 > (Real)0.0 ? -1 : 0));
---- FreeCAD-0.12.5284/src/Mod/Mesh/App/WildMagic4/Wm4Query3Filtered.in
-+++ FreeCAD-0.12.5284/src/Mod/Mesh/App/WildMagic4/Wm4Query3Filtered.inl
-@@ -62,7 +62,7 @@
-     Real fLen2 = Math<Real>::Sqrt(fX2*fX2 + fY2*fY2 + fZ2*fZ2);
-     Real fScaledUncertainty = m_fUncertainty*fLen0*fLen1*fLen2;
- 
--    Real fDet3 = Det3(fX0,fY0,fZ0,fX1,fY1,fZ1,fX2,fY2,fZ2);
-+    Real fDet3 = this->Det3(fX0,fY0,fZ0,fX1,fY1,fZ1,fX2,fY2,fZ2);
-     if (Math<Real>::FAbs(fDet3) >= fScaledUncertainty)
-     {
-         return (fDet3 > (Real)0.0 ? +1 : (fDet3 < (Real)0.0 ? -1 : 0));
-@@ -115,7 +115,7 @@
-     Real fLen3 = Math<Real>::Sqrt(fD3x*fD3x+fD3y*fD3y+fD3z*fD3z+fW3*fW3);
-     Real fScaledUncertainty = m_fUncertainty*fLen0*fLen1*fLen2*fLen3;
- 
--    Real fDet4 = Det4(fD0x,fD0y,fD0z,fW0,fD1x,fD1y,fD1z,fW1,fD2x,
-+    Real fDet4 = this->Det4(fD0x,fD0y,fD0z,fW0,fD1x,fD1y,fD1z,fW1,fD2x,
-         fD2y,fD2z,fW2,fD3x,fD3y,fD3z,fW3);
- 
-     if (Math<Real>::FAbs(fDet4) >= fScaledUncertainty)

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-nodir.patch b/media-gfx/freecad/files/freecad-0.12.5284-nodir.patch
deleted file mode 100644
index 3e9bbed..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-nodir.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ruN FreeCAD-0.12.5284.orig/src/Mod/CMakeLists.txt FreeCAD-0.12.5284/src/Mod/CMakeLists.txt
---- FreeCAD-0.12.5284.orig/src/Mod/CMakeLists.txt	2012-01-03 13:26:12.000000000 +0100
-+++ FreeCAD-0.12.5284/src/Mod/CMakeLists.txt	2012-01-06 12:19:06.000000000 +0100
-@@ -18,7 +18,7 @@
-     MESSAGE("Due to the missing Eigen3 library the Sketcher module won't be built")
-     MESSAGE("Due to the missing Eigen3 library the Robot module won't be built")
- ENDIF(EIGEN3_FOUND)
--add_subdirectory(Machining_Distortion)
-+# add_subdirectory(Machining_Distortion)
- 
- add_subdirectory(ReverseEngineering)
- add_subdirectory(MeshPart)
-@@ -32,7 +32,7 @@
- 
- add_subdirectory(Arch)
- 
--add_subdirectory(Assembly)
-+# add_subdirectory(Assembly)
- 
- if(FREECAD_BUILD_CAM)
-     add_subdirectory(Cam)

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-nopivy.patch b/media-gfx/freecad/files/freecad-0.12.5284-nopivy.patch
deleted file mode 100644
index 337348a..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-nopivy.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -ruN FreeCAD-0.12.5284.orig/src/3rdParty/CMakeLists.txt FreeCAD-0.12.5284/src/3rdParty/CMakeLists.txt
---- FreeCAD-0.12.5284.orig/src/3rdParty/CMakeLists.txt	2012-01-03 13:30:19.000000000 +0100
-+++ FreeCAD-0.12.5284/src/3rdParty/CMakeLists.txt	2012-01-07 15:57:52.000000000 +0100
-@@ -19,13 +19,6 @@
- #   add_subdirectory(Pivy)
- #endif(MINGW)
- # applies for Unix, MinGW and Windows with custom LibPack
--elseif(FREECAD_BUILD_GUI)
--    find_path(COIN_VERSION3 Inventor/scxml/ScXML.h ${COIN3D_INCLUDE_DIR})
--    if (COIN_VERSION3)
--    add_subdirectory(Pivy-0.5)
--    else (COIN_VERSION3)
--    add_subdirectory(Pivy)
--    endif(COIN_VERSION3)
- endif(FREECAD_BUILD_GUI AND FREECAD_LIBPACK_CHECKFILE6X)
- 
- # For Windows we have all stuff in the LibPack

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-occ-6.5.5.patch b/media-gfx/freecad/files/freecad-0.12.5284-occ-6.5.5.patch
deleted file mode 100644
index 1886f8e..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-occ-6.5.5.patch
+++ /dev/null
@@ -1,224 +0,0 @@
---- FreeCAD-0.12.5284/src/Mod/Part/App/TopoShape.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/TopoShape.cpp
-@@ -1370,7 +1370,7 @@
- 
-     //circular profile
-     Handle(Geom_Circle) aCirc = new Geom_Circle (gp::XOY(), 1.0);
--    aCirc->Rotate (gp::OZ(), Standard_PI/2.);
-+    aCirc->Rotate (gp::OZ(), M_PI/2.);
- 
-     //perpendicular section
-     Handle(BRepAdaptor_HCurve) myPath = new BRepAdaptor_HCurve(path_adapt);
-@@ -1469,12 +1469,12 @@
-         }
- 
-         gp_Pnt2d aPnt(0, 0);
--        gp_Dir2d aDir(2. * PI, pitch);
-+        gp_Dir2d aDir(2. * M_PI, pitch);
-         gp_Ax2d aAx2d(aPnt, aDir);
- 
-         Handle(Geom2d_Line) line = new Geom2d_Line(aAx2d);
-         gp_Pnt2d beg = line->Value(0);
--        gp_Pnt2d end = line->Value(sqrt(4.0*PI*PI+pitch*pitch)*(height/pitch));
-+        gp_Pnt2d end = line->Value(sqrt(4.0*M_PI*M_PI+pitch*pitch)*(height/pitch));
-         Handle(Geom2d_TrimmedCurve) segm = GCE2d_MakeSegment(beg , end);
- 
-         TopoDS_Edge edgeOnSurf = BRepBuilderAPI_MakeEdge(segm , surf);
-@@ -1772,7 +1772,7 @@
-     Standard_Real x3, y3, z3;
- 
-     Handle_StlMesh_Mesh aMesh = new StlMesh_Mesh();
--    StlTransfer::BuildIncrementalMesh(this->_Shape, accuracy, aMesh);
-+    StlTransfer::BuildIncrementalMesh(this->_Shape, accuracy, false, aMesh);
-     StlMesh_MeshExplorer xp(aMesh);
-     for (Standard_Integer nbd=1;nbd<=aMesh->NbDomains();nbd++) {
-         for (xp.InitTriangle (nbd); xp.MoreTriangle (); xp.NextTriangle ()) {
---- FreeCAD-0.12.5284/src/Mod/Part/App/FeatureRevolution.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/FeatureRevolution.cpp
-@@ -71,7 +71,7 @@
-     try {
-         // Now, let's get the TopoDS_Shape
-         TopoDS_Shape revolve = base->Shape.getShape().revolve(gp_Ax1(pnt, dir),
--            Angle.getValue()/180.0f*Standard_PI);
-+            Angle.getValue()/180.0f*M_PI);
-         if (revolve.IsNull())
-             return new App::DocumentObjectExecReturn("Resulting shape is null");
-         this->Shape.setValue(revolve);
---- FreeCAD-0.12.5284/src/Mod/Part/App/PrimitiveFeature.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/PrimitiveFeature.cpp
-@@ -263,9 +263,9 @@
-         return new App::DocumentObjectExecReturn("Radius of sphere too small");
-     try {
-         BRepPrimAPI_MakeSphere mkSphere(Radius.getValue(),
--                                        Angle1.getValue()/180.0f*Standard_PI,
--                                        Angle2.getValue()/180.0f*Standard_PI,
--                                        Angle3.getValue()/180.0f*Standard_PI);
-+                                        Angle1.getValue()/180.0f*M_PI,
-+                                        Angle2.getValue()/180.0f*M_PI,
-+                                        Angle3.getValue()/180.0f*M_PI);
-         TopoDS_Shape ResultShape = mkSphere.Shape();
-         this->Shape.setValue(ResultShape);
-     }
-@@ -321,9 +321,9 @@
-         gp_Ax2 ax2(pnt,dir);
-         BRepPrimAPI_MakeSphere mkSphere(ax2,
-                                         Radius2.getValue(), 
--                                        Angle1.getValue()/180.0f*Standard_PI,
--                                        Angle2.getValue()/180.0f*Standard_PI,
--                                        Angle3.getValue()/180.0f*Standard_PI);
-+                                        Angle1.getValue()/180.0f*M_PI,
-+                                        Angle2.getValue()/180.0f*M_PI,
-+                                        Angle3.getValue()/180.0f*M_PI);
-         Standard_Real scale = Radius1.getValue()/Radius2.getValue();
-         gp_Dir xDir = ax2.XDirection();
-         gp_Dir yDir = ax2.YDirection();
-@@ -380,7 +380,7 @@
-     try {
-         BRepPrimAPI_MakeCylinder mkCylr(Radius.getValue(),
-                                         Height.getValue(),
--                                        Angle.getValue()/180.0f*Standard_PI);
-+                                        Angle.getValue()/180.0f*M_PI);
-         TopoDS_Shape ResultShape = mkCylr.Shape();
-         this->Shape.setValue(ResultShape);
-     }
-@@ -429,7 +429,7 @@
-         BRepPrimAPI_MakeCone mkCone(Radius1.getValue(),
-                                     Radius2.getValue(),
-                                     Height.getValue(),
--                                    Angle.getValue()/180.0f*Standard_PI);
-+                                    Angle.getValue()/180.0f*M_PI);
-         TopoDS_Shape ResultShape = mkCone.Shape();
-         this->Shape.setValue(ResultShape);
-     }
-@@ -498,9 +498,9 @@
- #else
-         BRepPrimAPI_MakeTorus mkTorus(Radius1.getValue(),
-                                       Radius2.getValue(),
--                                      Angle1.getValue()/180.0f*Standard_PI,
--                                      Angle2.getValue()/180.0f*Standard_PI,
--                                      Angle3.getValue()/180.0f*Standard_PI);
-+                                      Angle1.getValue()/180.0f*M_PI,
-+                                      Angle2.getValue()/180.0f*M_PI,
-+                                      Angle3.getValue()/180.0f*M_PI);
-         const TopoDS_Solid& ResultShape = mkTorus.Solid();
- #endif
-         this->Shape.setValue(ResultShape);
---- FreeCAD-0.12.5284/src/Mod/Part/App/AppPartPy.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/AppPartPy.cpp
-@@ -492,7 +492,7 @@
-             d.SetCoord(vec.x, vec.y, vec.z);
-         }
-         Handle_Geom_Plane aPlane = new Geom_Plane(p, d);
--        BRepBuilderAPI_MakeFace Face(aPlane, 0.0, length, 0.0, width);
-+        BRepBuilderAPI_MakeFace Face(aPlane, 0.0, length, 0.0, width, Precision::Confusion());
-         return new TopoShapeFacePy(new TopoShape((Face.Face()))); 
-     }
-     catch (Standard_DomainError) {
---- FreeCAD-0.12.5284/src/Mod/Part/App/GeometrySurfacePyImp.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/GeometrySurfacePyImp.cpp
-@@ -79,7 +79,7 @@
-             s->Bounds(u1,u2,v1,v2);
-             if (!PyArg_ParseTuple(args, "|dddd", &u1,&u2,&v1,&v2))
-                 return 0;
--            BRepBuilderAPI_MakeFace mkBuilder(s, u1, u2, v1, v2);
-+            BRepBuilderAPI_MakeFace mkBuilder(s, u1, u2, v1, v2, Precision::Confusion());
-             TopoDS_Shape sh = mkBuilder.Shape();
-             return new TopoShapeFacePy(new TopoShape(sh));
-         }
---- FreeCAD-0.12.5284/src/Mod/Part/App/Geometry.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/Geometry.cpp
-@@ -1252,7 +1252,7 @@
-     Handle_Geom_Surface s = Handle_Geom_Surface::DownCast(handle());
-     Standard_Real u1,u2,v1,v2;
-     s->Bounds(u1,u2,v1,v2);
--    BRepBuilderAPI_MakeFace mkBuilder(s, u1, u2, v1, v2);
-+    BRepBuilderAPI_MakeFace mkBuilder(s, u1, u2, v1, v2, Precision::Confusion());
-     return mkBuilder.Shape();
- }
- 
---- FreeCAD-0.12.5284/src/Mod/Part/App/PrimitiveFeature.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/PrimitiveFeature.cpp
-@@ -191,7 +191,7 @@
-     gp_Pnt pnt(0.0,0.0,0.0);
-     gp_Dir dir(0.0,0.0,1.0);
-     Handle_Geom_Plane aPlane = new Geom_Plane(pnt, dir);
--    BRepBuilderAPI_MakeFace mkFace(aPlane, 0.0, L, 0.0, W);
-+    BRepBuilderAPI_MakeFace mkFace(aPlane, 0.0, L, 0.0, W, Precision::Confusion());
- 
-     const char *error=0;
-     switch (mkFace.Error())
---- FreeCAD-0.12.5284/src/Mod/Part/App/TopoShape.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/TopoShape.cpp
-@@ -1338,7 +1338,7 @@
-     double u1,u2,v1,v2;
-     surf->Bounds(u1,u2,v1,v2);
- 
--    BRepBuilderAPI_MakeFace mkBuilder(surf, umin, umax, v1, v2);
-+    BRepBuilderAPI_MakeFace mkBuilder(surf, umin, umax, v1, v2, Precision::Confusion());
-     return mkBuilder.Face();
- }
- 
-@@ -1391,7 +1391,7 @@
- 
-         Standard_Real u1,u2,v1,v2;
-         mySurface->Bounds(u1,u2,v1,v2);
--        BRepBuilderAPI_MakeFace mkBuilder(mySurface, u1, u2, v1, v2);
-+        BRepBuilderAPI_MakeFace mkBuilder(mySurface, u1, u2, v1, v2, Precision::Confusion());
-         return mkBuilder.Shape();
-     }
- 
-@@ -1443,7 +1443,7 @@
-     mkSweep.Perform(tol, Standard_False, GeomAbs_C1, BSplCLib::MaxDegree(), 1000);
- 
-     const Handle_Geom_Surface& surf = mkSweep.Surface();
--    BRepBuilderAPI_MakeFace mkBuilder(surf, umin, umax, vmin, vmax);
-+    BRepBuilderAPI_MakeFace mkBuilder(surf, umin, umax, vmin, vmax, Precision::Confusion());
-     return mkBuilder.Face();
- }
- 
---- FreeCAD-0.12.5284/src/Mod/Part/App/TopoShapeFacePyImp.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Part/App/TopoShapeFacePyImp.cpp
-@@ -135,7 +135,7 @@
-                 return -1;
-             }
- 
--            BRepBuilderAPI_MakeFace mkFace(S);
-+            BRepBuilderAPI_MakeFace mkFace(S, Precision::Confusion());
-             if (bound) {
-                 Py::List list(bound);
-                 for (Py::List::iterator it = list.begin(); it != list.end(); ++it) {
---- FreeCAD-0.12.5284/src/Mod/Fem/App/AppFemPy.cpp
-+++ FreeCAD-0.12.5284/src/Mod/Fem/App/AppFemPy.cpp
-@@ -498,12 +498,12 @@
- 
- 		//Do a Monte Carlo approach and start from the Principal Axis System
- 		//and rotate +/- 60° around each axis in a first iteration
--		double	angle_range_min_x=-PI/3.0,angle_range_max_x=PI/3.0,
--			angle_range_min_y=-PI/3.0,angle_range_max_y=PI/3.0,
--			angle_range_min_z=-PI/3.0,angle_range_max_z=PI/3.0;
-+		double	angle_range_min_x=-M_PI/3.0,angle_range_max_x=M_PI/3.0,
-+			angle_range_min_y=-M_PI/3.0,angle_range_max_y=M_PI/3.0,
-+			angle_range_min_z=-M_PI/3.0,angle_range_max_z=M_PI/3.0;
- 
- 		//We rotate until we are 0.1° sure to be in the right position
--		for (step_size = (2.0*PI/it_steps);step_size>(2.0*PI/3600.0);step_size=(2.0*PI/it_steps))
-+		for (step_size = (2.0*M_PI/it_steps);step_size>(2.0*M_PI/3600.0);step_size=(2.0*M_PI/it_steps))
- 		{
- 			for(alpha_x=angle_range_min_x;alpha_x<angle_range_max_x;alpha_x=alpha_x+step_size)
- 			{
-@@ -744,11 +744,11 @@
- 
- 		//Do a Monte Carlo approach and start from the Principal Axis System
- 		//and rotate +/- 60° around each axis in a first iteration
--		double	angle_range_min_x=-PI/3.0,angle_range_max_x=PI/3.0,
--				angle_range_min_y=-PI/3.0,angle_range_max_y=PI/3.0,
--				angle_range_min_z=-PI/3.0,angle_range_max_z=PI/3.0;
-+		double	angle_range_min_x=-M_PI/3.0,angle_range_max_x=M_PI/3.0,
-+				angle_range_min_y=-M_PI/3.0,angle_range_max_y=M_PI/3.0,
-+				angle_range_min_z=-M_PI/3.0,angle_range_max_z=M_PI/3.0;
- 		
--		for (step_size = (2.0*PI/it_steps);step_size>(2.0*PI/360.0);step_size=(2.0*PI/it_steps))
-+		for (step_size = (2.0*M_PI/it_steps);step_size>(2.0*M_PI/360.0);step_size=(2.0*M_PI/it_steps))
- 		{
- 			for(alpha_x=angle_range_min_x;alpha_x<angle_range_max_x;alpha_x=alpha_x+step_size)
- 			{

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-occ-6.6.patch b/media-gfx/freecad/files/freecad-0.12.5284-occ-6.6.patch
deleted file mode 100644
index e3722e8..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-occ-6.6.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-diff -Naur freecad-0.12.5284-r3-orig/work/FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp freecad-0.12.5284-r3/work/FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp
---- freecad-0.12.5284-r3-orig/work/FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp	2013-09-15 22:53:34.135326244 -0700
-+++ freecad-0.12.5284-r3/work/FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp	2013-09-15 22:54:04.493854451 -0700
-@@ -42,9 +42,13 @@
- 
- #include "utilities.h"
- 
-+#include <Standard_Version.hxx>
- #include <BRepAdaptor_Curve.hxx>
- #include <BRepBuilderAPI_MakeEdge.hxx>
- #include <BRepTools.hxx>
-+#if OCC_VERSION_HEX >= 0x060600
-+#include <BRepClass3d.hxx>
-+#endif
- #include <BRep_Tool.hxx>
- #include <TopExp_Explorer.hxx>
- #include <TopoDS.hxx>
-@@ -161,7 +165,11 @@
- 
-   // get 2 shells
-   TopoDS_Solid solid = TopoDS::Solid( aShape );
-+#if OCC_VERSION_HEX >= 0x060600
-+  TopoDS_Shell outerShell = BRepClass3d::OuterShell( solid );
-+#else
-   TopoDS_Shell outerShell = BRepTools::OuterShell( solid );
-+#endif
-   TopoDS_Shape innerShell;
-   int nbShells = 0;
-   for ( TopoDS_Iterator It (solid); It.More(); It.Next(), ++nbShells )
-@@ -401,7 +409,11 @@
- {
-   // get 2 shells
-   TopoDS_Solid solid = TopoDS::Solid( aShape );
-+#if OCC_VERSION_HEX >= 0x060600
-+  TopoDS_Shell outerShell = BRepClass3d::OuterShell( solid );
-+#else
-   TopoDS_Shell outerShell = BRepTools::OuterShell( solid );
-+#endif
-   TopoDS_Shape innerShell;
-   int nbShells = 0;
-   for ( TopoDS_Iterator It (solid); It.More(); It.Next(), ++nbShells )
-diff -Naur freecad-0.12.5284-r3-orig/work/FreeCAD-0.12.5284/src/Mod/Part/App/TopoShapeSolidPyImp.cpp freecad-0.12.5284-r3/work/FreeCAD-0.12.5284/src/Mod/Part/App/TopoShapeSolidPyImp.cpp
---- freecad-0.12.5284-r3-orig/work/FreeCAD-0.12.5284/src/Mod/Part/App/TopoShapeSolidPyImp.cpp	2013-09-15 22:53:34.094324180 -0700
-+++ freecad-0.12.5284-r3/work/FreeCAD-0.12.5284/src/Mod/Part/App/TopoShapeSolidPyImp.cpp	2013-09-15 22:54:24.414857241 -0700
-@@ -23,8 +23,12 @@
- 
- #include "PreCompiled.h"
- 
-+#include <Standard_Version.hxx>
- #include <BRepGProp.hxx>
- #include <BRepTools.hxx>
-+#if OCC_VERSION_HEX >= 0x060600
-+#include <BRepClass3d.hxx>
-+#endif
- #include <GProp_GProps.hxx>
- #include <BRepBuilderAPI_MakeSolid.hxx>
- #include <TopExp_Explorer.hxx>
-@@ -104,7 +108,11 @@
-     TopoDS_Shell shell;
-     const TopoDS_Shape& shape = getTopoShapePtr()->_Shape;
-     if (!shape.IsNull() && shape.ShapeType() == TopAbs_SOLID)
-+#if OCC_VERSION_HEX >= 0x060600
-+        shell = BRepClass3d::OuterShell(TopoDS::Solid(shape));
-+#else
-         shell = BRepTools::OuterShell(TopoDS::Solid(shape));
-+#endif
-     return Py::Object(new TopoShapeShellPy(new TopoShape(shell)),true);
- }
- 

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-qt3support.patch b/media-gfx/freecad/files/freecad-0.12.5284-qt3support.patch
deleted file mode 100644
index 1548c2f..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-qt3support.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -ruN FreeCAD-0.12.5284.orig/src/Mod/Arch/Resources/ui/archprefs-base.ui FreeCAD-0.12.5284/src/Mod/Arch/Resources/ui/archprefs-base.ui
---- FreeCAD-0.12.5284.orig/src/Mod/Arch/Resources/ui/archprefs-base.ui	2012-01-03 13:26:11.000000000 +0100
-+++ FreeCAD-0.12.5284/src/Mod/Arch/Resources/ui/archprefs-base.ui	2012-01-07 17:15:29.000000000 +0100
-@@ -133,7 +133,7 @@
-   </layout>
-  </widget>
-  <layoutdefault spacing="6" margin="11"/>
-- <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
-+ <pixmapfunction></pixmapfunction>
-  <customwidgets>
-   <customwidget>
-    <class>Gui::ColorButton</class>
-diff -ruN FreeCAD-0.12.5284.orig/src/Mod/Draft/Resources/ui/userprefs-base.ui FreeCAD-0.12.5284/src/Mod/Draft/Resources/ui/userprefs-base.ui
---- FreeCAD-0.12.5284.orig/src/Mod/Draft/Resources/ui/userprefs-base.ui	2012-01-03 13:25:30.000000000 +0100
-+++ FreeCAD-0.12.5284/src/Mod/Draft/Resources/ui/userprefs-base.ui	2012-01-07 17:15:11.000000000 +0100
-@@ -957,7 +957,7 @@
-   </layout>
-  </widget>
-  <layoutdefault spacing="6" margin="11"/>
-- <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
-+ <pixmapfunction></pixmapfunction>
-  <customwidgets>
-   <customwidget>
-    <class>Gui::FileChooser</class>
-diff -ruN FreeCAD-0.12.5284.orig/src/Mod/Draft/Resources/ui/userprefs-import.ui FreeCAD-0.12.5284/src/Mod/Draft/Resources/ui/userprefs-import.ui
---- FreeCAD-0.12.5284.orig/src/Mod/Draft/Resources/ui/userprefs-import.ui	2012-01-03 13:25:30.000000000 +0100
-+++ FreeCAD-0.12.5284/src/Mod/Draft/Resources/ui/userprefs-import.ui	2012-01-07 17:14:50.000000000 +0100
-@@ -411,7 +411,7 @@
-   </layout>
-  </widget>
-  <layoutdefault spacing="6" margin="11"/>
-- <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
-+ <pixmapfunction></pixmapfunction>
-  <customwidgets>
-   <customwidget>
-    <class>Gui::FileChooser</class>

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-removeoldswig.patch b/media-gfx/freecad/files/freecad-0.12.5284-removeoldswig.patch
deleted file mode 100644
index b768178..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-removeoldswig.patch
+++ /dev/null
@@ -1,111 +0,0 @@
---- src/Base/Interpreter.cpp.old	2010-08-27 16:24:16.000000000 +0200
-+++ src/Base/Interpreter.cpp	2011-12-24 00:13:52.356641021 +0100
-@@ -503,11 +503,6 @@
- #if (defined(HAVE_SWIG) && (HAVE_SWIG == 1))
- namespace Swig_python { extern int createSWIGPointerObj_T(const char* TypeName, void* obj, PyObject** ptr, int own); }
- #endif
--namespace Swig_1_3_25 { extern int createSWIGPointerObj_T(const char* TypeName, void* obj, PyObject** ptr, int own); }
--namespace Swig_1_3_33 { extern int createSWIGPointerObj_T(const char* TypeName, void* obj, PyObject** ptr, int own); }
--namespace Swig_1_3_36 { extern int createSWIGPointerObj_T(const char* TypeName, void* obj, PyObject** ptr, int own); }
--namespace Swig_1_3_38 { extern int createSWIGPointerObj_T(const char* TypeName, void* obj, PyObject** ptr, int own); }
--namespace Swig_1_3_40 { extern int createSWIGPointerObj_T(const char* TypeName, void* obj, PyObject** ptr, int own); }
- 
- PyObject* InterpreterSingleton::createSWIGPointerObj(const char* Module, const char* TypeName, void* Pointer, int own)
- {
-@@ -517,21 +512,6 @@
-     int version = getSWIGVersionFromModule(Module);
-     switch (version&0xff)
-     {
--    case 25:
--        result = Swig_1_3_25::createSWIGPointerObj_T(TypeName, Pointer, &proxy, own);
--        break;
--    case 33:
--        result = Swig_1_3_33::createSWIGPointerObj_T(TypeName, Pointer, &proxy, own);
--        break;
--    case 36:
--        result = Swig_1_3_36::createSWIGPointerObj_T(TypeName, Pointer, &proxy, own);
--        break;
--    case 38:
--        result = Swig_1_3_38::createSWIGPointerObj_T(TypeName, Pointer, &proxy, own);
--        break;
--    case 40:
--        result = Swig_1_3_40::createSWIGPointerObj_T(TypeName, Pointer, &proxy, own);
--        break;
-     default:
- #if (defined(HAVE_SWIG) && (HAVE_SWIG == 1))
-     result = Swig_python::createSWIGPointerObj_T(TypeName, Pointer, &proxy, own);
-@@ -550,11 +530,6 @@
- #if (defined(HAVE_SWIG) && (HAVE_SWIG == 1))
- namespace Swig_python { extern int convertSWIGPointerObj_T(const char* TypeName, PyObject* obj, void** ptr, int flags); }
- #endif
--namespace Swig_1_3_25 { extern int convertSWIGPointerObj_T(const char* TypeName, PyObject* obj, void** ptr, int flags); }
--namespace Swig_1_3_33 { extern int convertSWIGPointerObj_T(const char* TypeName, PyObject* obj, void** ptr, int flags); }
--namespace Swig_1_3_36 { extern int convertSWIGPointerObj_T(const char* TypeName, PyObject* obj, void** ptr, int flags); }
--namespace Swig_1_3_38 { extern int convertSWIGPointerObj_T(const char* TypeName, PyObject* obj, void** ptr, int flags); }
--namespace Swig_1_3_40 { extern int convertSWIGPointerObj_T(const char* TypeName, PyObject* obj, void** ptr, int flags); }
- 
- bool InterpreterSingleton::convertSWIGPointerObj(const char* Module, const char* TypeName, PyObject* obj, void** ptr, int flags)
- {
-@@ -563,21 +538,6 @@
-     int version = getSWIGVersionFromModule(Module);
-     switch (version&0xff)
-     {
--    case 25:
--        result = Swig_1_3_25::convertSWIGPointerObj_T(TypeName, obj, ptr, flags);
--        break;
--    case 33:
--        result = Swig_1_3_33::convertSWIGPointerObj_T(TypeName, obj, ptr, flags);
--        break;
--    case 36:
--        result = Swig_1_3_36::convertSWIGPointerObj_T(TypeName, obj, ptr, flags);
--        break;
--    case 38:
--        result = Swig_1_3_38::convertSWIGPointerObj_T(TypeName, obj, ptr, flags);
--        break;
--    case 40:
--        result = Swig_1_3_40::convertSWIGPointerObj_T(TypeName, obj, ptr, flags);
--        break;
-     default:
- #if (defined(HAVE_SWIG) && (HAVE_SWIG == 1))
-         result = Swig_python::convertSWIGPointerObj_T(TypeName, obj, ptr, flags);
-@@ -596,11 +556,6 @@
- #if (defined(HAVE_SWIG) && (HAVE_SWIG == 1))
- namespace Swig_python { extern void cleanupSWIG_T(const char* TypeName); }
- #endif
--namespace Swig_1_3_25 { extern void cleanupSWIG_T(const char* TypeName); }
--namespace Swig_1_3_33 { extern void cleanupSWIG_T(const char* TypeName); }
--namespace Swig_1_3_36 { extern void cleanupSWIG_T(const char* TypeName); }
--namespace Swig_1_3_38 { extern void cleanupSWIG_T(const char* TypeName); }
--namespace Swig_1_3_40 { extern void cleanupSWIG_T(const char* TypeName); }
- 
- void InterpreterSingleton::cleanupSWIG(const char* TypeName)
- {
-@@ -608,9 +563,4 @@
- #if (defined(HAVE_SWIG) && (HAVE_SWIG == 1))
-     Swig_python::cleanupSWIG_T(TypeName);
- #endif
--    Swig_1_3_25::cleanupSWIG_T(TypeName);
--    Swig_1_3_33::cleanupSWIG_T(TypeName);
--    Swig_1_3_36::cleanupSWIG_T(TypeName);
--    Swig_1_3_38::cleanupSWIG_T(TypeName);
--    Swig_1_3_40::cleanupSWIG_T(TypeName);
- }
---- src/Base/Makefile.am.old	2011-12-24 00:14:25.625540687 +0100
-+++ src/Base/Makefile.am	2010-10-27 12:29:37.000000000 +0200
-@@ -65,16 +65,6 @@
- 		Swap.cpp \
- 		swigpyrun.inl \
- 		swigpyrun.cpp \
--		swigpyrun_1.3.25.cpp \
--		swigpyrun_1.3.25.h \
--		swigpyrun_1.3.33.cpp \
--		swigpyrun_1.3.33.h \
--		swigpyrun_1.3.36.cpp \
--		swigpyrun_1.3.36.h \
--		swigpyrun_1.3.38.cpp \
--		swigpyrun_1.3.38.h \
--		swigpyrun_1.3.40.cpp \
--		swigpyrun_1.3.40.h \
- 		TimeInfo.cpp \
- 		Type.cpp \
- 		Tools.cpp \

diff --git a/media-gfx/freecad/files/freecad-0.12.5284-salomesmesh-occ-6.5.5.patch b/media-gfx/freecad/files/freecad-0.12.5284-salomesmesh-occ-6.5.5.patch
deleted file mode 100644
index 50e30e6..0000000
--- a/media-gfx/freecad/files/freecad-0.12.5284-salomesmesh-occ-6.5.5.patch
+++ /dev/null
@@ -1,228 +0,0 @@
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp
-@@ -1374,7 +1374,7 @@
-                 const SMDS_MeshNode *    n1,
-                 const SMDS_MeshNode *    n2)
- {
--  double angle = 2*PI; // bad angle
-+  double angle = 2*M_PI; // bad angle
- 
-   // get normals
-   SMESH::Controls::TSequenceOfXYZ P1, P2;
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/SMESH/SMESH_Pattern.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/SMESH/SMESH_Pattern.cpp
-@@ -1234,7 +1234,7 @@
-         maxLen2 = Max( maxLen2, ( n[1]->myUV - n[2]->myUV ).SquareModulus() );
-       }
-       maxLen2 = Max( maxLen2, ( n[2]->myUV - node->myUV ).SquareModulus() );
--      minDiag = sqrt( maxLen2 ) * PI / 60.; // ~ maxLen * Sin( 3 deg )
-+      minDiag = sqrt( maxLen2 ) * M_PI / 60.; // ~ maxLen * Sin( 3 deg )
-     }
- 
-     // check if newUV is behind 3 dirs: n[0]-n[1], n[1]-n[2] and n[0]-n[2]
-@@ -1721,9 +1721,9 @@
-         if ( iDir == 1 )
-           aNorm[ iDir ].Reverse();  // along iDir isoline
- 
--        double angle = tgt1.Angle( tgt2 ); //  [-PI, PI]
-+        double angle = tgt1.Angle( tgt2 ); //  [-M_PI, M_PI]
-         // maybe angle is more than |PI|
--        if ( Abs( angle ) > PI / 2. ) {
-+        if ( Abs( angle ) > M_PI / 2. ) {
-           // check direction of the last but one perpendicular isoline
-           TIsoNode* prevNode = bndNode2->GetNext( iDir, 0 );
-           bndNode1 = prevNode->GetBoundaryNode( 1 - iDir, 0 );
-@@ -1734,7 +1734,7 @@
-           double angle2 = tgt1.Angle( isoDir );
-           //cout << " isoDir: "<< isoDir.X() <<" "<<isoDir.Y() << " ANGLE: "<< angle << " "<<angle2<<endl;
-           if (angle2 * angle < 0 && // check the sign of an angle close to PI
--              Abs ( Abs ( angle ) - PI ) <= PI / 180. ) {
-+              Abs ( Abs ( angle ) - M_PI ) <= M_PI / 180. ) {
-             //MESSAGE("REVERSE ANGLE");
-             angle = -angle;
-           }
-@@ -1746,7 +1746,7 @@
-             // cout << "bndNode1: " << bndNode1->myUV.X()<<" "<<bndNode1->myUV.Y()<< endl;
-             // cout << "bndNode2: " << bndNode2->myUV.X()<<" "<<bndNode2->myUV.Y()<<endl;
-             // cout <<" tgt: " << tgt1.X()<<" "<<tgt1.Y()<<"  "<< tgt2.X()<<" "<<tgt2.Y()<<endl;
--            angle += ( angle < 0 ) ? 2. * PI : -2. * PI;
-+            angle += ( angle < 0 ) ? 2. * M_PI : -2. * M_PI;
-           }
-         }
-         aTgt[ iDir ] = tgt1.Rotated( angle * ratio[ iDir ] ).XY();
-@@ -1785,7 +1785,7 @@
-     double initAngle = initTgt1.Angle( initTgt2 );
-     double angle = node->myDir[0].Angle( node->myDir[1] );
-     if ( reversed ) angle = -angle;
--    if ( initAngle > angle && initAngle - angle > PI / 2.1 ) {
-+    if ( initAngle > angle && initAngle - angle > M_PI / 2.1 ) {
-       // find a close internal node
-       TIsoNode* nClose = 0;
-       list< TIsoNode* > testNodes;
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/Controls/SMESH_Controls.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/Controls/SMESH_Controls.cpp
-@@ -332,12 +332,12 @@
-     aMin = Min(aMin,A0);
-   }
- 
--  return aMin * 180.0 / PI;
-+  return aMin * 180.0 / M_PI;
- }
- 
- double MinimumAngle::GetBadRate( double Value, int nbNodes ) const
- {
--  //const double aBestAngle = PI / nbNodes;
-+  //const double aBestAngle = M_PI / nbNodes;
-   const double aBestAngle = 180.0 - ( 360.0 / double(nbNodes) );
-   return ( fabs( aBestAngle - Value ));
- }
-@@ -831,19 +831,19 @@
-   gp_XYZ N  = GI.Crossed( GJ );
- 
-   if ( N.Modulus() < gp::Resolution() )
--    return PI / 2;
-+    return M_PI / 2;
- 
-   N.Normalize();
- 
-   double H = ( thePnt2 - theG ).Dot( N );
--  return asin( fabs( H / L ) ) * 180. / PI;
-+  return asin( fabs( H / L ) ) * 180. / M_PI;
- }
- 
- double Warping::GetBadRate( double Value, int /*nbNodes*/ ) const
- {
-   // the warp is in the range [0.0,PI/2]
-   // 0.0 = good (no warp)
--  // PI/2 = bad  (face pliee)
-+  // M_PI/2 = bad  (face pliee)
-   return Value;
- }
- 
-@@ -915,14 +915,14 @@
-     return 0.;
- 
-   // Compute skew
--  static double PI2 = PI / 2.;
-+  static double PI2 = M_PI / 2.;
-   if ( P.size() == 3 )
-   {
-     double A0 = fabs( PI2 - skewAngle( P( 3 ), P( 1 ), P( 2 ) ) );
-     double A1 = fabs( PI2 - skewAngle( P( 1 ), P( 2 ), P( 3 ) ) );
-     double A2 = fabs( PI2 - skewAngle( P( 2 ), P( 3 ), P( 1 ) ) );
- 
--    return Max( A0, Max( A1, A2 ) ) * 180. / PI;
-+    return Max( A0, Max( A1, A2 ) ) * 180. / M_PI;
-   }
-   else
-   {
-@@ -939,7 +939,7 @@
-     if ( A < Precision::Angular() )
-       return 0.;
- 
--    return A * 180. / PI;
-+    return A * 180. / M_PI;
-   }
- }
- 
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_CompositeHexa_3D.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_CompositeHexa_3D.cpp
-@@ -812,7 +812,7 @@
-     int iMyCommon;
-     if ( mySides.Contain( otherSide, &iMyCommon ) ) {
-       // check if normals of two faces are collinear at all vertices of a otherSide
--      const double angleTol = PI / 180 / 2;
-+      const double angleTol = M_PI / 180 / 2;
-       int iV, nbV = otherSide.NbVertices(), nbCollinear = 0;
-       for ( iV = 0; iV < nbV; ++iV )
-       {
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_RadialQuadrangle_1D2D.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_RadialQuadrangle_1D2D.cpp
-@@ -355,8 +355,8 @@
-       for(; itn != theNodes.end(); itn++ ) {
-         CNodes.push_back( (*itn).second );
-         double ang = (*itn).first - fang;
--        if( ang>PI ) ang = ang - 2*PI;
--        if( ang<-PI ) ang = ang + 2*PI;
-+        if( ang>M_PI ) ang = ang - 2*M_PI;
-+        if( ang<-M_PI ) ang = ang + 2*M_PI;
-         Angles.Append( ang ); 
-       }
-     }
-@@ -404,7 +404,7 @@
-     // a segment of line
-     double fp, lp;
-     Handle(Geom_Circle) aCirc = Handle(Geom_Circle)::DownCast( getCurve( CircEdge, &fp, &lp ));
--    if( fabs(fabs(lp-fp)-PI) > Precision::Confusion() ) {
-+    if( fabs(fabs(lp-fp)-M_PI) > Precision::Confusion() ) {
-       // not half of circle
-       return error(COMPERR_BAD_SHAPE);
-     }
-@@ -434,8 +434,8 @@
-     for(; itn != theNodes.end(); itn++ ) {
-       CNodes.push_back( (*itn).second );
-       double ang = (*itn).first - fang;
--      if( ang>PI ) ang = ang - 2*PI;
--      if( ang<-PI ) ang = ang + 2*PI;
-+      if( ang>M_PI ) ang = ang - 2*M_PI;
-+      if( ang<-M_PI ) ang = ang + 2*M_PI;
-       Angles.Append( ang );
-     }
-     const SMDS_MeshNode* NF = theNodes.begin()->second;
-@@ -587,8 +587,8 @@
-     for(; itn != theNodes.end(); itn++ ) {
-       CNodes.push_back( (*itn).second );
-       double ang = (*itn).first - fang;
--      if( ang>PI ) ang = ang - 2*PI;
--      if( ang<-PI ) ang = ang + 2*PI;
-+      if( ang>M_PI ) ang = ang - 2*M_PI;
-+      if( ang<-M_PI ) ang = ang + 2*M_PI;
-       Angles.Append( ang );
-     }
-     P1 = gp_Pnt( NF->X(), NF->Y(), NF->Z() );
-@@ -1055,7 +1055,7 @@
-       aLine = Handle(Geom_Line)::DownCast(C3);
-     }
-     bool ok = !aCirc.IsNull() && !aLine.IsNull();
--    if( fabs(fabs(lp-fp)-PI) > Precision::Confusion() ) {
-+    if( fabs(fabs(lp-fp)-M_PI) > Precision::Confusion() ) {
-       // not half of circle
-       ok = false;
-     }
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cpp
-@@ -1037,19 +1037,19 @@
-           double ang1 = fabs(VN1.Angle(VI1));
-           double ang2 = fabs(VN2.Angle(VI2));
-           double h1,h2;
--          if(ang1>PI/3.)
-+          if(ang1>M_PI/3.)
-             h1 = VI1.Magnitude()/2;
-           else
-             h1 = VI1.Magnitude()*cos(ang1);
--          if(ang2>PI/3.)
-+          if(ang2>M_PI/3.)
-             h2 = VI2.Magnitude()/2;
-           else
-             h2 = VI2.Magnitude()*cos(ang2);
-           double coef1 = 0.5;
--          if(ang1<PI/3)
-+          if(ang1<M_PI/3)
-             coef1 -= cos(ang1)*0.25;
-           double coef2 = 0.5;
--          if(ang2<PI/3)
-+          if(ang2<M_PI/3)
-             coef2 -= cos(ang1)*0.25;
- 
-           SMDS_MeshNode* aNode1 = const_cast<SMDS_MeshNode*>(Ns1[4]);
---- FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_AutomaticLength.cpp
-+++ FreeCAD-0.12.5284/src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_AutomaticLength.cpp
-@@ -116,7 +116,7 @@
-    */
-   //================================================================================
- 
--  const double a14divPI = 14. / PI;
-+  const double a14divPI = 14. / M_PI;
- 
-   inline double segLength(double S0, double edgeLen, double minLen )
-   {

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-CMakefile.patch b/media-gfx/freecad/files/freecad-0.13.1830-CMakefile.patch
deleted file mode 100644
index 58e9958..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-CMakefile.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- CMakeLists.txt	2014-01-06 13:46:44.516313646 +0100
-+++ CMakeLists.txt.new	2014-01-06 13:58:16.035280554 +0100
-@@ -69,9 +69,15 @@
-     SET(INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
- endif(WIN32)
- 
--SET(CMAKE_INSTALL_DATADIR data CACHE PATH "Output directory for data and resource files")
--SET(CMAKE_INSTALL_INCLUDEDIR include CACHE PATH "Output directory for header files")
--SET(CMAKE_INSTALL_DOCDIR doc CACHE PATH "Output directory for documentation and license files")
-+if(NOT CMAKE_INSTALL_DATADIR)
-+	SET(CMAKE_INSTALL_DATADIR data CACHE PATH "Output directory for data and resource files")
-+endif(NOT CMAKE_INSTALL_DATADIR)
-+if(NOT CMAKE_INSTALL_INCLUDEDIR)
-+	SET(CMAKE_INSTALL_INCLUDEDIR include CACHE PATH "Output directory for header files")
-+endif(NOT CMAKE_INSTALL_INCLUDEDIR)
-+if(NOT CMAKE_INSTALL_DOCDIR)
-+	SET(CMAKE_INSTALL_DOCDIR doc CACHE PATH "Output directory for documentation and license files")
-+endif(NOT CMAKE_INSTALL_DOCDIR)
- 
- # used as compiler defines
- SET(RESOURCEDIR "${CMAKE_INSTALL_DATADIR}")

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-avoid-include-salome.patch b/media-gfx/freecad/files/freecad-0.13.1830-avoid-include-salome.patch
deleted file mode 100644
index 0db6609..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-avoid-include-salome.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/3rdParty/salomesmesh/CMakeLists.txt	2014-01-06 14:06:05.495258088 +0100
-+++ src/3rdParty/salomesmesh/CMakeLists.txt.new	2014-01-06 15:05:53.316086394 +0100
-@@ -206,8 +206,4 @@
-             DESTINATION lib
-         )
-         # Headers are installed by default in /usr/local/include/SMESH-5.1.2.7
--        INSTALL(DIRECTORY inc/
--            DESTINATION include
--            FILES_MATCHING PATTERN "*.h*"
--        )
- ENDIF(UNIX)

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-cmake-2.8.12.patch b/media-gfx/freecad/files/freecad-0.13.1830-cmake-2.8.12.patch
deleted file mode 100644
index e0e0e9f..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-cmake-2.8.12.patch
+++ /dev/null
@@ -1,294 +0,0 @@
-commit f061b6f7ea667e1d6944590d67b9b5b6659e4ba0
-Author: wmayer <wmayer@users.sourceforge.net>
-Date:   Tue Oct 22 10:33:18 2013 +0200
-
-    0001278: No build possible with current CMake version 2.8.12
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 862cd7b..11c9b43 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -270,14 +270,14 @@ MARK_AS_ADVANCED(FORCE FREECAD_LIBPACK_CHECKFILE6X FREECAD_LIBPACK_CHECKFILE7X)
-     macro(fc_wrap_cpp outfiles )
-         # get include dirs
-         QT4_GET_MOC_FLAGS(moc_flags)
--        QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
-+        QT4_EXTRACT_OPTIONS(moc_files moc_options moc_target ${ARGN})
-         # fixes bug 0000585: bug with boost 1.48
-         SET(moc_options ${moc_options} -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED)
- 
-         foreach(it ${moc_files})
-             get_filename_component(it ${it} ABSOLUTE)
-             QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile)
--            QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}")
-+            QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}" "${moc_target}")
-             set(${outfiles} ${${outfiles}} ${outfile})
-             add_file_dependencies(${it} ${outfile})
-         endforeach(it)
-diff --git a/cMake/FreeCadMacros.cmake b/cMake/FreeCadMacros.cmake
-index 5fa7680..78bc0b8 100644
---- a/cMake/FreeCadMacros.cmake
-+++ b/cMake/FreeCadMacros.cmake
-@@ -168,69 +168,6 @@ endmacro(generate_from_py)
- #endmacro(qt4_wrap_ui)
- 
- 
--# This is a special version of the built in macro qt4_add_resources that generates .cpp files
--#
--#macro(fc_add_resources outfiles )
--#    #QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
--#	set(ARGN )
--#    foreach (it ${rcc_files})
--#      get_filename_component(outfilename ${it} NAME_WE)
--#      get_filename_component(infile ${it} ABSOLUTE)
--#      get_filename_component(rc_path ${infile} PATH)
--#      set(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cpp)
--#      #  parse file for dependencies 
--#      #  all files are absolute paths or relative to the location of the qrc file
--#      file(READ "${infile}" _RC_FILE_CONTENTS)
--#      string(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
--#      set(_RC_DEPENDS)
--#      foreach(_RC_FILE ${_RC_FILES})
--#        string(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
--#        string(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
--#        if(NOT _ABS_PATH_INDICATOR)
--#          set(_RC_FILE "${rc_path}/${_RC_FILE}")
--#        endif(NOT _ABS_PATH_INDICATOR)
--#        set(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
--#      endforeach(_RC_FILE)
--#      add_custom_command(OUTPUT ${outfile}
--#        COMMAND ${QT_RCC_EXECUTABLE}
--#        ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
--#        MAIN_DEPENDENCY ${infile}
--#        DEPENDS ${_RC_DEPENDS})
--#      set(${outfiles} ${${outfiles}} ${outfile})
--#    endforeach (it)
--#endmacro(fc_add_resources)
--
--MACRO (fc_add_resources outfiles )
--  QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
--
--  FOREACH (it ${rcc_files})
--    GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
--    GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
--    GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
--    SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cpp)
--    #  parse file for dependencies 
--    #  all files are absolute paths or relative to the location of the qrc file
--    FILE(READ "${infile}" _RC_FILE_CONTENTS)
--    STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
--    SET(_RC_DEPENDS)
--    FOREACH(_RC_FILE ${_RC_FILES})
--      STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
--      STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
--      IF(NOT _ABS_PATH_INDICATOR)
--        SET(_RC_FILE "${rc_path}/${_RC_FILE}")
--      ENDIF(NOT _ABS_PATH_INDICATOR)
--      SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
--    ENDFOREACH(_RC_FILE)
--    ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
--      COMMAND ${QT_RCC_EXECUTABLE}
--      ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
--      MAIN_DEPENDENCY ${infile}
--      DEPENDS ${_RC_DEPENDS})
--    SET(${outfiles} ${${outfiles}} ${outfile})
--  ENDFOREACH (it)
--
--ENDMACRO (fc_add_resources)
--
- MACRO(ADD_MSVC_PRECOMPILED_HEADER PrecompiledHeader PrecompiledSource SourcesVar)
-   IF(MSVC)
-     GET_FILENAME_COMPONENT(PrecompiledBasename ${PrecompiledHeader} NAME_WE)
-diff --git a/src/Gui/CMakeLists.txt b/src/Gui/CMakeLists.txt
-index b9f1939..124c4f8 100644
---- a/src/Gui/CMakeLists.txt
-+++ b/src/Gui/CMakeLists.txt
-@@ -608,7 +608,7 @@ SOURCE_GROUP("Widget\\iisTaskPanel\\Mocs" FILES ${iis_MOC_SRCS})
- #SET(Resource_RCS
- #   Icons/resource.qrc
- #   Language/translation.qrc)
--#fc_add_resources(Resource_SRCS ${Resource_RCS})
-+#qt4_add_resources(Resource_SRCS ${Resource_RCS})
- #SET(Resource_SRCS
- #   ${Resource_SRCS}
- #   Icons/resource.qrc
-diff --git a/src/Mod/Image/Gui/AppImageGui.cpp b/src/Mod/Image/Gui/AppImageGui.cpp
-index c26129e..c817860 100644
---- a/src/Mod/Image/Gui/AppImageGui.cpp
-+++ b/src/Mod/Image/Gui/AppImageGui.cpp
-@@ -20,7 +20,6 @@
- #include <Gui/Language/Translator.h>
- #include "Workbench.h"
- #include "ViewProviderImagePlane.h"
--#include "qrc_Image.cpp"
- 
- // use a different name to CreateCommand()
- void CreateImageCommands(void);
-diff --git a/src/Mod/Image/Gui/CMakeLists.txt b/src/Mod/Image/Gui/CMakeLists.txt
-index cc967ee..4edb462 100644
---- a/src/Mod/Image/Gui/CMakeLists.txt
-+++ b/src/Mod/Image/Gui/CMakeLists.txt
-@@ -30,8 +30,7 @@ SET(ImageGui_RES_SRCS
-     Resources/Image.qrc
- )
- 
--fc_add_resources(ImageGui_QRC_SRCS ${ImageGui_RES_SRCS})
--#QT4_ADD_RESOURCES(ImageGui_QRC_SRCS ${ImageGui_RES_SRCS})
-+qt4_add_resources(ImageGui_QRC_SRCS ${ImageGui_RES_SRCS})
- 
- set(ImageGui_UIC_SRCS
-     ImageOrientationDialog.ui
-@@ -40,7 +39,7 @@ qt4_wrap_ui(ImageGui_UIC_HDRS ${ImageGui_UIC_SRCS})
- 
- SET(ImageGui_SRCS
- #   ${ImageGui_MOC_SRCS}
--#   ${ImageGui_QRC_SRCS}
-+    ${ImageGui_QRC_SRCS}
-     AppImageGui.cpp
-     AppImageGuiPy.cpp
-     Command.cpp
-diff --git a/src/Mod/Mesh/Gui/AppMeshGui.cpp b/src/Mod/Mesh/Gui/AppMeshGui.cpp
-index 624d569..8fb68cf 100644
---- a/src/Mod/Mesh/Gui/AppMeshGui.cpp
-+++ b/src/Mod/Mesh/Gui/AppMeshGui.cpp
-@@ -50,7 +50,6 @@
- #include "ViewProviderDefects.h"
- #include "ViewProviderPython.h"
- #include "Workbench.h"
--#include "qrc_Mesh.cpp"
- 
- 
- // use a different name to CreateCommand()
-diff --git a/src/Mod/Mesh/Gui/CMakeLists.txt b/src/Mod/Mesh/Gui/CMakeLists.txt
-index cafca6c..9ef1dae 100644
---- a/src/Mod/Mesh/Gui/CMakeLists.txt
-+++ b/src/Mod/Mesh/Gui/CMakeLists.txt
-@@ -75,9 +75,9 @@ SET(Inventor_SRCS
- )
- SOURCE_GROUP("Inventor" FILES ${Inventor_SRCS})
- 
--fc_add_resources(resource_SRCS Resources/Mesh.qrc)
-+qt4_add_resources(resource_SRCS Resources/Mesh.qrc)
- SET(resource_SRCS
--#   ${resource_SRCS}
-+    ${resource_SRCS}
-     Resources/Mesh.qrc
- )
- SOURCE_GROUP("resource" FILES ${resource_SRCS})
-diff --git a/src/Mod/Part/Gui/AppPartGui.cpp b/src/Mod/Part/Gui/AppPartGui.cpp
-index 9c3ebb3..ae84470 100644
---- a/src/Mod/Part/Gui/AppPartGui.cpp
-+++ b/src/Mod/Part/Gui/AppPartGui.cpp
-@@ -57,7 +57,6 @@
- #include "Workbench.h"
- 
- #include <Gui/Language/Translator.h>
--#include "qrc_Part.cpp"
- 
- #include "Resources/icons/PartFeature.xpm"
- #include "Resources/icons/PartFeatureImport.xpm"
-diff --git a/src/Mod/Part/Gui/CMakeLists.txt b/src/Mod/Part/Gui/CMakeLists.txt
-index 375f6e4..87c4c28 100644
---- a/src/Mod/Part/Gui/CMakeLists.txt
-+++ b/src/Mod/Part/Gui/CMakeLists.txt
-@@ -50,7 +50,7 @@ set(PartGui_MOC_HDRS
- fc_wrap_cpp(PartGui_MOC_SRCS ${PartGui_MOC_HDRS})
- SOURCE_GROUP("Moc" FILES ${PartGui_MOC_SRCS})
- 
--fc_add_resources(PartGui_QRC_SRCS Resources/Part.qrc)
-+qt4_add_resources(PartGui_QRC_SRCS Resources/Part.qrc)
- 
- set(PartGui_UIC_SRCS
-     CrossSections.ui
-@@ -77,7 +77,7 @@ set(PartGui_UIC_SRCS
- qt4_wrap_ui(PartGui_UIC_HDRS ${PartGui_UIC_SRCS})
- 
- SET(PartGui_SRCS
--#   ${PartGui_QRC_SRCS}
-+    ${PartGui_QRC_SRCS}
-     ${PartGui_UIC_HDRS}
-     AppPartGui.cpp
-     Command.cpp
-diff --git a/src/Mod/Points/Gui/AppPointsGui.cpp b/src/Mod/Points/Gui/AppPointsGui.cpp
-index 9acd98e..953d3e2 100644
---- a/src/Mod/Points/Gui/AppPointsGui.cpp
-+++ b/src/Mod/Points/Gui/AppPointsGui.cpp
-@@ -33,7 +33,6 @@
- 
- #include "ViewProvider.h"
- #include "Workbench.h"
--#include "qrc_Points.cpp"
- 
- // use a different name to CreateCommand()
- void CreatePointsCommands(void);
-diff --git a/src/Mod/Points/Gui/CMakeLists.txt b/src/Mod/Points/Gui/CMakeLists.txt
-index fab12ff..7e30f0d 100644
---- a/src/Mod/Points/Gui/CMakeLists.txt
-+++ b/src/Mod/Points/Gui/CMakeLists.txt
-@@ -32,9 +32,9 @@ SET(Dialogs_SRCS
- )
- SOURCE_GROUP("Dialogs" FILES ${Dialogs_SRCS})
- 
--fc_add_resources(Resource_SRCS Resources/Points.qrc)
-+qt4_add_resources(Resource_SRCS Resources/Points.qrc)
- SET(Resource_SRCS
--#   ${Resource_SRCS}
-+    ${Resource_SRCS}
-     Resources/Points.qrc
- )
- SOURCE_GROUP("Resource" FILES ${Resource_SRCS})
-diff --git a/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp b/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
-index 156bd90..c59369a 100644
---- a/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
-+++ b/src/Mod/Raytracing/Gui/AppRaytracingGui.cpp
-@@ -32,7 +32,6 @@
- #include "DlgSettingsRayImp.h"
- #include "ViewProvider.h"
- #include "Workbench.h"
--#include "qrc_Raytracing.cpp"
- 
- 
- using namespace RaytracingGui;
-diff --git a/src/Mod/Raytracing/Gui/CMakeLists.txt b/src/Mod/Raytracing/Gui/CMakeLists.txt
-index 38aa739..1da30c9 100644
---- a/src/Mod/Raytracing/Gui/CMakeLists.txt
-+++ b/src/Mod/Raytracing/Gui/CMakeLists.txt
-@@ -43,8 +43,9 @@ set(RaytracingGui_MOC_HDRS
- fc_wrap_cpp(RaytracingGui_MOC_SRCS ${RaytracingGui_MOC_HDRS})
- SOURCE_GROUP("Moc" FILES ${RaytracingGui_MOC_SRCS})
- 
--fc_add_resources(Resource_SRCS Resources/Raytracing.qrc)
-+qt4_add_resources(Resource_SRCS Resources/Raytracing.qrc)
- SET(Resource_SRCS
-+    ${Resource_SRCS}
-     Resources/Raytracing.qrc
- )
- SOURCE_GROUP("Resource" FILES ${Resource_SRCS})
-diff --git a/src/Mod/Test/Gui/AppTestGui.cpp b/src/Mod/Test/Gui/AppTestGui.cpp
-index a027d9d..7c2ef21 100644
---- a/src/Mod/Test/Gui/AppTestGui.cpp
-+++ b/src/Mod/Test/Gui/AppTestGui.cpp
-@@ -28,7 +28,6 @@
- 
- #include "UnitTestPy.h"
- #include "UnitTestImp.h"
--#include "qrc_Test.cpp"
- 
- #include <Gui/Language/Translator.h>
- #include <Base/Console.h>
-diff --git a/src/Mod/Test/Gui/CMakeLists.txt b/src/Mod/Test/Gui/CMakeLists.txt
-index 9b8b672..eaa0dcd 100644
---- a/src/Mod/Test/Gui/CMakeLists.txt
-+++ b/src/Mod/Test/Gui/CMakeLists.txt
-@@ -30,9 +30,9 @@ SET(Dialogs_SRCS
- )
- SOURCE_GROUP("Dialogs" FILES ${Dialogs_SRCS})
- 
--fc_add_resources(Resource_SRCS Resources/Test.qrc)
-+qt4_add_resources(Resource_SRCS Resources/Test.qrc)
- SET(Resource_SRCS
--#   ${Resource_SRCS}
-+    ${Resource_SRCS}
-     Resources/Test.qrc
- )
- SOURCE_GROUP("Resource" FILES ${Resource_SRCS})

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-no-machdist.patch b/media-gfx/freecad/files/freecad-0.13.1830-no-machdist.patch
deleted file mode 100644
index 9e02f1b..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-no-machdist.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/Mod/CMakeLists.txt	2013-02-02 18:09:17.000000000 +0100
-+++ src/Mod/CMakeLists.txt.new	2014-01-19 18:00:27.215825143 +0100
-@@ -18,7 +18,7 @@
-     MESSAGE("Due to the missing Eigen3 library the Sketcher module won't be built")
-     MESSAGE("Due to the missing Eigen3 library the Robot module won't be built")
- ENDIF(EIGEN3_FOUND)
--add_subdirectory(Machining_Distortion)
-+#add_subdirectory(Machining_Distortion)
- 
- add_subdirectory(ReverseEngineering)
- add_subdirectory(MeshPart)

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch b/media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch
deleted file mode 100644
index 410929b..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-commit c1d14eab3c3f9f1141dc0b7fca7cc4441431b50b
-Author: wmayer <wmayer@users.sourceforge.net>
-Date:   Sat Dec 28 12:22:31 2013 +0100
-
-    + Fix OCC 6.7 build failure
-
-diff --git a/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp b/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp
-index 578f5be..bdc91c3 100644
---- a/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp
-+++ b/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp
-@@ -29,6 +29,7 @@
- # include <TopoDS.hxx>
- # include <TopoDS_Wire.hxx>
- # include <BRepOffsetAPI_MakePipeShell.hxx>
-+# include <Standard_Version.hxx>
- # include <TopTools_ListIteratorOfListOfShape.hxx>
- #endif
- 
-@@ -111,6 +112,36 @@ PyObject* BRepOffsetAPI_MakePipeShellPy::setSpineSupport(PyObject *args)
- 
- PyObject* BRepOffsetAPI_MakePipeShellPy::setAuxiliarySpine(PyObject *args)
- {
-+#if OCC_VERSION_HEX >= 0x060700
-+    PyObject *spine, *curv, *keep;
-+    if (!PyArg_ParseTuple(args, "O!O!O!",&Part::TopoShapePy::Type,&spine
-+                                        ,&PyBool_Type,&curv
-+                                        ,&PyInt_Type,&keep))
-+        return 0;
-+    const TopoDS_Shape& s = static_cast<Part::TopoShapePy*>(spine)->getTopoShapePtr()->_Shape;
-+    if (s.IsNull() || s.ShapeType() != TopAbs_WIRE) {
-+        PyErr_SetString(PyExc_TypeError, "spine is not a wire");
-+        return 0;
-+    }
-+
-+    BRepFill_TypeOfContact typeOfCantact;
-+    switch (PyLong_AsLong(keep)) {
-+    case 1:
-+        typeOfCantact = BRepFill_Contact;
-+        break;
-+    case 2:
-+        typeOfCantact = BRepFill_ContactOnBorder;
-+        break;
-+    default:
-+        typeOfCantact = BRepFill_NoContact;
-+        break;
-+    }
-+    this->getBRepOffsetAPI_MakePipeShellPtr()->SetMode(
-+        TopoDS::Wire(s),
-+        PyObject_IsTrue(curv) ? Standard_True : Standard_False,
-+        typeOfCantact);
-+    Py_Return;
-+#else
-     PyObject *spine, *curv, *keep;
-     if (!PyArg_ParseTuple(args, "O!O!O!",&Part::TopoShapePy::Type,&spine
-                                         ,&PyBool_Type,&curv
-@@ -127,6 +158,7 @@ PyObject* BRepOffsetAPI_MakePipeShellPy::setAuxiliarySpine(PyObject *args)
-         PyObject_IsTrue(curv) ? Standard_True : Standard_False,
-         PyObject_IsTrue(keep) ? Standard_True : Standard_False);
-     Py_Return;
-+#endif
- }
- 
- PyObject* BRepOffsetAPI_MakePipeShellPy::add(PyObject *args)

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-remove-qt3-support.patch b/media-gfx/freecad/files/freecad-0.13.1830-remove-qt3-support.patch
deleted file mode 100644
index 8f761d8..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-remove-qt3-support.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- freecad-0.13.1830/src/Mod/Arch/Resources/ui/archprefs-base.ui
-+++ freecad-0.13.1830/src/Mod/Arch/Resources/ui/archprefs-base.ui
-@@ -309,7 +309,7 @@
-   </layout>
-  </widget>
-  <layoutdefault spacing="6" margin="11"/>
-- <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
-+ <pixmapfunction></pixmapfunction>
-  <customwidgets>
-   <customwidget>
-    <class>Gui::ColorButton</class>
---- freecad-0.13.1830/src/Mod/Draft/Resources/ui/userprefs-base.ui
-+++ freecad-0.13.1830/src/Mod/Draft/Resources/ui/userprefs-base.ui
-@@ -1185,7 +1185,7 @@
-   </layout>
-  </widget>
-  <layoutdefault spacing="6" margin="11"/>
-- <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
-+ <pixmapfunction></pixmapfunction>
-  <customwidgets>
-   <customwidget>
-    <class>Gui::FileChooser</class>
---- freecad-0.13.1830/src/Mod/Draft/Resources/ui/userprefs-import.ui
-+++ freecad-0.13.1830/src/Mod/Draft/Resources/ui/userprefs-import.ui
-@@ -536,7 +536,7 @@
-   </layout>
-  </widget>
-  <layoutdefault spacing="6" margin="11"/>
-- <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
-+ <pixmapfunction></pixmapfunction>
-  <customwidgets>
-   <customwidget>
-    <class>Gui::FileChooser</class>

diff --git a/media-gfx/freecad/files/freecad-0.13.1830-startpage-links.patch b/media-gfx/freecad/files/freecad-0.13.1830-startpage-links.patch
deleted file mode 100644
index f8af21c..0000000
--- a/media-gfx/freecad/files/freecad-0.13.1830-startpage-links.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-commit dbdff257966c65feed6dd9360bc3d50549d9c4c9
-Author: Yorik van Havre <yorik@uncreated.net>
-Date:   Thu Sep 12 00:30:59 2013 -0300
-
-    Startpage: Fixed links
-
-diff --git a/src/Mod/Start/StartPage/StartPage.py b/src/Mod/Start/StartPage/StartPage.py
-index 478bf40..43985f3 100644
---- a/src/Mod/Start/StartPage/StartPage.py
-+++ b/src/Mod/Start/StartPage/StartPage.py
-@@ -84,7 +84,7 @@ text34 = translate("StartPage","creation time:")
- text35 = translate("StartPage","last modified:")
- text36 = translate("StartPage","location:")
- text37 = translate("StartPage","User manual")
--text38 = translate("StartPage","http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Online_Help_Toc")
-+text38 = translate("StartPage","http://www.freecadweb.org/wiki/index.php?title=Online_Help_Toc")
- text39 = translate("StartPage","Tutorials")
- text40 = translate("StartPage","Python resources")
- text41 = translate("StartPage","File not found")
-@@ -97,7 +97,7 @@ text47 = translate("StartPage","The section of the FreeCAd website dedicate dto
- text48 = translate("StartPage","A blog dedicated to teaching FreeCAD, maintained by members of the FreeCAD community")
- text49 = translate("StartPage","Getting started")
- text50 = translate("StartPage","The FreeCAD interface is divided in workbenches, which are sets of tools suited for a specific task. You can start with one of the workbenches in this list, or with the complete workbench, which presents you with some of the most used tools gathered from other workbenches. Click to read more about workbenches on the FreeCAD website.")
--text51 = translate("StartPage","http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Workbench_Concept")
-+text51 = translate("StartPage","http://www.freecadweb.org/wiki/index.php?title=Workbench_Concept")
- text52 = translate("StartPage","Ship Design")
- text53 = translate("StartPage","Designing and calculating ships")
- text54 = translate("StartPage","The <b>Ship Design</b> module offers several tools to help ship designers to view, model and calculate profiles and other specific properties of ship hulls.")
-@@ -159,7 +159,7 @@ page = """
-             ddiv.innerHTML = "Done fetching";
-             ddiv = document.getElementById("news");
-             ddiv.innerHTML = "Fetching data from the web...";
--            var tobj=new JSONscriptRequest('http://twitter.com/status/user_timeline/FreeCADNews.json?count=10&callback=showTweets');
-+            var tobj=new JSONscriptRequest('http://pipes.yahoo.com/pipes/pipe.run?_id=da8b612e97a6bb4588b1ce27db30efd9&_render=json&_callback=showTweets');
-             tobj.buildScriptTag(); // Build the script tag
-             tobj.addScriptTag(); // Execute (add) the script tag
-             ddiv.innerHTML = "Done fetching";
-@@ -182,19 +182,13 @@ page = """
-             ddiv = document.getElementById('news');
-             ddiv.innerHTML = "Received";
-             var html = ['<ul>'];
--            for (var i = 0; i < Math.min(5,data.length); i++) {
--                tf = placeLinks(data[i].text);
--                html.push('<li>',tf,'</li>');
-+            for (var i = 0; i < 8; i++) {
-+                html.push('<li><a href="', data.value.items[i].link, '">', data.value.items[i].title, '</a></li>');
-             }
-             html.push('</ul>');
-             ddiv.innerHTML = html.join('');
-         }
- 
--        function placeLinks(text) {
--            result=text.replace(/(https?:\/\/([-\w\.]+)+(:\d+)?(\/([\w\/_\.]*(\?\S+)?)?)?)/g,'<a href="$1">$1</a>');
--            return result;
--        }
--
-     </script>
- 
-     <style type="text/css">
-@@ -286,12 +280,12 @@ page = """
-       </div>
- 
-       <div class="block">
--        <h2>""" + text04 + """ <span class="from">""" + text44 + """</span></h2>
-+        <h2>""" + text04 + """</h2>
-         <div id="youtube">youtube videos</div>
-       </div>
- 
-       <div class="block">
--        <h2>""" + text05 + """ <span class="from">""" + text42 + """</span></h2>
-+        <h2>""" + text05 + """</h2>
-         <div id="news">news feed</div>
-       </div>
- 
-@@ -354,7 +348,7 @@ def getLinks():
-         <li><img src="web.png">&nbsp;
-             <a onMouseover="show('<p>""" + text07 + """</p>')" 
-                 onMouseout="show('')"
--                href="http://free-cad.sf.net/">""" + text08 + """</a></li>
-+                href="http://www.freecadweb.org/">""" + text08 + """</a></li>
-         <li><img src="web.png">&nbsp;
-             <a onMouseover="show('<p>""" + text45 + """</p>')" 
-                 onMouseout="show('')"
-@@ -362,11 +356,11 @@ def getLinks():
-         <li><img src="web.png">&nbsp;
-             <a onMouseover="show('<p>""" + text46 + """</p>')" 
-                 onMouseout="show('')"
--                href="http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Tutorials">""" + text39 + """</a></li>
-+                href="http://www.freecadweb.org/wiki/index.php?title=Tutorials">""" + text39 + """</a></li>
-         <li><img src="web.png">&nbsp;
-             <a onMouseover="show('<p>""" + text47 + """</p>')" 
-                 onMouseout="show('')"
--                href="http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Power_users_hub">""" + text40 + """</a></li>
-+                href="http://www.freecadweb.org/wiki/index.php?title=Power_users_hub">""" + text40 + """</a></li>
-         <li><img src="web.png">&nbsp;
-             <a onMouseover="show('<p>""" + text48 + """</p>')" 
-                 onMouseout="show('')"

diff --git a/media-gfx/freecad/freecad-0.12.5284-r4.ebuild b/media-gfx/freecad/freecad-0.12.5284-r4.ebuild
deleted file mode 100644
index 6d65408..0000000
--- a/media-gfx/freecad/freecad-0.12.5284-r4.ebuild
+++ /dev/null
@@ -1,119 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_DEPEND=2
-
-inherit eutils multilib fortran-2 python cmake-utils
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="http://sourceforge.net/apps/mediawiki/free-cad/"
-SRC_URI="mirror://sourceforge/free-cad/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="dev-cpp/eigen:3
-	dev-games/ode
-	<dev-libs/boost-1.57
-	dev-libs/libf2c
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c[icu]
-	dev-python/PyQt4[svg]
-	dev-python/pivy
-	dev-qt/designer:4
-	dev-qt/qtgui:4
-	dev-qt/qtopengl:4
-	dev-qt/qtsvg:4
-	dev-qt/qtwebkit:4
-	dev-qt/qtxmlpatterns:4
-	media-libs/SoQt
-	media-libs/coin[doc]
-	sci-libs/opencascade:6.7.1
-	sys-libs/zlib
-	virtual/glu"
-DEPEND="${RDEPEND}
-	>=dev-lang/swig-2.0.4-r1:0"
-
-# https://bugs.gentoo.org/show_bug.cgi?id=352435
-# https://www.gentoo.org/foundation/en/minutes/2011/20110220_trustees.meeting_log.txt
-RESTRICT="bindist mirror"
-
-S="${WORKDIR}/FreeCAD-${PV}"
-
-pkg_setup() {
-	fortran-2_pkg_setup
-	python_set_active_version 2
-
-	[ -z "${CASROOT}" ] && die "empty \$CASROOT, run eselect opencascade set or define otherwise"
-}
-
-src_prepare() {
-	einfo remove bundled libs
-	rm -rf src/3rdParty/{Pivy{,-0.5},boost}
-	einfo cleanup build system
-	find . -name "configure*" -print -delete
-
-	epatch \
-		"${FILESDIR}"/${P}-gcc46.patch \
-		"${FILESDIR}"/${P}-removeoldswig.patch \
-		"${FILESDIR}"/${P}-glu.patch \
-		"${FILESDIR}"/${P}-nodir.patch \
-		"${FILESDIR}"/${P}-qt3support.patch \
-		"${FILESDIR}"/${P}-boost148.patch \
-		"${FILESDIR}"/${P}-nopivy.patch \
-		"${FILESDIR}"/${P}-no-permissive.patch \
-		"${FILESDIR}"/${P}-cmake-2.8.12.patch \
-		"${FILESDIR}"/${P}-occ-6.5.5.patch \
-		"${FILESDIR}"/${P}-salomesmesh-occ-6.5.5.patch \
-		"${FILESDIR}"/${P}-occ-6.6.patch
-
-	local my_coin_version=$(best_version media-libs/coin)
-	local my_coin_path="${EROOT}"usr/share/doc/${my_coin_version##*/}/html
-	sed -e "s:/usr/share/doc/libcoin60-doc/html:${my_coin_path}:" \
-		-i cMake/FindCoin3DDoc.cmake || die
-
-	sed -e '/FREECAD_BUILD_FEM/s: ON): OFF):' \
-		-i CMakeLists.txt || die
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DOCC_INCLUDE_DIR="${CASROOT}"/inc
-		-DOCC_INCLUDE_PATH="${CASROOT}"/inc
-		-DOCC_LIBRARY="${CASROOT}"/lib/libTKernel.so
-		-DOCC_LIBRARY_DIR="${CASROOT}"/lib
-		-DOCC_LIB_PATH="${CASROOT}"/lib
-		-DCOIN3D_INCLUDE_DIR="${EROOT}"usr/include/coin
-		-DCOIN3D_LIBRARY="${EROOT}"usr/$(get_libdir)/libCoin.so
-		-DSOQT_LIBRARY="${EROOT}"usr/$(get_libdir)/libSoQt.so
-		-DSOQT_INCLUDE_PATH="${EROOT}"usr/include/coin
-		-DCMAKE_INSTALL_PREFIX="${EROOT}"usr/$(get_libdir)/${P}
-	)
-	cmake-utils_src_configure
-	ewarn "${P} will be built against opencascade version ${CASROOT}"
-}
-
-src_install() {
-	cmake-utils_src_install
-	insinto /usr/$(get_libdir)/${P}/Mod/Start
-	doins -r src/Mod/Start/StartPage
-
-	prune_libtool_files
-
-	make_wrapper FreeCAD \
-		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCAD \
-		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
-	make_wrapper FreeCADCmd \
-		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCADCmd \
-		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
-
-	newicon src/Main/icon.ico ${PN}.ico
-	make_desktop_entry FreeCAD
-
-	dodoc README.Linux ChangeLog.txt
-}

diff --git a/media-gfx/freecad/freecad-0.13.1830-r1.ebuild b/media-gfx/freecad/freecad-0.13.1830-r1.ebuild
deleted file mode 100644
index 5a68bd9..0000000
--- a/media-gfx/freecad/freecad-0.13.1830-r1.ebuild
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-utils eutils fortran-2 multilib python-single-r1
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="http://www.freecadweb.org/"
-SRC_URI="mirror://sourceforge/free-cad/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-COMMON_DEPEND="dev-cpp/eigen:3
-	dev-games/ode
-	<dev-libs/boost-1.57
-	dev-libs/libf2c
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c[icu]
-	dev-python/matplotlib
-	dev-qt/designer:4
-	dev-qt/qtgui:4
-	dev-qt/qtopengl:4
-	dev-qt/qtsvg:4
-	dev-qt/qtwebkit:4
-	dev-qt/qtxmlpatterns:4
-	media-libs/SoQt
-	media-libs/coin[doc]
-	sci-libs/opencascade:6.7.1
-	sys-libs/zlib
-	virtual/glu
-	${PYTHON_DEPS}"
-RDEPEND="${COMMON_DEPEND}
-	dev-qt/assistant:4
-	dev-python/pycollada
-	dev-python/pivy
-	dev-python/PyQt4[svg]
-	dev-python/pyopencl
-	dev-python/numpy"
-DEPEND="${COMMON_DEPEND}
-	>=dev-lang/swig-2.0.4-r1:0"
-
-# https://bugs.gentoo.org/show_bug.cgi?id=352435
-# https://www.gentoo.org/foundation/en/minutes/2011/20110220_trustees.meeting_log.txt
-RESTRICT="bindist mirror"
-
-# TODO:
-#   DEPEND and RDEPEND:
-#		salome-smesh - science overlay
-#		zipio++ - not in portage yet
-
-pkg_setup() {
-	fortran-2_pkg_setup
-	python-single-r1_pkg_setup
-
-	[ -z "${CASROOT}" ] && die "empty \$CASROOT, run eselect opencascade set or define otherwise"
-}
-
-src_prepare() {
-	einfo remove bundled libs
-	rm -rf src/3rdParty/{boost,Pivy*}
-
-	epatch "${FILESDIR}"/${P}-remove-qt3-support.patch
-	epatch "${FILESDIR}"/${P}-cmake-2.8.12.patch
-	epatch "${FILESDIR}"/${P}-CMakefile.patch
-	epatch "${FILESDIR}"/${P}-avoid-include-salome.patch
-	epatch "${FILESDIR}"/${P}-startpage-links.patch
-
-	# disable Machining Distortion workbench because FEM will be disabled in src_configure()
-	# and also because the same module has been removed upstream (commit c0e2c9)
-	epatch "${FILESDIR}"/${P}-no-machdist.patch
-
-	epatch  "${FILESDIR}"/${PN}-0.12.5284-occ-6.6.patch
-	epatch  "${FILESDIR}"/${P}-occ-6.7.patch
-
-	einfo "Patching cMake/FindCoin3DDoc.cmake ..."
-	local my_coin_version=$(best_version media-libs/coin)
-	local my_coin_path="${EROOT}"usr/share/doc/${my_coin_version##*/}/html
-	sed -e "s:/usr/share/doc/libcoin60-doc/html:${my_coin_path}:" \
-		-i cMake/FindCoin3DDoc.cmake || die
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DOCC_INCLUDE_DIR="${CASROOT}"/inc
-		-DOCC_INCLUDE_PATH="${CASROOT}"/inc
-		-DOCC_LIBRARY="${CASROOT}"/lib/libTKernel.so
-		-DOCC_LIBRARY_DIR="${CASROOT}"/lib
-		-DOCC_LIB_PATH="${CASROOT}"/lib
-		-DCOIN3D_INCLUDE_DIR="${EROOT}"usr/include/coin
-		-DCOIN3D_LIBRARY="${EROOT}"usr/$(get_libdir)/libCoin.so
-		-DSOQT_LIBRARY="${EROOT}"usr/$(get_libdir)/libSoQt.so
-		-DSOQT_INCLUDE_PATH="${EROOT}"usr/include/coin
-		-DCMAKE_INSTALL_PREFIX="${EROOT}"usr/$(get_libdir)/${P}
-		-DCMAKE_INSTALL_DATADIR="${EROOT}"usr/share/${P}/
-		-DCMAKE_INSTALL_DOCDIR="${EROOT}"usr/share/doc/${P}/
-		-DCMAKE_INSTALL_INCLUDEDIR="${EROOT}"usr/include/${P}/
-		-DFREECAD_USE_EXTERNAL_PIVY="ON"
-		-DFREECAD_BUILD_FEM="OFF"
-	)
-
-	# TODO to remove embedded dependencies:
-	#
-	#	-DFREECAD_USE_EXTERNAL_ZIPIOS="ON" -- this option needs zipios++ but it's not yet in portage so the embedded zipios++
-	#                (under src/zipios++) will be used
-	#	salomesmesh is in 3rdparty but upstream's find_package function is not complete yet to compile against external version
-	#                (external salomesmesh is available in "science" overlay)
-
-	cmake-utils_src_configure
-	ewarn "${P} will be built against opencascade version ${CASROOT}"
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	prune_libtool_files
-
-	make_wrapper FreeCAD \
-		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCAD \
-		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
-	make_wrapper FreeCADCmd \
-		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCADCmd \
-		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
-
-	newicon src/Main/icon.ico ${PN}.ico
-	make_desktop_entry FreeCAD
-
-	dodoc README.Linux ChangeLog.txt
-
-	# disable compression of QT assistant help files
-	>> "${ED}"usr/share/doc/${P}/freecad.qhc.ecompress.skip
-	>> "${ED}"usr/share/doc/${P}/freecad.qch.ecompress.skip
-
-	python_optimize "${ED}"usr/{$(get_libdir),share}/${P}/Mod/
-}

diff --git a/media-gfx/freecad/freecad-0.14.3702-r1.ebuild b/media-gfx/freecad/freecad-0.14.3702-r1.ebuild
deleted file mode 100644
index 4d5c8f5..0000000
--- a/media-gfx/freecad/freecad-0.14.3702-r1.ebuild
+++ /dev/null
@@ -1,155 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-utils eutils fortran-2 multilib python-single-r1 fdo-mime
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="http://www.freecadweb.org/"
-SRC_URI="mirror://sourceforge/free-cad/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-COMMON_DEPEND="dev-cpp/eigen:3
-	dev-games/ode
-	dev-libs/boost
-	dev-libs/libf2c
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c[icu]
-	dev-python/matplotlib
-	dev-python/pyside[X]
-	dev-python/shiboken
-	dev-qt/designer:4
-	dev-qt/qtgui:4
-	dev-qt/qtopengl:4
-	dev-qt/qtsvg:4
-	dev-qt/qtwebkit:4
-	media-libs/SoQt
-	media-libs/coin[doc]
-	net-libs/ptlib
-	sci-libs/opencascade:6.7.1
-	sys-libs/zlib
-	virtual/glu
-	${PYTHON_DEPS}"
-RDEPEND="${COMMON_DEPEND}
-	dev-qt/assistant:4
-	dev-python/pycollada
-	dev-python/pivy
-	dev-python/pyopencl
-	dev-python/numpy"
-DEPEND="${COMMON_DEPEND}
-	>=dev-lang/swig-2.0.4-r1:0"
-
-# https://bugs.gentoo.org/show_bug.cgi?id=352435
-# https://www.gentoo.org/foundation/en/minutes/2011/20110220_trustees.meeting_log.txt
-RESTRICT="bindist mirror"
-
-# TODO:
-#   DEPEND and RDEPEND:
-#		salome-smesh - science overlay
-#		zipio++ - not in portage yet
-
-pkg_setup() {
-	fortran-2_pkg_setup
-	python-single-r1_pkg_setup
-
-	[ -z "${CASROOT}" ] && die "empty \$CASROOT, run eselect opencascade set or define otherwise"
-}
-
-src_prepare() {
-	einfo remove bundled libs
-	rm -rf src/3rdParty/{boost,Pivy*}
-
-	epatch "${FILESDIR}"/${P}-install-paths.patch
-
-	#bug 518996
-	sed -e "/LibDir = /s:'lib':'"$(get_libdir)"':g" \
-		-i src/App/FreeCADInit.py || die
-
-	einfo "Patching cMake/FindCoin3DDoc.cmake ..."
-	local my_coin_version=$(best_version media-libs/coin)
-	local my_coin_path="${EROOT}"usr/share/doc/${my_coin_version##*/}/html
-	sed -e "s:/usr/share/doc/libcoin60-doc/html:${my_coin_path}:" \
-		-i cMake/FindCoin3DDoc.cmake || die
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DOCC_INCLUDE_DIR="${CASROOT}"/inc
-		-DOCC_INCLUDE_PATH="${CASROOT}"/inc
-		-DOCC_LIBRARY="${CASROOT}"/lib/libTKernel.so
-		-DOCC_LIBRARY_DIR="${CASROOT}"/lib
-		-DOCC_LIB_PATH="${CASROOT}"/lib
-		-DCOIN3D_INCLUDE_DIR="${EROOT}"usr/include/coin
-		-DCOIN3D_LIBRARY="${EROOT}"usr/$(get_libdir)/libCoin.so
-		-DSOQT_LIBRARY="${EROOT}"usr/$(get_libdir)/libSoQt.so
-		-DSOQT_INCLUDE_PATH="${EROOT}"usr/include/coin
-		-DCMAKE_INSTALL_PREFIX="${EROOT}"usr/$(get_libdir)/${P}
-		-DCMAKE_INSTALL_DATADIR="${EROOT}"usr/share/${P}/
-		-DCMAKE_INSTALL_DOCDIR="${EROOT}"usr/share/doc/${P}/
-		-DCMAKE_INSTALL_INCLUDEDIR="${EROOT}"usr/include/${P}/
-		-DFREECAD_USE_EXTERNAL_PIVY="ON"
-		-DFREECAD_BUILD_FEM="OFF"
-	)
-
-	# TODO to remove embedded dependencies:
-	#
-	#	-DFREECAD_USE_EXTERNAL_ZIPIOS="ON" -- this option needs zipios++ but it's not yet in portage so the embedded zipios++
-	#                (under src/zipios++) will be used
-	#	salomesmesh is in 3rdparty but upstream's find_package function is not complete yet to compile against external version
-	#                (external salomesmesh is available in "science" overlay)
-
-	cmake-utils_src_configure
-	ewarn "${P} will be built against opencascade version ${CASROOT}"
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	prune_libtool_files
-
-	make_wrapper FreeCAD \
-		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCAD \
-		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
-	make_wrapper FreeCADCmd \
-		"${EROOT}"usr/$(get_libdir)/${P}/bin/FreeCADCmd \
-		"" "${EROOT}"usr/$(get_libdir)/${P}/lib
-
-	make_desktop_entry FreeCAD "FreeCAD" "" "" "MimeType=application/x-extension-fcstd;"
-
-	dodoc README.Linux ChangeLog.txt
-
-	# install mimetype for FreeCAD files
-	insinto /usr/share/mime/packages
-	newins "${FILESDIR}"/${PN}.sharedmimeinfo "${PN}.xml"
-
-	# install icons to correct place rather than /usr/share/freecad
-	pushd "${ED}/usr/share/${P}"
-	for size in 16 32 48 64; do
-		newicon -s ${size} freecad-icon-${size}.png freecad.png
-	done
-	doicon -s scalable freecad.svg
-	newicon -s 64 -c mimetypes freecad-doc.png application-x-extension-fcstd.png
-	popd
-
-	# disable compression of QT assistant help files
-	>> "${ED}"usr/share/doc/${P}/freecad.qhc.ecompress.skip
-	>> "${ED}"usr/share/doc/${P}/freecad.qch.ecompress.skip
-
-	python_optimize "${ED}"usr/{$(get_libdir),share}/${P}/Mod/
-}
-
-pkg_postinst() {
-	fdo-mime_mime_database_update
-}
-
-pkg_postrm() {
-	fdo-mime_mime_database_update
-}


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2018-03-02 22:08 Andreas Sturmlechner
  0 siblings, 0 replies; 17+ messages in thread
From: Andreas Sturmlechner @ 2018-03-02 22:08 UTC (permalink / raw
  To: gentoo-commits

commit:     506f827c4f6bdbaf6c93463f2d8e6390d2be6a4e
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Mar  2 21:48:50 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Mar  2 22:08:14 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=506f827c

media-gfx/freecad: Add no-webkit patch

Bug: https://bugs.gentoo.org/620702
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 .../freecad/files/freecad-0.17_pre-no-webkit.patch |  45 +++++++
 media-gfx/freecad/freecad-0.17_pre-r1.ebuild       | 133 +++++++++++++++++++++
 2 files changed, 178 insertions(+)

diff --git a/media-gfx/freecad/files/freecad-0.17_pre-no-webkit.patch b/media-gfx/freecad/files/freecad-0.17_pre-no-webkit.patch
new file mode 100644
index 00000000000..60dcfed22c7
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.17_pre-no-webkit.patch
@@ -0,0 +1,45 @@
+Description: Remove Qt4-Webkit dependency
+Author: Anton Gladky <gladk@debian.org>
+Bug-Debian: https://bugs.debian.org/784464
+Last-Update: 2017-09-06
+
+* asturm: tidied up and amended to use and not override BUILD_WEB
+
+--- a/src/Gui/DownloadManager.cpp
++++ b/src/Gui/DownloadManager.cpp
+@@ -33,7 +33,6 @@
+ #include <QMetaEnum>
+ #include <QSettings>
+ #include <QFileIconProvider>
+-#include <QWebSettings>
+ 
+ #include "DownloadItem.h"
+ #include "DownloadManager.h"
+@@ -224,11 +223,12 @@ void DownloadManager::updateRow()
+     ui->downloadsView->setRowHeight(row, item->minimumSizeHint().height());
+ 
+     bool remove = false;
++/*
+     QWebSettings *globalSettings = QWebSettings::globalSettings();
+     if (!item->downloading()
+         && globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled))
+         remove = true;
+-
++*/
+     if (item->downloadedSuccessfully()
+         && removePolicy() == DownloadManager::SuccessFullDownload) {
+         remove = true;
+--- a/CMakeLists.txt	2018-03-02 22:39:46.374140506 +0100
++++ b/CMakeLists.txt	2018-03-02 22:41:59.904216932 +0100
+@@ -351,11 +351,6 @@
+   set(BUILD_MESH ON)
+ endif(BUILD_JTREADER)
+ 
+-#a runtime dependency
+-if(BUILD_START)
+-  set(BUILD_WEB ON)
+-endif(BUILD_START)
+-
+ #leaving test module for someone else.
+ #image has none. as far as I can tell.
+ #mesh has none. as far as I can tell.

diff --git a/media-gfx/freecad/freecad-0.17_pre-r1.ebuild b/media-gfx/freecad/freecad-0.17_pre-r1.ebuild
new file mode 100644
index 00000000000..18a7d527d17
--- /dev/null
+++ b/media-gfx/freecad/freecad-0.17_pre-r1.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils eutils xdg-utils fortran-2 python-single-r1
+
+DESCRIPTION="Qt based Computer Aided Design application"
+HOMEPAGE="https://www.freecadweb.org/"
+
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/FreeCAD/FreeCAD.git"
+else
+	SRC_URI="https://github.com/FreeCAD/FreeCAD/archive/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+COMMON_DEPEND="
+	${PYTHON_DEPS}
+	dev-cpp/eigen:3
+	dev-java/xerces
+	dev-libs/boost:=[python,${PYTHON_USEDEP}]
+	dev-libs/xerces-c[icu]
+	dev-python/matplotlib[${PYTHON_USEDEP}]
+	dev-python/pyside:0[X,svg,${PYTHON_USEDEP}]
+	dev-python/shiboken:0[${PYTHON_USEDEP}]
+	dev-qt/designer:4
+	dev-qt/qtgui:4[-egl]
+	dev-qt/qtopengl:4[-egl]
+	dev-qt/qtsvg:4
+	media-libs/coin
+	media-libs/freetype
+	sci-libs/opencascade:*[vtk(+)]
+	sci-libs/orocos_kdl
+	sys-libs/zlib
+	virtual/glu"
+RDEPEND="${COMMON_DEPEND}
+	dev-python/numpy[${PYTHON_USEDEP}]
+	dev-python/pivy[${PYTHON_USEDEP}]
+	dev-qt/assistant:4"
+DEPEND="${COMMON_DEPEND}
+	>=dev-lang/swig-2.0.4-r1:0
+	dev-python/pyside-tools:0[${PYTHON_USEDEP}]"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-0.14.3702-install-paths.patch
+	"${FILESDIR}"/${P}-no-webkit.patch
+)
+
+# https://bugs.gentoo.org/show_bug.cgi?id=352435
+# https://www.gentoo.org/foundation/en/minutes/2011/20110220_trustees.meeting_log.txt
+RESTRICT="mirror"
+
+# TODO:
+#   DEPEND and RDEPEND:
+#		salome-smesh - science overlay
+#		zipio++ - not in portage yet
+
+S="${WORKDIR}/FreeCAD-${PV}"
+
+DOCS=( README.md ChangeLog.txt )
+
+pkg_setup() {
+	fortran-2_pkg_setup
+	python-single-r1_pkg_setup
+
+	[[ -z ${CASROOT} ]] && die "empty \$CASROOT, run eselect opencascade set or define otherwise"
+}
+
+src_configure() {
+	export QT_SELECT=4
+
+	#-DOCC_* defined with cMake/FindOpenCasCade.cmake
+	#-DCOIN3D_* defined with cMake/FindCoin3D.cmake
+	#-DSOQT_ not used
+	local mycmakeargs=(
+		-DOCC_INCLUDE_DIR="${CASROOT}"/inc
+		-DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)
+		-DCMAKE_INSTALL_DATADIR=share/${P}
+		-DCMAKE_INSTALL_DOCDIR=share/doc/${PF}
+		-DCMAKE_INSTALL_INCLUDEDIR=include/${P}
+		-DFREECAD_USE_EXTERNAL_KDL=ON
+		-DBUILD_WEB=OFF
+	)
+
+	# TODO to remove embedded dependencies:
+	#
+	#	-DFREECAD_USE_EXTERNAL_ZIPIOS="ON" -- this option needs zipios++ but it's not yet in portage so the embedded zipios++
+	#                (under src/zipios++) will be used
+	#	salomesmesh is in 3rdparty but upstream's find_package function is not complete yet to compile against external version
+	#                (external salomesmesh is available in "science" overlay)
+
+	cmake-utils_src_configure
+	einfo "${P} will be built against opencascade version ${CASROOT}"
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	make_desktop_entry FreeCAD "FreeCAD" "" "" "MimeType=application/x-extension-fcstd;"
+
+	# install mimetype for FreeCAD files
+	insinto /usr/share/mime/packages
+	newins "${FILESDIR}"/${PN}.sharedmimeinfo "${PN}.xml"
+
+	# install icons to correct place rather than /usr/share/freecad
+	pushd "${ED%/}"/usr/share/${P} || die
+	local size
+	for size in 16 32 48 64; do
+		newicon -s ${size} freecad-icon-${size}.png freecad.png
+	done
+	doicon -s scalable freecad.svg
+	newicon -s 64 -c mimetypes freecad-doc.png application-x-extension-fcstd.png
+	popd || die
+
+	python_optimize "${ED%/}"/usr/{,share/${P}/}Mod/
+}
+
+pkg_postinst() {
+	xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+	xdg_mimeinfo_database_update
+}


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2021-03-14 11:41 Joonas Niilola
  0 siblings, 0 replies; 17+ messages in thread
From: Joonas Niilola @ 2021-03-14 11:41 UTC (permalink / raw
  To: gentoo-commits

commit:     54beaeb99324abac5420da68a4e89b2abed059f5
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Sat Mar 13 12:36:49 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sun Mar 14 11:41:20 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54beaeb9

media-gfx/freecad: bump to 0.19.1

Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-gfx/freecad/Manifest                         |   1 +
 ...-0001-Gentoo-specific-Remove-ccache-usage.patch |  29 +++
 media-gfx/freecad/freecad-0.19.1.ebuild            | 282 +++++++++++++++++++++
 3 files changed, 312 insertions(+)

diff --git a/media-gfx/freecad/Manifest b/media-gfx/freecad/Manifest
index 99ac7bbf679..c0966150ea1 100644
--- a/media-gfx/freecad/Manifest
+++ b/media-gfx/freecad/Manifest
@@ -1 +1,2 @@
+DIST freecad-0.19.1.tar.gz 296983463 BLAKE2B de6592474c34c5643ba7f63d6223bf7b2fcee87ebf226727e242ff3f56f363562dd0bae8cb6b3203d978d998b70985777ca93b938c0fc01822e8927cd79f6118 SHA512 5134fba99448c509f0761d62b07f1bbd3183108761f41178b38f24d5ba26558608d7d7b00009d03ba097a50cc6fe047bbd57872b32a1d55b3526d18c19ae6393
 DIST freecad-0.19_pre20201231.tar.gz 236040771 BLAKE2B 648d8c1d8ab03f56403544f8e6a20dc5edc35b2cfc353c875202ce3e85449e450cbda93f410fec15366ce3aab342a93e981fa11cd9f5443a2fc40ef38ac0a1d0 SHA512 457792b0a12196d9e2d8113d9721a3b3a6d4fbc93bae001787db3eac43503a74a89a69564903b4005f8648476a150b6d871b3d78adfbf41c7260a4265132da34

diff --git a/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch b/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
new file mode 100644
index 00000000000..c8772febdee
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
@@ -0,0 +1,29 @@
+From 74664bf8c9142320be335ab91dca53cb1a1187a2 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Fri, 12 Mar 2021 23:55:09 +0100
+Subject: [PATCH] [Gentoo specific] Remove ccache usage
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+---
+ CMakeLists.txt | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5b17736..38e482a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -8,11 +8,6 @@ if (POLICY CMP0072)
+     cmake_policy(SET CMP0072 OLD)
+ endif(POLICY CMP0072)
+ 
+-find_program(CCACHE_PROGRAM ccache)  #This check should occur before project()
+-if(CCACHE_PROGRAM)
+-    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
+-endif()
+-
+ project(FreeCAD)
+ 
+ set(PACKAGE_VERSION_NAME "Vulcan")
+-- 
+2.30.1
+

diff --git a/media-gfx/freecad/freecad-0.19.1.ebuild b/media-gfx/freecad/freecad-0.19.1.ebuild
new file mode 100644
index 00000000000..4a113baa229
--- /dev/null
+++ b/media-gfx/freecad/freecad-0.19.1.ebuild
@@ -0,0 +1,282 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# vtk needs updating to use 3.9
+PYTHON_COMPAT=( python3_{7,8} )
+
+inherit check-reqs cmake desktop eapi8-dosym optfeature python-single-r1 xdg
+
+DESCRIPTION="QT based Computer Aided Design application"
+HOMEPAGE="https://www.freecadweb.org/ https://github.com/FreeCAD/FreeCAD"
+
+if [[ ${PV} = *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/FreeCAD/FreeCAD.git"
+	S="${WORKDIR}/freecad-${PV}"
+else
+	MY_PV=$(ver_cut 1-2)
+	MY_PV=$(ver_rs 1 '_' ${MY_PV})
+	SRC_URI="https://github.com/FreeCAD/FreeCAD/archive/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64"
+	S="${WORKDIR}/FreeCAD-${PV}"
+fi
+
+# code is licensed LGPL-2
+# examples are licensed CC-BY-SA (without note of specific version)
+LICENSE="LGPL-2 CC-BY-SA-4.0"
+SLOT="0"
+IUSE="debug headless pcl test"
+RESTRICT="!test? ( test )"
+
+FREECAD_EXPERIMENTAL_MODULES="cloud plot ship"
+FREECAD_STABLE_MODULES="addonmgr arch drawing fem idf image
+	inspection material mesh openscad part-design path points
+	raytracing robot show spreadsheet surface techdraw tux"
+
+for module in ${FREECAD_STABLE_MODULES}; do
+	IUSE="${IUSE} +${module}"
+done
+for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
+	IUSE="${IUSE} -${module}"
+done
+unset module
+
+RDEPEND="
+	${PYTHON_DEPS}
+	>=dev-cpp/eigen-3.3.1:3
+	dev-libs/OpenNI2[opengl(+)]
+	dev-libs/libspnav[X]
+	dev-libs/xerces-c
+	dev-qt/designer:5
+	dev-qt/qtconcurrent:5
+	dev-qt/qtcore:5
+	dev-qt/qtgui:5
+	dev-qt/qtnetwork:5
+	dev-qt/qtopengl:5
+	dev-qt/qtprintsupport:5
+	dev-qt/qtsvg:5
+	dev-qt/qtwebengine:5[widgets]
+	dev-qt/qtwidgets:5
+	dev-qt/qtx11extras:5
+	dev-qt/qtxml:5
+	>=media-libs/coin-4.0.0
+	media-libs/freetype
+	media-libs/qhull
+	sci-libs/flann[openmp]
+	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
+	sci-libs/opencascade:=[vtk(+)]
+	sci-libs/orocos_kdl:=
+	sys-libs/zlib
+	virtual/glu
+	virtual/libusb:1
+	virtual/opengl
+	cloud? (
+		dev-libs/openssl:=
+		net-misc/curl
+	)
+	fem? ( <sci-libs/vtk-9[boost,python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
+	mesh? ( sci-libs/hdf5:=[fortran,zlib] )
+	openscad? ( media-gfx/openscad )
+	pcl? ( >=sci-libs/pcl-1.8.1:=[opengl,openni2(+),qt5(+),vtk(+)] )
+	$(python_gen_cond_dep '
+		dev-libs/boost:=[python,threads,${PYTHON_MULTI_USEDEP}]
+		dev-python/matplotlib[${PYTHON_MULTI_USEDEP}]
+		dev-python/numpy[${PYTHON_MULTI_USEDEP}]
+		>=dev-python/pivy-0.6.5[${PYTHON_MULTI_USEDEP}]
+		dev-python/pyside2[gui,svg,${PYTHON_MULTI_USEDEP}]
+		dev-python/shiboken2[${PYTHON_MULTI_USEDEP}]
+		addonmgr? ( dev-python/GitPython[${PYTHON_MULTI_USEDEP}] )
+		mesh? ( dev-python/pybind11[${PYTHON_MULTI_USEDEP}] )
+	')
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-lang/swig"
+
+# To get required dependencies:
+# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
+# We set the following requirements by default:
+# draft, import, part, qt5, sketcher, start, web.
+#
+# Additionally if mesh is set, we auto-enable mesh_part, flat_mesh and smesh
+# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
+# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
+# reflected by the REQUIRES_MODS macro, but at
+# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
+REQUIRED_USE="
+	${PYTHON_REQUIRED_USE}
+	arch? ( mesh )
+	debug? ( mesh )
+	drawing? ( spreadsheet )
+	fem? ( mesh )
+	inspection? ( mesh points )
+	openscad? ( mesh )
+	path? ( mesh robot )
+	ship? ( image plot )
+	techdraw? ( spreadsheet drawing )
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-0.19_pre20201231-0001-FindCoin3DDoc.cmake-fix-patch-for-coin-docs.patch
+	"${FILESDIR}"/${PN}-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
+	"${FILESDIR}"/${P}-0001-Gentoo-specific-Remove-ccache-usage.patch
+)
+
+DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
+
+CHECKREQS_DISK_BUILD="3G"
+
+pkg_setup() {
+	check-reqs_pkg_setup
+	python-single-r1_pkg_setup
+	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, plesae run eselect opencascade"
+}
+
+src_prepare() {
+	# the upstream provided file doesn't find the coin doc tag file,
+	# but cmake ships a working one, so we use this.
+	rm "${S}/cMake/FindCoin3D.cmake" || die
+
+	# Fix OpenCASCADE lookup
+	sed -e 's|/usr/include/opencascade|${CASROOT}/include/opencascade|' \
+		-e 's|/usr/lib|${CASROOT}/'$(get_libdir)' NO_DEFAULT_PATH|' \
+		-i cMake/FindOpenCasCade.cmake || die
+
+	# Fix desktop file
+	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
+
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_ADDONMGR=$(usex addonmgr)
+		-DBUILD_ARCH=$(usex arch)
+		-DBUILD_ASSEMBLY=OFF
+		-DBUILD_CLOUD=$(usex cloud)
+		-DBUILD_COMPLETE=OFF					# deprecated
+		-DBUILD_DRAFT=ON						# basic workspace, enable it by default
+		-DBUILD_DRAWING=$(usex drawing)
+		-DBUILD_ENABLE_CXX_STD:STRING="C++14"	# needed for >=boost-1.75.0
+		-DBUILD_FEM=$(usex fem)
+		-DBUILD_FEM_NETGEN=OFF
+		-DBUILD_FLAT_MESH=$(usex mesh)
+		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
+		-DBUILD_FREETYPE=ON						# automagic dep
+		-DBUILD_GUI=$(usex !headless)
+		-DBUILD_IDF=$(usex idf)
+		-DBUILD_IMAGE=$(usex image)
+		-DBUILD_IMPORT=ON						# import module for various file formats
+		-DBUILD_INSPECTION=$(usex inspection)
+		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
+		-DBUILD_MATERIAL=$(usex material)
+		-DBUILD_MESH=$(usex mesh)
+		-DBUILD_MESH_PART=$(usex mesh)
+		-DBUILD_OPENSCAD=$(usex openscad)
+		-DBUILD_PART=ON							# basic workspace, enable it by default
+		-DBUILD_PART_DESIGN=$(usex part-design)
+		-DBUILD_PATH=$(usex path)
+		-DBUILD_PLOT=$(usex plot)				# conflicts with possible external workbench
+		-DBUILD_POINTS=$(usex points)
+		-DBUILD_QT5=ON							# OFF means to use Qt4
+		-DBUILD_RAYTRACING=$(usex raytracing)
+		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
+		-DBUILD_ROBOT=$(usex robot)
+		-DBUILD_SHIP=$(usex ship)				# conflicts with possible external workbench
+		-DBUILD_SHOW=$(usex show)
+		-DBUILD_SKETCHER=ON						# needed by draft workspace
+		-DBUILD_SMESH=$(usex mesh)
+		-DBUILD_SPREADSHEET=$(usex spreadsheet)
+		-DBUILD_START=ON						# basic workspace, enable it by default
+		-DBUILD_SURFACE=$(usex surface)
+		-DBUILD_TECHDRAW=$(usex techdraw)
+		-DBUILD_TUX=$(usex tux)
+		-DBUILD_VR=OFF
+		-DBUILD_WEB=ON							# needed by start workspace
+		-DBUILD_WITH_CONDA=OFF
+
+		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
+		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
+		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
+		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
+
+		-DFREECAD_BUILD_DEBIAN=OFF
+
+		-DFREECAD_USE_CCACHE=OFF
+		-DFREECAD_USE_EXTERNAL_KDL=ON
+		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
+		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
+		-DFREECAD_USE_FREETYPE=ON
+		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
+		-DFREECAD_USE_PCL=$(usex pcl)
+		-DFREECAD_USE_PYBIND11=$(usex mesh)
+		-DFREECAD_USE_QT_FILEDIALOG=ON
+		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
+
+		-DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade
+		-DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)
+		-DOCCT_CMAKE_FALLBACK=ON				# don't use occt-config which isn't included in opencascade for Gentoo
+	)
+
+	if use debug; then
+		mycmakeargs+=(
+			# sandbox needs mesh support
+			-DBUILD_SANDBOX=$(usex mesh)
+			-DBUILD_TEMPLATE=ON
+			-DBUILD_TEST=ON
+		)
+	else
+		mycmakeargs+=(
+			-DBUILD_SANDBOX=OFF
+			-DBUILD_TEMPLATE=OFF
+			-DBUILD_TEST=OFF
+		)
+	fi
+
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+
+	if ! use headless; then
+		dosym8 -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
+		mv "${ED}"/usr/$(get_libdir)/freecad/share/* "${ED}"/usr/share || die "failed to move shared ressources"
+	fi
+	dosym8 -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
+
+	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	if use plot; then
+		einfo "Note: You are enabling the 'plot' USE flag."
+		einfo "This conflicts with the plot workbench that can be loaded"
+		einfo "via the addon manager! You can only install one of those."
+	fi
+
+	if use ship; then
+		einfo "Note: You are enabling the 'ship' USE flag."
+		einfo "This conflicts with the ship workbench that can be loaded"
+		einfo "via the addon manager! You can only install one of those."
+	fi
+
+	einfo "You can load a lot of additional workbenches using the integrated"
+	einfo "AddonManager."
+
+	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
+	einfo "support. Some of them are available in Gentoo. Take a look at"
+	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
+	optfeature "interact with git repositories" dev-python/GitPython
+	optfeature "work with COLLADA documents" dev-python/pycollada
+	optfeature "dependency graphs" media-gfx/graphviz
+	optfeature "PBR Rendering" media-gfx/povray
+	optfeature "FEM mesh generator" sci-libs/gmsh
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+}


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2021-07-10  9:17 Ionen Wolkens
  0 siblings, 0 replies; 17+ messages in thread
From: Ionen Wolkens @ 2021-07-10  9:17 UTC (permalink / raw
  To: gentoo-commits

commit:     44073440183298d04de422fe7978ff4ef9d199d5
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Fri Jul  9 08:29:26 2021 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Jul 10 09:17:23 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=44073440

media-gfx/freecad: drop 0.19.1

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 media-gfx/freecad/Manifest                         |   1 -
 ...ndCoin3DDoc.cmake-fix-patch-for-coin-docs.patch |  26 --
 media-gfx/freecad/freecad-0.19.1-r1.ebuild         | 286 ---------------------
 media-gfx/freecad/metadata.xml                     |  16 --
 4 files changed, 329 deletions(-)

diff --git a/media-gfx/freecad/Manifest b/media-gfx/freecad/Manifest
index e67bfab4a78..fe0489b287e 100644
--- a/media-gfx/freecad/Manifest
+++ b/media-gfx/freecad/Manifest
@@ -1,3 +1,2 @@
-DIST freecad-0.19.1.tar.gz 296983463 BLAKE2B de6592474c34c5643ba7f63d6223bf7b2fcee87ebf226727e242ff3f56f363562dd0bae8cb6b3203d978d998b70985777ca93b938c0fc01822e8927cd79f6118 SHA512 5134fba99448c509f0761d62b07f1bbd3183108761f41178b38f24d5ba26558608d7d7b00009d03ba097a50cc6fe047bbd57872b32a1d55b3526d18c19ae6393
 DIST freecad-0.19.2-0005-Make-smesh-compile-with-vtk9.patch.xz 5368 BLAKE2B 69bafefd049effe3c31719bb2c23d32e8ba7ad58235c58ac8279ba6c036feaf1b97d5751cf2d68896e7489803103b2d0f92f76e61b3ccc97ef05a95b337ca5c2 SHA512 66585cc13fb3b0b026cf9dbd761c8ba1c1fe4d4f7db2e144ddd97706e02ccd78f4a43ac7cd93ddcae6e73933bf41d4cbd4d94bcdff8804b81378a6d946c7b070
 DIST freecad-0.19.2.tar.gz 296987961 BLAKE2B 3c21359c71f7ac5a49cc4b4be437dfce02f2af73dfc526a3955547718ee41c461fc787d029a9a77374d58516d7c56fec6982fe6d38ab17fbc30c0a94929136bf SHA512 420f00e696725cbd31c936c47b6ac226d866a17c7b7683ad381b8dd5edaffc7dfb1a3c4238c08e8b4fd34ef0c08d7c244cb7797012e596df1ce0a4f6e3be6b72

diff --git a/media-gfx/freecad/files/freecad-0.19_pre20201231-0001-FindCoin3DDoc.cmake-fix-patch-for-coin-docs.patch b/media-gfx/freecad/files/freecad-0.19_pre20201231-0001-FindCoin3DDoc.cmake-fix-patch-for-coin-docs.patch
deleted file mode 100644
index 9f4131f15a3..00000000000
--- a/media-gfx/freecad/files/freecad-0.19_pre20201231-0001-FindCoin3DDoc.cmake-fix-patch-for-coin-docs.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From e08aec1344e753cd338a61c3584230741e00b23f Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl@gmail.com>
-Date: Thu, 31 Dec 2020 13:26:44 +0100
-Subject: [PATCH 1/2] FindCoin3DDoc.cmake: fix patch for coin docs
-
-Signed-off-by: Bernd Waibel <waebbl@gmail.com>
----
- cMake/FindCoin3DDoc.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/cMake/FindCoin3DDoc.cmake b/cMake/FindCoin3DDoc.cmake
-index c6c92f2..1af53c2 100644
---- a/cMake/FindCoin3DDoc.cmake
-+++ b/cMake/FindCoin3DDoc.cmake
-@@ -22,7 +22,7 @@ IF (COIN3D_FOUND)
-       # Unix systems
-       find_path(COIN3D_DOC_PATH index.html 
-                 /usr/share/doc/libcoin80-doc/html
--                /usr/share/doc/coin/html
-+                /usr/share/doc/coin-4.0.0/html
-                 /usr/share/doc/Coin/html
-       )
-       IF( EXISTS ${COIN3D_DOC_PATH})
--- 
-2.30.0
-

diff --git a/media-gfx/freecad/freecad-0.19.1-r1.ebuild b/media-gfx/freecad/freecad-0.19.1-r1.ebuild
deleted file mode 100644
index 95e44586e4c..00000000000
--- a/media-gfx/freecad/freecad-0.19.1-r1.ebuild
+++ /dev/null
@@ -1,286 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# vtk needs updating to use 3.9
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit check-reqs cmake desktop eapi8-dosym optfeature python-single-r1 xdg
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="https://www.freecadweb.org/ https://github.com/FreeCAD/FreeCAD"
-
-if [[ ${PV} = *9999 ]]; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/FreeCAD/FreeCAD.git"
-	S="${WORKDIR}/freecad-${PV}"
-else
-	MY_PV=$(ver_cut 1-2)
-	MY_PV=$(ver_rs 1 '_' ${MY_PV})
-	SRC_URI="https://github.com/FreeCAD/FreeCAD/archive/${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="~amd64"
-	S="${WORKDIR}/FreeCAD-${PV}"
-fi
-
-# code is licensed LGPL-2
-# examples are licensed CC-BY-SA (without note of specific version)
-LICENSE="LGPL-2 CC-BY-SA-4.0"
-SLOT="0"
-IUSE="debug headless pcl test"
-RESTRICT="!test? ( test )"
-
-FREECAD_EXPERIMENTAL_MODULES="cloud plot ship"
-FREECAD_STABLE_MODULES="addonmgr arch drawing fem idf image
-	inspection material mesh openscad part-design path points
-	raytracing robot show spreadsheet surface techdraw tux"
-
-for module in ${FREECAD_STABLE_MODULES}; do
-	IUSE="${IUSE} +${module}"
-done
-for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
-	IUSE="${IUSE} ${module}"
-done
-unset module
-
-RDEPEND="
-	${PYTHON_DEPS}
-	>=dev-cpp/eigen-3.3.1:3
-	dev-libs/OpenNI2[opengl(+)]
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c
-	dev-qt/designer:5
-	dev-qt/qtconcurrent:5
-	dev-qt/qtcore:5
-	dev-qt/qtgui:5
-	dev-qt/qtnetwork:5
-	dev-qt/qtopengl:5
-	dev-qt/qtprintsupport:5
-	dev-qt/qtsvg:5
-	dev-qt/qtwebengine:5[widgets]
-	dev-qt/qtwidgets:5
-	dev-qt/qtx11extras:5
-	dev-qt/qtxml:5
-	>=media-libs/coin-4.0.0
-	media-libs/freetype
-	media-libs/qhull:=
-	sci-libs/flann[openmp]
-	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
-	sci-libs/opencascade:=[vtk(+)]
-	sci-libs/orocos_kdl:=
-	sys-libs/zlib
-	virtual/glu
-	virtual/libusb:1
-	virtual/opengl
-	cloud? (
-		dev-libs/openssl:=
-		net-misc/curl
-	)
-	fem? ( <sci-libs/vtk-9[boost,python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
-	mesh? ( sci-libs/hdf5:=[fortran,zlib] )
-	openscad? ( media-gfx/openscad )
-	pcl? ( >=sci-libs/pcl-1.8.1:=[opengl,openni2(+),qt5(+),vtk(+)] )
-	$(python_gen_cond_dep '
-		dev-libs/boost:=[python,threads(+),${PYTHON_MULTI_USEDEP}]
-		dev-python/matplotlib[${PYTHON_MULTI_USEDEP}]
-		dev-python/numpy[${PYTHON_MULTI_USEDEP}]
-		>=dev-python/pivy-0.6.5[${PYTHON_MULTI_USEDEP}]
-		dev-python/pyside2[gui,svg,${PYTHON_MULTI_USEDEP}]
-		dev-python/shiboken2[${PYTHON_MULTI_USEDEP}]
-		addonmgr? ( dev-python/GitPython[${PYTHON_MULTI_USEDEP}] )
-		mesh? ( dev-python/pybind11[${PYTHON_MULTI_USEDEP}] )
-	')
-"
-DEPEND="${RDEPEND}"
-BDEPEND="dev-lang/swig"
-
-# To get required dependencies:
-# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
-# We set the following requirements by default:
-# draft, import, part, qt5, sketcher, start, web.
-#
-# Additionally if mesh is set, we auto-enable mesh_part, flat_mesh and smesh
-# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
-# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
-# reflected by the REQUIRES_MODS macro, but at
-# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
-REQUIRED_USE="
-	${PYTHON_REQUIRED_USE}
-	arch? ( mesh )
-	debug? ( mesh )
-	drawing? ( spreadsheet )
-	fem? ( mesh )
-	inspection? ( mesh points )
-	openscad? ( mesh )
-	path? ( mesh robot )
-	ship? ( image plot )
-	techdraw? ( spreadsheet drawing )
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-0.19_pre20201231-0001-FindCoin3DDoc.cmake-fix-patch-for-coin-docs.patch
-	"${FILESDIR}"/${PN}-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
-	"${FILESDIR}"/${P}-0001-Gentoo-specific-Remove-ccache-usage.patch
-)
-
-DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
-
-CHECKREQS_DISK_BUILD="3G"
-
-pkg_setup() {
-	check-reqs_pkg_setup
-	python-single-r1_pkg_setup
-	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, plesae run eselect opencascade"
-}
-
-src_prepare() {
-	# the upstream provided file doesn't find the coin doc tag file,
-	# but cmake ships a working one, so we use this.
-	rm "${S}/cMake/FindCoin3D.cmake" || die
-
-	# Fix OpenCASCADE lookup
-	sed -e 's|/usr/include/opencascade|${CASROOT}/include/opencascade|' \
-		-e 's|/usr/lib|${CASROOT}/'$(get_libdir)' NO_DEFAULT_PATH|' \
-		-i cMake/FindOpenCasCade.cmake || die
-
-	# Fix desktop file
-	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
-
-	cmake_src_prepare
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_ADDONMGR=$(usex addonmgr)
-		-DBUILD_ARCH=$(usex arch)
-		-DBUILD_ASSEMBLY=OFF
-		-DBUILD_CLOUD=$(usex cloud)
-		-DBUILD_COMPLETE=OFF					# deprecated
-		-DBUILD_DRAFT=ON						# basic workspace, enable it by default
-		-DBUILD_DRAWING=$(usex drawing)
-		-DBUILD_ENABLE_CXX_STD:STRING="C++14"	# needed for >=boost-1.75.0
-		-DBUILD_FEM=$(usex fem)
-		-DBUILD_FEM_NETGEN=OFF
-		-DBUILD_FLAT_MESH=$(usex mesh)
-		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
-		-DBUILD_FREETYPE=ON						# automagic dep
-		-DBUILD_GUI=$(usex !headless)
-		-DBUILD_IDF=$(usex idf)
-		-DBUILD_IMAGE=$(usex image)
-		-DBUILD_IMPORT=ON						# import module for various file formats
-		-DBUILD_INSPECTION=$(usex inspection)
-		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
-		-DBUILD_MATERIAL=$(usex material)
-		-DBUILD_MESH=$(usex mesh)
-		-DBUILD_MESH_PART=$(usex mesh)
-		-DBUILD_OPENSCAD=$(usex openscad)
-		-DBUILD_PART=ON							# basic workspace, enable it by default
-		-DBUILD_PART_DESIGN=$(usex part-design)
-		-DBUILD_PATH=$(usex path)
-		-DBUILD_PLOT=$(usex plot)				# conflicts with possible external workbench
-		-DBUILD_POINTS=$(usex points)
-		-DBUILD_QT5=ON							# OFF means to use Qt4
-		-DBUILD_RAYTRACING=$(usex raytracing)
-		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
-		-DBUILD_ROBOT=$(usex robot)
-		-DBUILD_SHIP=$(usex ship)				# conflicts with possible external workbench
-		-DBUILD_SHOW=$(usex show)
-		-DBUILD_SKETCHER=ON						# needed by draft workspace
-		-DBUILD_SMESH=$(usex mesh)
-		-DBUILD_SPREADSHEET=$(usex spreadsheet)
-		-DBUILD_START=ON						# basic workspace, enable it by default
-		-DBUILD_SURFACE=$(usex surface)
-		-DBUILD_TECHDRAW=$(usex techdraw)
-		-DBUILD_TUX=$(usex tux)
-		-DBUILD_VR=OFF
-		-DBUILD_WEB=ON							# needed by start workspace
-		-DBUILD_WITH_CONDA=OFF
-
-		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
-		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
-		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
-		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
-
-		-DFREECAD_BUILD_DEBIAN=OFF
-
-		-DFREECAD_USE_CCACHE=OFF
-		-DFREECAD_USE_EXTERNAL_KDL=ON
-		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
-		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
-		-DFREECAD_USE_FREETYPE=ON
-		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
-		-DFREECAD_USE_PCL=$(usex pcl)
-		-DFREECAD_USE_PYBIND11=$(usex mesh)
-		-DFREECAD_USE_QT_FILEDIALOG=ON
-		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
-
-		# Use the version of shiboken2 that matches the selected python version
-		-DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
-
-		-DOCC_INCLUDE_DIR="${CASROOT}"/include/opencascade
-		-DOCC_LIBRARY_DIR="${CASROOT}"/$(get_libdir)
-		-DOCCT_CMAKE_FALLBACK=ON				# don't use occt-config which isn't included in opencascade for Gentoo
-	)
-
-	if use debug; then
-		mycmakeargs+=(
-			# sandbox needs mesh support
-			-DBUILD_SANDBOX=$(usex mesh)
-			-DBUILD_TEMPLATE=ON
-			-DBUILD_TEST=ON
-		)
-	else
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=OFF
-			-DBUILD_TEMPLATE=OFF
-			-DBUILD_TEST=OFF
-		)
-	fi
-
-	cmake_src_configure
-}
-
-src_install() {
-	cmake_src_install
-
-	if ! use headless; then
-		dosym8 -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
-		mv "${ED}"/usr/$(get_libdir)/freecad/share/* "${ED}"/usr/share || die "failed to move shared ressources"
-	fi
-	dosym8 -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
-
-	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use plot; then
-		einfo "Note: You are enabling the 'plot' USE flag."
-		einfo "This conflicts with the plot workbench that can be loaded"
-		einfo "via the addon manager! You can only install one of those."
-	fi
-
-	if use ship; then
-		einfo "Note: You are enabling the 'ship' USE flag."
-		einfo "This conflicts with the ship workbench that can be loaded"
-		einfo "via the addon manager! You can only install one of those."
-	fi
-
-	einfo "You can load a lot of additional workbenches using the integrated"
-	einfo "AddonManager."
-
-	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
-	einfo "support. Some of them are available in Gentoo. Take a look at"
-	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
-	optfeature "interact with git repositories" dev-python/GitPython
-	optfeature "work with COLLADA documents" dev-python/pycollada
-	optfeature "dependency graphs" media-gfx/graphviz
-	optfeature "PBR Rendering" media-gfx/povray
-	optfeature "FEM mesh generator" sci-libs/gmsh
-	optfeature "importing and exporting 2D AutoCAD DWG files" media-gfx/libredwg
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-}

diff --git a/media-gfx/freecad/metadata.xml b/media-gfx/freecad/metadata.xml
index 57211691f59..3c4e9f49f5d 100644
--- a/media-gfx/freecad/metadata.xml
+++ b/media-gfx/freecad/metadata.xml
@@ -14,18 +14,10 @@
 			Build the addon manager module for automatic handling of 3rd 
 			party addons
 		</flag>
-		<flag name="arch">
-			Build the architecture workbench for working with architectural 
-			elements
-		</flag>
 		<flag name="cloud">
 			Build the Cloud workbench, to access cloud providers (mostly
 			Amazon S3).
 		</flag>
-		<flag name="drawing">
-			Build the drawing module and workbench to display 3D work on a 
-			2D sheet
-		</flag>
 		<flag name="fem">
 			Build the FEM module and workbench which provides Finite Element 
 			Analysis (FEA) workflows
@@ -49,10 +41,6 @@
 		<flag name="material">
 			Build the material module and workbench to work with materials
 		</flag>
-		<flag name="mesh">
-			Build the mesh module and workbench to work with triangulated 
-			meshes
-		</flag>
 		<flag name="openscad">
 			Build the OpenSCAD module for interoperability with OpenSCAD 
 			and repairing Constructive Solid Geometry (CSG) history
@@ -89,10 +77,6 @@
 		<flag name="show">
 			Build the show module, a helper module for visibility automation
 		</flag>
-		<flag name="spreadsheet">
-			Build the spreadsheet module and workbench to create and manipulate 
-			spreadsheet data
-		</flag>
 		<flag name="surface">
 			Build the surface module and workbench
 		</flag>


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2021-11-28  9:58 Miroslav Šulc
  0 siblings, 0 replies; 17+ messages in thread
From: Miroslav Šulc @ 2021-11-28  9:58 UTC (permalink / raw
  To: gentoo-commits

commit:     c9c70febe01d558f88c2d621515b889075afd1f1
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 28 09:57:56 2021 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sun Nov 28 09:58:11 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9c70feb

media-gfx/freecad: dropped patch in live

patch is already applied by upstream and so prevented building freecad

Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 ...9999-Add-memory-header-for-std-shared_ptr.patch | 31 ----------------------
 media-gfx/freecad/freecad-9999.ebuild              |  1 -
 2 files changed, 32 deletions(-)

diff --git a/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch b/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch
deleted file mode 100644
index 81a8f22d8937..000000000000
--- a/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Sat, 16 Oct 2021 17:02:19 +0200
-Subject: [PATCH] Add memory header for std::shared_ptr
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- src/App/Metadata.h | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/App/Metadata.h b/src/App/Metadata.h
-index de8be3ea8e..2c5fd8f417 100644
---- a/src/App/Metadata.h
-+++ b/src/App/Metadata.h
-@@ -30,6 +30,7 @@
- #include <string>
- #include <vector>
- #include <map>
-+#include <memory>
- 
- #include <xercesc/dom/DOM.hpp>
- #include <xercesc/parsers/XercesDOMParser.hpp>
-@@ -296,4 +297,4 @@ namespace App {
- 
- }
- 
--#endif
-\ No newline at end of file
-+#endif
--- 
-2.33.1
-

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index cef63f28477e..df78793c7f3b 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -120,7 +120,6 @@ REQUIRED_USE="
 PATCHES=(
 	"${FILESDIR}"/${PN}-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
 	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
-	"${FILESDIR}"/${P}-Add-memory-header-for-std-shared_ptr.patch
 )
 
 DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2022-03-19 16:15 Sam James
  0 siblings, 0 replies; 17+ messages in thread
From: Sam James @ 2022-03-19 16:15 UTC (permalink / raw
  To: gentoo-commits

commit:     5927fa068889aa555a1f9657e27305eb11ffae37
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Fri Mar 18 09:12:08 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 19 16:14:22 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5927fa06

media-gfx/freecad: drop environment file

Setting PYTHONPATH seems no longer be needed and raises incompatibilities
with other packages.

Also, AddonManager plugin now needs webchannel and webengine support for pyside2,
thus the USEDEP string has been updated to include USE flags for these.

Bug: https://bugs.gentoo.org/835331
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/24636
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-gfx/freecad/files/99freecad                                     | 1 -
 .../freecad/{freecad-0.19.2-r6.ebuild => freecad-0.19.2-r7.ebuild}    | 2 --
 media-gfx/freecad/freecad-9999.ebuild                                 | 4 +---
 3 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/media-gfx/freecad/files/99freecad b/media-gfx/freecad/files/99freecad
deleted file mode 100644
index 81104107c22e..000000000000
--- a/media-gfx/freecad/files/99freecad
+++ /dev/null
@@ -1 +0,0 @@
-PYTHONPATH=/usr/lib64/freecad/Ext:/usr/lib64/freecad/Mod:/usr/lib64/freecad/lib64

diff --git a/media-gfx/freecad/freecad-0.19.2-r6.ebuild b/media-gfx/freecad/freecad-0.19.2-r7.ebuild
similarity index 99%
rename from media-gfx/freecad/freecad-0.19.2-r6.ebuild
rename to media-gfx/freecad/freecad-0.19.2-r7.ebuild
index 931a6260baa1..aa2041fd5f01 100644
--- a/media-gfx/freecad/freecad-0.19.2-r6.ebuild
+++ b/media-gfx/freecad/freecad-0.19.2-r7.ebuild
@@ -273,8 +273,6 @@ src_install() {
 	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
 	# compile main package in python site-packages as well
 	python_optimize
-
-	doenvd "${FILESDIR}/99${PN}"
 }
 
 pkg_postinst() {

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index 97ada209ae61..377cf7cb37ba 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -87,7 +87,7 @@ RDEPEND="
 		dev-python/numpy[${PYTHON_USEDEP}]
 		>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
 		dev-python/pybind11[${PYTHON_USEDEP}]
-		dev-python/pyside2[gui,svg,${PYTHON_USEDEP}]
+		dev-python/pyside2[gui,svg,webchannel,webengine,${PYTHON_USEDEP}]
 		dev-python/shiboken2[${PYTHON_USEDEP}]
 		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
 		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
@@ -270,8 +270,6 @@ src_install() {
 	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
 	# compile main package in python site-packages as well
 	python_optimize
-
-	doenvd "${FILESDIR}/99${PN}"
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2022-03-19 16:15 Sam James
  0 siblings, 0 replies; 17+ messages in thread
From: Sam James @ 2022-03-19 16:15 UTC (permalink / raw
  To: gentoo-commits

commit:     8ef65a33f8d2be7585c134664ae4b83906679719
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Tue Jan 18 18:15:29 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 19 16:14:40 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ef65a33

media-gfx/freecad: bump to 0.19.4

Closes: https://bugs.gentoo.org/834470
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/24643
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-gfx/freecad/Manifest                         |   1 +
 ...ad-0.19.4-Gentoo-specific-don-t-check-vcs.patch |  20 ++
 media-gfx/freecad/freecad-0.19.4.ebuild            | 323 +++++++++++++++++++++
 media-gfx/freecad/metadata.xml                     |   8 +
 4 files changed, 352 insertions(+)

diff --git a/media-gfx/freecad/Manifest b/media-gfx/freecad/Manifest
index fe0489b287e6..02d737572cc2 100644
--- a/media-gfx/freecad/Manifest
+++ b/media-gfx/freecad/Manifest
@@ -1,2 +1,3 @@
 DIST freecad-0.19.2-0005-Make-smesh-compile-with-vtk9.patch.xz 5368 BLAKE2B 69bafefd049effe3c31719bb2c23d32e8ba7ad58235c58ac8279ba6c036feaf1b97d5751cf2d68896e7489803103b2d0f92f76e61b3ccc97ef05a95b337ca5c2 SHA512 66585cc13fb3b0b026cf9dbd761c8ba1c1fe4d4f7db2e144ddd97706e02ccd78f4a43ac7cd93ddcae6e73933bf41d4cbd4d94bcdff8804b81378a6d946c7b070
 DIST freecad-0.19.2.tar.gz 296987961 BLAKE2B 3c21359c71f7ac5a49cc4b4be437dfce02f2af73dfc526a3955547718ee41c461fc787d029a9a77374d58516d7c56fec6982fe6d38ab17fbc30c0a94929136bf SHA512 420f00e696725cbd31c936c47b6ac226d866a17c7b7683ad381b8dd5edaffc7dfb1a3c4238c08e8b4fd34ef0c08d7c244cb7797012e596df1ce0a4f6e3be6b72
+DIST freecad-0.19.4.tar.gz 296990652 BLAKE2B 6b252198616f7731144d000307a7f186eb2b24e07b85e008d0aae0f60a732fef5598c06c5c66b70fa44114f05afbc7d81b15c71bbb147bc2e458ea90cc81ee45 SHA512 58e5e6bb4ed40ce7f3a0b653cdb0371208189b9ca266f1c29a8f9077c4e56861b3925f695718fba34781254220f8a8919a2e2a501d43573b2c733f8b21c12c1f

diff --git a/media-gfx/freecad/files/freecad-0.19.4-Gentoo-specific-don-t-check-vcs.patch b/media-gfx/freecad/files/freecad-0.19.4-Gentoo-specific-don-t-check-vcs.patch
new file mode 100644
index 000000000000..62ae92392adf
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.19.4-Gentoo-specific-don-t-check-vcs.patch
@@ -0,0 +1,20 @@
+From 60ba533d21302b8a4c11ac06adb53b4041754b02 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Tue, 1 Mar 2022 18:22:00 +0100
+Subject: [PATCH] [Gentoo specific] don't check vcs
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+--- a/src/Tools/SubWCRev.py
++++ b/src/Tools/SubWCRev.py
+@@ -455,7 +455,7 @@ def main():
+         if o in ("-b", "--bindir"):
+             bindir = a
+ 
+-    vcs=[GitControl(), DebianGitHub(), BazaarControl(), Subversion(), MercurialControl(), DebianChangelog(), UnknownControl()]
++    vcs=[UnknownControl()]
+     for i in vcs:
+         if i.extractInfo(srcdir, bindir):
+             # Open the template file and the version file
+-- 
+2.35.1
+

diff --git a/media-gfx/freecad/freecad-0.19.4.ebuild b/media-gfx/freecad/freecad-0.19.4.ebuild
new file mode 100644
index 000000000000..cab7693eaacd
--- /dev/null
+++ b/media-gfx/freecad/freecad-0.19.4.ebuild
@@ -0,0 +1,323 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9} )
+
+inherit check-reqs cmake optfeature python-single-r1 xdg
+
+DESCRIPTION="QT based Computer Aided Design application"
+HOMEPAGE="https://www.freecadweb.org/ https://github.com/FreeCAD/FreeCAD"
+
+MY_PN=FreeCAD
+
+if [[ ${PV} = *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
+	S="${WORKDIR}/freecad-${PV}"
+else
+	MY_PV=$(ver_cut 1-2)
+	MY_PV=$(ver_rs 1 '_' ${MY_PV})
+	SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+		https://raw.githubusercontent.com/waebbl/waebbl-gentoo/master/patches/${PN}-0.19.2-0005-Make-smesh-compile-with-vtk9.patch.xz"
+	KEYWORDS="~amd64"
+	S="${WORKDIR}/FreeCAD-${PV}"
+fi
+
+# code is licensed LGPL-2
+# examples are licensed CC-BY-SA (without note of specific version)
+LICENSE="LGPL-2 CC-BY-SA-4.0"
+SLOT="0"
+IUSE="debug headless pcl test"
+RESTRICT="!test? ( test )"
+
+FREECAD_EXPERIMENTAL_MODULES="cloud plot ship"
+FREECAD_STABLE_MODULES="addonmgr drawing fem idf image inspection
+	material openscad part-design path points raytracing robot show
+	surface	techdraw tux"
+
+for module in ${FREECAD_STABLE_MODULES}; do
+	IUSE="${IUSE} +${module}"
+done
+for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
+	IUSE="${IUSE} ${module}"
+done
+unset module
+
+RDEPEND="
+	${PYTHON_DEPS}
+	dev-libs/OpenNI2[opengl(+)]
+	dev-libs/libspnav[X]
+	dev-libs/xerces-c[icu]
+	dev-qt/designer:5
+	dev-qt/qtconcurrent:5
+	dev-qt/qtcore:5
+	dev-qt/qtgui:5
+	dev-qt/qtnetwork:5
+	dev-qt/qtopengl:5
+	dev-qt/qtprintsupport:5
+	dev-qt/qtsvg:5
+	dev-qt/qtwebengine:5[widgets]
+	dev-qt/qtwidgets:5
+	dev-qt/qtx11extras:5
+	dev-qt/qtxml:5
+	>=media-libs/coin-4.0.0
+	media-libs/freetype
+	media-libs/qhull:=
+	sci-libs/flann[openmp]
+	sci-libs/hdf5:=[fortran,zlib]
+	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
+	<sci-libs/opencascade-7.6.0:=[vtk(+)]
+	sci-libs/orocos_kdl:=
+	sys-libs/zlib
+	virtual/glu
+	virtual/libusb:1
+	virtual/opengl
+	cloud? (
+		dev-libs/openssl:=
+		net-misc/curl
+	)
+	fem? ( sci-libs/vtk:=[boost(+),python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
+	openscad? ( media-gfx/openscad )
+	pcl? ( >=sci-libs/pcl-1.8.1:=[opengl,openni2(+),qt5(+),vtk(+)] )
+	$(python_gen_cond_dep '
+		dev-libs/boost:=[python,threads(+),${PYTHON_USEDEP}]
+		dev-python/matplotlib[${PYTHON_USEDEP}]
+		dev-python/numpy[${PYTHON_USEDEP}]
+		>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
+		dev-python/pybind11[${PYTHON_USEDEP}]
+		dev-python/pyside2[gui,svg,${PYTHON_USEDEP}]
+		dev-python/shiboken2[${PYTHON_USEDEP}]
+		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
+		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
+	')
+"
+DEPEND="
+	${RDEPEND}
+	>=dev-cpp/eigen-3.3.1:3
+"
+BDEPEND="
+	app-text/dos2unix
+	dev-lang/swig
+"
+
+# To get required dependencies:
+# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
+# We set the following requirements by default:
+# arch, draft, drawing, import, mesh, part, qt5, sketcher, spreadsheet, start, web.
+#
+# Additionally, we auto-enable mesh_part, flat_mesh and smesh
+# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
+# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
+# reflected by the REQUIRES_MODS macro, but at
+# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
+#
+# The increase in auto-enabled workbenches is due to their need in parts of the
+# test suite when compiled with a minimal set of USE flags.
+REQUIRED_USE="
+	${PYTHON_REQUIRED_USE}
+	inspection? ( points )
+	path? ( robot )
+	ship? ( image plot )
+	techdraw? ( drawing )
+"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-Gentoo-specific-don-t-check-vcs.patch
+	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
+	"${WORKDIR}"/${PN}-0.19.2-0005-Make-smesh-compile-with-vtk9.patch
+	"${FILESDIR}"/${PN}-0.19.2-0006-add-boost-serialization-to-find_package.patch
+)
+
+DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
+
+CHECKREQS_DISK_BUILD="2G"
+
+pkg_setup() {
+	check-reqs_pkg_setup
+	python-single-r1_pkg_setup
+	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, plesae run eselect opencascade"
+}
+
+src_prepare() {
+	# the upstream provided file doesn't find the coin doc tag file,
+	# but cmake ships a working one, so we use this.
+	rm "${S}/cMake/FindCoin3D.cmake" || die
+
+	# Fix desktop file
+	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
+
+	find "${S}" -type f -exec dos2unix -q {} \; || die "failed to convert to unix line endings"
+
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_ADDONMGR=$(usex addonmgr)
+		-DBUILD_ARCH=ON
+		-DBUILD_ASSEMBLY=OFF					# deprecated
+		-DBUILD_CLOUD=$(usex cloud)
+		-DBUILD_COMPLETE=OFF					# deprecated
+		-DBUILD_DRAFT=ON
+		-DBUILD_DRAWING=$(usex drawing)
+		-DBUILD_ENABLE_CXX_STD:STRING="C++17"	# needed for >=boost-1.77.0
+		-DBUILD_FEM=$(usex fem)
+		-DBUILD_FEM_NETGEN=OFF
+		-DBUILD_FLAT_MESH=ON
+		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
+		-DBUILD_FREETYPE=ON						# automagic dep
+		-DBUILD_GUI=$(usex !headless)
+		-DBUILD_IDF=$(usex idf)
+		-DBUILD_IMAGE=$(usex image)
+		-DBUILD_IMPORT=ON						# import module for various file formats
+		-DBUILD_INSPECTION=$(usex inspection)
+		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
+		-DBUILD_MATERIAL=$(usex material)
+		-DBUILD_MESH=ON
+		-DBUILD_MESH_PART=ON
+		-DBUILD_OPENSCAD=$(usex openscad)
+		-DBUILD_PART=ON
+		-DBUILD_PART_DESIGN=$(usex part-design)
+		-DBUILD_PATH=$(usex path)
+		-DBUILD_PLOT=$(usex plot)				# conflicts with possible external workbench
+		-DBUILD_POINTS=$(usex points)
+		-DBUILD_QT5=ON							# OFF means to use Qt4
+		-DBUILD_RAYTRACING=$(usex raytracing)
+		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
+		-DBUILD_ROBOT=$(usex robot)
+		-DBUILD_SHIP=$(usex ship)				# conflicts with possible external workbench
+		-DBUILD_SHOW=$(usex show)
+		-DBUILD_SKETCHER=ON						# needed by draft workspace
+		-DBUILD_SMESH=ON
+		-DBUILD_SPREADSHEET=ON
+		-DBUILD_START=ON
+		-DBUILD_SURFACE=$(usex surface)
+		-DBUILD_TECHDRAW=$(usex techdraw)
+		-DBUILD_TEST=ON							# always build test workbench for run-time testing
+		-DBUILD_TUX=$(usex tux)
+		-DBUILD_VR=OFF
+		-DBUILD_WEB=ON							# needed by start workspace
+		-DBUILD_WITH_CONDA=OFF
+
+		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
+		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
+		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
+		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
+
+		-DFREECAD_BUILD_DEBIAN=OFF
+
+		-DFREECAD_USE_EXTERNAL_KDL=ON
+		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
+		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
+		-DFREECAD_USE_FREETYPE=ON
+		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
+		-DFREECAD_USE_PCL=$(usex pcl)
+		-DFREECAD_USE_PYBIND11=ON
+		-DFREECAD_USE_QT_FILEDIALOG=ON
+		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
+
+		# install python modules to site-packages' dir. True only for the main package,
+		# sub-packages will still be installed inside /usr/lib64/freecad
+		-DINSTALL_TO_SITEPACKAGES=ON
+
+		# Use the version of shiboken2 that matches the selected python version
+		-DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+		-DPython3_EXECUTABLE=${PYTHON}
+	)
+
+	if use debug; then
+		mycmakeargs+=(
+			-DBUILD_SANDBOX=ON
+			-DBUILD_TEMPLATE=ON
+		)
+	else
+		mycmakeargs+=(
+			-DBUILD_SANDBOX=OFF
+			-DBUILD_TEMPLATE=OFF
+		)
+	fi
+
+	cmake_src_configure
+}
+
+# We use the FreeCADCmd binary instead of the FreeCAD binary here
+# for two reasons:
+# 1. It works out of the box with USE=headless as well, not needing a guard
+# 2. We don't need virtualx.eclass and it's dependencies
+# The exported environment variables are needed, so freecad does know
+# where to save it's temporary files, and where to look and write it's
+# configuration. Without those, there are sandbox violation, when it
+# tries to create /var/lib/portage/home/.FreeCAD directory.
+src_test() {
+	pushd "${BUILD_DIR}" > /dev/null || die
+	export FREECAD_USER_HOME="${HOME}"
+	export FREECAD_USER_DATA="${T}"
+	export FREECAD_USER_TEMP="${T}"
+	nonfatal ./bin/FreeCADCmd --run-test 0
+	popd > /dev/null || die
+}
+
+src_install() {
+	cmake_src_install
+
+	dobin src/Tools/freecad-thumbnailer
+
+	if ! use headless; then
+		dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
+	fi
+	dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
+
+	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
+	# compile main package in python site-packages as well
+	python_optimize
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	if use plot; then
+		einfo "Note: You are enabling the 'plot' USE flag."
+		einfo "This conflicts with the plot workbench that can be loaded"
+		einfo "via the addon manager! You can only install one of those."
+	fi
+
+	if use ship; then
+		einfo "Note: You are enabling the 'ship' USE flag."
+		einfo "This conflicts with the ship workbench that can be loaded"
+		einfo "via the addon manager! You can only install one of those."
+	fi
+
+	einfo "You can load a lot of additional workbenches using the integrated"
+	einfo "AddonManager."
+
+	# ToDo: check opencv, pysolar (::science), elmerfem (::science)
+	#		ifc++, ifcopenshell, netgen, z88 (no pkgs), calculix-ccx (::waebbl)
+	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
+	einfo "support. Some of them are available in Gentoo. Take a look at"
+	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
+	optfeature_header "Computational utilities"
+	optfeature "BLAS library" sci-libs/openblas
+	optfeature "Statistical computation with Python" dev-python/pandas
+	optfeature "Use scientific computation with Python" dev-python/scipy
+	optfeature "Use symbolic math with Python" dev-python/sympy
+	optfeature_header "Imaging, Plotting and Rendering utilities"
+	optfeature "Dependency graphs" media-gfx/graphviz
+	optfeature "PBR Rendering" media-gfx/povray
+	optfeature_header "Import / Export"
+	optfeature "Interact with git repositories" dev-python/GitPython
+	optfeature "Work with COLLADA documents" dev-python/pycollada
+	optfeature "YAML importer and emitter" dev-python/pyyaml
+	optfeature "Importing and exporting 2D AutoCAD DWG files" media-gfx/libredwg
+	optfeature "Importing and exporting geospatial data formats" sci-libs/gdal
+	optfeature "Working with projection data" sci-libs/proj
+	optfeature_header "Meshing and FEM"
+	optfeature "FEM mesh generator" sci-libs/gmsh
+	optfeature "Triangulating meshes" sci-libs/gts
+	optfeature "Visualization" sci-visualization/paraview
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+}

diff --git a/media-gfx/freecad/metadata.xml b/media-gfx/freecad/metadata.xml
index 57cb8fcbe607..44899f008bc0 100644
--- a/media-gfx/freecad/metadata.xml
+++ b/media-gfx/freecad/metadata.xml
@@ -18,6 +18,14 @@
 			Build the Cloud workbench, to access cloud providers (mostly
 			Amazon S3).
 		</flag>
+		<flag name="drawing">
+			Build the Drawing workbench, a predecessor to the TechDraw workbench.
+			Users are encouraged to learn how to use the TechDraw workbench and
+			switch to it instead.
+
+			This is a compatibility option and will be removed in a later (0.20+)
+			version of the package.
+		</flag>
 		<flag name="fem">
 			Build the FEM module and workbench which provides Finite Element 
 			Analysis (FEA) workflows


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2022-04-02 12:58 Andreas Sturmlechner
  0 siblings, 0 replies; 17+ messages in thread
From: Andreas Sturmlechner @ 2022-04-02 12:58 UTC (permalink / raw
  To: gentoo-commits

commit:     a45e193674d314658e13674229d19703d7cbdc47
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Sat Apr  2 12:20:35 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Apr  2 12:57:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a45e1936

media-gfx/freecad: drop 0.19.2-r7

Drop the version instead of backporting to this version.
Use 0.19.4 instead.
See discussion on https://github.com/gentoo/gentoo/pull/24861

Bug: https://bugs.gentoo.org/836433
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-gfx/freecad/Manifest                         |   1 -
 ...-0004809-Security-vulnerability-in-DWG-im.patch |  59 ----
 ...-0001-fix-failing-test-workbench-testcase.patch |  26 --
 ...-Use-run-instead-of-Popen-to-avoid-need-f.patch |  25 --
 ...2-0002-fix-femtest-failure-with-yaml-load.patch |  26 --
 ...19.2-0003-fix-test-when-built-without-GUI.patch |  33 ---
 ...-fix-build-failure-with-opencascade-7.5.2.patch |  30 --
 media-gfx/freecad/freecad-0.19.2-r7.ebuild         | 324 ---------------------
 8 files changed, 524 deletions(-)

diff --git a/media-gfx/freecad/Manifest b/media-gfx/freecad/Manifest
index 02d737572cc2..23eb9682d4ed 100644
--- a/media-gfx/freecad/Manifest
+++ b/media-gfx/freecad/Manifest
@@ -1,3 +1,2 @@
 DIST freecad-0.19.2-0005-Make-smesh-compile-with-vtk9.patch.xz 5368 BLAKE2B 69bafefd049effe3c31719bb2c23d32e8ba7ad58235c58ac8279ba6c036feaf1b97d5751cf2d68896e7489803103b2d0f92f76e61b3ccc97ef05a95b337ca5c2 SHA512 66585cc13fb3b0b026cf9dbd761c8ba1c1fe4d4f7db2e144ddd97706e02ccd78f4a43ac7cd93ddcae6e73933bf41d4cbd4d94bcdff8804b81378a6d946c7b070
-DIST freecad-0.19.2.tar.gz 296987961 BLAKE2B 3c21359c71f7ac5a49cc4b4be437dfce02f2af73dfc526a3955547718ee41c461fc787d029a9a77374d58516d7c56fec6982fe6d38ab17fbc30c0a94929136bf SHA512 420f00e696725cbd31c936c47b6ac226d866a17c7b7683ad381b8dd5edaffc7dfb1a3c4238c08e8b4fd34ef0c08d7c244cb7797012e596df1ce0a4f6e3be6b72
 DIST freecad-0.19.4.tar.gz 296990652 BLAKE2B 6b252198616f7731144d000307a7f186eb2b24e07b85e008d0aae0f60a732fef5598c06c5c66b70fa44114f05afbc7d81b15c71bbb147bc2e458ea90cc81ee45 SHA512 58e5e6bb4ed40ce7f3a0b653cdb0371208189b9ca266f1c29a8f9077c4e56861b3925f695718fba34781254220f8a8919a2e2a501d43573b2c733f8b21c12c1f

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0001-Backport-of-0004809-Security-vulnerability-in-DWG-im.patch b/media-gfx/freecad/files/freecad-0.19.2-0001-Backport-of-0004809-Security-vulnerability-in-DWG-im.patch
deleted file mode 100644
index 2df44ff66ac8..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0001-Backport-of-0004809-Security-vulnerability-in-DWG-im.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 4006e62860c73f0943e71c7da478256a7337941d Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Mon, 31 Jan 2022 08:12:35 +0100
-Subject: [PATCH 1/2] Backport of 0004809: Security vulnerability in DWG import
- when using ODA file converter
-
-Original patch commit id 1742d7ff82af1653253c4a4183c262c9af3b26d6 by
-wmayer <wmayer@users.sourceforge.net>.
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
---- a/src/Mod/Draft/importDWG.py
-+++ b/src/Mod/Draft/importDWG.py
-@@ -44,8 +44,6 @@ https://knowledge.autodesk.com/support/autocad/downloads/
- # *                                                                         *
- # ***************************************************************************
- 
--# TODO: use subprocess.popen() instead of subprocess.call()
--
- import six
- import FreeCAD
- from FreeCAD import Console as FCC
-@@ -217,15 +215,10 @@ def convertToDxf(dwgfilename):
-         indir = os.path.dirname(dwgfilename)
-         outdir = tempfile.mkdtemp()
-         basename = os.path.basename(dwgfilename)
--        cmdline = ('"%s" "%s" "%s" "ACAD2000" "DXF" "0" "1" "%s"'
--                   % (teigha, indir, outdir, basename))
--        FCC.PrintMessage(translate("ImportDWG", "Converting: ")
--                         + cmdline + "\n")
--        if six.PY2:
--            if isinstance(cmdline, six.text_type):
--                encoding = sys.getfilesystemencoding()
--                cmdline = cmdline.encode(encoding)
--        subprocess.call(cmdline, shell=True)  # os.system(cmdline)
-+        cmdline = [teigha, indir, outdir, "ACAD2000", "DXF", "0", "1", basename]
-+        FCC.PrintMessage(translate("draft", "Converting:") + " " + str(cmdline) + "\n")
-+        proc = subprocess.Popen(cmdline)
-+        proc.communicate()
-         result = outdir + os.sep + os.path.splitext(basename)[0] + ".dxf"
-         if os.path.exists(result):
-             FCC.PrintMessage(translate("ImportDWG",
-@@ -270,10 +263,9 @@ def convertToDwg(dxffilename, dwgfilename):
-         indir = os.path.dirname(dxffilename)
-         outdir = os.path.dirname(dwgfilename)
-         basename = os.path.basename(dxffilename)
--        cmdline = ('"%s" "%s" "%s" "ACAD2000" "DWG" "0" "1" "%s"'
--                   % (teigha, indir, outdir, basename))
--        FCC.PrintMessage(translate("ImportDWG", "Converting: ")
--                         + cmdline + "\n")
--        subprocess.call(cmdline, shell=True)  # os.system(cmdline)
-+        cmdline = [teigha, indir, outdir, "ACAD2000", "DWG", "0", "1", basename]
-+        FCC.PrintMessage(translate("draft", "Converting:") + " " + str(cmdline) + "\n")
-+        proc = subprocess.Popen(cmdline)
-+        proc.communicate()
-         return dwgfilename
-     return None
--- 
-2.35.0
-

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0001-fix-failing-test-workbench-testcase.patch b/media-gfx/freecad/files/freecad-0.19.2-0001-fix-failing-test-workbench-testcase.patch
deleted file mode 100644
index 58107fb544d1..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0001-fix-failing-test-workbench-testcase.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From dc04c745ea1e7dc277ab06fab69a2b91fbf543c5 Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Sun, 25 Apr 2021 23:02:39 +0200
-Subject: [PATCH] fix failing test workbench testcase
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- src/Mod/Test/Document.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Mod/Test/Document.py b/src/Mod/Test/Document.py
-index e41375c..fd5eb15 100644
---- a/src/Mod/Test/Document.py
-+++ b/src/Mod/Test/Document.py
-@@ -1307,7 +1307,7 @@ class DocumentFileIncludeCases(unittest.TestCase):
-     # copy file from L5 which is in the same directory
-     L7 = doc2.addObject("App::DocumentObjectFileIncluded","FileObject3")
-     L7.File = (L5.File,"Copy.txt")
--    self.failUnless(os.path.exists(L5.File))
-+    self.failUnless(os.path.exists(L7.File))
-     FreeCAD.closeDocument("Doc2")
- 
- 
--- 
-2.31.1
-

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0002-Backport-of-Use-run-instead-of-Popen-to-avoid-need-f.patch b/media-gfx/freecad/files/freecad-0.19.2-0002-Backport-of-Use-run-instead-of-Popen-to-avoid-need-f.patch
deleted file mode 100644
index 9b043bd34563..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0002-Backport-of-Use-run-instead-of-Popen-to-avoid-need-f.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 937d8ca9bf4c50f8a7dc0fbcf9e6ac23b0fbe033 Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Mon, 31 Jan 2022 08:17:24 +0100
-Subject: [PATCH 2/2] Backport of Use run() instead of Popen() to avoid need
- for communicate
-
-Original patch commit id a65dbc6f8296562a12407a36f4931a80bbb628b7 by
-sliptonic <shopinthewoods@gmail.com>
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
---- a/src/Mod/Path/PathScripts/PathSanity.py
-+++ b/src/Mod/Path/PathScripts/PathSanity.py
-@@ -412,8 +412,7 @@ class CommandPathSanity:
-             FreeCAD.Console.PrintMessage('asciidoc file written to {}\n'.format(reportraw))
- 
-         try:
--            result = os.system('asciidoctor {} -o {}'.format(reportraw,
--                reporthtml))
-+            result = subprocess.run(["asciidoctor", reportraw, "-o", reporthtml])
-             if str(result) == "32512":
-                 msg = "asciidoctor not found. html cannot be generated."
-                 QtGui.QMessageBox.information(None, "Path Sanity", msg)
--- 
-2.35.0
-

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0002-fix-femtest-failure-with-yaml-load.patch b/media-gfx/freecad/files/freecad-0.19.2-0002-fix-femtest-failure-with-yaml-load.patch
deleted file mode 100644
index 17da18c2b12c..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0002-fix-femtest-failure-with-yaml-load.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From a8314fdc56bb39f5af85e1678a03d613bfb9ee03 Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Mon, 26 Apr 2021 19:32:54 +0200
-Subject: [PATCH] fix femtest failure with yaml load
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- src/Mod/Fem/feminout/importYamlJsonMesh.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Mod/Fem/feminout/importYamlJsonMesh.py b/src/Mod/Fem/feminout/importYamlJsonMesh.py
-index 9886248..aff83a5 100644
---- a/src/Mod/Fem/feminout/importYamlJsonMesh.py
-+++ b/src/Mod/Fem/feminout/importYamlJsonMesh.py
-@@ -162,7 +162,7 @@ def read(
-             or fileExtension.lower() == ".yml"
-     ) and has_yaml:
-         fp = pyopen(fileString, "rt")
--        raw_mesh_data = yaml.load(fp)
-+        raw_mesh_data = yaml.load(fp, Loader=yaml.SafeLoader)
-         fp.close()
-     else:
-         Console.PrintError(
--- 
-2.31.1
-

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0003-fix-test-when-built-without-GUI.patch b/media-gfx/freecad/files/freecad-0.19.2-0003-fix-test-when-built-without-GUI.patch
deleted file mode 100644
index 33892ade6d5a..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0003-fix-test-when-built-without-GUI.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From d7ea5a0f20888a2ddae3eb48e508e9067662cdc7 Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Wed, 28 Apr 2021 08:57:53 +0200
-Subject: [PATCH] fix test when built without GUI
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- src/Mod/Arch/ArchRoof.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Mod/Arch/ArchRoof.py b/src/Mod/Arch/ArchRoof.py
-index 99130d0..e2c2955 100644
---- a/src/Mod/Arch/ArchRoof.py
-+++ b/src/Mod/Arch/ArchRoof.py
-@@ -22,7 +22,6 @@
- import math
- 
- import ArchComponent
--import Arch_rc
- import Draft
- import DraftGeomUtils
- import DraftVecUtils
-@@ -32,6 +31,7 @@ import Part
- from FreeCAD import Vector
- 
- if FreeCAD.GuiUp:
-+    import Arch_rc
-     import FreeCADGui
-     from PySide import QtCore, QtGui
-     from DraftTools import translate
--- 
-2.31.1
-

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0007-fix-build-failure-with-opencascade-7.5.2.patch b/media-gfx/freecad/files/freecad-0.19.2-0007-fix-build-failure-with-opencascade-7.5.2.patch
deleted file mode 100644
index 46c69326129a..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0007-fix-build-failure-with-opencascade-7.5.2.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From bbbaf3e27d39767ba0b3de998b9d8d5fd42a681f Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Sun, 20 Jun 2021 16:24:04 +0200
-Subject: [PATCH] fix build failure with opencascade-7.5.2
-
-For patch, see
-https://forum.freecadweb.org/viewtopic.php?f=4&t=58090&sid=07aca55f0513162234c40bc4bd6e4044#p503286
-
-Upstream issue at https://tracker.dev.opencascade.org/view.php?id=32328
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- src/Mod/Part/App/ShapeUpgrade/UnifySameDomainPyImp.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/Mod/Part/App/ShapeUpgrade/UnifySameDomainPyImp.cpp b/src/Mod/Part/App/ShapeUpgrade/UnifySameDomainPyImp.cpp
-index a268fce..3def142 100644
---- a/src/Mod/Part/App/ShapeUpgrade/UnifySameDomainPyImp.cpp
-+++ b/src/Mod/Part/App/ShapeUpgrade/UnifySameDomainPyImp.cpp
-@@ -27,6 +27,7 @@
- # include <Standard_Failure.hxx>
- #endif
- 
-+#include <TopoDS_Edge.hxx>
- #include "ShapeUpgrade/UnifySameDomainPy.h"
- #include "ShapeUpgrade/UnifySameDomainPy.cpp"
- #include "TopoShapePy.h"
--- 
-2.32.0
-

diff --git a/media-gfx/freecad/freecad-0.19.2-r7.ebuild b/media-gfx/freecad/freecad-0.19.2-r7.ebuild
deleted file mode 100644
index aa2041fd5f01..000000000000
--- a/media-gfx/freecad/freecad-0.19.2-r7.ebuild
+++ /dev/null
@@ -1,324 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit check-reqs cmake optfeature python-single-r1 xdg
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="https://www.freecadweb.org/ https://github.com/FreeCAD/FreeCAD"
-
-MY_PN=FreeCAD
-
-if [[ ${PV} = *9999 ]]; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
-	S="${WORKDIR}/freecad-${PV}"
-else
-	MY_PV=$(ver_cut 1-2)
-	MY_PV=$(ver_rs 1 '_' ${MY_PV})
-	SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
-		https://raw.githubusercontent.com/waebbl/waebbl-gentoo/master/patches/${P}-0005-Make-smesh-compile-with-vtk9.patch.xz"
-	KEYWORDS="~amd64"
-	S="${WORKDIR}/FreeCAD-${PV}"
-fi
-
-# code is licensed LGPL-2
-# examples are licensed CC-BY-SA (without note of specific version)
-LICENSE="LGPL-2 CC-BY-SA-4.0"
-SLOT="0"
-IUSE="debug headless pcl test"
-RESTRICT="!test? ( test )"
-
-FREECAD_EXPERIMENTAL_MODULES="cloud plot ship"
-FREECAD_STABLE_MODULES="addonmgr fem idf image inspection material
-	openscad part-design path points raytracing robot show surface
-	techdraw tux"
-
-for module in ${FREECAD_STABLE_MODULES}; do
-	IUSE="${IUSE} +${module}"
-done
-for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
-	IUSE="${IUSE} ${module}"
-done
-unset module
-
-RDEPEND="
-	${PYTHON_DEPS}
-	dev-libs/OpenNI2[opengl(+)]
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c[icu]
-	dev-qt/designer:5
-	dev-qt/qtconcurrent:5
-	dev-qt/qtcore:5
-	dev-qt/qtgui:5
-	dev-qt/qtnetwork:5
-	dev-qt/qtopengl:5
-	dev-qt/qtprintsupport:5
-	dev-qt/qtsvg:5
-	dev-qt/qtwebengine:5[widgets]
-	dev-qt/qtwidgets:5
-	dev-qt/qtx11extras:5
-	dev-qt/qtxml:5
-	>=media-libs/coin-4.0.0
-	media-libs/freetype
-	media-libs/qhull:=
-	sci-libs/flann[openmp]
-	sci-libs/hdf5:=[fortran,zlib]
-	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
-	<sci-libs/opencascade-7.6.0:=[vtk(+)]
-	sci-libs/orocos_kdl:=
-	sys-libs/zlib
-	virtual/glu
-	virtual/libusb:1
-	virtual/opengl
-	cloud? (
-		dev-libs/openssl:=
-		net-misc/curl
-	)
-	fem? ( sci-libs/vtk:=[boost(+),python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
-	openscad? ( media-gfx/openscad )
-	pcl? ( >=sci-libs/pcl-1.8.1:=[opengl,openni2(+),qt5(+),vtk(+)] )
-	$(python_gen_cond_dep '
-		dev-libs/boost:=[python,threads(+),${PYTHON_USEDEP}]
-		dev-python/matplotlib[${PYTHON_USEDEP}]
-		dev-python/numpy[${PYTHON_USEDEP}]
-		>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
-		dev-python/pybind11[${PYTHON_USEDEP}]
-		dev-python/pyside2[gui,svg,${PYTHON_USEDEP}]
-		dev-python/shiboken2[${PYTHON_USEDEP}]
-		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
-		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
-	')
-"
-DEPEND="
-	${RDEPEND}
-	>=dev-cpp/eigen-3.3.1:3
-"
-BDEPEND="dev-lang/swig"
-
-# To get required dependencies:
-# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
-# We set the following requirements by default:
-# arch, draft, drawing, import, mesh, part, qt5, sketcher, spreadsheet, start, web.
-#
-# Additionally, we auto-enable mesh_part, flat_mesh and smesh
-# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
-# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
-# reflected by the REQUIRES_MODS macro, but at
-# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
-#
-# The increase in auto-enabled workbenches is due to their need in parts of the
-# test suite when compiled with a minimal set of USE flags.
-REQUIRED_USE="
-	${PYTHON_REQUIRED_USE}
-	inspection? ( points )
-	path? ( robot )
-	ship? ( image plot )
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
-	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
-	"${FILESDIR}"/${P}-0001-fix-failing-test-workbench-testcase.patch
-	"${FILESDIR}"/${P}-0002-fix-femtest-failure-with-yaml-load.patch
-	"${FILESDIR}"/${P}-0003-fix-test-when-built-without-GUI.patch
-	"${WORKDIR}"/${P}-0005-Make-smesh-compile-with-vtk9.patch
-	"${FILESDIR}"/${P}-0006-add-boost-serialization-to-find_package.patch
-	"${FILESDIR}"/${P}-0007-fix-build-failure-with-opencascade-7.5.2.patch
-	"${FILESDIR}"/${P}-0001-Backport-of-0004809-Security-vulnerability-in-DWG-im.patch
-	"${FILESDIR}"/${P}-0002-Backport-of-Use-run-instead-of-Popen-to-avoid-need-f.patch
-)
-
-DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
-
-CHECKREQS_DISK_BUILD="2G"
-
-pkg_setup() {
-	check-reqs_pkg_setup
-	python-single-r1_pkg_setup
-	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, plesae run eselect opencascade"
-}
-
-src_prepare() {
-	# the upstream provided file doesn't find the coin doc tag file,
-	# but cmake ships a working one, so we use this.
-	rm "${S}/cMake/FindCoin3D.cmake" || die
-
-	# Fix desktop file
-	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
-
-	cmake_src_prepare
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_ADDONMGR=$(usex addonmgr)
-		-DBUILD_ARCH=ON
-		-DBUILD_ASSEMBLY=OFF					# deprecated
-		-DBUILD_CLOUD=$(usex cloud)
-		-DBUILD_COMPLETE=OFF					# deprecated
-		-DBUILD_DRAFT=ON
-		-DBUILD_DRAWING=ON
-		-DBUILD_ENABLE_CXX_STD:STRING="C++17"	# needed for >=boost-1.77.0
-		-DBUILD_FEM=$(usex fem)
-		-DBUILD_FEM_NETGEN=OFF
-		-DBUILD_FLAT_MESH=ON
-		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
-		-DBUILD_FREETYPE=ON						# automagic dep
-		-DBUILD_GUI=$(usex !headless)
-		-DBUILD_IDF=$(usex idf)
-		-DBUILD_IMAGE=$(usex image)
-		-DBUILD_IMPORT=ON						# import module for various file formats
-		-DBUILD_INSPECTION=$(usex inspection)
-		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
-		-DBUILD_MATERIAL=$(usex material)
-		-DBUILD_MESH=ON
-		-DBUILD_MESH_PART=ON
-		-DBUILD_OPENSCAD=$(usex openscad)
-		-DBUILD_PART=ON
-		-DBUILD_PART_DESIGN=$(usex part-design)
-		-DBUILD_PATH=$(usex path)
-		-DBUILD_PLOT=$(usex plot)				# conflicts with possible external workbench
-		-DBUILD_POINTS=$(usex points)
-		-DBUILD_QT5=ON							# OFF means to use Qt4
-		-DBUILD_RAYTRACING=$(usex raytracing)
-		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
-		-DBUILD_ROBOT=$(usex robot)
-		-DBUILD_SHIP=$(usex ship)				# conflicts with possible external workbench
-		-DBUILD_SHOW=$(usex show)
-		-DBUILD_SKETCHER=ON						# needed by draft workspace
-		-DBUILD_SMESH=ON
-		-DBUILD_SPREADSHEET=ON
-		-DBUILD_START=ON
-		-DBUILD_SURFACE=$(usex surface)
-		-DBUILD_TECHDRAW=$(usex techdraw)
-		-DBUILD_TEST=ON							# always build test workbench for run-time testing
-		-DBUILD_TUX=$(usex tux)
-		-DBUILD_VR=OFF
-		-DBUILD_WEB=ON							# needed by start workspace
-		-DBUILD_WITH_CONDA=OFF
-
-		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
-		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
-		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
-		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
-
-		-DFREECAD_BUILD_DEBIAN=OFF
-
-		-DFREECAD_USE_EXTERNAL_KDL=ON
-		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
-		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
-		-DFREECAD_USE_FREETYPE=ON
-		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
-		-DFREECAD_USE_PCL=$(usex pcl)
-		-DFREECAD_USE_PYBIND11=ON
-		-DFREECAD_USE_QT_FILEDIALOG=ON
-		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
-
-		# install python modules to site-packages' dir. True only for the main package,
-		# sub-packages will still be installed inside /usr/lib64/freecad
-		-DINSTALL_TO_SITEPACKAGES=ON
-
-		# Use the version of shiboken2 that matches the selected python version
-		-DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
-		-DPython3_EXECUTABLE=${PYTHON}
-	)
-
-	if use debug; then
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=ON
-			-DBUILD_TEMPLATE=ON
-		)
-	else
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=OFF
-			-DBUILD_TEMPLATE=OFF
-		)
-	fi
-
-	cmake_src_configure
-}
-
-# We use the FreeCADCmd binary instead of the FreeCAD binary here
-# for two reasons:
-# 1. It works out of the box with USE=headless as well, not needing a guard
-# 2. We don't need virtualx.eclass and it's dependencies
-# The exported environment variables are needed, so freecad does know
-# where to save it's temporary files, and where to look and write it's
-# configuration. Without those, there are sandbox violation, when it
-# tries to create /var/lib/portage/home/.FreeCAD directory.
-src_test() {
-	pushd "${BUILD_DIR}" > /dev/null || die
-	export FREECAD_USER_HOME="${HOME}"
-	export FREECAD_USER_DATA="${T}"
-	export FREECAD_USER_TEMP="${T}"
-	nonfatal ./bin/FreeCADCmd --run-test 0
-	popd > /dev/null || die
-}
-
-src_install() {
-	cmake_src_install
-
-	dobin src/Tools/freecad-thumbnailer
-
-	if ! use headless; then
-		dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
-		mv "${ED}"/usr/$(get_libdir)/freecad/share/* "${ED}"/usr/share || die "failed to move shared ressources"
-	fi
-	dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
-
-	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
-	# compile main package in python site-packages as well
-	python_optimize
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use plot; then
-		einfo "Note: You are enabling the 'plot' USE flag."
-		einfo "This conflicts with the plot workbench that can be loaded"
-		einfo "via the addon manager! You can only install one of those."
-	fi
-
-	if use ship; then
-		einfo "Note: You are enabling the 'ship' USE flag."
-		einfo "This conflicts with the ship workbench that can be loaded"
-		einfo "via the addon manager! You can only install one of those."
-	fi
-
-	einfo "You can load a lot of additional workbenches using the integrated"
-	einfo "AddonManager."
-
-	# ToDo: check opencv, pysolar (::science), elmerfem (::science)
-	#		ifc++, ifcopenshell, netgen, z88 (no pkgs), calculix-ccx (::waebbl)
-	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
-	einfo "support. Some of them are available in Gentoo. Take a look at"
-	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
-	optfeature_header "Computational utilities"
-	optfeature "BLAS library" sci-libs/openblas
-	optfeature "Statistical computation with Python" dev-python/pandas
-	optfeature "Use scientific computation with Python" dev-python/scipy
-	optfeature "Use symbolic math with Python" dev-python/sympy
-	optfeature_header "Imaging, Plotting and Rendering utilities"
-	optfeature "Dependency graphs" media-gfx/graphviz
-	optfeature "PBR Rendering" media-gfx/povray
-	optfeature_header "Import / Export"
-	optfeature "Interact with git repositories" dev-python/GitPython
-	optfeature "Work with COLLADA documents" dev-python/pycollada
-	optfeature "YAML importer and emitter" dev-python/pyyaml
-	optfeature "Importing and exporting 2D AutoCAD DWG files" media-gfx/libredwg
-	optfeature "Importing and exporting geospatial data formats" sci-libs/gdal
-	optfeature "Working with projection data" sci-libs/proj
-	optfeature_header "Meshing and FEM"
-	optfeature "FEM mesh generator" sci-libs/gmsh
-	optfeature "Triangulating meshes" sci-libs/gts
-	optfeature "Visualization" sci-visualization/paraview
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-}


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2022-10-31 15:46 Joonas Niilola
  0 siblings, 0 replies; 17+ messages in thread
From: Joonas Niilola @ 2022-10-31 15:46 UTC (permalink / raw
  To: gentoo-commits

commit:     ae75bb2605050c62397e489d9929ddadb1dd246e
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Mon Oct 31 15:16:09 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Mon Oct 31 15:46:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae75bb26

media-gfx/freecad: swap patch

Swap a patch, available in two different versions to reduce number of
files in ${FILESDIR}. This patch is also used by 0.20.1.

Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/28051
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 ...1231-0003-Gentoo-specific-don-t-check-vcs.patch | 26 ----------------------
 media-gfx/freecad/freecad-9999.ebuild              |  4 +++-
 2 files changed, 3 insertions(+), 27 deletions(-)

diff --git a/media-gfx/freecad/files/freecad-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch b/media-gfx/freecad/files/freecad-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
deleted file mode 100644
index ac8d194d00ea..000000000000
--- a/media-gfx/freecad/files/freecad-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From acc8a26b73a87ae024bce30e9f1531610b6e0e5f Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Sat, 13 Feb 2021 14:54:28 +0100
-Subject: [PATCH] [Gentoo specific] don't check vcs
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- src/Tools/SubWCRev.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Tools/SubWCRev.py b/src/Tools/SubWCRev.py
-index 9795450..59938bd 100644
---- a/src/Tools/SubWCRev.py
-+++ b/src/Tools/SubWCRev.py
-@@ -455,7 +455,7 @@ def main():
-         if o in ("-b", "--bindir"):
-             bindir = a
- 
--    vcs=[GitControl(), DebianGitHub(), BazaarControl(), Subversion(), MercurialControl(), DebianChangelog(), UnknownControl()]
-+    vcs=[UnknownControl()]
-     for i in vcs:
-         if i.extractInfo(srcdir, bindir):
-             # Open the template file and the version file
--- 
-2.30.1
-

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index 67ba7b4138f4..95e48c37bdac 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -120,7 +120,7 @@ REQUIRED_USE="
 "
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch
+	"${FILESDIR}"/${PN}-0.19.4-Gentoo-specific-don-t-check-vcs.patch
 	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
 )
 
@@ -138,6 +138,8 @@ src_prepare() {
 	# Fix desktop file
 	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
 
+	find "${S}" -type f -exec dos2unix -q {} \; || die "failed to convert to unix line endings"
+
 	cmake_src_prepare
 }
 


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2022-10-31 15:46 Joonas Niilola
  0 siblings, 0 replies; 17+ messages in thread
From: Joonas Niilola @ 2022-10-31 15:46 UTC (permalink / raw
  To: gentoo-commits

commit:     f1fad773fe9f1280691e37c5f148a43294ca232e
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Mon Oct 31 15:10:14 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Mon Oct 31 15:46:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1fad773

media-gfx/freecad: drop 0.19.4-r1, 0.20-r1

Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-gfx/freecad/Manifest                         |   3 -
 ...6-add-boost-serialization-to-find_package.patch |  53 ----
 ...19.4-backport-correctly-find-PySide2Tools.patch | 106 -------
 media-gfx/freecad/freecad-0.19.4-r1.ebuild         | 325 ---------------------
 media-gfx/freecad/freecad-0.20-r1.ebuild           | 309 --------------------
 media-gfx/freecad/metadata.xml                     |  17 --
 6 files changed, 813 deletions(-)

diff --git a/media-gfx/freecad/Manifest b/media-gfx/freecad/Manifest
index 42213fb79589..ae9dfbc8a37d 100644
--- a/media-gfx/freecad/Manifest
+++ b/media-gfx/freecad/Manifest
@@ -1,4 +1 @@
-DIST freecad-0.19.2-0005-Make-smesh-compile-with-vtk9.patch.xz 5368 BLAKE2B 69bafefd049effe3c31719bb2c23d32e8ba7ad58235c58ac8279ba6c036feaf1b97d5751cf2d68896e7489803103b2d0f92f76e61b3ccc97ef05a95b337ca5c2 SHA512 66585cc13fb3b0b026cf9dbd761c8ba1c1fe4d4f7db2e144ddd97706e02ccd78f4a43ac7cd93ddcae6e73933bf41d4cbd4d94bcdff8804b81378a6d946c7b070
-DIST freecad-0.19.4.tar.gz 296990652 BLAKE2B 6b252198616f7731144d000307a7f186eb2b24e07b85e008d0aae0f60a732fef5598c06c5c66b70fa44114f05afbc7d81b15c71bbb147bc2e458ea90cc81ee45 SHA512 58e5e6bb4ed40ce7f3a0b653cdb0371208189b9ca266f1c29a8f9077c4e56861b3925f695718fba34781254220f8a8919a2e2a501d43573b2c733f8b21c12c1f
 DIST freecad-0.20.1.tar.gz 75545072 BLAKE2B be2d2970b80523b34f7400a2762f997b815a5ae90dcb6cee6e560316712ebe3ab8a64053bd73e9f50548ff076920af0304a6780c94c4f3708d30b82bbee3b5d9 SHA512 ab4cfab4008300b8273769b9395602261c88c19f0893dabe6498a2eac020f1fe3fbf7284928144f1d4147d8627a47d83a40a1777a298673da2e24d956006d827
-DIST freecad-0.20.tar.gz 75452957 BLAKE2B 600baf30541dabb7cf5df22a2d0fef0972d1b9cbf7c8425b9e2fadae54a0b0a1b75bb252fa18ecbf68fa5649ce459a88c71d69e000899e4b46d5c59fe956fcd1 SHA512 b1d91efa873f180bf635f6006d6c4b7a33b64b630955c639fe923bb340ce8104474688e05eea151d1ac1557388947ae81618cfc8a578f14706aa07b5cdc45cda

diff --git a/media-gfx/freecad/files/freecad-0.19.2-0006-add-boost-serialization-to-find_package.patch b/media-gfx/freecad/files/freecad-0.19.2-0006-add-boost-serialization-to-find_package.patch
deleted file mode 100644
index f9120e051919..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.2-0006-add-boost-serialization-to-find_package.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From fc4ae2ff217c67eae39947ed6b655b8afaa83859 Mon Sep 17 00:00:00 2001
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Sun, 20 Jun 2021 15:38:45 +0200
-Subject: [PATCH] add boost::serialization to find_package
-
-Swaps SetupBoost() after SetupSalomeSMESH() has been called.
-SetupSalomeSMESH() looks for vtk, which searches for boost::serialization
-overriding the default libraries detected by SetupBoost().
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- CMakeLists.txt                         | 4 +++-
- cMake/FreeCAD_Helpers/SetupBoost.cmake | 2 +-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 5b17736..c241ebe 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -45,7 +45,6 @@ if(NOT FREECAD_LIBPACK_USE OR FREECAD_LIBPACK_CHECKFILE_CLBUNDLER)
-     SetupPython()
-     SetupPCL()
-     SetupPybind11()
--    SetupBoost()
-     SetupXercesC()
-     find_package(ZLIB REQUIRED)
-     find_package(PyCXX REQUIRED)
-@@ -57,6 +56,9 @@ if(NOT FREECAD_LIBPACK_USE OR FREECAD_LIBPACK_CHECKFILE_CLBUNDLER)
-         SetupOpenGL()
-     endif(BUILD_GUI)
-     SetupSalomeSMESH()
-+    # needs to be called after SMESH which pulls in VTK, which only add boost::serialization
-+    # overriding the values of SetupBoost()
-+    SetupBoost()
-     if (BUILD_FEM_NETGEN)
-         find_package(NETGEN)
-     endif(BUILD_FEM_NETGEN)
-diff --git a/cMake/FreeCAD_Helpers/SetupBoost.cmake b/cMake/FreeCAD_Helpers/SetupBoost.cmake
-index 76c6d64..77c415b 100644
---- a/cMake/FreeCAD_Helpers/SetupBoost.cmake
-+++ b/cMake/FreeCAD_Helpers/SetupBoost.cmake
-@@ -3,7 +3,7 @@ macro(SetupBoost)
- 
-     set(_boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS})
- 
--    set (BOOST_COMPONENTS filesystem program_options regex system thread)
-+    set (BOOST_COMPONENTS filesystem program_options regex serialization system thread)
-     find_package(Boost ${BOOST_MIN_VERSION}
-         COMPONENTS ${BOOST_COMPONENTS} REQUIRED)
- 
--- 
-2.32.0
-

diff --git a/media-gfx/freecad/files/freecad-0.19.4-backport-correctly-find-PySide2Tools.patch b/media-gfx/freecad/files/freecad-0.19.4-backport-correctly-find-PySide2Tools.patch
deleted file mode 100644
index b297727033db..000000000000
--- a/media-gfx/freecad/files/freecad-0.19.4-backport-correctly-find-PySide2Tools.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-From https://github.com/FreeCAD/FreeCAD/tree/6b062b25e118fc6d260d8caff6cf46fafd6cfa0f
-From: Bernd Waibel <waebbl-gentoo@posteo.net>
-Date: Sat, 2 Apr 2022 09:30:09 +0200
-Subject: [PATCH] backport correctly find PySide2Tools
-
-Backported from current HEAD
-
-Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
---- a/cMake/FindPySide2Tools.cmake
-+++ b/cMake/FindPySide2Tools.cmake
-@@ -23,7 +23,7 @@ endif(WIN32 OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
- # Since Qt v5.14, pyside2-uic and pyside2-rcc are directly provided by Qt5Core uic and rcc, with '-g python' option
- # We test Qt5Core version to act accordingly
- 
--FIND_PACKAGE(Qt5Core)
-+FIND_PACKAGE(Qt5 COMPONENTS Core)
- 
- IF(Qt5Core_VERSION VERSION_LESS 5.14)
-   # Legacy (< 5.14)
-@@ -33,13 +33,20 @@ IF(Qt5Core_VERSION VERSION_LESS 5.14)
-   set(RCCOPTIONS "")
- ELSE(Qt5Core_VERSION VERSION_LESS 5.14)
-   # New (>= 5.14)
--  FIND_PROGRAM(PYSIDE2UICBINARY NAMES uic-qt5 uic pyside2-uic)
--  set(UICOPTIONS "--generator=python")
--  FIND_PROGRAM(PYSIDE2RCCBINARY NAMES rcc-qt5 rcc pyside2-rcc)
--  set(RCCOPTIONS "--generator=python" "--compress-algo=zlib" "--compress=1")
-+  if (TARGET Qt::uic)
-+    get_property(PYSIDE2UICBINARY TARGET Qt::uic PROPERTY LOCATION)
-+    set(UICOPTIONS "--generator=python")
-+  endif()
-+  if (TARGET Qt::rcc)
-+    get_property(PYSIDE2RCCBINARY TARGET Qt::rcc PROPERTY LOCATION)
-+    set(RCCOPTIONS "--generator=python" "--compress-algo=zlib" "--compress=1")
-+  endif()
- ENDIF(Qt5Core_VERSION VERSION_LESS 5.14)
- 
- MACRO(PYSIDE_WRAP_UI outfiles)
-+  if (NOT PYSIDE2UICBINARY)
-+    message(FATAL_ERROR "Qt uic is required for generating ${ARGN}")
-+  endif()
-   FOREACH(it ${ARGN})
-     GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
-     GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
-@@ -58,7 +65,7 @@ MACRO(PYSIDE_WRAP_UI outfiles)
-         # we follow the tool command with in-place sed.
-         ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
-           COMMAND "${PYSIDE2UICBINARY}" ${UICOPTIONS} "${infile}" -o "${outfile}"
--          COMMAND sed -i "/^# /d" "${outfile}"
-+          COMMAND sed "/^# /d" "${outfile}" >"${outfile}.tmp" && mv "${outfile}.tmp" "${outfile}"
-           MAIN_DEPENDENCY "${infile}"
-         )
-     endif()
-@@ -67,6 +74,9 @@ MACRO(PYSIDE_WRAP_UI outfiles)
- ENDMACRO (PYSIDE_WRAP_UI)
- 
- MACRO(PYSIDE_WRAP_RC outfiles)
-+  if (NOT PYSIDE2RCCBINARY)
-+    message(FATAL_ERROR "Qt rcc is required for generating ${ARGN}")
-+  endif()
-   FOREACH(it ${ARGN})
-     GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
-     GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
-@@ -85,7 +95,7 @@ MACRO(PYSIDE_WRAP_RC outfiles)
-         # we follow the tool command with in-place sed.
-         ADD_CUSTOM_COMMAND(OUTPUT "${outfile}"
-           COMMAND "${PYSIDE2RCCBINARY}" ${RCCOPTIONS} "${infile}" ${PY_ATTRIBUTE} -o "${outfile}"
--          COMMAND sed -i "/^# /d" "${outfile}"
-+          COMMAND sed "/^# /d" "${outfile}" >"${outfile}.tmp" && mv "${outfile}.tmp" "${outfile}"
-           MAIN_DEPENDENCY "${infile}"
-         )
-     endif()
-@@ -93,20 +103,17 @@ MACRO(PYSIDE_WRAP_RC outfiles)
-   ENDFOREACH(it)
- ENDMACRO (PYSIDE_WRAP_RC)
- 
--IF(EXISTS ${PYSIDE2UICBINARY} AND EXISTS ${PYSIDE2RCCBINARY})
--   set(PYSIDE2_TOOLS_FOUND TRUE)
--ENDIF(EXISTS ${PYSIDE2UICBINARY} AND EXISTS ${PYSIDE2RCCBINARY})
--
- if(PYSIDE2RCCBINARY AND PYSIDE2UICBINARY)
-+  set(PYSIDE2_TOOLS_FOUND TRUE)
-+  if (NOT PySide2Tools_FIND_QUIETLY)
-+    message(STATUS "Found PySide2 tools: ${PYSIDE2UICBINARY}, ${PYSIDE2RCCBINARY}")
-+  endif (NOT PySide2Tools_FIND_QUIETLY)
-+else(PYSIDE2RCCBINARY AND PYSIDE2UICBINARY)
-+  if(PySide2Tools_FIND_REQUIRED)
-+    message(FATAL_ERROR "PySide2 tools could not be found, but are required.")
-+  else(PySide2Tools_FIND_REQUIRED)
-     if (NOT PySide2Tools_FIND_QUIETLY)
--        message(STATUS "Found PySide2 tools: ${PYSIDE2UICBINARY}, ${PYSIDE2RCCBINARY}")
-+      message(STATUS "PySide2 tools: not found.")
-     endif (NOT PySide2Tools_FIND_QUIETLY)
--else(PYSIDE2RCCBINARY AND PYSIDE2UICBINARY)
--    if(PySide2Tools_FIND_REQUIRED)
--        message(FATAL_ERROR "PySide2 tools could not be found, but are required.")
--    else(PySide2Tools_FIND_REQUIRED)
--        if (NOT PySide2Tools_FIND_QUIETLY)
--                message(STATUS "PySide2 tools: not found.")
--        endif (NOT PySide2Tools_FIND_QUIETLY)
--    endif(PySide2Tools_FIND_REQUIRED)
-+  endif(PySide2Tools_FIND_REQUIRED)
- endif(PYSIDE2RCCBINARY AND PYSIDE2UICBINARY)
--- 
-2.35.1
-

diff --git a/media-gfx/freecad/freecad-0.19.4-r1.ebuild b/media-gfx/freecad/freecad-0.19.4-r1.ebuild
deleted file mode 100644
index c11fb328db6d..000000000000
--- a/media-gfx/freecad/freecad-0.19.4-r1.ebuild
+++ /dev/null
@@ -1,325 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit check-reqs cmake optfeature python-single-r1 xdg
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="https://www.freecad.org/ https://github.com/FreeCAD/FreeCAD"
-
-MY_PN=FreeCAD
-
-if [[ ${PV} = *9999 ]]; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
-	S="${WORKDIR}/freecad-${PV}"
-else
-	MY_PV=$(ver_cut 1-2)
-	MY_PV=$(ver_rs 1 '_' ${MY_PV})
-	SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
-		https://raw.githubusercontent.com/waebbl/waebbl-gentoo/master/patches/${PN}-0.19.2-0005-Make-smesh-compile-with-vtk9.patch.xz"
-	KEYWORDS="amd64"
-	S="${WORKDIR}/FreeCAD-${PV}"
-fi
-
-# code is licensed LGPL-2
-# examples are licensed CC-BY-SA (without note of specific version)
-LICENSE="LGPL-2 CC-BY-SA-4.0"
-SLOT="0"
-IUSE="debug headless pcl test"
-RESTRICT="!test? ( test )"
-
-FREECAD_EXPERIMENTAL_MODULES="cloud plot ship"
-FREECAD_STABLE_MODULES="addonmgr drawing fem idf image inspection
-	material openscad part-design path points raytracing robot show
-	surface	techdraw tux"
-
-for module in ${FREECAD_STABLE_MODULES}; do
-	IUSE="${IUSE} +${module}"
-done
-for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
-	IUSE="${IUSE} ${module}"
-done
-unset module
-
-RDEPEND="
-	${PYTHON_DEPS}
-	dev-libs/OpenNI2[opengl(+)]
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c[icu]
-	dev-qt/designer:5
-	dev-qt/qtconcurrent:5
-	dev-qt/qtcore:5
-	dev-qt/qtgui:5
-	dev-qt/qtnetwork:5
-	dev-qt/qtopengl:5
-	dev-qt/qtprintsupport:5
-	dev-qt/qtsvg:5
-	dev-qt/qtwebengine:5[widgets]
-	dev-qt/qtwidgets:5
-	dev-qt/qtx11extras:5
-	dev-qt/qtxml:5
-	>=media-libs/coin-4.0.0
-	media-libs/freetype
-	media-libs/qhull:=
-	sci-libs/flann[openmp]
-	sci-libs/hdf5:=[fortran,zlib]
-	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
-	<sci-libs/opencascade-7.6.0:=[vtk(+)]
-	sci-libs/orocos_kdl:=
-	sys-libs/zlib
-	virtual/glu
-	virtual/libusb:1
-	virtual/opengl
-	cloud? (
-		dev-libs/openssl:=
-		net-misc/curl
-	)
-	fem? ( sci-libs/vtk:=[boost(+),python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
-	openscad? ( media-gfx/openscad )
-	pcl? ( >=sci-libs/pcl-1.8.1:=[opengl,openni2(+),qt5(+),vtk(+)] )
-	$(python_gen_cond_dep '
-		dev-libs/boost:=[python,${PYTHON_USEDEP}]
-		dev-python/matplotlib[${PYTHON_USEDEP}]
-		dev-python/numpy[${PYTHON_USEDEP}]
-		>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
-		dev-python/pybind11[${PYTHON_USEDEP}]
-		dev-python/pyside2[gui,svg,${PYTHON_USEDEP}]
-		dev-python/shiboken2[${PYTHON_USEDEP}]
-		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
-		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
-	')
-"
-DEPEND="
-	${RDEPEND}
-	>=dev-cpp/eigen-3.3.1:3
-"
-BDEPEND="
-	app-text/dos2unix
-	dev-lang/swig
-"
-
-# To get required dependencies:
-# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
-# We set the following requirements by default:
-# arch, draft, drawing, import, mesh, part, qt5, sketcher, spreadsheet, start, web.
-#
-# Additionally, we auto-enable mesh_part, flat_mesh and smesh
-# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
-# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
-# reflected by the REQUIRES_MODS macro, but at
-# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
-#
-# The increase in auto-enabled workbenches is due to their need in parts of the
-# test suite when compiled with a minimal set of USE flags.
-REQUIRED_USE="
-	${PYTHON_REQUIRED_USE}
-	inspection? ( points )
-	path? ( robot )
-	ship? ( image plot )
-	techdraw? ( drawing )
-"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-Gentoo-specific-don-t-check-vcs.patch
-	"${FILESDIR}"/${P}-backport-correctly-find-PySide2Tools.patch
-	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
-	"${WORKDIR}"/${PN}-0.19.2-0005-Make-smesh-compile-with-vtk9.patch
-	"${FILESDIR}"/${PN}-0.19.2-0006-add-boost-serialization-to-find_package.patch
-)
-
-DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
-
-CHECKREQS_DISK_BUILD="2G"
-
-pkg_setup() {
-	check-reqs_pkg_setup
-	python-single-r1_pkg_setup
-	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, please run eselect opencascade"
-}
-
-src_prepare() {
-	# the upstream provided file doesn't find the coin doc tag file,
-	# but cmake ships a working one, so we use this.
-	rm "${S}/cMake/FindCoin3D.cmake" || die
-
-	# Fix desktop file
-	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
-
-	find "${S}" -type f -exec dos2unix -q {} \; || die "failed to convert to unix line endings"
-
-	cmake_src_prepare
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_ADDONMGR=$(usex addonmgr)
-		-DBUILD_ARCH=ON
-		-DBUILD_ASSEMBLY=OFF					# deprecated
-		-DBUILD_CLOUD=$(usex cloud)
-		-DBUILD_COMPLETE=OFF					# deprecated
-		-DBUILD_DRAFT=ON
-		-DBUILD_DRAWING=$(usex drawing)
-		-DBUILD_ENABLE_CXX_STD:STRING="C++17"	# needed for >=boost-1.77.0
-		-DBUILD_FEM=$(usex fem)
-		-DBUILD_FEM_NETGEN=OFF
-		-DBUILD_FLAT_MESH=ON
-		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
-		-DBUILD_FREETYPE=ON						# automagic dep
-		-DBUILD_GUI=$(usex !headless)
-		-DBUILD_IDF=$(usex idf)
-		-DBUILD_IMAGE=$(usex image)
-		-DBUILD_IMPORT=ON						# import module for various file formats
-		-DBUILD_INSPECTION=$(usex inspection)
-		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
-		-DBUILD_MATERIAL=$(usex material)
-		-DBUILD_MESH=ON
-		-DBUILD_MESH_PART=ON
-		-DBUILD_OPENSCAD=$(usex openscad)
-		-DBUILD_PART=ON
-		-DBUILD_PART_DESIGN=$(usex part-design)
-		-DBUILD_PATH=$(usex path)
-		-DBUILD_PLOT=$(usex plot)				# conflicts with possible external workbench
-		-DBUILD_POINTS=$(usex points)
-		-DBUILD_QT5=ON							# OFF means to use Qt4
-		-DBUILD_RAYTRACING=$(usex raytracing)
-		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
-		-DBUILD_ROBOT=$(usex robot)
-		-DBUILD_SHIP=$(usex ship)				# conflicts with possible external workbench
-		-DBUILD_SHOW=$(usex show)
-		-DBUILD_SKETCHER=ON						# needed by draft workspace
-		-DBUILD_SMESH=ON
-		-DBUILD_SPREADSHEET=ON
-		-DBUILD_START=ON
-		-DBUILD_SURFACE=$(usex surface)
-		-DBUILD_TECHDRAW=$(usex techdraw)
-		-DBUILD_TEST=ON							# always build test workbench for run-time testing
-		-DBUILD_TUX=$(usex tux)
-		-DBUILD_VR=OFF
-		-DBUILD_WEB=ON							# needed by start workspace
-		-DBUILD_WITH_CONDA=OFF
-
-		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
-		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
-		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
-		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
-
-		-DFREECAD_BUILD_DEBIAN=OFF
-
-		-DFREECAD_USE_EXTERNAL_KDL=ON
-		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
-		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
-		-DFREECAD_USE_FREETYPE=ON
-		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
-		-DFREECAD_USE_PCL=$(usex pcl)
-		-DFREECAD_USE_PYBIND11=ON
-		-DFREECAD_USE_QT_FILEDIALOG=ON
-		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
-
-		# install python modules to site-packages' dir. True only for the main package,
-		# sub-packages will still be installed inside /usr/lib64/freecad
-		-DINSTALL_TO_SITEPACKAGES=ON
-
-		# Use the version of shiboken2 that matches the selected python version
-		-DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
-		-DPython3_EXECUTABLE=${PYTHON}
-	)
-
-	if use debug; then
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=ON
-			-DBUILD_TEMPLATE=ON
-		)
-	else
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=OFF
-			-DBUILD_TEMPLATE=OFF
-		)
-	fi
-
-	cmake_src_configure
-}
-
-# We use the FreeCADCmd binary instead of the FreeCAD binary here
-# for two reasons:
-# 1. It works out of the box with USE=headless as well, not needing a guard
-# 2. We don't need virtualx.eclass and it's dependencies
-# The exported environment variables are needed, so freecad does know
-# where to save it's temporary files, and where to look and write it's
-# configuration. Without those, there are sandbox violation, when it
-# tries to create /var/lib/portage/home/.FreeCAD directory.
-src_test() {
-	pushd "${BUILD_DIR}" > /dev/null || die
-	export FREECAD_USER_HOME="${HOME}"
-	export FREECAD_USER_DATA="${T}"
-	export FREECAD_USER_TEMP="${T}"
-	nonfatal ./bin/FreeCADCmd --run-test 0
-	popd > /dev/null || die
-}
-
-src_install() {
-	cmake_src_install
-
-	dobin src/Tools/freecad-thumbnailer
-
-	if ! use headless; then
-		dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
-		mv "${ED}"/usr/$(get_libdir)/${PN}/share/* "${ED}"/usr/share || die "failed to move shared resources"
-	fi
-	dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
-
-	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
-	# compile main package in python site-packages as well
-	python_optimize
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use plot; then
-		einfo "Note: You are enabling the 'plot' USE flag."
-		einfo "This conflicts with the plot workbench that can be loaded"
-		einfo "via the addon manager! You can only install one of those."
-	fi
-
-	if use ship; then
-		einfo "Note: You are enabling the 'ship' USE flag."
-		einfo "This conflicts with the ship workbench that can be loaded"
-		einfo "via the addon manager! You can only install one of those."
-	fi
-
-	einfo "You can load a lot of additional workbenches using the integrated"
-	einfo "AddonManager."
-
-	# ToDo: check opencv, pysolar (::science), elmerfem (::science)
-	#		ifc++, ifcopenshell, netgen, z88 (no pkgs), calculix-ccx (::waebbl)
-	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
-	einfo "support. Some of them are available in Gentoo. Take a look at"
-	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
-	optfeature_header "Computational utilities"
-	optfeature "BLAS library" sci-libs/openblas
-	optfeature "Statistical computation with Python" dev-python/pandas
-	optfeature "Use scientific computation with Python" dev-python/scipy
-	optfeature "Use symbolic math with Python" dev-python/sympy
-	optfeature_header "Imaging, Plotting and Rendering utilities"
-	optfeature "Dependency graphs" media-gfx/graphviz
-	optfeature "PBR Rendering" media-gfx/povray
-	optfeature_header "Import / Export"
-	optfeature "Interact with git repositories" dev-python/GitPython
-	optfeature "Work with COLLADA documents" dev-python/pycollada
-	optfeature "YAML importer and emitter" dev-python/pyyaml
-	optfeature "Importing and exporting 2D AutoCAD DWG files" media-gfx/libredwg
-	optfeature "Importing and exporting geospatial data formats" sci-libs/gdal
-	optfeature "Working with projection data" sci-libs/proj
-	optfeature_header "Meshing and FEM"
-	optfeature "FEM mesh generator" sci-libs/gmsh
-	optfeature "Triangulating meshes" sci-libs/gts
-	optfeature "Visualization" sci-visualization/paraview
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-}

diff --git a/media-gfx/freecad/freecad-0.20-r1.ebuild b/media-gfx/freecad/freecad-0.20-r1.ebuild
deleted file mode 100644
index 855707bb154b..000000000000
--- a/media-gfx/freecad/freecad-0.20-r1.ebuild
+++ /dev/null
@@ -1,309 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit check-reqs cmake optfeature python-single-r1 xdg
-
-DESCRIPTION="QT based Computer Aided Design application"
-HOMEPAGE="https://www.freecad.org/ https://github.com/FreeCAD/FreeCAD"
-
-MY_PN=FreeCAD
-
-if [[ ${PV} = *9999 ]]; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
-	S="${WORKDIR}/freecad-${PV}"
-else
-	SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="~amd64"
-	S="${WORKDIR}/FreeCAD-${PV}"
-fi
-
-# code is licensed LGPL-2
-# examples are licensed CC-BY-SA (without note of specific version)
-LICENSE="LGPL-2 CC-BY-SA-4.0"
-SLOT="0"
-# directory for USE=designer not yet packaged in tarball
-# see https://forum.freecadweb.org/viewtopic.php?f=4&t=69450
-IUSE="debug headless test"
-
-FREECAD_EXPERIMENTAL_MODULES="cloud pcl"
-FREECAD_STABLE_MODULES="addonmgr fem idf image inspection material
-	openscad part-design path points raytracing robot show surface
-	techdraw tux"
-
-for module in ${FREECAD_STABLE_MODULES}; do
-	IUSE="${IUSE} +${module}"
-done
-for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
-	IUSE="${IUSE} ${module}"
-done
-unset module
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	${PYTHON_DEPS}
-	dev-libs/OpenNI2[opengl(+)]
-	dev-libs/libspnav[X]
-	dev-libs/xerces-c[icu]
-	dev-qt/designer:5
-	dev-qt/qtconcurrent:5
-	dev-qt/qtcore:5
-	dev-qt/qtgui:5
-	dev-qt/qtnetwork:5
-	dev-qt/qtopengl:5
-	dev-qt/qtprintsupport:5
-	dev-qt/qtsvg:5
-	dev-qt/qtwebengine:5[widgets]
-	dev-qt/qtwidgets:5
-	dev-qt/qtx11extras:5
-	dev-qt/qtxml:5
-	>=media-libs/coin-4.0.0
-	media-libs/freetype
-	media-libs/qhull:=
-	sci-libs/flann[openmp]
-	sci-libs/hdf5:=[fortran,zlib]
-	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
-	sci-libs/opencascade:=[json,vtk]
-	sci-libs/orocos_kdl:=
-	sys-libs/zlib
-	virtual/glu
-	virtual/libusb:1
-	virtual/opengl
-	cloud? (
-		dev-libs/openssl:=
-		net-misc/curl
-	)
-	fem? ( sci-libs/vtk:=[boost(+),python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
-	openscad? ( media-gfx/openscad )
-	pcl? ( >=sci-libs/pcl-1.8.1:=[opengl,openni2,qt5,vtk] )
-	$(python_gen_cond_dep '
-		dev-libs/boost:=[python,${PYTHON_USEDEP}]
-		dev-python/matplotlib[${PYTHON_USEDEP}]
-		dev-python/numpy[${PYTHON_USEDEP}]
-		>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
-		dev-python/pybind11[${PYTHON_USEDEP}]
-		dev-python/pyside2[gui,svg,webchannel,webengine,${PYTHON_USEDEP}]
-		dev-python/shiboken2[${PYTHON_USEDEP}]
-		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
-		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
-	')
-"
-DEPEND="
-	${RDEPEND}
-	>=dev-cpp/eigen-3.3.1:3
-"
-BDEPEND="
-	app-text/dos2unix
-	dev-lang/swig
-"
-
-# To get required dependencies:
-# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
-# We set the following requirements by default:
-# arch, draft, drawing, import, mesh, part, qt5, sketcher, spreadsheet, start, web.
-#
-# Additionally, we auto-enable mesh_part, flat_mesh and smesh
-# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
-# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
-# reflected by the REQUIRES_MODS macro, but at
-# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
-#
-# The increase in auto-enabled workbenches is due to their need in parts of the
-# test suite when compiled with a minimal set of USE flags.
-REQUIRED_USE="
-	${PYTHON_REQUIRED_USE}
-	inspection? ( points )
-	path? ( robot )
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-0.19.4-Gentoo-specific-don-t-check-vcs.patch
-	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
-)
-
-DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
-
-CHECKREQS_DISK_BUILD="2G"
-
-pkg_setup() {
-	check-reqs_pkg_setup
-	python-single-r1_pkg_setup
-	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, please run eselect opencascade"
-}
-
-src_prepare() {
-	# the upstream provided file doesn't find the coin doc tag file,
-	# but cmake ships a working one, so we use this.
-	rm "${S}/cMake/FindCoin3D.cmake" || die
-
-	# Fix desktop file
-	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
-
-	find "${S}" -type f -exec dos2unix -q {} \; || die "failed to convert to unix line endings"
-
-	cmake_src_prepare
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_ADDONMGR=$(usex addonmgr)
-		-DBUILD_ARCH=ON
-		-DBUILD_ASSEMBLY=OFF					# deprecated
-		-DBUILD_CLOUD=$(usex cloud)
-		-DBUILD_COMPLETE=OFF					# deprecated
-		-DBUILD_DRAFT=ON
-#		-DBUILD_DESIGNER_PLUGIN=$(usex designer)
-		-DBUILD_DRAWING=ON
-		-DBUILD_ENABLE_CXX_STD:STRING="C++17"	# needed for >=boost-1.77.0
-		-DBUILD_FEM=$(usex fem)
-		-DBUILD_FEM_NETGEN=OFF
-		-DBUILD_FLAT_MESH=ON
-		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
-		-DBUILD_FREETYPE=ON						# automagic dep
-		-DBUILD_GUI=$(usex !headless)
-		-DBUILD_IDF=$(usex idf)
-		-DBUILD_IMAGE=$(usex image)
-		-DBUILD_IMPORT=ON						# import module for various file formats
-		-DBUILD_INSPECTION=$(usex inspection)
-		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
-		-DBUILD_MATERIAL=$(usex material)
-		-DBUILD_MESH=ON
-		-DBUILD_MESH_PART=ON
-		-DBUILD_OPENSCAD=$(usex openscad)
-		-DBUILD_PART=ON
-		-DBUILD_PART_DESIGN=$(usex part-design)
-		-DBUILD_PATH=$(usex path)
-		-DBUILD_POINTS=$(usex points)
-		-DBUILD_QT5=ON							# OFF means to use Qt4
-		-DBUILD_RAYTRACING=$(usex raytracing)
-		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
-		-DBUILD_ROBOT=$(usex robot)
-		-DBUILD_SHOW=$(usex show)
-		-DBUILD_SKETCHER=ON						# needed by draft workspace
-		-DBUILD_SMESH=ON
-		-DBUILD_SPREADSHEET=ON
-		-DBUILD_START=ON
-		-DBUILD_SURFACE=$(usex surface)
-		-DBUILD_TECHDRAW=$(usex techdraw)
-		-DBUILD_TEST=ON							# always build test workbench for run-time testing
-		-DBUILD_TUX=$(usex tux)
-		-DBUILD_VR=OFF
-		-DBUILD_WEB=ON							# needed by start workspace
-		-DBUILD_WITH_CONDA=OFF
-
-		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
-		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
-		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
-		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
-
-		-DFREECAD_BUILD_DEBIAN=OFF
-
-		-DFREECAD_USE_EXTERNAL_KDL=ON
-		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
-		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
-		-DFREECAD_USE_FREETYPE=ON
-		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
-		-DFREECAD_USE_PCL=$(usex pcl)
-		-DFREECAD_USE_PYBIND11=ON
-		-DFREECAD_USE_QT_FILEDIALOG=ON
-		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
-
-		# install python modules to site-packages' dir. True only for the main package,
-		# sub-packages will still be installed inside /usr/lib64/freecad
-		-DINSTALL_TO_SITEPACKAGES=ON
-
-		# Use the version of shiboken2 that matches the selected python version
-		-DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
-		-DPython3_EXECUTABLE=${PYTHON}
-	)
-
-	if use debug; then
-		# BUILD_SANDBOX currently broken, see
-		# https://forum.freecadweb.org/viewtopic.php?f=4&t=36071&start=30#p504595
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=OFF
-			-DBUILD_TEMPLATE=ON
-		)
-	else
-		mycmakeargs+=(
-			-DBUILD_SANDBOX=OFF
-			-DBUILD_TEMPLATE=OFF
-		)
-	fi
-
-	cmake_src_configure
-}
-
-# We use the FreeCADCmd binary instead of the FreeCAD binary here
-# for two reasons:
-# 1. It works out of the box with USE=headless as well, not needing a guard
-# 2. We don't need virtualx.eclass and it's dependencies
-# The exported environment variables are needed, so freecad does know
-# where to save it's temporary files, and where to look and write it's
-# configuration. Without those, there are sandbox violation, when it
-# tries to create /var/lib/portage/home/.FreeCAD directory.
-src_test() {
-	pushd "${BUILD_DIR}" > /dev/null || die
-	export FREECAD_USER_HOME="${HOME}"
-	export FREECAD_USER_DATA="${T}"
-	export FREECAD_USER_TEMP="${T}"
-	nonfatal ./bin/FreeCADCmd --run-test 0
-	popd > /dev/null || die
-}
-
-src_install() {
-	cmake_src_install
-
-	dobin src/Tools/freecad-thumbnailer
-
-	if ! use headless; then
-		dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
-		mv "${ED}"/usr/$(get_libdir)/${PN}/share/* "${ED}"/usr/share || die "failed to move shared resources"
-	fi
-	dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
-
-	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
-	# compile main package in python site-packages as well
-	python_optimize
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	einfo "You can load a lot of additional workbenches using the integrated"
-	einfo "AddonManager."
-
-	# ToDo: check opencv, pysolar (::science), elmerfem (::science)
-	#		ifc++, ifcopenshell, netgen, z88 (no pkgs), calculix-ccx (::waebbl)
-	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
-	einfo "support. Some of them are available in Gentoo. Take a look at"
-	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
-	optfeature_header "Computational utilities"
-	optfeature "BLAS library" sci-libs/openblas
-	optfeature "Statistical computation with Python" dev-python/pandas
-	optfeature "Use scientific computation with Python" dev-python/scipy
-	optfeature "Use symbolic math with Python" dev-python/sympy
-	optfeature_header "Imaging, Plotting and Rendering utilities"
-	optfeature "Dependency graphs" media-gfx/graphviz
-	optfeature "PBR Rendering" media-gfx/povray
-	optfeature_header "Import / Export"
-	optfeature "Interact with git repositories" dev-python/GitPython
-	optfeature "Work with COLLADA documents" dev-python/pycollada
-	optfeature "YAML importer and emitter" dev-python/pyyaml
-	optfeature "Importing and exporting 2D AutoCAD DWG files" media-gfx/libredwg
-	optfeature "Importing and exporting geospatial data formats" sci-libs/gdal
-	optfeature "Working with projection data" sci-libs/proj
-	optfeature_header "Meshing and FEM"
-	optfeature "FEM mesh generator" sci-libs/gmsh
-	optfeature "Triangulating meshes" sci-libs/gts
-	optfeature "Visualization" sci-visualization/paraview
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-}

diff --git a/media-gfx/freecad/metadata.xml b/media-gfx/freecad/metadata.xml
index 120ff56fd4a2..d55000ab3501 100644
--- a/media-gfx/freecad/metadata.xml
+++ b/media-gfx/freecad/metadata.xml
@@ -22,14 +22,6 @@
 			Build and install the Qt designer plugin, so the FreeCAD widgets
 			can be used from within designer.
 		</flag>
-		<flag name="drawing">
-			Build the Drawing workbench, a predecessor to the TechDraw workbench.
-			Users are encouraged to learn how to use the TechDraw workbench and
-			switch to it instead.
-
-			This is a compatibility option and will be removed in a later (0.20+)
-			version of the package.
-		</flag>
 		<flag name="fem">
 			Build the FEM module and workbench which provides Finite Element 
 			Analysis (FEA) workflows
@@ -68,10 +60,6 @@
 		<flag name="pcl">
 			Use external <pkg>sci-libs/pcl</pkg> for point clouds support.
 		</flag>
-		<flag name="plot">
-			Build the internal plot workbench. NOTE: This conflicts with the
-			external plot workbench, which you can add via the Addon Manager!
-		</flag>
 		<flag name="points">
 			Build the points module and workbench for working with point clouds
 		</flag>
@@ -81,11 +69,6 @@
 		<flag name="robot">
 			Build the robot module and workbench for studying robot movements
 		</flag>
-		<flag name="ship">
-			Build the ship module and workbench which works over ship entities, 
-			that must be created on top of provided geometry. NOTE: This conflicts
-			with the external ship workbench, which you can add via the Addon Manager!
-		</flag>
 		<flag name="show">
 			Build the show module, a helper module for visibility automation
 		</flag>


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2023-02-23 11:25 Andrew Ammerlaan
  0 siblings, 0 replies; 17+ messages in thread
From: Andrew Ammerlaan @ 2023-02-23 11:25 UTC (permalink / raw
  To: gentoo-commits

commit:     14cf2836cf700e656a01d2d09b8c0aed9095262b
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Tue Feb 14 11:07:12 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Thu Feb 23 11:25:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14cf2836

media-gfx/freecad: enable suport for netgen for 0.20.2

Backports from live ebuild
- add py3.11 support
- better organize dependencies
- fix REQUIRED_USE for the designer plugin

Closes: https://bugs.gentoo.org/895660
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/29583
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 ...FreeCAD-segfaults-being-run-with-paramete.patch |  22 ++
 ...tgen-add-headers-to-support-recent-Netgen.patch |  93 ++++++
 media-gfx/freecad/freecad-0.20.2-r1.ebuild         | 324 +++++++++++++++++++++
 3 files changed, 439 insertions(+)

diff --git a/media-gfx/freecad/files/freecad-0.20.2-Fixes-8206-FreeCAD-segfaults-being-run-with-paramete.patch b/media-gfx/freecad/files/freecad-0.20.2-Fixes-8206-FreeCAD-segfaults-being-run-with-paramete.patch
new file mode 100644
index 000000000000..44d49ca3bf94
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.20.2-Fixes-8206-FreeCAD-segfaults-being-run-with-paramete.patch
@@ -0,0 +1,22 @@
+https://github.com/FreeCAD/FreeCAD/commit/c7a21ecbeecefe7c2dfc9e950b3d6bb42351d476
+
+From c7a21ecbeecefe7c2dfc9e950b3d6bb42351d476 Mon Sep 17 00:00:00 2001
+From: wmayer <wmayer@users.sourceforge.net>
+Date: Sat, 11 Feb 2023 17:47:49 +0100
+Subject: [PATCH 02/51] Fixes #8206: FreeCAD segfaults being run with
+ parameters (e.g .desktop file has /usr/bin/freecad --single-instance)
+
+--- a/src/Base/Interpreter.cpp
++++ b/src/Base/Interpreter.cpp
+@@ -563,7 +563,7 @@ void initInterpreter(int argc,char *argv[])
+ {
+     PyStatus status;
+     PyConfig config;
+-    PyConfig_InitPythonConfig(&config);
++    PyConfig_InitIsolatedConfig(&config);
+ 
+     status = PyConfig_SetBytesArgv(&config, argc, argv);
+     if (PyStatus_Exception(status)) {
+-- 
+2.39.1
+

diff --git a/media-gfx/freecad/files/freecad-0.20.2-Netgen-add-headers-to-support-recent-Netgen.patch b/media-gfx/freecad/files/freecad-0.20.2-Netgen-add-headers-to-support-recent-Netgen.patch
new file mode 100644
index 000000000000..402c84ee4d28
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.20.2-Netgen-add-headers-to-support-recent-Netgen.patch
@@ -0,0 +1,93 @@
+https://github.com/FreeCAD/FreeCAD/commit/8b056f156fd087b3df36a5223fc5ca6900649a83
+
+From 8b056f156fd087b3df36a5223fc5ca6900649a83 Mon Sep 17 00:00:00 2001
+From: Uwe <donovaly@users.noreply.github.com>
+Date: Wed, 17 Aug 2022 12:32:02 +0200
+Subject: [PATCH 0008/1678] [Netgen] add headers to support recent Netgen
+
+- as reported here: https://forum.freecadweb.org/viewtopic.php?p=618174#p618174
+- also fix compiler warnings about unsafe bool handling
+--- a/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp
++++ b/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp
+@@ -50,7 +50,9 @@
+ 
+ #include <utilities.h>
+ 
++#include <BRepBndLib.hxx>
+ #include <BRepBuilderAPI_Copy.hxx>
++#include <BRepMesh_IncrementalMesh.hxx>
+ #include <BRep_Tool.hxx>
+ #include <Bnd_B3d.hxx>
+ #include <NCollection_Map.hxx>
+@@ -66,6 +68,7 @@
+ #include <TopTools_DataMapOfShapeShape.hxx>
+ #include <TopTools_MapOfShape.hxx>
+ #include <TopoDS.hxx>
++#include <TopoDS_Solid.hxx>
+ 
+ #ifdef _MSC_VER
+ #pragma warning(disable : 4067)
+@@ -3027,7 +3030,7 @@ bool NETGENPlugin_Mesher::Compute()
+         }
+       }
+     }
+-    if (!err && mparams.secondorder > 0)
++    if (!err && mparams.secondorder)
+     {
+       try
+       {
+@@ -3302,7 +3305,7 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
+   // calculate total nb of segments and length of edges
+   double fullLen = 0.0;
+   int fullNbSeg = 0;
+-  int entity = mparams.secondorder > 0 ? SMDSEntity_Quad_Edge : SMDSEntity_Edge;
++  int entity = mparams.secondorder ? SMDSEntity_Quad_Edge : SMDSEntity_Edge;
+   TopTools_DataMapOfShapeInteger Edge2NbSeg;
+   for (TopExp_Explorer exp(_shape, TopAbs_EDGE); exp.More(); exp.Next())
+   {
+@@ -3340,7 +3343,7 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
+   {
+     vector<int>& aVec = aResMap[_mesh->GetSubMesh(Edge2NbSegIt.Key())];
+     if ( aVec[ entity ] > 1 && aVec[ SMDSEntity_Node ] == 0 )
+-      aVec[SMDSEntity_Node] = mparams.secondorder > 0  ? 2*aVec[ entity ]-1 : aVec[ entity ]-1;
++      aVec[SMDSEntity_Node] = mparams.secondorder ? 2*aVec[ entity ]-1 : aVec[ entity ]-1;
+ 
+     fullNbSeg += aVec[ entity ];
+     Edge2NbSeg( Edge2NbSegIt.Key() ) = aVec[ entity ];
+@@ -3386,7 +3389,7 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
+     int nbNodes = tooManyElems ? hugeNb : (( nbFaces*3 - (nb1d-1)*2 ) / 6 + 1 );
+ 
+     vector<int> aVec(SMDSEntity_Last, 0);
+-    if( mparams.secondorder > 0 ) {
++    if (mparams.secondorder) {
+       int nb1d_in = (nbFaces*3 - nb1d) / 2;
+       aVec[SMDSEntity_Node] = nbNodes + nb1d_in;
+       aVec[SMDSEntity_Quad_Triangle] = nbFaces;
+@@ -3428,11 +3431,11 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
+     if ( tooManyElems ) // avoid FPE
+     {
+       aVec[SMDSEntity_Node] = hugeNb;
+-      aVec[ mparams.secondorder > 0 ? SMDSEntity_Quad_Tetra : SMDSEntity_Tetra] = hugeNb;
++      aVec[ mparams.secondorder ? SMDSEntity_Quad_Tetra : SMDSEntity_Tetra] = hugeNb;
+     }
+     else
+     {
+-      if( mparams.secondorder > 0 ) {
++      if (mparams.secondorder) {
+         aVec[SMDSEntity_Node] = nb1d_in/3 + 1 + nb1d_in;
+         aVec[SMDSEntity_Quad_Tetra] = nbVols;
+       }
+--- a/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.cpp
++++ b/src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.cpp
+@@ -39,6 +39,8 @@
+ #include <StdMeshers_MaxElementArea.hxx>
+ #include <StdMeshers_QuadranglePreference.hxx>
+ #include <StdMeshers_ViscousLayers2D.hxx>
++#include <TopExp.hxx>
++#include <TopExp_Explorer.hxx>
+ 
+ #include <Precision.hxx>
+ #include <Standard_ErrorHandler.hxx>
+-- 
+2.39.1
+

diff --git a/media-gfx/freecad/freecad-0.20.2-r1.ebuild b/media-gfx/freecad/freecad-0.20.2-r1.ebuild
new file mode 100644
index 000000000000..4099ed239e45
--- /dev/null
+++ b/media-gfx/freecad/freecad-0.20.2-r1.ebuild
@@ -0,0 +1,324 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit check-reqs cmake optfeature python-single-r1 xdg
+
+DESCRIPTION="QT based Computer Aided Design application"
+HOMEPAGE="https://www.freecad.org/ https://github.com/FreeCAD/FreeCAD"
+
+MY_PN=FreeCAD
+
+if [[ ${PV} = *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
+	S="${WORKDIR}/freecad-${PV}"
+else
+	SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64"
+	S="${WORKDIR}/FreeCAD-${PV}"
+fi
+
+# code is licensed LGPL-2
+# examples are licensed CC-BY-SA (without note of specific version)
+LICENSE="LGPL-2 CC-BY-SA-4.0"
+SLOT="0"
+IUSE="debug designer +gui test"
+
+FREECAD_EXPERIMENTAL_MODULES="cloud netgen pcl"
+FREECAD_STABLE_MODULES="addonmgr fem idf image inspection material
+	openscad part-design path points raytracing robot show surface
+	techdraw tux"
+
+for module in ${FREECAD_STABLE_MODULES}; do
+	IUSE="${IUSE} +${module}"
+done
+for module in ${FREECAD_EXPERIMENTAL_MODULES}; do
+	IUSE="${IUSE} ${module}"
+done
+unset module
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	${PYTHON_DEPS}
+	dev-libs/OpenNI2[opengl(+)]
+	dev-libs/boost:=
+	dev-libs/libspnav[X]
+	dev-libs/xerces-c[icu]
+	dev-qt/qtconcurrent:5
+	dev-qt/qtcore:5
+	dev-qt/qtnetwork:5
+	dev-qt/qtxml:5
+	dev-qt/qtxmlpatterns:5
+	media-libs/freetype
+	media-libs/qhull:=
+	sci-libs/flann[openmp]
+	sci-libs/hdf5:=[fortran,zlib]
+	>=sci-libs/med-4.0.0-r1
+	<sci-libs/opencascade-7.7.0:=[json,vtk]
+	sci-libs/orocos_kdl:=
+	sys-libs/zlib
+	virtual/libusb:1
+	cloud? (
+		dev-libs/openssl:=
+		net-misc/curl
+	)
+	fem? ( sci-libs/vtk:=[qt5,rendering] )
+	gui? (
+		dev-qt/designer:5
+		dev-qt/qtgui:5
+		dev-qt/qtopengl:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtsvg:5
+		dev-qt/qtwebengine:5[widgets]
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		>=media-libs/coin-4.0.0
+		virtual/glu
+		virtual/opengl
+		$(python_gen_cond_dep '
+			dev-python/matplotlib[${PYTHON_USEDEP}]
+			>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
+			dev-python/pyside2[gui,svg,webchannel,webengine,${PYTHON_USEDEP}]
+			dev-python/shiboken2[${PYTHON_USEDEP}]
+		')
+	)
+	netgen? ( media-gfx/netgen[opencascade] )
+	openscad? ( media-gfx/openscad )
+	pcl? ( sci-libs/pcl:=[opengl,openni2,qt5,vtk] )
+	$(python_gen_cond_dep '
+		dev-python/numpy[${PYTHON_USEDEP}]
+		dev-python/pybind11[${PYTHON_USEDEP}]
+		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
+		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
+	')
+"
+DEPEND="
+	${RDEPEND}
+	>=dev-cpp/eigen-3.3.1:3
+	test? (
+		$(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
+		dev-qt/qttest:5
+	)
+"
+BDEPEND="
+	app-text/dos2unix
+	dev-lang/swig
+	test? (
+		$(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
+		dev-qt/qttest:5
+	)
+"
+
+# To get required dependencies:
+# 'grep REQUIRES_MODS cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake'
+# We set the following requirements by default:
+# arch, draft, drawing, import, mesh, part, qt5, sketcher, spreadsheet, start, web.
+#
+# Additionally, we auto-enable mesh_part, flat_mesh and smesh
+# Fem actually needs smesh, but as long as we don't have a smesh package, we enable
+# smesh through the mesh USE flag. Note however, the fem<-smesh dependency isn't
+# reflected by the REQUIRES_MODS macro, but at
+# cMake/FreeCAD_Helpers/InitializeFreeCADBuildOptions.cmake:187.
+#
+# The increase in auto-enabled workbenches is due to their need in parts of the
+# test suite when compiled with a minimal set of USE flags.
+REQUIRED_USE="
+	${PYTHON_REQUIRED_USE}
+	designer? ( gui )
+	inspection? ( points )
+	path? ( robot )
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-0.19.4-Gentoo-specific-don-t-check-vcs.patch
+	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
+	"${FILESDIR}"/${PN}-0.20.2-Netgen-add-headers-to-support-recent-Netgen.patch
+	"${FILESDIR}"/${PN}-0.20.2-Fixes-8206-FreeCAD-segfaults-being-run-with-paramete.patch
+)
+
+DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
+
+CHECKREQS_DISK_BUILD="2G"
+
+pkg_setup() {
+	check-reqs_pkg_setup
+	python-single-r1_pkg_setup
+	[[ -z ${CASROOT} ]] && die "\${CASROOT} not set, please run eselect opencascade"
+}
+
+src_prepare() {
+	# Fix desktop file
+	sed -e 's/Exec=FreeCAD/Exec=freecad/' -i src/XDGData/org.freecadweb.FreeCAD.desktop || die
+
+	find "${S}" -type f -exec dos2unix -q {} \; || die "failed to convert to unix line endings"
+
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_ADDONMGR=$(usex addonmgr)
+		-DBUILD_ARCH=ON
+		-DBUILD_ASSEMBLY=OFF					# deprecated
+		-DBUILD_CLOUD=$(usex cloud)
+		-DBUILD_COMPLETE=OFF					# deprecated
+		-DBUILD_DRAFT=ON
+		-DBUILD_DESIGNER_PLUGIN=$(usex designer)
+		-DBUILD_DRAWING=ON
+		-DBUILD_ENABLE_CXX_STD:STRING="C++17"	# needed for >=boost-1.77.0
+		-DBUILD_FEM=$(usex fem)
+		-DBUILD_FEM_NETGEN=$(usex netgen)
+		-DBUILD_FLAT_MESH=ON
+		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
+		-DBUILD_FREETYPE=ON						# automagic dep
+		-DBUILD_GUI=$(usex gui)
+		-DBUILD_IDF=$(usex idf)
+		-DBUILD_IMAGE=$(usex image)
+		-DBUILD_IMPORT=ON						# import module for various file formats
+		-DBUILD_INSPECTION=$(usex inspection)
+		-DBUILD_JTREADER=OFF					# code has been removed upstream, but option is still there
+		-DBUILD_MATERIAL=$(usex material)
+		-DBUILD_MESH=ON
+		-DBUILD_MESH_PART=ON
+		-DBUILD_OPENSCAD=$(usex openscad)
+		-DBUILD_PART=ON
+		-DBUILD_PART_DESIGN=$(usex part-design)
+		-DBUILD_PATH=$(usex path)
+		-DBUILD_POINTS=$(usex points)
+		-DBUILD_QT5=ON							# OFF means to use Qt4
+		-DBUILD_RAYTRACING=$(usex raytracing)
+		-DBUILD_REVERSEENGINEERING=OFF			# currently only an empty sandbox
+		-DBUILD_ROBOT=$(usex robot)
+		-DBUILD_SHOW=$(usex show)
+		-DBUILD_SKETCHER=ON						# needed by draft workspace
+		-DBUILD_SMESH=ON
+		-DBUILD_SPREADSHEET=ON
+		-DBUILD_START=ON
+		-DBUILD_SURFACE=$(usex surface)
+		-DBUILD_TECHDRAW=$(usex techdraw)
+		-DBUILD_TEST=ON							# always build test workbench for run-time testing
+		-DBUILD_TUX=$(usex tux)
+		-DBUILD_VR=OFF
+		-DBUILD_WEB=ON							# needed by start workspace
+		-DBUILD_WITH_CONDA=OFF
+
+		-DCMAKE_INSTALL_DATADIR=/usr/share/${PN}/data
+		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
+		-DCMAKE_INSTALL_INCLUDEDIR=/usr/include/${PN}
+		-DCMAKE_INSTALL_PREFIX=/usr/$(get_libdir)/${PN}
+
+		-DFREECAD_BUILD_DEBIAN=OFF
+
+		-DFREECAD_QT_VERSION="5"
+
+		-DFREECAD_USE_EXTERNAL_KDL=ON
+		-DFREECAD_USE_EXTERNAL_SMESH=OFF		# no package in Gentoo
+		-DFREECAD_USE_EXTERNAL_ZIPIOS=OFF		# doesn't work yet, also no package in Gentoo tree
+		-DFREECAD_USE_FREETYPE=ON
+		-DFREECAD_USE_OCC_VARIANT:STRING="Official Version"
+		-DFREECAD_USE_PCL=$(usex pcl)
+		-DFREECAD_USE_PYBIND11=ON
+		-DFREECAD_USE_QT_FILEDIALOG=ON
+		-DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine"
+
+		# install python modules to site-packages' dir. True only for the main package,
+		# sub-packages will still be installed inside /usr/lib64/freecad
+		-DINSTALL_TO_SITEPACKAGES=ON
+
+		# Use the version of shiboken2 that matches the selected python version
+		-DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+		-DPython3_EXECUTABLE=${PYTHON}
+	)
+
+	if use debug; then
+		# BUILD_SANDBOX currently broken, see
+		# https://forum.freecadweb.org/viewtopic.php?f=4&t=36071&start=30#p504595
+		mycmakeargs+=(
+			-DBUILD_SANDBOX=OFF
+			-DBUILD_TEMPLATE=ON
+		)
+	else
+		mycmakeargs+=(
+			-DBUILD_SANDBOX=OFF
+			-DBUILD_TEMPLATE=OFF
+		)
+	fi
+
+	cmake_src_configure
+}
+
+# We use the FreeCADCmd binary instead of the FreeCAD binary here
+# for two reasons:
+# 1. It works out of the box with USE=-gui as well, not needing a guard
+# 2. We don't need virtualx.eclass and it's dependencies
+# The exported environment variables are needed, so freecad does know
+# where to save it's temporary files, and where to look and write it's
+# configuration. Without those, there are sandbox violation, when it
+# tries to create /var/lib/portage/home/.FreeCAD directory.
+src_test() {
+	pushd "${BUILD_DIR}" > /dev/null || die
+	export FREECAD_USER_HOME="${HOME}"
+	export FREECAD_USER_DATA="${T}"
+	export FREECAD_USER_TEMP="${T}"
+	nonfatal ./bin/FreeCADCmd --run-test 0
+	popd > /dev/null || die
+}
+
+src_install() {
+	cmake_src_install
+
+	dobin src/Tools/freecad-thumbnailer
+
+	if use gui; then
+		dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad
+		mv "${ED}"/usr/$(get_libdir)/${PN}/share/* "${ED}"/usr/share || die "failed to move shared resources"
+	fi
+	dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
+
+	rm -r "${ED}"/usr/$(get_libdir)/${PN}/include/E57Format || die "failed to drop unneeded include directory E57Format"
+
+	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
+	# compile main package in python site-packages as well
+	python_optimize
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	einfo "You can load a lot of additional workbenches using the integrated"
+	einfo "AddonManager."
+
+	# ToDo: check opencv, pysolar (::science), elmerfem (::science)
+	#		ifc++, ifcopenshell, z88 (no pkgs), calculix-ccx (::waebbl)
+	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
+	einfo "support. Some of them are available in Gentoo. Take a look at"
+	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"
+	optfeature_header "Computational utilities"
+	optfeature "BLAS library" sci-libs/openblas
+	optfeature "Statistical computation with Python" dev-python/pandas
+	optfeature "Use scientific computation with Python" dev-python/scipy
+	optfeature "Use symbolic math with Python" dev-python/sympy
+	optfeature_header "Imaging, Plotting and Rendering utilities"
+	optfeature "Dependency graphs" media-gfx/graphviz
+	optfeature "PBR Rendering" media-gfx/povray
+	optfeature_header "Import / Export"
+	optfeature "Interact with git repositories" dev-python/GitPython
+	optfeature "Work with COLLADA documents" dev-python/pycollada
+	optfeature "YAML importer and emitter" dev-python/pyyaml
+	optfeature "Importing and exporting 2D AutoCAD DWG files" media-gfx/libredwg
+	optfeature "Importing and exporting geospatial data formats" sci-libs/gdal
+	optfeature "Working with projection data" sci-libs/proj
+	optfeature_header "Meshing and FEM"
+	optfeature "FEM mesh generator" sci-libs/gmsh
+	optfeature "Triangulating meshes" sci-libs/gts
+	optfeature "Visualization" sci-visualization/paraview
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+}


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2023-02-23 11:25 Andrew Ammerlaan
  0 siblings, 0 replies; 17+ messages in thread
From: Andrew Ammerlaan @ 2023-02-23 11:25 UTC (permalink / raw
  To: gentoo-commits

commit:     2a75bd98a3a22b79d764207b0ce16195662ece4b
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Mon Feb 13 20:20:00 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Thu Feb 23 11:25:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a75bd98

media-gfx/freecad: enable netgen support in live ebuild

- add py3.11 support
- better organize dependencies, add new libfmt dep
- fix REQUIRED_USE for designer plugin

Bug: https://bugs.gentoo.org/895660
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 ...s-src-Qt-only-build-test-for-BUILD_GUI-ON.patch | 24 ++++++++
 media-gfx/freecad/freecad-9999.ebuild              | 70 ++++++++++++++--------
 media-gfx/freecad/metadata.xml                     |  3 +
 3 files changed, 72 insertions(+), 25 deletions(-)

diff --git a/media-gfx/freecad/files/freecad-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch b/media-gfx/freecad/files/freecad-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch
new file mode 100644
index 000000000000..5455c0ee2992
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch
@@ -0,0 +1,24 @@
+From cb77c7d937c259224699273fee1ba5907588fa4c Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Sun, 12 Feb 2023 19:54:13 +0100
+Subject: [PATCH] tests/src/Qt: only build test for BUILD_GUI=ON
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+--- a/tests/src/Qt/CMakeLists.txt
++++ b/tests/src/Qt/CMakeLists.txt
+@@ -30,6 +30,7 @@ endfunction()
+ set(CMAKE_AUTOMOC ON)
+ 
+ # Qt Test
++if(BUILD_GUI)
+ include_directories(
+     ${QtGui_INCLUDE_DIRS}
+     ${QtTest_INCLUDE_DIRS}
+@@ -46,3 +47,4 @@ set (InventorBuilder_LIBS
+ SETUP_TESTS(
+     InventorBuilder
+ )
++endif()
+-- 
+2.39.1
+

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index ba5840c6b720..a006497fe1bd 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{9..10} )
+PYTHON_COMPAT=( python3_{9..11} )
 
 inherit check-reqs cmake optfeature python-single-r1 xdg
 
@@ -28,7 +28,7 @@ LICENSE="LGPL-2 CC-BY-SA-4.0"
 SLOT="0"
 IUSE="debug designer +gui test"
 
-FREECAD_EXPERIMENTAL_MODULES="cloud pcl"
+FREECAD_EXPERIMENTAL_MODULES="cloud netgen pcl"
 FREECAD_STABLE_MODULES="addonmgr fem idf image inspection material
 	openscad part-design path points raytracing robot show surface
 	techdraw tux"
@@ -46,47 +46,54 @@ RESTRICT="!test? ( test )"
 RDEPEND="
 	${PYTHON_DEPS}
 	dev-libs/OpenNI2[opengl(+)]
+	dev-libs/boost:=
+	dev-libs/libfmt:=
 	dev-libs/libspnav[X]
 	dev-libs/xerces-c[icu]
-	dev-qt/designer:5
 	dev-qt/qtconcurrent:5
 	dev-qt/qtcore:5
-	dev-qt/qtgui:5
 	dev-qt/qtnetwork:5
-	dev-qt/qtopengl:5
-	dev-qt/qtprintsupport:5
-	dev-qt/qtsvg:5
-	dev-qt/qtwebengine:5[widgets]
-	dev-qt/qtwidgets:5
-	dev-qt/qtx11extras:5
 	dev-qt/qtxml:5
-	>=media-libs/coin-4.0.0
+	dev-qt/qtxmlpatterns:5
 	media-libs/freetype
 	media-libs/qhull:=
 	sci-libs/flann[openmp]
 	sci-libs/hdf5:=[fortran,zlib]
-	>=sci-libs/med-4.0.0-r1[python,${PYTHON_SINGLE_USEDEP}]
-	sci-libs/opencascade:=[json,vtk(+)]
+	>=sci-libs/med-4.0.0-r1
+	sci-libs/opencascade:=[json,vtk]
 	sci-libs/orocos_kdl:=
 	sys-libs/zlib
-	virtual/glu
 	virtual/libusb:1
-	virtual/opengl
 	cloud? (
 		dev-libs/openssl:=
 		net-misc/curl
 	)
-	fem? ( sci-libs/vtk:=[boost(+),python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] )
+	fem? ( sci-libs/vtk:=[qt5,rendering] )
+	gui? (
+		dev-qt/designer:5
+		dev-qt/qtgui:5
+		dev-qt/qtopengl:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtsvg:5
+		dev-qt/qtwebengine:5[widgets]
+		dev-qt/qtwidgets:5
+		dev-qt/qtx11extras:5
+		>=media-libs/coin-4.0.0
+		virtual/glu
+		virtual/opengl
+		$(python_gen_cond_dep '
+			dev-python/matplotlib[${PYTHON_USEDEP}]
+			>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
+			dev-python/pyside2[gui,svg,webchannel,webengine,${PYTHON_USEDEP}]
+			dev-python/shiboken2[${PYTHON_USEDEP}]
+		')
+	)
+	netgen? ( media-gfx/netgen[opencascade] )
 	openscad? ( media-gfx/openscad )
-	pcl? ( sci-libs/pcl:=[opengl,openni2(+),qt5(+),vtk(+)] )
+	pcl? ( sci-libs/pcl:=[opengl,openni2,qt5,vtk] )
 	$(python_gen_cond_dep '
-		dev-libs/boost:=[python,${PYTHON_USEDEP}]
-		dev-python/matplotlib[${PYTHON_USEDEP}]
 		dev-python/numpy[${PYTHON_USEDEP}]
-		>=dev-python/pivy-0.6.5[${PYTHON_USEDEP}]
 		dev-python/pybind11[${PYTHON_USEDEP}]
-		dev-python/pyside2[gui,svg,webchannel,webengine,${PYTHON_USEDEP}]
-		dev-python/shiboken2[${PYTHON_USEDEP}]
 		addonmgr? ( dev-python/GitPython[${PYTHON_USEDEP}] )
 		fem? ( dev-python/ply[${PYTHON_USEDEP}] )
 	')
@@ -94,10 +101,18 @@ RDEPEND="
 DEPEND="
 	${RDEPEND}
 	>=dev-cpp/eigen-3.3.1:3
+	test? (
+		$(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
+		dev-qt/qttest:5
+	)
 "
 BDEPEND="
 	app-text/dos2unix
 	dev-lang/swig
+	test? (
+		$(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
+		dev-qt/qttest:5
+	)
 "
 
 # To get required dependencies:
@@ -115,6 +130,7 @@ BDEPEND="
 # test suite when compiled with a minimal set of USE flags.
 REQUIRED_USE="
 	${PYTHON_REQUIRED_USE}
+	designer? ( gui )
 	inspection? ( points )
 	path? ( robot )
 "
@@ -122,9 +138,10 @@ REQUIRED_USE="
 PATCHES=(
 	"${FILESDIR}"/${PN}-0.19.4-Gentoo-specific-don-t-check-vcs.patch
 	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
+	"${FILESDIR}"/${PN}-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch
 )
 
-DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )
+DOCS=( CODE_OF_CONDUCT.md README.md )
 
 CHECKREQS_DISK_BUILD="2G"
 
@@ -155,7 +172,7 @@ src_configure() {
 		-DBUILD_DRAWING=ON
 		-DBUILD_ENABLE_CXX_STD:STRING="C++17"	# needed for current git master
 		-DBUILD_FEM=$(usex fem)
-		-DBUILD_FEM_NETGEN=OFF
+		-DBUILD_FEM_NETGEN=$(usex netgen)
 		-DBUILD_FLAT_MESH=ON
 		-DBUILD_FORCE_DIRECTORY=ON				# force building in a dedicated directory
 		-DBUILD_FREETYPE=ON						# automagic dep
@@ -263,6 +280,9 @@ src_install() {
 	fi
 	dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
 
+	rm -r "${ED}"/usr/$(get_libdir)/${PN}/include/E57Format || die "failed to drop unneeded include directory E57Format"
+	use test && rm -r "${ED}"/usr/include/${PN}/{gmock,gtest} || die
+
 	python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage "${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
 	# compile main package in python site-packages as well
 	python_optimize
@@ -275,7 +295,7 @@ pkg_postinst() {
 	einfo "AddonManager."
 
 	# ToDo: check opencv, pysolar (::science), elmerfem (::science)
-	#		ifc++, ifcopenshell, netgen, z88 (no pkgs), calculix-ccx (::waebbl)
+	#		ifc++, ifcopenshell, z88 (no pkgs), calculix-ccx (::waebbl)
 	einfo "There are a lot of additional tools, for which FreeCAD has builtin"
 	einfo "support. Some of them are available in Gentoo. Take a look at"
 	einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD"

diff --git a/media-gfx/freecad/metadata.xml b/media-gfx/freecad/metadata.xml
index 6e0770f45ea8..bc3069a7931c 100644
--- a/media-gfx/freecad/metadata.xml
+++ b/media-gfx/freecad/metadata.xml
@@ -52,6 +52,9 @@
 		<flag name="material">
 			Build the material module and workbench to work with materials
 		</flag>
+		<flag name="netgen">
+			Build support for the netgen mesher through <pkg>media-gfx/netgen</pkg>.
+		</flag>
 		<flag name="openscad">
 			Build the OpenSCAD module for interoperability with OpenSCAD 
 			and repairing Constructive Solid Geometry (CSG) history


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2023-04-25 14:01 Miroslav Šulc
  0 siblings, 0 replies; 17+ messages in thread
From: Miroslav Šulc @ 2023-04-25 14:01 UTC (permalink / raw
  To: gentoo-commits

commit:     5f1ddf94909ca9733f067c26eef71965d5371314
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 25 14:01:24 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Tue Apr 25 14:01:33 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f1ddf94

media-gfx/freecad: updated patch for 9999

Closes: https://bugs.gentoo.org/905004
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 ...-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch |  6 ------
 .../freecad-9999-Gentoo-specific-don-t-check-vcs.patch    | 15 +++++++++++++++
 media-gfx/freecad/freecad-9999.ebuild                     |  2 +-
 3 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch b/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
index c8772febdee8..8e875c1811f5 100644
--- a/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
+++ b/media-gfx/freecad/files/freecad-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
@@ -4,12 +4,6 @@ Date: Fri, 12 Mar 2021 23:55:09 +0100
 Subject: [PATCH] [Gentoo specific] Remove ccache usage
 
 Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
----
- CMakeLists.txt | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 5b17736..38e482a 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
 @@ -8,11 +8,6 @@ if (POLICY CMP0072)

diff --git a/media-gfx/freecad/files/freecad-9999-Gentoo-specific-don-t-check-vcs.patch b/media-gfx/freecad/files/freecad-9999-Gentoo-specific-don-t-check-vcs.patch
new file mode 100644
index 000000000000..3c8b61ab56a4
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-9999-Gentoo-specific-don-t-check-vcs.patch
@@ -0,0 +1,15 @@
+--- a/src/Tools/SubWCRev.py
++++ b/src/Tools/SubWCRev.py
+@@ -509,12 +509,6 @@ def main():
+             bindir = a
+ 
+     vcs = [
+-        GitControl(),
+-        DebianGitHub(),
+-        BazaarControl(),
+-        Subversion(),
+-        MercurialControl(),
+-        DebianChangelog(),
+         UnknownControl(),
+     ]
+     for i in vcs:

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index b9d1e7ae4206..47fbacf3eba4 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -136,7 +136,7 @@ REQUIRED_USE="
 "
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-0.19.4-Gentoo-specific-don-t-check-vcs.patch
+	"${FILESDIR}"/${PN}-9999-Gentoo-specific-don-t-check-vcs.patch
 	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
 	"${FILESDIR}"/${PN}-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch
 )


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2023-05-05  9:04 Sam James
  0 siblings, 0 replies; 17+ messages in thread
From: Sam James @ 2023-05-05  9:04 UTC (permalink / raw
  To: gentoo-commits

commit:     f6aef9a48475f4cb7f3df463687dc9e78a6d2d50
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Fri May  5 08:42:58 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri May  5 09:04:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6aef9a4

media-gfx/freecad: fix build with gcc-13

Closes: https://bugs.gentoo.org/905451
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/30879
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...20.2-libE57Format-fix-compile-using-gcc13.patch | 24 ++++++++++++++++++++++
 media-gfx/freecad/freecad-0.20.2-r1.ebuild         |  1 +
 2 files changed, 25 insertions(+)

diff --git a/media-gfx/freecad/files/freecad-0.20.2-libE57Format-fix-compile-using-gcc13.patch b/media-gfx/freecad/files/freecad-0.20.2-libE57Format-fix-compile-using-gcc13.patch
new file mode 100644
index 000000000000..c26c8db4e867
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.20.2-libE57Format-fix-compile-using-gcc13.patch
@@ -0,0 +1,24 @@
+https://github.com/FreeCAD/FreeCAD/commit/f91ad00ed23e92c81fff2bd0073c662291efad32
+https://bugs.gentoo.org/905451
+
+From f91ad00ed23e92c81fff2bd0073c662291efad32 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= <adrian@suse.de>
+Date: Mon, 27 Mar 2023 11:45:20 +0200
+Subject: [PATCH 011/420] libE57Format: fix compile using gcc13
+
+Adding missing header file. Also submitted this upstream here:
+
+https://github.com/asmaloney/libE57Format/pull/243
+--- a/src/3rdParty/libE57Format/include/E57Format.h
++++ b/src/3rdParty/libE57Format/include/E57Format.h
+@@ -33,6 +33,7 @@
+ 
+ #include <cfloat>
+ #include <memory>
++#include <cstdint>
+ #include <vector>
+ 
+ #include "E57Exception.h"
+-- 
+2.40.1
+

diff --git a/media-gfx/freecad/freecad-0.20.2-r1.ebuild b/media-gfx/freecad/freecad-0.20.2-r1.ebuild
index 4099ed239e45..117cfb16b291 100644
--- a/media-gfx/freecad/freecad-0.20.2-r1.ebuild
+++ b/media-gfx/freecad/freecad-0.20.2-r1.ebuild
@@ -139,6 +139,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
 	"${FILESDIR}"/${PN}-0.20.2-Netgen-add-headers-to-support-recent-Netgen.patch
 	"${FILESDIR}"/${PN}-0.20.2-Fixes-8206-FreeCAD-segfaults-being-run-with-paramete.patch
+	"${FILESDIR}"/${PN}-0.20.2-libE57Format-fix-compile-using-gcc13.patch
 )
 
 DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md )


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2023-08-09  8:34 Miroslav Šulc
  0 siblings, 0 replies; 17+ messages in thread
From: Miroslav Šulc @ 2023-08-09  8:34 UTC (permalink / raw
  To: gentoo-commits

commit:     92bc45e1fa8f2992404520d5b4d06c1d6752c94f
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  9 08:34:19 2023 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Wed Aug  9 08:34:37 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92bc45e1

media-gfx/freecad: updated ccache patch in live ebuild

Closes: https://bugs.gentoo.org/911409
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 ...cad-0.21.0-0001-Gentoo-specific-disable-ccache-usage.patch | 11 +++++++++++
 media-gfx/freecad/freecad-9999.ebuild                         |  2 +-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/media-gfx/freecad/files/freecad-0.21.0-0001-Gentoo-specific-disable-ccache-usage.patch b/media-gfx/freecad/files/freecad-0.21.0-0001-Gentoo-specific-disable-ccache-usage.patch
new file mode 100644
index 000000000000..dddacfb289ef
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.21.0-0001-Gentoo-specific-disable-ccache-usage.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -16,7 +16,7 @@ else()
+     option(FREECAD_USE_CCACHE "Auto detect and use ccache during compilation" ON)
+ endif()
+ 
+-if(FREECAD_USE_CCACHE)
++if(OFF)
+     find_program(CCACHE_PROGRAM ccache)  #This check should occur before project()
+     if(CCACHE_PROGRAM)
+         set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index ce6c3efe2731..3c44e3745979 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -136,7 +136,7 @@ REQUIRED_USE="
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-9999-Gentoo-specific-don-t-check-vcs.patch
-	"${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch
+	"${FILESDIR}"/${PN}-0.21.0-0001-Gentoo-specific-disable-ccache-usage.patch
 	"${FILESDIR}"/${PN}-9999-tests-src-Qt-only-build-test-for-BUILD_GUI-ON.patch
 )
 


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/
@ 2024-05-07 12:52 Andrew Ammerlaan
  0 siblings, 0 replies; 17+ messages in thread
From: Andrew Ammerlaan @ 2024-05-07 12:52 UTC (permalink / raw
  To: gentoo-commits

commit:     9161542718b9840ff37f5c27b22b7c3a8e3fd214
Author:     Yehoshua Pesach Wallach <yehoshuapw <AT> gmail <DOT> com>
AuthorDate: Sun Apr  7 15:51:09 2024 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Tue May  7 12:52:13 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=91615427

media-gfx/freecad: adds upstream patch for compiling with VTK-9.3

Closes: https://bugs.gentoo.org/928879
Signed-off-by: Yehoshua Pesach Wallach <yehoshuapw <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/36153
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 .../freecad/files/freecad-0.21.2-vtk9.3-fix.patch  | 33 ++++++++++++++++++++++
 media-gfx/freecad/freecad-0.21.2-r2.ebuild         |  5 ++--
 media-gfx/freecad/freecad-9999.ebuild              |  4 +--
 3 files changed, 38 insertions(+), 4 deletions(-)

diff --git a/media-gfx/freecad/files/freecad-0.21.2-vtk9.3-fix.patch b/media-gfx/freecad/files/freecad-0.21.2-vtk9.3-fix.patch
new file mode 100644
index 000000000000..b41e3618f55f
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-0.21.2-vtk9.3-fix.patch
@@ -0,0 +1,33 @@
+# fix for compiling with VTK 9.3
+https://github.com/FreeCAD/FreeCAD/pull/11496/commits/68d380a64e033c40fcb9a6dc322d9e0178de52ee
+Bug: https://forum.freecad.org/viewtopic.php?t=82814
+patch by adrianinsaval (commited in 68d380a64e033c40fcb9a6dc322d9e0178de52ee)
+
+--- a/src/3rdParty/salomesmesh/inc/SMESH_SMDS.hxx
++++ b/src/3rdParty/salomesmesh/inc/SMESH_SMDS.hxx
+@@ -39,10 +39,6 @@
+  #define SMDS_EXPORT
+ #endif
+ 
+-#ifdef VTK_HAS_MTIME_TYPE
+ #define VTK_MTIME_TYPE vtkMTimeType
+-#else
+-#define VTK_MTIME_TYPE unsigned long
+-#endif
+ 
+ #endif
+--- a/src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp
++++ b/src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp
+@@ -1026,7 +1026,12 @@ void SMDS_UnstructuredGrid::BuildLinks()
+   GetLinks()->Allocate(this->GetNumberOfPoints());
+   GetLinks()->Register(this);
+ //FIXME: vtk9
++#if VTK_VERSION_NUMBER < VTK_VERSION_CHECK(9,3,0)
+   GetLinks()->BuildLinks(this);
++#else
++  GetLinks()->SetDataSet(this);
++  GetLinks()->BuildLinks();
++#endif
+   GetLinks()->Delete();
+ #else
+   this->links = smds_celllinks::new();

diff --git a/media-gfx/freecad/freecad-0.21.2-r2.ebuild b/media-gfx/freecad/freecad-0.21.2-r2.ebuild
index 9d461dec5d65..b0f1d3fac470 100644
--- a/media-gfx/freecad/freecad-0.21.2-r2.ebuild
+++ b/media-gfx/freecad/freecad-0.21.2-r2.ebuild
@@ -73,8 +73,8 @@ RDEPEND="
 		net-misc/curl
 	)
 	fem? (
-		!qt6? ( <sci-libs/vtk-9.3.0:=[qt5,rendering] )
-		qt6? ( <sci-libs/vtk-9.3.0:=[-qt5,qt6,rendering] )
+		!qt6? ( sci-libs/vtk:=[qt5,rendering] )
+		qt6? ( sci-libs/vtk:=[-qt5,qt6,rendering] )
 	)
 	gui? (
 		>=media-libs/coin-4.0.0
@@ -164,6 +164,7 @@ REQUIRED_USE="
 PATCHES=(
 	"${FILESDIR}"/${PN}-0.21.0-0001-Gentoo-specific-disable-ccache-usage.patch
 	"${FILESDIR}"/${PN}-0.21.1-Gentoo-specific-don-t-check-vcs.patch
+	"${FILESDIR}"/${PN}-0.21.2-vtk9.3-fix.patch
 )
 
 DOCS=( CODE_OF_CONDUCT.md README.md )

diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild
index 76f8dae4592e..ad9a9580164b 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -74,8 +74,8 @@ RDEPEND="
 		net-misc/curl
 	)
 	fem? (
-		!qt6? ( <sci-libs/vtk-9.3.0:=[qt5,rendering] )
-		qt6? ( <sci-libs/vtk-9.3.0:=[-qt5,qt6,rendering] )
+		!qt6? ( sci-libs/vtk:=[qt5,rendering] )
+		qt6? ( sci-libs/vtk:=[-qt5,qt6,rendering] )
 	)
 	gui? (
 		>=media-libs/coin-4.0.0


^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2024-05-07 12:52 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-11  9:02 [gentoo-commits] repo/gentoo:master commit in: media-gfx/freecad/files/, media-gfx/freecad/ Michael Weber
  -- strict thread matches above, loose matches on Subject: below --
2016-03-20 20:53 Michael Weber
2018-03-02 22:08 Andreas Sturmlechner
2021-03-14 11:41 Joonas Niilola
2021-07-10  9:17 Ionen Wolkens
2021-11-28  9:58 Miroslav Šulc
2022-03-19 16:15 Sam James
2022-03-19 16:15 Sam James
2022-04-02 12:58 Andreas Sturmlechner
2022-10-31 15:46 Joonas Niilola
2022-10-31 15:46 Joonas Niilola
2023-02-23 11:25 Andrew Ammerlaan
2023-02-23 11:25 Andrew Ammerlaan
2023-04-25 14:01 Miroslav Šulc
2023-05-05  9:04 Sam James
2023-08-09  8:34 Miroslav Šulc
2024-05-07 12:52 Andrew Ammerlaan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox