[packages/FreeCAD] - drop plugin detection shenanigans - updated files

baggins baggins at pld-linux.org
Sun Dec 15 02:40:40 CET 2024


commit d730b1e088171a8a0f5823c79a7a316e19d42ef8
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sun Dec 15 00:48:53 2024 +0100

    - drop plugin detection shenanigans
    - updated files

 FreeCAD.spec | 95 ++++++++++++------------------------------------------------
 1 file changed, 18 insertions(+), 77 deletions(-)
---
diff --git a/FreeCAD.spec b/FreeCAD.spec
index 05aa7d1..d6c17a6 100644
--- a/FreeCAD.spec
+++ b/FreeCAD.spec
@@ -73,25 +73,6 @@ Requires:	python3-Pivy
 Requires:	python3-PySide2
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-# Maintainers:  keep this list of plugins up to date
-# List plugins in %%{_libdir}/freecad/lib, less '.so' and 'Gui.so', here
-%define	plugins Complete Drawing Fem FreeCAD Image Import Inspection Mesh MeshPart Part Points QtUnit Raytracing ReverseEngineering Robot Sketcher Start Web PartDesignGui _PartDesign Spreadsheet SpreadsheetGui
-
-# Some plugins go in the Mod folder instead of lib. Deal with those here:
-%define	mod_plugins Mod/PartDesign
-
-# plugins and private shared libs in %%{_libdir}/freecad/lib are private;
-# prevent private capabilities being advertised in Provides/Requires
-%define plugin_regexp /^\\\(libFreeCAD.*%(for i in %{plugins}; do echo -n "\\\|$i\\\|$iGui"; done)\\\)\\\(\\\|Gui\\\)\\.so/d
-%{?filter_setup:
-%filter_provides_in %{_libdir}/%{name}/lib
-%filter_from_requires %{plugin_regexp}
-%filter_from_provides %{plugin_regexp}
-%filter_provides_in %{_libdir}/%{name}/Mod
-%filter_requires_in %{_libdir}/%{name}/Mod
-%filter_setup
-}
-
 %description
 FreeCAD is a general purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM
 modeler, aimed directly at mechanical engineering and product design
@@ -113,20 +94,21 @@ Data files for FreeCAD.
 %setup -q -c
 
 %build
-#	-DCMAKE_INSTALL_PREFIX=%{_libdir}/%{name} \
-#	-DCMAKE_INSTALL_DATADIR=%{_datadir}/%{name} \
-#	-DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name} \
-#	-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
-#	-DCMAKE_INSTALL_LIBDIR=%{_libdir}/%{name}/lib \
-#	-DRESOURCEDIR=%{_datadir}/%{name} \
-#	-DCOIN3D_INCLUDE_DIR=%{_includedir}/Coin2 \
-#	-DCOIN3D_DOC_PATH=%{_datadir}/Coin2/Coin \
 #	-DFREECAD_USE_EXTERNAL_PIVY=TRUE \
 install -d build
 cd build
 %cmake ../ \
+	-DCMAKE_INSTALL_PREFIX=%{_libdir}/%{name} \
+	-DCMAKE_INSTALL_DATADIR=%{_datadir}/%{name} \
+	-DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name} \
+	-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
+	-DCMAKE_INSTALL_LIBDIR=%{_libdir}/%{name}/lib \
+	-DRESOURCEDIR=%{_datadir}/%{name} \
+	-DCOIN3D_INCLUDE_DIR=%{_includedir}/Coin2 \
+	-DCOIN3D_DOC_PATH=%{_datadir}/Coin2/Coin \
+	-DENABLE_DEVELOPER_TESTS=OFF \
 %if %{with system_smesh}
-	-DFREECAD_USE_EXTERNAL_SMESH=TRUE \
+	-DFREECAD_USE_EXTERNAL_SMESH=ON \
 	-DSMESH_INCLUDE_DIR=%{_includedir}/smesh \
 %endif
 	%{cmake_on_off system_zipios FREECAD_USE_EXTERNAL_ZIPIOS} \
@@ -139,44 +121,7 @@ rm -rf $RPM_BUILD_ROOT
 %{__make} -C build install \
 	DESTDIR=$RPM_BUILD_ROOT
 
-# Bug maintainers to keep %%{plugins} macro up to date.
-#
-# Make sure there are no plugins that need to be added to plugins macro
-new_plugins=$(ls $RPM_BUILD_ROOT%{_libdir}/freecad/lib | sed -e '%{plugin_regexp}')
-if [ -n "$new_plugins" ]; then
-	cat >&2 <<-EOF
-	**** ERROR:
-
-	Plugins not caught by regexp: $new_plugins
-
-	Plugins in %{_libdir}/freecad/lib do not exist in
-	specfile %%{plugins} macro. Please add these to
-	%%{plugins} macro at top of specfile and rebuild.
-
-	****
-	EOF
-	exit 1
-fi
-
-# Make sure there are no entries in the plugins macro that don't match plugins
-for p in %{plugins}; do
-	if [ -z "$(ls $RPM_BUILD_ROOT%{_libdir}/freecad/lib/$p*.so)" ]; then
-		set +x
-		cat >&2 <<-EOF
-			**** ERROR:
-
-			Extra entry in %%{plugins} macro with no matching plugin:
-			'$p'
-
-			Please remove from %%{plugins} macro at top of specfile and rebuild.
-
-			****
-		EOF
-		exit 1
-	fi
-done
-
-appstream-util validate-relax --nonet $RPM_BUILD_ROOT/%{_datadir}/appdata/*.appdata.xml
+%{__rm} $RPM_BUILD_ROOT%{_includedir}
 
 %post
 %update_icon_cache hicolor
@@ -198,24 +143,20 @@ rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc ChangeLog.txt copying.lib data/License.txt
+%doc README.md SECURITY.md
 %exclude %{_docdir}/freecad/freecad.*
 %attr(755,root,root) %{_bindir}/FreeCAD
 %attr(755,root,root) %{_bindir}/FreeCADCmd
-%{_mandir}/man1/*.1*
-%{_datadir}/appdata/*.appdata.xml
-%{_desktopdir}/%{name}.desktop
-%{_iconsdir}/hicolor/scalable/apps/%{name}.svg
-%{_datadir}/mime/packages/%{name}.xml
+%{_datadir}/metainfo/*.xml
+%{_desktopdir}/*.desktop
+%{_iconsdir}/hicolor/*x*/apps/*.png
+%{_datadir}/mime/packages/*.xml
 %dir %{_libdir}/%{name}
-%dir %{_libdir}/%{name}/bin
-%attr(755,root,root) %{_libdir}/%{name}/bin/*
 %dir %{_libdir}/%{name}/lib
 %attr(755,root,root) %{_libdir}/%{name}/lib/*.so
+%attr(755,root,root) %{_libdir}/%{name}/lib/libOndselSolver.so.*
 %{_libdir}/%{name}/Mod
 
 %files data
 %defattr(644,root,root,755)
-%{_datadir}/%{name}/
-%dir %{_docdir}/%{name}
-%{_docdir}/%{name}/freecad.q*
+%{_datadir}/%{name}
================================================================

---- gitweb:

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



More information about the pld-cvs-commit mailing list