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 c-blosc/1.17.1 #933

Merged
merged 2 commits into from
Mar 2, 2020
Merged

add c-blosc/1.17.1 #933

merged 2 commits into from
Mar 2, 2020

Conversation

SpaceIm
Copy link
Contributor

@SpaceIm SpaceIm commented Feb 20, 2020

Specify library name and version: c-blosc/1.17.1

  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the
    conan-center hook activated.

#621

@conan-center-bot
Copy link
Collaborator

All green in build 1 (6c01c0134d69e9c3694e464017d8576aa1ba88ba)! 😊

Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Do not apply that patch, use cmake_find_package instead. I've checked, it's working
  • Check with the upstream about the snappy x c++ linker
  • c-blosc doesn't export any cmake target, so don't rename any cmake taget.

recipes/c-blosc/all/conanfile.py Show resolved Hide resolved
recipes/c-blosc/all/conanfile.py Show resolved Hide resolved
recipes/c-blosc/all/conanfile.py Show resolved Hide resolved
recipes/c-blosc/all/conanfile.py Show resolved Hide resolved
recipes/c-blosc/all/CMakeLists.txt Show resolved Hide resolved
recipes/c-blosc/all/conanfile.py Outdated Show resolved Hide resolved
recipes/c-blosc/all/conanfile.py Outdated Show resolved Hide resolved
recipes/c-blosc/all/conanfile.py Outdated Show resolved Hide resolved
@SpaceIm
Copy link
Contributor Author

SpaceIm commented Feb 20, 2020

@uilianries Did you check on linux? Blosc uses uppercase for lz4 and zstd. Using conan targets avoid to worry about cpp_info.name modifications in dependent recipes.
Actually I've used cmake_fin_package for my first tries but there was issues on Linux and Macos. Then I changed names for find_package, leading to a patch, therefore I decided to use conan target which is more robust.

@uilianries
Copy link
Member

@SpaceIm I run Linux by default. And it's working on my side. Could you detail what is happening when building there in your side?

My current output running conanio/gcc9 docker image:

$ conan create . 1.17.1@ -o c-blosc:shared=True Exporting package recipe c-blosc/1.17.1 exports: File 'conandata.yml' found. Exporting it... c-blosc/1.17.1 exports: Copied 1 '.yml' file: conandata.yml c-blosc/1.17.1 exports_sources: Copied 1 '.txt' file: CMakeLists.txt c-blosc/1.17.1 exports_sources: Copied 1 '.patch' file: cmake-dependencies_and_install.patch c-blosc/1.17.1: The stored package has not changed c-blosc/1.17.1: Exported revision: ebdb6fadfa10e141d52497f2c8ef3f2e Configuration: [settings] arch=x86_64 arch_build=x86_64 build_type=Release compiler=gcc compiler.libcxx=libstdc++ compiler.version=9 os=Linux os_build=Linux [options] c-blosc:shared=True [build_requires] [env]

c-blosc/1.17.1: Forced build from source
c-blosc/1.17.1 (test package): Installing package
Requirements
c-blosc/1.17.1 from local cache - Cache
lz4/1.9.2 from 'conan-center' - Cache
snappy/1.1.7 from 'conan-center' - Cache
zlib/1.2.11 from 'conan-center' - Cache
zstd/1.4.4 from 'conan-center' - Cache
Packages
c-blosc/1.17.1:55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30 - Build
lz4/1.9.2:6af9cc7cb931c5ad942174fd7838eb655717c709 - Cache
snappy/1.1.7:50a5030bbbb13ae56bc4be41915ecd48549cb895 - Cache
zlib/1.2.11:6af9cc7cb931c5ad942174fd7838eb655717c709 - Cache
zstd/1.4.4:6af9cc7cb931c5ad942174fd7838eb655717c709 - Cache

