Index: src/benchmark/Makefile.am
===================================================================
--- src/benchmark/Makefile.am	(revision ae46e05201981ca2c15332b46db1388954bfdd91)
+++ src/benchmark/Makefile.am	(revision 05a0ff23aca6d32e0b0db5cd7194597d485dd0d9)
@@ -59,8 +59,4 @@
 	@echo -e '\t"githash": "'${githash}'",'
 	@echo -e '\t"arch": "'   ${arch}   '",'
-	@echo -e '\t"compile": {'
-	@+make compile TIME_FORMAT='%e,' PRINT_FORMAT='\t\t\"%s\" :'
-	@echo -e '\t\t"dummy" : {}'
-	@echo -e '\t},'
 	@echo -e '\t"ctxswitch": {'
 	@echo -en '\t\t"coroutine":'
@@ -162,4 +158,5 @@
 ## =========================================================================================================
 signal$(EXEEXT) :\
+	signal-pthread_cond.run \
 	signal-upp.run		\
 	signal-cfa1.run		\
@@ -168,4 +165,7 @@
 	signal-java_thread.run
 
+signal-pthread_cond$(EXEEXT):
+	@@BACKEND_CC@ schedint/pthreads.c -DBENCH_N=500000      -I. -lrt -pthread                    ${AM_CFLAGS} ${CFLAGS} ${ccflags}
+
 signal-upp$(EXEEXT):
 	@u++          schedint/upp.cc     -DBENCH_N=5000000     -I. -nodebug -lrt -quiet             ${AM_CFLAGS} ${CFLAGS} ${ccflags}
@@ -198,5 +198,5 @@
 
 waitfor-cfa1$(EXEEXT):
-	@${CC}        schedext/cfa1.c     -DBENCH_N=500000      -I. -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
+	${CC}        schedext/cfa1.c     -DBENCH_N=500000      -I. -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
 
 waitfor-cfa2$(EXEEXT):
Index: src/benchmark/Makefile.in
===================================================================
--- src/benchmark/Makefile.in	(revision ae46e05201981ca2c15332b46db1388954bfdd91)
+++ src/benchmark/Makefile.in	(revision 05a0ff23aca6d32e0b0db5cd7194597d485dd0d9)
@@ -473,8 +473,4 @@
 	@echo -e '\t"githash": "'${githash}'",'
 	@echo -e '\t"arch": "'   ${arch}   '",'
-	@echo -e '\t"compile": {'
-	@+make compile TIME_FORMAT='%e,' PRINT_FORMAT='\t\t\"%s\" :'
-	@echo -e '\t\t"dummy" : {}'
-	@echo -e '\t},'
 	@echo -e '\t"ctxswitch": {'
 	@echo -en '\t\t"coroutine":'
@@ -573,4 +569,5 @@
 
 signal$(EXEEXT) :\
+	signal-pthread_cond.run \
 	signal-upp.run		\
 	signal-cfa1.run		\
@@ -579,4 +576,7 @@
 	signal-java_thread.run
 
+signal-pthread_cond$(EXEEXT):
+	@@BACKEND_CC@ schedint/pthreads.c -DBENCH_N=500000      -I. -lrt -pthread                    ${AM_CFLAGS} ${CFLAGS} ${ccflags}
+
 signal-upp$(EXEEXT):
 	@u++          schedint/upp.cc     -DBENCH_N=5000000     -I. -nodebug -lrt -quiet             ${AM_CFLAGS} ${CFLAGS} ${ccflags}
@@ -607,5 +607,5 @@
 
 waitfor-cfa1$(EXEEXT):
-	@${CC}        schedext/cfa1.c     -DBENCH_N=500000      -I. -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
+	${CC}        schedext/cfa1.c     -DBENCH_N=500000      -I. -nodebug -lrt -quiet @CFA_FLAGS@ ${AM_CFLAGS} ${CFLAGS} ${ccflags}
 
 waitfor-cfa2$(EXEEXT):
Index: src/benchmark/schedint/pthreads.c
===================================================================
--- src/benchmark/schedint/pthreads.c	(revision 05a0ff23aca6d32e0b0db5cd7194597d485dd0d9)
+++ src/benchmark/schedint/pthreads.c	(revision 05a0ff23aca6d32e0b0db5cd7194597d485dd0d9)
@@ -0,0 +1,55 @@
+#include <pthread.h>
+#include <stdio.h>
+
+#include "bench.h"
+
+int argc;
+char** argv;
+volatile int go = 0;
+
+pthread_cond_t c;
+pthread_mutex_t m;
+
+void __attribute__((noinline)) call() {
+	pthread_mutex_lock(&m);
+	pthread_cond_signal(&c);
+	pthread_mutex_unlock(&m);
+}
+
+int  __attribute__((noinline)) wait() {
+	pthread_mutex_lock(&m);
+	go = 1;
+	BENCH(
+		for (size_t i = 0; i < n; i++) {
+			pthread_cond_wait(&c, &m);
+		},
+		result
+	)
+
+	printf("%llu\n", result);
+	go = 0;
+	pthread_mutex_unlock(&m);
+	return 0;
+}
+
+void* thread_main(void * a) {
+	while(go == 0) { sched_yield(); }
+	while(go == 1) { call(); }
+	return NULL;
+}
+
+int main(int margc, char* margv[]) {
+	argc = margc;
+	argv = margv;
+	pthread_t thread;
+	if (pthread_create(&thread, NULL, thread_main, NULL) < 0) {
+		perror( "failure" );
+		return 1;
+	}
+	wait();
+	if (pthread_join( thread, NULL) < 0) {
+		perror( "failure" );
+		return 1;
+	}
+	return 0;
+}
