[packages/qcad] - up to 3.26.0.1

baggins baggins at pld-linux.org
Sat Mar 6 18:16:36 CET 2021


commit a0bbe35a435c8ab4aa4f64bc4040024d19a15187
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Sat Mar 6 18:16:18 2021 +0100

    - up to 3.26.0.1

 qcad-gcc4.patch  |  22 -----
 qcad.appdata.xml |  62 +++++++++++++
 qcad.desktop     |  10 ---
 qcad.png         | Bin 4025 -> 0 bytes
 qcad.spec        | 266 +++++++++++++++++++++++++++++++++++--------------------
 5 files changed, 232 insertions(+), 128 deletions(-)
---
diff --git a/qcad.spec b/qcad.spec
index baa3471..0671714 100644
--- a/qcad.spec
+++ b/qcad.spec
@@ -1,38 +1,69 @@
-%define		_csver		2.0.4.0-1
-%define		_dever		2.0.4.0-1
-%define		_enver		2.0.4.0-1
-%define		_huver		2.0.4.0-1
 Summary:	A professional CAD system
 Summary(pl.UTF-8):	Profesjonalny program CAD
 Summary(pt_BR.UTF-8):	Um sistema de CAD 2D livre (Open Source)
 Name:		qcad
-Version:	2.0.5.0
-Release:	2
-License:	GPL v2
+Version:	3.26.0.1
+Release:	1
+License:	GPL v3
 Group:		X11/Applications/Graphics
 #Source0Download: http://www.ribbonsoft.com/qcad_downloads.html
-Source0:	http://www.ribbonsoft.com/archives/qcad/%{name}-%{version}-1-community.src.tar.gz
-# Source0-md5:	96b6a56027782aec953c9c4e64c5998c
-Source1:	%{name}.desktop
-Source2:	%{name}.png
-Source3:	http://www.ribbonsoft.com/archives/qcad/%{name}-manual-cs-%{_csver}.html.zip
-# Source3-md5:	45b444d58761b7a4074ca231f46d04fa
-Source4:	http://www.ribbonsoft.com/archives/qcad/%{name}-manual-de-%{_dever}.html.zip
-# Source4-md5:	71aba8cfd5dc521bd96454c46dafcb2c
-Source5:	http://www.ribbonsoft.com/archives/qcad/%{name}-manual-en-%{_enver}.html.zip
-# Source5-md5:	20d8fddbe0da978f996bdfaf9ae6bec1
-Source6:	http://www.ribbonsoft.com/archives/qcad/%{name}-manual-hu-%{_huver}.html.zip
-# Source6-md5:	56c94d907761d4affa00c029f52fe96d
-Patch0:		%{name}-gcc4.patch
+Source0:	https://github.com/qcad/qcad/archive/v%{version}/%{name}-%{version}-community.tar.gz
+# Source0-md5:	e34bae0b84e3a0d4a9ffab45a802e15b
+Source1:	%{name}.appdata.xml
 URL:		http://www.ribbonsoft.com/qcad.html
-BuildRequires:	autoconf
-BuildRequires:	automake
-BuildRequires:	qmake
-BuildRequires:	qt-devel >= 3:3.0.5
-BuildRequires:	qt-linguist
+BuildRequires:	Mesa-libGLU-devel
+BuildRequires:	Qt5Concurrent-devel
+BuildRequires:	Qt5Core-devel
+BuildRequires:	Qt5Gui-devel
+BuildRequires:	Qt5Multimedia-devel
+BuildRequires:	Qt5Network-devel
+BuildRequires:	Qt5OpenGL-devel
+BuildRequires:	Qt5PrintSupport-devel
+BuildRequires:	Qt5Script-devel
+BuildRequires:	Qt5ScriptTools-devel
+BuildRequires:	Qt5Sql-devel
+BuildRequires:	Qt5Svg-devel
+BuildRequires:	Qt5UiTools-devel
+BuildRequires:	Qt5WebKit-devel
+BuildRequires:	Qt5Widgets-devel
+BuildRequires:	Qt5Xml-devel
+BuildRequires:	Qt5XmlPatterns-devel
+BuildRequires:	appstream-glib-devel
+BuildRequires:	dbus-devel
+BuildRequires:	fontconfig-devel
+BuildRequires:	freetype-devel
+BuildRequires:	openssl-devel
+BuildRequires:	qt5-linguist
+BuildRequires:	qt5-qmake
 BuildRequires:	sed >= 4.0
 BuildRequires:	unzip
