-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[lapack] add metaport lapack to switch lapack impl with an overlay #12464
Merged
Merged
Changes from 4 commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
8babd66
[lapack-select] add port lapack-select to select the lapack implement…
Neumann-A 5827751
move (!osx) check into lapack select
Neumann-A 0b3c8f8
correct the platform selection logic so that clapack is not forced.
Neumann-A a4c81b8
fix the oscx regression. Actually need to specify external dependency…
Neumann-A d814145
Merge remote-tracking branch 'upstream/master' into add_lapack_select
Neumann-A b56d6ed
rename port to lapack and use build-depends
Neumann-A File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
Source: armadillo | ||
Version: 2019-04-16-8 | ||
Version: 2019-04-16 | ||
Port-Version: 9 | ||
Description: Armadillo is a high quality linear algebra library (matrix maths) for the C++ language, aiming towards a good balance between speed and ease of use | ||
Build-Depends: openblas (!osx), clapack (!osx) | ||
Build-Depends: openblas (!osx), lapack-select[core] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
Source: blaze | ||
Version: 3.7 | ||
Build-Depends: clapack (!osx), boost-exception | ||
Port-Version: 1 | ||
Build-Depends: lapack-select[core], boost-exception | ||
Homepage: https://bitbucket.org/blaze-lib/blaze | ||
Description: Blaze is an open-source, high-performance C++ math library for dense and sparse arithmetic. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
Source: clapack | ||
Version: 3.2.1-13 | ||
Version: 3.2.1 | ||
Port-Version: 13 | ||
Homepage: https://www.netlib.org/clapack | ||
Description: CLAPACK (f2c'ed version of LAPACK) | ||
Build-Depends: openblas (!osx) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
Source: ensmallen | ||
Version: 2.11.2 | ||
Port-Version: 1 | ||
Homepage: https://github.com/mlpack/ensmallen | ||
Description: A header-only C++ library for mathematical optimization. | ||
Build-Depends: openblas (!osx), clapack (!osx), armadillo | ||
Build-Depends: openblas (!osx), lapack-select[core], armadillo | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
Source: g2o | ||
Version: 2020-02-07 | ||
Build-Depends: suitesparse, eigen3, clapack (!osx), ceres | ||
Port-Version: 1 | ||
Build-Depends: suitesparse, eigen3, lapack-select[core], ceres | ||
Description: g2o: A General Framework for Graph Optimization | ||
Homepage: https://openslam.org/g2o.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
cmake_minimum_required(VERSION 3.17) | ||
|
||
project(Find_LAPACK_external) | ||
find_package(LAPACK REQUIRED) | ||
#TODO make sure that the found LAPACK is outside VCPKG |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
Source: lapack-select | ||
Version: 1 | ||
Description: Port to select the LAPACK — Linear Algebra PACKage implementation | ||
Default-Features: platform-select | ||
|
||
Feature: clapack | ||
Description: Use clapack | ||
Build-Depends: clapack | ||
|
||
Feature: lapack-reference | ||
Description: Use the netlib lapack reference implementation (TODO) | ||
|
||
Feature: external | ||
Description: Use a LAPACK library outside of VCPKG. This port makes sure it can be found via CMake | ||
|
||
Feature: platform-select | ||
Description: Used to select the default implementation by platform. Workaround since Default-Features does not allow conditionals | ||
Build-Depends: lapack-select[core,clapack] (!osx), lapack-select[core,external] (osx) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
SET(VCPKG_POLICY_EMPTY_PACKAGE enabled) | ||
|
||
list(REMOVE_ITEM FEATURES platform-select) | ||
|
||
list(LENGTH FEATURES NUMBER_ELEMS) | ||
if(NUMBER_ELEMS GREATER 2) | ||
message(FATAL_ERROR "Cannot select more than one LAPACK implementation!") | ||
# Ports cannot depend on more than one LAPACK implementation. Always use Build-Depends: lapack-select[core] | ||
endif() | ||
if(NUMBER_ELEMS LESS 2) | ||
message(FATAL_ERROR "Need to select at least one LAPACK implementation! Only using feature [core] is not supported") | ||
# Ports should only depend on lapack-select[core] so that they don't implicitly depend on the selected default feature | ||
endif() | ||
|
||
# In the future this port might also be used to install a vcpkg-cmake-wrapper or | ||
# a FindLAPACK module to make sure all dependent ports use the same LAPACK implementation | ||
|
||
IF("external" IN_LIST FEATURES) | ||
vcpkg_configure_cmake(SOURCE_PATH ${CURRENT_PORT_DIR}) | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,9 @@ | ||
Source: mlpack | ||
Version: 3.2.2-3 | ||
Version: 3.2.2 | ||
Port-Version: 4 | ||
Homepage: https://github.com/mlpack/mlpack | ||
Description: mlpack is a fast, flexible machine learning library, written in C++, that aims to provide fast, extensible implementations of cutting-edge machine learning algorithms. | ||
Build-Depends: openblas (!osx), clapack (!osx), boost, armadillo, ensmallen, stb | ||
Build-Depends: openblas (!osx), lapack-select[core], boost, armadillo, ensmallen, stb | ||
|
||
Feature: tools | ||
Description: Build command-line executables. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't seem to depend on openblas or lapack directly.