zlib icon indicating copy to clipboard operation
zlib copied to clipboard

Allow overriding cmake target names, install pdb symbols on msvc compiler

Open stevewgr opened this issue 1 year ago • 2 comments

Description

Note that this is useful in particular when you want to use consistent library names across all platforms, because on windows both shared and static libs use the same *.lib extension in comparison to unix systems where *.so is shared and *.a is static or on macos dylib for dynamic libraries. Surely we can also configure target properties and set OUTPUT_NAME, but that creates other questions about configurations that do not match with the target name. This is considered a bad practice and hence the approach of overriding the target names should also influence the output names and other configurations that may depend upon it.

Some examples below:

mkdir build && cd build
cmake .. -DZLIB_STATIC_PROJECT_NAME="zlib" -DZLIB_SHARED_PROJECT_NAME="zlib-shared"

Or say you would like to use the s postfix for the static library instead of lengthy static postfix:

cmake .. -DZLIB_STATIC_PROJECT_NAME="zlibs"

stevewgr avatar May 30 '24 19:05 stevewgr

@madler: Have you seen this PR?

Neustradamus avatar Aug 22 '24 12:08 Neustradamus

As there is now zlib and zlibstatic target, I think this one is obsolete now.

Vollstrecker avatar Oct 20 '24 08:10 Vollstrecker

See https://github.com/madler/zlib/pull/1027 .

madler avatar Feb 02 '25 21:02 madler