[packages/FreeCAD] - up to 1.1.1

baggins baggins at pld-linux.org
Sun Apr 19 13:23:22 CEST 2026


commit 99ca72bc63c86cdb1998f11a678f5996882c947b
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sun Apr 19 15:23:06 2026 +0200

    - up to 1.1.1

 FreeCAD.spec             | 32 +++++++++++++++++++++++++-------
 apphome.patch            | 10 ++++++----
 external-E57Format.patch | 12 ++++++++++++
 3 files changed, 43 insertions(+), 11 deletions(-)
---
diff --git a/FreeCAD.spec b/FreeCAD.spec
index 0922ea7..e241b29 100644
--- a/FreeCAD.spec
+++ b/FreeCAD.spec
@@ -5,14 +5,15 @@
 
 Summary:	A general purpose 3D CAD modeler
 Name:		FreeCAD
-Version:	1.0.2
-Release:	2
+Version:	1.1.1
+Release:	1
 License:	LGPL v2
 Group:		Applications/Engineering
-Source0:	https://github.com/FreeCAD/FreeCAD/releases/download/%{version}/freecad_source.tar.gz
-# Source0-md5:	40f9fbe04f30954b3e9ae12b2ae322c3
+Source0:	https://github.com/FreeCAD/FreeCAD/releases/download/%{version}/freecad_source_%{version}.tar.gz
+# Source0-md5:	c1c548aebc1b65a2f9925b253fea1394
 Patch0:		apphome.patch
-URL:		http://freecadweb.org/
+Patch1:		external-E57Format.patch
+URL:		https://freecad.org/
 # Utilities
 BuildRequires:	boost-python-devel-common
 BuildRequires:	boost-python3-devel
@@ -24,6 +25,7 @@ BuildRequires:	draco-devel
 BuildRequires:	gcc-fortran
 BuildRequires:	gettext
 BuildRequires:	graphviz
+BuildRequires:	libE57Format-devel
 %{?with_system_smesh:BuildRequires:  smesh-devel}
 BuildRequires:	swig
 BuildRequires:	tbb-devel
@@ -66,6 +68,7 @@ BuildRequires:	python3-pivy
 BuildRequires:	python3-pivy-gui
 BuildRequires:	shiboken6
 BuildRequires:	vtk-devel
+BuildRequires:	vtk-python3-devel
 BuildRequires:	xerces-c
 BuildRequires:	xerces-c-devel
 BuildRequires:	xorg-lib-libXmu-devel
@@ -98,9 +101,20 @@ BuildArch:	noarch
 %description data
 Data files for FreeCAD.
 
+%package -n Qt6Designer-plugin-%{name}
+Summary:	FreeCad plugin for Qt Designer
+Group:		X11/Development/Libraries
+Requires:	%{name} = %{version}-%{release}
+Requires:	Qt6Designer >= 6
+
+%description -n Qt6Designer-plugin-%{name}
+FreeCAD plugin for Qt Designer that allows FreeCAD instances to
+be included in GUI designs just like any other Qt widget.
+
 %prep
 %setup -q -c
 %patch -P0 -p1
+%patch -P1 -p1
 
 %build
 #	-DFREECAD_USE_EXTERNAL_PIVY=TRUE \
@@ -120,6 +134,7 @@ cd build
 	-DBUILD_FEM_NETGEN=ON \
 	-DFREECAD_QT_MAJOR_VERSION=6 \
 	-DQT_DEFAULT_MAJOR_VERSION=6 \
+	-DFREECAD_USE_EXTERNAL_E57FORMAT=ON \
 %if %{with system_smesh}
 	-DFREECAD_USE_EXTERNAL_SMESH=ON \
 	-DSMESH_INCLUDE_DIR=%{_includedir}/smesh \
@@ -136,7 +151,6 @@ rm -rf $RPM_BUILD_ROOT
 %py3_ocomp $RPM_BUILD_ROOT{py3_sitescriptdir}
 
 %{__rm} -r $RPM_BUILD_ROOT{%{_includedir},%{_npkgconfigdir}}
