1
1

Major build system modification. Removed symlinks (problem with make dist), solved issues with static builds and can accept most compile options. The only unsupported compile option for now is --enable-mca-no-build=pml-v. Still investigating this...

This commit was SVN r17294.
Этот коммит содержится в:
Aurelien Bouteiller 2008-01-29 06:07:57 +00:00
родитель fad6136794
Коммит e261861f4a
53 изменённых файлов: 62 добавлений и 63 удалений

Просмотреть файл

@ -20,7 +20,7 @@ component_noinst = libmca_pml_v.la
component_install = component_install =
endif endif
SUBDIRS = vprotocol $(MCA_pml_v_SUBDIRS) SUBDIRS = mca/vprotocol $(MCA_vprotocol_DSO_SUBDIRS) $(MCA_vprotocol_STATIC_SUBDIRS)
local_sources = \ local_sources = \
pml_v.c \ pml_v.c \
@ -32,11 +32,11 @@ local_sources = \
mcacomponentdir = $(libdir)/openmpi mcacomponentdir = $(libdir)/openmpi
mcacomponent_LTLIBRARIES = $(component_install) mcacomponent_LTLIBRARIES = $(component_install)
mca_pml_v_la_SOURCES = $(local_sources) mca_pml_v_la_SOURCES = $(local_sources)
mca_pml_v_la_LIBADD = vprotocol/libmca_vprotocol.la mca_pml_v_la_LIBADD = mca/vprotocol/libmca_vprotocol.la $(MCA_vprotocol_STATIC_LTLIBS)
mca_pml_v_la_LDFLAGS = -module -avoid-version mca_pml_v_la_LDFLAGS = -module -avoid-version
noinst_LTLIBRARIES = $(component_noinst) noinst_LTLIBRARIES = $(component_noinst)
libmca_pml_v_la_SOURCES = $(local_sources) libmca_pml_v_la_SOURCES = $(local_sources)
libmca_pml_v_la_LIBADD = vprotocol/libmca_vprotocol.la libmca_pml_v_la_LIBADD = mca/vprotocol/libmca_vprotocol.la $(MCA_vprotocol_STATIC_LTLIBS)
libmca_pml_v_la_LDFLAGS = -module -avoid-version libmca_pml_v_la_LDFLAGS = -module -avoid-version

Просмотреть файл

