Creating custom channels
create baw packagebuild.sh
#!/bin/bash export C_INCLUDE_PATH=${PREFIX}/include export LIBRARY_PATH=${PREFIX}/lib make CFLAGS="${CFLAGS} -fcommon" mkdir -p $PREFIX/bin mkdir -p $PREFIX/share/man/man1 cp bwa $PREFIX/bin cp xa2multi.pl $PREFIX/bin cp qualfa2fq.pl $PREFIX/bin cp bwa.1 $PREFIX/share/man/man1
Makefile.patch
diff --git a/Makefile b/Makefile index 7151435..2f0a4fe 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,9 @@ -CC= gcc +#CC= gcc #CC= clang --analyze CFLAGS= -g -Wall -Wno-unused-function -O2 WRAP_MALLOC=-DUSE_MALLOC_WRAPPERS AR= ar -DFLAGS= -DHAVE_PTHREAD $(WRAP_MALLOC) +DFLAGS= -DHAVE_PTHREAD $(WRAP_MALLOC) $(LDFLAGS) LOBJS= utils.o kthread.o kstring.o ksw.o bwt.o bntseq.o bwa.o bwamem.o bwamem_pair.o bwamem_extra.o malloc_wrap.o \ QSufSort.o bwt_gen.o rope.o rle.o is.o bwtindex.o AOBJS= bwashm.o bwase.o bwaseqio.o bwtgap.o bwtaln.o bamlite.o \
meta.yaml
{% set version = "0.7.17" %} {% set sha256 = "980b9591b61c60042c4a39b9e31ccaad8d17ff179d44d347997825da3fdf47fd" %} package: name: bwa version: {{ version }} source: url: https://github.com/lh3/bwa/archive/v{{ version }}.tar.gz sha256: {{ sha256 }} patches: - Makefile.patch build: number: 9 requirements: build: - make - {{ compiler('c') }} host: - zlib run: - zlib - perl test: commands: - bwa 2>&1 | grep "index sequences in the" - which xa2multi.pl - which qualfa2fq.pl about: home: https://github.com/lh3/bwa license: GPL3 license_file: COPYING summary: The BWA read mapper. extra: identifiers: - biotools:bwa - usegalaxy-eu:bwa_mem - usegalaxy-eu:bwa
TEST END: /home/wangyang/anaconda3/conda-bld/linux-64/bwa-0.7.17-h9bf148f_9.tar.bz2 Renaming work directory '/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work' to '/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work_moved_bwa-0.7.17-h9bf148f_9_linux-64_main_build_loop' INFO:conda_build.utils:Renaming work directory '/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work' to '/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work_moved_bwa-0.7.17-h9bf148f_9_linux-64_main_build_loop' shutil.move(work)=/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work, dest=/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work_moved_bwa-0.7.17-h9bf148f_9_linux-64_main_build_loop) INFO:conda_build.utils:shutil.move(work)=/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work, dest=/home/wangyang/anaconda3/conda-bld/bwa_1660108670742/work_moved_bwa-0.7.17-h9bf148f_9_linux-64_main_build_loop) # Automatic uploading is disabled # If you want to upload package(s) to anaconda.org later, type: # To have conda build upload to anaconda.org automatically, use # conda config --set anaconda_upload yes anaconda upload \ /home/wangyang/anaconda3/conda-bld/linux-64/bwa-0.7.17-h9bf148f_9.tar.bz2 anaconda_upload is not set. Not uploading wheels: [] INFO :: The inputs making up the hashes for the built packages are as follows: { "bwa-0.7.17-h9bf148f_9": { "recipe": { "c_compiler": "gcc", "target_platform": "linux-64" } } } #################################################################################### Resource usage summary: Total time: 0:01:33.8 CPU usage: sys=0:00:00.1, user=0:00:00.4 Maximum memory usage observed: 54.6M Total disk usage observed (not including envs): 2.4K #################################################################################### Source and build intermediates have been left in /home/wangyang/anaconda3/conda-bld. There are currently 25 accumulated. To remove them, you can run the ```conda build purge``` command
$ mkdir local-channel $ cd local-channel $ mkdir linux-64 osx-64
conda index . p /home/wangyang/anaconda3/conda-bld/linux-64/bwa-0.7.17-h9bf148f_9.tar.bz2 noarch/ conda index .
conda search -c file:///home/wangyang/local-channel --override-channels bwa
els bwa Loading channels: done # Name Version Build Channel bwa 0.7.17 h9bf148f_9 local-channel
Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: - Found conflicts! Looking for incompatible packages. This can take several minutes. Press CTRL-C to abort. failed UnsatisfiableError: The following specifications were found to be incompatible with each other: Output in format: Requested package -> Available versions Package zlib conflicts for: bwa -> zlib[version='>=1.2.12,<1.3.0a0'] python=3.9 -> zlib[version='>=1.2.11,<1.3.0a0'] Package libgcc-ng conflicts for: bwa -> libgcc-ng[version='>=11.2.0'] bwa -> zlib[version='>=1.2.12,<1.3.0a0'] -> libgcc-ng[version='>=7.5.0']The following specifications were found to be incompatible with your system: - feature:/linux-64::__glibc==2.31=0 - feature:|@/linux-64::__glibc==2.31=0 - python=3.9 -> libgcc-ng[version='>=7.5.0'] -> __glibc[version='>=2.17'] Your installed version is: 2.31
conda install gxx_linux-64
conda-build recipeDirectory
We set these variables in conda activate.d scripts, so any environment in which you will use the compilers must first be activated so the scripts will run. Conda-build does this activation for you using activation hooks installed with the compiler packages in CONDA_PREFIX/etc/conda/activate.d, so no additional effort is necessary.
CONDA_PREFIX/etc/conda/activate.d
conda skeleton pypi --extra-specs cython sep --python-version 3.6
build: entry_points: - bsdiff4 = bsdiff4.cli:main_bsdiff4 - bspatch4 = bsdiff4.cli:main_bspatch4
{% set version = "1.2.1" %} package: name: sep version: {{ version }} source: url: https://pypi.io/packages/source/s/sep/sep-{{ version }}.tar.gz sha256: 1b6a36a554b3b315a9a96d19159f1ae39d9dad75bef510b1dc084c5aa9a4489b build: number: 0 script: {{ PYTHON }} -m pip install . --no-deps -vv requirements: build: - python # [build_platform != target_platform] - cross-python_{{ target_platform }} # [build_platform != target_platform] - cython # [build_platform != target_platform] - numpy # [build_platform != target_platform] - {{ compiler('c') }} host: - python - pip - numpy - cython run: - python - {{ pin_compatible('numpy') }} test: imports: - sep about: home: https://github.com/kbarbary/sep license: LGPL-3.0-or-later license_family: LGPL license_file: licenses/LGPL_LICENSE.txt summary: Astronomical source extraction and photometry library description: | SEP makes the core algorithms of Source Extractor available as a library of stand-alone functions and classes. These operate directly on in-memory arrays (no FITS files or configuration files). The code is derived from the Source Extractor code base (written in C) and aims to produce results compatible with Source Extractor whenever possible. doc_url: http://sep.readthedocs.io/ dev_url: https://github.com/kbarbary/sep extra: recipe-maintainers: - kbarbary - mwcraig
package: name: click version: 7.0 source: # git_rev: https://github.com/pallets/click.git git_url: https://github.com/pallets/click.git requirements: build: - python - setuptools run: - python test: imports: - click about: home: https://github.com/pallets/click