dougbinks / enkiTS

A permissively licensed C and C++ Task Scheduler for creating parallel programs. Requires C++11 support.
zlib License
1.66k stars 138 forks source link

Add soname to shared library #109

Closed bkmgit closed 7 months ago

bkmgit commented 7 months ago

Fixes https://github.com/dougbinks/enkiTS/issues/107

dougbinks commented 7 months ago

Once again thanks for the issue #107 and this PR.

I have tested the PR on a variety of platforms and it works, though the versioning information is not set on the Windows DLL (using versioned DLLs on Windows is complex so I'm don't see this as an issue).

I'm going to consider this a bit more before deciding whether to merge, as it means I have to maintain the version number in the cmakelists.txt file.

bkmgit commented 7 months ago

Thanks. It is possible to pull the version number from Git history whenever a new tag is made. Can update it to do that, if it will make maintenance easier, though would make the review a little more complicated.

dougbinks commented 7 months ago

So far the methods I've seen to pull version number from Git history are fairly complicated, which goes against the 'lighweight' style of enkiTS. So it's only worth adding if it's simple to do.

bkmgit commented 7 months ago

git describe will get version information. Can add a GitHub action that would update the CMakeLists.txt file or a plain text VERSION file when needed. If a plain text VERSION file is used, CMake can read the version number from this.

dougbinks commented 7 months ago

That sounds like a good idea. I'll have a go at doing that.