383 lines
13 KiB
RPMSpec
383 lines
13 KiB
RPMSpec
%if 0%{?rhel} < 7
|
|
%{!?__global_ldflags: %global __global_ldflags -Wl,-z,relro}
|
|
%endif
|
|
|
|
#%%global checkout b6ad5b0cd3be30c52f17bf8917fe39fb28a60549
|
|
#%%global date 20160204
|
|
|
|
Name: engauge-digitizer
|
|
Summary: Convert graphs or map files into numbers
|
|
Version: 9.6
|
|
Release: 1%{?dist}
|
|
Group: Applications/Engineering
|
|
License: GPLv2+
|
|
URL: http://markummitchell.github.io/%{name}/
|
|
Source0: https://github.com/markummitchell/engauge-digitizer/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
|
Epoch: 1
|
|
|
|
##Excluding this arch because of missing BR packages (log4cpp)
|
|
%if 0%{?rhel} < 7
|
|
ExcludeArch: ppc64
|
|
%endif
|
|
|
|
## Proposed in https://bugzilla.redhat.com/show_bug.cgi?id=1182409
|
|
Source1: %{name}.appdata.xml
|
|
Source2: %{name}.svg
|
|
Source3: %{name}-with-name.svg
|
|
|
|
## Main building
|
|
BuildRequires: qt5-qtbase-devel, qt5-qttools-devel
|
|
BuildRequires: fftw-devel, log4cpp-devel, desktop-file-utils
|
|
|
|
##Xvfb is needed to run a virtual X server used by tests
|
|
BuildRequires: xorg-x11-server-Xvfb
|
|
|
|
##Doxygen for documentation
|
|
BuildRequires: doxygen
|
|
|
|
%if 0%{?fedora}
|
|
BuildRequires: libappstream-glib
|
|
BuildRequires: openjpeg2-devel
|
|
%endif
|
|
|
|
%description
|
|
Engauge 9 is rewritten with Qt5.
|
|
This digitizing software converts an image file
|
|
showing a graph or map, into numbers.
|
|
The image file can come from a scanner, digital camera
|
|
or screen-shot. The numbers can be read on the screen,
|
|
and written or copied to a spreadsheet.
|
|
The process starts with an image file containing a graph or map.
|
|
The final result is digitized data that can be used by other tools
|
|
such as Gnumeric.
|
|
|
|
New features already added to Engauge:
|
|
|
|
- Fix loading of versions 6 and 7 DIG files with log coordinates
|
|
- Undo/redo of all operations means recovering from mistakes and experimenting
|
|
with options is painless
|
|
- Wizard provides an interactive tutorial to explain the basic steps
|
|
- Wizard creates a checklist guide to interactively leads user through steps
|
|
from file import to file export
|
|
- Cubic spline interpolation between points gives more accurate curves with
|
|
fewer points
|
|
- Axes Checker briefly highlights the axes when they are defined or modified,
|
|
to reveal entry mistakes
|
|
- Graph coordinates can be specified as date and time value, or as degrees,
|
|
minutes and seconds
|
|
- All settings dialogs are resizable so they can be enlarged as necessary to
|
|
display more information
|
|
- Import by drag-and-drop
|
|
- Replacement of Qt3 (which is at its end of life) by Qt5
|
|
- Much better zooming, with a fill mode that automatically zooms in on image
|
|
features, and rezooms when the application window is resized
|
|
- Color picking straight from the original image
|
|
- Uploadable error report generated when a programming error is encountered,
|
|
for identifying problems and improving user support
|
|
- Test suite for regression testing minimizes code breakage
|
|
as new features are added
|
|
- Multiple coordinate systems in the same image can be digitized in advanced mode
|
|
- Axes with only one known coordinate (floating axes) can be digitized in advanced mode
|
|
- File import by pasting
|
|
|
|
%package samples
|
|
Summary: Sample files for %{name}
|
|
Group: Applications/Engineering
|
|
BuildArch: noarch
|
|
%description samples
|
|
This package contains several sample image files that may be imported into
|
|
Engauge Digitizer (http://digitizer.sourceforge.net).
|
|
|
|
These files are listed below, with comments:
|
|
|
|
- corners.png - Graph that lots of corners that would be painful
|
|
to digitize manually
|
|
- gridlines.gif - Graph with gridlines that are easily removed by Engauge
|
|
- gridlines_log.gif - Another graph with gridlines that are easily
|
|
removed by Engauge
|
|
- gridlines_log.src - Creates gridlines_log.gif in gnuplot using 'load'
|
|
command (not an image!)
|
|
- inverse.jpg - Image of y/x function
|
|
- inverse.png - Same as inverse.jpg but in png format
|
|
- linlog.jpg - Graph with linear/logarithmic coordinates
|
|
- linlog.png - Same as linlog.jpg but in png format
|
|
- loglin.png - Graph with logarithmic/linear coordinates
|
|
- loglog.png - Graph with logarithmic/logarithmic coordinates
|
|
- normdist.jpg - Graph of normal distribution
|
|
- normdist.png - Same as normdist.jpg but in png format
|
|
- pointmatch.jpg - Graph with fuzzy points for playing with Point Match
|
|
feature of Engauge
|
|
- pointplot.bmp - Graph with points that are easily captured by Point Match
|
|
feature of Engauge, if the Discretize settings are set to "Intensity 90 to 99"
|
|
for the triangles, and "Intensity 10 to 50" for the diamonds
|
|
- polarcircles.jpg - Polar plot for experimenting. No coordinates are displayed,
|
|
so not very useful
|
|
- polarplot.jpg - Polar plot with cardioid pattern
|
|
- polarplot.png - Same as polarplot.jpg but in png format
|
|
- testcase.jpg - Simple graph that serves as an excellent starting point for the
|
|
new user
|
|
- testcase.png - Same as testcase.jpg but in png format
|
|
- testcoords.jpg - Advanced graph used by developers to check the affine
|
|
transformations in Engauge
|
|
- testcoords.sxd - Open Office document used to create testcoords.jpg
|
|
(not an image!)
|
|
- usgs.png - Fictional map loosely based on U.S. Geological Survey
|
|
topographic maps
|
|
|
|
%package doc
|
|
Summary: HTML documentation of %{name}
|
|
Group: Applications/Engineering
|
|
BuildArch: noarch
|
|
%description doc
|
|
HTML documentation of %{name}.
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{version}
|
|
|
|
##Active support to jpeg2000
|
|
##jpeg2000 libraries not available on EPEL
|
|
%if 0%{?fedora}
|
|
sed -e 's|CONFIG = qt warn_on thread debug|CONFIG = qt warn_on thread jpeg2000 debug|g' -i engauge.pro
|
|
sed -e 's|INCLUDEPATH += Jpeg2000|INCLUDEPATH += src/Jpeg2000|g' -i engauge.pro
|
|
%endif
|
|
|
|
##Remove default -O1 optimization
|
|
sed -e 's|-O1||g' -i engauge.pro
|
|
|
|
##Remove spurious executable permissions
|
|
for i in `find src -type f \( -name "*.cpp" -o -name "*.h" \)`; do
|
|
chmod a-x $i
|
|
done
|
|
|
|
%build
|
|
%if 0%{?fedora}
|
|
export JPEG2000_INCLUDE=%{_includedir}/openjpeg-2.1
|
|
export JPEG2000_LIB=%{_libdir}
|
|
%endif
|
|
export ENGAUGE_RELEASE=1
|
|
## Flags set by hand for EPEL6
|
|
%{qmake_qt5} engauge.pro \
|
|
QMAKE_CFLAGS_RELEASE="$RPM_OPT_FLAGS -pie -Wl,-z,now" \
|
|
QMAKE_CXXFLAGS_RELEASE="$RPM_OPT_FLAGS -pie -Wl,-z,now" \
|
|
QMAKE_LFLAGS="$RPM_LD_FLAGS -pie -Wl,-z,now" \
|
|
DEFINES+=HELPDIR=%{_datadir}/doc/%{name}/help
|
|
make %{?_smp_mflags}
|
|
|
|
##Build HELP files
|
|
pushd help
|
|
qcollectiongenerator-qt5 engauge.qhcp -o engauge.qhc
|
|
mv engauge.qch ../bin/documentation
|
|
mv engauge.qhc ../bin/documentation
|
|
rm -f build
|
|
popd
|
|
|
|
##Build HTML/Latex documentation files
|
|
pushd src
|
|
doxygen
|
|
popd
|
|
|
|
%install
|
|
mkdir -p %{buildroot}%{_datadir}/%{name}-%{version}/samples
|
|
mkdir -p %{buildroot}%{_datadir}/%{name}-%{version}/img
|
|
mkdir -p %{buildroot}%{_datadir}/applications
|
|
mkdir -p %{buildroot}%{_datadir}/pixmaps
|
|
mkdir -p %{buildroot}%{_datadir}/appdata
|
|
mkdir -p %{buildroot}%{_bindir}
|
|
|
|
install -p -m 755 bin/engauge %{buildroot}%{_bindir}
|
|
|
|
pushd samples
|
|
install -p -m 644 *.gif *.jp* *.png *.bmp %{buildroot}%{_datadir}/%{name}-%{version}/samples
|
|
popd
|
|
|
|
install -p -m 644 src/img/* %{buildroot}%{_datadir}/%{name}-%{version}/img
|
|
install -p -m 644 %{SOURCE2} %{buildroot}%{_datadir}/pixmaps
|
|
install -p -m 644 %{SOURCE3} %{buildroot}%{_datadir}/pixmaps
|
|
%if 0%{?fedora}
|
|
install -p -m 644 %{SOURCE1} %{buildroot}%{_datadir}/appdata
|
|
%endif
|
|
|
|
##Make a .desktop file
|
|
mkdir -p %{buildroot}%{_datadir}/applications
|
|
cat > %{buildroot}%{_datadir}/applications/%{name}.desktop <<EOF
|
|
[Desktop Entry]
|
|
Name=Engauge Digitizer %{version}
|
|
Type=Application
|
|
Comment=Extract data from graphs
|
|
TryExec=engauge
|
|
Exec=engauge
|
|
MimeType=text/plain
|
|
Categories=Education;Science;DataVisualization;
|
|
Icon=/usr/share/pixmaps/engauge-digitizer.xpm
|
|
Keywords=Analog-Digital Converter;
|
|
EOF
|
|
|
|
%if 0%{?fedora}
|
|
desktop-file-edit \
|
|
--set-icon=%{name}-with-name \
|
|
--set-key=Keywords --set-value="analog;digital;converter;" %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
%else
|
|
|
|
sed -e \
|
|
's|Icon=%{_datadir}/pixmaps/%{name}.xpm|Icon=%{name}-with-name|g' \
|
|
-i %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
|
|
sed -e \
|
|
's|Keywords=Analog-Digital Converter;|Keywords=analog;digital;converter;|g' \
|
|
-i %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
%endif
|
|
|
|
%check
|
|
%if 0%{?fedora}
|
|
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/*.appdata.xml
|
|
%endif
|
|
|
|
%post
|
|
/usr/bin/update-desktop-database &> /dev/null || :
|
|
|
|
%postun
|
|
/usr/bin/update-desktop-database &> /dev/null || :
|
|
|
|
%files
|
|
%{!?_licensedir:%global license %doc}
|
|
%doc README.md help bin/documentation/engauge.qhc bin/documentation/engauge.qch
|
|
%license LICENSE
|
|
%{_bindir}/engauge
|
|
%{_datadir}/pixmaps/%{name}*.svg
|
|
%if 0%{?fedora}
|
|
%{_datadir}/appdata/*.appdata.xml
|
|
%endif
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{_datadir}/%{name}-%{version}/
|
|
%exclude %{_datadir}/%{name}-%{version}/samples
|
|
|
|
%files samples
|
|
%{!?_licensedir:%global license %doc}
|
|
%doc samples/README
|
|
%license LICENSE
|
|
%dir %{_datadir}/%{name}-%{version}
|
|
%{_datadir}/%{name}-%{version}/samples
|
|
|
|
%files doc
|
|
%{!?_licensedir:%global license %doc}
|
|
%doc README.md doc/doxygen/html
|
|
%license LICENSE
|
|
|
|
%changelog
|
|
* Tue Nov 22 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.6-1
|
|
- Update to 9.6
|
|
|
|
* Mon Oct 10 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.5-1
|
|
- Update to 9.5
|
|
|
|
* Sat Oct 01 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.4-1
|
|
- Update to 9.4
|
|
|
|
* Tue Sep 20 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.3-1
|
|
- Update to 9.3
|
|
|
|
* Sun Aug 28 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.2-1
|
|
- Update to 9.2
|
|
|
|
* Sun Jul 31 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.1-1
|
|
- Update to 9.1
|
|
|
|
* Tue Jul 19 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.0-2
|
|
- Fix appdata file's tags
|
|
|
|
* Tue Jul 19 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:9.0-1
|
|
- Update to 9.0
|
|
|
|
* Thu Jun 09 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:8.2-1
|
|
- Update to 8.2
|
|
|
|
* Tue May 31 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:8.1-1
|
|
- Update to 8.1
|
|
|
|
* Mon Apr 25 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:7.2-1
|
|
- Update to 7.2
|
|
|
|
* Thu Mar 24 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:7.1-1
|
|
- Update to 7.1
|
|
|
|
* Sun Mar 06 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:7.0-2
|
|
- Update of appdata file
|
|
|
|
* Sun Mar 06 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:7.0-1
|
|
- Update to 7.0
|
|
|
|
* Thu Feb 04 2016 Antonio Trande <sagitter@fedoraproject.org> - 1:6.2-4.20160204gitb6ad5b
|
|
- Update to commit #b6ad5b
|
|
|
|
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:6.2-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
|
|
* Mon Feb 01 2016 Rex Dieter <rdieter@fedoraproject.org> 1:6.2-2
|
|
- use %%qmake_qt5 macro (instead of settings flags by hand)
|
|
|
|
* Tue Dec 01 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6.2-1
|
|
- Update to 6.2
|
|
|
|
* Sun Nov 08 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6.1-2
|
|
- Excluding PPC arch on EPEL6 because of missing BR packages (log4cpp)
|
|
|
|
* Sat Oct 31 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6.1-1
|
|
- Update to 6.1
|
|
|
|
* Sat Oct 24 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6.0-1
|
|
- First release
|
|
- Build release version
|
|
- Activated jpeg200 support
|
|
|
|
* Wed Oct 14 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6-0.4.20151011git77e64e
|
|
- Commit #77e64e
|
|
- Old Transpose tool obsoleted
|
|
|
|
* Tue Sep 29 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6-0.3.20150928git4b8703
|
|
- Commit #4b8703
|
|
|
|
* Mon Sep 28 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6-0.2.20150928gita25102
|
|
- Commit #a25102
|
|
- Built HTML docs
|
|
- Tests performed
|
|
|
|
* Thu Sep 24 2015 Antonio Trande <sagitter@fedoraproject.org> - 1:6-0.1.20150921git4f0c92
|
|
- Bump to the new Engauge6
|
|
|
|
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-10.20150115git28de7d
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
|
|
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 5.2-9.20150115git28de7d
|
|
- Rebuilt for GCC 5 C++11 ABI change
|
|
|
|
* Mon Feb 23 2015 Antonio Trande <sagitter@fedoraproject.org> - 5.2-8.20150115git28de7d
|
|
- Fixed Keywords key in .desktop file
|
|
|
|
* Thu Jan 15 2015 Antonio Trande <sagitter@fedoraproject.org> - 5.2-7.20150115git28de7d
|
|
- Included files proposed in bz#1182409
|
|
|
|
* Thu Jan 15 2015 Antonio Trande <sagitter@fedoraproject.org> - 5.2-6.20150115git28de7d
|
|
- Update to commit 28de7d
|
|
- Package appdata and SVG files
|
|
- data sub-package incorporated in the main one
|
|
- Used the new macro %%license
|
|
|
|
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-5
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
|
|
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.2-4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
|
* Wed Nov 13 2013 Antonio Trande <sagitter@fedoraproject.org> 5.2-3
|
|
- Data files splitted into a noarch -data subpackage
|
|
- .h/.cpp files not packaged anymore
|
|
|
|
* Tue Nov 12 2013 Antonio Trande <sagitter@fedoraproject.org> 5.2-2
|
|
- Fix 'src/pointset.cpp' compilation error in EPEL
|
|
- Defined Qt3/Qt4 qmake
|
|
- Fix BR Qt4 for EPEL
|
|
- RPM_OPT_FLAGS fixed without patches
|
|
|
|
* Sun Nov 10 2013 Antonio Trande <sagitter@fedoraproject.org> 5.2-1
|
|
- First package
|