1 $! BUILD.COM -- Building procedure for the RSAref engine
3 $ if f$search("source.dir") .eqs. "" -
4 .or. f$search("install.dir") .eqs. ""
6 $ write sys$error "RSAref 2.0 hasn't been properly extracted."
10 $ if (f$getsyi("cpu").lt.128)
14 $ arch = f$edit( f$getsyi( "ARCH_NAME"), "UPCASE")
15 $ if (arch .eqs. "") then arch = "UNK"
18 $ _save_default = f$environment("default")
19 $ set default [.install]
20 $ files := desc,digit,md2c,md5c,nn,prime,-
21 rsa,r_encode,r_dh,r_enhanc,r_keygen,r_random,-
24 $ library/create/object rsaref.olb
27 $ files_e = f$edit(f$element(files_i,",",files),"trim")
28 $ files_i = files_i + 1
29 $ if files_e .eqs. "," then goto rsaref_loop_end
30 $ cc/include=([-.source],[])/define=PROTOTYPES=1/object=[]'files_e'.obj -
32 $ library/replace/object rsaref.olb 'files_e'.obj
37 $ define/user openssl [---.include.openssl]
38 $ cc/define=ENGINE_DYNAMIC_SUPPORT rsaref.c
42 $ macro/object=rsaref_vec.obj sys$input:
44 ; Transfer vector for VAX shareable image
48 ; Define macro to assist in building transfer vector entries. Each entry
49 ; should take no more than 8 bytes.
51 .MACRO FTRANSFER_ENTRY routine
58 ; Place entries in own program section.
60 .PSECT $$LIBRSAREF,QUAD,PIC,USR,CON,REL,LCL,SHR,EXE,RD,NOWRT
63 FTRANSFER_ENTRY bind_engine
64 FTRANSFER_ENTRY v_check
67 ; Allocate extra storage at end of vector to allow for expansion.
69 .BLKB 512-<.-LIBRSAREF_xfer> ; 1 page.
71 $ link/share=librsaref.exe sys$input:/option
73 ! Ensure transfer vector is at beginning of image
76 COLLECT=FIRST,$$LIBRSAREF
78 ! make psects nonshareable so image can be installed.
80 PSECT_ATTR=$CHAR_STRING_CONSTANTS,NOWRT
83 [.install]rsaref.olb/lib
84 [---.vax.exe.crypto]libcrypto.olb/lib
86 $ if arch_name .eqs. "ALPHA"
88 $ link/share=librsaref.exe sys$input:/option
90 [.install]rsaref.olb/lib
91 [---.alpha.exe.crypto]libcrypto.olb/lib
92 symbol_vector=(bind_engine=procedure,v_check=procedure)
94 $ if arch_name .eqs. "IA64"
96 $ link /shareable=librsaref.exe sys$input: /options
98 [.install]rsaref.olb/lib
99 [---.ia64.exe.crypto]libcrypto.olb/lib
100 symbol_vector=(bind_engine=procedure,v_check=procedure)
105 $ set default '_save_default'