-%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/FreeCAD/include
 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/FreeCAD
 
 %post
@@ -164,12 +178,13 @@ rm -rf $RPM_BUILD_ROOT
 %doc build/usr/share/doc/FreeCAD/ThirdPartyLibraries.html
 %attr(755,root,root) %{_bindir}/FreeCAD
 %attr(755,root,root) %{_bindir}/FreeCADCmd
+%attr(755,root,root) %{_bindir}/freecad-thumbnailer
 %{_datadir}/metainfo/*.xml
 %{_desktopdir}/*.desktop
 %{_iconsdir}/hicolor/*x*/apps/org.freecad.FreeCAD.png
 %{_iconsdir}/hicolor/scalable/apps/org.freecad.FreeCAD.svg
 %{_iconsdir}/hicolor/scalable/mimetypes/application-x-extension-fcstd.svg
-%{_pixmapsdir}/freecad.xpm
+%{_pixmapsdir}/freecad.svg
 %{_datadir}/mime/packages/*.xml
 %dir %{_libdir}/%{name}
 %{_libdir}/%{name}/Ext
@@ -183,3 +198,6 @@ rm -rf $RPM_BUILD_ROOT
 %files data
 %defattr(644,root,root,755)
 %{_datadir}/%{name}
+
+%files -n Qt6Designer-plugin-%{name}
+%{_libdir}/qt6/plugins/designer/libFreeCAD_widgets.so
diff --git a/apphome.patch b/apphome.patch
index 7327587..dc96ea0 100644
--- a/apphome.patch
+++ b/apphome.patch
@@ -1,13 +1,15 @@
 --- FreeCAD-1.0.0/src/App/Application.cpp~	2024-11-18 19:38:15.000000000 +0100
 +++ FreeCAD-1.0.0/src/App/Application.cpp	2024-12-28 23:34:27.863331562 +0100
-@@ -2530,7 +2530,11 @@
+@@ -2512,9 +2512,13 @@
  void Application::initConfig(int argc, char ** argv)
  {
      // find the home path....
 +#ifdef APPHOMEPATH
 +    mConfig["AppHomePath"] = APPHOMEPATH;
 +#else
-     mConfig["AppHomePath"] = FindHomePath(argv[0]);
+     mConfig["AppHomePath"] = Base::FileInfo::pathToString(
+         ApplicationDirectories::findHomePath(argv[0])
+     );
 +#endif
  
      // Version of the application extracted from SubWCRef into src/Build/Version.h
@@ -22,6 +24,6 @@
 +	add_definitions(-DAPPHOMEPATH="${APPHOMEPATH}/")
 +ENDIF(APPHOMEPATH)
 +
- #if you want to use the old DAG structure uncomment this line
- #add_definitions(-DUSE_OLD_DAG)
+ # -----------------------------------------------------------------------------
  
+ #write relevant cmake variables to a file for later access with python. Exported are all variables
diff --git a/external-E57Format.patch b/external-E57Format.patch
new file mode 100644
index 0000000..b8c779e
--- /dev/null
+++ b/external-E57Format.patch
@@ -0,0 +1,12 @@
+--- FreeCAD-1.1.1/CMakeLists.txt~	2026-04-15 00:54:18.000000000 +0200
++++ FreeCAD-1.1.1/CMakeLists.txt	2026-04-19 12:53:07.430004402 +0200
+@@ -105,6 +105,9 @@
+     # If these macro definitions are embedded within another macro, it causes problems.
+     include(cMake/FreeCAD_Helpers/SetupQt.cmake)
+     SetupFreetype()
++    if (FREECAD_USE_EXTERNAL_E57FORMAT)
++        find_package(E57Format)
++    endif(FREECAD_USE_EXTERNAL_E57FORMAT)
+ 
+     if(BUILD_GUI)
+         SetupCoin3D()
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/FreeCAD.git/commitdiff/99ca72bc63c86cdb1998f11a678f5996882c947b



More information about the pld-cvs-commit mailing list