xref: /freebsd/crypto/openssl/build.info (revision 9e5787d2284e187abb5b654d924394a65772e004)
1{-
2     our $sover = $config{shlib_version_number};
3     our $sover_filename = $sover;
4     $sover_filename =~ s|\.|_|g
5         if $config{target} =~ /^mingw/ || $config{target} =~ /^VC-/;
6     $sover_filename =
7         sprintf "%02d%02d", split m|\.|, $config{shlib_version_number}
8         if $config{target} =~ /^vms/;
9     "";
10-}
11LIBS=libcrypto libssl
12INCLUDE[libcrypto]=. include
13INCLUDE[libssl]=. include
14DEPEND[libssl]=libcrypto
15
16# Empty DEPEND "indices" means the dependencies are expected to be built
17# unconditionally before anything else.
18DEPEND[]=include/openssl/opensslconf.h include/crypto/bn_conf.h \
19         include/crypto/dso_conf.h
20DEPEND[include/openssl/opensslconf.h]=configdata.pm
21GENERATE[include/openssl/opensslconf.h]=include/openssl/opensslconf.h.in
22DEPEND[include/crypto/bn_conf.h]=configdata.pm
23GENERATE[include/crypto/bn_conf.h]=include/crypto/bn_conf.h.in
24DEPEND[include/crypto/dso_conf.h]=configdata.pm
25GENERATE[include/crypto/dso_conf.h]=include/crypto/dso_conf.h.in
26
27IF[{- defined $target{shared_defflag} -}]
28  IF[{- $config{target} =~ /^mingw/ -}]
29    GENERATE[libcrypto.def]=util/mkdef.pl crypto 32
30    DEPEND[libcrypto.def]=util/libcrypto.num
31    GENERATE[libssl.def]=util/mkdef.pl ssl 32
32    DEPEND[libssl.def]=util/libssl.num
33
34    SHARED_SOURCE[libcrypto]=libcrypto.def
35    SHARED_SOURCE[libssl]=libssl.def
36  ELSIF[{- $config{target} =~ /^aix/ -}]
37    GENERATE[libcrypto.map]=util/mkdef.pl crypto aix
38    DEPEND[libcrypto.map]=util/libcrypto.num
39    GENERATE[libssl.map]=util/mkdef.pl ssl aix
40    DEPEND[libssl.map]=util/libssl.num
41
42    SHARED_SOURCE[libcrypto]=libcrypto.map
43    SHARED_SOURCE[libssl]=libssl.map
44  ELSE
45    GENERATE[libcrypto.map]=util/mkdef.pl crypto linux
46    DEPEND[libcrypto.map]=util/libcrypto.num
47    GENERATE[libssl.map]=util/mkdef.pl ssl linux
48    DEPEND[libssl.map]=util/libssl.num
49
50    SHARED_SOURCE[libcrypto]=libcrypto.map
51    SHARED_SOURCE[libssl]=libssl.map
52  ENDIF
53ENDIF
54# VMS and VC don't have parametrised .def / .symvec generation, so they get
55# special treatment, since we know they do use these files
56IF[{- $config{target} =~ /^VC-/ -}]
57  GENERATE[libcrypto.def]=util/mkdef.pl crypto 32
58  DEPEND[libcrypto.def]=util/libcrypto.num
59  GENERATE[libssl.def]=util/mkdef.pl ssl 32
60  DEPEND[libssl.def]=util/libssl.num
61
62  SHARED_SOURCE[libcrypto]=libcrypto.def
63  SHARED_SOURCE[libssl]=libssl.def
64ELSIF[{- $config{target} =~ /^vms/ -}]
65  GENERATE[libcrypto.opt]=util/mkdef.pl crypto "VMS"
66  DEPEND[libcrypto.opt]=util/libcrypto.num
67  GENERATE[libssl.opt]=util/mkdef.pl ssl "VMS"
68  DEPEND[libssl.opt]=util/libssl.num
69
70  SHARED_SOURCE[libcrypto]=libcrypto.opt
71  SHARED_SOURCE[libssl]=libssl.opt
72ENDIF
73
74IF[{- $config{target} =~ /^(?:Cygwin|mingw|VC-)/ -}]
75  GENERATE[libcrypto.rc]=util/mkrc.pl libcrypto
76  GENERATE[libssl.rc]=util/mkrc.pl libssl
77
78  SHARED_SOURCE[libcrypto]=libcrypto.rc
79  SHARED_SOURCE[libssl]=libssl.rc
80ENDIF
81
82IF[{- $config{target} =~ /^Cygwin/ -}]
83 SHARED_NAME[libcrypto]=cygcrypto-{- $sover_filename -}
84 SHARED_NAME[libssl]=cygssl-{- $sover_filename -}
85ELSIF[{- $config{target} =~ /^mingw/ -}]
86 SHARED_NAME[libcrypto]=libcrypto-{- $sover_filename -}{- $config{target} eq "mingw64" ? "-x64" : "" -}
87 SHARED_NAME[libssl]=libssl-{- $sover_filename -}{- $config{target} eq "mingw64" ? "-x64" : "" -}
88ELSIF[{- $config{target} =~ /^VC-/ -}]
89 SHARED_NAME[libcrypto]=libcrypto-{- $sover_filename -}{- $target{multilib} -}
90 SHARED_NAME[libssl]=libssl-{- $sover_filename -}{- $target{multilib} -}
91ENDIF
92
93# VMS has a cultural standard where all libraries are prefixed.
94# For OpenSSL, the choice is 'ossl$' (this prefix was claimed in a
95# conversation with VSI, Tuesday January 26 2016)
96# Also, it seems it's usual to have the pointer size the libraries
97# were built for as part of the name.
98IF[{- $config{target} =~ /^vms/ -}]
99 RENAME[libcrypto]=ossl$libcrypto{- $target{pointer_size} -}
100 RENAME[libssl]=ossl$libssl{- $target{pointer_size} -}
101 SHARED_NAME[libcrypto]=ossl$libcrypto{- $sover_filename -}_shr{- $target{pointer_size} -}
102 SHARED_NAME[libssl]=ossl$libssl{- $sover_filename -}_shr{- $target{pointer_size} -}
103ENDIF
104