diff options
Diffstat (limited to '3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm')
-rw-r--r-- | 3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm b/3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm new file mode 100644 index 0000000..8dd509d --- /dev/null +++ b/3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm @@ -0,0 +1,170 @@ +# -*- mode: python -*- +# OpenPGM build script +# $Id$ + +import os; +Import('env') + +src = Split(""" + thread.c + mem.c + string.c + list.c + slist.c + queue.c + hashtable.c + messages.c + error.c + math.c + packet_parse.c + packet_test.c + sockaddr.c + time.c + if.c + getifaddrs.c + getnodeaddr.c + indextoaddr.c + indextoname.c + nametoindex.c + inet_network.c + md5.c + rand.c + gsi.c + tsi.c + txw.c + rxw.c + skbuff.c + socket.c + source.c + receiver.c + recv.c + engine.c + timer.c + net.c + rate_control.c + checksum.c + reed_solomon.c + galois_tables.c + wsastrerror.c + histogram.c +""") + +e = env.Clone(); +e.Append(CCFLAGS = '-DGETTEXT_PACKAGE=\'"pgm"\''); + +# Galois tables +e.Command ('galois_tables.c', 'galois_generator.pl', "perl $SOURCE > $TARGET"); + +# Version stamping +e.Command ('version.c', 'version_generator.py', "python $SOURCE > $TARGET"); +e.Depends ('version.c', src); +src += ['version.c']; + +e.StaticLibrary('libpgm', src); +e.StaticSharedLibrary('libpgm-pic', src); + +#----------------------------------------------------------------------------- +# unit testing + +if env['WITH_CHECK'] == 'true': + te = e.Clone(); + te.MergeFlags(env['GLIB_FLAGS']); + newCCFLAGS = []; + for flag in te['CCFLAGS']: + if ("-W" != flag[:2]) and ("-pedantic" != flag[:9]): + newCCFLAGS.append(flag); + te['CCFLAGS'] = newCCFLAGS; + te.ParseConfig ('pkg-config --cflags --libs check'); +# log dependencies + tlog = [ e.Object('messages.c'), + e.Object('thread.c'), + e.Object('galois_tables.c'), + e.Object('mem.c'), + e.Object('histogram.c'), + e.Object('string.c'), + e.Object('slist.c') + ]; +# framework + te.Program (['atomic_unittest.c']); + te.Program (['checksum_unittest.c'] + tlog); + te.Program (['error_unittest.c'] + tlog); + te.Program (['md5_unittest.c'] + tlog); + te.Program (['getifaddrs_unittest.c', + e.Object('error.c'), + e.Object('sockaddr.c'), + e.Object('list.c')] + tlog); + te.Program (['getnodeaddr_unittest.c', + e.Object('error.c'), + e.Object('sockaddr.c')] + tlog); + te.Program (['indextoaddr_unittest.c', + e.Object('error.c'), + e.Object('sockaddr.c')] + tlog); + te.Program (['inet_network_unittest.c', + e.Object('sockaddr.c')] + tlog); + te.Program (['rate_control_unittest.c'] + tlog); + te.Program (['reed_solomon_unittest.c'] + tlog); + te.Program (['time_unittest.c', + e.Object('error.c')] + tlog); +# collate + tframework = [ e.Object('checksum.c'), + e.Object('error.c'), + e.Object('galois_tables.c'), + e.Object('getifaddrs.c'), + e.Object('getnodeaddr.c'), + e.Object('hashtable.c'), + e.Object('histogram.c'), + e.Object('indextoaddr.c'), + e.Object('indextoname.c'), + e.Object('inet_network.c'), + e.Object('list.c'), + e.Object('math.c'), + e.Object('md5.c'), + e.Object('mem.c'), + e.Object('messages.c'), + e.Object('nametoindex.c'), + e.Object('queue.c'), + e.Object('rand.c'), + e.Object('rate_control.c'), + e.Object('reed_solomon.c'), + e.Object('slist.c'), + e.Object('sockaddr.c'), + e.Object('string.c'), + e.Object('thread.c'), + e.Object('time.c'), + e.Object('wsastrerror.c') + ]; +# library + te.Program (['txw_unittest.c', + e.Object('tsi.c'), + e.Object('skbuff.c')] + tframework); + te.Program (['rxw_unittest.c', + e.Object('tsi.c'), + e.Object('skbuff.c')] + tframework); + te.Program (['engine_unittest.c', + e.Object('version.c')] + tframework); + te.Program (['gsi_unittest.c', + e.Object('if.c')] + tframework); + te.Program (['tsi_unittest.c'] + tframework); + te.Program (['if_unittest.c'] + tframework); + te.Program (['socket_unittest.c', + e.Object('if.c'), + e.Object('tsi.c')] + tframework); +# te.Program (['source_unittest.c'] + tframework); +# te.Program (['receiver_unittest.c', +# e.Object('tsi.c')] + tframework); + te.Program (['recv_unittest.c', + e.Object('tsi.c'), + e.Object('gsi.c'), + e.Object('skbuff.c')] + tframework); + te.Program (['net_unittest.c'] + tframework); + te.Program (['timer_unittest.c'] + tframework); + te.Program (['packet_parse_unittest.c'] + tframework); + te.Program (['packet_test_unittest.c'] + tframework); + te.Program (['ip_unittest.c', + e.Object('if.c')] + tframework); +# performance tests + te.Program (['checksum_perftest.c', + e.Object('time.c'), + e.Object('error.c')] + tlog); + +# end of file |