1
1

Fix --enable|disable-oshmem configure switch

* Fixed the AC_ARG_ENABLE for the oshmem option.
* Fixed the AM_CONDITIONALs values for the projects.
* Re-added (and slightly simplified) the use of PROJECT_OSHMEM in
  various Makefile.am's to disable building OSHMEM stuff

Submitted by Jeff, reviewed and approved by Ralph.

cmr=v1.7.5:reviewer=ompi-gk1.7

This commit was SVN r31062.
This commit is contained in:
Jeff Squyres 2014-03-13 21:23:04 +00:00
parent 16cab57ec5
commit 616e62bb9e
8 changed files with 56 additions and 34 deletions

View File

@ -2,8 +2,7 @@ dnl -*- shell-script -*-
dnl
dnl Copyright (c) 2013 Mellanox Technologies, Inc.
dnl All rights reserved.
dnl
dnl Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
dnl Copyright (c) 2013-2014 Cisco Systems, Inc. All rights reserved.
dnl $COPYRIGHT$
dnl
dnl Additional copyrights may follow
@ -23,7 +22,7 @@ AC_SUBST(OSHMEM_LIBSHMEM_EXTRA_LDFLAGS)
AC_ARG_ENABLE([oshmem],
[AC_HELP_STRING([--enable-oshmem],
[Enable building the OpenSHMEM interface (disabled by default)])],
[enable_oshmem=yes],
[],
[enable_oshmem=no])
#

View File

@ -256,10 +256,17 @@ m4_ifdef([project_ompi], [OMPI_CONFIGURE_OPTIONS])
m4_ifdef([project_oshmem], [OSHMEM_CONFIGURE_OPTIONS])
# Set up project specific AM_CONDITIONALs
AM_CONDITIONAL([PROJECT_OMPI], m4_ifdef([project_ompi] && test "$enable_ompi" != "no", [true], [false]))
AM_CONDITIONAL([PROJECT_ORTE], m4_ifdef([project_orte] && test "$enable_orte" != "no", [true], [false]))
AM_CONDITIONAL([PROJECT_OSHMEM], m4_ifdef([project_oshmem] && test "$enable_oshmem" != "no", [true], [false]))
AS_IF([test "$enable_ompi" != "no"], [project_ompi_amc=true], [project_ompi_amc=false])
m4_ifndef([project_ompi], [project_ompi_amc=no])
AM_CONDITIONAL([PROJECT_OMPI], [$project_ompi_amc])
AS_IF([test "$enable_orte" != "no"], [project_orte_amc=true], [project_orte_amc=false])
m4_ifndef([project_orte], [project_orte_amc=false])
AM_CONDITIONAL([PROJECT_ORTE], [$project_orte_amc])
AS_IF([test "$enable_oshmem" != "no"], [project_oshmem_amc=true], [project_oshmem_amc=false])
m4_ifndef([project_oshmem], [project_oshmem_amc=false])
AM_CONDITIONAL([PROJECT_OSHMEM], [$project_oshmem_amc])
if test "$enable_binaries" = "no" -a "$enable_dist" = "yes"; then
AC_MSG_WARN([--disable-binaries is incompatible with --enable dist])

View File

@ -1,7 +1,7 @@
#
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved.
# Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2013-2014 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2014 Intel, Inc. All rights reserved.
# $COPYRIGHT$
#
@ -29,30 +29,27 @@ SUBDIRS = \
shmem/c \
shmem/fortran
if PROJECT_OSHMEM
# Only traverse these dirs if we're building oshmem
SUBDIRS += \
$(EXT_oshmem_FRAMEWORKS_SUBDIRS) \
$(EXT_oshmem_FRAMEWORK_COMPONENT_STATIC_SUBDIRS) \
$(MCA_oshmem_FRAMEWORKS_SUBDIRS) \
$(MCA_oshmem_FRAMEWORK_COMPONENT_STATIC_SUBDIRS)
SUBDIRS += \
.
SUBDIRS += \
$(MCA_oshmem_FRAMEWORK_COMPONENT_STATIC_SUBDIRS) \
. \
$(MCA_oshmem_FRAMEWORK_COMPONENT_DSO_SUBDIRS)
endif
DIST_SUBDIRS = \
include \
shmem/c \
shmem/fortran \
$(EXT_oshmem_FRAMEWORKS_SUBDIRS) \
$(EXT_oshmem_FRAMEWORK_COMPONENT_ALL_SUBDIRS) \
$(MCA_oshmem_FRAMEWORKS_SUBDIRS) \
$(MCA_oshmem_FRAMEWORK_COMPONENT_ALL_SUBDIRS)
#Build The main OSHMEM library
# Build The main OSHMEM library, but only if we're building OSHMEM
lib_LTLIBRARIES =
if PROJECT_OSHMEM
lib_LTLIBRARIES += liboshmem.la
endif
liboshmem_la_SOURCES =
liboshmem_la_LIBADD = \

