Index: src/Actions/unittests/Makefile.am
===================================================================
--- src/Actions/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Actions/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -25,4 +25,5 @@
 
 ACTIONLIBS = \
+	libUnitTest.la \
 	../libMolecuilderUI.la
 if CONDJOBMARKET
@@ -33,5 +34,5 @@
 # note that DummyUI inherits Dialog which depends on boost/file_system ...
 
-ActionRegistryUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ActionRegistryUnitTest_SOURCES = \
 	../Actions/unittests/ActionRegistryUnitTest.cpp \
 	../Actions/unittests/ActionRegistryUnitTest.hpp \
@@ -40,7 +41,8 @@
 	../Parameters/unittests/stubs/BoxVectorValidatorStub.cpp \
 	../Parameters/unittests/stubs/TimeStepPresentValidatorStub.cpp
-ActionRegistryUnitTest_LDADD = ${ACTIONLIBS}
+ActionRegistryUnitTest_LDADD = ${ACTIONLIBS} \
+	$(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS)
 
-ActionSequenceUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ActionSequenceUnitTest_SOURCES = \
 	../Actions/unittests/ActionSequenceUnitTest.cpp \
 	../Actions/unittests/ActionSequenceUnitTest.hpp \
@@ -55,10 +57,10 @@
 	$(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS)
 
-AtomsCalculationUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AtomsCalculationUnitTest_SOURCES = \
 	../Actions/unittests/AtomsCalculationUnitTest.cpp \
 	../Actions/unittests/AtomsCalculationUnitTest.hpp
 AtomsCalculationUnitTest_LDADD = ${ACTIONLIBS}
 
-ManipulateAtomsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ManipulateAtomsUnitTest_SOURCES = \
 	../Actions/unittests/ManipulateAtomsUnitTest.cpp \
 	../Actions/unittests/ManipulateAtomsUnitTest.hpp \
Index: src/Analysis/unittests/Makefile.am
===================================================================
--- src/Analysis/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Analysis/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -28,4 +28,5 @@
 
 ANALYSISLIBS = \
+	libUnitTest.la \
 	../libMolecuilderAnalysis.la \
 	../libMolecuilderUI.la \
@@ -40,25 +41,25 @@
 	$(BOOST_LIB)
 
-AnalysisBondsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AnalysisBondsUnitTest_SOURCES = \
 	../Analysis/unittests/AnalysisBondsUnitTest.cpp \
 	../Analysis/unittests/AnalysisBondsUnitTest.hpp
 AnalysisBondsUnitTest_LDADD = ${ANALYSISLIBS}
 
-AnalysisCorrelationToPointUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AnalysisCorrelationToPointUnitTest_SOURCES = \
 	../Analysis/unittests/AnalysisCorrelationToPointUnitTest.cpp \
 	../Analysis/unittests/AnalysisCorrelationToPointUnitTest.hpp
 AnalysisCorrelationToPointUnitTest_LDADD = ${ANALYSISLIBS}
 
-AnalysisCorrelationToSurfaceUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AnalysisCorrelationToSurfaceUnitTest_SOURCES = \
 	../Analysis/unittests/AnalysisCorrelationToSurfaceUnitTest.cpp \
 	../Analysis/unittests/AnalysisCorrelationToSurfaceUnitTest.hpp
 AnalysisCorrelationToSurfaceUnitTest_LDADD = ${ANALYSISLIBS}
 
-AnalysisPairCorrelationUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AnalysisPairCorrelationUnitTest_SOURCES = \
 	../Analysis/unittests/AnalysisPairCorrelationUnitTest.cpp \
 	../Analysis/unittests/AnalysisPairCorrelationUnitTest.hpp
 AnalysisPairCorrelationUnitTest_LDADD = ${ANALYSISLIBS}
 
-CountBondsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+CountBondsUnitTest_SOURCES = \
 	../Analysis/unittests/CountBondsUnitTest.cpp \
 	../Analysis/unittests/CountBondsUnitTest.hpp
Index: src/Atom/unittests/Makefile.am
===================================================================
--- src/Atom/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Atom/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -21,4 +21,5 @@
 
 ATOMTESTLIBS = \
+	libUnitTest.la \
 	../libMolecuilderUI.la
 ATOMTESTLIBS += \
@@ -27,5 +28,5 @@
 	$(BOOST_LIB)
 
-AtomObserverUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AtomObserverUnitTest_SOURCES = \
 	../Atom/unittests/AtomObserverUnitTest.cpp \
 	../Atom/unittests/AtomObserverUnitTest.hpp \
@@ -34,5 +35,5 @@
 AtomObserverUnitTest_LDADD = ${ATOMTESTLIBS}
 
-CopyAtomsInterfaceUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+CopyAtomsInterfaceUnitTest_SOURCES = \
 	../Atom/unittests/CopyAtomsInterfaceUnitTest.cpp \
 	../Atom/unittests/CopyAtomsInterfaceUnitTest.hpp
Index: src/Descriptors/unittests/Makefile.am
===================================================================
--- src/Descriptors/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Descriptors/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -19,4 +19,5 @@
 
 DESCRIPTORLIBS = \
+	libUnitTest.la \
 	../libMolecuilderUI.la
 if CONDJOBMARKET
@@ -30,10 +31,10 @@
 
 
-AtomDescriptorUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AtomDescriptorUnitTest_SOURCES = \
 	../Descriptors/unittests/AtomDescriptorUnitTest.cpp \
 	../Descriptors/unittests/AtomDescriptorUnitTest.hpp
 AtomDescriptorUnitTest_LDADD = ${DESCRIPTORLIBS}
 
-MoleculeDescriptorTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MoleculeDescriptorTest_SOURCES = \
 	../Descriptors/unittests/MoleculeDescriptorUnitTest.cpp \
 	../Descriptors/unittests/MoleculeDescriptorUnitTest.hpp
