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