• Home
  • Raw
  • Download

Lines Matching full:files

5 … Grpc.Tools NuGet package provides custom build targets to make it easier to specify `.proto` files
6 in a project and for those files to be compiled and their generated files to be included in the pro…
8 # Files in the NuGet package
10 ## .props and .target files
24 Basically the `.props` and `.targets` files are automatically included in the projects - the `.prop…
29 For Visual Studio integration - these files provide the properties pages:
67 …e add all the targets that compile the `.proto` files and generate the expected `.cs` files. These…
71 * we add `Protobuf_Clean` that cleans the files generated by the protobuf compiler.
82 …* Tries to work out the names and paths of the files that would be generated by the protobuf compi…
85 * Read generated files from previously written dependencies file and return as items.
90 * runs the executable, which generates the `.cs` files and a `.protodep` dependencies file
91 …* reads the dependencies file to find the files that were generated and these are returned as a li…
99 * Prepare list of `.proto` files to compile
103 * Work out files that need to be created or have changed
104 * Compile the `.proto` files
105 * Add generated files to the list of files for the C# compiler
107 ### Prepare the list of .proto files to compile
123 The `Source` metadata is used later as a key to map generated files to `.proto` files.
127 #### Gathering files to check for incremental builds
129 The target `Protobuf_PrepareCompile` tries to work out which files the protobuf compiler will
134 The target `Protobuf_PrepareCompile` also reads previously written `.protodep` files to get
135 any actual files previously generated. The custom task `ProtoReadDependencies` is called to
137 This is in case the list of actual files is different from the previous best-effort guess
140 The expected outputs and previous outputs are needed so that the timestamps of those files
145 To avoid unnecessarily recompiling the `.proto` files during an incremental build the
146 target `_Protobuf_GatherStaleBatched` tries to work out if any files have changed.
148 It checks for out of date files using MSBuilds incremental build feature that compares the
149 timestamps on a target's _Input_ files to its _Output_ files.
153 * Timestamps of the `.proto` files
154 * Timestamps of previously generated files (list of these files read from `.protodep` files)
155 * Timestamps of MSBuild project files
158 * Timestamps of the expected generated files
170 ### Compile the .proto files
174 protobuf compiler. The files that were generated are returned in the item list `_Protobuf_Generated…
176 If there are expected files that were not actually generated then the behaviour depends on whether …
177 generated files should have been within the project (e.g. in the intermediate directories) or were
179 * If within the project - empty files are created to prevent incremental builds doing unnecessary r…
180 * If outside the project - by default empty files are not created and a warning is output (this beh…
182 **TODO:** why are files inside and outside the project treated differently?
184 ### Add generated .cs files to the list of files for the C# compiler
187 (the list of files that CSC compiles) the expected generated files.
189 **Note** - this is the _expected_ files not the _actual_ generated files and this is done
192 **TODO:** why are the _expected_ files not the _actual_ generated files added?
197 They are not user-initiated but may be triggered whenever files are added, removed or saved.
202 Visual Studio because the generated files may not exist or be out of date and any code that relies
215 ## Automatically including .proto files
217 For SDK projects it is possible to automatically include `.proto` files found in the project
222 the `.proto` files to be compiled.