Cross Reference: /solaris-userland/components/openssl/openssl-fips-140/Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
2209N/A# The contents of this file are subject to the terms of the 2209N/A# Common Development and Distribution License (the "License"). 2209N/A# You may not use this file except in compliance with the License. 2209N/A# See the License for the specific language governing permissions 2209N/A# and limitations under the License. 2209N/A# When distributing Covered Code, include this CDDL HEADER in each 2209N/A# If applicable, add the following below this CDDL HEADER, with the 2209N/A# fields enclosed by brackets "[]" replaced with your own identifying 2209N/A# information: Portions Copyright [yyyy] [name of copyright owner] 5371N/A# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved. 5537N/A# Note: COMPONENT_VERSION is the core OpenSSL version, and IPS_COMPONENT_VERSION 5537N/A# is the FIPS module version. The COMPONENT_VERSION changes with the core 5537N/A# OpenSSL version, but the IPS_COMPONENT_VERSION is purposely only to change if 5537N/A# the FIPS module version changes. 4368N/A# Clone the patch files to the patches-all dir. 4368N/A# COPY_COMMON_FILES is there so that rsync is called as soon as 2209N/A# OpenSSL does not use autoconf but its own configure system. 2209N/A# Used in the configure options below. 2209N/A# What we do here follows the OpenSSL FIPS-140 User Guide instructions. 5123N/A# Ignore default CC_FOR_BUILD, CC, and CXX in CONFIGURE_ENV. 2209N/A# We use OpenSSL install code for installing only manual pages and we do that 4371N/A# Disable SSLv2 and SSLv3 protocols 2209N/A# We define our own compiler and linker option sets for Solaris. See Configure 2209N/A# Some additional options needed for our engines. 2209N/A# OpenSSL has its own configure system which must be run from the fully 2209N/A# populated source code directory. However, the Userland configuration phase is 2209N/A# run from the build directory. The easiest way to workaround it is to copy all 2209N/A# 64 bits. Depending on the configuration option, OpenSSL's Configure script 2209N/A# header file usable on both architectures. The patch was generated against the 4820N/A# We must make sure that openssl-fips component is built before this openssl-fips-140 2209N/A# component since in order to build FIPS-140 certified libraries, the canister 2209N/A# is needed. Note that we must unset BITS that would override the same variable 2209N/A# used in openssl-fips' Makefile, and we would end up up with both canisters 2209N/A# download, clean, and clobber should all propogate to the fips bits 2209N/A# We do not ship our engines as patches since it would be more difficult to 2209N/A# update the files which have been under continuous development. We rather copy 2209N/A# the files to the right directories and let OpenSSL makefiles build it. 2221N/A# We also copy some FIPS specific header files needed to build FIPS version 3062N/A# of OpenSSL from FIPS module. 2209N/A# OpenSSL does not install into <dir>/$(MACH64) for 64-bit install so no such 2209N/A# directory is created and Userland install code would fail when installing lint 2209N/A# see the comment in Makefile in there for more information. 2209N/A# Set modified lint flags for our lint library targets. 4073N/A# There are also separate STC test suites 'openssl' and 'openssl-engine' 4073N/A# for regression testing. These internal tests are unit tests only.