fix-makefiles-to-handle-lib-debian-way-of-doing-things
diff --git a/Makefile b/Makefile
index 7965ffa..1bcb3c5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,11 @@
 CXX = g++
-MSTOOLKIT = MSToolkit
 COMETSEARCH = CometSearch
-override CXXFLAGS += -O3 -Wall -Wformat-security -Wextra -static -Wno-char-subscripts -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I$(MSTOOLKIT)/include -I$(COMETSEARCH)
-EXECNAME = comet.exe
+
+# add -DGCC for mzParser.h not to complain.
+override CXXFLAGS += -O3 -Wall -Wformat-security -Wextra -Wno-char-subscripts -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DGCC -I/usr/include/libmstoolkit -I$(COMETSEARCH) -L.
+
+EXECNAME = comet-ms
+
 OBJS = Comet.o
 DEPS = CometSearch/CometData.h CometSearch/CometPreprocess.h CometSearch/CometWriteOut.h CometSearch/CometWriteSqt.h CometSearch/OSSpecificThreading.h CometSearch/CometMassSpecUtils.h CometSearch/CometSearch.h CometSearch/CometWritePepXML.h CometSearch/CometWriteTxt.h CometSearch/Threading.h CometSearch/CometPostAnalysis.h CometSearch/CometSearchManager.h CometSearch/CometWritePercolator.h CometSearch/Common.h CometSearch/ThreadPool.h CometSearch/CometMassSpecUtils.cpp CometSearch/CometSearch.cpp CometSearch/CometWritePepXML.cpp CometSearch/CometWriteTxt.cpp CometSearch/CometPostAnalysis.cpp CometSearch/CometSearchManager.cpp CometSearch/CometWritePercolator.cpp CometSearch/Threading.cpp CometSearch/CometPreprocess.cpp CometSearch/CometWriteOut.cpp CometSearch/CometWriteSqt.cpp
 
@@ -12,13 +15,16 @@ ifdef MSYSTEM
    LIBS += -lws2_32
 endif
 
-comet.exe: $(OBJS)
-	cd MSToolkit ; make ; cd ../CometSearch; make
-	${CXX} $(CXXFLAGS) $(OBJS) $(LIBPATHS) $(LIBS) -o ${EXECNAME}
+comet-ms: $(OBJS)
+	cd CometSearch && make
+
+#	The command below will use the libcometsearch static library and then use all the other ones as dynamically linked shared objects (so files).
+	${CXX} $(OBJS) $(LDFLAGS) -Wl,-Bstatic -LCometSearch -lcometsearch -Wl,-Bdynamic -lmstoolkitlite -lstdc++ -lm -lpthread -ldl -lhdf5_serial -lzip -lsqlite3 -lexpat -o ${EXECNAME}
 
 Comet.o: Comet.cpp $(DEPS)
 	${CXX} ${CXXFLAGS} Comet.cpp -c
 
 clean:
 	rm -f *.o ${EXECNAME}
-	cd MSToolkit ; make clean; cd ../CometSearch; make clean
+#	cd MSToolkit ; make clean; cd ../CometSearch; make clean
+	cd CometSearch; make clean
diff --git a/CometSearch/Makefile b/CometSearch/Makefile
index 9212d31..e68dc78 100644
--- a/CometSearch/Makefile
+++ b/CometSearch/Makefile
@@ -1,10 +1,13 @@
 CXX = g++
-MSTOOLKIT = ../MSToolkit
-override CXXFLAGS += -O3 -Wall -Wformat-security -Wextra -static -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I. -I$(MSTOOLKIT)/include
+GCC = gcc
+
+# Compile all the files with the -static flag as the object files will be used to craft a static library.
+override CXXFLAGS += -O3 -Wall -Wformat-security -Wextra -static -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DGCC -I. -I/usr/include/libmstoolkit
 
 COMETSEARCH = Threading.o CometInterfaces.o CometSearch.o CometPreprocess.o CometPostAnalysis.o CometMassSpecUtils.o CometWriteOut.o CometWriteSqt.o CometWritePepXML.o CometWritePercolator.o CometWriteTxt.o CometSearchManager.o
 
 all:  $(COMETSEARCH)
+#	Create the static link libray that's going to be used to build comet-ms.
 	ar rcs libcometsearch.a $(COMETSEARCH)
 
 clean:
