diff --git a/src/Makefile.am b/src/Makefile.am
index 293169c8b7d43bfef7d8bb5a526a5cfd1af02619..b49ae312bc128c3e4feb428219311e365504613f 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -4,6 +4,14 @@ bin_PROGRAMS = \
 	one-body-sample-2D \
 	one-body-sample-3D
 
+SOURCES = \
+	assemblers.cc \
+	compute_state.cc \
+	compute_state_ruina.cc \
+	mysolver.cc \
+	one-body-sample.cc \
+	vtk.cc
+
 ## 2D
 .PHONY: run-one-body-sample-2D
 run-one-body-sample-2D: one-body-sample-2D
@@ -21,13 +29,7 @@ run-one-body-sample-2D-valgrind: one-body-sample-2D
 run-one-body-sample-2D-gdb: one-body-sample-2D
 	libtool --mode execute gdb ./one-body-sample-2D
 
-one_body_sample_2D_SOURCES = \
-	assemblers.cc \
-	compute_state.cc \
-	compute_state_ruina.cc \
-	mysolver.cc \
-	one-body-sample.cc \
-	vtk.cc
+one_body_sample_2D_SOURCES = $(SOURCES)
 
 one_body_sample_2D_CPPFLAGS = \
 	$(AM_CPPFLAGS) -Dsrcdir=\"$(srcdir)\" -DDIM=2
@@ -49,13 +51,7 @@ run-one-body-sample-3D-valgrind: one-body-sample-3D
 run-one-body-sample-3D-gdb: one-body-sample-3D
 	libtool --mode execute gdb ./one-body-sample-3D
 
-one_body_sample_3D_SOURCES = \
-	assemblers.cc \
-	compute_state.cc \
-	compute_state_ruina.cc \
-	mysolver.cc \
-	one-body-sample.cc \
-	vtk.cc
+one_body_sample_3D_SOURCES = $(SOURCES)
 
 one_body_sample_3D_CPPFLAGS = \
 	$(AM_CPPFLAGS) -Dsrcdir=\"$(srcdir)\" -DDIM=3