[hwloc-devel] Create success (hwloc r1.7.1rc1r5612)
Creating nightly hwloc snapshot SVN tarball was a success. Snapshot: hwloc 1.7.1rc1r5612 Start time: Thu May 9 21:05:32 EDT 2013 End time: Thu May 9 21:09:46 EDT 2013 Your friendly daemon, Cyrador
[hwloc-devel] Create success (hwloc r1.8a1r5611)
Creating nightly hwloc snapshot SVN tarball was a success. Snapshot: hwloc 1.8a1r5611 Start time: Thu May 9 21:01:01 EDT 2013 End time: Thu May 9 21:05:32 EDT 2013 Your friendly daemon, Cyrador
Re: [hwloc-devel] [hwloc-svn] svn:hwloc r5606 - trunk
It was already fixed by the revert, sorry I forgot to make that clear. We only use C++ to build a *C* file with g++. We don't have actual C++ code. Looks like CXX gets initialized properly, even when I comment out our AC_PROC_CXX in configure.ac and the following code in hwloc_internal.m4: AC_MSG_CHECKING(if CXX works) AC_LANG_PUSH([C++]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include using namespace std; int foo(void) { cout << "test" << endl; return 0; } ]])], [hwloc_have_cxx=yes], [hwloc_have_cxx=no]) AC_LANG_POP([C++]) AC_MSG_RESULT([$hwloc_have_cxx]) If we remove the above and use LT_LANG(C++), what do you use instead of "if HWLOC_HAVE_CXX" in doc/Makefile.am Brice Le 09/05/2013 14:57, Jeff Squyres (jsquyres) a écrit : > Does this patch fix it? It's not clear to me from the LT docs whether you're > supposed to call LT_LANG multiple times or LT_LANG with multiple languages, > but this patch below seems to run the libtool C++ configury: > > Index: configure.ac > === > --- configure.ac (revision 5609) > +++ configure.ac (working copy) > @@ -168,6 +168,7 @@ > AM_DISABLE_STATIC > AM_PROG_LIBTOOL([dlopen win32-dll]) > LT_LANG([C]) > +LT_LANG([C++]) > LT_CONFIG_LTDL_DIR([src/libltdl]) > LTDL_INIT([recursive convenience]) > AC_CONFIG_FILES([src/libltdl/Makefile]) > > (I couldn't generate the make check failure on my Mac with or without the > additional LT_LANG, so I can't confirm if this is the correct fix or not) > > > On May 8, 2013, at 2:28 AM, Brice Goglinwrote: > >> We actually used C++ during make check (we test the C++ build of >> doc/hwloc-hello.c) >> (got a build failure report from https://ci.inria.fr/hwloc/) >> >> Brice >> >> >> >> Le 08/05/2013 02:27, svn-commit-mai...@open-mpi.org a écrit : >>> Author: jsquyres (Jeff Squyres) >>> Date: 2013-05-07 20:27:25 EDT (Tue, 07 May 2013) >>> New Revision: 5606 >>> URL: https://svn.open-mpi.org/trac/hwloc/changeset/5606 >>> >>> Log: >>> Revert r5604 -- it's redundant with LT_LANG([C]). >>> >>> Text files modified: >>> trunk/configure.ac | 4 >>> 1 files changed, 0 insertions(+), 4 deletions(-) >>> >>> Modified: trunk/configure.ac >>> == >>> --- trunk/configure.ac Tue May 7 20:18:05 2013(r5605) >>> +++ trunk/configure.ac 2013-05-07 20:27:25 EDT (Tue, 07 May 2013) >>> (r5606) >>> @@ -166,10 +166,6 @@ >>> # Compiler support -- we don't need that stuff. >>> AM_ENABLE_SHARED >>> AM_DISABLE_STATIC >>> -# Tell libtool that we don't need Fortran or C++ support. >>> -FC=no >>> -F77=no >>> -CXX=no >>> AM_PROG_LIBTOOL([dlopen win32-dll]) >>> LT_LANG([C]) >>> LT_CONFIG_LTDL_DIR([src/libltdl]) >>> ___ >>> hwloc-svn mailing list >>> hwloc-...@open-mpi.org >>> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-svn >> ___ >> hwloc-devel mailing list >> hwloc-de...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-devel >
Re: [hwloc-devel] hwloc embedding vs libltdl
On May 9, 2013, at 8:55 AM, Brice Goglinwrote: > +Although hwloc plugins may be used in embedded mode, the embedder > +project will have to manually setup libltdl in its build system so > +that hwloc can load its plugins. > +Also, embedders should avoid using their own plugins and hwloc plugins > +simultaneously because of possible issues with public and private > +namespaces when using libltdl. > +The embedder project is strongly advised not to use libltdl. Tweaked: Although hwloc dynamic shared object plugins may be used in embedded mode, the embedder project will have to manually setup libltdl in its build system so that hwloc can load its plugins at run time. Also, embedders should be aware of complications that can arise due to public and private linker namespaces (e.g., if the embedded project is loaded into a private namespace and then hwloc tries to dynamically load its plugins, such loading may fail since the hwloc plugins can't find the hwloc symbols they need). The embedder project is *strongly* advised not to use hwloc's dynamically loading plugins / libltdl capability. -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
Re: [hwloc-devel] [hwloc-svn] svn:hwloc r5606 - trunk
Does this patch fix it? It's not clear to me from the LT docs whether you're supposed to call LT_LANG multiple times or LT_LANG with multiple languages, but this patch below seems to run the libtool C++ configury: Index: configure.ac === --- configure.ac(revision 5609) +++ configure.ac(working copy) @@ -168,6 +168,7 @@ AM_DISABLE_STATIC AM_PROG_LIBTOOL([dlopen win32-dll]) LT_LANG([C]) +LT_LANG([C++]) LT_CONFIG_LTDL_DIR([src/libltdl]) LTDL_INIT([recursive convenience]) AC_CONFIG_FILES([src/libltdl/Makefile]) (I couldn't generate the make check failure on my Mac with or without the additional LT_LANG, so I can't confirm if this is the correct fix or not) On May 8, 2013, at 2:28 AM, Brice Goglinwrote: > We actually used C++ during make check (we test the C++ build of > doc/hwloc-hello.c) > (got a build failure report from https://ci.inria.fr/hwloc/) > > Brice > > > > Le 08/05/2013 02:27, svn-commit-mai...@open-mpi.org a écrit : >> Author: jsquyres (Jeff Squyres) >> Date: 2013-05-07 20:27:25 EDT (Tue, 07 May 2013) >> New Revision: 5606 >> URL: https://svn.open-mpi.org/trac/hwloc/changeset/5606 >> >> Log: >> Revert r5604 -- it's redundant with LT_LANG([C]). >> >> Text files modified: >> trunk/configure.ac | 4 >> 1 files changed, 0 insertions(+), 4 deletions(-) >> >> Modified: trunk/configure.ac >> == >> --- trunk/configure.ac Tue May 7 20:18:05 2013(r5605) >> +++ trunk/configure.ac 2013-05-07 20:27:25 EDT (Tue, 07 May 2013) >> (r5606) >> @@ -166,10 +166,6 @@ >> # Compiler support -- we don't need that stuff. >> AM_ENABLE_SHARED >> AM_DISABLE_STATIC >> -# Tell libtool that we don't need Fortran or C++ support. >> -FC=no >> -F77=no >> -CXX=no >> AM_PROG_LIBTOOL([dlopen win32-dll]) >> LT_LANG([C]) >> LT_CONFIG_LTDL_DIR([src/libltdl]) >> ___ >> hwloc-svn mailing list >> hwloc-...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-svn > > ___ > hwloc-devel mailing list > hwloc-de...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-devel -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
Re: [hwloc-devel] hwloc embedding vs libltdl
Le 09/05/2013 12:43, Jeff Squyres (jsquyres) a écrit : > On May 8, 2013, at 4:16 PM, Brice Goglinwrote: > >> But this issue is only in the embedders (OMPI), not in the embeddee >> (hwloc), right? > Yes. > >> I can get plugins to work in tests/embedded by adding 2 lines to its >> configure.ac (see the attached patch, which also removes your error >> message and creates a shared lib containing libhwloc_embedded). >> >> In short, I don't really see what risk we would be taking on the hwloc >> side if we keep embedding+plugins possible (and still don't enable >> plugins by default). > Ok. It's probably worth documenting, though. In the OMPI case, for example, > OMPI cannot be opened in a private namespace (e.g., as a python plugin) and > then have hwloc also opened in a private namespace; hwloc must be opened in a > public namespace. This has caused unhappiness in certain cases where > upper-layer application authors were trying to open all plugins in private > namespaces but couldn't. The same will be true with hwloc: those who embed > hwloc should be *strongly advised* to not use libltdl (even though it's not > the default) because of the private/public namespace issue. > Something like this? --- a/doc/hwloc.doxy +++ b/doc/hwloc.doxy @@ -2147,6 +2147,9 @@ is registered to the hwloc core. Components are then only enabled if the topology configuration requests it, as explained in the previous sections. +Also note that plugins should carefully be enabled and used when +embedding hwloc in another project, see \ref embed for details. + \section plugins_adding Adding new discovery components and plugins The types and functions cited below are declared in the hwloc/plugins.h header. @@ -2338,6 +2341,14 @@ you can directly integrate hwloc's m4 configure macro into your configure script. You can then invoke hwloc's configuration tests and build setup by calling an m4 macro (see below). +Although hwloc plugins may be used in embedded mode, the embedder +project will have to manually setup libltdl in its build system so +that hwloc can load its plugins. +Also, embedders should avoid using their own plugins and hwloc plugins +simultaneously because of possible issues with public and private +namespaces when using libltdl. +The embedder project is strongly advised not to use libltdl. + \section embedding_m4 Using hwloc's M4 Embedding Capabilities Every project is different, and there are many different ways of Brice
Re: [hwloc-devel] hwloc embedding vs libltdl
On May 8, 2013, at 4:16 PM, Brice Goglinwrote: > But this issue is only in the embedders (OMPI), not in the embeddee > (hwloc), right? Yes. > I can get plugins to work in tests/embedded by adding 2 lines to its > configure.ac (see the attached patch, which also removes your error > message and creates a shared lib containing libhwloc_embedded). > > In short, I don't really see what risk we would be taking on the hwloc > side if we keep embedding+plugins possible (and still don't enable > plugins by default). Ok. It's probably worth documenting, though. In the OMPI case, for example, OMPI cannot be opened in a private namespace (e.g., as a python plugin) and then have hwloc also opened in a private namespace; hwloc must be opened in a public namespace. This has caused unhappiness in certain cases where upper-layer application authors were trying to open all plugins in private namespaces but couldn't. The same will be true with hwloc: those who embed hwloc should be *strongly advised* to not use libltdl (even though it's not the default) because of the private/public namespace issue. -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
Re: [hwloc-devel] Minor issue with the man page
Samuel fixed it a couple weeks ago (Debian packaging tools complained like rpmlint). Thanks Brice Le 09/05/2013 09:47, Jiri Hladky a écrit : > Hi Brice, > > rpmlint reports a minor typo in the man page for hwloc 1.7 > > > $rpmlint -i /home/jhladky/rpmbuild/RPMS/x86_64/hwloc-1.7-0.fc18.x86_64.rpm > hwloc.x86_64: W: manual-page-warning > /usr/share/man/man1/hwloc-info.1.gz 151: warning: macro `.' not defined > This man page may contain problems that can cause it not to be > formatted as > intended. > > > $ zcat hwloc-info.1.gz | sed -ne 151p > ..\" ** > > There's one extra "." at the beginning of that line. > > Patch file is attached. > > Thanks > Jirka > >