diff --git a/wscript b/wscript
index bd877cd..ede09a8 100644
--- a/wscript
+++ b/wscript
@@ -10,23 +10,21 @@
     opt.add_option('--debug',action='store_true',default=False,dest='debug',help='''debugging mode''')
     opt.add_option('--test', action='store_true',default=False,dest='_test',help='''build unit tests''')
     opt.add_option('--yes',action='store_true',default=False) # for autoconf/automake/make compatibility
-    opt.load('compiler_c')
-    opt.load('compiler_cxx')
-    opt.load('boost')
-    opt.load('gnu_dirs')
-    opt.load('ccnx protobuf', tooldir=["waf-tools"])
+
+    opt.load('compiler_cxx boost ccnx protoc')
 
 def configure(conf):
     conf.load("compiler_cxx")
-    conf.load('gnu_dirs')
 
     conf.check_cfg(package='sqlite3', args=['--cflags', '--libs'], uselib_store='SQLITE3', mandatory=True)
 
     if not conf.check_cfg(package='openssl', args=['--cflags', '--libs'], uselib_store='SSL', mandatory=False):
-      libcrypto = conf.check_cc(lib='crypto',
-                                header_name='openssl/crypto.h',
-                                define_name='HAVE_SSL',
-                                uselib_store='SSL')
+        libcrypto = conf.check_cc(lib='crypto',
+                                  header_name='openssl/crypto.h',
+                                  define_name='HAVE_SSL',
+                                  uselib_store='SSL')
+    else:
+        conf.define ("HAVE_SSL", 1)
     if not conf.get_define ("HAVE_SSL"):
         conf.fatal ("Cannot find SSL libraries")
 
@@ -51,23 +49,11 @@
     if conf.options._test:
       conf.define('_TEST', 1)
 
-    conf.load('protobuf')
+    conf.load('protoc')
 
     conf.write_config_header('src/config.h')
 
 def build (bld):
-    bld.post_mode = Build.POST_LAZY
-
-    bld.add_group ("protobuf")
-
-#    x = bld (
-#        features = ["protobuf"],
-#        source = ["model/sync-state.proto"],
-#        target = ["model/sync-state.pb"],
-#        )
-
-    bld.add_group ("code")
-        
     libccnx = bld (
         target=CCNXLIB,
         features=['cxx', 'cxxshlib'],
@@ -91,12 +77,8 @@
           includes = ['include', ],
           )
 
-
-
-
-
     chronoshare = bld (
-        target=APPNAME,
+        target="tmp",
         features=['cxx', 'cxxprogram'],
         # source = bld.path.ant_glob(['src/**/*.cc']),
         source = ['src/main.cc', 'src/sqlite-helper.cc'],
