libkrb5.mk 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. ################################################################################
  2. #
  3. # libkrb5
  4. #
  5. ################################################################################
  6. LIBKRB5_VERSION_MAJOR = 1.21
  7. LIBKRB5_VERSION = $(LIBKRB5_VERSION_MAJOR).3
  8. LIBKRB5_SITE = https://web.mit.edu/kerberos/dist/krb5/$(LIBKRB5_VERSION_MAJOR)
  9. LIBKRB5_SOURCE = krb5-$(LIBKRB5_VERSION).tar.gz
  10. LIBKRB5_SUBDIR = src
  11. LIBKRB5_LICENSE = MIT, BSD-2-Clause, BSD-3-Clause, BSD-4-Clause, others
  12. LIBKRB5_LICENSE_FILES = NOTICE
  13. LIBKRB5_CPE_ID_VENDOR = mit
  14. LIBKRB5_CPE_ID_PRODUCT = kerberos_5
  15. LIBKRB5_DEPENDENCIES = host-bison $(TARGET_NLS_DEPENDENCIES)
  16. LIBKRB5_INSTALL_STAGING = YES
  17. # The configure script uses AC_TRY_RUN tests to check for those values,
  18. # which doesn't work in a cross-compilation scenario. Therefore,
  19. # we feed the configure script with the correct answer for those tests
  20. LIBKRB5_CONF_ENV = \
  21. ac_cv_printf_positional=yes \
  22. ac_cv_func_regcomp=yes \
  23. krb5_cv_attr_constructor_destructor=yes,yes \
  24. LIBS=$(TARGET_NLS_LIBS)
  25. # Never use the host packages
  26. LIBKRB5_CONF_OPTS = \
  27. --without-system-db \
  28. --without-system-et \
  29. --without-system-ss \
  30. --without-system-verto \
  31. --without-tcl \
  32. --disable-rpath
  33. # libkrb5 has some assembly function that is not present in Thumb mode:
  34. # Error: selected processor does not support `mcr p15,0,r2,c7,c10,5' in Thumb mode
  35. # so, we deactivate Thumb mode
  36. ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y)
  37. LIBKRB5_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -marm"
  38. endif
  39. # Enabling static and shared at the same time is not supported
  40. ifeq ($(BR2_SHARED_STATIC_LIBS),y)
  41. LIBKRB5_CONF_OPTS += --disable-static
  42. endif
  43. ifeq ($(BR2_PACKAGE_OPENLDAP),y)
  44. LIBKRB5_CONF_OPTS += --with-ldap
  45. LIBKRB5_DEPENDENCIES += openldap
  46. else
  47. LIBKRB5_CONF_OPTS += --without-ldap
  48. endif
  49. ifeq ($(BR2_PACKAGE_LIBOPENSSL),y)
  50. LIBKRB5_CONF_OPTS += \
  51. --enable-pkinit \
  52. --with-crypto-impl=openssl \
  53. --with-spake-openssl \
  54. --with-tls-impl=openssl
  55. LIBKRB5_DEPENDENCIES += openssl
  56. else
  57. LIBKRB5_CONF_OPTS += \
  58. --disable-pkinit \
  59. --with-crypto-impl=builtin \
  60. --without-spake-openssl \
  61. --without-tls-impl
  62. endif
  63. ifeq ($(BR2_PACKAGE_LIBEDIT),y)
  64. LIBKRB5_CONF_OPTS += --with-libedit
  65. LIBKRB5_DEPENDENCIES += host-pkgconf libedit
  66. else
  67. LIBKRB5_CONF_OPTS += --without-libedit
  68. endif
  69. ifeq ($(BR2_PACKAGE_READLINE),y)
  70. LIBKRB5_CONF_OPTS += --with-readline
  71. LIBKRB5_DEPENDENCIES += readline
  72. else
  73. LIBKRB5_CONF_OPTS += --without-readline
  74. endif
  75. ifneq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
  76. LIBKRB5_CONF_OPTS += --disable-thread-support
  77. endif
  78. $(eval $(autotools-package))