X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=kvstore%2FSConscript;fp=kvstore%2FSConscript;h=6414023e523eae236a25bbde3bd37e71bb629ecd;hb=3c2cbef21a11c4d86952922f4da7b830a91423f9;hp=0000000000000000000000000000000000000000;hpb=db0d4c10ea7abfa2546f73e96784ebf554342977;p=bluesky.git diff --git a/kvstore/SConscript b/kvstore/SConscript new file mode 100644 index 0000000..6414023 --- /dev/null +++ b/kvstore/SConscript @@ -0,0 +1,65 @@ +Import('env') + +protobuf = Builder( + action = ( + 'protoc --proto_path=${SOURCE.dir} --cpp_out=${TARGET.dir} $SOURCE' + ), + single_source = True, + ) + +env["BUILDERS"]["Protobuf"] = protobuf + +env.ParseConfig("echo -I./protobufrpc") +env.ParseConfig("echo -I/opt/local/include -L/opt/local/lib") + +if not env.has_key('LIBS'): + env['LIBS'] = [] + +env['LIBS'] += ['protobuf', + 'pthread', + 'boost_thread-mt', + 'boost_regex-mt', + 'boost_system-mt', + 'boost_program_options-mt', + 'db'] + +protobufrpc = SConscript(dirs=['./protobufrpc/'], exports='env') + +kvstore_proto_files = env.Protobuf( + target = [ 'kvstore.pb.cc', 'kvstore.pb.h' ], + source = 'kvstore.proto' + ) + +kvservice_files = ['kvservice.cc', 'backend.cc'] +kvclient_files = ['kvclient.cc'] + +kvservice = env.StaticLibrary('kvservice', kvservice_files) +kvclient = env.StaticLibrary('kvclient', kvclient_files) +kvstore_proto = env.StaticLibrary('kvstore', kvstore_proto_files) + +env.Program('kvstore', ['kvstore.cc'] + + kvservice + + kvstore_proto + + protobufrpc) + +env.Program('kvtest', + ['kvtest.cc'] + + kvservice + + kvclient + + kvstore_proto + + protobufrpc, + LIBS=env['LIBS']+['gtest']) + +env.Program('kvbench', + ['kvbench.cc'] + + kvclient + + kvstore_proto + + protobufrpc) + +products = { + 'kvservice': kvservice, + 'kvclient': kvclient, + 'kvstore_proto': kvstore_proto, + } + +Return('products')