[racket-dev] Racket should install libracket3m-X.Y.Z.so as libracket3m.so.X.Y.Z

From: Juan Francisco Cantero Hurtado (iam at juanfra.info)
Date: Mon Sep 16 12:10:34 EDT 2013

On 09/11/13 10:42, Juan Francisco Cantero Hurtado wrote:
> The standard on modern unix systems is to name the shared libraries with
> this pattern: "lib" + name + ".so." + major version + "." + minor
> version. Racket uses libracket-5.3.6.so. It isn't correct.
>
> -rwxr-xr-x  1 root  wheel   9.0M Aug 17 04:28
> /usr/local/lib/libracket3m-5.3.6.so
> -rw-r--r--  1 root  wheel  14.3M Aug 17 04:28 /usr/local/lib/libracket3m.a
> -rw-r--r--  1 root  wheel   852B Aug 17 04:28 /usr/local/lib/libracket3m.la
> lrwxr-xr-x  1 root  wheel    20B Aug 17 05:51
> /usr/local/lib/libracket3m.so -> libracket3m-5.3.6.so
>
> Look some examples. libpng on OpenBSD:
>
> lrwxr-xr-x  1 root  wheel    10B Sep 10 19:30 /usr/local/lib/libpng.a ->
> libpng16.a
> -rw-r--r--  1 root  bin     720B Aug 17 02:22 /usr/local/lib/libpng.la
> lrwxr-xr-x  1 root  wheel    16B Sep 10 19:30
> /usr/local/lib/libpng.so.17.0 -> libpng16.so.17.0
> -rw-r--r--  1 root  bin     1.2M Aug 17 02:22 /usr/local/lib/libpng16.a
> -rw-r--r--  1 root  bin     730B Aug 17 02:22 /usr/local/lib/libpng16.la
> -rw-r--r--  1 root  bin     703K Aug 17 02:22
> /usr/local/lib/libpng16.so.17.0
>
> libarchive on Gentoo:
>
> lrwxrwxrwx 1 root root     20 May 10 09:12 /usr/lib/libarchive.so ->
> libarchive.so.13.1.2
> lrwxrwxrwx 1 root root     20 May 10 09:12 /usr/lib/libarchive.so.13 ->
> libarchive.so.13.1.2
> -rwxr-xr-x 1 root root 723968 May 10 09:12 /usr/lib/libarchive.so.13.1.2
>
>
> Also you should add some easy setting to change the suffix X.Y.Z of the
> lib. Some projects use variables in configure or the main makefile. The
> version of the libs is unrelated to the version of the software. On
> OpenBSD we change the numbers, so we can control when the dependencies
> require an update.
>

Any comment about this?. Basically, I need to rename 
libracket3m-5.3.6.so to libracket3m.so.0.0. I've searched where are the 
version numbers in the makefiles and configure but I've not found it.



Posted on the dev mailing list.