mirror of
https://git.proxmox.com/git/libgit2
synced 2025-11-29 21:03:26 +00:00
Building a "shared object" (DLL) in Windows includes 2 steps: - specify __declspec(dllexport) when building the library itself. MSVC will disallow itself from optimizing these symbols out and reference them in the PE's Exports-Table. Further, a static link library will be generated. This library contains the symbols which are exported via the declsepc above. The __declspec(dllexport) becomes part of the symbol-signature (like parameter types in C++ are 'mangled' into the symbol name, the export specifier is mingled with the name) - specify __declspec(dllimport) when using the library. This again mingles the declspec into the name and declares the function / variable with external linkage. cmake automatically adds -Dgit2_EXPORTS to the compiler arguments when compiling the libgit2 project. The 'git2' is the name specified via PROJECT() in CMakeLists.txt. |
||
|---|---|---|
| .. | ||
| attr.h | ||
| blob.h | ||
| branch.h | ||
| commit.h | ||
| common.h | ||
| config.h | ||
| diff.h | ||
| errors.h | ||
| index.h | ||
| indexer.h | ||
| inttypes.h | ||
| merge.h | ||
| net.h | ||
| notes.h | ||
| object.h | ||
| odb_backend.h | ||
| odb.h | ||
| oid.h | ||
| reflog.h | ||
| refs.h | ||
| refspec.h | ||
| remote.h | ||
| repository.h | ||
| revwalk.h | ||
| signature.h | ||
| status.h | ||
| stdint.h | ||
| submodule.h | ||
| tag.h | ||
| threads.h | ||
| tree.h | ||
| types.h | ||
| version.h | ||
| windows.h | ||