On Wed, 2006-11-22 at 14:50 -0700, Orion Poplawski wrote:
octave defines an API version in:
octave-2.9.9/src/version.h: #define OCTAVE_API_VERSION "api-v22"
Modules compiled against one version will not load in another. I'd like to get this put into the rpms like:
Provides: octave(api) = api-v22
This can be done automatically on the module side with something like:
Requires: octave(api) = %(octave-config -p API_VERSION)
But, how to extract this automatically from src/version.h in the octave package itself?
One KISS way to handle this is to just hardcode the API version in a macro in the octave specfile, bump it between package versions as appropriate, and add a test in %check which will cause the octave package build to fail if you forgot to bring the hardcoded value up to date with the sources when updating the package.
For a concrete example, see %{apiver} in the FE vdr package.