openssl.mk 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #############################################################
  2. #
  3. # openssl
  4. #
  5. #############################################################
  6. OPENSSL_VERSION:=0.9.8n
  7. OPENSSL_SITE:=http://www.openssl.org/source
  8. OPENSSL_TARGET_ARCH=generic32
  9. # Some architectures are optimized in OpenSSL
  10. ifeq ($(ARCH),ia64)
  11. OPENSSL_TARGET_ARCH=ia64
  12. endif
  13. ifeq ($(ARCH),powerpc)
  14. OPENSSL_TARGET_ARCH=ppc
  15. endif
  16. ifeq ($(ARCH),x86_64)
  17. OPENSSL_TARGET_ARCH=x86_64
  18. endif
  19. OPENSSL_INSTALL_STAGING = YES
  20. OPENSSL_INSTALL_STAGING_OPT = INSTALL_PREFIX=$(STAGING_DIR) install
  21. OPENSSL_INSTALL_TARGET_OPT = INSTALL_PREFIX=$(TARGET_DIR) install
  22. OPENSSL_DEPENDENCIES = zlib
  23. $(eval $(call AUTOTARGETS,package,openssl))
  24. $(OPENSSL_TARGET_CONFIGURE):
  25. (cd $(OPENSSL_DIR); \
  26. $(TARGET_CONFIGURE_ARGS) \
  27. $(TARGET_CONFIGURE_OPTS) \
  28. ./Configure \
  29. linux-$(OPENSSL_TARGET_ARCH) \
  30. --prefix=/usr \
  31. --openssldir=/etc/ssl \
  32. threads \
  33. shared \
  34. no-idea \
  35. no-mdc2 \
  36. no-rc5 \
  37. zlib-dynamic \
  38. )
  39. $(SED) "s:-march=[-a-z0-9] ::" -e "s:-mcpu=[-a-z0-9] ::g" $(OPENSSL_DIR)/Makefile
  40. $(SED) "s:-O[0-9]:$(TARGET_CFLAGS):" $(OPENSSL_DIR)/Makefile
  41. touch $@
  42. $(OPENSSL_TARGET_BUILD):
  43. $(MAKE1) CC=$(TARGET_CC) -C $(OPENSSL_DIR) all build-shared
  44. $(MAKE1) CC=$(TARGET_CC) -C $(OPENSSL_DIR) do_linux-shared
  45. touch $@
  46. $(OPENSSL_HOOK_POST_INSTALL):
  47. $(if $(BR2_HAVE_DEVFILES),,rm -rf $(TARGET_DIR)/usr/lib/ssl)
  48. ifeq ($(BR2_PACKAGE_OPENSSL_BIN),y)
  49. $(STRIPCMD) $(STRIP_STRIP_ALL) $(TARGET_DIR)/usr/bin/openssl
  50. else
  51. rm -f $(TARGET_DIR)/usr/bin/openssl
  52. endif
  53. rm -f $(TARGET_DIR)/usr/bin/c_rehash
  54. # libraries gets installed read only, so strip fails
  55. for i in $(addprefix $(TARGET_DIR)/usr/lib/,libcrypto.so.* libssl.so.*); \
  56. do chmod +w $$i; $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $$i; done
  57. ifneq ($(BR2_PACKAGE_OPENSSL_ENGINES),y)
  58. rm -rf $(TARGET_DIR)/usr/lib/engines
  59. else
  60. chmod +w $(TARGET_DIR)/usr/lib/engines/lib*.so
  61. $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/engines/lib*.so
  62. endif
  63. touch $@
  64. $(OPENSSL_TARGET_UNINSTALL):
  65. $(call MESSAGE,"Uninstalling")
  66. rm -rf $(addprefix $(TARGET_DIR)/,etc/ssl usr/bin/openssl usr/include/openssl)
  67. rm -rf $(addprefix $(TARGET_DIR)/usr/lib/,ssl engines libcrypto* libssl* pkgconfig/libcrypto.pc)
  68. rm -rf $(addprefix $(STAGING_DIR)/,etc/ssl usr/bin/openssl usr/include/openssl)
  69. rm -rf $(addprefix $(STAGING_DIR)/usr/lib/,ssl engines libcrypto* libssl* pkgconfig/libcrypto.pc)
  70. rm -f $(OPENSSL_TARGET_INSTALL_TARGET) $(OPENSSL_HOOK_POST_INSTALL)