2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL"), version 1.0.
4 # You may only use this file in accordance with the terms of version
7 # A full copy of the text of the CDDL should have accompanied this
8 # source. A copy of the CDDL is also available via the Internet at
9 # http://www.illumos.org/license/CDDL.
13 # Copyright 2013-2018 Aurelien Larcher. All rights reserved.
14 # Copyright 2023 Klaus Ziegler
17 USE_DEFAULT_TEST_TRANSFORMS
= yes
18 include ..
/..
/..
/make-rules
/shared-macros.mk
19 MPI_IMPLEMENTATION
= openmpi
20 include $(WS_MAKE_RULES
)/mpi-macros.mk
22 COMPONENT_NAME
= openmpi
/$(COMPILER
)
23 OPENMPI_VERSION_MAJOR
= 4.1
24 COMPONENT_VERSION
= $(OPENMPI_VERSION_MAJOR
).5
25 COMPONENT_REVISION
= 3
26 COMPONENT_SUMMARY
= OpenMPI
- High Performance Message Passing Library
27 COMPONENT_PROJECT_URL
= https
://www.open-mpi.org
28 COMPONENT_SRC_NAME
= openmpi
29 COMPONENT_SRC
= $(COMPONENT_SRC_NAME
)-$(COMPONENT_VERSION
)
30 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.gz
31 COMPONENT_ARCHIVE_HASH
= sha256
:c018b127619d2a2a30c1931f316fc8a245926d0f5b4ebed4711f9695e7f70925
32 COMPONENT_ARCHIVE_URL
= https
://www.open-mpi.org
/software
/ompi
/v
$(OPENMPI_VERSION_MAJOR
)/downloads
/$(COMPONENT_ARCHIVE
)
33 COMPONENT_FMRI
= library
/openmpi
/$(COMPILER
)
34 COMPONENT_CLASSIFICATION
= Development
/High Performance Computing
35 COMPONENT_LICENSE
= BSD
2-Clause
36 COMPONENT_LICENSE_FILE
= $(COMPONENT_SRC_NAME
).license
39 include $(WS_MAKE_RULES
)/common.mk
45 CONFIGURE_PREFIX
= $(MPI_PREFIX
)
47 CONFIGURE_OPTIONS
+= --bindir=$(MPI_BINDIR
)
48 CONFIGURE_OPTIONS
+= --datadir=$(MPI_DATADIR
)
49 CONFIGURE_OPTIONS
+= --docdir
=$(MPI_DOCDIR
)
50 CONFIGURE_OPTIONS
+= --htmldir
=$(MPI_HTMLDIR
)
51 CONFIGURE_OPTIONS
+= --includedir=$(MPI_INCDIR
)
52 CONFIGURE_OPTIONS
+= --libdir=$(MPI_LIBDIR
)
53 CONFIGURE_OPTIONS
+= --mandir=$(MPI_MANDIR
)
54 CONFIGURE_OPTIONS
+= --sbindir
=$(MPI_SBINDIR
)
55 CONFIGURE_OPTIONS
+= --sysconfdir
=$(MPI_ETCDIR
)
56 CONFIGURE_OPTIONS
+= --enable-ipv6
57 CONFIGURE_OPTIONS
+= --enable-mpi-fortran
=usempi
58 CONFIGURE_OPTIONS
+= --enable-mpi-cxx
59 CONFIGURE_OPTIONS
+= --enable-mpi-cxx-seek
60 CONFIGURE_OPTIONS
+= --disable-event-epoll
61 CONFIGURE_OPTIONS
+= --with-package-string
=Openindiana
62 CONFIGURE_OPTIONS
+= --with-wrapper-cflags
="$(CC_BITS) -L$(MPI_LIBDIR) -R$(MPI_LIBDIR)"
63 CONFIGURE_OPTIONS
+= --with-wrapper-cxxflags
="$(CC_BITS) -L$(MPI_LIBDIR) -R$(MPI_LIBDIR)"
64 CONFIGURE_OPTIONS
+= --with-wrapper-fcflags
="$(CC_BITS) -L$(MPI_LIBDIR) -R$(MPI_LIBDIR)"
65 CONFIGURE_OPTIONS
+= --with-wrapper-libs
="$(CC_BITS) -L$(MPI_LIBDIR) -R$(MPI_LIBDIR)"
66 CONFIGURE_OPTIONS
+= --without-slurm
67 CONFIGURE_OPTIONS
+= ompi_cv_fortran_ignore_tkr_data
=0
69 $(BUILD_DIR
)/modulefile.
%: files
/modulefile
70 /bin
/sed
-e
"s#%%BITS%%#$*#g" \
71 -e
"s#%%COMPONENT_FMRI%%#$(COMPONENT_FMRI)#g" \
72 -e
"s#%%COMPONENT_VERSION%%#$(COMPONENT_VERSION)#g" \
73 -e
"s#%%MODULE_CONFLICTS%%#$(MPI_IMPLEMENTATIONS_LIST)#g" \
74 -e
"s#%%MODULE_INCDIR%%#$(MPI_INCDIR)#g" \
75 -e
"s#%%MODULE_PREFIX%%#$(MPI_PREFIX.$*)#g" < $< > $@
;
77 PROTO_MODULE_PATH
= $(PROTO_DIR
)$(MODULE_PATH
)/$(COMPONENT_NAME
)
79 install: $(INSTALL_64
) $(BUILD_DIR
)/modulefile
.64
80 $(MKDIR
) $(PROTO_MODULE_PATH
)/64
81 $(CP
) $(BUILD_DIR
)/modulefile
.64 $(PROTO_MODULE_PATH
)/64/$(COMPONENT_VERSION
)
84 REQUIRED_PACKAGES
+= system
/header
/header-picl
85 REQUIRED_PACKAGES
+= diagnostic
/cpu-counters
86 REQUIRED_PACKAGES
+= service
/picl
88 # Auto-generated dependencies
89 REQUIRED_PACKAGES
+= $(GCC_RUNTIME_PKG
)
90 REQUIRED_PACKAGES
+= $(GXX_RUNTIME_PKG
)
91 REQUIRED_PACKAGES
+= developer
/hwloc
92 REQUIRED_PACKAGES
+= library
/zlib
93 REQUIRED_PACKAGES
+= package
/environment-modules
94 REQUIRED_PACKAGES
+= runtime
/perl
95 REQUIRED_PACKAGES
+= system
/library
96 REQUIRED_PACKAGES
+= system
/library
/math