Home | History | Annotate | Download | only in field_size_16
      1 # Run the alltypes test case, but compile with PB_FIELD_16BIT=1.
      2 # Also the .proto file has been modified to have high indexes.
      3 
      4 Import("env")
      5 
      6 # Take copy of the files for custom build.
      7 c = Copy("$TARGET", "$SOURCE")
      8 env.Command("encode_alltypes.c", "$BUILD/alltypes/encode_alltypes.c", c)
      9 env.Command("decode_alltypes.c", "$BUILD/alltypes/decode_alltypes.c", c)
     10 
     11 env.NanopbProto(["alltypes", "alltypes.options"])
     12 
     13 # Define the compilation options
     14 opts = env.Clone()
     15 opts.Append(CPPDEFINES = {'PB_FIELD_16BIT': 1})
     16 
     17 # Build new version of core
     18 strict = opts.Clone()
     19 strict.Append(CFLAGS = strict['CORECFLAGS'])
     20 strict.Object("pb_decode_fields16.o", "$NANOPB/pb_decode.c")
     21 strict.Object("pb_encode_fields16.o", "$NANOPB/pb_encode.c")
     22 strict.Object("pb_common_fields16.o", "$NANOPB/pb_common.c")
     23 
     24 # Now build and run the test normally.
     25 enc = opts.Program(["encode_alltypes.c", "alltypes.pb.c", "pb_encode_fields16.o", "pb_common_fields16.o"])
     26 dec = opts.Program(["decode_alltypes.c", "alltypes.pb.c", "pb_decode_fields16.o", "pb_common_fields16.o"])
     27 
     28 env.RunTest(enc)
     29 env.RunTest([dec, "encode_alltypes.output"])
     30 
     31 env.RunTest("optionals.output", enc, ARGS = ['1'])
     32 env.RunTest("optionals.decout", [dec, "optionals.output"], ARGS = ['1'])
     33