KhronosGroup / KhronosGroup/SPIRV-Tools

No library versions in soname

Open
#3,046 6 comments 0 reactions 0 assignees View on GitHub
dev:building version/release
Dominant language
C++
Stars
1.4k
Forks
709
Avg merge
1d 22h
Merged PRs (30d)
28

Description

In Unix world it's common for libraries to have version in soname (usually major and minor, major changes when there are backward incompatible ABI changes).

But current sonames for libraries don't have version info:
libSPIRV-Tools-link.so
libSPIRV-Tools-opt.so
libSPIRV-Tools-reduce.so
libSPIRV-Tools-shared.so
libSPIRV-Tools.so

From packaging POV (RPM in my case) .so files are usually symlinks to versioned library files and packaged to -devel (development) packages. Could be nice to see versioned library files/sonames and non-versioned -devel symlinks here too.

Contributor guide

Open the contributing guide

Research direction

Start by locating the build definitions for libSPIRV-Tools-link.so, libSPIRV-Tools-opt.so, libSPIRV-Tools-reduce.so, libSPIRV-Tools-shared.so, and libSPIRV-Tools.so. Check how their sonames and symlink/install outputs are currently produced, then verify that versioned runtime libraries and non-versioned development symlinks match the intended ABI and RPM packaging layout.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.