Hi Sasha, On Sat, 2007-09-15 at 21:35 +0300, Sasha Khapyorsky wrote: > This merges all subdirectories configure.in scripts into one toplevel > directory script. Separate configuring per subdirectory is not needed > anymore.
How is the requirement for separate OpenSM libraries (complib, libosmvendor, and libopensm) now met ? There are some tools (e.g. ibutils and others) which require these libraries with OpenSM itself. -- Hal > Signed-off-by: Sasha Khapyorsky <[EMAIL PROTECTED]> > --- > opensm/Makefile.am | 4 +- > opensm/autogen.sh | 34 +++------------------ > opensm/complib/Makefile.am | 2 + > opensm/configure.in | 60 ++++++++++++++++++++++++++++++------ > opensm/libvendor/Makefile.am | 2 + > opensm/opensm/Makefile.am | 2 + > opensm/osmeventplugin/Makefile.am | 2 + > 7 files changed, 65 insertions(+), 41 deletions(-) > > diff --git a/opensm/Makefile.am b/opensm/Makefile.am > index f99e78b..9cbce3a 100644 > --- a/opensm/Makefile.am > +++ b/opensm/Makefile.am > @@ -1,12 +1,12 @@ > > # note that order matters: make the libs first then use them > -SUBDIRS = complib libvendor opensm osmtest include > $(DEFAULT_EVENT_PLUGIN) > +SUBDIRS = complib libvendor opensm osmtest include $(DEFAULT_EVENT_PLUGIN) > DIST_SUBDIRS = complib libvendor opensm osmtest include osmeventplugin > > # this will control the update of the files in order > MAINTAINERCLEANFILES = Makefile.in aclocal.m4 configure config-h.in > > -ACLOCAL = aclocal -I $(ac_aux_dir) > +ACLOCAL = aclocal -I $(ac_aux_dir) > > # we should provide a hint for other apps about the build mode of this > project > install-exec-hook: > diff --git a/opensm/autogen.sh b/opensm/autogen.sh > index 3ae89b4..fee8800 100755 > --- a/opensm/autogen.sh > +++ b/opensm/autogen.sh > @@ -50,32 +50,8 @@ fi > # cleanup > find . \( -name Makefile.in -o -name aclocal.m4 -o -name autom4te.cache -o > -name configure -o -name aclocal.m4 \) -exec \rm -rf {} \; -prune > > -# handle our own autoconf: > -(aclocal -I config 2>&1 ) && \ > -(automake --add-missing --gnu --copy ) && \ > -(autoconf 2>&1 ) > -if test $? != 0; then > - exit 1 > -fi > - > - > - > -# visit all sub directories with autogen.sh > -anyErr=0 > -for a in include complib libvendor opensm osmtest osmeventplugin ; do > - dir=`dirname $a` > - test -d ${dir}/config || mkdir ${dir}/config > - echo Visiting $a > - ( cd $a && \ > - set -x && \ > - aclocal -I config -I ../config && \ > - libtoolize --force --copy && \ > - autoheader && \ > - automake --foreign --add-missing --copy && \ > - autoconf ) \ > - 2>&1 | sed 's/^/| /' | grep -v "arning: underquoted definition" > - if test $? != 0; then > - echo $a failed > - anyErr=1 > - fi > -done > +aclocal -I config && \ > +libtoolize --force --copy && \ > +autoheader && \ > +automake --foreign --add-missing --copy && \ > +autoconf > diff --git a/opensm/complib/Makefile.am b/opensm/complib/Makefile.am > index fce797a..a77964e 100644 > --- a/opensm/complib/Makefile.am > +++ b/opensm/complib/Makefile.am > @@ -17,6 +17,8 @@ else > libosmcomp_version_script = > endif > > +complib_api_version=$(shell grep LIBVERSION= $(srcdir)/libosmcomp.ver | sed > 's/LIBVERSION=//') > + > libosmcomp_la_SOURCES = cl_complib.c cl_dispatcher.c \ > cl_event.c cl_event_wheel.c \ > cl_list.c cl_log.c cl_map.c \ > diff --git a/opensm/configure.in b/opensm/configure.in > index 2efd867..6c4db9f 100644 > --- a/opensm/configure.in > +++ b/opensm/configure.in > @@ -4,6 +4,7 @@ AC_PREREQ(2.57) > AC_INIT(opensm, 3.1.1, general@lists.openfabrics.org) > AC_CONFIG_SRCDIR([opensm/osm_opensm.c]) > AC_CONFIG_AUX_DIR(config) > +AC_CONFIG_HEADERS(include/config.h) > AM_INIT_AUTOMAKE(opensm, 3.1.1) > > dnl Defines the Language > @@ -16,17 +17,50 @@ AM_MAINTAINER_MODE > > dnl Required for cases make defines a MAKE=make ??? Why > AC_PROG_MAKE_SET > +AC_PROG_CC > +AC_PROG_LIBTOOL > +AC_PROG_INSTALL > +AC_PROG_LN_S > +AC_PROG_MAKE_SET > +AC_PROG_YACC > +AC_PROG_LEX > + > +dnl Checks for libraries > +AC_CHECK_LIB(pthread, pthread_mutex_init, [], > + AC_MSG_ERROR([pthread_mutex_init() not found. libosmcomp requires > libpthread.])) > + > +dnl Checks for typedefs, structures, and compiler characteristics. > +AC_C_CONST > +AC_C_INLINE > +AC_TYPE_PID_T > +AC_TYPE_SIZE_T > +AC_HEADER_TIME > +AC_STRUCT_TM > +AC_C_VOLATILE > + > +dnl We use --version-script with ld if possible > +AC_CACHE_CHECK(whether ld accepts --version-script, ac_cv_version_script, > +if test -n "`$LD --help < /dev/null 2>/dev/null | grep version-script`"; then > + ac_cv_version_script=yes > +else > + ac_cv_version_script=no > +fi) > +AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$ac_cv_version_script" = "yes") > > dnl Define an input config option to control debug compile > -AC_ARG_ENABLE(debug, > -[ --enable-debug Turn on debugging], > +AC_ARG_ENABLE(debug, [ --enable-debug Turn on debugging], > [case "${enableval}" in > - yes) debug=true ;; > - no) debug=false ;; > - *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; > -esac],[debug=false]) > + yes) debug=true ;; > + no) debug=false ;; > + *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; > +esac],debug=false) > AM_CONDITIONAL(DEBUG, test x$debug = xtrue) > > +AC_ARG_ENABLE(libcheck, [ --disable-libcheck do not test for presence > of ib libraries], > +[if test x$enableval = xno ; then > + disable_libcheck=yes > +fi]) > + > dnl check if they want the socket console > OPENIB_OSM_CONSOLE_SOCKET_SEL > > @@ -39,9 +73,15 @@ OPENIB_OSM_DEFAULT_EVENT_PLUGIN_SEL > dnl Provide user option to select vendor > OPENIB_APP_OSMV_SEL > > -dnl Configure the following subdirs > -AC_CONFIG_SUBDIRS(complib libvendor opensm osmtest include osmeventplugin) > +dnl Checks for headers and libraries > +OPENIB_APP_OSMV_CHECK_HEADER > +OPENIB_APP_OSMV_CHECK_LIB > + > +# we have to revive the env CFLAGS as some how they are being overwritten... > +# see > http://sources.redhat.com/automake/automake.html#Flag-Variables-Ordering > +# for why they should NEVER be modified by the configure to allow for user > +# overrides. > +CFLAGS=$ac_env_CFLAGS_value > > dnl Create the following Makefiles > -AC_OUTPUT(Makefile) > -AC_OUTPUT(opensm.spec) > +AC_OUTPUT([Makefile include/Makefile complib/Makefile libvendor/Makefile > opensm/Makefile osmeventplugin/Makefile osmtest/Makefile opensm.spec]) > diff --git a/opensm/libvendor/Makefile.am b/opensm/libvendor/Makefile.am > index 3b8c3af..cb8baaa 100644 > --- a/opensm/libvendor/Makefile.am > +++ b/opensm/libvendor/Makefile.am > @@ -23,6 +23,8 @@ else > libosmvendor_version_script = > endif > > +osmvendor_api_version=$(shell grep LIBVERSION= $(srcdir)/libosmvendor.ver | > sed 's/LIBVERSION=//') > + > COMM_HDRS= $(srcdir)/../include/vendor/osm_vendor_api.h \ > $(srcdir)/../include/vendor/osm_vendor.h \ > $(srcdir)/../include/vendor/osm_vendor_select.h \ > diff --git a/opensm/opensm/Makefile.am b/opensm/opensm/Makefile.am > index 5e4229d..8440b4a 100644 > --- a/opensm/opensm/Makefile.am > +++ b/opensm/opensm/Makefile.am > @@ -21,6 +21,8 @@ else > libopensm_version_script = > endif > > +opensm_api_version=$(shell grep LIBVERSION= $(srcdir)/libopensm.ver | sed > 's/LIBVERSION=//') > + > libopensm_la_SOURCES = osm_log.c osm_mad_pool.c osm_helper.c > libopensm_la_LDFLAGS = -version-info $(opensm_api_version) \ > -export-dynamic $(libopensm_version_script) > diff --git a/opensm/osmeventplugin/Makefile.am > b/opensm/osmeventplugin/Makefile.am > index bbb012f..1b7dad0 100644 > --- a/opensm/osmeventplugin/Makefile.am > +++ b/opensm/osmeventplugin/Makefile.am > @@ -18,6 +18,8 @@ else > libosmeventplugin_version_script = > endif > > +osmeventplugin_api_version=$(shell grep LIBVERSION= > $(srcdir)/libosmeventplugin.ver | sed 's/LIBVERSION=//') > + > libosmeventplugin_la_SOURCES = src/osmeventplugin.c > libosmeventplugin_la_LDFLAGS = -version-info $(osmeventplugin_api_version) \ > -export-dynamic $(libosmeventplugin_version_script) _______________________________________________ general mailing list general@lists.openfabrics.org http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general