@@ -523,101 +523,6 @@ ExternalProject_Add( pugixml
523523
524524list (APPEND build_list pugixml )
525525
526- ################################
527- # TRILINOS
528- ################################
529- if (ENABLE_TRILINOS)
530- set (TRILINOS_DIR "${CMAKE_INSTALL_PREFIX} /trilinos" )
531- set (TRILINOS_URL "${TPL_MIRROR_DIR} /trilinos-release-12-18-1.tar.gz" )
532-
533- message (STATUS "Building TRILINOS found at ${TRILINOS_URL} " )
534-
535- set (TRILINOS_C_FLAGS "-fPIC ${C_FLAGS_NO_WARNINGS} " )
536- set (TRILINOS_CXX_FLAGS "-fPIC ${CXX_FLAGS_NO_WARNINGS} " )
537-
538- if ( ENABLE_MKL )
539- set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
540- -D TPL_ENABLE_MKL:BOOL =ON
541- -D TPL_MKL_INCLUDE_DIRS:PATH =${MKL_INCLUDE_DIRS}
542- -D TPL_MKL_LIBRARIES:STRING =${MKL_LIBRARIES} )
543- endif ()
544-
545- if ( ENABLE_ESSL )
546- set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
547- -D HAVE_dggsvd3:BOOL =ON )
548- endif ()
549-
550- if ( DEFINED OpenMP_Fortran_FLAGS )
551- set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
552- -D OpenMP_Fortran_FLAGS:STRING =${OpenMP_Fortran_FLAGS} )
553- endif ()
554-
555- if ( DEFINED OpenMP_Fortran_LIB_NAMES )
556- set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
557- -D OpenMP_Fortran_LIB_NAMES:STRING =${OpenMP_Fortran_LIB_NAMES} )
558- endif ()
559-
560- if ( ${ENABLE_MPI} )
561- set ( TRILINOS_C_COMPILER ${MPI_C_COMPILER} )
562- set ( TRILINOS_CXX_COMPILER ${MPI_CXX_COMPILER} )
563- set ( TRILINOS_Fortran_COMPILER ${MPI_Fortran_COMPILER} )
564- else ()
565- set ( TRILINOS_C_COMPILER ${CMAKE_C_COMPILER} )
566- set ( TRILINOS_CXX_COMPILER ${CMAKE_CXX_COMPILER} )
567- set ( TRILINOS_Fortran_COMPILER ${CMAKE_Fortran_COMPILER} )
568- endif ()
569-
570- ExternalProject_Add( trilinos
571- PREFIX ${PROJECT_BINARY_DIR} /trilinos
572- URL ${TRILINOS_URL}
573- INSTALL_DIR ${TRILINOS_DIR}
574- BUILD_COMMAND ${TPL_BUILD_COMMAND}
575- INSTALL_COMMAND ${TPL_INSTALL_COMMAND}
576- CMAKE_GENERATOR ${TPL_GENERATOR}
577- CMAKE_CACHE_ARGS -DTPL_BLAS_LIBRARIES:STRING =${BLAS_LIBRARIES}
578- -DTPL_LAPACK_LIBRARIES:STRING =${LAPACK_LIBRARIES}
579- CMAKE_ARGS -D CMAKE_C_COMPILER:PATH =${TRILINOS_C_COMPILER}
580- -D CMAKE_C_FLAGS:STRING =${TRILINOS_C_FLAGS}
581- -D CMAKE_C_FLAGS_RELEASE:STRING =${CMAKE_C_FLAGS_RELEASE}
582- -D CMAKE_CXX_COMPILER:PATH =${TRILINOS_CXX_COMPILER}
583- -D CMAKE_CXX_FLAGS :STRING =${TRILINOS_CXX_FLAGS}
584- -D CMAKE_CXX_FLAGS_RELEASE :STRING =${CMAKE_CXX_FLAGS_RELEASE}
585- -D CMAKE_Fortran_COMPILER:PATH =${TRILINOS_Fortran_COMPILER}
586- -D CMAKE_Fortran_FLAGS_RELEASE:STRING =${CMAKE_Fortran_FLAGS_RELEASE}
587- -D CMAKE_BUILD_TYPE :STRING =${CMAKE_BUILD_TYPE}
588- -D CMAKE_INSTALL_PREFIX :PATH =<INSTALL_DIR>
589- -D TPL_ENABLE_MPI:BOOL =${ENABLE_MPI}
590- -D BUILD_SHARED_LIBS :BOOL =ON
591- -D CMAKE_POSITION_INDEPENDENT_CODE =${CMAKE_POSITION_INDEPENDENT_CODE}
592- -D Trilinos_ENABLE_OpenMP:BOOL =${ENABLE_OPENMP}
593- -D Trilinos_ENABLE_Fortran:BOOL =ON
594- -D Trilinos_WARNINGS_AS_ERRORS_FLAGS:STRING =""
595- -D CMAKE_VERBOSE_MAKEFILE :BOOL =${CMAKE_VERBOSE_MAKEFILE}
596- -D Trilinos_ENABLE_TESTS:BOOL =OFF
597- -D Trilinos_ENABLE_Gtest:BOOL =OFF
598- -D Trilinos_ENABLE_ALL_PACKAGES:BOOL =OFF
599- -D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL =OFF
600- -D Trilinos_ENABLE_Epetra:BOOL =ON
601- -D Trilinos_ENABLE_EpetraExt:BOOL =ON
602- -D Trilinos_ENABLE_Tpetra:BOOL =ON
603- -D Trilinos_ENABLE_Kokkos:BOOL =ON
604- -D Trilinos_ENABLE_Stratimikos:BOOL =ON
605- -D Trilinos_ENABLE_Amesos:BOOL =ON
606- -D Trilinos_ENABLE_AztecOO:BOOL =ON
607- -D Trilinos_ENABLE_Ifpack:BOOL =ON
608- -D Trilinos_ENABLE_Teuchos:BOOL =ON
609- -D Trilinos_ENABLE_ML:BOOL =ON
610- -D Trilinos_ENABLE_Thyra:BOOL =ON
611- -D Trilinos_ENABLE_STK:BOOL =OFF
612- -D Trilinos_ENABLE_TrilinosCouplings:BOOL =ON
613- -D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL =ON
614- ${TRILINOS_EXTRA_ARGS}
615- )
616-
617- list (APPEND build_list trilinos )
618- endif ()
619-
620-
621526################################
622527# PARMETIS
623528# (also METIS is built; note that the idx_t data type is defined to be
@@ -724,6 +629,108 @@ if( ENABLE_MPI )
724629 list (APPEND build_list superlu_dist )
725630endif ()
726631
632+ ################################
633+ # TRILINOS
634+ ################################
635+ if (ENABLE_TRILINOS)
636+ set (TRILINOS_DIR "${CMAKE_INSTALL_PREFIX} /trilinos" )
637+ set (TRILINOS_URL "${TPL_MIRROR_DIR} /trilinos-release-12-18-1.tar.gz" )
638+
639+ message (STATUS "Building TRILINOS found at ${TRILINOS_URL} " )
640+
641+ set (TRILINOS_C_FLAGS "-fPIC ${C_FLAGS_NO_WARNINGS} " )
642+ set (TRILINOS_CXX_FLAGS "-fPIC ${CXX_FLAGS_NO_WARNINGS} " )
643+
644+ if ( ENABLE_MKL )
645+ set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
646+ -D TPL_ENABLE_MKL:BOOL =ON
647+ -D TPL_MKL_INCLUDE_DIRS:PATH =${MKL_INCLUDE_DIRS}
648+ -D TPL_MKL_LIBRARIES:STRING =${MKL_LIBRARIES} )
649+ endif ()
650+
651+ if ( ENABLE_ESSL )
652+ set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
653+ -D HAVE_dggsvd3:BOOL =ON )
654+ endif ()
655+
656+ if ( DEFINED OpenMP_Fortran_FLAGS )
657+ set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
658+ -D OpenMP_Fortran_FLAGS:STRING =${OpenMP_Fortran_FLAGS} )
659+ endif ()
660+
661+ if ( DEFINED OpenMP_Fortran_LIB_NAMES )
662+ set ( TRILINOS_EXTRA_ARGS ${TRILINOS_EXTRA_ARGS}
663+ -D OpenMP_Fortran_LIB_NAMES:STRING =${OpenMP_Fortran_LIB_NAMES} )
664+ endif ()
665+
666+ if ( ${ENABLE_MPI} )
667+ set ( TRILINOS_C_COMPILER ${MPI_C_COMPILER} )
668+ set ( TRILINOS_CXX_COMPILER ${MPI_CXX_COMPILER} )
669+ set ( TRILINOS_Fortran_COMPILER ${MPI_Fortran_COMPILER} )
670+ else ()
671+ set ( TRILINOS_C_COMPILER ${CMAKE_C_COMPILER} )
672+ set ( TRILINOS_CXX_COMPILER ${CMAKE_CXX_COMPILER} )
673+ set ( TRILINOS_Fortran_COMPILER ${CMAKE_Fortran_COMPILER} )
674+ endif ()
675+
676+ ExternalProject_Add( trilinos
677+ PREFIX ${PROJECT_BINARY_DIR} /trilinos
678+ URL ${TRILINOS_URL}
679+ INSTALL_DIR ${TRILINOS_DIR}
680+ BUILD_COMMAND ${TPL_BUILD_COMMAND}
681+ INSTALL_COMMAND ${TPL_INSTALL_COMMAND}
682+ DEPENDS parmetis metis
683+ CMAKE_GENERATOR ${TPL_GENERATOR}
684+ CMAKE_CACHE_ARGS -DTPL_BLAS_LIBRARIES:STRING =${BLAS_LIBRARIES}
685+ -DTPL_LAPACK_LIBRARIES:STRING =${LAPACK_LIBRARIES}
686+ -DTPL_METIS_INCLUDE_DIRS:PATH =${METIS_DIR} /include
687+ -DTPL_METIS_LIBRARIES:PATH =${METIS_DIR} /lib/libmetis.a
688+ -DTPL_ParMETIS_INCLUDE_DIRS:PATH =${PARMETIS_DIR} /include
689+ -DTPL_ParMETIS_LIBRARIES:PATH =${PARMETIS_DIR} /lib/libparmetis.a;${METIS_DIR} /lib/libmetis.a
690+ CMAKE_ARGS -D CMAKE_C_COMPILER:PATH =${TRILINOS_C_COMPILER}
691+ -D CMAKE_C_FLAGS:STRING =${TRILINOS_C_FLAGS}
692+ -D CMAKE_C_FLAGS_RELEASE:STRING =${CMAKE_C_FLAGS_RELEASE}
693+ -D CMAKE_CXX_COMPILER:PATH =${TRILINOS_CXX_COMPILER}
694+ -D CMAKE_CXX_FLAGS :STRING =${TRILINOS_CXX_FLAGS}
695+ -D CMAKE_CXX_FLAGS_RELEASE :STRING =${CMAKE_CXX_FLAGS_RELEASE}
696+ -D CMAKE_Fortran_COMPILER:PATH =${TRILINOS_Fortran_COMPILER}
697+ -D CMAKE_Fortran_FLAGS_RELEASE:STRING =${CMAKE_Fortran_FLAGS_RELEASE}
698+ -D CMAKE_BUILD_TYPE :STRING =${CMAKE_BUILD_TYPE}
699+ -D CMAKE_INSTALL_PREFIX :PATH =<INSTALL_DIR>
700+ -D TPL_ENABLE_MPI:BOOL =${ENABLE_MPI}
701+ -D TPL_ENABLE_METIS:BOOL =ON
702+ -D TPL_ENABLE_ParMETIS:BOOL =ON
703+ -D BUILD_SHARED_LIBS :BOOL =ON
704+ -D CMAKE_POSITION_INDEPENDENT_CODE =${CMAKE_POSITION_INDEPENDENT_CODE}
705+ -D Trilinos_ENABLE_OpenMP:BOOL =${ENABLE_OPENMP}
706+ -D Trilinos_ENABLE_Fortran:BOOL =ON
707+ -D Trilinos_WARNINGS_AS_ERRORS_FLAGS:STRING =""
708+ -D CMAKE_VERBOSE_MAKEFILE :BOOL =${CMAKE_VERBOSE_MAKEFILE}
709+ -D Trilinos_ENABLE_TESTS:BOOL =OFF
710+ -D Trilinos_ENABLE_Gtest:BOOL =OFF
711+ -D Trilinos_ENABLE_ALL_PACKAGES:BOOL =OFF
712+ -D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL =OFF
713+ -D Trilinos_ENABLE_Epetra:BOOL =ON
714+ -D Trilinos_ENABLE_EpetraExt:BOOL =ON
715+ -D Trilinos_ENABLE_Tpetra:BOOL =ON
716+ -D Trilinos_ENABLE_Kokkos:BOOL =ON
717+ -D Trilinos_ENABLE_Stratimikos:BOOL =ON
718+ -D Trilinos_ENABLE_Amesos:BOOL =ON
719+ -D Trilinos_ENABLE_AztecOO:BOOL =ON
720+ -D Trilinos_ENABLE_Ifpack:BOOL =ON
721+ -D Trilinos_ENABLE_Teuchos:BOOL =ON
722+ -D Trilinos_ENABLE_ML:BOOL =ON
723+ -D Trilinos_ENABLE_Thyra:BOOL =ON
724+ -D Trilinos_ENABLE_STK:BOOL =OFF
725+ -D Trilinos_ENABLE_TrilinosCouplings:BOOL =ON
726+ -D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL =ON
727+ ${TRILINOS_EXTRA_ARGS}
728+ )
729+
730+ list (APPEND build_list trilinos )
731+ endif ()
732+
733+
727734################################
728735# HYPRE
729736################################
0 commit comments