@@ -5,7 +5,7 @@ dnl University Research and Technology
5
5
dnl Corporation. All rights reserved.
6
6
dnl Copyright (c) 2009-2017 Cisco Systems, Inc. All rights reserved
7
7
dnl Copyright (c) 2011-2012 Oak Ridge National Labs. All rights reserved.
8
- dnl Copyright (c) 2015-2018 Research Organization for Information Science
8
+ dnl Copyright (c) 2015-2019 Research Organization for Information Science
9
9
dnl and Technology (RIST). All rights reserved.
10
10
dnl Copyright (c) 2017 The University of Tennessee and The University
11
11
dnl of Tennessee Research Foundation. All rights
259
259
[OMPI_MPIEXT_C],
260
260
[OMPI_MPIEXT_MPIFH],
261
261
[OMPI_MPIEXT_USEMPI],
262
- [OMPI_MPIEXT_USEMPIF08])])])
262
+ [OMPI_MPIEXT_USEMPIF08],
263
+ [OMPI_MPIEXT_ARCHIVE])])])
263
264
264
265
# ##############
265
266
# C Bindings
@@ -344,10 +345,10 @@ EOF
344
345
345
346
OMPI_EXT_MAKE_DIR_LIST(OMPI_MPIEXT_ALL_SUBDIRS, $OMPI_MPIEXT_ALL )
346
347
347
- OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_C, $OMPI_MPIEXT_C , c, c)
348
- OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_MPIFH, $OMPI_MPIEXT_MPIFH , mpif-h, mpifh)
349
- OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_USEMPI, $OMPI_MPIEXT_USEMPI , use-mpi, usempi)
350
- OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_USEMPIF08, $OMPI_MPIEXT_USEMPIF08 , use-mpi-f08, usempif08)
348
+ OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_C, $OMPI_MPIEXT_C , $OMPI_MPIEXT_ARCHIVE , c, c)
349
+ OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_MPIFH, $OMPI_MPIEXT_MPIFH , $OMPI_MPIEXT_ARCHIVE , mpif-h, mpifh)
350
+ OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_USEMPI, $OMPI_MPIEXT_USEMPI , $OMPI_MPIEXT_ARCHIVE , use-mpi, usempi)
351
+ OMPI_EXT_MAKE_LISTS(OMPI_MPIEXT_USEMPIF08, $OMPI_MPIEXT_USEMPIF08 , $OMPI_MPIEXT_ARCHIVE , use-mpi-f08, usempif08)
351
352
352
353
comps=` echo $OMPI_MPIEXT_C | sed -e ' s/^[ \t]*//;s/[ \t]*$//;s/ /, /g' `
353
354
AC_DEFINE_UNQUOTED([OMPI_MPIEXT_COMPONENTS], [" $comps " ],
366
367
# (3) c_components_variable,
367
368
# (4) mpifh_components_variable,
368
369
# (5) usempi_components_variable,
369
- # (6) usempif08_components_variable)
370
+ # (6) usempif08_components_variable,
371
+ # (7) archive_components_variable)
370
372
#
371
373
# - component_name is a single, naked string (no prefix)
372
374
# - all others are naked component names (e.g., "example"). If an
@@ -386,7 +388,7 @@ AC_DEFUN([EXT_CONFIGURE_M4_CONFIG_COMPONENT],[
386
388
OMPI_MPIEXT_$1 _CONFIG([should_build= ${should_build} ], [should_build= 0])
387
389
388
390
AS_IF([test $should_build -eq 1],
389
- [EXT_PROCESS_COMPONENT([$1 ], [$2 ], [$3 ], [$4 ], [$5 ], [$6 ])],
391
+ [EXT_PROCESS_COMPONENT([$1 ], [$2 ], [$3 ], [$4 ], [$5 ], [$6 ], [ $7 ] )],
390
392
[EXT_PROCESS_DEAD_COMPONENT([$1 ], [$2 ])])
391
393
])
392
394
@@ -403,7 +405,8 @@ AC_DEFUN([EXT_CONFIGURE_M4_CONFIG_COMPONENT],[
403
405
# (3) c_components_variable,
404
406
# (4) mpifh_components_variable,
405
407
# (5) usempi_components_variable,
406
- # (6) usempif08_components_variable)
408
+ # (6) usempif08_components_variable,
409
+ # (7) archive_components_variable)
407
410
#
408
411
# C bindings are mandatory. Other bindings are optional / built if
409
412
# they are found. Here's the files that the m4 expects:
615
618
m4_ifdef([OMPI_MPIEXT_]$1 [_INCLUDE_MPIFH_IN_USEMPI],
616
619
[include_mpifh= OMPI_MPIEXT_$1 _INCLUDE_MPIFH_IN_USEMPI],
617
620
[include_mpifh= 1])
618
- if test " $enabled_mpifh " = 1 && test " $include_mpifh " ! = 0; then
621
+ if test $enabled_mpifh -eq 1 && test $include_mpifh -ne 0; then
619
622
mpifh_component_header=" mpiext_${component} _mpifh.h"
620
623
cat >> $mpiusempi_ext_h << EOF
621
624
#include "${mpifh_component_header_path} "
677
680
m4_ifdef([OMPI_MPIEXT_]$1 [_INCLUDE_MPIFH_IN_USEMPIF08],
678
681
[include_mpifh= OMPI_MPIEXT_$1 _INCLUDE_MPIFH_IN_USEMPIF08],
679
682
[include_mpifh= 1])
680
- if test " $enabled_mpifh " = 1 && test " $include_mpifh " ! = 0; then
683
+ if test $enabled_mpifh -eq 1 && test $include_mpifh -ne 0; then
681
684
mpifh_component_header=" mpiext_${component} _mpifh.h"
682
685
cat >> $mpiusempif08_ext_h << EOF
683
686
#include "${mpifh_component_header_path} "
704
707
[echo " extern const ompi_mpiext_component_t ompi_mpiext_${component} ;" >> $outfile .extern
705
708
echo " &ompi_mpiext_${component} , " >> $outfile .struct])
706
709
710
+ m4_ifdef([OMPI_MPIEXT_]$1 [_HAVE_OBJECT],
711
+ [have_object= OMPI_MPIEXT_$1 _HAVE_OBJECT],
712
+ [have_object= 1])
713
+ if test $have_object -ne 0; then
714
+ $7 =" $$ 7 $component "
715
+ fi
716
+
707
717
# now add the flags that were set in the environment variables
708
718
# framework_component_FOO (for example, the flags set by
709
719
# m4_configure components)
@@ -804,7 +814,7 @@ AC_DEFUN([EXT_COMPONENT_BUILD_CHECK],[
804
814
fi
805
815
fi
806
816
807
- AS_IF([test " $want_component " = " 1 " ], [$2 ], [$3 ])
817
+ AS_IF([test $want_component -eq 1 ], [$2 ], [$3 ])
808
818
])
809
819
810
820
@@ -821,25 +831,31 @@ AC_DEFUN([OMPI_EXT_MAKE_DIR_LIST],[
821
831
])
822
832
823
833
# OMPI_EXT_MAKE_LISTS((1) subst'ed variable prefix,
824
- # (2) shell list,
825
- # (3) bindings dir name,
826
- # (4) bindings suffix)
834
+ # (2) shell list of extensions of which the bindings are enabled,
835
+ # (3) shell list of extensions which needs libtool archive,
836
+ # (4) bindings dir name,
837
+ # (5) bindings suffix)
827
838
#
828
839
# Prefix every extension name with "mpiext/".
829
840
# -------------------------------------------------------------------------
830
841
AC_DEFUN([OMPI_EXT_MAKE_LISTS],[
831
842
# Make the directory list
832
843
tmp=
833
844
for item in $2 ; do
834
- tmp=" $tmp mpiext/$item /$3 "
845
+ tmp=" $tmp mpiext/$item /$4 "
835
846
done
836
847
$1 _DIRS= $tmp
837
848
AC_SUBST($1 _DIRS)
838
849
839
850
# Make the list of libraries
840
851
tmp=
841
852
for item in $2 ; do
842
- tmp=" $tmp " ' $(top_builddir)' " /ompi/mpiext/$item /$3 /libmpiext_${item} _$4 .la"
853
+ for item2 in $3 ; do
854
+ if test $item = $item2 ; then
855
+ tmp=" $tmp " ' $(top_builddir)' " /ompi/mpiext/$item /$4 /libmpiext_${item} _$5 .la"
856
+ break
857
+ fi
858
+ done
843
859
done
844
860
$1 _LIBS= $tmp
845
861
AC_SUBST($1 _LIBS)
0 commit comments