Commit 4fd8c8fc authored by Dylan Aïssi's avatar Dylan Aïssi
Browse files

New upstream version 1.2+dfsg

parent f241cdb3
Loading
Loading
Loading
Loading
+63 −14
Original line number Diff line number Diff line
@@ -12,12 +12,12 @@ HTSLD_LIB=
CXX=g++ -std=c++0x

#COMPILER FLAGS
CXXFLAG_REL=-O2
CXXFLAG_REL=-O3
CXXFLAG_DBG=-g
CXXFLAG_WRN=-Wall -Wextra -Wno-sign-compare -Wno-unused-local-typedefs -Wno-deprecated -Wno-unused-parameter

#BASE LIBRARIES
LIB_FLAGS=-Wl,-Bstatic -lz -lgsl -lblas -lbz2 -Wl,-Bdynamic -lm -lpthread 
LIB_FLAGS=-lz -lgsl -lblas -lbz2 -llzma -lgslcblas -lm -lpthread

#FILE LISTS
BFILE=bin/QTLtools
@@ -27,16 +27,35 @@ CFILE=$(shell find src -name *.cpp)
OFILE=$(shell for file in `find src -name *.cpp`; do echo obj/$$(basename $$file .cpp).o; done)
VPATH=$(shell for file in `find src -name *.cpp`; do echo $$(dirname $$file); done)

#DEFAULT VERSION (I.E. UNIGE DESKTOP RELEASE VERSION)
all: desktop
#DEFAULT VERSION (SET UP THE VARIABLES IN THE BEGINING OF THE MAKEFILE)
all: CXXFLAG=$(CXXFLAG_REL) $(CXXFLAG_WRN)
all: IFLAG=-Ilib/OTools -Ilib -I$(RMATH_INC) -I$(HTSLD_INC) -I$(BOOST_INC)
all: LIB_FILES=$(RMATH_LIB)/libRmath.a $(HTSLD_LIB)/libhts.a $(BOOST_LIB)/libboost_iostreams.a $(BOOST_LIB)/libboost_program_options.a
all: LDFLAG=$(CXXFLAG_REL)
all: $(BFILE)

#DEFAULT DEBUG VERSION (SET UP THE VARIABLES IN THE BEGINING OF THE MAKEFILE)
all-dbg: CXXFLAG=$(CXXFLAG_DBG) $(CXXFLAG_WRN)
all-dbg: IFLAG=-Ilib/OTools -Ilib -I$(RMATH_INC) -I$(HTSLD_INC) -I$(BOOST_INC)
all-dbg: LIB_FILES=$(RMATH_LIB)/libRmath.a $(HTSLD_LIB)/libhts.a $(BOOST_LIB)/libboost_iostreams.a $(BOOST_LIB)/libboost_program_options.a
all-dbg: LDFLAG=$(CXXFLAG_DBG)
all-dbg: $(BFILE)

#DEFAULT VERSION (SET UP THE VARIABLES IN THE BEGINING OF THE MAKEFILE)
all-static: LIB_FLAGS=-Wl,-Bstatic -lz -lgsl -lblas -lbz2 -llzma -lgslcblas -Wl,-Bdynamic -lm -lpthread 
all-static: CXXFLAG=$(CXXFLAG_REL) $(CXXFLAG_WRN)
all-static: IFLAG=-Ilib/OTools -Ilib -I$(RMATH_INC) -I$(HTSLD_INC) -I$(BOOST_INC)
all-static: LIB_FILES=$(RMATH_LIB)/libRmath.a $(HTSLD_LIB)/libhts.a $(BOOST_LIB)/libboost_iostreams.a $(BOOST_LIB)/libboost_program_options.a
all-static: LDFLAG=$(CXXFLAG_REL)
all-static: $(BFILE)

