AmigaLabs / clib4

Clib4 for AmigaOS4
Other
14 stars 7 forks source link

Version of clib4.library #167

Closed 3246251196 closed 7 months ago

3246251196 commented 7 months ago

We should probably discuss how to version this library going forward. The good thing is that this shared library can now be distributed in the PWD of the program and it will load it. In the case that it is not found I am seeing:

Cannot open clib4.library 1.0.0

This can be a little confusing.

When I did copy over the relevant shared library I see (version file full)

clib4.library 1.0 (27/09/2023)

Just suggesting a discussion on this.

afxgroup commented 7 months ago

No problem about discussions howerver this is a classic OS4 library and like any other libraries is opened only using version. And the only additional check you can do is the revision. So I don't know what do you suggest.

3246251196 commented 7 months ago

I can see in the future that clib4.library may have to bundled into - for example - game ports. There maybe many ports or programs using it. The difference between clib4.library and newlib.library is that the latter hardly ever changes and people get it installed automatically on their machines.

For me, it would just be useful for version to display something like the smaller hashID within the version string. But, I am not fully sure and it would be good topic to discuss in one of our upcoming sessions.

@walkero-gr @migthymax @josefwegner

walkero-gr commented 7 months ago

@3246251196 We had already a discussion on that. The version will be set during a new release, but this remains to be implemented, and I volunteered to do it. How it will work.

When we create a new release tag at the repository, the code in the master branch is compiled and a new release is created using the GitHub actions. The release archive is attached automatically in that release on GitHub and a Ubuntu archive also is upload to afxgroup's repository. This process is ready and works.

What I need to implement is the version and the date of compilation be used to mark the library. This is not difficult and needs some changes in the code to take those values when the makefile is executed. This way the version will be the git tag that we create.

Feel free to let me know about any objection or ideas on the above plan.