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

Add Eigen3 as an optional alternative to Lapack #51

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

Commits on Jan 15, 2019

  1. Add cmake support for the c code.

    Add dummy test checking if linking works properly.
    
    Add FindLAPACKE.cmake and export proxTVconfig.cmake.
    
    FindLAPACKE.cmake is used to handle lapacke installations with no export targets.
    
    Also complete the generation of proxTVconfig.cmake
    
    Add a dummy project to test usage of proxTV from external project.
    
    Add C Interface to Readme
    
    Remove Foo_FOUND in the case FOO is REQUIRED
    
    Update cmake required version to 3.5
    
    This simplifies policy and version set up.
    
    Require a modern lapacke and remove FIND_LAPACKE
    
    This will look for a `lapacke-config.cmake`, that is generated since
    lapacke version 3.6. And allow us to remove the buggy FIND_LAPACKE.
    
    Add test for cmake in travis.
    
    Restore FindLAPACKE.cmake
    
    Because travis still uses ubuntu 14.04, with an old lapacke
    which does not provide config.cmake.
    
    Fix CMake
    
    Added FindLAPACK
    FindLAPACKE CONFIG is not populating LAPACK.
    
    From @jcfr branch: https://github.com/jcfr/proxTV/tree/cmake_support_squashed
    
    Co-authored-by: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
    
    WIP: Avoid deploy in .travis
    
    Also install cmake with pip (3.12)
    Also use find_package(LAPACKE NOCONFIG) for old librart versions
    
    Error:
    ```
    +twine upload --repository-url https://test.pypi.org/legacy/ --username albarji dist/prox_tv-3.3.0-cp27-cp27mu-manylinux1_x86_64.whl
    Enter your password:
    No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
    Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#Build-times-out-because-no-output-was-received
    ```
    phcerdan committed Jan 15, 2019
    Configuration menu
    Copy the full SHA
    b0f34a2 View commit details
    Browse the repository at this point in the history
  2. ENH: Eigen working

    Only two lapack functions are involved
    
    cmake: Add compile definition depending on LAPACK/EIGEN
    
    option: proxTV_USE_LAPACK (for consistency)
    compile definition: PROXTV_USE_LAPACK
    
    All instances of lapack calls have Eigen alternative
    
    Working!
    phcerdan committed Jan 15, 2019
    Configuration menu
    Copy the full SHA
    bdf2a84 View commit details
    Browse the repository at this point in the history
  3. cmake: options are protected with ifs

    BUG: Add source_dir to include_directories
    
    Fix cmake: remove installing config files in src/CMakeLists
    
    Handled in top CMakelists.txt
    phcerdan committed Jan 15, 2019
    Configuration menu
    Copy the full SHA
    e694b37 View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2019

  1. CMake: Add -fPIC

    Triggered when wrapping ITK
    
    ```bash
    /usr/bin/ld: _deps/proxtv_fetch-build/src/libitkproxTV-5.0.a(lapackFunctionsWrap.cpp.o):
    relocation R_X86_64_PC32 against symbol `_ZTVSt9bad_alloc@@GLIBCXX_3.4' can not be used when making a shared object; recompile with -fPIC
    ```
    phcerdan committed Apr 9, 2019
    Configuration menu
    Copy the full SHA
    ea3aeca View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2640519 View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2019

  1. Configuration menu
    Copy the full SHA
    f1094d2 View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2019

  1. COMP: Fix multiple c++ warnings

    Using CXX_CMAKE_FLAGS+="-Wall -Wextra"
    Plus Windows specific warnings
    phcerdan committed Apr 11, 2019
    Configuration menu
    Copy the full SHA
    68dd8ab View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    187f868 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2019

  1. Configuration menu
    Copy the full SHA
    bfe42c8 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1 from dzenanz/master

    COMP: OpenMP_CXX.lib does not exist with Visual Studio
    phcerdan authored Jul 15, 2019
    Configuration menu
    Copy the full SHA
    4f7e237 View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2019

  1. Address Visual Studio int64 to int possible loss of data warning

    _deps\proxtv_fetch-src\src\TVL1opt_tautstring.cpp(336): warning C4244: '=': conversion from '__int64' to 'int', possible loss of data
    thewtex committed Aug 1, 2019
    Configuration menu
    Copy the full SHA
    4be9227 View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2019

  1. Fix Visual Studio divide by zero warning suppression

    Note: LAMBDA_STEPS_TVLP is a a preprocessor definition set to 1.
    thewtex committed Aug 13, 2019
    Configuration menu
    Copy the full SHA
    465dfd4 View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2019

  1. Merge pull request #2 from thewtex/windows-warnings

    Windows warnings
    phcerdan authored Aug 14, 2019
    Configuration menu
    Copy the full SHA
    a503293 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2020

  1. CMake: Allow to use existing Eigen3 target instead of find_package

    This allows building proxTV with Eigen, when Eigen is an internal
    target, instead of only allowing find_package(Eigen)
    
    Closes
    InsightSoftwareConsortium/ITKTotalVariation#21
    phcerdan committed Jan 30, 2020
    Configuration menu
    Copy the full SHA
    4a3df08 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2020

  1. BUG: CMake: Allow user to change install directories

    with variables:
    ```cmake
    proxTV_INSTALL_INCLUDE_DIR
    proxTV_INSTALL_LIB_DIR
    proxTV_INSTALL_BIN_DIR
    proxTV_INSTALL_CMAKE_DIR
    ```
    
    These variables where ignored, and other CACHE variables were
    used.
    
    `proxTV_INSTALL_CMAKE_DIR` was added with a default value.
    phcerdan committed Feb 20, 2020
    Configuration menu
    Copy the full SHA
    0130fca View commit details
    Browse the repository at this point in the history