new version scotch@6.0.5a (#8254)
* new version scotch@6.0.5a * patch metis headers on scotch@6.0.4 according to https://gforge.inria.fr/tracker/?func=detail&atid=1082&aid=19521&group_id=248
This commit is contained in:
parent
9b2953939b
commit
cd860d7554
@ -0,0 +1,634 @@
|
||||
--- A/src/libscotch/Makefile 2014-09-23 21:28:28.000000000 +0200
|
||||
+++ B/src/libscotch/Makefile 2015-07-24 12:51:31.357132922 +0200
|
||||
@@ -60,7 +60,7 @@ scotch :
|
||||
libscotcherrexit$(LIB)
|
||||
|
||||
ptscotch : scotch
|
||||
- $(MAKE) CFLAGS="$(CFLAGS) -DSCOTCH_PTSCOTCH" CC="$(CCP)" \
|
||||
+ $(MAKE) CFLAGS="$(CFLAGS) -DSCOTCH_PTSCOTCH" CC="$(CCP)" CCD="$(CCP)" \
|
||||
ptscotch.h \
|
||||
ptscotchf.h \
|
||||
libptscotch$(LIB) \
|
||||
--- A/src/libscotchmetis/Makefile 2011-09-06 18:46:48.000000000 +0200
|
||||
+++ B/src/libscotchmetis/Makefile 2015-08-25 13:37:31.424467916 +0200
|
||||
@@ -54,10 +54,12 @@ include ../Makefile.inc
|
||||
|
||||
scotch :
|
||||
$(MAKE) CC="$(CCS)" SCOTCHLIB=ptscotch \
|
||||
+ metis.h \
|
||||
libscotchmetis$(LIB)
|
||||
|
||||
ptscotch :
|
||||
$(MAKE) CFLAGS="$(CFLAGS) -DSCOTCH_PTSCOTCH" CC="$(CCP)" SCOTCHLIB=ptscotch \
|
||||
+ parmetis.h \
|
||||
libptscotchparmetis$(LIB)
|
||||
|
||||
install : scotch
|
||||
@@ -69,7 +71,7 @@ ptinstall : ptscotch
|
||||
-$(CP) libptscotchparmetis$(LIB) $(libdir)
|
||||
|
||||
clean :
|
||||
- -$(RM) *~ *$(OBJ) lib*$(LIB)
|
||||
+ -$(RM) *~ *$(OBJ) lib*$(LIB) metis.h parmetis.h
|
||||
|
||||
realclean : clean
|
||||
|
||||
@@ -138,3 +140,10 @@ libscotchmetis$(LIB) : metis_graph_orde
|
||||
metis_graph_part_f$(OBJ)
|
||||
$(AR) $(ARFLAGS) $(@) $(^)
|
||||
-$(RANLIB) $(@)
|
||||
+metis.h : metis_skeleton.h \
|
||||
+ ../libscotch/dummysizes
|
||||
+ ../libscotch/dummysizes metis_skeleton.h metis.h
|
||||
+
|
||||
+parmetis.h : parmetis_skeleton.h \
|
||||
+ ../libscotch/dummysizes
|
||||
+ ../libscotch/dummysizes parmetis_skeleton.h parmetis.h
|
||||
--- A/src/libscotchmetis/metis.h 2012-09-13 17:43:52.000000000 +0200
|
||||
+++ B/src/libscotchmetis/metis.h 1970-01-01 01:00:00.000000000 +0100
|
||||
@@ -1,97 +0,0 @@
|
||||
-/*********************************************************
|
||||
-** **
|
||||
-** WARNING: THIS IS NOT THE ORIGINAL INCLUDE FILE OF **
|
||||
-** THE MeTiS SOFTWARE PACKAGE. **
|
||||
-** This file is a compatibility include file provided **
|
||||
-** as part of the Scotch software distribution. **
|
||||
-** Preferably use the original MeTiS include file to **
|
||||
-** keep definitions of routines not overloaded by **
|
||||
-** the libScotchMeTiS library. **
|
||||
-** **
|
||||
-*********************************************************/
|
||||
-/* Copyright 2007,2010,2012 IPB, Universite de Bordeaux, INRIA & CNRS
|
||||
-**
|
||||
-** This file is part of the Scotch software package for static mapping,
|
||||
-** graph partitioning and sparse matrix ordering.
|
||||
-**
|
||||
-** This software is governed by the CeCILL-C license under French law
|
||||
-** and abiding by the rules of distribution of free software. You can
|
||||
-** use, modify and/or redistribute the software under the terms of the
|
||||
-** CeCILL-C license as circulated by CEA, CNRS and INRIA at the following
|
||||
-** URL: "http://www.cecill.info".
|
||||
-**
|
||||
-** As a counterpart to the access to the source code and rights to copy,
|
||||
-** modify and redistribute granted by the license, users are provided
|
||||
-** only with a limited warranty and the software's author, the holder of
|
||||
-** the economic rights, and the successive licensors have only limited
|
||||
-** liability.
|
||||
-**
|
||||
-** In this respect, the user's attention is drawn to the risks associated
|
||||
-** with loading, using, modifying and/or developing or reproducing the
|
||||
-** software by the user in light of its specific status of free software,
|
||||
-** that may mean that it is complicated to manipulate, and that also
|
||||
-** therefore means that it is reserved for developers and experienced
|
||||
-** professionals having in-depth computer knowledge. Users are therefore
|
||||
-** encouraged to load and test the software's suitability as regards
|
||||
-** their requirements in conditions enabling the security of their
|
||||
-** systems and/or data to be ensured and, more generally, to use and
|
||||
-** operate it in the same conditions as regards security.
|
||||
-**
|
||||
-** The fact that you are presently reading this means that you have had
|
||||
-** knowledge of the CeCILL-C license and that you accept its terms.
|
||||
-*/
|
||||
-/************************************************************/
|
||||
-/** **/
|
||||
-/** NAME : metis.h **/
|
||||
-/** **/
|
||||
-/** AUTHOR : Francois PELLEGRINI **/
|
||||
-/** **/
|
||||
-/** FUNCTION : Compatibility declaration file for the **/
|
||||
-/** MeTiS interface routines provided by **/
|
||||
-/** the Scotch project. **/
|
||||
-/** **/
|
||||
-/** DATES : # Version 5.0 : from : 08 sep 2006 **/
|
||||
-/** to 07 jun 2007 **/
|
||||
-/** # Version 5.1 : from : 30 jun 2010 **/
|
||||
-/** to 30 jun 2010 **/
|
||||
-/** # Version 6.0 : from : 13 sep 2012 **/
|
||||
-/** to 13 sep 2012 **/
|
||||
-/** **/
|
||||
-/************************************************************/
|
||||
-
|
||||
-/*
|
||||
-** The defines.
|
||||
-*/
|
||||
-
|
||||
-#ifdef SCOTCH_METIS_PREFIX
|
||||
-#define SCOTCH_METIS_PREFIXL scotch_
|
||||
-#define SCOTCH_METIS_PREFIXU SCOTCH_
|
||||
-#endif /* SCOTCH_METIS_PREFIX */
|
||||
-
|
||||
-#ifndef SCOTCH_METIS_PREFIXL
|
||||
-#define SCOTCH_METIS_PREFIXL
|
||||
-#endif /* SCOTCH_METIS_PREFIXL */
|
||||
-
|
||||
-#ifndef SCOTCH_METIS_PREFIXU
|
||||
-#define SCOTCH_METIS_PREFIXU
|
||||
-#endif /* SCOTCH_METIS_PREFIXU */
|
||||
-
|
||||
-#ifndef METISNAMEL
|
||||
-#define METISNAMEL(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXL),s)
|
||||
-#define METISNAMEU(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXU),s)
|
||||
-#define METISNAME2(p,s) METISNAME4(p,s)
|
||||
-#define METISNAME3(s) s
|
||||
-#define METISNAME4(p,s) p##s
|
||||
-#endif /* METISNAMEL */
|
||||
-
|
||||
-/*
|
||||
-** The function prototypes.
|
||||
-*/
|
||||
-
|
||||
-void METISNAMEU(METIS_EdgeND) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
-void METISNAMEU(METIS_NodeND) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
-void METISNAMEU(METIS_NodeWND) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
-
|
||||
-void METISNAMEU(METIS_PartGraphKway) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
-void METISNAMEU(METIS_PartGraphRecursive) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
-void METISNAMEU(METIS_PartGraphVKway) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
--- A/src/libscotchmetis/metis_skeleton.h 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ B/src/libscotchmetis/metis_skeleton.h 2015-08-25 13:27:07.224497875 +0200
|
||||
@@ -0,0 +1,103 @@
|
||||
+/*********************************************************
|
||||
+** **
|
||||
+** WARNING: THIS IS NOT THE ORIGINAL INCLUDE FILE OF **
|
||||
+** THE MeTiS SOFTWARE PACKAGE. **
|
||||
+** This file is a compatibility include file provided **
|
||||
+** as part of the Scotch software distribution. **
|
||||
+** Preferably use the original MeTiS include file to **
|
||||
+** keep definitions of routines not overloaded by **
|
||||
+** the libScotchMeTiS library. **
|
||||
+** **
|
||||
+*********************************************************/
|
||||
+/* Copyright 2007,2010,2012 IPB, Universite de Bordeaux, INRIA & CNRS
|
||||
+**
|
||||
+** This file is part of the Scotch software package for static mapping,
|
||||
+** graph partitioning and sparse matrix ordering.
|
||||
+**
|
||||
+** This software is governed by the CeCILL-C license under French law
|
||||
+** and abiding by the rules of distribution of free software. You can
|
||||
+** use, modify and/or redistribute the software under the terms of the
|
||||
+** CeCILL-C license as circulated by CEA, CNRS and INRIA at the following
|
||||
+** URL: "http://www.cecill.info".
|
||||
+**
|
||||
+** As a counterpart to the access to the source code and rights to copy,
|
||||
+** modify and redistribute granted by the license, users are provided
|
||||
+** only with a limited warranty and the software's author, the holder of
|
||||
+** the economic rights, and the successive licensors have only limited
|
||||
+** liability.
|
||||
+**
|
||||
+** In this respect, the user's attention is drawn to the risks associated
|
||||
+** with loading, using, modifying and/or developing or reproducing the
|
||||
+** software by the user in light of its specific status of free software,
|
||||
+** that may mean that it is complicated to manipulate, and that also
|
||||
+** therefore means that it is reserved for developers and experienced
|
||||
+** professionals having in-depth computer knowledge. Users are therefore
|
||||
+** encouraged to load and test the software's suitability as regards
|
||||
+** their requirements in conditions enabling the security of their
|
||||
+** systems and/or data to be ensured and, more generally, to use and
|
||||
+** operate it in the same conditions as regards security.
|
||||
+**
|
||||
+** The fact that you are presently reading this means that you have had
|
||||
+** knowledge of the CeCILL-C license and that you accept its terms.
|
||||
+*/
|
||||
+/************************************************************/
|
||||
+/** **/
|
||||
+/** NAME : metis.h **/
|
||||
+/** **/
|
||||
+/** AUTHOR : Francois PELLEGRINI **/
|
||||
+/** **/
|
||||
+/** FUNCTION : Compatibility declaration file for the **/
|
||||
+/** MeTiS interface routines provided by **/
|
||||
+/** the Scotch project. **/
|
||||
+/** **/
|
||||
+/** DATES : # Version 5.0 : from : 08 sep 2006 **/
|
||||
+/** to 07 jun 2007 **/
|
||||
+/** # Version 5.1 : from : 30 jun 2010 **/
|
||||
+/** to 30 jun 2010 **/
|
||||
+/** # Version 6.0 : from : 13 sep 2012 **/
|
||||
+/** to 13 sep 2012 **/
|
||||
+/** **/
|
||||
+/************************************************************/
|
||||
+
|
||||
+#include<stdint.h>
|
||||
+
|
||||
+/*
|
||||
+** The defines.
|
||||
+*/
|
||||
+
|
||||
+#ifdef SCOTCH_METIS_PREFIX
|
||||
+#define SCOTCH_METIS_PREFIXL scotch_
|
||||
+#define SCOTCH_METIS_PREFIXU SCOTCH_
|
||||
+#endif /* SCOTCH_METIS_PREFIX */
|
||||
+
|
||||
+#ifndef SCOTCH_METIS_PREFIXL
|
||||
+#define SCOTCH_METIS_PREFIXL
|
||||
+#endif /* SCOTCH_METIS_PREFIXL */
|
||||
+
|
||||
+#ifndef SCOTCH_METIS_PREFIXU
|
||||
+#define SCOTCH_METIS_PREFIXU
|
||||
+#endif /* SCOTCH_METIS_PREFIXU */
|
||||
+
|
||||
+#ifndef METISNAMEL
|
||||
+#define METISNAMEL(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXL),s)
|
||||
+#define METISNAMEU(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXU),s)
|
||||
+#define METISNAME2(p,s) METISNAME4(p,s)
|
||||
+#define METISNAME3(s) s
|
||||
+#define METISNAME4(p,s) p##s
|
||||
+#endif /* METISNAMEL */
|
||||
+
|
||||
+/*+ Integer type. +*/
|
||||
+
|
||||
+typedef DUMMYINT SCOTCH_Num;
|
||||
+
|
||||
+/*
|
||||
+** The function prototypes.
|
||||
+*/
|
||||
+
|
||||
+void METISNAMEU(METIS_EdgeND) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
+void METISNAMEU(METIS_NodeND) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
+void METISNAMEU(METIS_NodeWND) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
+
|
||||
+void METISNAMEU(METIS_PartGraphKway) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
+void METISNAMEU(METIS_PartGraphRecursive) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
+void METISNAMEU(METIS_PartGraphVKway) (const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
--- A/src/libscotchmetis/parmetis.h 2012-09-13 17:41:21.000000000 +0200
|
||||
+++ B/src/libscotchmetis/parmetis.h 1970-01-01 01:00:00.000000000 +0100
|
||||
@@ -1,100 +0,0 @@
|
||||
-/*********************************************************
|
||||
-** **
|
||||
-** WARNING: THIS IS NOT THE ORIGINAL INCLUDE FILE OF **
|
||||
-** THE ParMeTiS SOFTWARE PACKAGE. **
|
||||
-** This file is a compatibility include file provided **
|
||||
-** as part of the Scotch software distribution. **
|
||||
-** Preferably use the original ParMeTiS include file **
|
||||
-** to keep definitions of routines not overloaded by **
|
||||
-** the libPTScotchMeTiS library. **
|
||||
-** **
|
||||
-*********************************************************/
|
||||
-/* Copyright 2007,2008,2010,2012 IPB, Universite de Bordeaux, INRIA & CNRS
|
||||
-**
|
||||
-** This file is part of the Scotch software package for static mapping,
|
||||
-** graph partitioning and sparse matrix ordering.
|
||||
-**
|
||||
-** This software is governed by the CeCILL-C license under French law
|
||||
-** and abiding by the rules of distribution of free software. You can
|
||||
-** use, modify and/or redistribute the software under the terms of the
|
||||
-** CeCILL-C license as circulated by CEA, CNRS and INRIA at the following
|
||||
-** URL: "http://www.cecill.info".
|
||||
-**
|
||||
-** As a counterpart to the access to the source code and rights to copy,
|
||||
-** modify and redistribute granted by the license, users are provided
|
||||
-** only with a limited warranty and the software's author, the holder of
|
||||
-** the economic rights, and the successive licensors have only limited
|
||||
-** liability.
|
||||
-**
|
||||
-** In this respect, the user's attention is drawn to the risks associated
|
||||
-** with loading, using, modifying and/or developing or reproducing the
|
||||
-** software by the user in light of its specific status of free software,
|
||||
-** that may mean that it is complicated to manipulate, and that also
|
||||
-** therefore means that it is reserved for developers and experienced
|
||||
-** professionals having in-depth computer knowledge. Users are therefore
|
||||
-** encouraged to load and test the software's suitability as regards
|
||||
-** their requirements in conditions enabling the security of their
|
||||
-** systems and/or data to be ensured and, more generally, to use and
|
||||
-** operate it in the same conditions as regards security.
|
||||
-**
|
||||
-** The fact that you are presently reading this means that you have had
|
||||
-** knowledge of the CeCILL-C license and that you accept its terms.
|
||||
-*/
|
||||
-/************************************************************/
|
||||
-/** **/
|
||||
-/** NAME : parmetis.h **/
|
||||
-/** **/
|
||||
-/** AUTHOR : Francois PELLEGRINI **/
|
||||
-/** **/
|
||||
-/** FUNCTION : Compatibility declaration file for the **/
|
||||
-/** MeTiS interface routines provided by **/
|
||||
-/** the Scotch project. **/
|
||||
-/** **/
|
||||
-/** DATES : # Version 5.0 : from : 17 oct 2007 **/
|
||||
-/** to 18 oct 2007 **/
|
||||
-/** # Version 5.1 : from : 19 jun 2008 **/
|
||||
-/** to 30 jun 2010 **/
|
||||
-/** # Version 6.0 : from : 13 sep 2012 **/
|
||||
-/** to 13 sep 2012 **/
|
||||
-/** **/
|
||||
-/************************************************************/
|
||||
-
|
||||
-/*
|
||||
-** The defines and includes.
|
||||
-*/
|
||||
-
|
||||
-#ifndef __parmetis_h__
|
||||
-#define __parmetis_h__
|
||||
-
|
||||
-#include <mpi.h> /* Since ParMeTiS does it, do it too */
|
||||
-
|
||||
-#endif /* __parmetis_h__ */
|
||||
-
|
||||
-#ifdef SCOTCH_METIS_PREFIX
|
||||
-#define SCOTCH_METIS_PREFIXL scotch_
|
||||
-#define SCOTCH_METIS_PREFIXU SCOTCH_
|
||||
-#endif /* SCOTCH_METIS_PREFIX */
|
||||
-
|
||||
-#ifndef SCOTCH_METIS_PREFIXL
|
||||
-#define SCOTCH_METIS_PREFIXL
|
||||
-#endif /* SCOTCH_METIS_PREFIXL */
|
||||
-
|
||||
-#ifndef SCOTCH_METIS_PREFIXU
|
||||
-#define SCOTCH_METIS_PREFIXU
|
||||
-#endif /* SCOTCH_METIS_PREFIXU */
|
||||
-
|
||||
-#ifndef METISNAMEL
|
||||
-#define METISNAMEL(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXL),s)
|
||||
-#define METISNAMEU(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXU),s)
|
||||
-#define METISNAME2(p,s) METISNAME4(p,s)
|
||||
-#define METISNAME3(s) s
|
||||
-#define METISNAME4(p,s) p##s
|
||||
-#endif /* METISNAMEL */
|
||||
-
|
||||
-/*
|
||||
-** The function prototypes.
|
||||
-*/
|
||||
-
|
||||
-void METISNAMEU(ParMETIS_V3_NodeND) (const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, MPI_Comm * const);
|
||||
-void METISNAMEU(ParMETIS_V3_PartGeomKway) (const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const float * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const float * const, const float * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, MPI_Comm * const);
|
||||
-void METISNAMEU(ParMETIS_V3_PartKway) (const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const float * const, const float * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, MPI_Comm * const);
|
||||
--- A/src/libscotchmetis/parmetis_skeleton.h 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ B/src/libscotchmetis/parmetis_skeleton.h 2015-08-25 13:42:17.972454163 +0200
|
||||
@@ -0,0 +1,105 @@
|
||||
+/*********************************************************
|
||||
+** **
|
||||
+** WARNING: THIS IS NOT THE ORIGINAL INCLUDE FILE OF **
|
||||
+** THE ParMeTiS SOFTWARE PACKAGE. **
|
||||
+** This file is a compatibility include file provided **
|
||||
+** as part of the Scotch software distribution. **
|
||||
+** Preferably use the original ParMeTiS include file **
|
||||
+** to keep definitions of routines not overloaded by **
|
||||
+** the libPTScotchMeTiS library. **
|
||||
+** **
|
||||
+*********************************************************/
|
||||
+/* Copyright 2007,2008,2010,2012 IPB, Universite de Bordeaux, INRIA & CNRS
|
||||
+**
|
||||
+** This file is part of the Scotch software package for static mapping,
|
||||
+** graph partitioning and sparse matrix ordering.
|
||||
+**
|
||||
+** This software is governed by the CeCILL-C license under French law
|
||||
+** and abiding by the rules of distribution of free software. You can
|
||||
+** use, modify and/or redistribute the software under the terms of the
|
||||
+** CeCILL-C license as circulated by CEA, CNRS and INRIA at the following
|
||||
+** URL: "http://www.cecill.info".
|
||||
+**
|
||||
+** As a counterpart to the access to the source code and rights to copy,
|
||||
+** modify and redistribute granted by the license, users are provided
|
||||
+** only with a limited warranty and the software's author, the holder of
|
||||
+** the economic rights, and the successive licensors have only limited
|
||||
+** liability.
|
||||
+**
|
||||
+** In this respect, the user's attention is drawn to the risks associated
|
||||
+** with loading, using, modifying and/or developing or reproducing the
|
||||
+** software by the user in light of its specific status of free software,
|
||||
+** that may mean that it is complicated to manipulate, and that also
|
||||
+** therefore means that it is reserved for developers and experienced
|
||||
+** professionals having in-depth computer knowledge. Users are therefore
|
||||
+** encouraged to load and test the software's suitability as regards
|
||||
+** their requirements in conditions enabling the security of their
|
||||
+** systems and/or data to be ensured and, more generally, to use and
|
||||
+** operate it in the same conditions as regards security.
|
||||
+**
|
||||
+** The fact that you are presently reading this means that you have had
|
||||
+** knowledge of the CeCILL-C license and that you accept its terms.
|
||||
+*/
|
||||
+/************************************************************/
|
||||
+/** **/
|
||||
+/** NAME : parmetis.h **/
|
||||
+/** **/
|
||||
+/** AUTHOR : Francois PELLEGRINI **/
|
||||
+/** **/
|
||||
+/** FUNCTION : Compatibility declaration file for the **/
|
||||
+/** MeTiS interface routines provided by **/
|
||||
+/** the Scotch project. **/
|
||||
+/** **/
|
||||
+/** DATES : # Version 5.0 : from : 17 oct 2007 **/
|
||||
+/** to 18 oct 2007 **/
|
||||
+/** # Version 5.1 : from : 19 jun 2008 **/
|
||||
+/** to 30 jun 2010 **/
|
||||
+/** # Version 6.0 : from : 13 sep 2012 **/
|
||||
+/** to 13 sep 2012 **/
|
||||
+/** **/
|
||||
+/************************************************************/
|
||||
+
|
||||
+/*
|
||||
+** The defines and includes.
|
||||
+*/
|
||||
+
|
||||
+#ifndef __parmetis_h__
|
||||
+#define __parmetis_h__
|
||||
+
|
||||
+#include<stdint.h>
|
||||
+#include <mpi.h> /* Since ParMeTiS does it, do it too */
|
||||
+
|
||||
+#endif /* __parmetis_h__ */
|
||||
+
|
||||
+#ifdef SCOTCH_METIS_PREFIX
|
||||
+#define SCOTCH_METIS_PREFIXL scotch_
|
||||
+#define SCOTCH_METIS_PREFIXU SCOTCH_
|
||||
+#endif /* SCOTCH_METIS_PREFIX */
|
||||
+
|
||||
+#ifndef SCOTCH_METIS_PREFIXL
|
||||
+#define SCOTCH_METIS_PREFIXL
|
||||
+#endif /* SCOTCH_METIS_PREFIXL */
|
||||
+
|
||||
+#ifndef SCOTCH_METIS_PREFIXU
|
||||
+#define SCOTCH_METIS_PREFIXU
|
||||
+#endif /* SCOTCH_METIS_PREFIXU */
|
||||
+
|
||||
+#ifndef METISNAMEL
|
||||
+#define METISNAMEL(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXL),s)
|
||||
+#define METISNAMEU(s) METISNAME2(METISNAME3(SCOTCH_METIS_PREFIXU),s)
|
||||
+#define METISNAME2(p,s) METISNAME4(p,s)
|
||||
+#define METISNAME3(s) s
|
||||
+#define METISNAME4(p,s) p##s
|
||||
+#endif /* METISNAMEL */
|
||||
+
|
||||
+/*+ Integer type. +*/
|
||||
+
|
||||
+typedef DUMMYINT SCOTCH_Num;
|
||||
+
|
||||
+/*
|
||||
+** The function prototypes.
|
||||
+*/
|
||||
+
|
||||
+void METISNAMEU(ParMETIS_V3_NodeND) (const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, MPI_Comm * const);
|
||||
+void METISNAMEU(ParMETIS_V3_PartGeomKway) (const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const float * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const float * const, const float * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, MPI_Comm * const);
|
||||
+void METISNAMEU(ParMETIS_V3_PartKway) (const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const SCOTCH_Num * const, const float * const, const float * const, const SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, MPI_Comm * const);
|
||||
--- A/src/Makefile 2014-10-02 17:31:36.000000000 +0200
|
||||
+++ B/src/Makefile 2015-08-25 13:00:50.288573562 +0200
|
||||
@@ -115,6 +115,7 @@ install : required $(bindir) $(includ
|
||||
-$(CP) -f ../bin/[agm]*$(EXE) $(bindir)
|
||||
-$(CP) -f ../bin/d[agm]*$(EXE) $(bindir)
|
||||
-$(CP) -f ../include/*scotch*.h $(includedir)
|
||||
+ -$(CP) -f ../include/*metis*.h $(includedir)
|
||||
-$(CP) -f ../lib/*scotch*$(LIB) $(libdir)
|
||||
-$(CP) -Rf ../man/* $(mandir)
|
||||
|
||||
--- A/src/Makefile~ 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ B/src/Makefile~ 2014-10-02 17:31:36.000000000 +0200
|
||||
@@ -0,0 +1,134 @@
|
||||
+## Copyright 2004,2007,2008,2010-2012,2014 IPB, Universite de Bordeaux, INRIA & CNRS
|
||||
+##
|
||||
+## This file is part of the Scotch software package for static mapping,
|
||||
+## graph partitioning and sparse matrix ordering.
|
||||
+##
|
||||
+## This software is governed by the CeCILL-C license under French law
|
||||
+## and abiding by the rules of distribution of free software. You can
|
||||
+## use, modify and/or redistribute the software under the terms of the
|
||||
+## CeCILL-C license as circulated by CEA, CNRS and INRIA at the following
|
||||
+## URL: "http://www.cecill.info".
|
||||
+##
|
||||
+## As a counterpart to the access to the source code and rights to copy,
|
||||
+## modify and redistribute granted by the license, users are provided
|
||||
+## only with a limited warranty and the software's author, the holder of
|
||||
+## the economic rights, and the successive licensors have only limited
|
||||
+## liability.
|
||||
+##
|
||||
+## In this respect, the user's attention is drawn to the risks associated
|
||||
+## with loading, using, modifying and/or developing or reproducing the
|
||||
+## software by the user in light of its specific status of free software,
|
||||
+## that may mean that it is complicated to manipulate, and that also
|
||||
+## therefore means that it is reserved for developers and experienced
|
||||
+## professionals having in-depth computer knowledge. Users are therefore
|
||||
+## encouraged to load and test the software's suitability as regards
|
||||
+## their requirements in conditions enabling the security of their
|
||||
+## systems and/or data to be ensured and, more generally, to use and
|
||||
+## operate it in the same conditions as regards security.
|
||||
+##
|
||||
+## The fact that you are presently reading this means that you have had
|
||||
+## knowledge of the CeCILL-C license and that you accept its terms.
|
||||
+##
|
||||
+
|
||||
+VERSION = 6
|
||||
+RELEASE = 0
|
||||
+PATCHLEVEL = 4
|
||||
+
|
||||
+.PHONY : clean default install ptscotch realclean required scotch
|
||||
+
|
||||
+default : scotch
|
||||
+
|
||||
+required : Makefile.inc ../bin ../include ../lib
|
||||
+
|
||||
+Makefile.inc :
|
||||
+ @echo "#####################################################################"
|
||||
+ @echo "BEFORE COMPILING Scotch OR PT-Scotch, YOU SHOULD HAVE AN APPROPRIATE"
|
||||
+ @echo "Makefile.inc FILE IN THIS DIRECTORY. PLEASE LOOK INTO DIRECTORY"
|
||||
+ @echo " ./Make.inc FOR AN EXISTING Makefile.inc FILE THAT FITS YOUR NEED, OR"
|
||||
+ @echo "USE THEM AS MODELS IN CASE YOU NEED TO BUILD A NEW ONE FOR YOUR"
|
||||
+ @echo "PARTICULAR PLATFORM."
|
||||
+ @echo "#####################################################################"
|
||||
+ @echo "Then, type \"make scotch\" (default) for the sequential library"
|
||||
+ @echo "and software, or \"make ptscotch\" for the parallel library and"
|
||||
+ @echo "software."
|
||||
+ @exit 1
|
||||
+
|
||||
+include Makefile.inc
|
||||
+
|
||||
+prefix ?= /usr/local
|
||||
+bindir ?= $(prefix)/bin
|
||||
+includedir ?= $(prefix)/include
|
||||
+libdir ?= $(prefix)/lib
|
||||
+datarootdir ?= $(prefix)/share
|
||||
+mandir ?= $(datarootdir)/man
|
||||
+
|
||||
+../bin :
|
||||
+ -$(MKDIR) ../bin
|
||||
+
|
||||
+../include :
|
||||
+ -$(MKDIR) ../include
|
||||
+
|
||||
+../lib :
|
||||
+ -$(MKDIR) ../lib
|
||||
+
|
||||
+$(bindir) :
|
||||
+ -$(MKDIR) $(bindir)
|
||||
+
|
||||
+$(datarootdir) :
|
||||
+ -$(MKDIR) $(datarootdir)
|
||||
+
|
||||
+$(includedir) :
|
||||
+ -$(MKDIR) $(includedir)
|
||||
+
|
||||
+$(libdir) :
|
||||
+ -$(MKDIR) $(libdir)
|
||||
+
|
||||
+$(mandir) : $(datarootdir)
|
||||
+ -$(MKDIR) $(mandir)
|
||||
+
|
||||
+$(mandir)/man1 : $(mandir)
|
||||
+ -$(MKDIR) $(mandir)/man1
|
||||
+
|
||||
+scotch : required
|
||||
+ (cd libscotch ; $(MAKE) VERSION=$(VERSION) RELEASE=$(RELEASE) PATCHLEVEL=$(PATCHLEVEL) scotch && $(MAKE) install)
|
||||
+ (cd scotch ; $(MAKE) VERSION=$(VERSION) RELEASE=$(RELEASE) PATCHLEVEL=$(PATCHLEVEL) scotch && $(MAKE) install)
|
||||
+ (cd libscotchmetis ; $(MAKE) scotch && $(MAKE) install)
|
||||
+
|
||||
+ptscotch : required
|
||||
+ (cd libscotch ; $(MAKE) VERSION=$(VERSION) RELEASE=$(RELEASE) PATCHLEVEL=$(PATCHLEVEL) ptscotch && $(MAKE) ptinstall)
|
||||
+ (cd scotch ; $(MAKE) VERSION=$(VERSION) RELEASE=$(RELEASE) PATCHLEVEL=$(PATCHLEVEL) ptscotch && $(MAKE) ptinstall)
|
||||
+ (cd libscotchmetis ; $(MAKE) ptscotch && $(MAKE) ptinstall)
|
||||
+
|
||||
+check : scotch
|
||||
+ (cd check ; $(MAKE) check)
|
||||
+
|
||||
+ptcheck : ptscotch
|
||||
+ (cd check ; $(MAKE) ptcheck)
|
||||
+
|
||||
+esmumps : scotch
|
||||
+ (cd esmumps ; $(MAKE) scotch && $(MAKE) install)
|
||||
+
|
||||
+ptesmumps : ptscotch
|
||||
+ (cd esmumps ; $(MAKE) ptscotch && $(MAKE) ptinstall)
|
||||
+
|
||||
+install : required $(bindir) $(includedir) $(libdir) $(mandir)/man1
|
||||
+ -$(CP) -f ../bin/[agm]*$(EXE) $(bindir)
|
||||
+ -$(CP) -f ../bin/d[agm]*$(EXE) $(bindir)
|
||||
+ -$(CP) -f ../include/*scotch*.h $(includedir)
|
||||
+ -$(CP) -f ../lib/*scotch*$(LIB) $(libdir)
|
||||
+ -$(CP) -Rf ../man/* $(mandir)
|
||||
+
|
||||
+clean : required
|
||||
+ (cd libscotch ; $(MAKE) clean)
|
||||
+ (cd scotch ; $(MAKE) clean)
|
||||
+ (cd libscotchmetis ; $(MAKE) clean)
|
||||
+ (cd check ; $(MAKE) clean)
|
||||
+ (cd esmumps ; $(MAKE) clean)
|
||||
+
|
||||
+realclean : required
|
||||
+ (cd libscotch ; $(MAKE) realclean)
|
||||
+ (cd scotch ; $(MAKE) realclean)
|
||||
+ (cd libscotchmetis ; $(MAKE) realclean)
|
||||
+ (cd check ; $(MAKE) realclean)
|
||||
+ (cd esmumps ; $(MAKE) realclean)
|
||||
+ -$(RM) ../bin/* ../include/* ../lib/*
|
||||
--- A/src/Make.inc/Makefile.inc.x86-64_pc_linux2~ 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ B/src/Make.inc/Makefile.inc.x86-64_pc_linux2~ 2015-08-25 13:09:33.984548426 +0200
|
||||
@@ -0,0 +1,21 @@
|
||||
+EXE =
|
||||
+LIB = .a
|
||||
+OBJ = .o
|
||||
+
|
||||
+MAKE = make
|
||||
+AR = ar
|
||||
+ARFLAGS = -ruv
|
||||
+CAT = cat
|
||||
+CCS = gcc
|
||||
+CCP = mpicc
|
||||
+CCD = gcc
|
||||
+CFLAGS = -O3 -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_PTHREAD -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -DSCOTCH_PTHREAD -Drestrict=__restrict -DIDXSIZE64 -DINT=int64_t
|
||||
+CLIBFLAGS =
|
||||
+LDFLAGS = -lz -lm -lrt -pthread
|
||||
+CP = cp
|
||||
+LEX = flex -Pscotchyy -olex.yy.c
|
||||
+LN = ln
|
||||
+MKDIR = mkdir
|
||||
+MV = mv
|
||||
+RANLIB = ranlib
|
||||
+YACC = bison -pscotchyy -y -b y
|
@ -33,6 +33,7 @@ class Scotch(Package):
|
||||
url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_6.0.4.tar.gz"
|
||||
list_url = "http://gforge.inria.fr/frs/?group_id=248"
|
||||
|
||||
version('6.0.5a', '8430dff7175a1dfd5a3258e75260cf71')
|
||||
version('6.0.4', 'd58b825eb95e1db77efe8c6ff42d329f')
|
||||
version('6.0.3', '10b0cc0f184de2de99859eafaca83cfc')
|
||||
version('6.0.0', 'c50d6187462ba801f9a82133ee666e8e')
|
||||
@ -60,6 +61,7 @@ class Scotch(Package):
|
||||
# Version-specific patches
|
||||
patch('nonthreaded-6.0.4.patch', when='@6.0.4')
|
||||
patch('esmumps-ldflags-6.0.4.patch', when='@6.0.4')
|
||||
patch('metis-headers-6.0.4.patch', when='@6.0.4')
|
||||
|
||||
# NOTE: In cross-compiling environment parallel build
|
||||
# produces weird linker errors.
|
||||
|
Loading…
Reference in New Issue
Block a user