Bug 737401 - Review Request: saga - Geographic information system with an API for processing geodata
Summary: Review Request: saga - Geographic information system with an API for processi...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jerry James
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 478743 (view as bug list)
Depends On: 747849 767082 812137 830496
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-09-11 21:05 UTC by Volker Fröhlich
Modified: 2012-12-20 15:38 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-12-20 15:38:00 UTC
Type: ---
Embargoed:
loganjerry: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Volker Fröhlich 2011-09-11 21:05:43 UTC
Spec URL: http://www.geofrogger.net/review/saga.spec
SRPM URL: http://www.geofrogger.net/review/saga-2.0.7-1.fc15.src.rpm
Description:
SAGA is a geographic information system (GIS) with a special API
for geographic data processing. This API makes it easy to implement
new algorithms. The SAGA API supports grid data, vector data, and tables.

There is a stalled review for an older version: #478743

Comment 1 Ken Dreyer 2011-10-05 00:26:10 UTC
*** Bug 478743 has been marked as a duplicate of this bug. ***

Comment 2 Jerry James 2011-10-07 22:02:37 UTC
Since I started the original review, I guess I should see it through to the bitter end. :-)

I see a couple of problems in the build I just did.  First, configure says:

  checking for SQLFetch in -lodbc... no

which is wrong.  We do have SQLFetch in that library.  Checking further, I see this in config.log:

configure:15378: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic   conftest.c -lodbc ODBC \(libodbc\) library not found  >&5
gcc: error: ODBC: No such file or directory
gcc: error: \(libodbc\): No such file or directory
gcc: error: library: No such file or directory
gcc: error: not: No such file or directory
gcc: error: found: No such file or directory

That's because this line in configure.in has one too many commas:

AC_CHECK_LIB([odbc], [SQLFetch], ODBCFOUND=1,,[ODBC \(libodbc\) library not found])

Change the double-comma in front of the error message to a single comma, and all is well.

Second, saga-2.0.7-g2clib.patch is wrong, in two ways.  It is wrong, because it assumes that libgrib2c.a is available in /usr/lib64.  On 32-bit systems, it isn't; it is in /usr/lib.  Second, it is wrong because the -L flag tells the linker *a directory* in which to look for libraries, not the name of an actual library.  The end result is that the contents of libgrib2c.a are not in libio_grid_grib2.so.  Using readelf, you can see that libio_grid_grib2.so contains references to g2_free and g2_getfld, both of which are marked undefined.

To fix both problems, change the patch to add "-lgrib2c" to AM_LDFLAGS instead of the current "-L...".  The linker will use a static library to satisfy a link request such as this when it cannot find a shared library.

Things look pretty good in general, otherwise.  If you can get me a package that fixes those two problems, I'll do a full review on it.

Comment 3 Volker Fröhlich 2011-10-09 13:30:43 UTC
Thank you for your help, Jerry!

I solved the ODBC issue and reported it as well.

I also did what you suggested for g2clib. The problem here is, g2clib is not compiled with fPIC, which seems to break compiling Saga on 64 bit systems.

I made a build with fPIC on my machine and it seems to work fine now. I asked Orion, who is the maintainer, if he would mind to build the package with fPIC.

Comment 4 Volker Fröhlich 2011-10-10 15:01:14 UTC
Orion was so kind to rebuild the package with fpic.

Comment 5 Jerry James 2011-10-11 00:52:33 UTC
Great.  I pulled his new build of g2clib from koji and did the two fixes I requested by hand for this review.

+: OK
-: must be fixed
=: should be fixed (at your discretion)
N: not applicable

MUST:
[=] rpmlint output:
saga.x86_64: W: spelling-error Summary(en_US) geodata -> gestate
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_gtk2u_richtext-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_gtk2u_aui-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_gtk2u_xrc-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_gtk2u_qa-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_gtk2u_html-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_gtk2u_adv-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_baseu_xml-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libwx_baseu_net-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_gdi-2.0.7.so /usr/lib64/libhpdf-2.1.0.so
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_gtk2u_richtext-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_gtk2u_aui-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_gtk2u_xrc-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_gtk2u_qa-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_gtk2u_html-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_gtk2u_adv-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libwx_baseu_net-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_api-2.0.7.so /usr/lib64/libhpdf-2.1.0.so
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_richtext-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_aui-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_xrc-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_qa-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_html-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_adv-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_gtk2u_core-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_baseu_xml-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_baseu_net-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libwx_baseu-2.8.so.0
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /usr/lib64/libhpdf-2.1.0.so
saga.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libsaga_odbc-2.0.7.so /lib64/libm.so.6
saga-python.x86_64: W: no-documentation
saga-devel.x86_64: W: no-documentation
saga.spec:9: W: macro-in-comment %{name}
saga.spec:9: W: macro-in-comment %{name}
saga.spec:9: W: macro-in-comment %{version}
saga.spec: W: invalid-url Source0: saga_2.0.7-fedora.tar.gz
3 packages and 1 specfiles checked; 0 errors, 36 warnings.