@ -12,40 +12,41 @@ AC_DEFUN([MCA_pml_v_CONFIG],[
# We are going to make recursive call in shell, nothing is impossible # We are going to make recursive call in shell, nothing is impossible
# Still, we need to be extra careful # Still, we need to be extra careful
( (
# Change srcdir (for DIRECT builds) vprotocol_parent_component=$component
srcdir=`cd $srcdir && pwd` # Move the root of our project to the current component
srcdir="$srcdir/$project/mca/$framework/$component" srcdir=`cd $srcdir && pwd`/$project/mca/$framework
cd "$project/mca/$framework"
# Create directory structure (for VPATH builds)
AS_MKDIR_P("$project/mca/$framework/$component/vprotocol")
cd "$project/mca/$framework/$component" MCA_CONFIGURE_FRAMEWORK($vprotocol_parent_component, vprotocol, 1)
rm -f vprotocol/mca && ln -s . vprotocol/mca
rm -f vprotocol/vprotocol && ln -s . vprotocol/vprotocol
rm -f $srcdir/vprotocol/mca && ln -s . $srcdir/vprotocol/mca
rm -f $srcdir/vprotocol/vprotocol && ln -s . $srcdir/vprotocol/vprotocol
MCA_CONFIGURE_FRAMEWORK(vprotocol, vprotocol, 1)
rm -f vprotocol/mca
rm -f vprotocol/vprotocol
rm -f $srcdir/vprotocol/mca
rm -f $srcdir/vprotocol/vprotocol
cat >mca_vprotocol_config_output <<EOF # Save results
cat >$vprotocol_parent_component/mca_vprotocol_config_output <<EOF
# #
# /!\ This is Automatically generated file. Do not edit. # /!\ This is Automatically generated file. Do not edit.
# #
# Apply the modifications to current shell context # Apply the modifications to current shell context
# and remove leading mca/vprotocol from subdirs
MCA_vprotocol_ALL_COMPONENTS="$MCA_vprotocol_ALL_COMPONENTS" MCA_vprotocol_ALL_COMPONENTS="$MCA_vprotocol_ALL_COMPONENTS"
MCA_vprotocol_STATIC_COMPONENTS="$MCA_vprotocol_STATIC_COMPONENTS" MCA_vprotocol_STATIC_COMPONENTS="$MCA_vprotocol_STATIC_COMPONENTS"
MCA_vprotocol_DSO_COMPONENTS="$MCA_vprotocol_DSO_COMPONENTS" MCA_vprotocol_DSO_COMPONENTS="$MCA_vprotocol_DSO_COMPONENTS"
MCA_vprotocol_STATIC_LTLIBS="$MCA_vprotocol_STATIC_LTLIBS" MCA_vprotocol_STATIC_LTLIBS="$MCA_vprotocol_STATIC_LTLIBS"
# Remove leading mca/vprotocol from subdirs MCA_vprotocol_ALL_SUBDIRS="$MCA_vprotocol_ALL_SUBDIRS"
MCA_vprotocol_ALL_SUBDIRS="`echo $MCA_vprotocol_ALL_SUBDIRS | sed 's/mca\/vprotocol\///'`" MCA_vprotocol_STATIC_SUBDIRS="$MCA_vprotocol_STATIC_SUBDIRS"
MCA_vprotocol_STATIC_SUBDIRS="`echo $MCA_vprotocol_STATIC_SUBDIRS | sed 's/mca\/vprotocol\///'`" MCA_vprotocol_DSO_SUBDIRS="$MCA_vprotocol_DSO_SUBDIRS"
MCA_vprotocol_DSO_SUBDIRS="`echo $MCA_vprotocol_DSO_SUBDIRS | sed 's/mca\/vprotocol\///'`"
m4_foreach(mca_component, [mca_vprotocol_no_config_component_list],
[m4_ifval(mca_component, [
[BUILD_vprotocol_]mca_component[_DSO]="$[BUILD_vprotocol_]mca_component[_DSO]"
AM_CONDITIONAL([OMPI_BUILD_vprotocol_]mca_component[_DSO], test "\$[BUILD_vprotocol_]mca_component[_DSO]" = "1")])])
m4_foreach(mca_component, [mca_vprotocol_m4_config_component_list],
[m4_ifval(mca_component, [
[BUILD_vprotocol_]mca_component[_DSO]= $[BUILD_vprotocol_]mca_component[_DSO]
AM_CONDITIONAL([OMPI_BUILD_vprotocol_]mca_component[_DSO], test "\$[BUILD_vprotocol_]mca_component[_DSO]" = "1")])])
EOF EOF
) )
@ -62,16 +63,4 @@ EOF
AC_SUBST(MCA_vprotocol_STATIC_SUBDIRS) AC_SUBST(MCA_vprotocol_STATIC_SUBDIRS)
AC_SUBST(MCA_vprotocol_DSO_SUBDIRS) AC_SUBST(MCA_vprotocol_DSO_SUBDIRS)
m4_foreach(mca_component, [mca_vprotocol_no_config_component_list],
[m4_ifval(mca_component, [
[BUILD_vprotocol_]mca_component[_DSO]="$[BUILD_vprotocol_]mca_component[_DSO]"
AM_CONDITIONAL([OMPI_BUILD_vprotocol_]mca_component[_DSO], test "$[BUILD_vprotocol_]mca_component[_DSO]" = "1")])])
m4_foreach(mca_component, [mca_vprotocol_m4_config_component_list],
[m4_ifval(mca_component, [
[BUILD_vprotocol_]mca_component[_DSO]= $[BUILD_vprotocol_]mca_component[_DSO]
AM_CONDITIONAL([OMPI_BUILD_vprotocol_]mca_component[_DSO], test "$[BUILD_vprotocol_]mca_component[_DSO]" = "1")])])
]) ])

Просмотреть файл

