Skip to content

Commit 776669a

Browse files
Merge pull request #361 from SeeminglyScience/patch-1
Update versions and help output in `README.md`
2 parents ce8ac9d + b86a2fe commit 776669a

1 file changed

Lines changed: 34 additions & 29 deletions

File tree

README.md

Lines changed: 34 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ A convenience package which provides the native libClang library for several pla
1111

1212
A helper package which exposes many Clang APIs missing from libClang is provided here: https://www.nuget.org/packages/libClangSharp
1313

14-
NOTE: libclang and libClangSharp are meta-packages which point to the platform-specific runtime packages ([e.g.](https://www.nuget.org/packages/libClangSharp.runtime.win-x64/13.0.0-beta1); see others owned by [tannergooding](https://www.nuget.org/profiles/tannergooding)). Several manual steps may be required to use them, see discussion in [#46](https://github.com/dotnet/ClangSharp/issues/46) and [#118](https://github.com/dotnet/ClangSharp/issues/118).
14+
NOTE: libclang and libClangSharp are meta-packages which point to the platform-specific runtime packages ([e.g.](https://www.nuget.org/packages/libClangSharp.runtime.win-x64/14.0.0-beta1); see others owned by [tannergooding](https://www.nuget.org/profiles/tannergooding)). Several manual steps may be required to use them, see discussion in [#46](https://github.com/dotnet/ClangSharp/issues/46) and [#118](https://github.com/dotnet/ClangSharp/issues/118).
1515

1616
Nightly packages are available via the NuGet Feed URL: https://pkgs.clangsharp.dev/index.json
1717

@@ -116,7 +116,7 @@ This program will take a given set of C or C++ header files and generate C# bind
116116

117117
The simplest and recommended setup is to install the generator as a .NET tool and then use response files:
118118
```
119-
dotnet tool install --global ClangSharpPInvokeGenerator --version 14.0.0-beta2
119+
dotnet tool install --global ClangSharpPInvokeGenerator --version 14.0.0-beta3
120120
ClangSharpPInvokeGenerator @generate.rsp
121121
```
122122

@@ -132,37 +132,40 @@ Usage:
132132
ClangSharpPInvokeGenerator [options]
133133
134134
Options:
135-
-a, --additional <additional> An argument to pass to Clang when parsing the input files. [default: ]
136-
-c, --config <config> A configuration option that controls how the bindings are generated. Specify 'help' to see the available options. [default: ]
137-
-D, --define-macro <define-macro> Define <macro> to <value> (or 1 if <value> omitted). [default: ]
138-
-e, --exclude <exclude> A declaration name to exclude from binding generation. [default: ]
139-
-f, --file <file> A file to parse and generate bindings for. [default: ]
140-
-F, --file-directory <file-directory> The base path for files to parse. [default: ]
141-
-h, --headerFile <headerFile> A file which contains the header to prefix every generated file with. [default: ]
142-
-i, --include <include> A declaration name to include in binding generation. [default: ]
143-
-I, --include-directory <include-directory> Add directory to include search path. [default: ]
135+
-a, --additional <additional> An argument to pass to Clang when parsing the input files. []
136+
-c, --config <config> A configuration option that controls how the bindings are generated. Specify 'help' to see the available options. []
137+
-D, --define-macro <define-macro> Define <macro> to <value> (or 1 if <value> omitted). []
138+
-e, --exclude <exclude> A declaration name to exclude from binding generation. []
139+
-f, --file <file> A file to parse and generate bindings for. []
140+
-F, --file-directory <file-directory> The base path for files to parse. []
141+
-h, --headerFile <headerFile> A file which contains the header to prefix every generated file with. []
142+
-i, --include <include> A declaration name to include in binding generation. []
143+
-I, --include-directory <include-directory> Add directory to include search path. []
144144
-x, --language <language> Treat subsequent input files as having type <language>. [default: c++]
145-
-l, --libraryPath <libraryPath> The string to use in the DllImport attribute used when generating bindings. [default: ]
145+
-l, --libraryPath <libraryPath> The string to use in the DllImport attribute used when generating bindings. []
146146
-m, --methodClassName <methodClassName> The name of the static class that will contain the generated method bindings. [default: Methods]
147-
-n, --namespace <namespace> The namespace in which to place the generated bindings. [default: ]
147+
-n, --namespace <namespace> The namespace in which to place the generated bindings. []
148148
-om, --output-mode <CSharp|Xml> The mode describing how the information collected from the headers are presented in the resultant bindings. [default: CSharp]
149-
-o, --output <output> The output location to write the generated bindings to. [default: ]
150-
-p, --prefixStrip <prefixStrip> The prefix to strip from the generated method bindings. [default: ]
151-
-r, --remap <remap> A declaration name to be remapped to another name during binding generation. [default: ]
152-
-std <std> Language standard to compile for. [default: ]
153-
-to, --test-output <test-output> The output location to write the generated tests to. [default: ]
154-
-t, --traverse <traverse> A file name included either directly or indirectly by -f that should be traversed during binding generation. [default: ]
149+
-o, --output <output> The output location to write the generated bindings to. []
150+
-p, --prefixStrip <prefixStrip> The prefix to strip from the generated method bindings. []
151+
-r, --remap <remap> A declaration name to be remapped to another name during binding generation. []
152+
-std <std> Language standard to compile for. []
153+
-to, --test-output <test-output> The output location to write the generated tests to. []
154+
-t, --traverse <traverse> A file name included either directly or indirectly by -f that should be traversed during binding generation. []
155155
-v, --version <version> Prints the current version information for the tool and its native dependencies.
156-
-was, --with-access-specifier <with-access-specifier> An access specifier to be used with the given qualified or remapped declaration name during binding generation. [default: ]
157-
-wa, --with-attribute <with-attribute> An attribute to be added to the given remapped declaration name during binding generation. [default: ]
158-
-wcc, --with-callconv <with-callconv> A calling convention to be used for the given declaration during binding generation. [default: ]
159-
-wc, --with-class <with-class> A class to be used for the given remapped constant or function declaration name during binding generation. [default: ]
160-
-wlb, --with-librarypath <with-librarypath> A library path to be used for the given declaration during binding generation. [default: ]
161-
-wn, --with-namespace <with-namespace> A namespace to be used for the given remapped declaration name during binding generation. [default: ]
162-
-wsle, --with-setlasterror <with-setlasterror> Add the SetLastError=true modifier to a given DllImport or UnmanagedFunctionPointer. [default: ]
163-
-wts, --with-transparent-struct <with-transparent-struct> A remapped type name to be treated as a transparent wrapper during binding generation. [default: ]
164-
-wt, --with-type <with-type> A type to be used for the given enum declaration during binding generation. [default: ]
165-
-wu, --with-using <with-using> A using directive to be included for the given remapped declaration name during binding generation. [default: ]
156+
-was, --with-access-specifier <with-access-specifier> An access specifier to be used with the given qualified or remapped declaration name during binding generation. []
157+
-wa, --with-attribute <with-attribute> An attribute to be added to the given remapped declaration name during binding generation. []
158+
-wcc, --with-callconv <with-callconv> A calling convention to be used for the given declaration during binding generation. []
159+
-wc, --with-class <with-class> A class to be used for the given remapped constant or function declaration name during binding generation. []
160+
-wg, --with-guid <with-guid> A GUID to be used for the given declaration during binding generation. []
161+
-wlb, --with-librarypath <with-librarypath> A library path to be used for the given declaration during binding generation. []
162+
-wmi, --with-manual-import <with-manual-import> A remapped function name to be treated as a manual import during binding generation. []
163+
-wn, --with-namespace <with-namespace> A namespace to be used for the given remapped declaration name during binding generation. []
164+
-wsle, --with-setlasterror <with-setlasterror> Add the SetLastError=true modifier to a given DllImport or UnmanagedFunctionPointer. []
165+
-wsgct, --with-suppressgctransition <with-suppressgctransition> Add the SuppressGCTransition calling convention to a given DllImport or UnmanagedFunctionPointer. []
166+
-wts, --with-transparent-struct <with-transparent-struct> A remapped type name to be treated as a transparent wrapper during binding generation. []
167+
-wt, --with-type <with-type> A type to be used for the given enum declaration during binding generation. []
168+
-wu, --with-using <with-using> A using directive to be included for the given remapped declaration name during binding generation. []
166169
-?, -h, --help Show help and usage information
167170
```
168171

@@ -196,10 +199,12 @@ Options:
196199
generate-cpp-attributes [CppAttributeList("")] should be generated to document the encountered C++ attributes.
197200
generate-doc-includes &lt;include&gt; xml documentation tags should be generated for declarations.
198201
generate-file-scoped-namespaces Namespaces should be scoped to the file to reduce nesting.
202+
generate-guid-member Types with an associated GUID should have a corresponding member generated.
199203
generate-helper-types Code files should be generated for various helper attributes and declared transparent structs.
200204
generate-macro-bindings Bindings for macro-definitions should be generated. This currently only works with value like macros and not function-like ones.
201205
generate-marker-interfaces Bindings for marker interfaces representing native inheritance hierarchies should be generated.
202206
generate-native-inheritance-attribute [NativeInheritance("")] attribute should be generated to document the encountered C++ base type.
207+
generate-setslastsystemerror-attribute [SetsLastSystemError] attribute should be generated rather than using SetLastError = true.
203208
generate-template-bindings Bindings for template-definitions should be generated. This is currently experimental.
204209
generate-unmanaged-constants Unmanaged constants should be generated using static ref readonly properties. This is currently experimental.
205210
generate-vtbl-index-attribute [VtblIndex(#)] attribute should be generated to document the underlying VTBL index for a helper method.

0 commit comments

Comments
 (0)