I'm building OpenSSL 0.9.6 with shared libraries for Solaris, HP-UX,
IRIX, and Digital UNIX. HP-UX and IRIX are not currently supported so
we'll be adding support. A few questions though:
  1. Any reason libtool was not chosen?
  2. Looking at ./Configure, it's impossible to build shared
     libraries on systems whose C compiler doesn't have a separate
     flag for generating PIC code. I'm speaking of the following
     snippet in ./Configure:
        # You will find shlib_mark1 and shlib_mark2 explained in Makefile.org
        my $shared_mark1 = "";
        my $shared_mark2 = "";
        if ($shared_cflag ne "")
                {
                $cflags = "$shared_cflag $cflags";
                if (!$no_shared)
                        {
                        $shared_mark1 = ".shlib-clean.";
                        $shared_mark2 = ".shlib.";
                        }
                }

     On IRIX and Digital UNIX, the vendor C compilers do not
     need a flag to generate PIC code. I think it would be
     better if the first if was:
        if ($shared_target ne "")
  3. The following code from Makefile.org does not work correctly to
     install a shared library (tested under Solaris 8):
        install: all install_docs
        ...
        @for i in $(LIBS) ;\
        do \
                if [ -f "$$i" ]; then \
                (       echo installing $$i; \
                        cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
                        $(RANLIB) $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i; \
                        chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \
                fi \
        done

     The problem is that if building shared libraries, LIBS will
     equal 'LIBS=libcrypto.so* libssl.so*'. RANLIB definitely should
     not be run against the shared library. Moreover, the
     solaris-shared target creates symbolic links for the shared
     library. Namely:
        $ ls -ld libssl*
        libssl.so.0.9.6
        libssl.so.0 -> libssl.so.0.9.6
        libssl.so -> libssl.so.0

     Because of this, the cp above will copy what the link points
     to, *not* the link itself.

-- 
albert chin ([EMAIL PROTECTED])
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to