#UNIGE DESKTOP RELEASE VERSION
desktop: RMATH_INC=$(HOME)/Tools/R-3.2.2/src/include
desktop: RMATH_LIB=$(HOME)/Tools/R-3.2.2/src/nmath/standalone
desktop: HTSLD_INC=$(HOME)/Tools/htslib-1.3.1
desktop: HTSLD_LIB=$(HOME)/Tools/htslib-1.3.1
desktop: HTSLD_INC=$(HOME)/Tools/htslib-1.3
desktop: HTSLD_LIB=$(HOME)/Tools/htslib-1.3
desktop: BOOST_INC=/usr/include
desktop: BOOST_LIB=/usr/lib
desktop: BOOST_LIB=/usr/lib/x86_64-linux-gnu
desktop: CXXFLAG=$(CXXFLAG_REL) $(CXXFLAG_WRN)
desktop: IFLAG=-Ilib/OTools -Ilib -I$(RMATH_INC) -I$(HTSLD_INC) -I$(BOOST_INC)
desktop: LIB_FILES=$(RMATH_LIB)/libRmath.a $(HTSLD_LIB)/libhts.a $(BOOST_LIB)/libboost_iostreams.a $(BOOST_LIB)/libboost_program_options.a
@@ -44,15 +63,24 @@ desktop: LDFLAG=$(CXXFLAG_REL)
desktop: $(BFILE)

#UNIGE DESKTOP DEBUG VERSION
desktop-dbg: desktop
desktop-dbg: RMATH_INC=$(HOME)/Tools/R-3.2.2/src/include
desktop-dbg: RMATH_LIB=$(HOME)/Tools/R-3.2.2/src/nmath/standalone
desktop-dbg: HTSLD_INC=$(HOME)/Tools/htslib-1.3
desktop-dbg: HTSLD_LIB=$(HOME)/Tools/htslib-1.3
desktop-dbg: BOOST_INC=/usr/include
desktop-dbg: BOOST_LIB=/usr/lib/x86_64-linux-gnu
desktop-dbg: CXXFLAG=$(CXXFLAG_DBG) $(CXXFLAG_WRN)
desktop-dbg: IFLAG=-Ilib/OTools -Ilib -I$(RMATH_INC) -I$(HTSLD_INC) -I$(BOOST_INC)
desktop-dbg: LIB_FILES=$(RMATH_LIB)/libRmath.a $(HTSLD_LIB)/libhts.a $(BOOST_LIB)/libboost_iostreams.a $(BOOST_LIB)/libboost_program_options.a
desktop-dbg: LDFLAG=$(CXXFLAG_DBG)
desktop-dbg: $(BFILE)

#VITAL-IT RELEASE VERSION
cluster: RMATH_INC=/software/R/3.1.1/include
cluster: RMATH_LIB=/software/R/3.1.1/lib64
cluster: HTSLD_INC=/software/UHTS/Analysis/samtools/1.2/include
cluster: HTSLD_LIB=/software/UHTS/Analysis/samtools/1.2/lib64
cluster: LIB_FLAGS=-lz -lgsl -lblas -lbz2 -lm -lpthread -lgslcblas -llzma
cluster: RMATH_INC=/software/R/3.4.2/include
cluster: RMATH_LIB=/software/R/3.4.2/lib64
cluster: HTSLD_INC=/software/UHTS/Analysis/samtools/1.4/include
cluster: HTSLD_LIB=/software/UHTS/Analysis/samtools/1.4/lib64
cluster: BOOST_INC=/software/include
cluster: BOOST_LIB=/software/lib64
cluster: CXXFLAG=$(CXXFLAG_REL) $(CXXFLAG_WRN)
@@ -62,9 +90,18 @@ cluster: LDFLAG=$(CXXFLAG_REL)
cluster: $(BFILE)