+BuildRequires:	xorg-lib-libSM-devel
+BuildRequires:	xorg-lib-libX11-devel
 BuildRequires:	xorg-lib-libXext-devel
+BuildRequires:	xorg-lib-libXrender-devel
+Requires:	Qt5Concurrent
+Requires:	Qt5Core
+Requires:	Qt5Designer-plugin-qwebview
+Requires:	Qt5Gui
+Requires:	Qt5Gui
+Requires:	Qt5Gui-imageformats
+Requires:	Qt5Multimedia
+Requires:	Qt5Network
+Requires:	Qt5OpenGL
+Requires:	Qt5PrintSupport
+Requires:	Qt5PrintSupport
+Requires:	qt5-qttools
+Requires:	Qt5Script
+Requires:	Qt5ScriptTools
+Requires:	Qt5Sql
+Requires:	Qt5Sql
+Requires:	Qt5Sql-sqldriver-sqlite3
+Requires:	Qt5Svg
+Requires:	Qt5WebKit
+Requires:	Qt5Widgets
+Requires:	Qt5Xml
+Requires:	Qt5XmlPatterns
+Requires:	fonts-TTF-DejaVu
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -53,91 +84,134 @@ características e salvá-los como arquivos DXF. Estes arquivos DXF são
 a interface para muitos outros sistemas de CAD, como o AutoCAD(c).
 
 %prep
-%setup -q -n %{name}-%{version}-1-community.src -a3 -a4 -a5 -a6
-%patch0 -p1
-
-sed -i -e 's/-pedantic//' mkspecs/defs.pro
+%setup -q
 
 %build
-QTDIR=%{_prefix}; export QTDIR
-QMAKESPEC=%{_datadir}/qt/mkspecs/linux-g++; export QMAKESPEC
-CXXFLAGS="%{rpmcflags} -fno-exceptions"
-for i in fparser dxflib; do
-	cd $i
-	cp -f /usr/share/automake/config.* .
-	%{__autoconf}
-	%configure
-	%{__make}
-	cd ..
-done
-cd qcadcmd
-%{__make} prepare
-cd ..
-for i in qcadlib qcadcmd qcadactions qcadguiqt qcad; do
-	cd $i/src
-	echo 'CONFIG += thread' >> `echo *.pro`
-	qmake *.pro \
-		QMAKE_CXXFLAGS_RELEASE="$CXXFLAGS"
-	cd ..
-	%{__make}
-	cd ..
-done;
+qmake-qt5 -makefile \
+	CONFIG+=release %{name}.pro \
+	QMAKE_CFLAGS_RELEASE+="%{rpmcflags}" \
+	QMAKE_CXXFLAGS_RELEASE+="%{rpmcxxflags}" \
+	QMAKE_LFLAGS+="%{rpmldflags} -Wl,-rpath -Wl,%{_libdir}/%{name}" \
+	LFLAGS+="%{rpmldflags} -Wl,-rpath -Wl,%{_libdir}/%{name}"
+
+%{__make} release
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/qcad} \
-	$RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
-
-cwd=`pwd`
-for dir in qcadcmd qcadactions qcadguiqt qcad; do
-	cd $dir/src
-	lrelease *.pro
-	cd ts
-	for tf in *.qm; do
-		ln -sf $cwd/$dir/src/ts/$tf $cwd/qcad/qm/$tf
-	done
-	cd ../../..
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_pixmapsdir},%{_desktopdir},%{_mandir}/man1,%{_iconsdir}/hicolor/scalable/apps} \
+	$RPM_BUILD_ROOT%{_libdir}/%{name}/{plugins/{designer,imageformats,sqldrivers,script,printsupport},ts} \
+	$RPM_BUILD_ROOT%{_datadir}/metainfo
+
+## Install fonts
+cp -a fonts $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+# Unbundle dejavu fonts
+for i in $RPM_BUILD_ROOT%{_libdir}/%{name}/fonts/qt/DejaVuS*; do
+	ln -sf "%{_datadir}/fonts/TTF/$(basename $i)" "$i"
 done
 