lz4/1.9.2: Already installed!
snappy/1.1.7: Already installed!
zlib/1.2.11: Already installed!
zstd/1.4.4: Already installed!
c-blosc/1.17.1: Copying sources to build folder
c-blosc/1.17.1: Building your package in /home/conan/.conan/data/c-blosc/1.17.1///build/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30
c-blosc/1.17.1: Generator cmake created conanbuildinfo.cmake
c-blosc/1.17.1: Generator cmake_find_package created Findlz4.cmake
c-blosc/1.17.1: Generator cmake_find_package created FindSnappy.cmake
c-blosc/1.17.1: Generator cmake_find_package created FindZLIB.cmake
c-blosc/1.17.1: Generator cmake_find_package created Findzstd.cmake
c-blosc/1.17.1: Calling build()
-- The C compiler identification is GNU 9.2.1
-- The CXX compiler identification is GNU 9.2.1
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/g++
-- Check for working CXX compiler: /usr/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Conan: called by CMake conan helper
-- Conan: called inside local cache
-- Conan: Adjusting output directories
-- Conan: Using cmake global configuration
-- Conan: Adjusting default RPATHs Conan policies
-- Conan: Adjusting language standard
-- Conan: Adjusting fPIC flag (ON)
-- Conan: Compiler GCC>=5, checking major version 9
-- Conan: Checking correct version: 9
-- Conan: C++ stdlib: libstdc++
Configuring for Blosc version: 1.17.1
-- Found LZ4 library: /home/conan/.conan/data/lz4/1.9.2///package/6af9cc7cb931c5ad942174fd7838eb655717c709/lib/liblz4.a
-- Found SNAPPY library: /home/conan/.conan/data/snappy/1.1.7///package/50a5030bbbb13ae56bc4be41915ecd48549cb895/lib/libsnappy.a
-- Found ZLIB: /home/conan/.conan/data/zlib/1.2.11///package/6af9cc7cb931c5ad942174fd7838eb655717c709/lib/libz.a (found version "1.2.11")
-- Found Zstd library: /home/conan/.conan/data/zstd/1.4.4///package/6af9cc7cb931c5ad942174fd7838eb655717c709/lib/libzstd.a
-- Building for system processor x86_64
-- Detected that BLOSC is used a subproject.
-- Adding run-time support for SSE2
-- Adding run-time support for AVX2
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

CMAKE_EXPORT_NO_PACKAGE_REGISTRY
CMAKE_INSTALL_BINDIR
CMAKE_INSTALL_DATAROOTDIR
CMAKE_INSTALL_INCLUDEDIR
CMAKE_INSTALL_LIBDIR
CMAKE_INSTALL_LIBEXECDIR
CMAKE_INSTALL_OLDINCLUDEDIR
CMAKE_INSTALL_SBINDIR