View File

@ -1,6 +1,7 @@
#
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved
# Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@ -57,14 +58,19 @@ OSHMEM_API_SOURCES = \
AM_CPPFLAGS = -DOSHMEM_PROFILING=0
noinst_LTLIBRARIES = liboshmem_c.la
noinst_LTLIBRARIES =
if PROJECT_OSHMEM
# Only build if we're building OSHMEM
noinst_LTLIBRARIES += liboshmem_c.la
endif
headers =
liboshmem_c_la_SOURCES = $(OSHMEM_API_SOURCES)
if PROJECT_OSHMEM
if WANT_INSTALL_HEADERS
oshmemdir = $(ompiincludedir)/$(subdir)
oshmem_HEADERS = $(headers)
endif
endif

View File

@ -1,6 +1,7 @@
#
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved
# Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@ -17,8 +18,11 @@
#
AM_CPPFLAGS = -DOSHMEM_PROFILING=1
noinst_LTLIBRARIES = liboshmem_c_pshmem.la
noinst_LTLIBRARIES =
if PROJECT_OSHMEM
# Only build if we're building OSHMEM
noinst_LTLIBRARIES += liboshmem_c_pshmem.la
endif
headers = defines.h
@ -65,7 +69,6 @@ OSHMEM_API_SOURCES = \
nodist_liboshmem_c_pshmem_la_SOURCES = \
$(OSHMEM_API_SOURCES)
#
# Sym link in the sources from the real MPI directory
#
@ -75,10 +78,12 @@ $(nodist_liboshmem_c_pshmem_la_SOURCES):
$(LN_S) $(top_srcdir)/oshmem/shmem/c/$$pname $@ ; \
fi
if PROJECT_OSHMEM
if WANT_INSTALL_HEADERS
oshmemdir = $(ompiincludedir)/$(subdir)
oshmem_HEADERS = $(headers)
endif
endif
# These files were created by targets above

View File

@ -1,7 +1,7 @@
#
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved
# Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2013-2014 Cisco Systems, Inc. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@ -11,6 +11,7 @@
AM_CPPFLAGS = -DOSHMEM_PROFILING_DEFINES=0 -DOSHMEM_HAVE_WEAK_SYMBOLS=0
# This is guaranteed to be false if we're not building OSHMEM at all
if OSHMEM_BUILD_FORTRAN_BINDINGS
oshmem_fortran_lib = liboshmem_fortran.la
else
@ -115,8 +116,9 @@ liboshmem_fortran_la_SOURCES = \
shmem_quiet_f.c \
shmem_fence_f.c
if PROJECT_OSHMEM
if WANT_INSTALL_HEADERS
oshmemdir = $(ompiincludedir)/$(subdir)
oshmem_HEADERS = $(headers)
endif
endif

View File

@ -1,6 +1,7 @@
#
# Copyright (c) 2014 Mellanox Technologies, Inc.
# All rights reserved.
# Copyright (c) 2014 Cisco Systems, Inc. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@ -39,12 +40,19 @@ endif
include $(top_srcdir)/Makefile.man-page-rules
nodist_man_MANS =
bin_PROGRAMS =
man_pages = oshmem_info.1
EXTRA_DIST = $(man_pages:.1=.1in)
bin_PROGRAMS = oshmem_info
if PROJECT_OSHMEM
# Only build/install the binary and man pages if we're building oshmem
bin_PROGRAMS += oshmem_info
nodist_man_MANS += $(man_pages)
endif
nodist_man_MANS = $(man_pages)
# Ensure that the man pages are rebuilt if the opal_config.h file
# changes; a "good enough" way to know if configure was run again (and

View File

@ -1,6 +1,6 @@
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved.
# Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2013-2014 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2014 Intel, Inc. All rights reserved.
# $COPYRIGHT$
#
@ -8,16 +8,12 @@
#
# $HEADER$
#this file is included in oshmem/Makefile.am
.PHONY: all
dist_ompidata_DATA = \
shmemcc-wrapper-data.txt \
shmemfort-wrapper-data.txt
if PROJECT_OSHMEM
# Only install / uninstall if we're building oshmem
install-exec-hook:
test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
(cd $(DESTDIR)$(bindir); rm -f shmemrun$(EXEEXT); $(LN_S) mpirun shmemrun)
@ -42,3 +38,5 @@ uninstall-local:
$(DESTDIR)$(pkgdatadir)/oshcc-wrapper-data.txt \
$(DESTDIR)$(pkgdatadir)/shmemfort-wrapper-data.txt \
$(DESTDIR)$(pkgdatadir)/oshfort-wrapper-data.txt
endif # PROJECT_OSHMEM