1 | #
|
---|
2 | # src/Makefile.am
|
---|
3 | #
|
---|
4 | # For the license, see the LICENSE file in the root directory.
|
---|
5 | #
|
---|
6 |
|
---|
7 | AM_CFLAGS = @AM_CFLAGS@
|
---|
8 | AM_LDFLAGS = @AM_LDFLAGS@ $(HARDENING_LDFLAGS) $(SANITIZERS) $(FUZZER)
|
---|
9 | noinst_LTLIBRARIES =
|
---|
10 | noinst_HEADERS =
|
---|
11 |
|
---|
12 | lib_LTLIBRARIES = libtpms.la
|
---|
13 | libtpms_la_LIBADD =
|
---|
14 |
|
---|
15 | common_CFLAGS = -include tpm_library_conf.h \
|
---|
16 | -I$(top_srcdir)/include/libtpms \
|
---|
17 | -I$(top_builddir)/include/libtpms \
|
---|
18 | $(AM_CFLAGS) \
|
---|
19 | $(HARDENING_CFLAGS) \
|
---|
20 | $(SANITIZERS) \
|
---|
21 | $(FUZZER) \
|
---|
22 | $(LIBCRYPTO_EXTRA_CFLAGS)
|
---|
23 |
|
---|
24 | # build with libtpms callback support
|
---|
25 | common_CFLAGS += -DTPM_LIBTPMS_CALLBACKS
|
---|
26 | # let the default NVRAM write to disk
|
---|
27 | common_CFLAGS += -DTPM_NV_DISK
|
---|
28 |
|
---|
29 | if WITH_TPM1
|
---|
30 | #
|
---|
31 | # TPM1.2
|
---|
32 | #
|
---|
33 |
|
---|
34 | noinst_LTLIBRARIES += libtpms_tpm12.la
|
---|
35 |
|
---|
36 | libtpms_la_LIBADD += libtpms_tpm12.la
|
---|
37 |
|
---|
38 | libtpms_tpm12_la_LIBADD =
|
---|
39 |
|
---|
40 | libtpms_tpm12_la_CFLAGS = $(common_CFLAGS)
|
---|
41 |
|
---|
42 | #Build 1.2 TPM
|
---|
43 | libtpms_tpm12_la_CFLAGS += -DTPM_V12
|
---|
44 | # build a PC Client TPM
|
---|
45 | libtpms_tpm12_la_CFLAGS += -DTPM_PCCLIENT
|
---|
46 | # upon initialization have the TPM load the volatile state
|
---|
47 | libtpms_tpm12_la_CFLAGS += -DTPM_VOLATILE_LOAD
|
---|
48 | # build the TPM enabled and activated
|
---|
49 | libtpms_tpm12_la_CFLAGS += -DTPM_ENABLE_ACTIVATE
|
---|
50 | # build with AES support for symmetric crypto
|
---|
51 | libtpms_tpm12_la_CFLAGS += -DTPM_AES
|
---|
52 | # build a POSIX type of TPM
|
---|
53 | libtpms_tpm12_la_CFLAGS += -DTPM_POSIX
|
---|
54 | # build without maintenance commands
|
---|
55 | libtpms_tpm12_la_CFLAGS += -DTPM_NOMAINTENANCE_COMMANDS
|
---|
56 |
|
---|
57 | libtpms_tpm12_la_CFLAGS += @DEBUG_DEFINES@
|
---|
58 |
|
---|
59 | CRYPTO_OBJFILES =
|
---|
60 |
|
---|
61 | libtpms_tpm12_la_SOURCES = \
|
---|
62 | tpm12/tpm_admin.c \
|
---|
63 | tpm12/tpm_audit.c \
|
---|
64 | tpm12/tpm_auth.c \
|
---|
65 | tpm12/tpm_cryptoh.c \
|
---|
66 | tpm12/tpm_counter.c \
|
---|
67 | tpm12/tpm_daa.c \
|
---|
68 | tpm12/tpm_delegate.c \
|
---|
69 | tpm12/tpm_digest.c \
|
---|
70 | tpm12/tpm_error.c \
|
---|
71 | tpm12/tpm_global.c \
|
---|
72 | tpm12/tpm_identity.c \
|
---|
73 | tpm12/tpm_init.c \
|
---|
74 | tpm12/tpm_libtpms_io.c \
|
---|
75 | tpm12/tpm_key.c \
|
---|
76 | tpm12/tpm_load.c \
|
---|
77 | tpm12/tpm_maint.c \
|
---|
78 | tpm12/tpm_migration.c \
|
---|
79 | tpm12/tpm_nonce.c \
|
---|
80 | tpm12/tpm_nvram.c \
|
---|
81 | tpm12/tpm_openssl_helpers.c \
|
---|
82 | tpm12/tpm_owner.c \
|
---|
83 | tpm12/tpm_pcr.c \
|
---|
84 | tpm12/tpm_permanent.c \
|
---|
85 | tpm12/tpm_platform.c \
|
---|
86 | tpm12/tpm_process.c \
|
---|
87 | tpm12/tpm_secret.c \
|
---|
88 | tpm12/tpm_session.c \
|
---|
89 | tpm12/tpm_sizedbuffer.c \
|
---|
90 | tpm12/tpm_startup.c \
|
---|
91 | tpm12/tpm_store.c \
|
---|
92 | tpm12/tpm_storage.c \
|
---|
93 | tpm12/tpm_ticks.c \
|
---|
94 | tpm12/tpm_time.c \
|
---|
95 | tpm12/tpm_transport.c \
|
---|
96 | tpm12/tpm_ver.c \
|
---|
97 | tpm12/tpm_svnrevision.c \
|
---|
98 | tpm_tpm12_interface.c \
|
---|
99 | tpm_tpm12_tis.c
|
---|
100 |
|
---|
101 | noinst_HEADERS += \
|
---|
102 | tpm12/tpm_admin.h \
|
---|
103 | tpm12/tpm_audit.h \
|
---|
104 | tpm12/tpm_auth.h \
|
---|
105 | tpm12/tpm_commands.h \
|
---|
106 | tpm12/tpm_constants.h \
|
---|
107 | tpm12/tpm_counter.h \
|
---|
108 | tpm12/tpm_crypto.h \
|
---|
109 | tpm12/tpm_cryptoh.h \
|
---|
110 | tpm12/tpm_daa.h \
|
---|
111 | tpm_debug.h \
|
---|
112 | tpm12/tpm_delegate.h \
|
---|
113 | tpm12/tpm_digest.h \
|
---|
114 | tpm12/tpm_global.h \
|
---|
115 | tpm12/tpm_identity.h \
|
---|
116 | tpm12/tpm_init.h \
|
---|
117 | tpm12/tpm_io.h \
|
---|
118 | tpm12/tpm_key.h \
|
---|
119 | tpm_library_conf.h \
|
---|
120 | tpm_library_intern.h \
|
---|
121 | tpm12/tpm_load.h \
|
---|
122 | tpm12/tpm_maint.h \
|
---|
123 | tpm12/tpm_migration.h \
|
---|
124 | tpm12/tpm_nonce.h \
|
---|
125 | tpm_nvfile.h \
|
---|
126 | tpm12/tpm_nvram_const.h \
|
---|
127 | tpm12/tpm_nvram.h \
|
---|
128 | tpm12/tpm_openssl_helpers.h \
|
---|
129 | tpm12/tpm_owner.h \
|
---|
130 | tpm12/tpm_pcr.h \
|
---|
131 | tpm12/tpm_permanent.h \
|
---|
132 | tpm12/tpm_platform.h \
|
---|
133 | tpm12/tpm_process.h \
|
---|
134 | tpm12/tpm_secret.h \
|
---|
135 | tpm12/tpm_session.h \
|
---|
136 | tpm12/tpm_sizedbuffer.h \
|
---|
137 | tpm12/tpm_startup.h \
|
---|
138 | tpm12/tpm_storage.h \
|
---|
139 | tpm12/tpm_store.h \
|
---|
140 | tpm12/tpm_structures.h \
|
---|
141 | tpm12/tpm_svnrevision.h \
|
---|
142 | tpm12/tpm_ticks.h \
|
---|
143 | tpm12/tpm_time.h \
|
---|
144 | tpm12/tpm_transport.h \
|
---|
145 | tpm12/tpm_ver.h
|
---|
146 |
|
---|
147 | if LIBTPMS_USE_FREEBL
|
---|
148 |
|
---|
149 | libtpms_tpm12_la_SOURCES += tpm12/tpm_crypto_freebl.c
|
---|
150 | libtpms_tpm12_la_LIBADD += -lfreebl -lgmp -lnspr4 -lnssutil3 -lnss3
|
---|
151 |
|
---|
152 | #work-around broken freebl includes
|
---|
153 | libtpms_tpm12_la_CFLAGS += $(shell [ ! -r /usr/include/nss3/alghmac.h ] && \
|
---|
154 | touch alghmac.h && \
|
---|
155 | echo -I./)
|
---|
156 | # tpm12/tpm_crypto_freebl.c: work around #include "blapi.h" : should be <nss3/blapi.h>
|
---|
157 | libtpms_tpm12_la_CFLAGS += $(shell nss-config --cflags)
|
---|
158 | #including nss3/blapi.h requires a look into nspr4 dir
|
---|
159 | libtpms_tpm12_la_CFLAGS += $(shell nspr-config --cflags)
|
---|
160 |
|
---|
161 | else
|
---|
162 |
|
---|
163 | if LIBTPMS_USE_OPENSSL
|
---|
164 |
|
---|
165 | libtpms_tpm12_la_SOURCES += tpm12/tpm_crypto.c
|
---|
166 | libtpms_tpm12_la_LIBADD += -lcrypto
|
---|
167 |
|
---|
168 | endif # LIBTPMS_USE_OPENSSL
|
---|
169 |
|
---|
170 | endif # LIBTPMS_USE_FREEBL
|
---|
171 |
|
---|
172 | endif # WITH_TPM1
|
---|
173 |
|
---|
174 | # TPM2
|
---|
175 | #
|
---|
176 |
|
---|
177 | if WITH_TPM2
|
---|
178 |
|
---|
179 | noinst_LTLIBRARIES += libtpms_tpm2.la
|
---|
180 |
|
---|
181 | libtpms_la_LIBADD += libtpms_tpm2.la
|
---|
182 |
|
---|
183 | libtpms_tpm2_la_LIBADD = $(LIBRT_LIBS)
|
---|
184 |
|
---|
185 | libtpms_tpm2_la_CFLAGS = $(common_CFLAGS)
|
---|
186 |
|
---|
187 | libtpms_tpm2_la_CFLAGS += -D_POSIX_
|
---|
188 | libtpms_tpm2_la_CFLAGS += -DTPM_POSIX
|
---|
189 |
|
---|
190 | libtpms_tpm2_la_SOURCES = \
|
---|
191 | tpm2/ACT_spt.c \
|
---|
192 | tpm2/ACTCommands.c \
|
---|
193 | tpm2/AlgorithmCap.c \
|
---|
194 | tpm2/AlgorithmTests.c \
|
---|
195 | tpm2/AsymmetricCommands.c \
|
---|
196 | tpm2/AttestationCommands.c \
|
---|
197 | tpm2/Attest_spt.c \
|
---|
198 | tpm2/AuditCommands.c \
|
---|
199 | tpm2/Bits.c \
|
---|
200 | tpm2/BnConvert.c \
|
---|
201 | tpm2/BnMath.c \
|
---|
202 | tpm2/BnMemory.c \
|
---|
203 | tpm2/Cancel.c \
|
---|
204 | tpm2/CapabilityCommands.c \
|
---|
205 | tpm2/Clock.c \
|
---|
206 | tpm2/ClockCommands.c \
|
---|
207 | tpm2/CommandAudit.c \
|
---|
208 | tpm2/CommandCodeAttributes.c \
|
---|
209 | tpm2/CommandDispatcher.c \
|
---|
210 | tpm2/ContextCommands.c \
|
---|
211 | tpm2/Context_spt.c \
|
---|
212 | tpm2/CryptEccData.c \
|
---|
213 | tpm2/CryptSelfTest.c \
|
---|
214 | tpm2/CryptUtil.c \
|
---|
215 | tpm2/DA.c \
|
---|
216 | tpm2/DebugHelpers.c \
|
---|
217 | tpm2/DictionaryCommands.c \
|
---|
218 | tpm2/DuplicationCommands.c \
|
---|
219 | tpm2/EACommands.c \
|
---|
220 | tpm2/EncryptDecrypt_spt.c \
|
---|
221 | tpm2/Entity.c \
|
---|
222 | tpm2/Entropy.c \
|
---|
223 | tpm2/EphemeralCommands.c \
|
---|
224 | tpm2/ExecCommand.c \
|
---|
225 | tpm2/Global.c \
|
---|
226 | tpm2/Handle.c \
|
---|
227 | tpm2/HashCommands.c \
|
---|
228 | tpm2/Hierarchy.c \
|
---|
229 | tpm2/HierarchyCommands.c \
|
---|
230 | tpm2/IntegrityCommands.c \
|
---|
231 | tpm2/IoBuffers.c \
|
---|
232 | tpm2/Locality.c \
|
---|
233 | tpm2/LocalityPlat.c \
|
---|
234 | tpm2/ManagementCommands.c \
|
---|
235 | tpm2/Manufacture.c \
|
---|
236 | tpm2/Marshal.c \
|
---|
237 | tpm2/MathOnByteBuffers.c \
|
---|
238 | tpm2/Memory.c \
|
---|
239 | tpm2/NVCommands.c \
|
---|
240 | tpm2/NVDynamic.c \
|
---|
241 | tpm2/NVMem.c \
|
---|
242 | tpm2/NVReserved.c \
|
---|
243 | tpm2/NV_spt.c \
|
---|
244 | tpm2/Object.c \
|
---|
245 | tpm2/ObjectCommands.c \
|
---|
246 | tpm2/Object_spt.c \
|
---|
247 | tpm2/PCR.c \
|
---|
248 | tpm2/PlatformACT.c \
|
---|
249 | tpm2/PlatformData.c \
|
---|
250 | tpm2/Policy_spt.c \
|
---|
251 | tpm2/Power.c \
|
---|
252 | tpm2/PowerPlat.c \
|
---|
253 | tpm2/PP.c \
|
---|
254 | tpm2/PPPlat.c \
|
---|
255 | tpm2/PrimeData.c \
|
---|
256 | tpm2/PropertyCap.c \
|
---|
257 | tpm2/RandomCommands.c \
|
---|
258 | tpm2/Response.c \
|
---|
259 | tpm2/ResponseCodeProcessing.c \
|
---|
260 | tpm2/RunCommand.c \
|
---|
261 | tpm2/Session.c \
|
---|
262 | tpm2/SessionCommands.c \
|
---|
263 | tpm2/SessionProcess.c \
|
---|
264 | tpm2/SigningCommands.c \
|
---|
265 | tpm2/StartupCommands.c \
|
---|
266 | tpm2/SymmetricCommands.c \
|
---|
267 | tpm2/TestingCommands.c \
|
---|
268 | tpm2/Ticket.c \
|
---|
269 | tpm2/Time.c \
|
---|
270 | tpm2/TpmAsn1.c \
|
---|
271 | tpm2/TpmSizeChecks.c \
|
---|
272 | tpm2/TPMCmdp.c \
|
---|
273 | tpm2/TpmFail.c \
|
---|
274 | tpm2/Unique.c \
|
---|
275 | tpm2/Unmarshal.c \
|
---|
276 | tpm2/Vendor_TCG_Test.c \
|
---|
277 | tpm2/X509_ECC.c \
|
---|
278 | tpm2/X509_RSA.c \
|
---|
279 | tpm2/X509_spt.c \
|
---|
280 | tpm_tpm2_interface.c \
|
---|
281 | tpm_tpm2_tis.c \
|
---|
282 | \
|
---|
283 | tpm2/BackwardsCompatibilityObject.c \
|
---|
284 | tpm2/LibtpmsCallbacks.c \
|
---|
285 | tpm2/NVMarshal.c \
|
---|
286 | tpm2/StateMarshal.c \
|
---|
287 | tpm2/Volatile.c
|
---|
288 |
|
---|
289 | noinst_HEADERS += \
|
---|
290 | compiler.h \
|
---|
291 | tpm2/crypto/CryptCmac_fp.h \
|
---|
292 | tpm2/crypto/CryptDes_fp.h \
|
---|
293 | tpm2/crypto/CryptEcc.h \
|
---|
294 | tpm2/crypto/CryptEccCrypt_fp.h \
|
---|
295 | tpm2/crypto/CryptEccKeyExchange_fp.h \
|
---|
296 | tpm2/crypto/CryptEccMain_fp.h \
|
---|
297 | tpm2/crypto/CryptEccSignature_fp.h \
|
---|
298 | tpm2/crypto/CryptHash_fp.h \
|
---|
299 | tpm2/crypto/CryptHash.h \
|
---|
300 | tpm2/crypto/CryptPrime_fp.h \
|
---|
301 | tpm2/crypto/CryptPrimeSieve_fp.h \
|
---|
302 | tpm2/crypto/CryptRand_fp.h \
|
---|
303 | tpm2/crypto/CryptRand.h \
|
---|
304 | tpm2/crypto/CryptRsa_fp.h \
|
---|
305 | tpm2/crypto/CryptRsa.h \
|
---|
306 | tpm2/crypto/CryptSelfTest_fp.h \
|
---|
307 | tpm2/crypto/CryptSmac_fp.h \
|
---|
308 | tpm2/crypto/CryptSym.h \
|
---|
309 | tpm2/crypto/CryptSym_fp.h \
|
---|
310 | tpm2/crypto/CryptTest.h \
|
---|
311 | tpm2/crypto/CryptUtil_fp.h \
|
---|
312 | tpm2/ACT.h \
|
---|
313 | tpm2/ACT_spt_fp.h \
|
---|
314 | tpm2/ACT_SetTimeout_fp.h \
|
---|
315 | tpm2/ActivateCredential_fp.h \
|
---|
316 | tpm2/AlgorithmCap_fp.h \
|
---|
317 | tpm2/AlgorithmTests_fp.h \
|
---|
318 | tpm2/Attest_spt_fp.h \
|
---|
319 | tpm2/BaseTypes.h \
|
---|
320 | tpm2/Bits_fp.h \
|
---|
321 | tpm2/Capabilities.h \
|
---|
322 | tpm2/CertifyCreation_fp.h \
|
---|
323 | tpm2/CertifyX509_fp.h \
|
---|
324 | tpm2/Certify_fp.h \
|
---|
325 | tpm2/ChangeEPS_fp.h \
|
---|
326 | tpm2/ChangePPS_fp.h \
|
---|
327 | tpm2/ClearControl_fp.h \
|
---|
328 | tpm2/Clear_fp.h \
|
---|
329 | tpm2/ClockRateAdjust_fp.h \
|
---|
330 | tpm2/ClockSet_fp.h \
|
---|
331 | tpm2/CommandAttributeData.h \
|
---|
332 | tpm2/CommandAttributes.h \
|
---|
333 | tpm2/CommandAudit_fp.h \
|
---|
334 | tpm2/CommandCodeAttributes_fp.h \
|
---|
335 | tpm2/CommandDispatchData.h \
|
---|
336 | tpm2/CommandDispatcher_fp.h \
|
---|
337 | tpm2/Commit_fp.h \
|
---|
338 | tpm2/CompilerDependencies.h \
|
---|
339 | tpm2/ContextLoad_fp.h \
|
---|
340 | tpm2/ContextSave_fp.h \
|
---|
341 | tpm2/Context_spt_fp.h \
|
---|
342 | tpm2/Create_fp.h \
|
---|
343 | tpm2/CreateLoaded_fp.h \
|
---|
344 | tpm2/CreatePrimary_fp.h \
|
---|
345 | tpm2/CryptSelfTest_fp.h \
|
---|
346 | tpm2/DA_fp.h \
|
---|
347 | tpm2/DebugHelpers_fp.h \
|
---|
348 | tpm2/DictionaryAttackLockReset_fp.h \
|
---|
349 | tpm2/DictionaryAttackParameters_fp.h \
|
---|
350 | tpm2/Duplicate_fp.h \
|
---|
351 | tpm2/EccTestData.h \
|
---|
352 | tpm2/ECC_Parameters_fp.h \
|
---|
353 | tpm2/ECDH_KeyGen_fp.h \
|
---|
354 | tpm2/ECDH_ZGen_fp.h \
|
---|
355 | tpm2/EC_Ephemeral_fp.h \
|
---|
356 | tpm2/EncryptDecrypt2_fp.h \
|
---|
357 | tpm2/EncryptDecrypt_fp.h \
|
---|
358 | tpm2/EncryptDecrypt_spt_fp.h \
|
---|
359 | tpm2/Entity_fp.h \
|
---|
360 | tpm2/EventSequenceComplete_fp.h \
|
---|
361 | tpm2/EvictControl_fp.h \
|
---|
362 | tpm2/ExecCommand_fp.h \
|
---|
363 | tpm2/FlushContext_fp.h \
|
---|
364 | tpm2/GetCapability_fp.h \
|
---|
365 | tpm2/GetCommandAuditDigest_fp.h \
|
---|
366 | tpm2/GetRandom_fp.h \
|
---|
367 | tpm2/GetSessionAuditDigest_fp.h \
|
---|
368 | tpm2/GetTestResult_fp.h \
|
---|
369 | tpm2/GetTime_fp.h \
|
---|
370 | tpm2/Global.h \
|
---|
371 | tpm2/GpMacros.h \
|
---|
372 | tpm2/Handle_fp.h \
|
---|
373 | tpm2/Hash_fp.h \
|
---|
374 | tpm2/HashSequenceStart_fp.h \
|
---|
375 | tpm2/HashTestData.h \
|
---|
376 | tpm2/HierarchyChangeAuth_fp.h \
|
---|
377 | tpm2/HierarchyControl_fp.h \
|
---|
378 | tpm2/Hierarchy_fp.h \
|
---|
379 | tpm2/HMAC_fp.h \
|
---|
380 | tpm2/HMAC_Start_fp.h \
|
---|
381 | tpm2/Import_fp.h \
|
---|
382 | tpm2/IncrementalSelfTest_fp.h \
|
---|
383 | tpm2/InternalRoutines.h \
|
---|
384 | tpm2/IoBuffers_fp.h \
|
---|
385 | tpm2/KdfTestData.h \
|
---|
386 | tpm2/LoadExternal_fp.h \
|
---|
387 | tpm2/Load_fp.h \
|
---|
388 | tpm2/Locality_fp.h \
|
---|
389 | tpm2/MAC_fp.h \
|
---|
390 | tpm2/MAC_Start_fp.h \
|
---|
391 | tpm2/MakeCredential_fp.h \
|
---|
392 | tpm2/Manufacture_fp.h \
|
---|
393 | tpm2/Marshal_fp.h \
|
---|
394 | tpm2/MathOnByteBuffers_fp.h \
|
---|
395 | tpm2/Memory_fp.h \
|
---|
396 | tpm2/MinMax.h \
|
---|
397 | tpm2/NV_Certify_fp.h \
|
---|
398 | tpm2/NV_ChangeAuth_fp.h \
|
---|
399 | tpm2/NV_DefineSpace_fp.h \
|
---|
400 | tpm2/NVDynamic_fp.h \
|
---|
401 | tpm2/NV_Extend_fp.h \
|
---|
402 | tpm2/NV_GlobalWriteLock_fp.h \
|
---|
403 | tpm2/NV.h \
|
---|
404 | tpm2/NV_Increment_fp.h \
|
---|
405 | tpm2/NV_Read_fp.h \
|
---|
406 | tpm2/NV_ReadLock_fp.h \
|
---|
407 | tpm2/NV_ReadPublic_fp.h \
|
---|
408 | tpm2/NVReserved_fp.h \
|
---|
409 | tpm2/NV_SetBits_fp.h \
|
---|
410 | tpm2/NV_spt_fp.h \
|
---|
411 | tpm2/NV_UndefineSpace_fp.h \
|
---|
412 | tpm2/NV_UndefineSpaceSpecial_fp.h \
|
---|
413 | tpm2/NV_Write_fp.h \
|
---|
414 | tpm2/NV_WriteLock_fp.h \
|
---|
415 | tpm2/OIDs.h \
|
---|
416 | tpm2/ObjectChangeAuth_fp.h \
|
---|
417 | tpm2/Object_fp.h \
|
---|
418 | tpm2/Object_spt_fp.h \
|
---|
419 | tpm2/PCR_Allocate_fp.h \
|
---|
420 | tpm2/PCR_Event_fp.h \
|
---|
421 | tpm2/PCR_Extend_fp.h \
|
---|
422 | tpm2/PCR_fp.h \
|
---|
423 | tpm2/PCR_Read_fp.h \
|
---|
424 | tpm2/PCR_Reset_fp.h \
|
---|
425 | tpm2/PCR_SetAuthPolicy_fp.h \
|
---|
426 | tpm2/PCR_SetAuthValue_fp.h \
|
---|
427 | tpm2/Platform.h \
|
---|
428 | tpm2/PlatformACT.h \
|
---|
429 | tpm2/PlatformACT_fp.h \
|
---|
430 | tpm2/PlatformClock.h \
|
---|
431 | tpm2/PlatformData.h \
|
---|
432 | tpm2/Platform_fp.h \
|
---|
433 | tpm2/PolicyAuthorize_fp.h \
|
---|
434 | tpm2/PolicyAuthorizeNV_fp.h \
|
---|
435 | tpm2/PolicyAuthValue_fp.h \
|
---|
436 | tpm2/PolicyCommandCode_fp.h \
|
---|
437 | tpm2/PolicyCounterTimer_fp.h \
|
---|
438 | tpm2/PolicyCpHash_fp.h \
|
---|
439 | tpm2/PolicyDuplicationSelect_fp.h \
|
---|
440 | tpm2/PolicyGetDigest_fp.h \
|
---|
441 | tpm2/PolicyLocality_fp.h \
|
---|
442 | tpm2/PolicyNameHash_fp.h \
|
---|
443 | tpm2/PolicyNV_fp.h \
|
---|
444 | tpm2/PolicyNvWritten_fp.h \
|
---|
445 | tpm2/PolicyOR_fp.h \
|
---|
446 | tpm2/PolicyPassword_fp.h \
|
---|
447 | tpm2/PolicyPCR_fp.h \
|
---|
448 | tpm2/PolicyPhysicalPresence_fp.h \
|
---|
449 | tpm2/PolicyRestart_fp.h \
|
---|
450 | tpm2/PolicySecret_fp.h \
|
---|
451 | tpm2/PolicySigned_fp.h \
|
---|
452 | tpm2/Policy_spt_fp.h \
|
---|
453 | tpm2/PolicyTemplate_fp.h \
|
---|
454 | tpm2/PolicyTicket_fp.h \
|
---|
455 | tpm2/Power_fp.h \
|
---|
456 | tpm2/PP_Commands_fp.h \
|
---|
457 | tpm2/PP_fp.h \
|
---|
458 | tpm2/PRNG_TestVectors.h \
|
---|
459 | tpm2/PropertyCap_fp.h \
|
---|
460 | tpm2/Quote_fp.h \
|
---|
461 | tpm2/ReadClock_fp.h \
|
---|
462 | tpm2/ReadPublic_fp.h \
|
---|
463 | tpm2/ResponseCodeProcessing_fp.h \
|
---|
464 | tpm2/Response_fp.h \
|
---|
465 | tpm2/Rewrap_fp.h \
|
---|
466 | tpm2/RsaTestData.h \
|
---|
467 | tpm2/RSA_Decrypt_fp.h \
|
---|
468 | tpm2/RSA_Encrypt_fp.h \
|
---|
469 | tpm2/SelfTest.h \
|
---|
470 | tpm2/SelfTest_fp.h \
|
---|
471 | tpm2/SequenceComplete_fp.h \
|
---|
472 | tpm2/SequenceUpdate_fp.h \
|
---|
473 | tpm2/Session_fp.h \
|
---|
474 | tpm2/SessionProcess_fp.h \
|
---|
475 | tpm2/SetAlgorithmSet_fp.h \
|
---|
476 | tpm2/SetCommandCodeAuditStatus_fp.h \
|
---|
477 | tpm2/SetPrimaryPolicy_fp.h \
|
---|
478 | tpm2/Shutdown_fp.h \
|
---|
479 | tpm2/Sign_fp.h \
|
---|
480 | tpm2/Simulator_fp.h \
|
---|
481 | tpm2/StartAuthSession_fp.h \
|
---|
482 | tpm2/Startup_fp.h \
|
---|
483 | tpm2/StirRandom_fp.h \
|
---|
484 | tpm2/SupportLibraryFunctionPrototypes_fp.h \
|
---|
485 | tpm2/SymmetricTest.h \
|
---|
486 | tpm2/SymmetricTestData.h \
|
---|
487 | tpm2/swap.h \
|
---|
488 | tpm2/TcpServerPosix_fp.h \
|
---|
489 | tpm2/TestParms_fp.h \
|
---|
490 | tpm2/Ticket_fp.h \
|
---|
491 | tpm2/Time_fp.h \
|
---|
492 | tpm2/TPMB.h \
|
---|
493 | tpm2/TpmAlgorithmDefines.h \
|
---|
494 | tpm2/TpmAsn1.h \
|
---|
495 | tpm2/TpmAsn1_fp.h \
|
---|
496 | tpm2/TpmBuildSwitches.h \
|
---|
497 | tpm2/TpmError.h \
|
---|
498 | tpm2/TpmFail_fp.h \
|
---|
499 | tpm2/TpmProfile.h \
|
---|
500 | tpm2/Tpm.h \
|
---|
501 | tpm2/_TPM_Hash_Data_fp.h \
|
---|
502 | tpm2/_TPM_Hash_End_fp.h \
|
---|
503 | tpm2/_TPM_Hash_Start_fp.h \
|
---|
504 | tpm2/_TPM_Init_fp.h \
|
---|
505 | tpm2/TpmSizeChecks_fp.h \
|
---|
506 | tpm2/TpmTcpProtocol.h \
|
---|
507 | tpm2/TpmTypes.h \
|
---|
508 | tpm2/Unmarshal_fp.h \
|
---|
509 | tpm2/Unseal_fp.h \
|
---|
510 | tpm2/VendorString.h \
|
---|
511 | tpm2/Vendor_TCG_Test_fp.h \
|
---|
512 | tpm2/VerifySignature_fp.h \
|
---|
513 | tpm2/X509.h \
|
---|
514 | tpm2/X509_ECC_fp.h \
|
---|
515 | tpm2/X509_RSA_fp.h \
|
---|
516 | tpm2/X509_spt_fp.h \
|
---|
517 | tpm2/ZGen_2Phase_fp.h \
|
---|
518 | \
|
---|
519 | tpm2/BackwardsCompatibility.h \
|
---|
520 | tpm2/BackwardsCompatibilityObject.h \
|
---|
521 | tpm2/LibtpmsCallbacks.h \
|
---|
522 | tpm2/NVMarshal.h \
|
---|
523 | tpm2/StateMarshal.h \
|
---|
524 | tpm2/Utils.h \
|
---|
525 | tpm2/Volatile.h
|
---|
526 |
|
---|
527 | if LIBTPMS_USE_OPENSSL
|
---|
528 |
|
---|
529 | libtpms_tpm2_la_SOURCES += \
|
---|
530 | tpm2/crypto/openssl/CryptCmac.c \
|
---|
531 | tpm2/crypto/openssl/CryptDes.c \
|
---|
532 | tpm2/crypto/openssl/CryptEccKeyExchange.c \
|
---|
533 | tpm2/crypto/openssl/CryptEccMain.c \
|
---|
534 | tpm2/crypto/openssl/CryptEccSignature.c \
|
---|
535 | tpm2/crypto/openssl/CryptHash.c \
|
---|
536 | tpm2/crypto/openssl/CryptPrime.c \
|
---|
537 | tpm2/crypto/openssl/CryptPrimeSieve.c \
|
---|
538 | tpm2/crypto/openssl/CryptRand.c \
|
---|
539 | tpm2/crypto/openssl/CryptRsa.c \
|
---|
540 | tpm2/crypto/openssl/CryptSmac.c \
|
---|
541 | tpm2/crypto/openssl/CryptSym.c \
|
---|
542 | tpm2/crypto/openssl/ExpDCache.c \
|
---|
543 | tpm2/crypto/openssl/Helpers.c \
|
---|
544 | tpm2/crypto/openssl/TpmToOsslDesSupport.c \
|
---|
545 | tpm2/crypto/openssl/TpmToOsslMath.c \
|
---|
546 | tpm2/crypto/openssl/TpmToOsslSupport.c
|
---|
547 |
|
---|
548 | noinst_HEADERS += \
|
---|
549 | tpm2/crypto/openssl/ConsttimeUtils.h \
|
---|
550 | tpm2/crypto/openssl/BnConvert_fp.h \
|
---|
551 | tpm2/crypto/openssl/BnMath_fp.h \
|
---|
552 | tpm2/crypto/openssl/BnMemory_fp.h \
|
---|
553 | tpm2/crypto/openssl/BnValues.h \
|
---|
554 | tpm2/crypto/openssl/ExpDCache_fp.h \
|
---|
555 | tpm2/crypto/openssl/Helpers_fp.h \
|
---|
556 | tpm2/crypto/openssl/LibSupport.h \
|
---|
557 | tpm2/crypto/openssl/TpmToOsslDesSupport_fp.h \
|
---|
558 | tpm2/crypto/openssl/TpmToOsslHash.h \
|
---|
559 | tpm2/crypto/openssl/TpmToOsslMath_fp.h \
|
---|
560 | tpm2/crypto/openssl/TpmToOsslMath.h \
|
---|
561 | tpm2/crypto/openssl/TpmToOsslSupport_fp.h \
|
---|
562 | tpm2/crypto/openssl/TpmToOsslSym.h
|
---|
563 |
|
---|
564 | libtpms_tpm2_la_CFLAGS += \
|
---|
565 | -I $(srcdir)/tpm2 \
|
---|
566 | -I $(srcdir)/tpm2/crypto \
|
---|
567 | -I $(srcdir)/tpm2/crypto/openssl
|
---|
568 |
|
---|
569 |
|
---|
570 | libtpms_tpm2_la_LIBADD += -lcrypto
|
---|
571 |
|
---|
572 | endif # LIBTPMS_USE_OPENSSL
|
---|
573 |
|
---|
574 | endif # WITH_TPM2
|
---|
575 |
|
---|
576 | #
|
---|
577 | # Library API layer
|
---|
578 | #
|
---|
579 |
|
---|
580 | libtpms_la_SOURCES = \
|
---|
581 | disabled_interface.c \
|
---|
582 | tpm_debug.c \
|
---|
583 | tpm_library.c \
|
---|
584 | tpm_memory.c \
|
---|
585 | tpm_nvfile.c
|
---|
586 |
|
---|
587 | libtpms_la_CFLAGS = $(common_CFLAGS)
|
---|
588 |
|
---|
589 | libtpms_la_LDFLAGS = -version-info $(LIBTPMS_VERSION_INFO) \
|
---|
590 | -no-undefined $(AM_LDFLAGS)
|
---|
591 |
|
---|
592 | if HAVE_VERSION_SCRIPT
|
---|
593 | libtpms_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libtpms.syms
|
---|
594 | endif
|
---|
595 |
|
---|
596 | LDFLAGS_ARCH = $(findstring -m32, $(AM_CFLAGS))
|
---|
597 | LDFLAGS_ARCH += $(findstring -m64, $(AM_CFLAGS))
|
---|
598 | LDFLAGS_ARCH += $(findstring -m32, $(AM_LDFLAGS))
|
---|
599 | LDFLAGS_ARCH += $(findstring -m64, $(AM_LDFLAGS))
|
---|
600 |
|
---|
601 | check-local: SHELL?="/usr/bin/env bash"
|
---|
602 | check-local:
|
---|
603 | @case $(host_os) in \
|
---|
604 | openbsd*) ADDLIBS="-lc" ;; \
|
---|
605 | darwin*|freebsd*) LDFLAGS_OS="-shared" ;; \
|
---|
606 | *) ADDLIBS="" ;; \
|
---|
607 | esac; \
|
---|
608 | ($(CC) $$LDFLAGS_OS $(LDFLAGS_ARCH) -nostdlib -L./.libs -ltpms $$ADDLIBS 2>/dev/null || \
|
---|
609 | (echo "There are undefined symbols in libtpms ($$LDFLAGS_OS $(LDFLAGS_ARCH))";\
|
---|
610 | $(CC) $$LDFLAGS_OS $(LDFLAGS_ARCH) -nostdlib -L./.libs -ltpms $$ADDLIBS 2>&1 | grep libtpms))
|
---|
611 | @case $(host_os) in \
|
---|
612 | openbsd*) ADDLIBS="-lc" ;; \
|
---|
613 | darwin*|freebsd*) LDFLAGS_OS="-shared" ;; \
|
---|
614 | *) ADDLIBS="" ;; \
|
---|
615 | esac; \
|
---|
616 | $(CC) $$LDFLAGS_OS $(LDFLAGS_ARCH) -nostdlib -L./.libs -ltpms $$ADDLIBS 2>/dev/null
|
---|
617 | rm a.out || true
|
---|
618 |
|
---|
619 | EXTRA_DIST = \
|
---|
620 | tpm12/tpm_crypto_freebl.c \
|
---|
621 | tpm12/tpm_crypto.c \
|
---|
622 | libtpms.syms \
|
---|
623 | test.syms
|
---|
624 |
|
---|
625 | CLEANFILES = \
|
---|
626 | a.out \
|
---|
627 | *.gcov \
|
---|
628 | *.gcda \
|
---|
629 | *.gcno \
|
---|
630 | tpm12/*.gcov \
|
---|
631 | tpm12/*.gcda \
|
---|
632 | tpm12/*.gcno \
|
---|
633 | tpm2/*.gcov \
|
---|
634 | tpm2/*.gcda \
|
---|
635 | tpm2/*.gcno \
|
---|
636 | tpm2/crypto/openssl/*.gcov \
|
---|
637 | tpm2/crypto/openssl/*.gcda \
|
---|
638 | tpm2/crypto/openssl/*.gcno
|
---|