summaryrefslogtreecommitdiffstats
path: root/3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm')
-rw-r--r--3rdparty/openpgm-svn-r1085/pgm/SConscript.libpgm170
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