@ -21,7 +21,7 @@ PARAM_CONFIG_FILES="Makefile"
cd $pd_ompi_topdir cd $pd_ompi_topdir
mv "$mca_no_config_env_file" "$mca_no_config_env_file.bak" mv "$mca_no_config_env_file" "$mca_no_config_env_file.bak"
mv "$mca_m4_config_env_file" "$mca_m4_config_env_file.bak" mv "$mca_m4_config_env_file" "$mca_m4_config_env_file.bak"
process_framework $pd_dir/vprotocol $rg_cwd vprotocol vprotocol process_framework $pd_dir/mca/vprotocol $rg_cwd v vprotocol
mv "$mca_no_config_env_file.bak" "$mca_no_config_env_file" mv "$mca_no_config_env_file.bak" "$mca_no_config_env_file"
mv "$mca_m4_config_env_file.bak" "$mca_m4_config_env_file" mv "$mca_m4_config_env_file.bak" "$mca_m4_config_env_file"
) )

Просмотреть файл

@ -9,9 +9,6 @@
# $HEADER$ # $HEADER$
# #
# iterate trough the components
SUBDIRS= $(MCA_vprotocol_ALL_SUBDIRS)
# main library setup # main library setup
noinst_LTLIBRARIES = libmca_vprotocol.la noinst_LTLIBRARIES = libmca_vprotocol.la
libmca_vprotocol_la_SOURCES = libmca_vprotocol_la_SOURCES =

Просмотреть файл

@ -12,7 +12,7 @@
#include "base.h" #include "base.h"
#include "opal/mca/mca.h" #include "opal/mca/mca.h"
#include "opal/mca/base/base.h" #include "opal/mca/base/base.h"
#include "ompi/mca/pml/v/vprotocol/base/static-components.h" #include "ompi/mca/pml/v/mca/vprotocol/base/static-components.h"
opal_list_t mca_vprotocol_base_components_available; opal_list_t mca_vprotocol_base_components_available;
char *mca_vprotocol_base_include_list; char *mca_vprotocol_base_include_list;

Просмотреть файл

@ -14,7 +14,6 @@
#include "ompi_config.h" #include "ompi_config.h"
#include "ompi/mca/pml/base/pml_base_request.h" #include "ompi/mca/pml/base/pml_base_request.h"
#include "../vprotocol.h" #include "../vprotocol.h"
#include "../../pml_v.h"
#if defined(c_plusplus) || defined(__cplusplus) #if defined(c_plusplus) || defined(__cplusplus)
extern "C" { extern "C" {

Просмотреть файл

@ -0,0 +1,31 @@
/*
* Copyright (c) 2004-2007 The Trustees of the University of Tennessee.
* All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "ompi_config.h"
#include "vprotocol_pessimist.h"
int mca_vprotocol_pessimist_progress(void)
{
int ret;
#if 0
/* First let the real progress take place */
ret = mca_pml_v.host_pml.pml_progress();
for(req = opal_list_head(&mca_vprotocol_pessimist.sender_based.sendprogressreq),
req != opal_list_end(&mca_vprotocol_pessimist.sender_based.sendprogressreq),
req = req->next) {
preq = VPESSIMIST_SEND_REQ(req);
conv = req->conv;
}
#endif
return ret;
}

Просмотреть файл

@ -97,7 +97,7 @@ typedef mca_vprotocol_base_module_1_0_0_t mca_vprotocol_base_module_t;
/* silently include the pml_v.h as every file including vprotocol.h will also /* silently include the pml_v.h as every file including vprotocol.h will also
* need it * need it
*/ */
#include "../pml_v.h" #include "ompi/mca/pml/v/pml_v.h"
#include "base/base.h" #include "base/base.h"
#endif /* __INCLUDE_VPROTOCOL_H_ */ #endif /* __INCLUDE_VPROTOCOL_H_ */

Просмотреть файл

@ -16,8 +16,8 @@
#include "ompi/constants.h" #include "ompi/constants.h"
#include "ompi/mca/pml/base/base.h" #include "ompi/mca/pml/base/base.h"
#include "pml_v.h" #include "pml_v.h"
#include "vprotocol/vprotocol.h" #include "mca/vprotocol/vprotocol.h"
#include "vprotocol/base/base.h" #include "mca/vprotocol/base/base.h"
static int mca_pml_v_component_open(void); static int mca_pml_v_component_open(void);
static int mca_pml_v_component_close(void); static int mca_pml_v_component_close(void);

Просмотреть файл

@ -1,17 +0,0 @@
/*
* Copyright (c) 2004-2007 The Trustees of the University of Tennessee.
* All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "ompi_config.h"
#include "vprotocol_pessimist.h"
int mca_vprotocol_pessimist_progress(void)
{
return mca_pml_v.host_pml.pml_progress();
}