Makefile 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #
  2. # Copyright (c) 2007, Cameron Rich
  3. #
  4. # All rights reserved.
  5. #
  6. # Redistribution and use in source and binary forms, with or without
  7. # modification, are permitted provided that the following conditions are met:
  8. #
  9. # * Redistributions of source code must retain the above copyright notice,
  10. # this list of conditions and the following disclaimer.
  11. # * Redistributions in binary form must reproduce the above copyright
  12. # notice, this list of conditions and the following disclaimer in the
  13. # documentation and/or other materials provided with the distribution.
  14. # * Neither the name of the axTLS project nor the names of its
  15. # contributors may be used to endorse or promote products derived
  16. # from this software without specific prior written permission.
  17. #
  18. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  19. # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  20. # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  21. # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
  22. # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  23. # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
  24. # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  25. # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  26. # OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  27. # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  28. # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  29. #
  30. all:
  31. AXTLS_HOME=../..
  32. include $(AXTLS_HOME)/config/.config
  33. include $(AXTLS_HOME)/config/makefile.conf
  34. ifdef CONFIG_PERFORMANCE_TESTING
  35. all: performance
  36. endif
  37. ifdef CONFIG_SSL_TEST
  38. all: ssltesting
  39. endif
  40. include $(AXTLS_HOME)/config/makefile.post
  41. ifndef CONFIG_PLATFORM_WIN32
  42. performance: $(AXTLS_HOME)/$(STAGE)/perf_bigint
  43. ssltesting: $(AXTLS_HOME)/$(STAGE)/ssltest
  44. LIBS=$(AXTLS_HOME)/$(STAGE)
  45. $(AXTLS_HOME)/$(STAGE)/perf_bigint: perf_bigint.o $(LIBS)/libaxtls.a
  46. $(CC) $(LDFLAGS) -o $@ $^ -L $(LIBS) -laxtls
  47. $(AXTLS_HOME)/$(STAGE)/ssltest: ssltest.o $(LIBS)/libaxtls.a
  48. $(CC) $(LDFLAGS) -o $@ $^ -lpthread -L $(LIBS) -laxtls
  49. else
  50. performance: $(AXTLS_HOME)/$(STAGE)/perf_bigint.exe
  51. ssltesting: $(AXTLS_HOME)/$(STAGE)/ssltest.exe
  52. CRYPTO_PATH="$(AXTLS_INCLUDE)crypto\\"
  53. AXTLS_SSL_PATH="$(AXTLS_INCLUDE)ssl\\"
  54. CRYPTO_OBJ=\
  55. $(CRYPTO_PATH)aes.obj \
  56. $(CRYPTO_PATH)bigint.obj \
  57. $(CRYPTO_PATH)crypto_misc.obj \
  58. $(CRYPTO_PATH)hmac.obj \
  59. $(CRYPTO_PATH)md2.obj \
  60. $(CRYPTO_PATH)md5.obj \
  61. $(CRYPTO_PATH)rc4.obj \
  62. $(CRYPTO_PATH)rsa.obj \
  63. $(CRYPTO_PATH)sha1.obj
  64. OBJ=\
  65. $(AXTLS_SSL_PATH)asn1.obj \
  66. $(AXTLS_SSL_PATH)gen_cert.obj \
  67. $(AXTLS_SSL_PATH)loader.obj \
  68. $(AXTLS_SSL_PATH)openssl.obj \
  69. $(AXTLS_SSL_PATH)os_port.obj \
  70. $(AXTLS_SSL_PATH)p12.obj \
  71. $(AXTLS_SSL_PATH)x509.obj \
  72. $(AXTLS_SSL_PATH)tls1.obj \
  73. $(AXTLS_SSL_PATH)tls1_svr.obj \
  74. $(AXTLS_SSL_PATH)tls1_clnt.obj
  75. $(AXTLS_HOME)/$(STAGE)/perf_bigint.exe: perf_bigint.obj
  76. $(LD) $(LDFLAGS) /out:$@ $? $(CRYPTO_OBJ) $(OBJ)
  77. $(AXTLS_HOME)/$(STAGE)/ssltest.exe: ssltest.obj
  78. $(LD) $(LDFLAGS) /out:$@ $? $(CRYPTO_OBJ) $(OBJ)
  79. endif
  80. clean::
  81. -@rm -f $(AXTLS_HOME)/$(STAGE)/perf_bigint* $(AXTLS_HOME)/$(STAGE)/ssltest*