libxmlrpc.mk 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. ################################################################################
  2. #
  3. # libxmlrpc
  4. #
  5. ################################################################################
  6. # 1.67.00 (code/advanced@r3335)
  7. LIBXMLRPC_VERSION = r3335
  8. LIBXMLRPC_SITE = https://svn.code.sf.net/p/xmlrpc-c/code/advanced
  9. LIBXMLRPC_SITE_METHOD = svn
  10. LIBXMLRPC_LICENSE = BSD-3-Clause (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c)
  11. LIBXMLRPC_LICENSE_FILES = doc/COPYING
  12. LIBXMLRPC_INSTALL_STAGING = YES
  13. LIBXMLRPC_DEPENDENCIES = libcurl host-autoconf
  14. LIBXMLRPC_CONFIG_SCRIPTS = xmlrpc-c-config
  15. LIBXMLRPC_MAKE = $(MAKE1)
  16. # Using autoconf, not automake, so we cannot use AUTORECONF = YES.
  17. define LIBXMLRPC_RUN_AUTOCONF
  18. cd $(@D); $(AUTOCONF)
  19. endef
  20. LIBXMLRPC_PRE_CONFIGURE_HOOKS += LIBXMLRPC_RUN_AUTOCONF
  21. LIBXMLRPC_CONF_OPTS = \
  22. $(if $(BR2_USE_WCHAR),,ac_cv_header_wchar_h=no) \
  23. $(if $(BR2_INSTALL_LIBSTDCPP),,--disable-cplusplus) \
  24. have_curl_config=$(STAGING_DIR)/usr/bin/curl-config \
  25. CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config
  26. # Our package uses autoconf, but not automake, so we need to pass
  27. # those variables at compile time as well.
  28. LIBXMLRPC_MAKE_OPTS = \
  29. CC_FOR_BUILD="$(HOSTCC)" \
  30. LD_FOR_BUILD="$(HOSTLD)" \
  31. CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
  32. LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)"
  33. ifeq ($(BR2_STATIC_LIBS),y)
  34. LIBXMLRPC_STATIC_OPTS = SHARED_LIB_TYPE=NONE MUST_BUILD_SHLIB=N
  35. endif
  36. ifeq ($(BR2_PACKAGE_OPENSSL),y)
  37. LIBXMLRPC_DEPENDENCIES += host-pkgconf openssl
  38. LIBXMLRPC_CONF_OPTS += --enable-abyss-openssl
  39. else
  40. LIBXMLRPC_CONF_OPTS += --disable-abyss-openssl
  41. endif
  42. ifeq ($(BR2_PACKAGE_LIBXML2),y)
  43. LIBXMLRPC_DEPENDENCIES += libxml2
  44. else
  45. LIBXMLRPC_CONF_OPTS += --disable-libxml2-backend
  46. endif
  47. LIBXMLRPC_MAKE_OPTS += $(LIBXMLRPC_STATIC_OPTS)
  48. LIBXMLRPC_INSTALL_STAGING_OPTS = $(LIBXMLRPC_STATIC_OPTS) \
  49. DESTDIR=$(STAGING_DIR) install
  50. LIBXMLRPC_INSTALL_TARGET_OPTS = $(LIBXMLRPC_STATIC_OPTS) \
  51. DESTDIR=$(TARGET_DIR) install
  52. ifeq ($(BR2_PACKAGE_LIBXMLRPC_TOOLS_XMLRPC),y)
  53. define LIBXMLRPC_TOOLS_XMLRPC_BUILD_CMDS
  54. $(TARGET_MAKE_ENV) $(MAKE) $(LIBXMLRPC_MAKE_OPTS) -C $(@D)/tools/xmlrpc
  55. endef
  56. LIBXMLRPC_POST_BUILD_HOOKS += LIBXMLRPC_TOOLS_XMLRPC_BUILD_CMDS
  57. define LIBXMLRPC_TOOLS_XMLRPC_INSTALL_TARGET_CMDS
  58. $(TARGET_MAKE_ENV) $(MAKE) $(LIBXMLRPC_MAKE_OPTS) -C $(@D)/tools/xmlrpc \
  59. DESTDIR=$(TARGET_DIR) install
  60. endef
  61. LIBXMLRPC_POST_INSTALL_TARGET_HOOKS += LIBXMLRPC_TOOLS_XMLRPC_INSTALL_TARGET_CMDS
  62. endif
  63. $(eval $(autotools-package))