#
# Filename: Manifest
#
# $Id: Manifest 665494 2023-04-05 16:11:45Z camacho $
#
# Author: Christiam Camacho
#
# Purpose: This file holds all the supported configurations of a package
#          It is used by release configurator.
#
# Documentatio:
# https://confluence.ncbi.nlm.nih.gov/display/CT/General+guidelines+and+supporting+framework+for+product+releases
#
# The APP: statement describes binaries
# The LIB: statement describes libraries
# The DLL: statement describes shared objects
# The ETC: statement describes configuration files
# It is allowed to have more than one of each statements
# NOTE: When applications are added/removed from this list, please update
# the application listings in post_build/win/{make_win.py,ncbi-blast.nsi},
# post_build/macosx/ncbi-blast.sh, and post_build/rpm/ncbi-blast.spec
APP: blastp blastn blastx tblastn tblastx psiblast rpsblast rpstblastn
APP: makembindex segmasker dustmasker windowmasker deltablast
APP: makeblastdb blastdbcmd blastdb_aliastool convert2blastmask blastdbcheck
APP: makeprofiledb blast_formatter
APP: blastn_vdb tblastn_vdb blast_formatter_vdb blast_vdb_cmd 

COPY: $srcdir/src/app/blast/legacy_blast.pl $installdir/bin
COPY: $srcdir/src/app/blast/update_blastdb.pl $installdir/bin
COPY: $srcdir/src/app/blast/cleanup-blastdb-volumes.py $installdir/bin
COPY: $srcdir/src/app/blast/get_species_taxids.sh $installdir/bin
COPY: $srcdir/scripts/projects/blast/BLAST_PRIVACY $installdir/BLAST_PRIVACY

POSTBUILD: $srcdir/scripts/projects/blast/post_build/make_installers.py -v $version $platform $installdir "$tarball" $bindir

# N.B.: This allows customization of configure script in prepare_release output
DEFAULT_CONFIGURE_FLAGS: --without-debug --with-strip --with-openmp --with-mt --without-vdb --without-gnutls --without-gcrypt --with-build-root=$srcdir/ReleaseMT --with-experimental=Int8GI

# Each line describes a single configuration
# The format is as follows:
# <HardwareIdentifier> : <ReleaseSuffix> : <CompilerConfigurationScriptWithKeys>
# Configuration script is relative to c++/compilers/unix/ .
# Release configurator assumes that this script will eventually call standard configure script and pass all options
# to it. So some standard options may be added by release configurator, such as --build-root-sfx, --with-projects,
# --with-distcc, --with-action etc.

# ICC gives us about 10% improvement in the core2 microarchitecture, so prefer
# that. The build-root is needed so that rpmbuild can find the proper directories
# to copy the binaries from
#Linux64-Centos     : icc : ICC.sh 1900 --with-static --without-dll --with-bin-release --with-strip --without-debug --without-pcre --with-mt --with-openmp --with-flat-makefile --with-experimental=Int8GI --without-gnutls --without-gcrypt --with-vdb=/panfs/traces01.be-md.ncbi.nlm.nih.gov/trace_software/vdb --with-static-vdb  <ENV>OPENMP_FLAGS='-qopenmp -qopenmp-link=static';LDFLAGS=-Wl,--as-needed</ENV>

Linux64-Centos     : gcc : GCC.sh       --with-static --without-dll --with-bin-release --with-strip --without-debug --without-pcre --with-mt --with-openmp --with-flat-makefile --with-experimental=Int8GI  --without-gnutls --without-gcrypt --with-vdb=/panfs/traces01.be-md.ncbi.nlm.nih.gov/trace_software/vdb --with-static-vdb 
#

#DEFAULT_CONFIGURATIONS: Linux64-Centos:icc
DEFAULT_CONFIGURATIONS: Linux64-Centos:gcc

# FIXME: how to specify without VDB?
Win64         : plain : static 64 ReleaseDLL <ENV>NCBI_CONFIG____ENABLEDUSERREQUESTS__NCBI-INT8-GI=1;NCBI_CONFIG__CONFIGURE__PROVIDEDREQUESTS=CXX_Toolkit,LocalBZ2,LocalPCRE,LocalZ,LocalLMDB,MT</ENV>

#IntelMAC            : gcc   : GCC.sh         --with-bin-release --without-debug --without-pcre --with-mt --with-openmp --with-flat-makefile --with-ncbi-public --with-experimental=Int8GI --without-vdb --without-gnutls --without-gcrypt
#IntelMAC            : clang : Clang.sh       --with-bin-release --without-debug --without-pcre --with-mt --with-openmp --with-flat-makefile --with-ncbi-public --with-experimental=Int8GI --without-vdb --without-gnutls --without-gcrypt
IntelMAC      : clang : Clang.sh  --without-dll --with-bin-release --without-debug --without-pcre --with-mt --without-openmp --with-flat-makefile --with-ncbi-public --with-experimental=Int8GI --without-gnutls --without-gcrypt --with-vdb=/net/snowman/vol/projects/trace_software/vdb/vdb-versions/cxx_toolkit/2 --with-static-vdb --without-lzo --without-zstd

USE_COMPONENTS
