Makefile.am 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319
  1. # includes append to these:
  2. SUFFIXES =
  3. TESTS =
  4. CLEANFILES =
  5. DISTCLEANFILES =
  6. MAINTAINERCLEANFILES =
  7. bin_PROGRAMS =
  8. noinst_HEADERS =
  9. lib_LTLIBRARIES =
  10. man_MANS =
  11. noinst_LTLIBRARIES =
  12. noinst_PROGRAMS =
  13. include_HEADERS =
  14. nobase_include_HEADERS =
  15. check_PROGRAMS =
  16. EXTRA_HEADERS =
  17. BUILT_SOURCES=
  18. EXTRA_DIST=
  19. dist_doc_DATA=
  20. dist_noinst_SCRIPTS =
  21. noinst_SCRIPTS =
  22. check_SCRIPTS =
  23. noinst_DATA =
  24. ignore_files =
  25. SUBDIRS_OPT =
  26. DIST_SUBDIRS_OPT =
  27. # allow supplementary or override flags to be passed at make time:
  28. AM_CPPFLAGS += $(EXTRA_CPPFLAGS)
  29. AM_CFLAGS += $(EXTRA_CFLAGS)
  30. AM_CCASFLAGS += $(EXTRA_CCASFLAGS)
  31. AM_LDFLAGS += $(EXTRA_LDFLAGS)
  32. #includes additional rules from aminclude.am
  33. @INC_AMINCLUDE@
  34. DISTCLEANFILES+= aminclude.am \
  35. .build_params
  36. CLEANFILES+= ecc-key.der \
  37. ecc-public-key.der \
  38. cert.der \
  39. cert.pem \
  40. certecc.der \
  41. certecc.pem \
  42. certreq.der \
  43. certreq.pem \
  44. key.der \
  45. key.pem \
  46. ecc-key-pkcs8.der \
  47. othercert.der \
  48. othercert.pem \
  49. pkcs7cert.der \
  50. pkcs7authEnvelopedDataAES128GCM.der \
  51. pkcs7authEnvelopedDataAES128GCM_ECDH_SHA1KDF.der \
  52. pkcs7authEnvelopedDataAES128GCM_KEKRI.der \
  53. pkcs7authEnvelopedDataAES128GCM_ORI.der \
  54. pkcs7authEnvelopedDataAES128GCM_PWRI.der \
  55. pkcs7authEnvelopedDataAES192GCM.der \
  56. pkcs7authEnvelopedDataAES256GCM.der \
  57. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA256KDF.der \
  58. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA256KDF_authAttribs.der \
  59. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA256KDF_bothAttribs.der \
  60. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA256KDF_fw_bothAttribs.der \
  61. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA256KDF_unauthAttribs.der \
  62. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA512KDF.der \
  63. pkcs7authEnvelopedDataAES256GCM_ECDH_SHA512KDF_ukm.der \
  64. pkcs7authEnvelopedDataAES256GCM_firmwarePkgData.der \
  65. pkcs7authEnvelopedDataAES256GCM_IANDS.der \
  66. pkcs7authEnvelopedDataAES256GCM_SKID.der \
  67. pkcs7compressedData_data_zlib.der \
  68. pkcs7compressedData_firmwarePkgData_zlib.der \
  69. pkcs7encryptedDataAES128CBC.der \
  70. pkcs7encryptedDataAES192CBC.der \
  71. pkcs7encryptedDataAES256CBC_attribs.der \
  72. pkcs7encryptedDataAES256CBC.der \
  73. pkcs7encryptedDataAES256CBC_firmwarePkgData.der \
  74. pkcs7encryptedDataAES256CBC_multi_attribs.der \
  75. pkcs7encryptedDataDES3.der \
  76. pkcs7encryptedDataDES.der \
  77. pkcs7envelopedDataAES256CBC_ECDH.der \
  78. pkcs7envelopedDataAES128CBC_ECDH_SHA1KDF.der \
  79. pkcs7envelopedDataAES256CBC_ECDH_SHA256KDF.der \
  80. pkcs7envelopedDataAES256CBC_ECDH_SHA512KDF.der \
  81. pkcs7envelopedDataAES256CBC_ECDH_SHA512KDF_ukm.der \
  82. pkcs7envelopedDataDES3.der \
  83. pkcs7envelopedDataAES128CBC.der \
  84. pkcs7envelopedDataAES128CBC_KEKRI.der \
  85. pkcs7envelopedDataAES128CBC_PWRI.der \
  86. pkcs7envelopedDataAES128CBC_ORI.der \
  87. pkcs7envelopedDataAES192CBC.der \
  88. pkcs7envelopedDataAES256CBC.der \
  89. pkcs7envelopedDataAES256CBC_IANDS.der \
  90. pkcs7envelopedDataAES256CBC_SKID.der \
  91. pkcs7signedData_RSA_SHA.der \
  92. pkcs7signedData_RSA_SHA_noattr.der \
  93. pkcs7signedData_RSA_SHA224.der \
  94. pkcs7signedData_RSA_SHA256.der \
  95. pkcs7signedData_RSA_SHA256_firmwarePkgData.der \
  96. pkcs7signedData_RSA_SHA256_custom_contentType.der \
  97. pkcs7signedData_RSA_SHA256_with_ca_cert.der \
  98. pkcs7signedData_RSA_SHA256_SKID.der \
  99. pkcs7signedData_RSA_SHA256_detachedSig.der \
  100. pkcs7signedData_RSA_SHA384.der \
  101. pkcs7signedData_RSA_SHA512.der \
  102. pkcs7signedData_ECDSA_SHA.der \
  103. pkcs7signedData_ECDSA_SHA_noattr.der \
  104. pkcs7signedData_ECDSA_SHA224.der \
  105. pkcs7signedData_ECDSA_SHA256.der \
  106. pkcs7signedData_ECDSA_SHA256_firmwarePkgData.der \
  107. pkcs7signedData_ECDSA_SHA256_custom_contentType.der \
  108. pkcs7signedData_ECDSA_SHA256_SKID.der \
  109. pkcs7signedData_ECDSA_SHA384.der \
  110. pkcs7signedData_ECDSA_SHA512.der \
  111. pkcs7signedFirmwarePkgData_ECDSA_SHA256.der \
  112. pkcs7signedFirmwarePkgData_ECDSA_SHA256_SKID.der \
  113. pkcs7signedFirmwarePkgData_ECDSA_SHA256_noattr.der \
  114. pkcs7signedFirmwarePkgData_RSA_SHA256.der \
  115. pkcs7signedFirmwarePkgData_RSA_SHA256_SKID.der \
  116. pkcs7signedFirmwarePkgData_RSA_SHA256_noattr.der \
  117. pkcs7signedFirmwarePkgData_RSA_SHA256_with_ca_cert.der \
  118. pkcs7signedCompressedFirmwarePkgData_ECDSA_SHA256.der \
  119. pkcs7signedCompressedFirmwarePkgData_ECDSA_SHA256_noattr.der \
  120. pkcs7signedCompressedFirmwarePkgData_RSA_SHA256.der \
  121. pkcs7signedCompressedFirmwarePkgData_RSA_SHA256_noattr.der \
  122. pkcs7signedEncryptedFirmwarePkgData_RSA_SHA256.der \
  123. pkcs7signedEncryptedFirmwarePkgData_RSA_SHA256_noattr.der \
  124. pkcs7signedEncryptedFirmwarePkgData_ECDSA_SHA256.der \
  125. pkcs7signedEncryptedFirmwarePkgData_ECDSA_SHA256_noattr.der \
  126. pkcs7signedEncryptedCompressedFirmwarePkgData_ECDSA_SHA256.der \
  127. pkcs7signedEncryptedCompressedFirmwarePkgData_ECDSA_SHA256_noattr.der \
  128. pkcs7signedEncryptedCompressedFirmwarePkgData_RSA_SHA256.der \
  129. pkcs7signedEncryptedCompressedFirmwarePkgData_RSA_SHA256_noattr.der \
  130. tests/test-log-dump-to-file.txt \
  131. MyKeyLog.txt
  132. exampledir = $(docdir)/example
  133. dist_example_DATA=
  134. ACLOCAL_AMFLAGS= -I m4
  135. EXTRA_DIST+= .cyignore
  136. EXTRA_DIST+= wolfssl.vcproj
  137. EXTRA_DIST+= wolfssl.vcxproj
  138. EXTRA_DIST+= wolfssl-VS2022.vcxproj
  139. EXTRA_DIST+= wolfssl64.sln
  140. EXTRA_DIST+= valgrind-error.sh
  141. EXTRA_DIST+= valgrind-bash.supp
  142. EXTRA_DIST+= fips-hash.sh
  143. EXTRA_DIST+= gencertbuf.pl
  144. EXTRA_DIST+= README.md
  145. EXTRA_DIST+= README
  146. EXTRA_DIST+= ChangeLog.md
  147. EXTRA_DIST+= LICENSING
  148. EXTRA_DIST+= INSTALL
  149. EXTRA_DIST+= LPCExpresso.cproject
  150. EXTRA_DIST+= LPCExpresso.project
  151. EXTRA_DIST+= resource.h wolfssl.rc
  152. EXTRA_DIST+= CMakeLists.txt
  153. EXTRA_DIST+= m4/ax_atomic.m4
  154. include cmake/include.am
  155. include wrapper/include.am
  156. include wolfssl/include.am
  157. include certs/include.am
  158. include doc/include.am
  159. include Docker/include.am
  160. include src/include.am
  161. include support/include.am
  162. include wolfcrypt/benchmark/include.am
  163. include wolfcrypt/src/include.am
  164. include wolfcrypt/test/include.am
  165. include examples/include.am
  166. include testsuite/include.am
  167. include tests/include.am
  168. include sslSniffer/sslSnifferTest/include.am
  169. include debian/include.am
  170. include rpm/include.am
  171. include linuxkm/include.am
  172. include zephyr/include.am
  173. include RTOS/nuttx/include.am
  174. # Exclude references to non-DFSG sources from build files
  175. if !BUILD_DISTRO
  176. include mqx/util_lib/Sources/include.am
  177. include mqx/wolfcrypt_benchmark/Sources/include.am
  178. include mqx/wolfcrypt_test/Sources/include.am
  179. include mqx/wolfssl/include.am
  180. include mqx/wolfssl_client/Sources/include.am
  181. include mplabx/include.am
  182. include mplabx/wolfcrypt_benchmark.X/nbproject/include.am
  183. include mplabx/wolfcrypt_test.X/nbproject/include.am
  184. include mplabx/wolfssl.X/nbproject/include.am
  185. include mcapi/include.am
  186. include mcapi/wolfcrypt_mcapi.X/nbproject/include.am
  187. include mcapi/wolfcrypt_test.X/nbproject/include.am
  188. include mcapi/wolfssl.X/nbproject/include.am
  189. include mcapi/zlib.X/nbproject/include.am
  190. include tirtos/include.am
  191. include IDE/include.am
  192. endif
  193. include scripts/include.am
  194. if BUILD_LINUXKM
  195. # rather than setting $SUBDIRS here directly, we set an auxiliary variable.
  196. # autotools sees the SUBDIRS assignment here even if BUILD_LINUXKM is false,
  197. # at least for purposes of recursing for "make distdir", which we don't want to happen.
  198. SUBDIRS_OPT += linuxkm
  199. DIST_SUBDIRS_OPT += linuxkm
  200. export build_triplet host_triplet CC AS LD \
  201. KERNEL_ROOT KERNEL_ARCH KERNEL_EXTRA_CFLAGS \
  202. EXTRA_CFLAGS EXTRA_CPPFLAGS EXTRA_CCASFLAGS EXTRA_LDFLAGS \
  203. AM_CPPFLAGS CPPFLAGS AM_CFLAGS CFLAGS \
  204. AM_CCASFLAGS CCASFLAGS \
  205. src_libwolfssl_la_OBJECTS ENABLED_CRYPT_TESTS ENABLED_LINUXKM_PIE ENABLED_ASM \
  206. CFLAGS_FPU_DISABLE CFLAGS_FPU_ENABLE CFLAGS_SIMD_DISABLE CFLAGS_SIMD_ENABLE \
  207. CFLAGS_AUTO_VECTORIZE_DISABLE CFLAGS_AUTO_VECTORIZE_ENABLE \
  208. ASFLAGS_FPU_DISABLE_SIMD_ENABLE ASFLAGS_FPU_ENABLE_SIMD_DISABLE \
  209. ASFLAGS_FPUSIMD_DISABLE ASFLAGS_FPUSIMD_ENABLE ENABLED_LINUXKM_BENCHMARKS
  210. module:
  211. +$(MAKE) -C linuxkm libwolfssl.ko
  212. clean_module:
  213. +$(MAKE) -C linuxkm clean
  214. install_module modules_install:
  215. +$(MAKE) -C linuxkm modules_install
  216. endif
  217. if USE_VALGRIND
  218. TESTS_ENVIRONMENT=./valgrind-error.sh
  219. endif
  220. TEST_EXTENSIONS=.test
  221. TESTS += $(check_PROGRAMS)
  222. check_SCRIPTS+= $(dist_noinst_SCRIPTS)
  223. TESTS += $(check_SCRIPTS)
  224. test: check
  225. tests/unit.log: testsuite/testsuite.log
  226. scripts/unit.log: testsuite/testsuite.log
  227. DISTCLEANFILES+= wolfssl-config
  228. MAINTAINERCLEANFILES+= wolfssl/wolfcrypt/async.h
  229. MAINTAINERCLEANFILES+= wolfssl/wolfcrypt/fips.h
  230. MAINTAINERCLEANFILES+= wolfssl/wolfcrypt/port/cavium/cavium_nitrox.h
  231. MAINTAINERCLEANFILES+= wolfssl/wolfcrypt/port/intel/quickassist.h
  232. MAINTAINERCLEANFILES+= wolfssl/wolfcrypt/port/intel/quickassist_mem.h
  233. SUBDIRS=$(SUBDIRS_OPT)
  234. DIST_SUBDIRS=$(DIST_SUBDIRS_OPT)
  235. maintainer-clean-local:
  236. -rm Makefile.in
  237. -rm aclocal.m4
  238. -rm build-aux/compile
  239. -rm build-aux/config.guess
  240. -rm build-aux/config.sub
  241. -rm build-aux/depcomp
  242. -rm build-aux/install-sh
  243. -rm build-aux/ltmain.sh
  244. -rm build-aux/missing
  245. -rmdir build-aux
  246. -rm configure
  247. -rm config.log
  248. -rm config.status
  249. -rm config.in
  250. -rm m4/libtool.m4
  251. -rm m4/ltoptions.m4
  252. -rm m4/ltsugar.m4
  253. -rm m4/ltversion.m4
  254. -rm m4/lt~obsolete.m4
  255. -rm support/wolfssl.pc
  256. find . -type f -name '*~' -exec rm -f '{}' \;
  257. -rm -f @PACKAGE@-*.tar.gz
  258. -rm -f @PACKAGE@-*.rpm
  259. # !!!! first line of rule has to start with a hard (real) tab, not spaces
  260. egs:
  261. $(MAKE) examples/client/client; \
  262. $(MAKE) examples/echoclient/echoclient;\
  263. $(MAKE) examples/server/server; \
  264. $(MAKE) examples/echoserver/echoserver;
  265. wc_egs:
  266. $(MAKE) wolfcrypt/test/testwolfcrypt; \
  267. $(MAKE) wolfcrypt/benchmark/benchmark;
  268. install-exec-local: install-generic-config
  269. install-generic-config:
  270. $(mkinstalldirs) $(DESTDIR)$(bindir)
  271. $(INSTALL_SCRIPT) @GENERIC_CONFIG@ $(DESTDIR)$(bindir)
  272. uninstall-local:
  273. -rm -f $(DESTDIR)$(bindir)/@GENERIC_CONFIG@
  274. merge-clean:
  275. @find ./ | $(GREP) \.gcda | xargs rm -f
  276. @find ./ | $(GREP) \.gcno | xargs rm -f
  277. @find ./ | $(GREP) \.gz | xargs rm -f
  278. @find ./ | $(GREP) \.orig | xargs rm -f
  279. @find ./ | $(GREP) \.rej | xargs rm -f
  280. @find ./ | $(GREP) \.rpm | xargs rm -f
  281. @find ./ | $(GREP) \.THIS | xargs rm -f
  282. @find ./ | $(GREP) \.OTHER | xargs rm -f
  283. @find ./ | $(GREP) \.BASE | xargs rm -f
  284. @find ./ | $(GREP) \~$$ | xargs rm -f
  285. %.o: %.cu
  286. $(NVCC) -dc $(CUDAFLAGS) -o $@ $<
  287. .cu.lo:
  288. $(LIBTOOL) --tag=CC --mode=compile $(COMPILE) --compile -o $@ $< -static