On Sat, 4 Jan 2003, Nick Briggs via RT wrote:
[snip]
> # Place yourself outside of the OpenSSL source tree. In
> # this example, the environment variable OPENSSL_SOURCE
> # is assumed to contain the absolute OpenSSL source directory.
> mkdir -p objtree/"`uname -s`-`uname -r`-`uname -m`"
> cd objtree/"`uname -s`-`uname -r`-`uname -m`"
> (cd $OPENSSL_SOURCE; find . -type f -o -type l) | while read F; do
> mkdir -p `dirname $F`
> ln -s $OPENSSL_SOURCE/$F $F
> done
[snip]
> don't work very well -- in particular, files in $OPENSSL_SOURCE which are
> relative links already will end up as absolute links into $OPENSSL_SOURCE,
[snip]
In my environment I'm building on multiple platforms from a common
read-only NFS source tree. Here are some observations on what my script does.
I think $OPENSSL_SOURCE needs to be a full path name, not relative.
It basicly starts with the commands above but my "find" doesn't have
"-o -type l". It may work with it, I don't know.
Now I clean up after patch and remove files made from .in files
find . -name "*.orig" -exec rm -f {} \;
rm -f Makefile.ssl apps/CA.pl apps/der_chop \
crypto/opensslconf.h tools/c_rehash
Now if you don't want to modify your source tree during the build,
or your source tree is read-only, do something like.
# make sure the auto generated files are writable
for i in ${FILES}
do
rm -f ${i}
cp ${OPENSSL_SOURCE}/${i} ${i}
chmod ug+w ${i}
done
Here is the list auto generated files I found in 0.9.7
....
FILES="apps/progs.h crypto/asn1/asn1_err.c \
crypto/asn1/asn1.h crypto/bio/bio_err.c crypto/bio/bio.h \
crypto/bn/bn_err.c crypto/bn/bn.h crypto/bn/bn_prime.h \
crypto/buffer/buf_err.c crypto/buffer/buffer.h \
crypto/comp/comp_err.c crypto/comp/comp.h \
crypto/conf/conf_def.h crypto/conf/conf_err.c \
crypto/conf/conf.h crypto/cpt_err.c crypto/crypto.h \
crypto/dh/dh_err.c crypto/dh/dh.h crypto/dsa/dsa_err.c \
crypto/dsa/dsa.h crypto/dso/dso_err.c crypto/dso/dso.h \
crypto/evp/evp_err.c crypto/evp/evp.h crypto/objects/obj_dat.c \
crypto/objects/obj_dat.h crypto/objects/objects.h \
crypto/objects/obj_err.c crypto/objects/obj_mac.num \
crypto/objects/obj_mac.h crypto/pem/pem_err.c crypto/pem/pem.h \
crypto/pkcs12/pk12err.c crypto/pkcs12/pkcs12.h \
crypto/pkcs7/pkcs7err.c crypto/pkcs7/pkcs7.h \
crypto/rand/rand_err.c crypto/rand/rand.h crypto/rsa/rsa_err.c \
crypto/rsa/rsa.h crypto/x509/x509_err.c crypto/x509/x509.h \
crypto/x509v3/v3err.c crypto/x509v3/x509v3.h ssl/ssl_err.c \
ssl/ssl.h util/libeay.num util/ssleay.num crypto/opensslv.h"
....
Hope this helps.
--
Tim Rice Multitalents (707) 887-1469
[EMAIL PROTECTED]
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]