conda-forge / openblas-feedstock

A conda-smithy repository for openblas.
BSD 3-Clause "New" or "Revised" License
9 stars 38 forks source link

Split static #70

Closed ocefpaf closed 5 years ago

ocefpaf commented 5 years ago

Attempt to solve https://github.com/conda-forge/openblas-feedstock/issues/69

This did not work locally and I'm not sure what is wrong (Writing split-recipes is a new thing to me :smile:). @msarahan and @isuruf I appreciate any advice you may have to make this work.

It fails with a KeyError: 'lib/libopenblasp-r0.3.6.so' when finalizing the package. Full error:

ERROR :: get_rpaths_raw()=['/opt/conda/conda-bld/openblas_1559093006932/_build_env/lib:/opt/conda/conda-bld/openblas_1559093006932/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib'] and patchelf=/opt/conda/conda-bld/openblas_1559093006932/_build_env/lib:/opt/conda/conda-bld/openblas_1559093006932/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib disagree for /opt/conda/conda-bld/openblas_1559093006932/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/libopenblasp-r0.3.6.so :: 
Warning: rpath /opt/conda/conda-bld/openblas_1559093006932/_build_env/lib is outside prefix /opt/conda/conda-bld/openblas_1559093006932/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac (removing it)
Traceback (most recent call last):
  File "/opt/conda/bin/conda-build", line 11, in <module>
    sys.exit(main())
  File "/opt/conda/lib/python3.7/site-packages/conda_build/cli/main_build.py", line 445, in main
    execute(sys.argv[1:])
  File "/opt/conda/lib/python3.7/site-packages/conda_build/cli/main_build.py", line 436, in execute
    verify=args.verify, variants=args.variants)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/api.py", line 209, in build
    notest=notest, need_source_download=need_source_download, variants=variants)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/build.py", line 2299, in build_tree
    notest=notest,
  File "/opt/conda/lib/python3.7/site-packages/conda_build/build.py", line 1596, in build
    newly_built_packages = bundlers[pkg_type](output_d, m, env, stats)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/build.py", line 958, in bundle_conda
    files = post_process_files(metadata, initial_files)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/build.py", line 823, in post_process_files
    post_build(m, new_files, build_python=python)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/post.py", line 1070, in post_build
    check_overlinking(m, files)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/post.py", line 1009, in check_overlinking
    m.config.channel_urls)
  File "/opt/conda/lib/python3.7/site-packages/conda_build/post.py", line 930, in check_overlinking_impl
    needed = needed_dsos_for_file[f]
KeyError: 'lib/libopenblasp-r0.3.6.so'
conda-forge-linter commented 5 years ago

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.

Here's what I've got...

For recipe:

conda-forge-linter commented 5 years ago

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

isuruf commented 5 years ago

@conda-forge-admin, rerender

ocefpaf commented 5 years ago

This is what we have in libopenblas:

