[ET Trac] [Einstein Toolkit] #1406: Commit r5034 to the flesh breaks many external libraries

Einstein Toolkit trac-noreply at einsteintoolkit.org
Wed Jul 24 17:01:23 CDT 2013


#1406: Commit r5034 to the flesh breaks many external libraries
-------------------------+--------------------------------------------------
  Reporter:  eschnett    |       Owner:  knarf@…            
      Type:  defect      |      Status:  review             
  Priority:  critical    |   Milestone:  ET_2013_11         
 Component:  SimFactory  |     Version:  development version
Resolution:              |    Keywords:                     
-------------------------+--------------------------------------------------

Comment (by eschnett):

 We pass CPPFLAGS to the C compiler, not to cpp. For example, when
 determining dependencies for C and C++, we use CPPFLAGS, but we do not use
 CFLAGS nor CXXFLAGS since we don't compile. In this case, we still need
 the compiler's OpenMP flag to ensure that the #ifdef _OPENMP and the
 #include <omp.h> are handled correctly. Thus, we need to continue to pass
 -openmp for CPP_OPENMP_FLAGS.

 I believe this is a case where Cactus uses a flag differently from the way
 it is used elsewhere. A similar flag is LIBS, which we need to unset in
 all configure.sh scripts: Cactus does not prepend the "-l" flag to the
 libraries there, but every other code expects this, so passing LIBS would
 lead to errors. Of course, we don't want to use the libraries against
 Cactus will be linked when building an external library anyway, so this is
 fine.

 I also just see that icc and icpc accept both -openmp and -fopenmp. We
 should simply switch to -fopenmp to circumvent this problem for now.

-- 
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1406#comment:2>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit


More information about the Trac mailing list