#VITAL-IT DEBUG VERSION
cluster-dbg: cluster
cluster-dbg: LIB_FLAGS=-lz -lgsl -lblas -lbz2 -lm -lpthread -lgslcblas -llzma
cluster-dbg: RMATH_INC=/software/R/3.4.2/include
cluster-dbg: RMATH_LIB=/software/R/3.4.2/lib64
cluster-dbg: HTSLD_INC=/software/UHTS/Analysis/samtools/1.4/include
cluster-dbg: HTSLD_LIB=/software/UHTS/Analysis/samtools/1.4/lib64
cluster-dbg: BOOST_INC=/software/include
cluster-dbg: BOOST_LIB=/software/lib64
cluster-dbg: CXXFLAG=$(CXXFLAG_DBG) $(CXXFLAG_WRN)
cluster-dbg: LDFLAG=$(CXXFLAG_DBG)
cluster-dbg: IFLAG=-Ilib/OTools -Ilib -I$(RMATH_INC) -I$(HTSLD_INC) -I$(BOOST_INC)
cluster-dbg: LIB_FILES=$(RMATH_LIB)/libRmath.a $(HTSLD_LIB)/libhts.a $(BOOST_LIB)/libboost_iostreams.a $(BOOST_LIB)/libboost_program_options.a
cluster-dbg: $(BFILE)

