Index: tests/src/io/test-source_seek.c
===================================================================
--- tests/src/io/test-source_seek.c	(revision 0c77921f75bf0a825abe51ef97d9812529a9fa98)
+++ tests/src/io/test-source_seek.c	(revision c0fe2a97b0421ede6410a79894278d13e47a4f39)
@@ -23,5 +23,5 @@
   uint_t hop_size = 256;
   uint_t n_frames = 0, read = 0;
-  uint_t old_n_frames;
+  uint_t old_n_frames_1, old_n_frames_2, old_n_frames_3;
   if ( argc == 3 ) samplerate = atoi(argv[2]);
   if ( argc == 4 ) hop_size = atoi(argv[3]);
@@ -42,10 +42,12 @@
   } while ( read == hop_size );
 
-  PRINT_MSG("read %d frames at %dHz (%d blocks) from %s\n", n_frames, samplerate,
-    n_frames / hop_size, source_path);
+  PRINT_MSG("read %.2fs, %d frames at %dHz (%d blocks) from %s\n",
+      n_frames * 1. / samplerate,
+      n_frames, samplerate,
+      n_frames / hop_size, source_path);
+
+  old_n_frames_1 = n_frames;
 
   aubio_source_seek (s, 0);
-
-  old_n_frames = n_frames;
 
   n_frames = 0;
@@ -56,6 +58,26 @@
   } while ( read == hop_size );
 
-  PRINT_MSG("read %d frames at %dHz (%d blocks) from %s\n", n_frames, samplerate,
-    n_frames / hop_size, source_path);
+  PRINT_MSG("read %.2fs, %d frames at %dHz (%d blocks) from %s\n",
+      n_frames * 1. / samplerate,
+      n_frames, samplerate,
+      n_frames / hop_size, source_path);
+
+  old_n_frames_2 = n_frames;
+
+  aubio_source_seek (s, n_frames / 2);
+
+  n_frames = 0;
+  do {
+    aubio_source_do(s, vec, &read);
+    //fvec_print (vec);
+    n_frames += read;
+  } while ( read == hop_size );
+
+  PRINT_MSG("read %.2fs, %d frames at %dHz (%d blocks) from %s\n",
+      n_frames * 1. / samplerate,
+      n_frames, samplerate,
+      n_frames / hop_size, source_path);
+
+  old_n_frames_3 = n_frames;
 
   del_aubio_source (s);
@@ -63,5 +85,6 @@
   del_fvec (vec);
 
-  assert ( n_frames == old_n_frames );
+  assert ( old_n_frames_2 == old_n_frames_1 );
+  assert ( old_n_frames_3 == (uint_t)floor(old_n_frames_1 / 2. + .5) );
   return err;
 }
Index: tests/src/temporal/test-filter.c
===================================================================
--- tests/src/temporal/test-filter.c	(revision 0c77921f75bf0a825abe51ef97d9812529a9fa98)
+++ tests/src/temporal/test-filter.c	(revision c0fe2a97b0421ede6410a79894278d13e47a4f39)
@@ -3,10 +3,11 @@
 int main ()
 {
-  uint_t win_s = 32; // window size
+  uint_t win_s = 16; // window size
+  uint_t impulse_at = win_s / 2;
   fvec_t *in = new_fvec (win_s); // input buffer
   fvec_t *out = new_fvec (win_s); // input buffer
 
   aubio_filter_t *o = new_aubio_filter_c_weighting (44100);
-  in->data[12] = 0.5;
+  in->data[impulse_at] = 0.5;
   fvec_print (in);
   aubio_filter_do (o, in);
@@ -15,5 +16,5 @@
 
   o = new_aubio_filter_a_weighting (32000);
-  in->data[12] = 0.5;
+  in->data[impulse_at] = 0.5;
   fvec_print (in);
   aubio_filter_do_outplace (o, in, out);
@@ -21,5 +22,5 @@
 
   aubio_filter_set_a_weighting (o, 32000);
-  in->data[12] = 0.5;
+  in->data[impulse_at] = 0.5;
   fvec_print (in);
   aubio_filter_do_filtfilt (o, in, out);
Index: wscript
===================================================================
--- wscript	(revision 0c77921f75bf0a825abe51ef97d9812529a9fa98)
+++ wscript	(revision c0fe2a97b0421ede6410a79894278d13e47a4f39)
@@ -31,21 +31,35 @@
 out = 'build'
 
+def add_option_enable_disable(ctx, name, default = None, help_str = None, help_disable_str = None):
+  if help_str == None:
+      help_str = 'enable ' + name + ' support'
+  if help_disable_str == None:
+      help_disable_str = 'do not ' + help_str
+  ctx.add_option('--enable-' + name, action = 'store_true', default = default,
+          dest = 'enable_' + name,
+          help = help_str)
+  ctx.add_option('--disable-' + name, action = 'store_false',
+          #default = default,
+          dest = 'enable_' + name,
+          help = help_disable_str )
+
 def options(ctx):
-  ctx.add_option('--enable-double', action='store_true', default=False,
-      help='compile aubio in double precision mode')
-  ctx.add_option('--enable-fftw3f', action='store_true', default=False,
-      help='compile with fftw3f instead of ooura (recommended)')
-  ctx.add_option('--enable-fftw3', action='store_true', default=False,
-      help='compile with fftw3 instead of ooura (recommended in double precision)')
-  ctx.add_option('--enable-complex', action='store_true', default=False,
-      help='compile with C99 complex')
-  ctx.add_option('--enable-jack', action='store_true', default=None,
-      help='compile with jack support')
-  ctx.add_option('--enable-lash', action='store_true', default=None,
-      help='compile with lash support')
-  ctx.add_option('--enable-sndfile', action='store_true', default=None,
-      help='compile with libsndfile support')
-  ctx.add_option('--enable-samplerate', action='store_true', default=None,
-      help='compile with libsamplerate support')
+  add_option_enable_disable(ctx, 'double', default = False,
+          help_str = 'compile aubio in double precision mode')
+  add_option_enable_disable(ctx, 'fftw3f', default = False,
+          help_str = 'compile with fftw3f instead of ooura (recommended)', help_disable_str = 'do not compile with fftw3f')
+  add_option_enable_disable(ctx, 'fftw3', default = False,
+          help_str = 'compile with fftw3 instead of ooura', help_disable_str = 'do not compile with fftw3')
+  add_option_enable_disable(ctx, 'complex', default = False,
+          help_str ='compile with C99 complex', help_disable_str = 'do not use C99 complex (default)' )
+  add_option_enable_disable(ctx, 'jack', default = None,
+          help_str = 'compile with jack (auto)', help_disable_str = 'disable jack support')
+  add_option_enable_disable(ctx, 'lash', default = None,
+          help_str = 'compile with LASH (auto)', help_disable_str = 'disable LASH' )
+  add_option_enable_disable(ctx, 'sndfile', default = None,
+          help_str = 'compile with sndfile (auto)', help_disable_str = 'disable sndfile')
+  add_option_enable_disable(ctx, 'samplerate', default = None,
+          help_str = 'compile with samplerate (auto)', help_disable_str = 'disable samplerate')
+
   ctx.add_option('--with-target-platform', type='string',
       help='set target platform for cross-compilation', dest='target_platform')
