updated docs for dylib paths
This commit is contained in:
@@ -91,10 +91,10 @@ Local packages are symlinked into the shop, making development seamless.
|
||||
|
||||
## The Shop
|
||||
|
||||
ƿit stores all packages in the **shop** at `~/.pit/`:
|
||||
ƿit stores all packages in the **shop** at `~/.cell/`:
|
||||
|
||||
```
|
||||
~/.pit/
|
||||
~/.cell/
|
||||
├── packages/
|
||||
│ ├── core -> gitea.pockle.world/john/cell
|
||||
│ ├── gitea.pockle.world/
|
||||
@@ -105,14 +105,8 @@ Local packages are symlinked into the shop, making development seamless.
|
||||
│ └── john/
|
||||
│ └── work/
|
||||
│ └── mylib -> /Users/john/work/mylib
|
||||
├── lib/
|
||||
│ ├── core/
|
||||
│ │ ├── fd.dylib
|
||||
│ │ └── time.mach
|
||||
│ └── gitea_pockle_world_john_prosperon/
|
||||
│ └── sprite.dylib
|
||||
├── build/
|
||||
│ └── <content-addressed cache>
|
||||
│ └── <content-addressed cache (bytecode, dylibs, manifests)>
|
||||
├── cache/
|
||||
│ └── <downloaded zips>
|
||||
├── lock.toml
|
||||
@@ -175,16 +169,16 @@ pit link delete gitea.pockle.world/john/prosperon
|
||||
|
||||
## C Extensions
|
||||
|
||||
C files in a package are compiled into per-file dynamic libraries:
|
||||
C files in a package are compiled into per-file dynamic libraries stored in the content-addressed build cache:
|
||||
|
||||
```
|
||||
mypackage/
|
||||
├── cell.toml
|
||||
├── render.c # compiled to lib/mypackage/render.dylib
|
||||
└── physics.c # compiled to lib/mypackage/physics.dylib
|
||||
├── render.c # compiled to ~/.cell/build/<hash>
|
||||
└── physics.c # compiled to ~/.cell/build/<hash>
|
||||
```
|
||||
|
||||
Each `.c` file gets its own `.dylib` in `~/.pit/lib/<pkg>/`. A `.c` file and `.cm` file with the same stem at the same scope is a build error — use distinct names.
|
||||
Each `.c` file gets its own `.dylib` at a content-addressed path in `~/.cell/build/`. A per-package manifest maps module names to their dylib paths so the runtime can find them — see [Dylib Manifests](/docs/shop/#dylib-manifests). A `.c` file and `.cm` file with the same stem at the same scope is a build error — use distinct names.
|
||||
|
||||
See [Writing C Modules](/docs/c-modules/) for details.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user