| 
									
										
										
										
											2019-07-16 19:28:54 +04:00
										 |  |  | crypto_ss = ss.source_set()
 | 
					
						
							|  |  |  | crypto_ss.add(genh)
 | 
					
						
							|  |  |  | crypto_ss.add(files(
 | 
					
						
							|  |  |  |   'afsplit.c',
 | 
					
						
							|  |  |  |   'block-luks.c',
 | 
					
						
							|  |  |  |   'block-qcow.c',
 | 
					
						
							|  |  |  |   'block.c',
 | 
					
						
							|  |  |  |   'cipher.c',
 | 
					
						
							|  |  |  |   'desrfb.c',
 | 
					
						
							|  |  |  |   'hash.c',
 | 
					
						
							|  |  |  |   'hmac.c',
 | 
					
						
							|  |  |  |   'ivgen-essiv.c',
 | 
					
						
							|  |  |  |   'ivgen-plain.c',
 | 
					
						
							|  |  |  |   'ivgen-plain64.c',
 | 
					
						
							|  |  |  |   'ivgen.c',
 | 
					
						
							|  |  |  |   'pbkdf.c',
 | 
					
						
							|  |  |  |   'secret_common.c',
 | 
					
						
							|  |  |  |   'secret.c',
 | 
					
						
							|  |  |  |   'tlscreds.c',
 | 
					
						
							|  |  |  |   'tlscredsanon.c',
 | 
					
						
							|  |  |  |   'tlscredspsk.c',
 | 
					
						
							|  |  |  |   'tlscredsx509.c',
 | 
					
						
							|  |  |  |   'tlssession.c',
 | 
					
						
							|  |  |  | ))
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-09-01 14:30:49 +01:00
										 |  |  | if 'CONFIG_NETTLE' in config_host
 | 
					
						
							|  |  |  |   crypto_ss.add(files('hash-nettle.c', 'hmac-nettle.c', 'pbkdf-nettle.c'))
 | 
					
						
							|  |  |  | elif 'CONFIG_GCRYPT' in config_host
 | 
					
						
							|  |  |  |   crypto_ss.add(files('hash-gcrypt.c', 'pbkdf-gcrypt.c'))
 | 
					
						
							|  |  |  |   if 'CONFIG_GCRYPT_HMAC' in config_host
 | 
					
						
							|  |  |  |     crypto_ss.add(files('hmac-gcrypt.c'))
 | 
					
						
							|  |  |  |   else
 | 
					
						
							|  |  |  |     crypto_ss.add(files('hmac-glib.c'))
 | 
					
						
							|  |  |  |   endif
 | 
					
						
							| 
									
										
										
										
											2019-07-16 19:28:54 +04:00
										 |  |  | else
 | 
					
						
							| 
									
										
										
										
											2020-09-01 14:30:49 +01:00
										 |  |  |   crypto_ss.add(files('hash-glib.c', 'hmac-glib.c', 'pbkdf-stub.c'))
 | 
					
						
							| 
									
										
										
										
											2019-07-16 19:28:54 +04:00
										 |  |  | endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | crypto_ss.add(when: 'CONFIG_SECRET_KEYRING', if_true: files('secret_keyring.c'))
 | 
					
						
							|  |  |  | crypto_ss.add(when: 'CONFIG_QEMU_PRIVATE_XTS', if_true: files('xts.c'))
 | 
					
						
							|  |  |  | crypto_ss.add(when: 'CONFIG_AF_ALG', if_true: files('afalg.c', 'cipher-afalg.c', 'hash-afalg.c'))
 | 
					
						
							|  |  |  | crypto_ss.add(when: 'CONFIG_GNUTLS', if_true: files('tls-cipher-suites.c'))
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-09-01 14:30:49 +01:00
										 |  |  | if 'CONFIG_NETTLE' in config_host
 | 
					
						
							|  |  |  |   crypto_ss.add(nettle)
 | 
					
						
							|  |  |  | elif 'CONFIG_GCRYPT' in config_host
 | 
					
						
							|  |  |  |   crypto_ss.add(gcrypt)
 | 
					
						
							|  |  |  | endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if 'CONFIG_GNUTLS' in config_host
 | 
					
						
							|  |  |  |   crypto_ss.add(gnutls)
 | 
					
						
							|  |  |  | endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-07-16 19:28:54 +04:00
										 |  |  | crypto_ss = crypto_ss.apply(config_host, strict: false)
 | 
					
						
							|  |  |  | libcrypto = static_library('crypto', crypto_ss.sources() + genh,
 | 
					
						
							|  |  |  |                            dependencies: [crypto_ss.dependencies()],
 | 
					
						
							|  |  |  |                            name_suffix: 'fa',
 | 
					
						
							|  |  |  |                            build_by_default: false)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | crypto = declare_dependency(link_whole: libcrypto,
 | 
					
						
							|  |  |  |                             dependencies: [authz, qom])
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-08-19 08:44:56 -04:00
										 |  |  | util_ss.add(files('aes.c'))
 | 
					
						
							|  |  |  | util_ss.add(files('init.c'))
 | 
					
						
							| 
									
										
										
										
											2020-09-01 14:30:49 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-08-19 08:44:56 -04:00
										 |  |  | if 'CONFIG_GCRYPT' in config_host
 | 
					
						
							|  |  |  |   util_ss.add(files('random-gcrypt.c'))
 | 
					
						
							|  |  |  | elif 'CONFIG_GNUTLS' in config_host
 | 
					
						
							| 
									
										
										
										
											2020-09-01 14:30:49 +01:00
										 |  |  |   util_ss.add(files('random-gnutls.c'))
 | 
					
						
							| 
									
										
										
										
											2020-08-19 08:44:56 -04:00
										 |  |  | elif 'CONFIG_RNG_NONE' in config_host
 | 
					
						
							|  |  |  |   util_ss.add(files('random-none.c'))
 | 
					
						
							|  |  |  | else
 | 
					
						
							|  |  |  |   util_ss.add(files('random-platform.c'))
 | 
					
						
							|  |  |  | endif
 | 
					
						
							| 
									
										
										
										
											2020-09-01 14:30:49 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | if 'CONFIG_GCRYPT' in config_host
 | 
					
						
							|  |  |  |   util_ss.add(gcrypt)
 | 
					
						
							|  |  |  | endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if 'CONFIG_GNUTLS' in config_host
 | 
					
						
							|  |  |  |   util_ss.add(gnutls)
 | 
					
						
							|  |  |  | endif
 |