The spelling warning is bogus.  Can you do anything about this unused direct shared library dependencies?  They should be dropped from the respective library link commands, if possible.  Also, please fix the 3 macro-in-comment warnings in the spec file by doubling the % characters on that line.

[+] follows package naming guidelines
[+] spec file base name matches package name
[+] package meets the packaging guidelines
[+] package uses a Fedora approved license
[-] license field matches the actual license: licensecheck shows the following:
    there are some MIT-licensed files in src/modules_io/esri_e00/io_esri_e00/e00compr;
    some files are GPLv2, not GPLv2+, such as src/modules_projection/pj_proj4/pj_proj4/crs_base.h;
    there is a BSD-licensed file: src/saga_core/saga_odbc/otlv4.h; and
    there are wxWindows licensed files in src/saga_core/saga_gui/wx/propgrid.
[+] license file is included in %doc
[+] spec file is in American English
[+] spec file is legible
[+] sources match upstream: no, but that is intentional, since non-free sources had to be removed.  The sources otherwise match, according to diff.
[+] package builds on at least one primary arch (tried x86_64)
[N] appropriate use of ExcludeArch
[+] all build requirements in BuildRequires
[N] spec file handles locales properly
[+] ldconfig in %post and %postun
[-] no bundled copies of system libraries: there are some.  This should not be considered an exhaustive list:
    E00compr library (http://avce00.maptools.org/e00compr/e00compr.html) is in src/modules_io/esri_e00/io_esri_e00/e00compr;
    dxflib (http://www.ribbonsoft.com/dxflib.html) is in src/modules_io/shapes/io_shapes_dxf/dxflib;
    otl (http://otl.sourceforge.net/) is in src/saga_core/saga_odbc;
    wxPropertyGrid (http://wxpropgrid.sourceforge.net/) is in src/saga_core/saga_gui/wx/propgrid
[N] no relocatable packages
[-] package owns all directories that it creates: %{_includedir}/saga is not owned by any package
[+] no files listed twice in %files
[+] proper permissions on files
[+] consistent use of macros
[+] code or permissible content
[N] large documentation in -doc
[+] no runtime dependencies in %doc
[+] header files in -devel
[N] static libraries in -static
[+] .so in -devel
[+] -devel requires main package
[+] package contains no libtool archives
[+] package contains a desktop file, uses desktop-file-install
[+] package does not own files/dirs owned by other packages
[+] all filenames in UTF-8

SHOULD:
[N] query upstream for license text
[N] description and summary contains available translations
[+] package builds in mock: tried fedora-rawhide-i386
[+] package builds on all supported arches: tried i386 and x86_64
[+] package functions as described: minimal testing only
[+] sane scriptlets
[+] subpackages require the main package
[N] placement of pkgconfig files
[N] file dependencies versus package dependencies
[+] package contains man pages for binaries/scripts

Comment 6 Jerry James 2011-10-11 03:22:10 UTC
Oops, my mistake.  I kicked off a mock build for fedora-rawhide-i386 and forgot to go back and look at it.  The "package builds in mock" item above is actually a lie.  The mock build failed, like this:

/bin/sh ../../../../libtool --tag=CXX   --mode=compile g++ -DPACKAGE_NAME=\"saga
\" -DPACKAGE_TARNAME=\"saga\" -DPACKAGE_VERSION=\"2.0.7\" -DPACKAGE_STRING=\"sag
a\ 2.0.7\" -DPACKAGE_BUGREPORT=\"BUG-REPORT-ADDRESS\" -DPACKAGE_URL=\"\" -DPACKA
GE=\"saga\" -DVERSION=\"2.0.7\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS
_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H
=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT
_OBJDIR=\".libs/\" -DSTDC_HEADERS=1 -DHAVE_FLOAT_H=1 -DHAVE_MALLOC_H=1 -DHAVE_ME
MORY_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DHAVE_WCHAR_H=1 
-DHAVE__BOOL=1 -DHAVE_STDBOOL_H=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLI
B_H=1 -DHAVE_REALLOC=1 -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_VPRINTF=1 -DHAVE
_MEMMOVE=1 -DHAVE_MEMSET=1 -DHAVE_MODF=1 -DHAVE_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_
STRERROR=1 -DHAVE_STRRCHR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_PYTHON=\"2.7\
" -I.    -fPIC -I../../../../src/saga_core -D_SAGA_LINUX -D_TYPEDEF_BYTE -D_TYPE
DEF_WORD -D_SAGA_UNICODE  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexception
s -fstack-protector --param=ssp-buffer-size=4  -m32 -march=i686 -mtune=atom -fas
ynchronous-unwind-tables -c -o vigra_smoothing.lo vigra_smoothing.cpp
vigra_fft.cpp:390:2: warning: "/*" within comment [-Wcomment]
vigra_fft.cpp: In function 'bool Copy_ComplexGrid_SAGA_to_VIGRA(CSG_Grid&, CSG_G
rid&, vigra::FFTWComplexImage&, bool)':
vigra_fft.cpp:92:29: error: missing template arguments before '(' token
vigra_fft.cpp: In member function 'virtual bool CViGrA_FFT_Inverse::On_Execute()
':
vigra_fft.cpp:299:99: error: type/value mismatch at argument 1 in template param
eter list for 'template<class _Tp> struct std::multiplies'
vigra_fft.cpp:299:99: error:   expected a type, got 'FFTWComplex'
vigra_fft.cpp: In member function 'virtual bool CViGrA_FFT_Filter::On_Execute()'
:
vigra_fft.cpp:522:99: error: type/value mismatch at argument 1 in template param
eter list for 'template<class _Tp> struct std::multiplies'
vigra_fft.cpp:522:99: error:   expected a type, got 'FFTWComplex'
make[4]: *** [vigra_fft.lo] Error 1
make[4]: *** Waiting for unfinished jobs....


Could this be due to the recent fftw update?  I don't have this problem building on Fedora 15.

Comment 7 Volker Fröhlich 2011-11-01 22:17:08 UTC
And lovely "not free for commercial use"-GPC polygon clipper is in it as well, sigh!

At least I managed to use system-wide e00compr and wxpropgrid so far.

Comment 8 Volker Fröhlich 2011-11-24 19:08:46 UTC
Upstream has replaced the GPC polygon clipper with a free alternative, I'll also have to package.

Spot regards Dxflib not free, so we'll keep it excluded. Upstream might also consider to replace Firelib.

Comment 9 Jerry James 2011-11-24 21:02:56 UTC
Thanks for the update.  If you'd like to swap some more reviews to get other components into Fedora, I'd be happy to do so.

Comment 10 Volker Fröhlich 2011-12-13 07:46:09 UTC
wxpropgrid is on review:

https://bugzilla.redhat.com/show_bug.cgi?id=767082

Comment 11 Volker Fröhlich 2012-01-23 16:45:07 UTC
I patched Saga to use the system-wide wxpropgrid, but the patch is not ready for upstream so far.

Only polyclipping should be left now.

Comment 12 Jerry James 2012-01-23 22:33:59 UTC
Great!  Thanks for posting updates.

Comment 13 Volker Fröhlich 2012-03-29 20:30:06 UTC
I created a CMake file for Polyclipping. Polyclipping had no build system so far and the author said, he'd integrate it, but had no time himself. Polyclipping will therefore be a shared library.

I recently submitted the file and am waiting for his response.

Comment 14 Volker Fröhlich 2012-04-12 20:43:46 UTC
I already managed to build a working SAGA with all system-wide libraries. I'll now try to get those changes upstream and I'll have a look at the possible fftw issue.

Comment 15 Volker Fröhlich 2012-04-13 21:25:04 UTC
Rawhide seems to be broken right now, so I built in F17:

http://koji.fedoraproject.org/koji/taskinfo?taskID=3989496

Vigra 1.8 has a slight API change, that caused the problem.

Comment 16 Volker Fröhlich 2012-04-22 16:46:28 UTC
http://www.geofrogger.net/review/saga.spec
http://www.geofrogger.net/review/saga-2.0.8-2.fc16.src.rpm

Notice, this won't build in Rawhide because of issues with Proj 4.8 (see specfile) and because libpolyclipping is still on review.

Comment 17 Jerry James 2012-04-24 19:17:55 UTC
Great, you've done a lot of work on this.  Let me know when the Proj 4.8 issue is resolved and I'll give it a try.  In the meantime, here are a couple of comments from scanning the spec file.

First, the dos2unix BR is usually unnecessary.  Most of the time, something like this will do the same job:

sed -i 's/\r//' AUTHORS

Second, you can't use the Provides filtering method you are using.  See https://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering#Usage for the reason why.  However, you can use RPM 4.9 filtering; see https://fedorahosted.org/fpc/ticket/76.  In your case, you can replace the filter statements with this (just before %prep):

%global __provides_exclude_from ^%{python_sitearch}/.*\\.so$

Comment 18 Volker Fröhlich 2012-05-11 20:05:11 UTC
Frank Warmerdam, one of the Proj developers, said, we should just install projects.h in 4.8, if it causes us any trouble. He's aware of the problem and seeking a solution.

I'll post a new package as soon as I can.

Comment 19 Volker Fröhlich 2012-10-07 14:33:26 UTC
The proj issue is solved. I also followed your two suggestions.

http://www.geofrogger.net/review/saga.spec
http://www.geofrogger.net/review/saga-2.0.8-3.fc16.src.rpm

Comment 20 Jerry James 2012-10-08 19:49:28 UTC
Building with mock against Rawhide RPMs still fails with proj errors.  The version currently in Rawhide is 4.8.0-3.  What version fixes the problem, and when do you expect it to be available in Rawhide?

Comment 21 Volker Fröhlich 2012-10-09 09:04:38 UTC
Sorry, that was my mistake! I uploaded a spec file that had a draft patch to work around the proj problem. I removed it and it's building fine now:

http://www.geofrogger.net/review/saga.spec
http://www.geofrogger.net/review/saga-2.0.8-4.fc16.src.rpm

http://koji.fedoraproject.org/koji/taskinfo?taskID=4573430

Comment 22 Volker Fröhlich 2012-10-18 15:41:30 UTC
Just a friendly reminder

Comment 23 Jerry James 2012-10-18 17:19:30 UTC
Thanks for the reminder, Volker.  Life is busy and stuff slides off of my radar.  It's been so long, and there have been so many changes, that I'm going to do another full review.

Executive summary of everything below:
(1) Change %{?isa} to %{?_isa} everywhere in the spec file.
(2) Determine the effect on the license of these files:
    (a) src/saga_core/saga_odbc/otlv4.h (ISC license, shipped in -devel)
    (b) src/modules_projection/pj_proj4/pj_proj4/MLB_Interface.h (GPL v2, no
        "or any later version" clause).
(3) Document the license breakdown in a comment just above the License tag.
(4) Convert % to %% on line 9 of the spec file (macros in comments).
(5) The unused direct shared library dependencies can be fixed by linking with
    -Wl,--as-needed.  However, libtool likes to push all -W options, including
    this one, *after* the list of libraries to link, defeating its purpose.  I
    like to use this in my spec files, after running configure, to get around
    that problem and fix the rpath problem at the same time:

# Get rid of undesirable hardcoded rpaths; workaround libtool reordering
# -Wl,--as-needed after all the libraries.
sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
    -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
    -e 's|^LTCC="gcc"|LTCC="gcc -Wl,--as-needed"|' \
    -e 's|^CC="g++"|CC="g++ -Wl,--as-needed"|' \
    -i libtool


Package Review
==============

Key:
[x] = Pass
[!] = Fail
[-] = Not applicable
[?] = Not evaluated


===== MUST items =====

C/C++:
[x]: Header files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Rpath absent or only used for internal libs.
[!]: Development (unversioned) .so files in -devel subpackage, if present.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package contains no bundled libraries.
[x]: Changelog in prescribed format.
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Sources contain only permissible code or content.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package contains desktop file if it is a GUI application.
[x]: Package installs a %{name}.desktop using desktop-file-install if there is
     such a file.
[x]: Development files must be in a -devel package
[x]: Package requires other packages for directories it uses.
[x]: Package uses nothing in %doc for runtime.
[x]: Package is not known to require ExcludeArch.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[!]: Fully versioned dependency in subpackages, if present.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in %package
     devel, %package python
[x]: Package complies to the Packaging Guidelines
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[x]: Large documentation files are in a -doc subpackage, if required.
[x]: If (and only if) the source package includes the text of the license(s)
     in its own file, then that file, containing the text of the license(s)
     for the package is included in %doc.
[!]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "ISC", "GPL (v2 or later)", "LGPL", "GPL (v2)", "Unknown or generated". 5
     files have unknown license.
[x]: License file installed when any subpackage combination is installed.
[x]: Package consistently uses macro is (instead of hard-coded directory
     names).
[!]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.
[x]: Package is named using only allowed ASCII characters.
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
     Note: Package contains no Conflicts: tag(s)
[x]: Package do not use a name that already exist
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package installs properly.
[x]: Package is not relocatable.
[x]: Requires correct, justified where necessary.
[x]: CheckResultdir
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see below).
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file is legible and written in American English.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: Package contains systemd file(s) if in need.
[x]: File names are valid UTF-8.
[x]: Useful -debuginfo package or justification otherwise.

Python:
[x]: Package contains BR: python2-devel or python3-devel

===== SHOULD items =====

Generic:
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[-]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Final provides and requires are sane (rpm -q --provides and rpm -q
     --requires).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: Scriptlets must be sane, if used.
[x]: SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[!]: SourceX / PatchY prefixed with %{name}.
     Note: Patch1 (0001-Adjust-grid_gridding-to-use-qhull.patch) Patch2 (0002
     -Remove-references-to-libfire.patch) Patch6 (0006-Use-debian-version-of-
     grib2.patch)
[x]: SourceX is a working URL.
[x]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[!]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Spec use %global instead of %define.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see below).
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: saga-2.0.8-4.fc19.i686.rpm
          saga-2.0.8-4.fc19.src.rpm
          saga-debuginfo-2.0.8-4.fc19.i686.rpm
          saga-python-2.0.8-4.fc19.i686.rpm
          saga-devel-2.0.8-4.fc19.i686.rpm
saga.i686: W: spelling-error Summary(en_US) geodata -> geodetic
saga.src: W: spelling-error Summary(en_US) geodata -> geodetic
saga.src: W: strange-permission saga_tarball.sh 0755L
saga.src:9: W: macro-in-comment %{name}
saga.src:9: W: macro-in-comment %{name}
saga.src:9: W: macro-in-comment %{version}
saga.src: W: invalid-url Source0: saga_2.0.8-fedora.tar.gz
saga-python.i686: W: no-documentation
saga-devel.i686: W: no-documentation
5 packages and 0 specfiles checked; 0 errors, 9 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint saga saga-debuginfo saga-devel saga-python
saga.i686: W: spelling-error Summary(en_US) geodata -> geodetic
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_richtext-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_aui-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_xrc-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_qa-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_html-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_adv-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_gtk2u_core-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libwx_baseu_net-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_api-2.0.8.so /lib/libhpdf-2.2.1.so
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_richtext-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_aui-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_xrc-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_qa-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_html-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_adv-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_gtk2u_core-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_baseu_xml-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_baseu_net-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libwx_baseu-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libhpdf-2.2.1.so
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libpolyclipping.so.2
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_odbc-2.0.8.so /lib/libm.so.6
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_gtk2u_richtext-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_gtk2u_aui-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_gtk2u_xrc-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_gtk2u_qa-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_gtk2u_html-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_gtk2u_adv-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_baseu_xml-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libwx_baseu_net-2.8.so.0
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libhpdf-2.2.1.so
saga.i686: W: unused-direct-shlib-dependency /usr/lib/libsaga_gdi-2.0.8.so /lib/libpolyclipping.so.2
saga-devel.i686: W: no-documentation
saga-python.i686: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 35 warnings.
# echo 'rpmlint-done:'



Requires
--------
saga-2.0.8-4.fc19.i686.rpm (rpmlib, GLIBC filtered):
    
    /sbin/ldconfig  
    libc.so.6  
    libfftw3.so.3  
    libgcc_s.so.1  
    libgcc_s.so.1(GCC_3.0)  
    libgcc_s.so.1(GCC_4.0.0)  
    libgdal.so.1  
    libhpdf-2.2.1.so  
    libjasper.so.1  
    libm.so.6  
    libodbc.so.2  
    libpolyclipping.so.2  
    libproj.so.0  
    libpthread.so.0  
    libqhull.so.5  
    libsaga_api-2.0.8.so  
    libsaga_gdi-2.0.8.so  
    libsaga_odbc-2.0.8.so  
    libstdc++.so.6  
    libstdc++.so.6(CXXABI_1.3)  
    libstdc++.so.6(CXXABI_1.3.1)  
    libvigraimpex.so.4  
    libwx_baseu-2.8.so.0  
    libwx_baseu-2.8.so.0(WXU_2.8)  
    libwx_baseu_net-2.8.so.0  
    libwx_baseu_net-2.8.so.0(WXU_2.8)  
    libwx_baseu_xml-2.8.so.0  
    libwx_baseu_xml-2.8.so.0(WXU_2.8)  
    libwx_gtk2u_adv-2.8.so.0  
    libwx_gtk2u_adv-2.8.so.0(WXU_2.8)  
    libwx_gtk2u_aui-2.8.so.0  
    libwx_gtk2u_aui-2.8.so.0(WXU_2.8)  
    libwx_gtk2u_core-2.8.so.0  
    libwx_gtk2u_core-2.8.so.0(WXU_2.8)  
    libwx_gtk2u_html-2.8.so.0  
    libwx_gtk2u_html-2.8.so.0(WXU_2.8)  
    libwx_gtk2u_qa-2.8.so.0  
    libwx_gtk2u_richtext-2.8.so.0  
    libwx_gtk2u_xrc-2.8.so.0  
    libwxcode_gtk2u_propgrid-2.8.so.0  
    rtld(GNU_HASH)  

saga-debuginfo-2.0.8-4.fc19.i686.rpm (rpmlib, GLIBC filtered):
    

saga-python-2.0.8-4.fc19.i686.rpm (rpmlib, GLIBC filtered):
    
    libc.so.6  
    libgcc_s.so.1  
    libgcc_s.so.1(GCC_3.0)  
    libhpdf-2.2.1.so  
    libm.so.6  
    libpolyclipping.so.2  
    libsaga_api-2.0.8.so  
    libstdc++.so.6  
    libstdc++.so.6(CXXABI_1.3)  
    libwx_baseu-2.8.so.0  
    libwx_baseu_net-2.8.so.0  
    libwx_baseu_xml-2.8.so.0  
    libwx_gtk2u_adv-2.8.so.0  
    libwx_gtk2u_aui-2.8.so.0  
    libwx_gtk2u_core-2.8.so.0  
    libwx_gtk2u_html-2.8.so.0  
    libwx_gtk2u_qa-2.8.so.0  
    libwx_gtk2u_richtext-2.8.so.0  
    libwx_gtk2u_xrc-2.8.so.0  
    python(abi) = 2.7
    rtld(GNU_HASH)  
    saga = 2.0.8-4.fc19

saga-devel-2.0.8-4.fc19.i686.rpm (rpmlib, GLIBC filtered):
    
    saga = 2.0.8-4.fc19



Provides
--------
saga-2.0.8-4.fc19.i686.rpm:
    
    libcontrib_a_perego.so  
    libdocs_html.so  
    libdocs_pdf.so  
    libgarden_3d_viewer.so  
    libgarden_webservices.so  
    libgeostatistics_grid.so  
    libgeostatistics_kriging.so  
    libgeostatistics_points.so  
    libgeostatistics_regression.so  
    libgrid_analysis.so  
    libgrid_calculus.so  
    libgrid_calculus_bsl.so  
    libgrid_filter.so  
    libgrid_gridding.so  
    libgrid_spline.so  
    libgrid_tools.so  
    libgrid_visualisation.so  
    libihacres.so  
    libimagery_classification.so  
    libimagery_rga.so  
    libimagery_segmentation.so  
    libimagery_tools.so  
    libio_esri_e00.so  
    libio_gdal.so  
    libio_gps.so  
    libio_grid.so  
    libio_grid_grib2.so  
    libio_grid_image.so  
    libio_odbc.so  
    libio_shapes.so  
    libio_table.so  
    liblectures_introduction.so  
    libpj_georeference.so  
    libpj_proj4.so  
    libpointcloud_tools.so  
    libpointcloud_viewer.so  
    librecreations_fractals.so  
    librecreations_games.so  
    libsaga_api-2.0.8.so  
    libsaga_gdi-2.0.8.so  
    libsaga_odbc-2.0.8.so  
    libshapes_grid.so  
    libshapes_lines.so  
    libshapes_points.so  
    libshapes_polygons.so  
    libshapes_tools.so  
    libsim_cellular_automata.so  
    libsim_ecosystems_hugget.so  
    libsim_hydrology.so  
    libta_channels.so  
    libta_compound.so  
    libta_hydrology.so  
    libta_lighting.so  
    libta_morphometry.so  
    libta_preprocessor.so  
    libta_profiles.so  
    libtable_calculus.so  
    libtable_tools.so  
    libtin_tools.so  
    libtin_viewer.so  
    libtransect.so  
    libvigra.so  
    saga = 2.0.8-4.fc19
    saga(x86-32) = 2.0.8-4.fc19

saga-debuginfo-2.0.8-4.fc19.i686.rpm:
    
    saga-debuginfo = 2.0.8-4.fc19
    saga-debuginfo(x86-32) = 2.0.8-4.fc19

saga-python-2.0.8-4.fc19.i686.rpm:
    
    saga-python = 2.0.8-4.fc19
    saga-python(x86-32) = 2.0.8-4.fc19

saga-devel-2.0.8-4.fc19.i686.rpm:
    
    saga-devel = 2.0.8-4.fc19
    saga-devel(x86-32) = 2.0.8-4.fc19



Unversioned so-files
--------------------
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/libsaga_api-2.0.8.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/libsaga_gdi-2.0.8.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/libsaga_odbc-2.0.8.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libcontrib_a_perego.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libdocs_html.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libdocs_pdf.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgarden_3d_viewer.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgarden_webservices.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgeostatistics_grid.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgeostatistics_kriging.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgeostatistics_points.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgeostatistics_regression.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_analysis.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_calculus.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_calculus_bsl.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_filter.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_gridding.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_spline.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_tools.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libgrid_visualisation.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libihacres.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libimagery_classification.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libimagery_rga.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libimagery_segmentation.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libimagery_tools.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_esri_e00.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_gdal.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_gps.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_grid.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_grid_grib2.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_grid_image.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_odbc.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_shapes.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libio_table.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/liblectures_introduction.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libpj_georeference.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libpj_proj4.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libpointcloud_tools.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libpointcloud_viewer.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/librecreations_fractals.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/librecreations_games.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libshapes_grid.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libshapes_lines.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libshapes_points.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libshapes_polygons.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libshapes_tools.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libsim_cellular_automata.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libsim_ecosystems_hugget.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libsim_hydrology.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_channels.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_compound.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_hydrology.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_lighting.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_morphometry.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_preprocessor.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libta_profiles.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libtable_calculus.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libtable_tools.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libtin_tools.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libtin_viewer.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libtransect.so
saga-2.0.8-4.fc19.i686.rpm: /usr/lib/saga/libvigra.so
saga-python-2.0.8-4.fc19.i686.rpm: /usr/lib/python2.7/site-packages/_saga_api-2.0.8.so
saga-python-2.0.8-4.fc19.i686.rpm: /usr/lib/python2.7/site-packages/_saga_api.so

MD5-sum check
-------------


Generated by fedora-review 0.3.0 (c78e275) last change: 2012-09-24
Buildroot used: fedora-rawhide-i386
Command line :/usr/bin/fedora-review -b 737401 -m fedora-rawhide-i386

Comment 25 Jerry James 2012-11-01 02:23:17 UTC
It's about time for this package to see the light of day, don't you think? :-)  This package is APPROVED.

Comment 26 Volker Fröhlich 2012-11-01 10:31:38 UTC
Hooray, thanks a lot for your patience!

Comment 27 Volker Fröhlich 2012-11-01 10:33:56 UTC
New Package SCM Request
=======================
Package Name: saga
Short Description: Geographic information system with an API for processing geodata
Owners: volter
Branches: f17 f18
InitialCC:

Comment 28 Gwyn Ciesla 2012-11-01 10:51:00 UTC
Git done (by process-git-requests).

Comment 29 Fedora Update System 2012-11-01 23:47:23 UTC
saga-2.0.8-5.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/saga-2.0.8-5.fc17

Comment 30 Fedora Update System 2012-11-01 23:47:42 UTC
saga-2.0.8-5.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/saga-2.0.8-5.fc18

Comment 31 Fedora Update System 2012-11-02 18:44:26 UTC
saga-2.0.8-5.fc18 has been pushed to the Fedora 18 testing repository.

Comment 32 Fedora Update System 2012-12-20 15:38:02 UTC
saga-2.0.8-5.fc17 has been pushed to the Fedora 17 stable repository.


Note You need to log in before you can comment on or make changes to this bug.