Commit a3ee9b3a authored by Andreas Tille's avatar Andreas Tille

Imported Upstream version 2.3.2-4+dfsg

parents

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

# ===========================================================================
#
# PUBLIC DOMAIN NOTICE
# National Center for Biotechnology Information
#
# This software/database is a "United States Government Work" under the
# terms of the United States Copyright Act. It was written as part of
# the author's official duties as a United States Government employee and
# thus cannot be copyrighted. This software/database is freely available
# to the public for use. The National Library of Medicine and the U.S.
# Government have not placed any restriction on its use or reproduction.
#
# Although all reasonable efforts have been taken to ensure the accuracy
# and reliability of the software and data, the NLM and the U.S.
# Government do not and cannot warrant the performance or results that
# may be obtained by using this software or data. The NLM and the U.S.
# Government disclaim all warranties, express or implied, including
# warranties of performance, merchantability or fitness for any particular
# purpose.
#
# Please cite the author in any work or product based on this material.
#
# ===========================================================================
#-------------------------------------------------------------------------------
# environment
#
TOP ?= $(CURDIR)
include $(TOP)/build/Makefile.shell
#-------------------------------------------------------------------------------
# default
#
SUBDIRS = \
libs \
tools
default: $(SUBDIRS)
test: $(SUBDIRS)
$(SUBDIRS) test:
@ $(MAKE) -C $@
.PHONY: default $(SUBDIRS) test
#-------------------------------------------------------------------------------
# all
#
SUBDIRS_ALL = $(addsuffix _all,$(SUBDIRS))
all: $(SUBDIRS_ALL)
$(SUBDIRS_ALL):
@ $(MAKE) -C $(subst _all,,$@) all
.PHONY: all $(SUBDIRS_ALL)
#-------------------------------------------------------------------------------
# std
#
SUBDIRS_STD = $(addsuffix _std,$(SUBDIRS))
std: $(SUBDIRS_STD)
$(SUBDIRS_STD):
@ $(MAKE) -C $(subst _std,,$@) std
.PHONY: std $(SUBDIRS_STD)
#-------------------------------------------------------------------------------
# clean
#
SUBDIRS_CLEAN = $(addsuffix _clean,$(SUBDIRS_ALL))
clean: $(SUBDIRS_CLEAN)
$(SUBDIRS_CLEAN):
@ $(MAKE) -s -C $(subst _all_clean,,$@) clean
.PHONY: clean $(SUBDIRS_CLEAN)
#-------------------------------------------------------------------------------
# runtests
#
SUBDIRS_RUNTESTS = $(addsuffix _runtests, libs tools test)
runtests: std $(SUBDIRS_RUNTESTS)
$(SUBDIRS_RUNTESTS):
@ $(MAKE) -C $(subst _runtests,,$@) runtests
.PHONY: runtests $(SUBDIRS_RUNTESTS)
#-------------------------------------------------------------------------------
# pass-through targets
#
COMPILERS = GCC VC++ CLANG
ARCHITECTURES = i386 x86_64 sparc32 sparc64
CONFIG = debug profile release static dynamic
PUBLISH = scm pubtools
REPORTS = bindir targdir osdir config compilers architecture architectures
PASSTHRUS = \
out \
CC $(COMPILERS) \
$(ARCHITECTURES) \
$(CONFIG) $(PUBLISH)
$(PASSTHRUS):
@ $(MAKE) -s TOP=$(CURDIR) -f build/Makefile.env $@
@ $(MAKE) -s TOP=$(CURDIR) -f build/Makefile.env rebuild-dirlinks config
$(REPORTS):
@ $(MAKE) -s TOP=$(CURDIR) -f build/Makefile.env $@
.PHONY: $(PASSTHRUS) $(REPORTS)
#-------------------------------------------------------------------------------
# configuration help
#
help configure:
@ echo "Before initial build, run 'make OUTDIR=<dir> out' from"
@ echo "the project root to set the output directory of your builds."
@ echo
@ echo "To select a compiler, run 'make <comp>' where"
@ echo "comp = { "$(COMPILERS)" }."
@ echo
@ echo "For hosts that support cross-compilation ( only Macintosh today ),"
@ echo "you can run 'make <arch>' where arch = { "$(ARCHITECTURES)" }."
@ echo
@ echo "To set a build configuration, run 'make <config>' where"
@ echo "config = { "$(CONFIG)" }."
@ echo
.PHONY: help configure
# ===========================================================================
#
# PUBLIC DOMAIN NOTICE
# National Center for Biotechnology Information
#
# This software/database is a "United States Government Work" under the
# terms of the United States Copyright Act. It was written as part of
# the author's official duties as a United States Government employee and
# thus cannot be copyrighted. This software/database is freely available
# to the public for use. The National Library of Medicine and the U.S.
# Government have not placed any restriction on its use or reproduction.
#
# Although all reasonable efforts have been taken to ensure the accuracy
# and reliability of the software and data, the NLM and the U.S.
# Government do not and cannot warrant the performance or results that
# may be obtained by using this software or data. The NLM and the U.S.
# Government disclaim all warranties, express or implied, including
# warranties of performance, merchantability or fitness for any particular
# purpose.
#
# Please cite the author in any work or product based on this material.
#
# ===========================================================================
The NCBI SRA ( Sequence Read Archive )
Contact: sra-tools@ncbi.nlm.nih.gov
http://trace.ncbi.nlm.nih.gov/Traces/sra/std
The SRA Toolkit and SDK from NCBI is a collection of tools and
libraries for using data in the INSDC Sequence Read Archives.
With this release, NCBI has implemented Automatic Remote Access by accession,
making it possible to access data using NCBI servers without prior download.
For additional information on using and building the toolkit,
please visit our web site at:
"http://trace.ncbi.nlm.nih.gov/Traces/sra/std"
SRA Toolkit Development Team
# ===========================================================================
#
# PUBLIC DOMAIN NOTICE
# National Center for Biotechnology Information
#
# This software/database is a "United States Government Work" under the
# terms of the United States Copyright Act. It was written as part of
# the author's official duties as a United States Government employee and
# thus cannot be copyrighted. This software/database is freely available
# to the public for use. The National Library of Medicine and the U.S.
# Government have not placed any restriction on its use or reproduction.
#
# Although all reasonable efforts have been taken to ensure the accuracy
# and reliability of the software and data, the NLM and the U.S.
# Government do not and cannot warrant the performance or results that
# may be obtained by using this software or data. The NLM and the U.S.
# Government disclaim all warranties, express or implied, including
# warranties of performance, merchantability or fitness for any particular
# purpose.
#
# Please cite the author in any work or product based on this material.
#
# ===========================================================================
The NCBI SRA ( Sequence Read Archive ) SDK ( Software Development Kit )
Contact: sra-tools@ncbi.nlm.nih.gov
NOTICE:
Effective as of release 2.1.8, NCBI is no longer supporting public sources for
Windows builds. The sources will still contain everything that we use to build
the binaries, but may not build in your environment.
The reason for this change has to do with dependencies upon third party
libraries, which are commonly installed on other platforms, but could be
described as "hit and miss" on Windows. When the libraries DO exist, it is
difficult to know if they have a correct or compatible calling convention.
We will continue to distribute pre-built binaries for Windows. You are welcome
to try your luck at compiling the sources yourself under Cygwin.
ENVIRONMENT:
The Windows build uses the same makefiles as Linux and Mac, and has
been tested under Cygwin. You need to execute Cygwin AFTER sourcing
the Microsoft batch file from Visual Studio. We edit the
"cygwin.bat" file to first source "vsvars32.bat":
@echo off
call "%VS80COMNTOOLS%\vsvars32.bat"
C:
chdir C:\cygwin\bin
bash --login -i
By including vsvars32.bat before launching Cygwin, your bash shell
will have all of the Microsoft tools in its path, and the Microsoft
tools will know how to find includes and libraries.
There is a conflict between the Cygwin and Microsoft link tools. The
GNU version (that "avoids the bells and whistles of the more
commonly-used `ln' command" but otherwise duplicates it) is not used
or needed by the build, while the Microsoft version IS needed. To
address this issue, our linker scripts (build/ld.win.*.sh) reorder
the PATH directories in an attempt to ensure that the correct tool
is located. If this proves ineffective in your environment, try
renaming the GNU tool, e.g.:
$ mv /usr/bin/link.exe /usr/bin/gnu-link.exe
CYGWIN:
While we are using Cygwin as a build environment, the binaries are
NOT Cygwin binaries and do not link against any of their
libraries. As a result, there is no dependency upon their runtime
being present, but neither is there any of their emulation.
In particular, paths behave very differently. Our SDK is based upon
POSIX path conventions. Our Windows tools accept relative and
absolute paths well, in DOS, Cygwin or MinGW POSIX-style form. But
since we do not use Cygwin libraries, our tools have no idea of how
to interpret "full" paths within the Cygwin Unix root, e.g.:
$ cygpath -w /home
C:\cygwin\home
They CAN, however, interpret fully drive-letter qualified Cygwin
paths:
$ fastq-dump /cygdrive/C/cygwin/home/myname/SRRxxxxxx.sra
Internally, this Cygwin path will be interpreted as
C:\cygwin\home\myname\SRRxxxxxx.sra
WINDOWS PATHS IN GENERAL:
Windows is the only supported platform that does not present a
single-root unified file system, such as POSIX. In the POSIX model,
navigation from any one point in the file system to any other is a
matter of entering and exiting directories by name. Under Windows,
each drive has its own file system, and network paths form yet
another file system.
Like Cygwin and MinGW and probably countless other projects, we have
artificially bridged the drive letter file systems by introducing a
virtual root node whose immediate sub-directories are the
single-letter drive names that are currently mounted, e.g.:
C:, D: are real drives, while Z: is a mounted network drive
"/C" and "/D" and "/Z" are all subdirectories of "/"