-- Build files have been written to: /home/conan/.conan/data/c-blosc/1.17.1///build/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/build_subfolder
Scanning dependencies of target blosc_shared
[ 9%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/blosc.c.o
[ 27%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/fastcopy.c.o
[ 18%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/blosclz.c.o
[ 36%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/shuffle-generic.c.o
/home/conan/.conan/data/c-blosc/1.17.1///build/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/source_subfolder/blosc/blosclz.c:71:1: warning: multi-line comment [-Wcomment]
71 | //#define HASH_FUNCTION(v, p, h) {
| ^
[ 45%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/bitshuffle-generic.c.o
[ 54%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/shuffle-sse2.c.o
[ 63%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/bitshuffle-sse2.c.o
[ 72%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/shuffle-avx2.c.o
[ 81%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/bitshuffle-avx2.c.o
[ 90%] Building C object source_subfolder/blosc/CMakeFiles/blosc_shared.dir/shuffle.c.o
[100%] Linking C shared library ../../lib/libblosc.so
[100%] Built target blosc_shared
c-blosc/1.17.1: Package '55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30' built
c-blosc/1.17.1: Build folder /home/conan/.conan/data/c-blosc/1.17.1///build/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30
c-blosc/1.17.1: Generated conaninfo.txt
c-blosc/1.17.1: Generated conanbuildinfo.txt
c-blosc/1.17.1: Generating the package
c-blosc/1.17.1: Package folder /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30
c-blosc/1.17.1: Calling package()
[100%] Built target blosc_shared
Install the project...
-- Install configuration: "Release"
-- Installing: /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/lib/pkgconfig/blosc.pc
-- Installing: /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/include/blosc.h
-- Installing: /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/include/blosc-export.h
-- Installing: /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/lib/libblosc.so.1.17.1
-- Installing: /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/lib/libblosc.so.1
-- Set runtime path of "/home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/lib/libblosc.so.1.17.1" to ""
-- Installing: /home/conan/.conan/data/c-blosc/1.17.1///package/55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30/lib/libblosc.so
c-blosc/1.17.1 package(): Packaged 2 '.h' files: blosc.h, blosc-export.h
c-blosc/1.17.1 package(): Packaged 2 '.1' files: libblosc.so.1, libblosc.so.1.17.1
c-blosc/1.17.1 package(): Packaged 1 '.so' file: libblosc.so
c-blosc/1.17.1 package(): Packaged 3 '.txt' files: FASTLZ.txt, BITSHUFFLE.txt, BLOSC.txt
c-blosc/1.17.1: Package '55f41fdbe1a745dbc12e3adf454ad3b77a6d6a30' created
c-blosc/1.17.1: Created package revision 2a8f71258a06c297d798d1ff7e5de86e
c-blosc/1.17.1 (test package): Generator cmake created conanbuildinfo.cmake
c-blosc/1.17.1 (test package): Generator txt created conanbuildinfo.txt
c-blosc/1.17.1 (test package): Generated conaninfo.txt
c-blosc/1.17.1 (test package): Generated graphinfo
Using lockfile: '/home/conan/project/test_package/build/5af5be6f123f3269e4a48a0e26b2b397d1a0c3aa/conan.lock'
Using cached profile from lockfile
c-blosc/1.17.1 (test package): Running build()
-- The C compiler identification is GNU 9.2.1
-- The CXX compiler identification is GNU 9.2.1
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/g++
-- Check for working CXX compiler: /usr/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Conan: called by CMake conan helper
-- Conan: Adjusting output directories
-- Conan: Using cmake global configuration
-- Conan: Adjusting default RPATHs Conan policies
-- Conan: Adjusting language standard
-- Conan: Compiler GCC>=5, checking major version 9
-- Conan: Checking correct version: 9
-- Conan: C++ stdlib: libstdc++
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

CMAKE_EXPORT_NO_PACKAGE_REGISTRY

-- Build files have been written to: /home/conan/project/test_package/build/5af5be6f123f3269e4a48a0e26b2b397d1a0c3aa
Scanning dependencies of target test_package
[ 50%] Building C object CMakeFiles/test_package.dir/test_package.c.o
[100%] Linking CXX executable bin/test_package
[100%] Built target test_package
c-blosc/1.17.1 (test package): Running test()
Blosc version info: 1.17.1 ($Date:: 2019-12-12 #$)
Compression: 4000000 -> 41664 (96.0x)
Decompression succesful!
Succesful roundtrip!

@SpaceIm
Copy link
Contributor Author

SpaceIm commented Feb 20, 2020

@uilianries I remember. I've checked again and it doesn't properly work on Windows.
It uses the Blosc find.cmake, not conan find files.
zstd is not found on windows, therefore it compiles zstd version provided by Blosc.
If you force to use conan find files (with CMAKE_MODULE_PATH), it fails because of case sensitivity or variable's name (Blosc expects ZSTD_LIBRARY for example while conan provides zstd_LIBRARIES or zstd_LIBS).

Co-Authored-By: Uilian Ries <uilianries@gmail.com>
@SpaceIm SpaceIm requested a review from uilianries February 20, 2020 22:27
@conan-center-bot
Copy link
Collaborator

All green in build 2 (3abb616f124348ba694f54df425fd67e9f601c36)! 😊

@uilianries
Copy link
Member

@SpaceIm Thanks for you detailed explanation.

@uilianries uilianries requested a review from SSE4 February 21, 2020 12:39
@conan-center-bot
Copy link
Collaborator

All green in build 3 (3abb616f124348ba694f54df425fd67e9f601c36)! 😊

@danimtb danimtb merged commit 57f0405 into conan-io:master Mar 2, 2020
@SpaceIm SpaceIm deleted the add-c-blosc-1.17.1 branch March 2, 2020 15:00
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.

5 participants