academic/metis: Updated for version 5.1.0.

Signed-off-by: Kyle Guinn <elyk03@gmail.com>
This commit is contained in:
Kyle Guinn 2016-11-18 22:01:49 -06:00 committed by David Spencer
parent 25925df9a2
commit e43491d02a
4 changed files with 360 additions and 228 deletions

View File

@ -1,199 +0,0 @@
diff --git a/Doc/Makefile.am b/Doc/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Doc/Makefile.am
@@ -0,0 +1,5 @@
+dist_noinst_DATA = manual.ps
+dist_pdf_DATA = manual.pdf
+
+%.pdf: %.ps
+ ps2pdf $<
diff --git a/Graphs/Makefile.am b/Graphs/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Graphs/Makefile.am
@@ -0,0 +1,2 @@
+EXTRA_DIST = 0README
+dist_noinst_DATA = 4elt.graph 4elt.graph.part.10 metis.mesh test.mgraph
diff --git a/Lib/Makefile.am b/Lib/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Lib/Makefile.am
@@ -0,0 +1,61 @@
+pkgincludedir = $(includedir)/metis
+pkginclude_HEADERS = defs.h macros.h metis.h proto.h rename.h struct.h
+
+SRC = \
+ balance.c \
+ bucketsort.c \
+ ccgraph.c \
+ coarsen.c \
+ compress.c \
+ debug.c \
+ estmem.c \
+ fm.c \
+ fortran.c \
+ frename.c \
+ graph.c \
+ initpart.c \
+ kmetis.c \
+ kvmetis.c \
+ kwayfm.c \
+ kwayrefine.c \
+ kwayvolfm.c \
+ kwayvolrefine.c \
+ match.c \
+ mbalance.c \
+ mbalance2.c \
+ mcoarsen.c \
+ memory.c \
+ mesh.c \
+ meshpart.c \
+ mfm.c \
+ mfm2.c \
+ mincover.c \
+ minitpart.c \
+ minitpart2.c \
+ mkmetis.c \
+ mkwayfmh.c \
+ mkwayrefine.c \
+ mmatch.c \
+ mmd.c \
+ mpmetis.c \
+ mrefine.c \
+ mrefine2.c \
+ mutil.c \
+ myqsort.c \
+ ometis.c \
+ parmetis.c \
+ pmetis.c \
+ pqueue.c \
+ refine.c \
+ separator.c \
+ sfm.c \
+ srefine.c \
+ stat.c \
+ subdomains.c \
+ timing.c \
+ util.c
+
+lib_LTLIBRARIES = libmetis.la
+libmetis_la_SOURCES = $(SRC)
+libmetis_la_LIBADD = -lm
+libmetis_la_LDFLAGS = -no-undefined -release $(PACKAGE_VERSION)
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,5 @@
+SUBDIRS = Lib Programs Graphs Test Doc
+EXTRA_DIST = CHANGES FILES INSTALL LICENSE VERSION
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = metis.pc
diff --git a/Programs/Makefile.am b/Programs/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Programs/Makefile.am
@@ -0,0 +1,23 @@
+AM_CPPFLAGS = -I$(top_srcdir)/Lib
+LDADD = $(top_builddir)/Lib/libmetis.la
+
+bin_PROGRAMS = \
+ pmetis \
+ kmetis \
+ oemetis \
+ onmetis \
+ mesh2dual \
+ mesh2nodal \
+ partdmesh \
+ partnmesh \
+ graphchk
+
+pmetis_SOURCES = pmetis.c io.c
+kmetis_SOURCES = kmetis.c io.c
+oemetis_SOURCES = oemetis.c io.c smbfactor.c
+onmetis_SOURCES = onmetis.c io.c smbfactor.c
+mesh2dual_SOURCES = mesh2dual.c io.c
+mesh2nodal_SOURCES = mesh2nodal.c io.c
+partdmesh_SOURCES = partdmesh.c io.c
+partnmesh_SOURCES = partnmesh.c io.c
+graphchk_SOURCES = graphchk.c io.c
diff --git a/Test/Makefile.am b/Test/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Test/Makefile.am
@@ -0,0 +1,11 @@
+AM_CPPFLAGS = -I$(top_srcdir)/Lib
+LDADD = $(top_builddir)/Lib/libmetis.la
+
+check_PROGRAMS = mtest
+mtest_SOURCES = mtest.c ../Programs/io.c
+
+GRAPHS = \
+ ../Graphs/4elt.graph
+
+check-local: $(check_PROGRAMS) $(GRAPHS)
+ -./mtest ../Graphs/4elt.graph
diff --git a/configure.ac b/configure.ac
new file mode 100644
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,40 @@
+# -*- Autoconf -*-
+# Process this file with autoconf to produce a configure script.
+
+AC_PREREQ([2.69])
+AC_INIT([METIS],[4.0.3],[karypis@cs.umn.edu],[metis],[http://glaros.dtc.umn.edu/gkhome/metis/metis/overview])
+AC_CONFIG_SRCDIR([Lib/metis.h])
+AC_CONFIG_HEADERS([config.h])
+AM_INIT_AUTOMAKE([foreign])
+LT_INIT
+
+# Checks for programs.
+AC_PROG_INSTALL
+AC_PROG_CC
+
+LIBS_SAVED=$LIBS
+
+# Checks for libraries.
+AC_CHECK_LIB([m], [sqrt])
+
+# Checks for header files.
+AC_CHECK_HEADERS([malloc.h stdlib.h string.h strings.h])
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+# Checks for library functions.
+AC_FUNC_MALLOC
+AC_FUNC_REALLOC
+AC_CHECK_FUNCS([pow sqrt strtol])
+
+LIBS=$LIBS_SAVED
+
+AC_CONFIG_FILES([
+ metis.pc
+ Makefile
+ Doc/Makefile
+ Graphs/Makefile
+ Lib/Makefile
+ Programs/Makefile
+ Test/Makefile])
+AC_OUTPUT
diff --git a/metis.pc.in b/metis.pc.in
new file mode 100644
--- /dev/null
+++ b/metis.pc.in
@@ -0,0 +1,12 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: @PACKAGE_NAME@
+Description: Software for partitioning unstructured graphs and meshes
+Version: @PACKAGE_VERSION@
+URL: @PACKAGE_URL@
+Libs: -L${libdir} -lmetis
+Libs.private: -lm
+Cflags: -I${includedir}/metis

View File

@ -2,7 +2,7 @@
# Slackware build script for METIS
# Copyright 2015 Kyle Guinn <elyk03@gmail.com>, USA
# Copyright 2015-2016 Kyle Guinn <elyk03@gmail.com>, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -23,13 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=metis
VERSION=${VERSION:-4.0.3}
BUILD=${BUILD:-3}
VERSION=${VERSION:-5.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
i?86) ARCH=i486 ;;
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$(uname -m) ;;
esac
@ -40,11 +40,14 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM-$VERSION
OUTPUT=${OUTPUT:-/tmp}
DOCS="CHANGES FILES INSTALL LICENSE VERSION"
DOCS="Changelog LICENSE.txt manual/manual.pdf"
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
@ -57,7 +60,7 @@ else
fi
# Recommended by SuiteSparse
SLKCFLAGS="$SLKCFLAGS -fexceptions -D_FILE_OFFSET_BITS=64"
SLKCFLAGS="$SLKCFLAGS -fexceptions"
set -e
@ -70,27 +73,27 @@ cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R u+w,go-w,a+rX-st .
patch -p1 < $CWD/autotoolize.diff
autoreconf -vif
# Fix compiler flags and directories.
# Fix overlinking.
# Respect CMake's BUILD_SHARED_LIBS variable.
# Add a pkg-config file.
patch -p1 < $CWD/patches/cmake.diff
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--infodir=/usr/info \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-shared \
--disable-dependency-tracking \
--build=$ARCH-slackware-linux
make
make check
make install-strip DESTDIR=$PKG
find $PKG/usr/lib${LIBDIRSUFFIX} -name '*.la' -delete
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
-DCMAKE_INSTALL_LOCALSTATEDIR=/var \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_SKIP_RPATH=YES \
-DCMAKE_RULE_MESSAGES=OFF \
-DCMAKE_VERBOSE_MAKEFILE=TRUE \
-DOPENMP=ON \
..
make install/strip DESTDIR=$PKG
cd ..
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION

View File

@ -1,8 +1,8 @@
PRGNAM="metis"
VERSION="4.0.3"
VERSION="5.1.0"
HOMEPAGE="http://glaros.dtc.umn.edu/gkhome/metis/metis/overview"
DOWNLOAD="http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-4.0.3.tar.gz"
MD5SUM="d3848b454532ef18dc83e4fb160d1e10"
DOWNLOAD="http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz"
MD5SUM="5465e67079419a69e0116de24fce58fe"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""

View File

@ -0,0 +1,328 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,25 +1,10 @@
-cmake_minimum_required(VERSION 2.8)
-project(METIS)
+cmake_minimum_required(VERSION 3.0)
+project(METIS VERSION 5.1.0 LANGUAGES C)
-set(GKLIB_PATH "GKlib" CACHE PATH "path to GKlib")
-set(SHARED FALSE CACHE BOOL "build a shared library")
-
-if(MSVC)
- set(METIS_INSTALL FALSE)
-else()
- set(METIS_INSTALL TRUE)
-endif()
-
-# Configure libmetis library.
-if(SHARED)
- set(METIS_LIBRARY_TYPE SHARED)
-else()
- set(METIS_LIBRARY_TYPE STATIC)
-endif(SHARED)
-
-include(${GKLIB_PATH}/GKlibSystem.cmake)
+include(GNUInstallDirs)
+include(GKlib/GKlibSystem.cmake)
# Add include directories.
-include_directories(${GKLIB_PATH})
+include_directories(GKlib)
include_directories(include)
# Recursively look for CMakeLists.txt in subdirs.
add_subdirectory("include")
diff --git a/GKlib/CMakeLists.txt b/GKlib/CMakeLists.txt
--- a/GKlib/CMakeLists.txt
+++ b/GKlib/CMakeLists.txt
@@ -1,21 +1,23 @@
-cmake_minimum_required(VERSION 2.8)
-project(GKlib)
+cmake_minimum_required(VERSION 3.0)
+project(GKlib LANGUAGES C)
-get_filename_component(abs "." ABSOLUTE)
-set(GKLIB_PATH ${abs})
-unset(abs)
+include(GNUInstallDirs)
include(GKlibSystem.cmake)
include_directories(".")
-add_library(GKlib STATIC ${GKlib_sources})
+add_library(GKlib ${GKlib_sources})
+if(OPENMP AND OPENMP_FOUND)
+ set_property(TARGET GKlib APPEND PROPERTY COMPILE_FLAGS ${OpenMP_C_FLAGS})
+ set_property(TARGET GKlib APPEND PROPERTY LINK_FLAGS ${OpenMP_C_FLAGS})
+endif()
if(UNIX)
- target_link_libraries(GKlib m)
+ target_link_libraries(GKlib PRIVATE m)
endif(UNIX)
include_directories("test")
add_subdirectory("test")
install(TARGETS GKlib
- ARCHIVE DESTINATION lib
- LIBRARY DESTINATION lib)
-install(FILES ${GKlib_includes} DESTINATION include)
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+install(FILES ${GKlib_includes} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/GKlib)
diff --git a/GKlib/GKlibSystem.cmake b/GKlib/GKlibSystem.cmake
--- a/GKlib/GKlibSystem.cmake
+++ b/GKlib/GKlibSystem.cmake
@@ -15,35 +15,28 @@
# Add compiler flags.
if(MSVC)
- set(GKlib_COPTS "/Ox")
- set(GKlib_COPTIONS "-DWIN32 -DMSC -D_CRT_SECURE_NO_DEPRECATE -DUSE_GKREGEX")
-elseif(MINGW)
- set(GKlib_COPTS "-DUSE_GKREGEX")
-else()
- set(GKlib_COPTS "-O3")
- set(GKlib_COPTIONS "-DLINUX -D_FILE_OFFSET_BITS=64")
-endif(MSVC)
-if(CYGWIN)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DCYGWIN")
-endif(CYGWIN)
+ add_definitions(-DWIN32 -DMSC -D_CRT_SECURE_NO_DEPRECATE)
+elseif(UNIX)
+ add_definitions(-DLINUX -D_FILE_OFFSET_BITS=64)
+elseif(CYGWIN)
+ add_definitions(-DCYGWIN)
+endif()
+
if(CMAKE_COMPILER_IS_GNUCC)
# GCC opts.
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -std=c99 -fno-strict-aliasing")
- if(NOT MINGW)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -fPIC")
- endif(NOT MINGW)
+ add_compile_options(-std=c99 -fno-strict-aliasing)
# GCC warnings.
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -Wall -pedantic -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas")
+ add_compile_options(-Wall -pedantic -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas)
elseif(${CMAKE_C_COMPILER_ID} MATCHES "Sun")
# Sun insists on -xc99.
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -xc99")
+ add_compile_options(-xc99)
endif(CMAKE_COMPILER_IS_GNUCC)
# Find OpenMP if it is requested.
if(OPENMP)
include(FindOpenMP)
if(OPENMP_FOUND)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -D__OPENMP__ ${OpenMP_C_FLAGS}")
+ add_definitions(-D__OPENMP__)
else()
message(WARNING "OpenMP was requested but support was not found")
endif(OPENMP_FOUND)
@@ -52,64 +45,64 @@
# Add various definitions.
if(GDB)
- set(GKlib_COPTS "${GKlib_COPTS} -g")
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -Werror")
+ add_compile_options(-g)
+ add_compile_options(-Werror)
endif(GDB)
if(DEBUG)
- set(GKlib_COPTS "-g")
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DDEBUG")
+ add_compile_options(-g)
+ add_definitions(-DDEBUG)
endif(DEBUG)
if(GPROF)
- set(GKlib_COPTS "-pg")
+ add_compile_options(-pg)
endif(GPROF)
if(NOT ASSERT)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DNDEBUG")
+ add_definitions(-DNDEBUG)
endif(NOT ASSERT)
if(NOT ASSERT2)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DNDEBUG2")
+ add_definitions(-DNDEBUG2)
endif(NOT ASSERT2)
# Add various options
if(PCRE)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -D__WITHPCRE__")
+ add_definitions(-D__WITHPCRE__)
endif(PCRE)
if(GKREGEX)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DUSE_GKREGEX")
+ add_definitions(-DUSE_GKREGEX)
endif(GKREGEX)
if(GKRAND)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DUSE_GKRAND")
+ add_definitions(-DUSE_GKRAND)
endif(GKRAND)
# Check for features.
check_include_file(execinfo.h HAVE_EXECINFO_H)
if(HAVE_EXECINFO_H)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DHAVE_EXECINFO_H")
+ add_definitions(-DHAVE_EXECINFO_H)
endif(HAVE_EXECINFO_H)
check_function_exists(getline HAVE_GETLINE)
if(HAVE_GETLINE)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -DHAVE_GETLINE")
+ add_definitions(-DHAVE_GETLINE)
endif(HAVE_GETLINE)
# Custom check for TLS.
if(MSVC)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -D__thread=__declspec(thread)")
+ add_definitions(-D__thread=__declspec\(thread\))
else()
# This if checks if that value is cached or not.
if("${HAVE_THREADLOCALSTORAGE}" MATCHES "^${HAVE_THREADLOCALSTORAGE}$")
try_compile(HAVE_THREADLOCALSTORAGE
${CMAKE_BINARY_DIR}
- ${GKLIB_PATH}/conf/check_thread_storage.c)
+ ${CMAKE_CURRENT_LIST_DIR}/conf/check_thread_storage.c)
if(HAVE_THREADLOCALSTORAGE)
message(STATUS "checking for thread-local storage - found")
else()
@@ -117,13 +110,10 @@
endif()
endif()
if(NOT HAVE_THREADLOCALSTORAGE)
- set(GKlib_COPTIONS "${GKlib_COPTIONS} -D__thread=")
+ add_definitions(-D__thread=)
endif()
endif()
-# Finally set the official C flags.
-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GKlib_COPTIONS} ${GKlib_COPTS}")
-
# Find GKlib sources.
-file(GLOB GKlib_sources ${GKLIB_PATH}/*.c)
-file(GLOB GKlib_includes ${GKLIB_PATH}/*.h)
+file(GLOB GKlib_sources ${CMAKE_CURRENT_LIST_DIR}/*.c)
+file(GLOB GKlib_includes ${CMAKE_CURRENT_LIST_DIR}/*.h)
diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -6,7 +6,6 @@
gprof = not-set
openmp = not-set
prefix = not-set
-gklib_path = not-set
shared = not-set
cc = not-set
@@ -20,10 +19,6 @@
# Process configuration options.
CONFIG_FLAGS = -DCMAKE_VERBOSE_MAKEFILE=1
-ifeq ($(gklib_path), not-set)
- gklib_path = GKlib
-endif
-CONFIG_FLAGS += -DGKLIB_PATH=$(abspath $(gklib_path))
ifneq ($(gdb), not-set)
CONFIG_FLAGS += -DGDB=$(gdb)
endif
@@ -46,7 +41,7 @@
CONFIG_FLAGS += -DCMAKE_INSTALL_PREFIX=$(prefix)
endif
ifneq ($(shared), not-set)
- CONFIG_FLAGS += -DSHARED=1
+ CONFIG_FLAGS += -DBUILD_SHARED_LIBS=1
endif
ifneq ($(cc), not-set)
CONFIG_FLAGS += -DCMAKE_C_COMPILER=$(cc)
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -1,3 +1 @@
-if(METIS_INSTALL)
- install(FILES metis.h DESTINATION include)
-endif()
+install(FILES metis.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/metis)
diff --git a/libmetis/CMakeLists.txt b/libmetis/CMakeLists.txt
--- a/libmetis/CMakeLists.txt
+++ b/libmetis/CMakeLists.txt
@@ -3,14 +3,20 @@
# Find sources.
file(GLOB metis_sources *.c)
# Build libmetis.
-add_library(metis ${METIS_LIBRARY_TYPE} ${GKlib_sources} ${metis_sources})
+add_library(metis ${GKlib_sources} ${metis_sources})
+if(OPENMP AND OPENMP_FOUND)
+ set_property(TARGET metis APPEND PROPERTY COMPILE_FLAGS ${OpenMP_C_FLAGS})
+ set_property(TARGET metis APPEND PROPERTY LINK_FLAGS ${OpenMP_C_FLAGS})
+endif()
if(UNIX)
- target_link_libraries(metis m)
+ target_link_libraries(metis PRIVATE m)
endif()
-if(METIS_INSTALL)
- install(TARGETS metis
- LIBRARY DESTINATION lib
- RUNTIME DESTINATION lib
- ARCHIVE DESTINATION lib)
-endif()
+install(TARGETS metis
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+configure_file(metis.pc.in metis.pc @ONLY)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/metis.pc
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
diff --git a/libmetis/metis.pc.in b/libmetis/metis.pc.in
new file mode 100644
--- /dev/null
+++ b/libmetis/metis.pc.in
@@ -0,0 +1,12 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
+includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
+
+Name: @PROJECT_NAME@
+Description: Software for partitioning unstructured graphs and meshes
+Version: @PROJECT_VERSION@
+URL: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview
+Libs: -L${libdir} -lmetis
+Libs.private: -lm
+Cflags: -I${includedir}/metis
diff --git a/programs/CMakeLists.txt b/programs/CMakeLists.txt
--- a/programs/CMakeLists.txt
+++ b/programs/CMakeLists.txt
@@ -1,6 +1,5 @@
# These programs use internal metis data structures.
include_directories(../libmetis)
-link_directories(/home/karypis/local/lib)
# Build program.
add_executable(gpmetis gpmetis.c cmdline_gpmetis.c io.c stat.c)
add_executable(ndmetis ndmetis.c cmdline_ndmetis.c io.c smbfactor.c)
@@ -13,10 +12,8 @@
# target_link_libraries(${prog} metis profiler)
endforeach(prog)
-if(METIS_INSTALL)
- install(TARGETS gpmetis ndmetis mpmetis m2gmetis graphchk cmpfillin
- RUNTIME DESTINATION bin)
-endif()
+install(TARGETS gpmetis ndmetis mpmetis m2gmetis graphchk cmpfillin
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
# Try to find subversion revision.
set(SVNREV "")