-cp -LR scripts $RPM_BUILD_ROOT%{_datadir}/qcad
-cd qcad
-install qcad $RPM_BUILD_ROOT%{_bindir}
-cp -LR {fonts,patterns,qm} $RPM_BUILD_ROOT%{_datadir}/qcad
+cp -a patterns themes libraries scripts plugins linetypes $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+# This file is required for Help's "Show Readme" menu choice
+cp -p readme.txt $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+cp -p ts/qcad*.qm $RPM_BUILD_ROOT%{_libdir}/%{name}/ts
+ln -sf %{_libdir}/qt5/plugins/designer/libqwebview.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/designer/libqwebview.so
+
+ln -sf %{_libdir}/qt5/plugins/imageformats/libqgif.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/imageformats/libqgif.so
+ln -sf %{_libdir}/qt5/plugins/imageformats/libqico.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/imageformats/libqico.so
+ln -sf %{_libdir}/qt5/plugins/imageformats/libqjpeg.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/imageformats/libqjpeg.so
+ln -sf %{_libdir}/qt5/plugins/imageformats/libqsvg.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/imageformats/libqsvg.so
+ln -sf %{_libdir}/qt5/plugins/imageformats/libqtga.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/imageformats/libqtga.so
+ln -sf %{_libdir}/qt5/plugins/imageformats/libqtiff.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/imageformats/libqtiff.so
 
-install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
+ln -sf %{_libdir}/qt5/plugins/sqldrivers/libqsqlite.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/sqldrivers/libqsqlite.so
+ln -sf %{_libdir}/qt5/plugins/printsupport/libcupsprintersupport.so $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/printsupport/libcupsprintersupport.so
+
+cp -p scripts/qcad_icon.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
+cp -p release/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}
+cp -p release/%{name}-bin $RPM_BUILD_ROOT%{_libdir}/%{name}
+cp -p readme.txt $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+cp -p qcad.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -p scripts/%{name}_icon.svg $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
+
+find $RPM_BUILD_ROOT%{_libdir}/%{name} -name ".gitignore" -delete
+find $RPM_BUILD_ROOT%{_libdir}/%{name} -name "readme.txt" -delete
+find $RPM_BUILD_ROOT%{_libdir}/%{name} -name "Makefile" -delete
+
+cat > $RPM_BUILD_ROOT%{_bindir}/%{name} <<EOF
+#!/bin/sh
+export LD_LIBRARY_PATH=%{_libdir}/%{name}:%{_libdir}/%{name}/plugins/script
+export QTLIB=%{_libdir}
+export QTDIR=%{_libdir}
+export QTINC=%{_includedir}/qt5
+export PATH=%{_libdir}:%{_libdir}/%{name}
+%{_libdir}/%{name}/%{name}-bin "\$@"
+EOF
+
+cp -p qcad.desktop $RPM_BUILD_ROOT%{_desktopdir}
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/metainfo
+
+cd $RPM_BUILD_ROOT%{_libdir}/%{name}
+for i in $(find . -type f \( -name "*.so*" -o -name "qcad-bin" \)); do
+  chmod -c 755 $i
+  chrpath -r %{_libdir}/%{name} $i
+done
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc qcad-manual-en-%{_enver}.html
-%lang(cs) %doc qcad-manual-cs-%{_csver}.html
-%lang(de) %doc qcad-manual-de-%{_dever}.html
-%lang(hu) %doc qcad-manual-hu-%{_huver}.html
 %attr(755,root,root) %{_bindir}/qcad
