Skip to content
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

Blasfeo as reusable CMake package #17

Open
wants to merge 16 commits into
base: master
Choose a base branch
from
Open

Blasfeo as reusable CMake package #17

wants to merge 16 commits into from

Conversation

roversch
Copy link
Contributor

@roversch roversch commented Jan 7, 2018

I've been reading up on CMake packages, and as an exercise I rewrote the blasfeo CMake, based on the most current Makefile. You can use it as follows:

cmake_minimum_required(VERSION 3.0)
project(test_blasfeo)

list(APPEND CMAKE_PREFIX_PATH "path/to/blasfeo/installation")
find_package(blasfeo)

add_executable(example calculation.c)
target_link_libraries(example blasfeo)

For ease of use, I also added the possibility for it to work with the CMake GUI and ccmake, with drop-down menus for the different choices of target, BLAS implementation etc.

UPDATE:

  • Minimize GCC-specific flags (down to 2, -m64 for MKL and -std=c99 for BLIS)
  • Add all sources in one big file, as it was before
  • Adding compile_definitions instead of compiler flags leads to robuster builds

@roversch roversch requested a review from giaf February 12, 2018 23:19
@roversch
Copy link
Contributor Author

roversch commented Feb 12, 2018

@giaf I updated the PR (see above), please review and merge, or add comments.

@roversch
Copy link
Contributor Author

roversch commented May 2, 2018

@giaf since we're doing pull requests now, any comments on this one?

By the way, I wanted to fix the conflicts, but I can't, since you revoked my access since starting this PR. If you want, we can go over them together.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants