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

dh_makeshlibs does not generate version info for some packages



Hello,

I asked the following question on stackoverflow:

https://stackoverflow.com/questions/60288751/debuild-dependencies-set-but-without-version

As I wrote in this post I have custom package
(zs-boost_1.71.0_armhf.deb) that install libraries to /opt/deps (which
is not a big problem since we install on BeagleBone with custom image
on SD-card, also because of few exotic requirements it is a
necessity). I'm trying to build yet another package using libraries
from aforementioned  package. I put in debian/control (among other
stanzas) the following:

Depends: ${shlibs:Depends}, ${misc:Depends}

Package is built using:

debuild -b -us -uc -aarmhf

but resulting deb file lacks version information for zs-boost package
even though (seemingly correct) version information is provided for
e.g. libc6 package. Generated 'deb' package contains the following in
its debian/control:

Depends: libc6 (>= 2.9), libssl1.1 (>= 1.1.0), libuuid1 (>= 2.16),
zs-boost, zs-gcc9, init-system-helpers (>= 1.18~)

and file debian/package.substvars contains:

shlibs:Depends=libc6 (>= 2.9), libssl1.1 (>= 1.1.0), libuuid1 (>=
2.16), zs-boost, zs-gcc9

So I tried to override execution of 'dh_makeshlibs' with:

override_dh_makeshlibs:
    dh_makeshlibs -V

but it changes nothing. I also tried to run "dh_makeshlibs -V -v", but
the only thing it did (and it promises logging  was removing file
debian/package/DEBIAN/shlibs, which, curiously enough, does not exist
- as far as I know it there in the first place.

I don't understand how it is possible that:
1. there is no debian/package/DEBIAN/shlibs file, as it seems that
substvars is build from this file, and substvars is there and seems
almost correct
2. packages, even though identified correctly, lack version
information even with "-V" switch

Is it possible that version number is somehow taken from
"debian/control" "Source" section, which is severly lacking in my case
(there is basically "Source" and "Maintainer" there)? But how is it
possible if version is declared in changelog and not in debian/source?

Also note that package can be installed, removed, reconfigured and so
on and works as long as packages versions are equal to expected ones.

Any help will be greatly appreciated.
-- 
Jędrzej Dudkiewicz

I really hate this damn machine, I wish that they would sell it.
It never does just what I want, but only what I tell it.


Reply to: