Ferenc Wagner <wf...@niif.hu> writes: > I'm packaging software which consists of multiple libraries. I put > those libraries into various lib* binary packages with corresponding > lib*-dev packages. Some header files contained in the lib*-dev packages > include others in other lib*-dev packages, thus package dependencies > must be declared between them. Is there any tool to help me with this, > or should I create my own? I imagine something like ${misc:Depends}...
I put something together which might (after recoding in a safe manner) bu useful to others or be considered a horrible hack (which I'd like to know of). I invoke this script: #!/bin/sh -e cd debian pkgs=$(grep-dctrl -sPackage -n -FSection libdevel control) for p in $pkgs; do includes="$includes -I $p/usr/include" done for pkg in $pkgs; do { printf 'header:Depends=' for header in $(find "$pkg" -name "*.h"); do gcc -MM -MT '' -E $includes $header done | sed "s|^:||;s|^ *||;\|^$pkg/|d;s|/.*| (= \${binary:Version}),|" | sort -u | tr '\n' ' ' printf '\n' } >>"$pkg.substvars" done from debian/rules like override_dh_gencontrol: debian/check_header_deps dh_gencontrol and use Depends: ${header:Depends} in the control file. Works for me in the single case I tested. Do you think it's worth developing into some proper helper? -- Regards, Feri.