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 
     23 # Now build and run the test normally.
     24 enc = opts.Program(["encode_alltypes.c", "alltypes.pb.c", "pb_encode_fields16.o"])
     25 dec = opts.Program(["decode_alltypes.c", "alltypes.pb.c", "pb_decode_fields16.o"])
     26 
     27 env.RunTest(enc)
     28 env.RunTest([dec, "encode_alltypes.output"])
     29