diff options
| author | Phil Christensen <philc@microsoft.com> | 2019-07-23 14:49:45 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-07-23 14:49:45 -0700 |
| commit | 0079c186f0fd8f8f64afc7e0796dd2aa2882e2e3 (patch) | |
| tree | 17cee82cc520a5e6c2e5be6c09ff004b30d3853d /docs | |
| parent | 6d019cadf72698d98d82d8acf502d297cdc38305 (diff) | |
| download | vcpkg-0079c186f0fd8f8f64afc7e0796dd2aa2882e2e3.tar.gz vcpkg-0079c186f0fd8f8f64afc7e0796dd2aa2882e2e3.zip | |
[docs] add notes about manual-link (#7390)
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/maintainers/maintainer-guide.md | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/docs/maintainers/maintainer-guide.md b/docs/maintainers/maintainer-guide.md index 0baa45a02..e4938844f 100644 --- a/docs/maintainers/maintainer-guide.md +++ b/docs/maintainers/maintainer-guide.md @@ -34,7 +34,7 @@ At this time, the following helpers are deprecated: ### Avoid excessive comments in portfiles
-Ideally, portfiles should be short, simple, and as declarative as possible. Remove any helper comments introduced by the `create` command before submitting a PR.
+Ideally, portfiles should be short, simple, and as declarative as possible. Remove any boiler plate comments introduced by the `create` command before submitting a PR.
## Build Techniques
@@ -85,6 +85,15 @@ vcpkg_configure_cmake( Note that `ZLIB` in the above is case-sensitive. See the [cmake documentation](https://cmake.org/cmake/help/v3.15/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html) for more details.
+### Place conflicting libs in a `manual-link` directory
+
+A lib is considered conflicting if it does any of the following:
++ Define `main`
++ Define malloc
++ Define symbols that are also declared in other libraries
+
+Conflicting libs are typically by design and not considered a defect. Because some build systems link against everything in the lib directory, these should be moved into a subdirectory named `manual-link`.
+
## Versioning
### Follow common conventions for the `Version:` field
@@ -157,7 +166,7 @@ While `portfile.cmake`'s and `CMakeLists.txt`'s share a common syntax and core C Portfiles have direct access to variables set in the triplet file, but `CMakeLists.txt`s do not (though there is often a translation that happens -- `VCPKG_LIBRARY_LINKAGE` versus `BUILD_SHARED_LIBS`).
-Finally, portfiles and CMake builds invoked by portfiles are run in different processes. Conceptually:
+Portfiles and CMake builds invoked by portfiles are run in different processes. Conceptually:
```no-highlight
+----------------------------+ +------------------------------------+
|
