mirror of
https://github.com/microsoft/vcpkg.git
synced 2026-01-18 01:11:23 +01:00
[gklib,metis,parmetis] Update, align, cleanup (#46692)
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
diff --git a/GKlibSystem.cmake b/GKlibSystem.cmake
|
||||
index 31a1cf1..848fd05 100644
|
||||
--- a/GKlibSystem.cmake
|
||||
+++ b/GKlibSystem.cmake
|
||||
@@ -113,7 +113,9 @@ endif(GKRAND)
|
||||
|
||||
|
||||
# Check for features.
|
||||
+if(NOT ANDROID OR ANDROID_NATIVE_API_LEVEL GREATER 32)
|
||||
check_include_file(execinfo.h HAVE_EXECINFO_H)
|
||||
+endif()
|
||||
if(HAVE_EXECINFO_H)
|
||||
set(GKlib_COPTIONS "${GKlib_COPTIONS} -DHAVE_EXECINFO_H")
|
||||
endif(HAVE_EXECINFO_H)
|
||||
@@ -1,34 +1,24 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 9cd1b4b..3912b26 100644
|
||||
index 6a9a694..fd3705e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required(VERSION 2.8)
|
||||
+cmake_minimum_required(VERSION 3.22)
|
||||
project(GKlib C)
|
||||
@@ -163,11 +163,6 @@ target_compile_definitions(${PROJECT_NAME}
|
||||
target_compile_options(${PROJECT_NAME}
|
||||
PUBLIC $<$<AND:$<BOOL:${GPROF}>,$<BOOL:${HAVE_GPROF_SUPPORT}>>:-pg>)
|
||||
|
||||
option(BUILD_SHARED_LIBS "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)" OFF)
|
||||
@@ -22,10 +22,11 @@ if(UNIX)
|
||||
target_link_libraries(GKlib m)
|
||||
endif(UNIX)
|
||||
-target_compile_options(${PROJECT_NAME}
|
||||
- PUBLIC $<$<AND:$<OR:$<BOOL:${DEBUG}>,$<BOOL:${GDB}>>,$<BOOL:${HAVE_GDB_SUPPORT}>>:-g>)
|
||||
-
|
||||
-target_compile_options(${PROJECT_NAME}
|
||||
- PUBLIC $<$<NOT:$<OR:$<BOOL:${DEBUG}>,$<BOOL:${GDB}>>>:-O3>)
|
||||
|
||||
-include_directories("test")
|
||||
-add_subdirectory("test")
|
||||
|
||||
install(TARGETS GKlib
|
||||
- ARCHIVE DESTINATION lib/${LINSTALL_PATH}
|
||||
- LIBRARY DESTINATION lib/${LINSTALL_PATH})
|
||||
+ EXPORT GKlibTargets
|
||||
+ INCLUDES DESTINATION "include/GKlib"
|
||||
+)
|
||||
+install(EXPORT GKlibTargets FILE "GKlibConfig.cmake" DESTINATION "share/gklib")
|
||||
+install(FILES "win32/adapt.h" DESTINATION "include/${HINSTALL_PATH}/win32")
|
||||
install(FILES ${GKlib_includes} DESTINATION include/${HINSTALL_PATH})
|
||||
diff --git a/GKlibSystem.cmake b/GKlibSystem.cmake
|
||||
index 31a1cf1..172a386 100644
|
||||
--- a/GKlibSystem.cmake
|
||||
+++ b/GKlibSystem.cmake
|
||||
@@ -18,7 +18,6 @@ option(NO_X86 "enable NO_X86 support" OFF)
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
PUBLIC $<$<BOOL:${OpenMP_C_FOUND}>:OpenMP::OpenMP_C>)
|
||||
diff --git a/cmake/GKlibSystem.cmake b/cmake/GKlibSystem.cmake
|
||||
index 249d424..94d9fd6 100644
|
||||
--- a/cmake/GKlibSystem.cmake
|
||||
+++ b/cmake/GKlibSystem.cmake
|
||||
@@ -2,7 +2,6 @@
|
||||
|
||||
# Add compiler flags.
|
||||
if(MSVC)
|
||||
@@ -36,36 +26,27 @@ index 31a1cf1..172a386 100644
|
||||
set(GKlib_COPTIONS "-DWIN32 -DMSC -D_CRT_SECURE_NO_DEPRECATE -DUSE_GKREGEX")
|
||||
elseif(MINGW)
|
||||
set(GKlib_COPTS "-DUSE_GKREGEX")
|
||||
@@ -33,6 +32,8 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
||||
set(GKlib_COPTIONS "${GKlib_COPTIONS} -std=c99 -fno-strict-aliasing")
|
||||
if(VALGRIND)
|
||||
set(GKlib_COPTIONS "${GK_COPTIONS} -march=x86-64 -mtune=generic")
|
||||
+elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
# -march=native is not a valid flag on PPC:
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "power|ppc|powerpc|ppc64|powerpc64" OR (APPLE AND CMAKE_OSX_ARCHITECTURES MATCHES "ppc|ppc64"))
|
||||
@@ -46,6 +47,7 @@ endif(VALGRIND)
|
||||
endif(NOT MINGW)
|
||||
@@ -20,6 +19,8 @@ if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
|
||||
|
||||
if(VALGRIND)
|
||||
set(GKlib_COPTIONS "${GK_COPTIONS} -march=x86-64 -mtune=generic")
|
||||
+ elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
set(GKlib_COPTIONS "${GKlib_COPTIONS} -march=native")
|
||||
endif(VALGRIND)
|
||||
@@ -30,6 +31,7 @@ if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
|
||||
|
||||
# GCC warnings.
|
||||
set(GKlib_COPTIONS "${GKlib_COPTIONS} -Werror -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
+ string(REPLACE " -Werror " " " GKlib_COPTIONS "${GKlib_COPTIONS}")
|
||||
elseif(${CMAKE_C_COMPILER_ID} MATCHES "Sun")
|
||||
# Sun insists on -xc99.
|
||||
set(GKlib_COPTIONS "${GKlib_COPTIONS} -xc99")
|
||||
@@ -75,6 +77,8 @@ endif(NO_X86)
|
||||
if(GDB)
|
||||
set(GKlib_COPTS "${GKlib_COPTS} -g")
|
||||
set(GKlib_COPTIONS "${GKlib_COPTIONS} -Werror")
|
||||
+elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
set(GKlib_COPTS "-O3")
|
||||
endif(GDB)
|
||||
diff --git a/gk_ms_inttypes.h b/gk_ms_inttypes.h
|
||||
endif()
|
||||
|
||||
if(${CMAKE_C_COMPILER_ID} MATCHES "Sun")
|
||||
diff --git a/include/gk_ms_inttypes.h b/include/gk_ms_inttypes.h
|
||||
index b89fc10..7247c38 100644
|
||||
--- a/gk_ms_inttypes.h
|
||||
+++ b/gk_ms_inttypes.h
|
||||
--- a/include/gk_ms_inttypes.h
|
||||
+++ b/include/gk_ms_inttypes.h
|
||||
@@ -35,6 +35,8 @@
|
||||
|
||||
#ifndef _MSC_INTTYPES_H_ // [
|
||||
@@ -75,10 +56,10 @@ index b89fc10..7247c38 100644
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
diff --git a/gk_ms_stdint.h b/gk_ms_stdint.h
|
||||
diff --git a/include/gk_ms_stdint.h b/include/gk_ms_stdint.h
|
||||
index 7e200dc..1c51958 100644
|
||||
--- a/gk_ms_stdint.h
|
||||
+++ b/gk_ms_stdint.h
|
||||
--- a/include/gk_ms_stdint.h
|
||||
+++ b/include/gk_ms_stdint.h
|
||||
@@ -35,6 +35,8 @@
|
||||
|
||||
#ifndef _MSC_STDINT_H_ // [
|
||||
@@ -88,3 +69,16 @@ index 7e200dc..1c51958 100644
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
diff --git a/src/win32/adapt.c b/src/win32/adapt.c
|
||||
index 546857c..d56f767 100644
|
||||
--- a/src/win32/adapt.c
|
||||
+++ b/src/win32/adapt.c
|
||||
@@ -3,7 +3,7 @@
|
||||
\brief Implementation of Win32 adaptation of libc functions
|
||||
*/
|
||||
|
||||
-#include "adapt.h"
|
||||
+#include "win32/adapt.h"
|
||||
|
||||
pid_t getpid(void)
|
||||
{
|
||||
|
||||
@@ -5,21 +5,24 @@ endif()
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO KarypisLab/GKlib
|
||||
REF 8bd6bad750b2b0d90800c632cf18e8ee93ad72d7
|
||||
SHA512 128cd9a48047b18b8013288162556f0b0f1d81845f5445f7cc62590ab28c06ee0a6c602cc999ce268ab27237eca3e8295df6432d377e45071946b98558872997
|
||||
REF 6e7951358fd896e2abed7887196b6871aac9f2f8
|
||||
SHA512 54ba87f2c47e025ada0fe6fe608d9d144df5cd13e97e71892dbba4d50cd96409add309937a540cdf8bd2632cbfbc0e22e080a32d114ba6037008c8676aa8d88d
|
||||
PATCHES
|
||||
android.patch
|
||||
build-fixes.patch
|
||||
)
|
||||
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" SHARED)
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS
|
||||
-DHINSTALL_PATH=GKlib
|
||||
-DCMAKE_INSTALL_INCLUDEDIR=include/GKlib
|
||||
-DGKLIB_BUILD_APPS=OFF
|
||||
-DSHARED=${SHARED}
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
vcpkg_cmake_config_fixup()
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/GKlib")
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "gklib",
|
||||
"version-date": "2023-03-27",
|
||||
"version-date": "2025-07-06",
|
||||
"description": "General helper libraries for KarypisLab.",
|
||||
"homepage": "https://github.com/KarypisLab/GKlib/",
|
||||
"license": "Apache-2.0",
|
||||
|
||||
@@ -1,44 +1,42 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index a15d19a..7210a61 100644
|
||||
index ef34603..0168a4b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,9 +1,9 @@
|
||||
-cmake_minimum_required(VERSION 2.8)
|
||||
+cmake_minimum_required(VERSION 3.22)
|
||||
@@ -1,9 +1,12 @@
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
project(METIS C)
|
||||
|
||||
set(SHARED FALSE CACHE BOOL "build a shared library")
|
||||
-set(SHARED FALSE CACHE BOOL "build a shared library")
|
||||
+set(SHARED "${BUILD_SHARED_LIBS}" CACHE BOOL "build a shared library")
|
||||
+if(WIN32 AND SHARED)
|
||||
+ add_compile_definitions(-D_WINDLL)
|
||||
+endif()
|
||||
|
||||
-if(MSVC)
|
||||
+if(0)
|
||||
set(METIS_INSTALL FALSE)
|
||||
else()
|
||||
set(METIS_INSTALL TRUE)
|
||||
@@ -34,19 +34,8 @@ include(./conf/gkbuild.cmake)
|
||||
#
|
||||
#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${METIS_COPTIONS}")
|
||||
|
||||
-
|
||||
-# Add include directories.
|
||||
-# i.e., the -I equivalent
|
||||
-include_directories(build/xinclude)
|
||||
@@ -38,15 +41,12 @@ include(./conf/gkbuild.cmake)
|
||||
# Add include directories.
|
||||
# i.e., the -I equivalent
|
||||
include_directories(build/xinclude)
|
||||
-include_directories(${GKLIB_PATH}/include)
|
||||
-include_directories(${CMAKE_INSTALL_PREFIX}/include)
|
||||
-
|
||||
-# List of paths that the compiler will search for library files.
|
||||
-# i.e., the -L equivalent
|
||||
|
||||
# List of paths that the compiler will search for library files.
|
||||
# i.e., the -L equivalent
|
||||
-link_directories(${GKLIB_PATH}/lib)
|
||||
-link_directories(${CMAKE_INSTALL_PREFIX}/lib)
|
||||
-
|
||||
|
||||
# Recursively look for CMakeLists.txt in subdirs.
|
||||
-add_subdirectory("build/xinclude")
|
||||
+add_subdirectory("include")
|
||||
add_subdirectory("build/xinclude")
|
||||
add_subdirectory("libmetis")
|
||||
-add_subdirectory("programs")
|
||||
+
|
||||
+include(install_config.cmake)
|
||||
diff --git a/conf/gkbuild.cmake b/conf/gkbuild.cmake
|
||||
index 96435e5..ff43f05 100644
|
||||
index 591ece4..3719093 100644
|
||||
--- a/conf/gkbuild.cmake
|
||||
+++ b/conf/gkbuild.cmake
|
||||
@@ -16,7 +16,6 @@ option(GKRAND "enable GKRAND support" OFF)
|
||||
@@ -49,26 +47,34 @@ index 96435e5..ff43f05 100644
|
||||
set(GK_COPTIONS "-DWIN32 -DMSC -D_CRT_SECURE_NO_DEPRECATE -DUSE_GKREGEX")
|
||||
elseif(MINGW)
|
||||
set(GK_COPTS "-DUSE_GKREGEX")
|
||||
@@ -38,7 +37,7 @@ endif(VALGRIND)
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -fPIC")
|
||||
@@ -31,6 +30,8 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -std=c99 -fno-strict-aliasing")
|
||||
if(VALGRIND)
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -march=x86-64 -mtune=generic")
|
||||
+elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
# -march=native is not a valid flag on PPC:
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "power|ppc|powerpc|ppc64|powerpc64" OR (APPLE AND CMAKE_OSX_ARCHITECTURES MATCHES "ppc|ppc64"))
|
||||
@@ -44,6 +45,7 @@ endif(VALGRIND)
|
||||
endif(NOT MINGW)
|
||||
# GCC warnings.
|
||||
- set(GK_COPTIONS "${GK_COPTIONS} -Werror -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
+ set(GK_COPTIONS "${GK_COPTIONS} -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -Werror -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
+ string(REPLACE " -Werror " " " GK_COPTIONS "${GK_COPTIONS}")
|
||||
elseif(${CMAKE_C_COMPILER_ID} MATCHES "Sun")
|
||||
# Sun insists on -xc99.
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -xc99")
|
||||
@@ -69,7 +68,7 @@ endif(OPENMP)
|
||||
@@ -74,6 +76,8 @@ endif(OPENMP)
|
||||
if(GDB)
|
||||
set(GK_COPTS "${GK_COPTS} -g")
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -Werror")
|
||||
-else()
|
||||
+elseif(0)
|
||||
+elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
set(GK_COPTS "-O3")
|
||||
endif(GDB)
|
||||
|
||||
diff --git a/include/metis.h b/include/metis.h
|
||||
index 7fef0e7..f8e5dcf 100644
|
||||
index ab475fe..8033858 100644
|
||||
--- a/include/metis.h
|
||||
+++ b/include/metis.h
|
||||
@@ -30,7 +30,7 @@
|
||||
@@ -81,8 +87,8 @@ index 7fef0e7..f8e5dcf 100644
|
||||
|
||||
/*--------------------------------------------------------------------------
|
||||
@@ -40,7 +40,7 @@
|
||||
32 : single precission floating point (float)
|
||||
64 : double precission floating point (double)
|
||||
32 : single precision floating point (float)
|
||||
64 : double precision floating point (double)
|
||||
--------------------------------------------------------------------------*/
|
||||
-//#define REALTYPEWIDTH 32
|
||||
+#define REALTYPEWIDTH 32
|
||||
@@ -105,25 +111,26 @@ index 7fef0e7..f8e5dcf 100644
|
||||
#include <inttypes.h>
|
||||
#endif
|
||||
diff --git a/libmetis/CMakeLists.txt b/libmetis/CMakeLists.txt
|
||||
index fc6cec6..8aeb89a 100644
|
||||
index fc6cec6..a56f6ca 100644
|
||||
--- a/libmetis/CMakeLists.txt
|
||||
+++ b/libmetis/CMakeLists.txt
|
||||
@@ -6,10 +6,9 @@ file(GLOB metis_sources *.c)
|
||||
@@ -6,10 +6,15 @@ file(GLOB metis_sources *.c)
|
||||
|
||||
# Build libmetis.
|
||||
add_library(metis ${METIS_LIBRARY_TYPE} ${metis_sources})
|
||||
+target_include_directories(metis INTERFACE $<INSTALL_INTERFACE:include>)
|
||||
+
|
||||
+find_package(GKlib CONFIG REQUIRED)
|
||||
+target_link_libraries(metis PUBLIC GKlib)
|
||||
+target_include_directories(metis PRIVATE "../include")
|
||||
+target_link_libraries(metis PRIVATE GKlib::GKlib)
|
||||
|
||||
-if(METIS_INSTALL)
|
||||
- install(TARGETS metis
|
||||
- LIBRARY DESTINATION lib
|
||||
if(METIS_INSTALL)
|
||||
install(TARGETS metis
|
||||
+ EXPORT metisTargets
|
||||
LIBRARY DESTINATION lib
|
||||
- RUNTIME DESTINATION lib
|
||||
- ARCHIVE DESTINATION lib)
|
||||
-endif()
|
||||
+install(TARGETS metis EXPORT metisTargets
|
||||
+ INCLUDES DESTINATION include)
|
||||
+ RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib)
|
||||
endif()
|
||||
diff --git a/libmetis/metislib.h b/libmetis/metislib.h
|
||||
index dc224f4..1efccda 100644
|
||||
--- a/libmetis/metislib.h
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO KarypisLab/METIS
|
||||
REF 94c03a6e2d1860128c2d0675cbbb86ad4f261256
|
||||
SHA512 9f24329fa0f0856d0b5d10a489574d857bc4538d9639055fc895363cf70aa37342eaf7bc08819500ff6d5b98a4aa99f4241880622b540d4c484ca19e693d3480
|
||||
REF a6e6a2cfa92f93a3ee2971ebc9ddfc3b0b581ab2
|
||||
SHA512 c41168788c287ed9baea3c43c1ea8ef7d0bbdaa340a03cbbb5d0ba2d928d8a6dd83e2b77e7d3fabc58ac6d2b59a4be0492940e31460fe5e1807849cb98e80d2e
|
||||
PATCHES
|
||||
build-fixes.patch
|
||||
)
|
||||
|
||||
)
|
||||
file(COPY "${SOURCE_PATH}/include/" DESTINATION "${SOURCE_PATH}/build/xinclude")
|
||||
file(COPY "${CMAKE_CURRENT_LIST_DIR}/install_config.cmake" DESTINATION "${SOURCE_PATH}")
|
||||
|
||||
vcpkg_cmake_configure(SOURCE_PATH "${SOURCE_PATH}")
|
||||
@@ -15,10 +13,11 @@ vcpkg_cmake_install()
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_cmake_config_fixup()
|
||||
|
||||
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/metis.h" "#ifdef _WINDLL" "#if 1")
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/metis.h" "__declspec(dllexport)" "__declspec(dllimport)")
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/usage" [=[
|
||||
metis provides CMake targets:
|
||||
find_package(metis CONFIG REQUIRED)
|
||||
target_link_libraries(main PRIVATE metis)
|
||||
]=])
|
||||
|
||||
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"name": "metis",
|
||||
"version-date": "2022-07-27",
|
||||
"port-version": 1,
|
||||
"version-date": "2025-07-04",
|
||||
"description": "Serial Graph Partitioning and Fill-reducing Matrix Ordering",
|
||||
"homepage": "https://github.com/KarypisLab/METIS",
|
||||
"license": "Apache-2.0",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 146bc5f..8d6ae23 100644
|
||||
index 146bc5f..f5c5d48 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
@@ -8,22 +8,22 @@ index 146bc5f..8d6ae23 100644
|
||||
project(ParMETIS C)
|
||||
|
||||
|
||||
@@ -24,20 +24,16 @@ include(./conf/gkbuild.cmake)
|
||||
@@ -24,20 +24,20 @@ include(./conf/gkbuild.cmake)
|
||||
# i.e., the -I equivalent
|
||||
include_directories(include)
|
||||
include_directories(${MPI_INCLUDE_PATH})
|
||||
-include_directories(${GKLIB_PATH}/include)
|
||||
-include_directories(${METIS_PATH}/include)
|
||||
-include_directories(${CMAKE_INSTALL_PREFIX}/include)
|
||||
-
|
||||
-# List of paths that the compiler will search for library files.
|
||||
-# i.e., the -L equivalent
|
||||
|
||||
# List of paths that the compiler will search for library files.
|
||||
# i.e., the -L equivalent
|
||||
-link_directories(${GKLIB_PATH}/lib)
|
||||
-link_directories(${METIS_PATH}/lib)
|
||||
-link_directories(${CMAKE_INSTALL_PREFIX}/lib)
|
||||
-
|
||||
# List of directories that cmake will look for CMakeLists.txt
|
||||
-add_subdirectory(include)
|
||||
add_subdirectory(include)
|
||||
add_subdirectory(libparmetis)
|
||||
-add_subdirectory(programs)
|
||||
|
||||
@@ -38,7 +38,7 @@ index 146bc5f..8d6ae23 100644
|
||||
+include("${CMAKE_CURRENT_LIST_DIR}/parmetisTargets.cmake")
|
||||
+]=])
|
||||
diff --git a/conf/gkbuild.cmake b/conf/gkbuild.cmake
|
||||
index afcafdd..3040b09 100644
|
||||
index ec91224..c4161fa 100644
|
||||
--- a/conf/gkbuild.cmake
|
||||
+++ b/conf/gkbuild.cmake
|
||||
@@ -15,7 +15,6 @@ option(GKRAND "enable GKRAND support" OFF)
|
||||
@@ -49,50 +49,56 @@ index afcafdd..3040b09 100644
|
||||
set(GK_COPTIONS "-DWIN32 -DMSC -D_CRT_SECURE_NO_DEPRECATE -DUSE_GKREGEX")
|
||||
elseif(MINGW)
|
||||
set(GK_COPTS "-DUSE_GKREGEX")
|
||||
@@ -33,7 +32,7 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -fPIC")
|
||||
@@ -31,6 +30,8 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
||||
# -march=native is not a valid flag on PPC:
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "power|ppc|powerpc|ppc64|powerpc64" OR (APPLE AND CMAKE_OSX_ARCHITECTURES MATCHES "ppc|ppc64"))
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -mtune=native")
|
||||
+elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -march=native")
|
||||
endif()
|
||||
@@ -39,6 +40,7 @@ endif()
|
||||
endif(NOT MINGW)
|
||||
# GCC warnings.
|
||||
- set(GK_COPTIONS "${GK_COPTIONS} -Werror -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
+ set(GK_COPTIONS "${GK_COPTIONS} -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -Werror -Wall -pedantic -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unknown-pragmas -Wno-unused-label")
|
||||
+ string(REPLACE " -Werror " " " GK_COPTIONS "${GK_COPTIONS}")
|
||||
elseif(${CMAKE_C_COMPILER_ID} MATCHES "Sun")
|
||||
# Sun insists on -xc99.
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -xc99")
|
||||
@@ -64,7 +63,7 @@ endif(OPENMP)
|
||||
@@ -69,6 +71,8 @@ endif(OPENMP)
|
||||
if(GDB)
|
||||
set(GK_COPTS "${GK_COPTS} -g")
|
||||
set(GK_COPTIONS "${GK_COPTIONS} -Werror")
|
||||
-else()
|
||||
+elseif(0)
|
||||
+elseif(1)
|
||||
+ # Use flags from toolchain and triplet
|
||||
else()
|
||||
set(GK_COPTS "-O3")
|
||||
endif(GDB)
|
||||
|
||||
@@ -135,4 +134,3 @@ endif()
|
||||
|
||||
# Finally set the official C flags.
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GK_COPTIONS} ${GK_COPTS}")
|
||||
-
|
||||
diff --git a/libparmetis/CMakeLists.txt b/libparmetis/CMakeLists.txt
|
||||
index e8c3213..dcdf64e 100644
|
||||
index b9d6d84..d8fb19b 100644
|
||||
--- a/libparmetis/CMakeLists.txt
|
||||
+++ b/libparmetis/CMakeLists.txt
|
||||
@@ -4,10 +4,14 @@ include_directories(.)
|
||||
# Find sources.
|
||||
file(GLOB parmetis_sources *.c)
|
||||
@@ -7,11 +7,17 @@ file(GLOB parmetis_sources *.c)
|
||||
# Create libparmetis
|
||||
add_library(parmetis ${ParMETIS_LIBRARY_TYPE} ${parmetis_sources})
|
||||
|
||||
-if(SHARED)
|
||||
- target_link_libraries(parmetis metis GKlib)
|
||||
-endif()
|
||||
-
|
||||
+find_package(GKlib CONFIG REQUIRED)
|
||||
+find_package(metis CONFIG REQUIRED)
|
||||
+find_package(MPI REQUIRED)
|
||||
+
|
||||
# Create libparmetis
|
||||
add_library(parmetis ${ParMETIS_LIBRARY_TYPE} ${parmetis_sources})
|
||||
-
|
||||
-install(TARGETS parmetis
|
||||
- LIBRARY DESTINATION lib
|
||||
- RUNTIME DESTINATION lib
|
||||
- ARCHIVE DESTINATION lib)
|
||||
+target_link_libraries(parmetis PRIVATE GKlib metis ${MPI_C_LIBRARIES})
|
||||
+target_include_directories(parmetis PUBLIC ${MPI_C_INCLUDE_DIRS})
|
||||
+target_link_libraries(parmetis PRIVATE GKlib::GKlib metis ${MPI_C_LIBRARIES})
|
||||
+target_include_directories(parmetis PRIVATE ${MPI_C_INCLUDE_DIRS})
|
||||
+target_include_directories(parmetis PRIVATE "../include")
|
||||
+install(FILES "../include/parmetis.h" DESTINATION "include")
|
||||
+install(TARGETS parmetis EXPORT parmetisTargets INCLUDES DESTINATION include)
|
||||
+
|
||||
install(TARGETS parmetis
|
||||
+ EXPORT parmetisTargets
|
||||
+ INCLUDES DESTINATION include
|
||||
LIBRARY DESTINATION lib
|
||||
- RUNTIME DESTINATION lib
|
||||
+ RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib)
|
||||
|
||||
@@ -3,8 +3,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO KarypisLab/ParMETIS
|
||||
REF 44fadbf58c71a74b39abb110a7691355d2a760ca
|
||||
SHA512 d07e2ccb358948b728be3d282841ad42a8358908a4f1ab3342d4c3016e71a06c1b5966640a06e713f4c773365d7dba4f0c68795d615802f3af07194c0778f362
|
||||
REF 8ee6a372ca703836f593e3c450ca903f04be14df
|
||||
SHA512 a71d212a1c8682eb662ef6bb8bdcb124bc13c353e76ac236b01e544bddb975740c36be54c05305e1114e4daf20fec56642ffa319a6426c87c5538ea2225c156b
|
||||
PATCHES
|
||||
build-fixes.patch
|
||||
)
|
||||
@@ -18,10 +18,7 @@ vcpkg_cmake_configure(
|
||||
vcpkg_cmake_install()
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_cmake_config_fixup()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/usage" [=[
|
||||
parmetis provides CMake targets:
|
||||
find_package(parmetis CONFIG REQUIRED)
|
||||
target_link_libraries(main PRIVATE parmetis)
|
||||
]=])
|
||||
|
||||
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"name": "parmetis",
|
||||
"version-date": "2022-07-27",
|
||||
"version-date": "2023-03-26",
|
||||
"description": "Parallel Graph Partitioning and Fill-reducing Matrix Ordering",
|
||||
"homepage": "https://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview",
|
||||
"homepage": "https://github.com/KarypisLab/ParMETIS",
|
||||
"license": null,
|
||||
"dependencies": [
|
||||
"metis",
|
||||
|
||||
@@ -1612,10 +1612,8 @@ paraview[cuda](osx) = cascade
|
||||
paraview[cuda,mpi,python,vtkm]:x86-windows = cascade
|
||||
paraview[python]:x64-windows-static-md = cascade
|
||||
paraview[python,all-modules]:x64-windows-static = cascade
|
||||
parmetis:arm64-uwp = cascade
|
||||
parmetis:arm64-windows = cascade
|
||||
parmetis:x64-uwp = cascade
|
||||
parmetis:x86-windows = cascade
|
||||
parmetis(uwp) = cascade
|
||||
parquet:arm64-uwp = cascade
|
||||
parquet:arm64-windows = cascade
|
||||
parquet:x64-uwp = cascade
|
||||
|
||||
@@ -3261,7 +3261,7 @@
|
||||
"port-version": 0
|
||||
},
|
||||
"gklib": {
|
||||
"baseline": "2023-03-27",
|
||||
"baseline": "2025-07-06",
|
||||
"port-version": 0
|
||||
},
|
||||
"gl2ps": {
|
||||
@@ -6205,8 +6205,8 @@
|
||||
"port-version": 0
|
||||
},
|
||||
"metis": {
|
||||
"baseline": "2022-07-27",
|
||||
"port-version": 1
|
||||
"baseline": "2025-07-04",
|
||||
"port-version": 0
|
||||
},
|
||||
"metrohash": {
|
||||
"baseline": "1.1.3",
|
||||
@@ -7237,7 +7237,7 @@
|
||||
"port-version": 4
|
||||
},
|
||||
"parmetis": {
|
||||
"baseline": "2022-07-27",
|
||||
"baseline": "2023-03-26",
|
||||
"port-version": 0
|
||||
},
|
||||
"parquet": {
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "c3b9e3dbc3c508699816a7723c720428a478b364",
|
||||
"version-date": "2025-07-06",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "ad20fb84d82834d6de1f5bdf45851eeadd1c01e6",
|
||||
"version-date": "2023-03-27",
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "83d3f4ee2d498f9bc5d8f63b562744442c6065f1",
|
||||
"version-date": "2025-07-04",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "a73f3c906ed3cffa805aa33bdbf067f000a7dfe0",
|
||||
"version-date": "2022-07-27",
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "56c0aacc9bfe4f82704ac4bf3a6857a08ee9f6da",
|
||||
"version-date": "2023-03-26",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "e16a0bdc9bfe506f67b8204e5f725faa6a026c4c",
|
||||
"version-date": "2022-07-27",
|
||||
|
||||
Reference in New Issue
Block a user