[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: upgrade orfeotoolbox to 5.0



Hi Bas,

On Sat, Sep 5, 2015 at 3:04 AM, Sebastiaan Couwenberg <sebastic@xs4all.nl> wrote:
Hi Rashad,

I've pushed some more changes to address some of the issues I
encountered. Comments about the packaging follow, not all of them have
been addressed yet.

debian/control:

 * I noticed that the Software Guide [1] includes OpenJPEG, but no
   build dependency for OpenJPEG was included for the package. I found
   the comments about that in the lintian-overrides, which are better
   suited for the README.source.

OpenJPEG sources was embedded inside OTB before there was GDAL driver for openjpeg. Now they were removed. I think Software Guide needs to be clear on this. I will check it and update back to list.
There is openjpeg dependency because the support is via GDAL and if you have gdal without openjpeg driver. the you need to have a dependency to openjpeg. I deactivated USE_OPENJPEG in debian/rules this as debian gis has GDAL with openjpeg


 * The Software Guide [1] also includes Mapnik, but no build dependency
   for Mapnik is included for the package either. Mapnik 3 doesn't
   appear supported yet.

Mapnik is still supported. But is used always never. I had deactivated it with OTB_USE_MAPNIK=OFF in debian/rules 

 * libotb provides itself, as does libotb-dev. These Provides can be
   dropped.

 * libotb has a hardcoded dependency on libgdal1h, this is no longer
   available in sid since gdal (1.11.2+dfsg-1). ${shlibs:Depends}
   should take care of the libgdal dependency using its symbols.

 * otb-bin{,-qt} should depend on libotb (= ${binary:Version}) because
   libotb doesn't use symbols. ${shlibs:Depends} now only includes
   "libotb" without a version.

[1]
https://www.orfeo-toolbox.org//SoftwareGuide/SoftwareGuidech2.html#TBL-1-1-


debian/rules:

 * The DIST variable is not used, and there is no build dependency on
   lsb-release. Good candidate for removal.

 * It's good practice to use dh_install --list-missing to spot any
   files that are built but not installed. The duplicate license file
   and pyc can be explicitly removed too or just ignored.


debian/libotb.install:

 * Why does it install usr/bin/otbTestDriver, isn't that better suited
   in otb-bin?

IIRC, /usr/bin/otbTestDriver is used by extenal project when calling find_package(OTB). So if someone install only libotb and creates a external project. This exeutable is required because cmake checks for it.


debian/otb-bin.install:

 * Why does it install usr/lib/libOTBCommandLine*.so.*, those libraries
   belongs in libotb. The ${shlibs:Depends} already take care of the
  dependency on libotb.

OTBCommandLine* are need if you want otbapplications. they are used for application launcher for parse, load parameters from commandline. As libotb should be just the core lib, I kept it in otb-bin. 

debian/otb-bin-qt.install:

 * Same as for otb-bin, the libraries belong in libotb. If you don't
   want to the qt dependencies on libotb, you should move the QtWidget
   library to libotb-qtwidget or some other libotb-qt package.

okay, I can move the *QtWidget*.so to libotb-qtwidget but it cannot be a dependecy to libotb.

I think maybe libs needs to be separated into more .install files . so there can be 
libotb-core 
libotb-commandline, 
libotb-qt,
libotb-dev
and a libotb-all

otb-bin-qt
otb-bin-commandline can install the respective binaries.

If okay; I will push changes next week.


I'll have a look at the lintian issues later this weekend.

Kind Regards,

Bas

--
 GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146  50D1 6750 F10A E88D 4AF1




--
Regards,
   Rashad

Reply to: