besser82 / libxcrypt

Extended crypt library for descrypt, md5crypt, bcrypt, and others
GNU Lesser General Public License v2.1
189 stars 52 forks source link

Fix circular dependencies #187

Open haampie opened 3 months ago

haampie commented 3 months ago

This makes it annoying to distribute binaries (when not cross compiling).

To distribute perl binaries, you have to ensure it does not link to glibc's libcrypt, since that may not exist on other systems, so it's best to build libxcrypt and distribute together...

But to configure libxcrypt, you need perl 5.14 with open.pm, which is not available on RHEL and derivatives by default, and you may not have access to yum install perl-open.

So without root access, you have to bootstrap a minimal perl yourself to configure libxcrypt, so you can build perl with crypt support.

The latter is not satisfactory cause it's overly complex, and the bootstrap perl won't be a deterministic build (it may or may not link against glibcs libcrypt), and cannot be distributed itself.

Would it be possible to drop the build dependency on perl in favor of something that does not depend on libcrypt?