xref: /OK3568_Linux_fs/buildroot/package/openmpi/openmpi.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# openmpi
4#
5################################################################################
6
7OPENMPI_VERSION_MAJOR = 4.0
8OPENMPI_VERSION = $(OPENMPI_VERSION_MAJOR).0
9OPENMPI_SITE = https://www.open-mpi.org/software/ompi/v$(OPENMPI_VERSION_MAJOR)/downloads
10OPENMPI_SOURCE = openmpi-$(OPENMPI_VERSION).tar.bz2
11OPENMPI_LICENSE = BSD-3-Clause
12OPENMPI_LICENSE_FILES = LICENSE
13OPENMPI_INSTALL_STAGING = YES
14
15# Enabling Fortran support requires pre-seeding the configure script
16# with various values that cannot be guessed, so we provide cache
17# files for various architectures.
18
19ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y)
20ifeq ($(BR2_mips)$(BR2_mipsel),y)
21OPENMPI_FORTRAN_CONF_CACHE = package/openmpi/openmpi-mips32-fortran.cache
22else ifeq ($(BR2_mips64)$(BR2_mips64el),y)
23OPENMPI_FORTRAN_CONF_CACHE = package/openmpi/openmpi-mips64-fortran.cache
24endif
25endif
26
27ifneq ($(OPENMPI_FORTRAN_CONF_CACHE),)
28define OPENMPI_COPY_FORTRAN_CACHE
29	cp $(OPENMPI_FORTRAN_CONF_CACHE) $(@D)/openmpi-config.cache
30endef
31
32OPENMPI_POST_PATCH_HOOKS += OPENMPI_COPY_FORTRAN_CACHE
33OPENMPI_CONF_OPTS += \
34	--enable-mpi-fortran=yes \
35	--cache-file=$(@D)/openmpi-config.cache
36else
37OPENMPI_CONF_OPTS += --enable-mpi-fortran=no
38endif
39
40OPENMPI_CFLAGS = $(TARGET_CFLAGS)
41
42ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y)
43OPENMPI_CFLAGS += -O0
44endif
45
46OPENMPI_CONF_ENV = CFLAGS="$(OPENMPI_CFLAGS)"
47
48$(eval $(autotools-package))
49