Index: src/tests/Makefile.am
===================================================================
--- src/tests/Makefile.am	(revision 29038efb31bd98805b210064fad0660703b22f67)
+++ src/tests/Makefile.am	(revision f32e53e30b4af98515bb21383011871019944d11)
@@ -29,6 +29,16 @@
 
 # applies to both programs
-EXTRA_FLAGS =
-BUILD_FLAGS = -g -Wall -Wno-unused-function -quiet @CFA_FLAGS@ ${EXTRA_FLAGS}
+DEBUG_FLAGS =
+BUILD_FLAGS = -g -Wall -Wno-unused-function -quiet @CFA_FLAGS@
+if !BUILD_DEBUG
+BUILD_FLAGS += -nodebug
+else
+if !BUILD_RELEASE
+BUILD_FLAGS += -debug
+else
+BUILD_FLAGS += ${BUILD_FLAGS}
+endif
+endif
+
 TEST_FLAGS = $(if $(test), 2> .err/${@}.log, )
 AM_CFLAGS = ${TEST_FLAGS} ${BUILD_FLAGS}
Index: src/tests/Makefile.in
===================================================================
--- src/tests/Makefile.in	(revision 29038efb31bd98805b210064fad0660703b22f67)
+++ src/tests/Makefile.in	(revision f32e53e30b4af98515bb21383011871019944d11)
@@ -92,4 +92,7 @@
 host_triplet = @host@
 @BUILD_CONCURRENCY_TRUE@am__append_1 = coroutine thread monitor
+@BUILD_DEBUG_FALSE@am__append_2 = -nodebug
+@BUILD_DEBUG_TRUE@@BUILD_RELEASE_FALSE@am__append_3 = -debug
+@BUILD_DEBUG_TRUE@@BUILD_RELEASE_TRUE@am__append_4 = ${BUILD_FLAGS}
 EXTRA_PROGRAMS = fstream_test$(EXEEXT) vector_test$(EXEEXT) \
 	avl_test$(EXEEXT)
@@ -320,6 +323,7 @@
 
 # applies to both programs
-EXTRA_FLAGS = 
-BUILD_FLAGS = -g -Wall -Wno-unused-function -quiet @CFA_FLAGS@ ${EXTRA_FLAGS}
+DEBUG_FLAGS = 
+BUILD_FLAGS = -g -Wall -Wno-unused-function -quiet @CFA_FLAGS@ \
+	$(am__append_2) $(am__append_3) $(am__append_4)
 TEST_FLAGS = $(if $(test), 2> .err/${@}.log, )
 AM_CFLAGS = ${TEST_FLAGS} ${BUILD_FLAGS}
Index: src/tests/test.py
===================================================================
--- src/tests/test.py	(revision 29038efb31bd98805b210064fad0660703b22f67)
+++ src/tests/test.py	(revision f32e53e30b4af98515bb21383011871019944d11)
@@ -166,5 +166,5 @@
 
 	# build, skipping to next test on error
-	make_ret, _ = sh("""%s test=yes EXTRA_FLAGS="%s" %s 2> %s 1> /dev/null""" % (make_cmd, options, test.name, out_file), dry_run)
+	make_ret, _ = sh("""%s test=yes DEBUG_FLAGS="%s" %s 2> %s 1> /dev/null""" % (make_cmd, options, test.name, out_file), dry_run)
 
 	retcode = 0
@@ -202,5 +202,5 @@
 			error = myfile.read()
 
-		
+
 	# clean the executable
 	sh("rm -f %s > /dev/null 2>&1" % test.name, dry_run)