-%dir %{_datadir}/qcad
-%{_datadir}/qcad/fonts
-%{_datadir}/qcad/patterns
-%{_datadir}/qcad/scripts
-%dir %{_datadir}/qcad/qm
-%lang(cs) %{_datadir}/qcad/qm/*_cs.qm
-%lang(da) %{_datadir}/qcad/qm/*_da.qm
-%lang(de) %{_datadir}/qcad/qm/*_de.qm
-%lang(el) %{_datadir}/qcad/qm/*_el.qm
-%{_datadir}/qcad/qm/*_en.qm
-%lang(es) %{_datadir}/qcad/qm/*_es.qm
-%lang(et) %{_datadir}/qcad/qm/*_et.qm
-%lang(fr) %{_datadir}/qcad/qm/*_fr.qm
-%lang(hu) %{_datadir}/qcad/qm/*_hu.qm
-%lang(it) %{_datadir}/qcad/qm/*_it.qm
-%lang(nl) %{_datadir}/qcad/qm/*_nl.qm
-%lang(nb) %{_datadir}/qcad/qm/*_no.qm
-%lang(pa) %{_datadir}/qcad/qm/*_pa.qm
-%lang(pl) %{_datadir}/qcad/qm/*_pl.qm
-%lang(ru) %{_datadir}/qcad/qm/*_ru.qm
-%lang(sk) %{_datadir}/qcad/qm/*_sk.qm
-%lang(tr) %{_datadir}/qcad/qm/*_tr.qm
+%dir %{_libdir}/qcad
+%attr(755,root,root) %{_libdir}/qcad/lib*.so
+%attr(755,root,root) %{_libdir}/qcad/qcad-bin
+%{_libdir}/qcad/fonts
+%{_libdir}/qcad/libraries
+%{_libdir}/qcad/linetypes
+%{_libdir}/qcad/patterns
+%dir %{_libdir}/qcad/plugins
+%attr(755,root,root) %{_libdir}/qcad/plugins/lib*.so
+%dir %{_libdir}/qcad/plugins/designer
+%attr(755,root,root) %{_libdir}/qcad/plugins/designer/lib*.so
+%dir %{_libdir}/qcad/plugins/imageformats
+%attr(755,root,root) %{_libdir}/qcad/plugins/imageformats/lib*.so
+%dir %{_libdir}/qcad/plugins/printsupport
+%attr(755,root,root) %{_libdir}/qcad/plugins/printsupport/lib*.so
+%dir %{_libdir}/qcad/plugins/script
+%attr(755,root,root) %{_libdir}/qcad/plugins/script/libqtscript_*.so*
+%dir %{_libdir}/qcad/plugins/sqldrivers
+%attr(755,root,root) %{_libdir}/qcad/plugins/sqldrivers/lib*.so
+%{_libdir}/qcad/scripts
+%{_libdir}/qcad/themes
+%dir %{_libdir}/qcad/ts
+%{_libdir}/qcad/ts/*_en.qm
+%lang(cs) %{_libdir}/qcad/ts/*_cs.qm
+%lang(da) %{_libdir}/qcad/ts/*_da.qm
+%lang(de) %{_libdir}/qcad/ts/*_de.qm
+%lang(es) %{_libdir}/qcad/ts/*_es.qm
+%lang(fi) %{_libdir}/qcad/ts/*_fi.qm
+%lang(fr) %{_libdir}/qcad/ts/*_fr.qm
+%lang(hr) %{_libdir}/qcad/ts/*_hr.qm
+%lang(hu) %{_libdir}/qcad/ts/*_hu.qm
+%lang(it) %{_libdir}/qcad/ts/*_it.qm
+%lang(ja) %{_libdir}/qcad/ts/*_ja.qm
+%lang(lt) %{_libdir}/qcad/ts/*_lt.qm
+%lang(nl) %{_libdir}/qcad/ts/*_nl.qm
+%lang(pl) %{_libdir}/qcad/ts/*_pl.qm
+%lang(pt) %{_libdir}/qcad/ts/*_pt.qm
+%lang(ru) %{_libdir}/qcad/ts/*_ru.qm
+%lang(sk) %{_libdir}/qcad/ts/*_sk.qm
+%lang(sl) %{_libdir}/qcad/ts/*_sl.qm
+%lang(sv) %{_libdir}/qcad/ts/*_sv.qm
+%lang(th) %{_libdir}/qcad/ts/*_th.qm
+%lang(tr) %{_libdir}/qcad/ts/*_tr.qm
+%lang(zh_CN) %{_libdir}/qcad/ts/*_zh_CN.qm
+%lang(zh_TW) %{_libdir}/qcad/ts/*_zh_TW.qm
 %{_desktopdir}/qcad.desktop
 %{_pixmapsdir}/qcad.png
+%{_iconsdir}/hicolor/scalable/apps/qcad.svg
+%{_mandir}/man1/qcad.1*
+%{_datadir}/metainfo/qcad.appdata.xml
diff --git a/qcad-gcc4.patch b/qcad-gcc4.patch
deleted file mode 100644
index 70c39cb..0000000
--- a/qcad-gcc4.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- qcad-2.0.4.0-1.src/qcadlib/src/engine/rs_entity.cpp.orig	2004-09-14 22:13:02.000000000 +0200
-+++ qcad-2.0.4.0-1.src/qcadlib/src/engine/rs_entity.cpp	2006-04-17 13:29:17.000000000 +0200
-@@ -849,7 +849,7 @@
-         os << " layer: NULL ";
-     } else {
-         os << " layer: " << e.layer->getName().latin1() << " ";
--        os << " layer address: " << (int)(e.layer) << " ";
-+        os << " layer address: " << (ptrdiff_t)(e.layer) << " ";
-     }
- 
-     os << e.pen << "\n";
---- qcad-2.0.4.0-1.src/qcadlib/src/engine/rs_layer.cpp.orig	2004-09-14 22:13:02.000000000 +0200
-+++ qcad-2.0.4.0-1.src/qcadlib/src/engine/rs_layer.cpp	2006-04-17 13:30:14.000000000 +0200
-@@ -57,7 +57,7 @@
-     os << " name: " << l.getName().latin1()
-     << " pen: " << l.getPen()
- 	<< " frozen: " << (int)l.isFrozen()
--	<< " address: " << (int)(&l)
-+	<< " address: " << (ptrdiff_t)(&l)
-     << std::endl;
-     return os;
- }
diff --git a/qcad.appdata.xml b/qcad.appdata.xml
new file mode 100644
index 0000000..58d8657
--- /dev/null
+++ b/qcad.appdata.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="desktop">
+  <id type="desktop">qcad.desktop</id>
+  <metadata_license>CC0-1.0</metadata_license>
+  <summary>Powerful 2D CAD system</summary>
+  <name>QCad</name>
+  <project_license>GPL-3.0 and GPL-2.0+ and LGPL-2.0+ and MIT and BSD-2-Clause and CC-BY-2.0</project_license>
+  <categories>
+   <category>Application</category>
+   <category>Graphics</category>
+   <category>Engineering</category>
+  </categories>
+  <description>
+    <p>
+      QCAD is an application for computer aided drafting (CAD) in two dimensions (2D).
+      With QCAD you can create technical drawings such as plans for buildings,
+      interiors, mechanical parts or schematics and diagrams.
+    </p>  
+    <p>
+      QCAD was designed with modularity, extensibility and portability in mind.
+      But what people notice most often about QCAD is its intuitive
+      user interface.
+      QCAD is an easy to use but powerful 2D CAD system for everyone.
+      You don't need any CAD experience to get started with QCAD immediately.
+
+      Main Features
+
+       Layers
+       Blocks (grouping)
+       35 CAD fonts included
+       Support for TrueType fonts
+       Various Metrical and Imperial units
+       DXF and DWG input and output
+       Printing to scale
+       Printing on multiple pages
+       Over 40 construction tools
+       Over 20 modification tools
+       Construction and modification of points, lines, arcs, circles, ellipses, splines, polylines, texts, dimensions, hatches, fills, raster images
+       Various powerful entity selection tools
+       Object snaps
+       Measuring tools
+       Part library with over 4800 CAD parts
+       Very complete and extremely powerful ECMAScript scripting interface
+    </p>
+   </description>
+  <url type="homepage">http://www.ribbonsoft.com/qcad.html</url>
+  <screenshots>
+    <screenshot type="default">
+     <image>http://www.qcad.org/images/qcad3_linux_t.png</image>
+    </screenshot>
+    <screenshot>
+     <image>http://www.qcad.org/images/tool_matrix_t.png</image>
+    </screenshot>
+    <screenshot>
+     <image>http://www.qcad.org/images/print_preview_multipage_t.png</image>
+    </screenshot>
+    <screenshot>
+     <image>http://www.qcad.org/images/dark_theme_t.png</image>
+    </screenshot>
+  </screenshots>
+  <updatecontact>sagitter_at_fedoraproject.org</updatecontact>
+</component>
diff --git a/qcad.desktop b/qcad.desktop
deleted file mode 100644
index b4563ad..0000000
--- a/qcad.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=QCad
-Comment=QCad - 2D CAD system
-Comment[pl]=QCad - dwuwymiarowy CAD
-Icon=qcad
-Exec=qcad
-Terminal=false
-Type=Application
-Categories=Qt;Graphics;
-# vi: encoding=utf-8
diff --git a/qcad.png b/qcad.png
deleted file mode 100644
index 50f8c64..0000000
Binary files a/qcad.png and /dev/null differ
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/qcad.git/commitdiff/a0bbe35a435c8ab4aa4f64bc4040024d19a15187



More information about the pld-cvs-commit mailing list