#MAC RELEASE VERSION
mac: RMATH_INC=$(HOME)/Libraries/R-3.2.2/src/include
@@ -132,7 +169,7 @@ obj/union_%.o: union_%.cpp union_data.h src/common/data.h src/common/filter.h $(
obj/extract_%.o: extract_%.cpp extract_data.h src/common/data.h src/common/filter.h $(TFILE)
	$(CXX) -o $@ -c $< $(CXXFLAG) $(IFLAG)

obj/quan_%.o: quan_%.cpp quan_data.h src/common/data.h src/common/filter.h $(TFILE)
obj/quan_%.o: quan_%.cpp quan_data.h quan_xxhash.h src/common/data.h src/common/filter.h $(TFILE)
	$(CXX) -o $@ -c $< $(CXXFLAG) $(IFLAG)
	
obj/ase_%.o: ase_%.cpp ase_data.h src/common/data.h src/common/filter.h $(TFILE)
@@ -144,6 +181,12 @@ obj/bamstat_%.o: bamstat_%.cpp bamstat_data.h src/common/data.h src/common/filte
obj/fdensity_%.o: fdensity_%.cpp fdensity_data.h src/common/data.h src/common/filter.h $(TFILE)
	$(CXX) -o $@ -c $< $(CXXFLAG) $(IFLAG)
	
obj/rep_%.o: rep_%.cpp rep_data.h src/common/data.h src/common/filter.h $(TFILE)
	$(CXX) -o $@ -c $< $(CXXFLAG) $(IFLAG)
	
obj/gwas_%.o: gwas_%.cpp gwas_data.h src/common/data.h src/common/filter.h $(TFILE)
	$(CXX) -o $@ -c $< $(CXXFLAG) $(IFLAG)
	
clean: 
	rm -f obj/*.o $(BFILE)

@@ -189,4 +232,10 @@ clean-bamstat:
clean-fdensity:
	rm -f obj/fdensity_*.o $(BFILE)
		
clean-rep:
	rm -f obj/rep_*.o $(BFILE)
		
clean-gwas:
	rm -f obj/gwas_*.o $(BFILE)
		
		
 No newline at end of file
+3 −3
Original line number Diff line number Diff line
@@ -77,7 +77,7 @@ public:
		for (set < unsigned int >::iterator itNM = i_nonmissing.begin(); itNM != i_nonmissing.end() ; ++itNM) {
			float value;
			std::istringstream in(covariate[*itNM]);
			if (!(in >> value)) {
			if (!(in >> value) || in.rdbuf()->in_avail() != 0) {
				factors.insert(covariate[*itNM]);
				isAlphabetic = true;
			} else isNumeric = true;
@@ -88,12 +88,12 @@ public:
		vector < vector < float > > additional_hcov;
		if (factors.size() == 0) {
			additional_hcov = vector < vector < float > > (1, vector < float > (n_samples, 0.0));
			for (int i = 0 ; i < covariate.size() ; i++) additional_hcov[0][i] = std::stof(covariate[i]);
			for (int i = 0 ; i < covariate.size() ; i++) if (i_nonmissing.count(i)) additional_hcov[0][i] = std::stof(covariate[i]);
		} else if (factors.size() > 1) {
			factors.erase(factors.begin());
			for (set < string > ::iterator itF = factors.begin(); itF != factors.end() ; itF++) {
				additional_hcov.push_back(vector < float > (n_samples, 0.0));
				for (int i = 0 ; i < n_samples ; i++) additional_hcov.back()[i] = (covariate[i] == (*itF));
				for (int i = 0 ; i < n_samples ; i++) if (i_nonmissing.count(i)) additional_hcov.back()[i] = (covariate[i] == (*itF));
			}
		} else return COV_DROP;

+1 −1
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ public:
		float n;
		std::istringstream in(str);
		if (!(in >> n)) return false;
		return true;
		return in.rdbuf()->in_avail() == 0;
	}

	template < class T >
+14 −4
Original line number Diff line number Diff line
@@ -27,6 +27,8 @@
#include "mode_union/union_data.h"
#include "mode_bamstat/bamstat_data.h"
#include "mode_fdensity/fdensity_data.h"
#include "mode_rep/rep_data.h"
#include "mode_gwas/gwas_data.h"

void printModes(){
    vrb.ctitle("Usage:");
@@ -47,6 +49,8 @@ void printModes(){
    vrb.print("  extract   Data extraction mode");
    vrb.print("  quan      Quantification mode");
    vrb.print("  ase       Measure allelic imbalance at every het genotype");
    vrb.print("  rep       Replicate QTL associations into independent data set");
    vrb.print("  gwas      GWAS tests");
}

int main(int argc, char ** argv) {
@@ -69,7 +73,7 @@ int main(int argc, char ** argv) {
	vrb.bullet("Webpage : https://qtltools.github.io/qtltools/");
	vrb.bullet("Version : " + string(QTLTOOLS_VERSION));
	vrb.bullet("Date    : " + running_timer.date());
	if (!match_mode) vrb.bullet("Citation: A complete tool set for molecular QTL discovery and analysis, https://doi.org/10.1101/068635");
	if (!match_mode) vrb.bullet("Citation: A complete tool set for molecular QTL discovery and analysis, https://doi.org/10.1038/ncomms15452");
	else vrb.bullet("Citation: MBV; a method to solve sample mislabeling and detect technical bias in large combined genotype and sequencing assay data sets");

	//4. Switch mode
@@ -111,7 +115,7 @@ int main(int argc, char ** argv) {
    else if (strcmp(argv[1], "rtc-union") == 0) union_main(args);

    //5.11. QUANTIFICATION mode
    else if (strcmp(argv[1], "quan") == 0) quan_main(args);
    else if (strcmp(argv[1], "quan") == 0) quan2_main(args);

    //5.12. ASE mode
    else if (strcmp(argv[1], "ase") == 0) ase_main(args);
@@ -122,7 +126,13 @@ int main(int argc, char ** argv) {
    //5.14. FDENSITY mode
    else if (strcmp(argv[1], "fdensity") == 0) fdensity_main(args);

	//5.15. UNRECOGNIZED mode
    //5.15. REPLICATION mode
    else if (strcmp(argv[1], "rep") == 0) rep_main(args);

    //5.16. GWAS mode
    else if (strcmp(argv[1], "gwas") == 0) gwas_main(args);

	//5.17. UNRECOGNIZED mode
    else if (strcmp(argv[1], "--help") == 0) {
        printModes();
        exit(EXIT_SUCCESS);
+1 −1
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@
#include "otools.h"
#include "filter.h"

#define QTLTOOLS_VERSION "1.1"
#define QTLTOOLS_VERSION "1.2"

class data {
public:
Loading