.
├── [4.0K]  info
│   ├── [3.3K]  about.json
│   ├── [ 608]  files
│   ├── [   0]  git
│   ├── [ 123]  hash_input.json
│   ├── [ 290]  has_prefix
│   ├── [ 298]  index.json
│   ├── [1.5K]  LICENSE.txt
│   ├── [6.5K]  paths.json
│   ├── [4.0K]  recipe
│   │   ├── [ 696]  conda_build_config.yaml
│   │   ├── [1.5K]  meta.yaml
│   │   └── [4.0K]  parent
│   │       ├── [ 308]  0002-Fix-gfortran-detection-for-ctng-based-cross-compilers.patch
│   │       ├── [ 666]  0003-Fix-power-prefetch.patch
│   │       ├── [ 567]  bld.bat
│   │       ├── [2.1K]  build.sh
│   │       ├── [1.7K]  gh2111.patch
│   │       └── [2.0K]  meta.yaml
│   ├── [  40]  run_exports.json
│   └── [4.0K]  test
│       └── [ 128]  run_test.sh
└── [4.0K]  lib
    ├── [  16]  libasan.so -> libasan.so.5.0.0
    ├── [  16]  libasan.so.5 -> libasan.so.5.0.0
    ├── [ 13M]  libasan.so.5.0.0
    ├── [  18]  libatomic.so -> libatomic.so.1.2.0
    ├── [  18]  libatomic.so.1 -> libatomic.so.1.2.0
    ├── [180K]  libatomic.so.1.2.0
    ├── [ 132]  libgcc_s.so
    ├── [801K]  libgcc_s.so.1
    ├── [  20]  libgfortran.so -> libgfortran.so.4.0.0
    ├── [  20]  libgfortran.so.4 -> libgfortran.so.4.0.0
    ├── [5.7M]  libgfortran.so.4.0.0
    ├── [  16]  libgomp.so -> libgomp.so.1.0.0
    ├── [  16]  libgomp.so.1 -> libgomp.so.1.0.0
    ├── [916K]  libgomp.so.1.0.0
    ├── [  15]  libitm.so -> libitm.so.1.0.0
    ├── [  15]  libitm.so.1 -> libitm.so.1.0.0
    ├── [941K]  libitm.so.1.0.0
    ├── [  16]  liblsan.so -> liblsan.so.0.0.0
    ├── [  16]  liblsan.so.0 -> liblsan.so.0.0.0
    ├── [ 13M]  liblsan.so.0.0.0
    ├── [ 29M]  libopenblasp-r0.3.6.so
    ├── [  22]  libopenblas.so -> libopenblasp-r0.3.6.so
    ├── [  22]  libopenblas.so.0 -> libopenblasp-r0.3.6.so
    ├── [  20]  libquadmath.so -> libquadmath.so.0.0.0
    ├── [  20]  libquadmath.so.0 -> libquadmath.so.0.0.0
    ├── [845K]  libquadmath.so.0.0.0
    ├── [  16]  libtsan.so -> libtsan.so.0.0.0
    ├── [  16]  libtsan.so.0 -> libtsan.so.0.0.0
    ├── [ 15M]  libtsan.so.0.0.0
    ├── [  17]  libubsan.so -> libubsan.so.1.0.0
    ├── [  17]  libubsan.so.1 -> libubsan.so.1.0.0
    └── [ 11M]  libubsan.so.1.0.0

And this is the contents in openblas (that depends on libopenblas):

.
├── [4.0K]  include
│   ├── [ 46K]  cblas.h
│   ├── [ 47K]  f77blas.h
│   ├── [4.3K]  lapacke_config.h
│   ├── [1.2M]  lapacke.h
│   ├── [ 474]  lapacke_mangling.h
│   ├── [ 32K]  lapacke_utils.h
│   └── [4.9K]  openblas_config.h
├── [4.0K]  info
│   ├── [3.2K]  about.json
│   ├── [ 311]  files
│   ├── [   0]  git
│   ├── [ 123]  hash_input.json
│   ├── [ 142]  has_prefix
│   ├── [ 331]  index.json
│   ├── [1.5K]  LICENSE.txt
│   ├── [2.6K]  paths.json
│   └── [4.0K]  recipe
│       ├── [ 308]  0002-Fix-gfortran-detection-for-ctng-based-cross-compilers.patch
│       ├── [ 666]  0003-Fix-power-prefetch.patch
│       ├── [ 567]  bld.bat
│       ├── [2.1K]  build.sh
│       ├── [ 696]  conda_build_config.yaml
│       ├── [1.7K]  gh2111.patch
│       ├── [1.6K]  meta.yaml
│       └── [2.0K]  meta.yaml.template
└── [4.0K]  lib
    ├── [4.0K]  cmake
    │   └── [4.0K]  openblas
    │       ├── [ 174]  OpenBLASConfig.cmake
    │       └── [ 284]  OpenBLASConfigVersion.cmake
    ├── [  21]  libopenblas.a -> libopenblasp-r0.3.6.a
    ├── [ 50M]  libopenblasp-r0.3.6.a
    └── [4.0K]  pkgconfig
        └── [ 552]  openblas.pc

@isuruf it is unclear to me your https://github.com/conda-forge/openblas-feedstock/pull/70#discussion_r288424931, can you elaborate?

@jcrist the sizes of the packages are:

  17M May 29 07:05 libopenblas-0.3.6-h6e990d7_2.tar.bz2
 8.2M May 29 07:06 openblas-0.3.6-h6e990d7_2.tar.bz2
ocefpaf commented 5 years ago

Thanks @isuruf for all the help and the discussion!

jakirkham commented 5 years ago

Thanks for tackling this one @ocefpaf. This is a nice win! 😄

isuruf commented 5 years ago

Needs a build number bump

ocefpaf commented 5 years ago

Needs a build number bump

Yeah. I notice that as soon as I clicked the merge button.