| ################################################################################ |
| # |
| # omniorb |
| # |
| ################################################################################ |
| |
| OMNIORB_VERSION = 4.2.4 |
| OMNIORB_SITE = http://downloads.sourceforge.net/project/omniorb/omniORB/omniORB-$(OMNIORB_VERSION) |
| OMNIORB_SOURCE = omniORB-$(OMNIORB_VERSION).tar.bz2 |
| OMNIORB_INSTALL_STAGING = YES |
| OMNIORB_LICENSE = GPL2+, LGPL-2.1+ |
| OMNIORB_LICENSE_FILES = COPYING COPYING.LIB |
| OMNIORB_DEPENDENCIES = host-omniorb |
| HOST_OMNIORB_DEPENDENCIES = host-python |
| |
| # omniorb is not python3 friendly, so force the python interpreter |
| OMNIORB_CONF_OPTS = ac_cv_path_PYTHON=$(HOST_DIR)/bin/python2 |
| HOST_OMNIORB_CONF_OPTS = ac_cv_path_PYTHON=$(HOST_DIR)/bin/python2 |
| |
| # Defaulting long double support to a safe option for the |
| # mix of embedded targets, this could later be automated |
| # based on checking the capability of the cross toolchain |
| # for "__LONG_DOUBLE_128__". Currently the host and target |
| # need to match because of the code generation done by the |
| # host tools during the target compile (ie headers generated |
| # on host are used in target build). |
| OMNIORB_CONF_OPTS += --disable-longdouble |
| HOST_OMNIORB_CONF_OPTS += --disable-longdouble |
| |
| ifeq ($(BR2_PACKAGE_OPENSSL),y) |
| OMNIORB_CONF_OPTS += --with-openssl |
| OMNIORB_DEPENDENCIES += openssl |
| else |
| OMNIORB_CONF_OPTS += --without-openssl |
| endif |
| |
| ifeq ($(BR2_PACKAGE_ZLIB),y) |
| OMNIORB_DEPENDENCIES += zlib |
| endif |
| |
| # The EmbeddedSystem define (set below in OMNIORB_ADJUST_TOOLDIR) |
| # enables building of just the lib and disables building of |
| # tools/apps/services. In some cases the apps/services are still |
| # required. The tools however are host related and should never |
| # be required on target. |
| define OMNIORB_ENABLE_EXTRA_APPS |
| $(SED) 's:SUBDIRS += lib:SUBDIRS += lib appl services:g' $(@D)/src/dir.mk |
| endef |
| |
| ifeq ($(BR2_PACKAGE_OMNIORB_WITH_APPS),y) |
| OMNIORB_POST_PATCH_HOOKS += OMNIORB_ENABLE_EXTRA_APPS |
| endif |
| |
| ifeq ($(BR2_STATIC_LIBS),y) |
| define OMNIORB_DISABLE_SHARED |
| echo "BuildSharedLibrary =" >> $(@D)/mk/beforeauto.mk |
| endef |
| OMNIORB_POST_CONFIGURE_HOOKS += OMNIORB_DISABLE_SHARED |
| endif |
| |
| # omniORB is not completely cross-compile friendly and has some |
| # assumptions where a couple host tools must be built and then |
| # used by the target build. The host tools generate code from |
| # the IDL description language, which is then built into the |
| # cross compiled target OMNIORB application. |
| define OMNIORB_ADJUST_TOOLDIR |
| # Point to the host folder to get HOST_OMNIORB tools |
| $(SED) 's:TOOLBINDIR = $$(TOP)/$$(BINDIR):TOOLBINDIR = $(HOST_DIR)/bin:g' $(@D)/mk/beforeauto.mk |
| # Disables OMNIORB app/service/tool building |
| echo "EmbeddedSystem=1" >> $(@D)/mk/beforeauto.mk |
| endef |
| OMNIORB_POST_CONFIGURE_HOOKS += OMNIORB_ADJUST_TOOLDIR |
| |
| $(eval $(autotools-package)) |
| $(eval $(host-autotools-package)) |