[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