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

Re: [Help] strange 'missing-dependency-on-perlapi' lintian warning (Was: Bug#761134: libsbml5-perl: Depends on libperl5.18 but should be libperl5.20 now)



On Thu, Sep 11, 2014 at 09:45:07PM +0100, Daniel Lintott wrote:
> On 11/09/14 21:31, Andreas Tille wrote:
> > Hi,
> > 
> > I would like to upload libsbml5 but despite the fact that
> > ${perl:Depends} is specified and dh calls dh_perl automatically this
> > lintian error occures.  To enable easy inspection I have uploaded the
> > preliminary packages to
> > 
> >    https://people.debian.org/~tille/packages/libsmbl5/
> > 
> > Any help to fix this lintian problem is welcome

The package is installing files into 

/usr/lib/perl5/site_perl/5.20.0/x86_64-linux-gnu-thread-multi/

This is not the correct path to be installing perl XS modules[1]
(and never was; I can't see why this has changed from [2] though).
As a result dh_perl doesn't find the modules.

Instead, please install to the path printed by:

perl -MConfig -e 'print $Config{vendorarch}'

Something like the attached, completely untested patch might work.

Cheers,
Dominic.

[1] <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=748380>
[2] <https://packages.debian.org/sid/i386/libsbml5-perl/filelist>
--- src/bindings/perl/CMakeLists.txt	2014-04-09 07:22:46.000000000 +0000
+++ src/bindings/perl/CMakeLists.txt.new	2014-09-13 00:28:54.000000000 +0000
@@ -162,13 +162,13 @@
   string(REPLACE ";" "" PERL_VERSION ${PERL_VERSION})
   string(REPLACE "version=" "" PERL_VERSION ${PERL_VERSION})
   string(REPLACE " " "" PERL_VERSION ${PERL_VERSION})
-  execute_process(COMMAND "${PERL_EXECUTABLE}" -V:archname
-    OUTPUT_VARIABLE PERL_PLATFORM OUTPUT_STRIP_TRAILING_WHITESPACE)
-  string(REPLACE " " "" PERL_PLATFORM ${PERL_PLATFORM})
-  string(REPLACE "'" "" PERL_PLATFORM ${PERL_PLATFORM})
-  string(REPLACE ";" "" PERL_PLATFORM ${PERL_PLATFORM})
-  string(REPLACE "archname=" "" PERL_PLATFORM ${PERL_PLATFORM})
-  set(PERL_PACKAGE_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/perl5/site_perl/${PERL_VERSION}/${PERL_PLATFORM})
+  execute_process(COMMAND "${PERL_EXECUTABLE}" -V:vendorarch
+    OUTPUT_VARIABLE PERL_VENDORARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
+  string(REPLACE " " "" PERL_VENDORARCH ${PERL_VENDORARCH})
+  string(REPLACE "'" "" PERL_VENDORARCH ${PERL_VENDORARCH})
+  string(REPLACE ";" "" PERL_VENDORARCH ${PERL_VENDORARCH})
+  string(REPLACE "vendorarch=" "" PERL_VENDORARCH ${PERL_VENDOARCH})
+  set(PERL_PACKAGE_INSTALL_DIR ${PERL_VENDOARCH})
   set(PERL_PACKAGE_INSTALL_BIN_DIR ${PERL_PACKAGE_INSTALL_DIR}/auto/libSBML)
 else()
   set(PERL_PACKAGE_INSTALL_DIR ${MISC_PREFIX}bindings/perl)

Reply to: