Skip to content

Conversation

@Vollstrecker
Copy link
Contributor

Hi,

i took the time to include some infrastructure to easier add stuff in contrib/ and added the contribs that were ignored atm.

By now they are not completely tested in the actions, but as I don't have much time the next 2 weeks, everything ready is here now.

What was done:

  • added ada
    including a complete compiler-toolchain as there's nothing suitable out there. There are approaches, but they only allowed static builds. This works atm. only with gnat as I don't know anything about ada and what compilers are available, hints are appreciated. Stuff like gprbuild are not considered as they have their own project files and don't support separated compile, link etc.
    Also the ada part doesn't have an option to install right now, as I just have no clue what is needed in the end. If someone really uses this: Tell me.

  • added blast
    blast was split into lib and the test-program, no real changes, just to be able to test linking against the library.

  • added infback9
    nothing to mention

  • added gvmat64
    that one is interesting as in cmake-4.1 they realized cl.exe from MSVC isn't able to assemble, they introduced a new policy CMP0194 so you can signalize that you handled that correctly. But it doesn't make any difference and there will be a warning on Win.

  • added iostream3
    nothing to mention

  • added puff
    another special thing. Running the test with the included zeros.raw fails on win with exit-code 2. Maybe someone needs to investigate what happens there.

  • added untgz
    nothing to mention

  • half-added testzlib
    that one is prepared to be included (just one line in contrib/CMakeLists.txt) but I didn't include it as it can be used, but I just didn't find out what to do with it.

What wasn't done:

  • iostream
    Seems like it's an older version of iostream3. If I'm wrong just tell me, if not, I guess we could just remove this and maybe rename iostream3 to iostream
  • iostream2
    Same reason and question as iostream
    -delphi
    I asked for some assistance on IRC and was told it would be superfluous as their standard-library already includes such a thing. I would need to do the same toolchain thing like for ada, so here also is the question if we should just drop it.
    -pascal
    Same as delphi, the toolchain could be almost reused, but it seems that it's more delphi without objects than pascal. The compiler refuses the compile it when not told to handle it as delphi code. A rewrite would be possible but as it also is handled in their STL this could also be dropped - I guess. Plus I tried to reach the author to clarify what is what (delphi/ and pascal/) and the mailbox is dead.
    -dotzlib
    The buildtools for dotnet just take the project and do some black-magic, build steps are not separable. If anyone uses this, the included project makes much more sense to use.

#1060 needs 2-3 lines tweaked to use the new contrib infrastructure.

@Vollstrecker
Copy link
Contributor Author

changed my mind about testzlib. Just because I don't know what to do with it doesn't mean noone else knows.

@madler
Copy link
Owner

madler commented Jan 12, 2026

Applied. Thank you.

@madler madler closed this Jan 12, 2026
@Vollstrecker Vollstrecker deleted the contribs branch January 12, 2026 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants