Jean-François Mertens wrote:
> Update of /cvsroot/fink/dists/10.4/unstable/crypto/finkinfo
> In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv15478
> 
> Modified Files:
>       libmd.info 
> Added Files:
>       openssl-0.9.8k.info 
> Log Message:
> Update of openssl.
> Also, hopefully correct (and long overdue..) fix for case-insensitive build- 
> and/or install-dirs.

As complaints to the fink-beginners group show, this fix was not correct.

The install target tries to create a symlink MD5.3->md5.3, and make 
crashes (silently, as it is written) with the error "too many levels of 
symbolic links". The man file md5.3 is not the only one for which this 
happens, but it is the only one where this shows afterwards. There are 
also hmac.3, mdc2.3, pem.3, rc4.3, where the same thing happens, and 
which are not present in the installed package, except as broken symlinks.

[]
>  make install INSTALL_PREFIX=%d MANDIR=%p/share/man
>  ### special care for case-insensitive systems _ to get same deb everywhere
>  p=`readlink -f %i/share/man/man3`
>  for f in `find $p -type l`; do \
>       g=`readlink -f $f`
>       fl=`tr '[:upper:]' '[:lower:]'<<<"$f"`
>       gl=`tr '[:upper:]' '[:lower:]'<<<"$g"`
>       if [ "$fl" = "$gl" ] ; then /bin/rm $f ; fi
>  done
>  ## There remain symlinks BN_print.3 -> BN_bn2bin.3 and bn_print.3 -> 
> bn_internal.3, we rename the latter.
>  rm -f %i/share/man/man3/BN_print.3 %i/share/man/man3/bn_print.3 || true
>  ln -fs BN_bn2bin.3 %i/share/man/man3/BN_print.3
>  ln -fs bn_internal.3 %i/share/man/man3/_bn_print.3
>  ### for comptibility with libmd (don't know how to set up 
> update-alternatives with original capitalisation)
>  mv %i/share/man/man3/md5.3 %i/share/man/man3/MD5.3
>  for i in 2 4 5; do
>       mv %i/share/man/man3/MD$i.3 %i/share/man/man3/md$i.3.%N098
>  done

A simpler fix is to tell the Makefile that on darwin we treat the file 
system as case-insensitive (even when it is case-sensitive). The 
Makefile has code for this situation; it only needs to be told that 
darwin exists, too:

# diff -U1 Makefile~ Makefile
--- Makefile~   2009-03-25 14:11:43.000000000 +0100
+++ Makefile    2009-04-19 12:40:21.000000000 +0200
@@ -688,6 +688,6 @@
        here="`pwd`"; \
-       filecase=; \
-       if [ "$(PLATFORM)" = "DJGPP" -o "$(PLATFORM)" = "Cygwin" -o 
"$(PLATFORM)" = "mingw" ]; then \
-               filecase=-i; \
-       fi; \
+       case "$(PLATFORM)" in \
+               DJGPP|Cygwin|mingw|darwin*) filecase=-i ;; \
+               *) filecase= ;; \
+       esac; \
        set -e; for i in doc/apps/*.pod; do \


I am not sure about that "compatibility with libmd" stuff. What is the 
story behind this? Is this still an issue? I think libmd renames its man 
files as md5.3.libmd etc, so there is no conflict.

-- 
Martin




------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel

Reply via email to