Index: src/Element/unittests/Makefile.am
===================================================================
--- src/Element/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Element/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -22,20 +22,22 @@
 
 ELEMENTLIBS = \
+	libUnitTest.la \
 	../libMolecuilderElement.la \
 	../libMolecuilderHelpers.la \
+	$(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \
 	$(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
 	${CodePatterns_LIBS}
 
-ElementUnitTest_SOURCES =   $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ElementUnitTest_SOURCES = \
   ../Element/unittests/ElementUnitTest.cpp \
   ../Element/unittests/ElementUnitTest.hpp
 ElementUnitTest_LDADD = $(ELEMENTLIBS)
 
-IonUnitTest_SOURCES =   $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IonUnitTest_SOURCES = \
   ../Element/unittests/IonUnitTest.cpp \
   ../Element/unittests/IonUnitTest.hpp
 IonUnitTest_LDADD = $(ELEMENTLIBS)
 
-PeriodentafelUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+PeriodentafelUnitTest_SOURCES = \
 	../Element/unittests/PeriodentafelUnitTest.cpp \
 	../Element/unittests/PeriodentafelUnitTest.hpp
Index: src/Filling/unittests/Makefile.am
===================================================================
--- src/Filling/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Filling/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -34,4 +34,5 @@
 
 FILLINGLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFilling.la \
 	../libMolecuilderUI.la \
@@ -46,35 +47,35 @@
 	$(BOOST_LIB)
 
-ClusterUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ClusterUnitTest_SOURCES = \
 	../Filling/unittests/ClusterUnitTest.cpp \
 	../Filling/unittests/ClusterUnitTest.hpp
 ClusterUnitTest_LDADD = $(FILLINGLIBS)
 
-FillerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FillerUnitTest_SOURCES = \
 	../Filling/unittests/FillerUnitTest.cpp \
 	../Filling/unittests/FillerUnitTest.hpp
 FillerUnitTest_LDADD = $(FILLINGLIBS)
 
-IsInsideDomain_FillPredicateUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IsInsideDomain_FillPredicateUnitTest_SOURCES = \
 	../Filling/unittests/IsInsideDomain_FillPredicateUnitTest.cpp \
 	../Filling/unittests/IsInsideDomain_FillPredicateUnitTest.hpp
 IsInsideDomain_FillPredicateUnitTest_LDADD = $(FILLINGLIBS)
 
-IsInsideSurface_FillPredicateUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IsInsideSurface_FillPredicateUnitTest_SOURCES = \
 	../Filling/unittests/IsInsideSurface_FillPredicateUnitTest.cpp \
 	../Filling/unittests/IsInsideSurface_FillPredicateUnitTest.hpp
 IsInsideSurface_FillPredicateUnitTest_LDADD = $(FILLINGLIBS)
 
-IsValidInDomain_FillPredicateUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IsValidInDomain_FillPredicateUnitTest_SOURCES = \
 	../Filling/unittests/IsValidInDomain_FillPredicateUnitTest.cpp \
 	../Filling/unittests/IsValidInDomain_FillPredicateUnitTest.hpp
 IsValidInDomain_FillPredicateUnitTest_LDADD = $(FILLINGLIBS)
 
-IsVoidNode_FillPredicateUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IsVoidNode_FillPredicateUnitTest_SOURCES = \
 	../Filling/unittests/IsVoidNode_FillPredicateUnitTest.cpp \
 	../Filling/unittests/IsVoidNode_FillPredicateUnitTest.hpp
 IsVoidNode_FillPredicateUnitTest_LDADD = $(FILLINGLIBS)
 
-Ops_FillPredicateUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+Ops_FillPredicateUnitTest_SOURCES = \
 	../Filling/unittests/Ops_FillPredicateUnitTest.cpp \
 	../Filling/unittests/Ops_FillPredicateUnitTest.hpp
Index: src/Fragmentation/Exporters/unittests/Makefile.am
===================================================================
--- src/Fragmentation/Exporters/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Fragmentation/Exporters/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -22,9 +22,10 @@
 
 FRAGMENTATIONEXPORTERSLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFragmentation.la \
 	${CodePatterns_LIBS} \
 	$(BOOST_LIB)
 
-HydrogenPoolUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+HydrogenPoolUnitTest_SOURCES = \
 	../Fragmentation/Exporters/unittests/HydrogenPoolUnitTest.cpp \
 	../Fragmentation/Exporters/unittests/HydrogenPoolUnitTest.hpp
@@ -33,5 +34,5 @@
 	${FRAGMENTATIONEXPORTERSLIBS}
 	
-SaturatedFragmentUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SaturatedFragmentUnitTest_SOURCES = \
 	../Fragmentation/Exporters/unittests/SaturatedFragmentUnitTest.cpp \
 	../Fragmentation/Exporters/unittests/SaturatedFragmentUnitTest.hpp
@@ -41,5 +42,5 @@
 	${FRAGMENTATIONEXPORTERSLIBS}
 
-SaturationDistanceMaximizerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SaturationDistanceMaximizerUnitTest_SOURCES = \
 	../Fragmentation/Exporters/unittests/SaturationDistanceMaximizerUnitTest.cpp \
 	../Fragmentation/Exporters/unittests/SaturationDistanceMaximizerUnitTest.hpp \
Index: src/Fragmentation/Homology/unittests/Makefile.am
===================================================================
--- src/Fragmentation/Homology/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Fragmentation/Homology/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -25,4 +25,5 @@
 
 FRAGMENTATIONHOMOLOGYLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFragmentationSetValues.la \
 	../libMolecuilderFragmentation.la \
@@ -33,15 +34,15 @@
 	$(BOOST_LIB)
 
-FragmentEdgeUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FragmentEdgeUnitTest_SOURCES = \
 	../Fragmentation/Homology/unittests/FragmentEdgeUnitTest.cpp \
 	../Fragmentation/Homology/unittests/FragmentEdgeUnitTest.hpp
 FragmentEdgeUnitTest_LDADD = ${FRAGMENTATIONHOMOLOGYLIBS}
 
-FragmentNodeUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FragmentNodeUnitTest_SOURCES = \
 	../Fragmentation/Homology/unittests/FragmentNodeUnitTest.cpp \
 	../Fragmentation/Homology/unittests/FragmentNodeUnitTest.hpp
 FragmentNodeUnitTest_LDADD = ${FRAGMENTATIONHOMOLOGYLIBS}
 	
-HomologyContainerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+HomologyContainerUnitTest_SOURCES = \
 	../Fragmentation/Homology/unittests/HomologyContainerUnitTest.cpp \
 	../Fragmentation/Homology/unittests/HomologyContainerUnitTest.hpp \
@@ -54,5 +55,5 @@
 	$(BOOST_LIB)
 
-HomologyGraphUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+HomologyGraphUnitTest_SOURCES = \
 	../Fragmentation/Homology/unittests/HomologyGraphUnitTest.cpp \
 	../Fragmentation/Homology/unittests/HomologyGraphUnitTest.hpp
Index: src/Fragmentation/Summation/Containers/unittests/Makefile.am
===================================================================
--- src/Fragmentation/Summation/Containers/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Fragmentation/Summation/Containers/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -17,4 +17,5 @@
 
 FRAGMENTATIONCONTAINERLIBS = \
+  libUnitTest.la \
   ../libMolecuilderFragmentationSummation.la \
   $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
@@ -25,5 +26,5 @@
 MPQCDataUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl
 MPQCDataUnitTest_CPPFLAGS = $(AM_CPPFLAGS) ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS}
-MPQCDataUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MPQCDataUnitTest_SOURCES = \
   ../Fragmentation/Summation/Containers/unittests/MPQCDataUnitTest.cpp \
   ../Fragmentation/Summation/Containers/unittests/MPQCDataUnitTest.hpp
Index: src/Fragmentation/Summation/SetValues/unittests/Makefile.am
===================================================================
--- src/Fragmentation/Summation/SetValues/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Fragmentation/Summation/SetValues/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -31,9 +31,10 @@
 
 FRAGMENTATIONSETVALUESLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFragmentationSetValues.la \
 	${CodePatterns_LIBS} \
 	$(BOOST_LIB)
 
-EigenvaluesUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+EigenvaluesUnitTest_SOURCES = \
 	../Fragmentation/Summation/SetValues/unittests/EigenvaluesUnitTest.cpp \
 	../Fragmentation/Summation/SetValues/unittests/EigenvaluesUnitTest.hpp
@@ -42,5 +43,5 @@
 	$(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS)
 
-FragmentUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FragmentUnitTest_SOURCES = \
 	../Fragmentation/Summation/SetValues/unittests/FragmentUnitTest.cpp \
 	../Fragmentation/Summation/SetValues/unittests/FragmentUnitTest.hpp
@@ -49,20 +50,20 @@
 	$(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS)
 
-HistogramUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+HistogramUnitTest_SOURCES = \
 	../Fragmentation/Summation/SetValues/unittests/HistogramUnitTest.cpp \
 	../Fragmentation/Summation/SetValues/unittests/HistogramUnitTest.hpp
 HistogramUnitTest_LDADD = ${FRAGMENTATIONSETVALUESLIBS}
 
-IndexedVectorsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IndexedVectorsUnitTest_SOURCES = \
 	../Fragmentation/Summation/SetValues/unittests/IndexedVectorsUnitTest.cpp \
 	../Fragmentation/Summation/SetValues/unittests/IndexedVectorsUnitTest.hpp
 IndexedVectorsUnitTest_LDADD = ${FRAGMENTATIONSETVALUESLIBS}
 
-SamplingGridPropertiesUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SamplingGridPropertiesUnitTest_SOURCES = \
 	../Fragmentation/Summation/SetValues/unittests/SamplingGridPropertiesUnitTest.cpp \
 	../Fragmentation/Summation/SetValues/unittests/SamplingGridPropertiesUnitTest.hpp
 SamplingGridPropertiesUnitTest_LDADD = ${FRAGMENTATIONSETVALUESLIBS}
 
-SamplingGridUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SamplingGridUnitTest_SOURCES = \
 	../Fragmentation/Summation/SetValues/unittests/SamplingGridUnitTest.cpp \
 	../Fragmentation/Summation/SetValues/unittests/SamplingGridUnitTest.hpp
Index: src/Fragmentation/Summation/unittests/Makefile.am
===================================================================
--- src/Fragmentation/Summation/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Fragmentation/Summation/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -34,4 +34,5 @@
 
 FRAGMENTATIONSUMMATIONLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFragmentationSummation.la \
 	${CodePatterns_LIBS} \
@@ -39,10 +40,10 @@
 
 
-IndexSetUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IndexSetUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/IndexSetUnitTest.cpp \
 	../Fragmentation/Summation/unittests/IndexSetUnitTest.hpp
 IndexSetUnitTest_LDADD = ${FRAGMENTATIONSUMMATIONLIBS}
 
-IndexSetContainerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+IndexSetContainerUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/IndexSetContainerUnitTest.cpp \
 	../Fragmentation/Summation/unittests/IndexSetContainerUnitTest.hpp
@@ -53,5 +54,5 @@
 	${FRAGMENTATIONSUMMATIONLIBS}
 
-OrthogonalSummationUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+OrthogonalSummationUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/OrthogonalSummationUnitTest.cpp \
 	../Fragmentation/Summation/unittests/OrthogonalSummationUnitTest.hpp \
@@ -60,5 +61,5 @@
 OrthogonalSummationUnitTest_LDADD = ${FRAGMENTATIONSUMMATIONLIBS}
 
-SetValueUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SetValueUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/SetValueUnitTest.cpp \
 	../Fragmentation/Summation/unittests/SetValueUnitTest.hpp \
@@ -67,15 +68,15 @@
 SetValueUnitTest_LDADD = ${FRAGMENTATIONSUMMATIONLIBS}
 
-SetValueMapUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SetValueMapUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/SetValueMapUnitTest.cpp \
 	../Fragmentation/Summation/unittests/SetValueMapUnitTest.hpp
 SetValueMapUnitTest_LDADD = ${FRAGMENTATIONSUMMATIONLIBS}
 
-SubsetMapUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SubsetMapUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/SubsetMapUnitTest.cpp \
 	../Fragmentation/Summation/unittests/SubsetMapUnitTest.hpp
 SubsetMapUnitTest_LDADD = ${FRAGMENTATIONSUMMATIONLIBS}
 
-SummationUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SummationUnitTest_SOURCES = \
 	../Fragmentation/Summation/unittests/SummationUnitTest.cpp \
 	../Fragmentation/Summation/unittests/SummationUnitTest.hpp \
Index: src/Fragmentation/unittests/Makefile.am
===================================================================
--- src/Fragmentation/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Fragmentation/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -19,4 +19,5 @@
 
 FRAGMENTATIONLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFragmentation.la \
 	../libMolecuilderFragmentation_KeysetsContainer.la \
@@ -26,10 +27,10 @@
 
 
-KeySetsContainerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+KeySetsContainerUnitTest_SOURCES = \
 	../Fragmentation/unittests/KeySetsContainerUnitTest.cpp \
 	../Fragmentation/unittests/KeySetsContainerUnitTest.hpp
 KeySetsContainerUnitTest_LDADD = ${FRAGMENTATIONLIBS}
 
-MatrixContainerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MatrixContainerUnitTest_SOURCES = \
 	../Fragmentation/unittests/MatrixContainerUnitTest.cpp \
 	../Fragmentation/unittests/MatrixContainerUnitTest.hpp
Index: src/FunctionApproximation/unittests/Makefile.am
===================================================================
--- src/FunctionApproximation/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/FunctionApproximation/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -19,4 +19,5 @@
 
 FUNCTIONAPPROXIMATIONLIBS = \
+	libUnitTest.la \
 	../libMolecuilderFunctionApproximation.la \
 	$(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
@@ -25,5 +26,5 @@
 	$(BOOST_LIB)
 
-ExtractorsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ExtractorsUnitTest_SOURCES = \
 	../FunctionApproximation/unittests/ExtractorsUnitTest.cpp \
 	../FunctionApproximation/unittests/ExtractorsUnitTest.hpp
@@ -32,5 +33,5 @@
 	${FUNCTIONAPPROXIMATIONLIBS}
 
-FunctionArgumentUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FunctionArgumentUnitTest_SOURCES = \
 	../FunctionApproximation/unittests/FunctionArgumentUnitTest.cpp \
 	../FunctionApproximation/unittests/FunctionArgumentUnitTest.hpp
Index: src/Graph/unittests/Makefile.am
===================================================================
--- src/Graph/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Graph/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -20,4 +20,5 @@
 
 GRAPHLIBS = \
+	libUnitTest.la \
 	../libMolecuilderUI.la \
 	../libMolecuilderGraph.la
@@ -32,10 +33,10 @@
 
 
-AdjacencyListUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AdjacencyListUnitTest_SOURCES = \
 	../Graph/unittests/AdjacencyListUnitTest.cpp \
 	../Graph/unittests/AdjacencyListUnitTest.hpp
 AdjacencyListUnitTest_LDADD = ${ALLLIBS}
 
-BondGraphUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+BondGraphUnitTest_SOURCES = \
 	../Graph/unittests/BondGraphUnitTest.cpp \
 	../Graph/unittests/BondGraphUnitTest.hpp
Index: src/Jobs/unittests/Makefile.am
===================================================================
--- src/Jobs/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Jobs/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -17,4 +17,5 @@
 
 JOBSLIBS = \
+	libUnitTest.la \
 	../libMolecuilderJobs.la \
 	../libMolecuilderFragmentationContainers.la \
@@ -28,5 +29,5 @@
 MPQCCommandJobUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl
 MPQCCommandJobUnitTest_CPPFLAGS = $(AM_CPPFLAGS) ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS} ${JobMarket_CFLAGS}
-MPQCCommandJobUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MPQCCommandJobUnitTest_SOURCES = \
   ../Jobs/unittests/MPQCCommandJobUnitTest.cpp \
   ../Jobs/unittests/MPQCCommandJobUnitTest.hpp
Index: src/LinkedCell/unittests/Makefile.am
===================================================================
--- src/LinkedCell/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/LinkedCell/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -29,9 +29,10 @@
 
 LINKEDCELLLIBS = \
+	libUnitTest.la \
 	$(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
 	${CodePatterns_LIBS} \
 	$(BOOST_LIB)
 
-linkedcellUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+linkedcellUnitTest_SOURCES = \
 	../LinkedCell/unittests/linkedcellUnitTest.cpp \
 	../LinkedCell/unittests/linkedcellUnitTest.hpp
@@ -46,5 +47,5 @@
 	$(LINKEDCELLLIBS)
 
-LinkedCellUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+LinkedCellUnitTest_SOURCES = \
 	../LinkedCell/unittests/LinkedCellUnitTest.cpp \
 	../LinkedCell/unittests/LinkedCellUnitTest.hpp \
@@ -54,5 +55,5 @@
 	$(LINKEDCELLLIBS)
 
-LinkedCell_ControllerUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+LinkedCell_ControllerUnitTest_SOURCES = \
 	../LinkedCell/unittests/LinkedCell_ControllerUnitTest.cpp \
 	../LinkedCell/unittests/LinkedCell_ControllerUnitTest.hpp \
@@ -71,5 +72,5 @@
 	$(LINKEDCELLLIBS)
 
-LinkedCell_ModelUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+LinkedCell_ModelUnitTest_SOURCES = \
 	../LinkedCell/unittests/LinkedCell_ModelUnitTest.cpp \
 	../LinkedCell/unittests/LinkedCell_ModelUnitTest.hpp \
@@ -85,5 +86,5 @@
 	$(LINKEDCELLLIBS)
 
-LinkedCell_ViewUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+LinkedCell_ViewUnitTest_SOURCES = \
 	../LinkedCell/unittests/LinkedCell_ViewUnitTest.cpp \
 	../LinkedCell/unittests/LinkedCell_ViewUnitTest.hpp \
Index: src/Parameters/unittests/Makefile.am
===================================================================
--- src/Parameters/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Parameters/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -29,4 +29,5 @@
 
 PARAMETERSLIBS = \
+	libUnitTest.la \
 	$(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
 	${CodePatterns_LIBS} \
@@ -34,5 +35,5 @@
 
 
-ContinuousValueTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ContinuousValueTest_SOURCES = \
 	../Parameters/unittests/ContinuousValueTest.cpp \
 	../Parameters/unittests/ContinuousValueTest.hpp \
@@ -47,5 +48,5 @@
 	$(PARAMETERSLIBS)
  
-ContinuousParameterTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ContinuousParameterTest_SOURCES = \
 	../Parameters/unittests/ContinuousParameterTest.cpp \
 	../Parameters/unittests/ContinuousParameterTest.hpp \
@@ -60,5 +61,5 @@
 	$(PARAMETERSLIBS)
  
-DiscreteValueTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+DiscreteValueTest_SOURCES = \
 	../Parameters/unittests/DiscreteValueTest.cpp \
 	../Parameters/unittests/DiscreteValueTest.hpp \
@@ -74,5 +75,5 @@
 	$(PARAMETERSLIBS)
 
-DiscreteParameterTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+DiscreteParameterTest_SOURCES = \
 	../Parameters/unittests/DiscreteParameterTest.cpp \
 	../Parameters/unittests/DiscreteParameterTest.hpp \
@@ -90,5 +91,5 @@
 	$(PARAMETERSLIBS)
 
-Ops_ValidatorTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+Ops_ValidatorTest_SOURCES = \
 	../Parameters/unittests/Ops_ValidatorTest.cpp \
 	../Parameters/unittests/Ops_ValidatorTest.hpp \
Index: src/Parser/Parameters/unittests/Makefile.am
===================================================================
--- src/Parser/Parameters/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Parser/Parameters/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -20,4 +20,5 @@
 
 PARSERPARAMETERSLIBS = \
+	libUnitTest.la \
 	$(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
 	${CodePatterns_LIBS} \
@@ -25,5 +26,5 @@
 
 
-ParameterStorageUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParameterStorageUnitTest_SOURCES = \
 	../Parser/Parameters/unittests/ParameterStorageUnitTest.cpp \
 	../Parser/Parameters/unittests/ParameterStorageUnitTest.hpp \
@@ -41,5 +42,5 @@
 	$(PARSERPARAMETERSLIBS)
 
-StringParameterUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+StringParameterUnitTest_SOURCES = \
 	../Parser/Parameters/unittests/StringParameterUnitTest.cpp \
 	../Parser/Parameters/unittests/StringParameterUnitTest.hpp \
Index: src/Parser/unittests/Makefile.am
===================================================================
--- src/Parser/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Parser/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -39,4 +39,5 @@
 
 PARSERLIBS = \
+	libUnitTest.la \
 	../libMolecuilderUI.la
 if CONDJOBMARKET
@@ -50,40 +51,40 @@
 
 
-ParserMpqcUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserMpqcUnitTest_SOURCES = \
 	../Parser/unittests/ParserMpqcUnitTest.cpp \
 	../Parser/unittests/ParserMpqcUnitTest.hpp
 ParserMpqcUnitTest_LDADD = ${PARSERLIBS}
 
-ParserPcpUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserPcpUnitTest_SOURCES = \
 	../Parser/unittests/ParserPcpUnitTest.cpp \
 	../Parser/unittests/ParserPcpUnitTest.hpp
 ParserPcpUnitTest_LDADD = ${PARSERLIBS}
 
-ParserPdbUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserPdbUnitTest_SOURCES = \
 	../Parser/unittests/ParserPdbUnitTest.cpp \
 	../Parser/unittests/ParserPdbUnitTest.hpp
 ParserPdbUnitTest_LDADD = ${PARSERLIBS}
 
-ParserPsi3UnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserPsi3UnitTest_SOURCES = \
 	../Parser/unittests/ParserPsi3UnitTest.cpp \
 	../Parser/unittests/ParserPsi3UnitTest.hpp
 ParserPsi3UnitTest_LDADD = ${PARSERLIBS}
 
-ParserTremoloUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserTremoloUnitTest_SOURCES = \
 	../Parser/unittests/ParserTremoloUnitTest.cpp \
 	../Parser/unittests/ParserTremoloUnitTest.hpp
 ParserTremoloUnitTest_LDADD = ${PARSERLIBS}
 
-ParserTremolo_ElementKeysUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserTremolo_ElementKeysUnitTest_SOURCES = \
 	../Parser/unittests/ParserTremolo_ElementKeysUnitTest.cpp \
 	../Parser/unittests/ParserTremolo_ElementKeysUnitTest.hpp
 ParserTremolo_ElementKeysUnitTest_LDADD = ${PARSERLIBS}
 
-ParserXmlUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserXmlUnitTest_SOURCES = \
 	../Parser/unittests/ParserXmlUnitTest.cpp \
 	../Parser/unittests/ParserXmlUnitTest.hpp
 ParserXmlUnitTest_LDADD = ${PARSERLIBS}
 
-ParserXyzUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ParserXyzUnitTest_SOURCES = \
 	../Parser/unittests/ParserXyzUnitTest.cpp \
 	../Parser/unittests/ParserXyzUnitTest.hpp
Index: src/Potentials/Specifics/unittests/Makefile.am
===================================================================
--- src/Potentials/Specifics/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Potentials/Specifics/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -37,4 +37,5 @@
 
 POTENTIALSSPECIFICSLIBS = \
+	libUnitTest.la \
 	../libMolecuilderPotentials.la \
 	../libMolecuilderFragmentation.la \
@@ -48,40 +49,40 @@
 	$(BOOST_LIB)
 
-ConstantPotentialUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ConstantPotentialUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/ConstantPotentialUnitTest.cpp \
 	../Potentials/Specifics/unittests/ConstantPotentialUnitTest.hpp
 ConstantPotentialUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-FourBodyPotential_ImproperUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FourBodyPotential_ImproperUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/FourBodyPotential_ImproperUnitTest.cpp \
 	../Potentials/Specifics/unittests/FourBodyPotential_ImproperUnitTest.hpp
 FourBodyPotential_ImproperUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-FourBodyPotential_TorsionUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+FourBodyPotential_TorsionUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/FourBodyPotential_TorsionUnitTest.cpp \
 	../Potentials/Specifics/unittests/FourBodyPotential_TorsionUnitTest.hpp
 FourBodyPotential_TorsionUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-ManyBodyPotential_TersoffUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ManyBodyPotential_TersoffUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/ManyBodyPotential_TersoffUnitTest.cpp \
 	../Potentials/Specifics/unittests/ManyBodyPotential_TersoffUnitTest.hpp
 ManyBodyPotential_TersoffUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-PairPotential_HarmonicUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+PairPotential_HarmonicUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/PairPotential_HarmonicUnitTest.cpp \
 	../Potentials/Specifics/unittests/PairPotential_HarmonicUnitTest.hpp
 PairPotential_HarmonicUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-PairPotential_LennardJonesUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+PairPotential_LennardJonesUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/PairPotential_LennardJonesUnitTest.cpp \
 	../Potentials/Specifics/unittests/PairPotential_LennardJonesUnitTest.hpp
 PairPotential_LennardJonesUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-PairPotential_MorseUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+PairPotential_MorseUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/PairPotential_MorseUnitTest.cpp \
 	../Potentials/Specifics/unittests/PairPotential_MorseUnitTest.hpp
 PairPotential_MorseUnitTest_LDADD = ${POTENTIALSSPECIFICSLIBS}
 
-ThreeBodyPotential_AngleUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ThreeBodyPotential_AngleUnitTest_SOURCES = \
 	../Potentials/Specifics/unittests/ThreeBodyPotential_AngleUnitTest.cpp \
 	../Potentials/Specifics/unittests/ThreeBodyPotential_AngleUnitTest.hpp
Index: src/Potentials/unittests/Makefile.am
===================================================================
--- src/Potentials/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Potentials/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -22,4 +22,5 @@
 
 POTENTIALSLIBS = \
+	libUnitTest.la \
 	../libMolecuilderPotentials.la \
 	$(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
@@ -28,8 +29,9 @@
 	$(BOOST_LIB)
 
-CompoundPotentialUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+CompoundPotentialUnitTest_SOURCES = \
 	../Potentials/unittests/CompoundPotentialUnitTest.cpp \
 	../Potentials/unittests/CompoundPotentialUnitTest.hpp
 CompoundPotentialUnitTest_LDADD = \
+	libUnitTest.la \
 	../libMolecuilderPotentials.la \
 	../libMolecuilderFragmentation.la \
@@ -43,5 +45,5 @@
 	$(BOOST_LIB)
 
-PartialNucleiChargeFitterUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+PartialNucleiChargeFitterUnitTest_SOURCES = \
 	../Potentials/unittests/PartialNucleiChargeFitterUnitTest.cpp \
 	../Potentials/unittests/PartialNucleiChargeFitterUnitTest.hpp
@@ -50,5 +52,5 @@
 	${POTENTIALSLIBS}
 
-SerializablePotentialUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+SerializablePotentialUnitTest_SOURCES = \
 	../Potentials/unittests/SerializablePotentialUnitTest.cpp \
 	../Potentials/unittests/SerializablePotentialUnitTest.hpp \
Index: src/RandomNumbers/unittests/Makefile.am
===================================================================
--- src/RandomNumbers/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/RandomNumbers/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -28,24 +28,25 @@
 
 RANDOMNUMBERLIBS = \
+	libUnitTest.la \
 	../libMolecuilderRandomNumbers.la \
 	${CodePatterns_LIBS} \
 	$(BOOST_LIB)
 
-RandomNumberDistributionFactoryUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+RandomNumberDistributionFactoryUnitTest_SOURCES = \
 	../RandomNumbers/unittests/RandomNumberDistributionFactoryUnitTest.cpp \
 	../RandomNumbers/unittests/RandomNumberDistributionFactoryUnitTest.hpp
 RandomNumberDistributionFactoryUnitTest_LDADD = ${RANDOMNUMBERLIBS}
 
-RandomNumberEngineFactoryUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+RandomNumberEngineFactoryUnitTest_SOURCES = \
 	../RandomNumbers/unittests/RandomNumberEngineFactoryUnitTest.cpp \
 	../RandomNumbers/unittests/RandomNumberEngineFactoryUnitTest.hpp
 RandomNumberEngineFactoryUnitTest_LDADD = ${RANDOMNUMBERLIBS}
 
-RandomNumberGeneratorFactoryUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+RandomNumberGeneratorFactoryUnitTest_SOURCES = \
 	../RandomNumbers/unittests/RandomNumberGeneratorFactoryUnitTest.cpp \
 	../RandomNumbers/unittests/RandomNumberGeneratorFactoryUnitTest.hpp
 RandomNumberGeneratorFactoryUnitTest_LDADD = ${RANDOMNUMBERLIBS}
 
-RandomNumberGeneratorUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+RandomNumberGeneratorUnitTest_SOURCES = \
 	../RandomNumbers/unittests/RandomNumberGeneratorUnitTest.cpp \
 	../RandomNumbers/unittests/RandomNumberGeneratorUnitTest.hpp
Index: src/Shapes/unittests/Makefile.am
===================================================================
--- src/Shapes/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Shapes/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -29,4 +29,5 @@
 
 SHAPELIBS = \
+	libUnitTest.la \
 	../libMolecuilderShapes.la \
 	$(top_builddir)/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \
@@ -34,5 +35,5 @@
 #	$(BOOST_LIB)
 
-BaseShapesUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+BaseShapesUnitTest_SOURCES = \
 	../Shapes/unittests/BaseShapesUnitTest.cpp \
 	../Shapes/unittests/BaseShapesUnitTest.hpp \
@@ -44,5 +45,5 @@
 BaseShapesUnitTest_LDADD = $(SHAPELIBS)
 
-ShapeFactoryUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ShapeFactoryUnitTest_SOURCES = \
 	../Shapes/unittests/ShapeFactoryUnitTest.cpp \
 	../Shapes/unittests/ShapeFactoryUnitTest.hpp \
@@ -60,5 +61,5 @@
 	$(SHAPELIBS)
 
-ShapeOpsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ShapeOpsUnitTest_SOURCES = \
 	../Shapes/unittests/ShapeOpsUnitTest.cpp \
 	../Shapes/unittests/ShapeOpsUnitTest.hpp \
@@ -70,5 +71,5 @@
 ShapeOpsUnitTest_LDADD = $(SHAPELIBS)
 
-ShapeRegistryUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ShapeRegistryUnitTest_SOURCES = \
 	../Shapes/unittests/ShapeRegistryUnitTest.cpp \
 	../Shapes/unittests/ShapeRegistryUnitTest.hpp \
@@ -80,5 +81,5 @@
 ShapeRegistryUnitTest_LDADD = $(SHAPELIBS)
 
-Shape_HomogeneousPointsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+Shape_HomogeneousPointsUnitTest_SOURCES = \
 	../Shapes/unittests/Shape_HomogeneousPointsUnitTest.cpp \
 	../Shapes/unittests/Shape_HomogeneousPointsUnitTest.hpp \
Index: src/Tesselation/unittests/Makefile.am
===================================================================
--- src/Tesselation/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/Tesselation/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -22,4 +22,5 @@
 
 TESSELATIONLIBS = \
+	libUnitTest.la \
 	../libMolecuilderUI.la \
 	../libMolecuilder.la
@@ -34,15 +35,15 @@
 
 
-TesselationUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+TesselationUnitTest_SOURCES = \
 	../Tesselation/unittests/TesselationUnitTest.cpp \
 	../Tesselation/unittests/TesselationUnitTest.hpp
 TesselationUnitTest_LDADD = ${TESSELATIONLIBS}
 
-Tesselation_BoundaryTriangleUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+Tesselation_BoundaryTriangleUnitTest_SOURCES = \
 	../Tesselation/unittests/Tesselation_BoundaryTriangleUnitTest.cpp \
 	../Tesselation/unittests/Tesselation_BoundaryTriangleUnitTest.hpp 
 Tesselation_BoundaryTriangleUnitTest_LDADD = ${TESSELATIONLIBS}
 
-Tesselation_InOutsideUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+Tesselation_InOutsideUnitTest_SOURCES = \
 	../Tesselation/unittests/Tesselation_InsideOutsideUnitTest.cpp \
 	../Tesselation/unittests/Tesselation_InsideOutsideUnitTest.hpp
Index: src/UIElements/CommandLineUI/unittests/Makefile.am
===================================================================
--- src/UIElements/CommandLineUI/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/UIElements/CommandLineUI/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -15,8 +15,9 @@
 noinst_PROGRAMS += $(UIELEMENTSCOMMANDLINEPARSERTESTS)
 
-CommandLineParser_ActionRegistry_ConsistencyUnitTest_SOURCES =  $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+CommandLineParser_ActionRegistry_ConsistencyUnitTest_SOURCES = \
   ../UIElements/CommandLineUI/unittests/CommandLineParser_ActionRegistry_ConsistencyUnitTest.cpp \
   ../UIElements/CommandLineUI/unittests/CommandLineParser_ActionRegistry_ConsistencyUnitTest.hpp
 CommandLineParser_ActionRegistry_ConsistencyUnitTest_LDADD = \
+  libUnitTest.la \
   ../libMolecuilderUI.la
 if CONDJOBMARKET
Index: src/UIElements/Menu/unittests/Makefile.am
===================================================================
--- src/UIElements/Menu/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/UIElements/Menu/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -19,4 +19,5 @@
 
 MENULIBS = \
+  libUnitTest.la \
   ../libMolecuilderUI.la
 if CONDJOBMARKET
@@ -29,5 +30,5 @@
   $(BOOST_LIB)
 
-MenuDescriptionUnitTest_SOURCES =  $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MenuDescriptionUnitTest_SOURCES = \
   ../UIElements/Menu/unittests/MenuDescriptionUnitTest.cpp \
   ../UIElements/Menu/unittests/MenuDescriptionUnitTest.hpp \
@@ -37,5 +38,5 @@
 MenuDescriptionUnitTest_LDADD = $(MENULIBS)
 
-MenuDescription_ActionRegistry_ConsistencyUnitTest_SOURCES =  $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MenuDescription_ActionRegistry_ConsistencyUnitTest_SOURCES = \
   ../UIElements/Menu/unittests/MenuDescription_ActionRegistry_ConsistencyUnitTest.cpp \
   ../UIElements/Menu/unittests/MenuDescription_ActionRegistry_ConsistencyUnitTest.hpp
Index: src/unittests/Makefile.am
===================================================================
--- src/unittests/Makefile.am	(revision 09806af7c430c059fd0504fee221f5f8ec4ef155)
+++ src/unittests/Makefile.am	(revision e9e86f755ec91600316ac1b266d68b3244700842)
@@ -7,4 +7,7 @@
 XFAIL_TESTS =
 MOSTLYCLEANFILES =
+noinst_LTLIBRARIES =
+
+#AUTOMAKE_OPTIONS = no-dependencies
 
 if CONDCPPUNIT
@@ -66,4 +69,47 @@
 endif
 
+noinst_LTLIBRARIES += libUnitTest.la
+libUnitTest_la_LDFLAGS = \
+        $(AM_LDFLAGS)
+libUnitTest_la_LIBADD =
+
+#nobase_libUnitTest_la_include_HEADERS =
+
+## Define the source file list for the "libexample-@MOLECUILDER_API_VERSION@.la"
+## target.  Note that @MOLECUILDER_API_VERSION@ is not interpreted by Automake and
+## will therefore be treated as if it were literally part of the target name,
+## and the variable name derived from that.
+## The file extension .cc is recognized by Automake, and makes it produce
+## rules which invoke the C++ compiler to produce a libtool object file (.lo)
+## from each source file.  Note that it is not necessary to list header files
+## which are already listed elsewhere in a _HEADERS variable assignment.
+libUnitTest_la_SOURCES = UnitTestMain.cpp
+
+## Instruct libtool to include ABI version information in the generated shared
+## library file (.so).  The library ABI version is defined in configure.ac, so
+## that all version information is kept in one place.
+#libUnitTest_la_LDFLAGS = -version-info $(MOLECUILDER_SO_VERSION)
+
+## The generated configuration header is installed in its own subdirectory of
+## $(libdir).  The reason for this is that the configuration information put
+## into this header file describes the target platform the installed library
+## has been built for.  Thus the file must not be installed into a location
+## intended for architecture-independent files, as defined by the Filesystem
+## Hierarchy Standard (FHS).
+## The nodist_ prefix instructs Automake to not generate rules for including
+## the listed files in the distribution on 'make dist'.  Files that are listed
+## in _HEADERS variables are normally included in the distribution, but the
+## configuration header file is generated at configure time and should not be
+## shipped with the source tarball.
+#libUnitTest_la_libincludedir = $(libdir)/MoleCuilder/include
+#nodist_libUnitTest_la_libinclude_HEADERS = $(top_builddir)/libmolecuilder_config.h
+
+## Install the generated pkg-config file (.pc) into the expected location for
+## architecture-dependent package configuration information.  Occasionally,
+## pkg-config files are also used for architecture-independent data packages,
+## in which case the correct install location would be $(datadir)/pkgconfig.
+#pkgconfigdir = $(libdir)/pkgconfig
+#pkgconfig_DATA = $(top_builddir)/MoleCuilder.pc
+
 
 BOOST_LIB = \
@@ -81,4 +127,5 @@
 
 ALLLIBS = \
+        libUnitTest.la \
 	../libMolecuilderUI.la
 if CONDJOBMARKET
@@ -144,5 +191,5 @@
   
 
-BoxUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+BoxUnitTest_SOURCES = \
 	BoxUnitTest.cpp \
 	BoxUnitTest.hpp \
@@ -152,4 +199,5 @@
 	../Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp
 BoxUnitTest_LDADD = \
+        libUnitTest.la \
 	../libMolecuilder.la \
 	../libMolecuilderShapes.la \
@@ -159,10 +207,10 @@
 	$(BOOST_LIB)
 
-AtomIdSetUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+AtomIdSetUnitTest_SOURCES = \
 	AtomIdSetUnitTest.cpp \
 	AtomIdSetUnitTest.hpp
 AtomIdSetUnitTest_LDADD =  $(ALLLIBS)
 
-Box_BoundaryConditionsTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+Box_BoundaryConditionsTest_SOURCES = \
 	Box_BoundaryConditionsUnitTest.cpp \
 	Box_BoundaryConditionsUnitTest.hpp \
@@ -170,18 +218,19 @@
 	../Box_BoundaryConditions.hpp
 Box_BoundaryConditionsTest_LDADD = \
-	${CodePatterns_LIBS} \
-	$(BOOST_LIB)
-
-FormulaUnittest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+        libUnitTest.la \
+	${CodePatterns_LIBS} \
+	$(BOOST_LIB)
+
+FormulaUnittest_SOURCES = \
 	FormulaUnitTest.cpp \
 	FormulaUnitTest.hpp
 FormulaUnittest_LDADD = $(ALLLIBS)
 
-ListOfBondsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+ListOfBondsUnitTest_SOURCES = \
 	ListOfBondsUnitTest.cpp \
 	ListOfBondsUnitTest.hpp 
 ListOfBondsUnitTest_LDADD = $(ALLLIBS)
 
-MoleculeUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+MoleculeUnitTest_SOURCES = \
 	MoleculeUnitTest.cpp \
 	MoleculeUnitTest.hpp
@@ -191,10 +240,12 @@
 	../libMolecuilderHelpers.la
 
-WorldTimeUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
+WorldTimeUnitTest_SOURCES = \
 	WorldTimeUnitTest.cpp \
 	WorldTimeUnitTest.hpp \
 	../WorldTime.cpp \
 	../WorldTime.hpp
-WorldTimeUnitTest_LDADD = ${BOOST_LIB}
+WorldTimeUnitTest_LDADD = \
+        libUnitTest.la \
+	${BOOST_LIB}
 
 
