diff --git a/ports/openmpi/mpi-wrapper.cmake b/ports/openmpi/mpi-wrapper.cmake index 5d6811b9afbb93..feb7fe1bdadc5e 100644 --- a/ports/openmpi/mpi-wrapper.cmake +++ b/ports/openmpi/mpi-wrapper.cmake @@ -11,37 +11,13 @@ if(NOT DEFINED MPI_HOME) unset(z_vcpkg_mpiexec_directories) endif() -# Seed FindMPI from vcpkg's OpenMPI layout. The pkg-config path remains -# available for metadata probing, including cross builds. +# pkg-config in FindMPI.cmake works also in cross builds (when providing +# the pc files without the 'o' prefix, which is handled in port mpi.) +# Skip everything else. set(MPI_ASSUME_NO_BUILTIN_MPI TRUE) set(MPI_SKIP_COMPILER_WRAPPER TRUE) set(MPI_SKIP_GUESSING TRUE) - -if(NOT MPI_C_INCLUDE_PATH) - set(MPI_C_INCLUDE_PATH "${MPI_HOME}/include" CACHE PATH "vcpkg" FORCE) -endif() -if(NOT MPI_CXX_INCLUDE_PATH) - set(MPI_CXX_INCLUDE_PATH "${MPI_HOME}/include" CACHE PATH "vcpkg" FORCE) -endif() -if(NOT MPI_C_LIB_NAMES) - set(MPI_C_LIB_NAMES mpi CACHE STRING "vcpkg" FORCE) -endif() -if(NOT MPI_CXX_LIB_NAMES) - set(MPI_CXX_LIB_NAMES mpi CACHE STRING "vcpkg" FORCE) -endif() -set(MPI_CXX_SKIP_MPICXX ON CACHE BOOL "vcpkg") - -if(NOT DEFINED CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE MATCHES "^[Dd][Ee][Bb][Uu][Gg]$") - set(z_vcpkg_mpi_library_dir "${MPI_HOME}/debug/lib") -else() - set(z_vcpkg_mpi_library_dir "${MPI_HOME}/lib") -endif() -if(NOT MPI_mpi_LIBRARY) - find_library(MPI_mpi_LIBRARY NAMES mpi PATHS "${z_vcpkg_mpi_library_dir}" NO_DEFAULT_PATH) -endif() -unset(z_vcpkg_mpi_library_dir) - -find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config pkgconf PATHS "${VCPKG_INSTALLED_DIR}/@HOST_TRIPLET@/tools/bin" NO_DEFAULT_PATH) +find_program(PKG_CONFIG_EXECUTABLE NAMES pkgconf PATHS "${VCPKG_INSTALLED_DIR}/@HOST_TRIPLET@/tools/pkgconf" REQUIRED) find_package(PkgConfig) set(z_vcpkg_mpiexec_pkg_config_path "$ENV{PKG_CONFIG_PATH}") if(NOT DEFINED CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE MATCHES "^[Dd][Ee][Bb][Uu][Gg]$") @@ -57,3 +33,4 @@ _find_package(${ARGS}) set(ENV{PKG_CONFIG_PATH} "${z_vcpkg_mpiexec_pkg_config_path}") unset(z_vcpkg_mpiexec_pkg_config_path) + diff --git a/ports/openmpi/vcpkg.json b/ports/openmpi/vcpkg.json index ecc206eca6eee4..497c9278dfaca1 100644 --- a/ports/openmpi/vcpkg.json +++ b/ports/openmpi/vcpkg.json @@ -1,7 +1,7 @@ { "name": "openmpi", "version": "4.1.8", - "port-version": 1, + "port-version": 2, "description": "The Open MPI Project is an open source Message Passing Interface implementation that is developed and maintained by a consortium of academic, research, and industry partners. Open MPI is therefore able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to build the best MPI library available. Open MPI offers advantages for system and software vendors, application developers and computer science researchers.", "homepage": "https://www.open-mpi.org/", "supports": "!windows", diff --git a/scripts/test_ports/vcpkg-ci-blender/fix_epoxy.patch b/scripts/test_ports/vcpkg-ci-blender/fix_epoxy.patch index 53dafa3df91f0e..5abf5a535ce90e 100644 --- a/scripts/test_ports/vcpkg-ci-blender/fix_epoxy.patch +++ b/scripts/test_ports/vcpkg-ci-blender/fix_epoxy.patch @@ -1,30 +1,14 @@ diff --git a/build_files/cmake/Modules/FindEpoxy.cmake b/build_files/cmake/Modules/FindEpoxy.cmake --- a/build_files/cmake/Modules/FindEpoxy.cmake +++ b/build_files/cmake/Modules/FindEpoxy.cmake -@@ -9,6 +9,27 @@ +@@ -9,6 +9,11 @@ # This can also be an environment variable. # Epoxy_FOUND, If false, do not try to use epoxy. -+if(APPLE AND DEFINED VCPKG_CURRENT_INSTALLED_DIR) -+ set(PKG_CONFIG_EXECUTABLE "$ENV{PKG_CONFIG}") -+ if(CMAKE_BUILD_TYPE STREQUAL "Debug") -+ set(ENV{PKG_CONFIG_PATH} -+ "${VCPKG_CURRENT_INSTALLED_DIR}/debug/lib/pkgconfig:${VCPKG_CURRENT_INSTALLED_DIR}/lib/pkgconfig:${VCPKG_CURRENT_INSTALLED_DIR}/share/pkgconfig:$ENV{PKG_CONFIG_PATH}") -+ else() -+ set(ENV{PKG_CONFIG_PATH} -+ "${VCPKG_CURRENT_INSTALLED_DIR}/lib/pkgconfig:${VCPKG_CURRENT_INSTALLED_DIR}/share/pkgconfig:$ENV{PKG_CONFIG_PATH}") -+ endif() -+ find_package(PkgConfig QUIET) -+ if(PkgConfig_FOUND) -+ pkg_check_modules(epoxy QUIET IMPORTED_TARGET epoxy) -+ if(epoxy_FOUND) -+ set(Epoxy_LIBRARY PkgConfig::epoxy) -+ set(Epoxy_LIBRARIES PkgConfig::epoxy) -+ set(Epoxy_INCLUDE_DIRS ${epoxy_INCLUDE_DIRS}) -+ list(GET epoxy_INCLUDE_DIRS 0 Epoxy_INCLUDE_DIR) -+ endif() -+ endif() -+endif() ++find_package(PkgConfig REQUIRED) ++pkg_check_modules(epoxy QUIET IMPORTED_TARGET epoxy) ++set(Epoxy_INCLUDE_DIR "${epoxy_INCLUDE_DIRS}" CACHE INTERNAL "vcpkg") ++set(Epoxy_LIBRARY "PkgConfig::epoxy" CACHE INTERNAL "vcpkg") + # If `EPOXY_ROOT_DIR` was defined in the environment, use it. if(DEFINED EPOXY_ROOT_DIR) diff --git a/scripts/test_ports/vcpkg-ci-blender/vcpkg.json b/scripts/test_ports/vcpkg-ci-blender/vcpkg.json index d1f06d73da281a..c811e98bb647bc 100644 --- a/scripts/test_ports/vcpkg-ci-blender/vcpkg.json +++ b/scripts/test_ports/vcpkg-ci-blender/vcpkg.json @@ -3,7 +3,7 @@ "version": "4.5.8", "description": "3D creation suite", "homepage": "https://www.blender.org/", - "license": "GPL-1.0-or-later", + "license": "GPL-2.0-or-later", "supports": "(x64 & (windows | linux)) | osx", "dependencies": [ "bzip2", diff --git a/versions/baseline.json b/versions/baseline.json index 0201def24e7dc5..00ec1af25d1fad 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -7390,7 +7390,7 @@ }, "openmpi": { "baseline": "4.1.8", - "port-version": 1 + "port-version": 2 }, "openmvg": { "baseline": "2.1", diff --git a/versions/o-/openmpi.json b/versions/o-/openmpi.json index d01da7165d5bc2..569846fad6fcea 100644 --- a/versions/o-/openmpi.json +++ b/versions/o-/openmpi.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "26f38572be3d125c021d64d81f6d42f23d180f58", + "version": "4.1.8", + "port-version": 2 + }, { "git-tree": "b331e84d5d13199f2179a51e9688017881ae096e", "version": "4.1.8",