[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