omniorb.mk 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. ################################################################################
  2. #
  3. # omniorb
  4. #
  5. ################################################################################
  6. OMNIORB_VERSION = 4.2.0
  7. OMNIORB_SITE = http://downloads.sourceforge.net/project/omniorb/omniORB/omniORB-$(OMNIORB_VERSION)
  8. OMNIORB_SOURCE = omniORB-$(OMNIORB_VERSION).tar.bz2
  9. OMNIORB_INSTALL_STAGING = YES
  10. OMNIORB_LICENSE = GPL2+ LGPLv2.1+
  11. OMNIORB_LICENSE_FILES = COPYING COPYING.LIB
  12. OMNIORB_DEPENDENCIES = host-omniorb
  13. HOST_OMNIORB_DEPENDENCIES = host-python
  14. OMNIORB_INSTALL_TARGET = YES
  15. # omniorb is not python3 friendly, so force the python interpreter
  16. OMNIORB_CONF_OPTS = ac_cv_path_PYTHON=$(HOST_DIR)/usr/bin/python2
  17. HOST_OMNIORB_CONF_OPTS = ac_cv_path_PYTHON=$(HOST_DIR)/usr/bin/python2
  18. # Defaulting long double support to a safe option for the
  19. # mix of embedded targets, this could later be automated
  20. # based on checking the capability of the cross toolchain
  21. # for "__LONG_DOUBLE_128__". Currently the host and target
  22. # need to match because of the code generation done by the
  23. # host tools during the target compile (ie headers generated
  24. # on host are used in target build).
  25. OMNIORB_CONF_OPTS += --disable-longdouble
  26. HOST_OMNIORB_CONF_OPTS += --disable-longdouble
  27. # The EmbeddedSystem define (set below in OMNIORB_ADJUST_TOOLDIR)
  28. # enables building of just the lib and disables building of
  29. # tools/apps/services. In some cases the apps/services are still
  30. # required. The tools however are host related and should never
  31. # be required on target.
  32. define OMNIORB_ENABLE_EXTRA_APPS
  33. $(SED) 's:SUBDIRS += lib:SUBDIRS += lib appl services:g' $(@D)/src/dir.mk
  34. endef
  35. ifeq ($(BR2_PACKAGE_OMNIORB_WITH_APPS),y)
  36. OMNIORB_POST_PATCH_HOOKS += OMNIORB_ENABLE_EXTRA_APPS
  37. endif
  38. # omniORB is not completely cross-compile friendly and has some
  39. # assumptions where a couple host tools must be built and then
  40. # used by the target build. The host tools generate code from
  41. # the IDL description language, which is then built into the
  42. # cross compiled target OMNIORB application.
  43. define OMNIORB_ADJUST_TOOLDIR
  44. # Point to the host folder to get HOST_OMNIORB tools
  45. $(SED) 's:TOOLBINDIR = $$(TOP)/$$(BINDIR):TOOLBINDIR = $(HOST_DIR)/usr/bin:g' $(@D)/mk/beforeauto.mk
  46. # Disables OMNIORB app/service/tool building
  47. echo "EmbeddedSystem=1" >> $(@D)/mk/beforeauto.mk
  48. endef
  49. OMNIORB_POST_CONFIGURE_HOOKS += OMNIORB_ADJUST_TOOLDIR
  50. $(eval $(autotools-package))
  51. $(eval $(host-autotools-package))