@daugasauron/dolly-image-default 0.0.0-stage → 0.1.4-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/Dollyfile +58 -0
  2. package/Dollyfile-amy +24 -0
  3. package/Dollyfile-core +49 -0
  4. package/Dollyfile-curl +58 -0
  5. package/Dollyfile-display +34 -0
  6. package/Dollyfile-ghostty-build +147 -0
  7. package/Dollyfile-git +191 -0
  8. package/Dollyfile-gzip +19 -0
  9. package/Dollyfile-mandoc +131 -0
  10. package/Dollyfile-nena +19 -0
  11. package/Dollyfile-posix +134 -0
  12. package/Dollyfile-ps +22 -0
  13. package/Dollyfile-system-build +464 -0
  14. package/Dollyfile-system-tools +242 -0
  15. package/Dollyfile-transfer +71 -0
  16. package/Dollyfile-zig-build +157 -0
  17. package/Dollyfile-zlib +48 -0
  18. package/README.md +18 -2
  19. package/dist/dolly-amy-system-snapshot.mjs +61 -0
  20. package/dist/dolly-core-system-snapshot.mjs +95 -0
  21. package/dist/dolly-curl-system-snapshot.mjs +74 -0
  22. package/dist/dolly-default-system-snapshot.mjs +459 -0
  23. package/dist/dolly-display-system-snapshot.mjs +98 -0
  24. package/dist/dolly-ghostty-build-system-snapshot.mjs +3583 -0
  25. package/dist/dolly-git-system-snapshot.mjs +137 -0
  26. package/dist/dolly-gzip-system-snapshot.mjs +70 -0
  27. package/dist/dolly-images.mjs +1268 -0
  28. package/dist/dolly-mandoc-system-snapshot.mjs +135 -0
  29. package/dist/dolly-nena-system-snapshot.mjs +58 -0
  30. package/dist/dolly-posix-system-snapshot.mjs +265 -0
  31. package/dist/dolly-ps-system-snapshot.mjs +43 -0
  32. package/dist/dolly-system-build-system-snapshot.mjs +1965 -0
  33. package/dist/dolly-system-tools-system-snapshot.mjs +2296 -0
  34. package/dist/dolly-transfer-system-snapshot.mjs +61 -0
  35. package/dist/dolly-zig-build-system-snapshot.mjs +3502 -0
  36. package/dist/dolly-zlib-system-snapshot.mjs +60 -0
  37. package/dist/packs/0783767f26f8e79bac2e9a5337aa05b4c7cf0e5ec3d03f73ca393d3949a064fa.snapshot.gz +0 -0
  38. package/dist/packs/153becb9a727327866389d89eca64e9f0b60a33d545b9e0e8c561e10c9ab327f.snapshot.gz +0 -0
  39. package/dist/packs/291bc8dc868becf690902a0092d64db86298ff26d6787cb742afb8ec86124ed0.snapshot.gz +0 -0
  40. package/dist/packs/3a6a5f2102877637bc6d81e66af9b5ab063c27a9ad0e9a01ad11df979f6b6acb.snapshot.gz +0 -0
  41. package/dist/packs/4d55e5ac579b6047065f9180df912fa2a21af4e1c764415a299cb89b3c0090c0.snapshot.gz +0 -0
  42. package/index.mjs +6 -0
  43. package/package.json +15 -4
@@ -0,0 +1,464 @@
1
+ DOLLY 7
2
+ TOOLCHAIN system-build
3
+ REQUIRES HOST runtime@0
4
+ REQUIRES HOST http@0
5
+
6
+ # This is the first step. It has no requirements: its exact compiler commands
7
+ # and C headers are the externally supplied bootstrap seed. How those headers
8
+ # eventually map to the lower-level machine contract is deliberately open.
9
+ SOURCE /v0.1.4/include/dolly/toolchain.h 6f9da3258e970e356c31034e1f109a04ac8bd5ab57dc82c19aebf293289fb415 /usr/include/dolly/toolchain.h
10
+ SOURCE /v0.1.4/include/dolly/runtime.h 1db3b267703af948051a171b06029560c3660ddbdc9f33f0c15f0b770bac7d3f /usr/include/dolly/runtime.h
11
+ SOURCE /v0.1.4/include/dolly/process.h 6919b5de21efa877d73ea8d004d88b66ec00b5a883bdbeece12e2ed14dc370b5 /usr/include/dolly/process.h
12
+ SOURCE /v0.1.4/host/http/http.h d09f57cda4a6cde89106653f12366ac95554c21d37d05a69c15764d4254b70a5 /usr/include/dolly/http.h
13
+ SOURCE /v0.1.4/host/http/http-abi.h 2f4e1e5c7145730babc91a0ff0a38db8b5e100ae1fab0b722b38ecbd53ad64a0 /usr/include/dolly/http-abi.h
14
+ SOURCE /v0.1.4/host/display/display.h 31054ebb6af133ea0a5de7e01730475a536a362261b1c24569a67d0749969633 /usr/include/dolly/display.h
15
+ SOURCE /v0.1.4/host/display/display-abi.h 89e4ac84fb4b807ed1aa5e47c28eb402746a1596d7949fa373ea45878782c05f /usr/include/dolly/display-abi.h
16
+ SOURCE /v0.1.4/host/input/input.h c380e2c168061ebd22785cbbcd6f7c7e05be2df187115ae1054c24cf39042a41 /usr/include/dolly/input.h
17
+ SOURCE /v0.1.4/host/input/input-abi.h f84f9ab4008108895a3e853fbb41b2194cd0cd41265cc9e14eae1c3b5a75220b /usr/include/dolly/input-abi.h
18
+ SOURCE /v0.1.4/host/download/download.h 666bca4fba5da7bf1e998c6486f56dce24cdbc82f1126f9be59067eb03b03bfa /usr/include/dolly/download.h
19
+ SOURCE /v0.1.4/host/download/download-abi.h 45cfbbc85fd2ea3846db581cc3129ef1ae1304a3f9ede06d5dae3b544bd6c0e0 /usr/include/dolly/download-abi.h
20
+
21
+ SOURCE /v0.1.4/include/dolly/host.h 9737f9b15bd65f5732e16bd942fe593132c7c886c3076dfda89a529a23fee08a /usr/include/dolly/host.h
22
+ SOURCE /v0.1.4/include/dolly/host-abi.h 3f2d26426bb088d61a0cc18b6c464697e98c83d8d34ffaf1d063768e619eb766 /usr/include/dolly/host-abi.h
23
+ SOURCE /v0.1.4/host/upload/upload.h 8d5b888175631a2f6dba010942f73e53c8514559de13ea336af804aa75f15eff /usr/include/dolly/upload.h
24
+ SOURCE /v0.1.4/host/upload/upload-abi.h 006056e6891a4d4399f521bc3b6a52362044dc146efb1bca46184c3cd9afb3e6 /usr/include/dolly/upload-abi.h
25
+
26
+ SOURCE /v0.1.4/host/threads/threads.h ec223fbc34ff65f173f4b15e338cb25bf34d8bf01b699418f4598d7fc4626394 /usr/include/dolly/threads.h
27
+ SOURCE /v0.1.4/host/threads/threads-abi.h 894528f5f392b8f95e4617035ac799b9ff4d520a246ec1bd89b6d04257c644c1 /usr/include/dolly/threads-abi.h
28
+ SOURCE /v0.1.4/host/dso/dso.h 8f58b257826b92a7f903d2a33484d6bc49bcc035dac5de3af288bc906728a67b /usr/include/dolly/dso.h
29
+ SOURCE /v0.1.4/host/dso/dso-abi.h 7b2243afa5cf82109b2768264686cb57e4a611a577a74793056b4f7cfc2e68f4 /usr/include/dolly/dso-abi.h
30
+
31
+ EXPORTS HEADER libc /usr/include
32
+ EXPORTS HEADER toolchain /usr/include/dolly/toolchain.h
33
+ EXPORTS HEADER runtime /usr/include/dolly/runtime.h
34
+ EXPORTS HEADER process /usr/include/dolly/process.h
35
+ EXPORTS HEADER http /usr/include/dolly/http.h
36
+ EXPORTS HEADER http-abi /usr/include/dolly/http-abi.h
37
+ EXPORTS HEADER display /usr/include/dolly/display.h
38
+ EXPORTS HEADER display-abi /usr/include/dolly/display-abi.h
39
+ EXPORTS HEADER input /usr/include/dolly/input.h
40
+ EXPORTS HEADER input-abi /usr/include/dolly/input-abi.h
41
+ EXPORTS HEADER download /usr/include/dolly/download.h
42
+ EXPORTS HEADER download-abi /usr/include/dolly/download-abi.h
43
+
44
+ EXPORTS HEADER host /usr/include/dolly/host.h
45
+ EXPORTS HEADER host-abi /usr/include/dolly/host-abi.h
46
+ EXPORTS HEADER upload /usr/include/dolly/upload.h
47
+ EXPORTS HEADER upload-abi /usr/include/dolly/upload-abi.h
48
+ EXPORTS HEADER threads /usr/include/dolly/threads.h
49
+ EXPORTS HEADER threads-abi /usr/include/dolly/threads-abi.h
50
+ EXPORTS HEADER dso /usr/include/dolly/dso.h
51
+ EXPORTS HEADER dso-abi /usr/include/dolly/dso-abi.h
52
+
53
+ EXPORTS LIB compiler-rt /usr/lib/libclang_rt.builtins.a
54
+
55
+ # These are the complete externally seeded compiler dependencies, not ambient
56
+ # additions to every boot. Images retain them by re-exporting these objects.
57
+ EXPORTS FOLDER process-sdk /usr/lib/dolly/process
58
+ EXPORTS FOLDER clang-headers /usr/lib/clang/24/include
59
+ EXPORTS FILE compiler /usr/libexec/dolly/process-bin/compiler
60
+ EXPORTS FILE kernel-plugin-abi /usr/lib/dolly/dolly-kernel-plugin-0.wasm
61
+
62
+ # Every program links the process libc: Emscripten's musl.
63
+ SOURCE /v0.1.4/dist/static/default/licenses/musl b870108ec5e7790e9f9919064f1b9421d62d5f9b0e6c230c6adf7ea2da62e97b /usr/share/licenses/musl/COPYRIGHT
64
+ SOURCE /v0.1.4/dist/static/default/licenses/emscripten 620a78084fc7ca97c0b5dea9abf891f3ffcadfdbf305276f099c9c4e12fc1d86 /usr/share/licenses/emscripten/LICENSE
65
+ FILE /usr/share/licenses/musl/COPYRIGHT
66
+ FILE /usr/share/licenses/emscripten/LICENSE
67
+
68
+ # cc, c++, ld and ar forward to the seed compiler. Only that compiler exists at
69
+ # this point, so RUN starts it for them; every later recipe step uses SLOP.
70
+ SOURCE /v0.1.4/dist/static/default/commands/cc.c b8e86a460434a6b60538229120365909697393d2c11bc3f18357be2c8d13c7f5 /tmp/process-tools/cc.c
71
+ SOURCE /v0.1.4/dist/static/default/commands/cxx.c a19b6b99a9a4f6c3473bb673c4e86c4857563839586e6e7c939c397585b281f3 /tmp/process-tools/cxx.c
72
+ SOURCE /v0.1.4/dist/static/default/commands/ld.c d12309353aeb2a80e3766e87c3e9936ac9fb434114e36287a1acbf3339bf104b /tmp/process-tools/ld.c
73
+ SOURCE /v0.1.4/dist/static/default/commands/ar.c f3007ddb171959a587b62d840253144198749acd8dbe0212b2cbd73a55dd83bd /tmp/process-tools/ar.c
74
+ RUN /usr/libexec/dolly/process-bin/compiler --dolly-toolchain-mode=c -O1 /tmp/process-tools/cc.c -o /bin/cc
75
+ RUN /usr/libexec/dolly/process-bin/compiler --dolly-toolchain-mode=c -O1 /tmp/process-tools/cxx.c -o /bin/c++
76
+ RUN /usr/libexec/dolly/process-bin/compiler --dolly-toolchain-mode=c -O1 /tmp/process-tools/ld.c -o /bin/ld
77
+ RUN /usr/libexec/dolly/process-bin/compiler --dolly-toolchain-mode=c -O1 /tmp/process-tools/ar.c -o /bin/ar
78
+
79
+ EXPORTS ENV CC cc
80
+ EXPORTS ENV AR ar
81
+ EXPORTS ENV PATH /bin:/usr/bin
82
+
83
+ # These programs are linked against the seeded process adapter, so their
84
+ # complete input identity is the image build ID rather than this recipe
85
+ # alone. They are still validated as dolly-process-0 executables when loaded.
86
+ # /bin/dollyfile is the engine running this recipe; the bootstrap compiles it.
87
+ EXPORTS TOOL cc
88
+ EXPORTS TOOL c++
89
+ EXPORTS TOOL ld
90
+ EXPORTS TOOL ar
91
+ EXPORTS TOOL dollyfile
92
+ # Slop runs every SLOP step, so it is built before any shell exists: RUN
93
+ # starts the seed compiler alone.
94
+ REQUIRES HEADER libc
95
+ REQUIRES HEADER runtime
96
+
97
+ SOURCE /v0.1.4/dist/static/default/slop.c 44ed93bd97c101396895c9351c42f572d17d33b4c843a17aa8074c34c2889bc4 /tmp/slop/slop.c
98
+ RUN /usr/libexec/dolly/process-bin/compiler --dolly-toolchain-mode=c -O1 /tmp/slop/slop.c -o /bin/slop
99
+
100
+ EXPORTS TOOL slop
101
+ EXPORTS ENV SHELL /bin/slop
102
+ REQUIRES TOOL cc
103
+
104
+ # Dolly's own small commands, from src/commands. Each TOOL export names the
105
+ # compiled result.
106
+ SOURCE /v0.1.4/dist/static/default/commands/mkdir.c 318f11bbf81beea92df1e4a2cb8dc02787c5eea4cffe62a8be9893503a8e572e /tmp/core-tools/mkdir.c
107
+ SOURCE /v0.1.4/dist/static/default/commands/rm.c 1213c22dc41e247f5fa072aad0431cdc54193dcf9091c8c749ea7880bef30af2 /tmp/core-tools/rm.c
108
+ SOURCE /v0.1.4/dist/static/default/commands/foreground.c e926c3c87764e44064744fc1d3cba008c46666ed7a06d351824ce67792bcdd76 /tmp/core-tools/foreground.c
109
+ SOURCE /v0.1.4/dist/static/default/commands/help.c 03ee0e2d8de33d99506f9a7c14018d2bd6e8e8146f9372f19c4974db1afee958 /tmp/core-tools/help.c
110
+ SOURCE /v0.1.4/dist/static/default/commands/man.c 03df8950d27ccd413c9da9cac1641d582f720d483e58e1e6f8e4b90e61e15fa0 /tmp/core-tools/man.c
111
+ SOURCE /v0.1.4/dist/static/default/commands/pwd.c 87886a74d8626d0bdbc2b364fe6ed8882522512d9f595709152dda298ef5c03f /tmp/core-tools/pwd.c
112
+ SOURCE /v0.1.4/dist/static/default/commands/cd.c 36d4c7708b332be6df90105bbc61cf8eb70556e3ed0f9f24756016eebec3d622 /tmp/core-tools/cd.c
113
+ SOURCE /v0.1.4/dist/static/default/commands/cat.c 82bffbefba15dcbd3aacb04135f3236be176a19704678aacb168ef02b91e04d4 /tmp/core-tools/cat.c
114
+ SOURCE /v0.1.4/dist/static/default/commands/echo.c afa079a258f25f9a7bcfce7191647e4bae8b0b0518476e903538ac88b3d9ad19 /tmp/core-tools/echo.c
115
+ SOURCE /v0.1.4/dist/static/default/commands/touch.c d80d0b12c21d4da8a238ca736b690452b94455a5e3e3bced7fc9ba20e44be286 /tmp/core-tools/touch.c
116
+ SOURCE /v0.1.4/dist/static/default/commands/clear.c f2e6915b3fe34393087ec7d04e61d090c0d62e551b86b36e8c3ff6bfff72598d /tmp/core-tools/clear.c
117
+ SOURCE /v0.1.4/dist/static/default/commands/ls.c 7c510abd3849e7d7966f5fe59378a096459b5591749ce61ae488b7436a48326e /tmp/core-tools/ls.c
118
+ SOURCE /v0.1.4/dist/static/default/commands/stat.c 1d39b289d8b2b4680e5c8ae8ec63bd183ba62864f5fd9bc0f180d1d97a64ef21 /tmp/core-tools/stat.c
119
+ SOURCE /v0.1.4/dist/static/default/commands/file.c ce908d435b9b29f79085e3fc8ddc36e52a9012e2a5e5da3c707b236d3b85f85e /tmp/core-tools/file.c
120
+ SOURCE /v0.1.4/dist/static/default/commands/test.c 738c318548c39b9e8e6b2108707c1f3a030fef9fd4ba3d4e6b84fbbb071e1866 /tmp/core-tools/test.c
121
+ SOURCE /v0.1.4/dist/static/default/commands/bracket.c 5dadee574cc128d583fe337e68b271cebbb3220dcd7e307fac08d4b5e9d73e4c /tmp/core-tools/bracket.c
122
+ SOURCE /v0.1.4/dist/static/default/commands/mv.c 326b21d8de8cd70652ec1ae1d42356095ee792c2608dfe362bba7ec05eacc9c3 /tmp/core-tools/mv.c
123
+ SOURCE /v0.1.4/dist/static/default/commands/cp.c 69ba86c9338bd97df04f06ccf84b9acd4e163f26d820efa066b6883152784ff1 /tmp/core-tools/cp.c
124
+ SLOP cc \
125
+ -O2 \
126
+ /tmp/core-tools/foreground.c \
127
+ -o /bin/foreground
128
+ SLOP cc \
129
+ -O2 \
130
+ /tmp/core-tools/help.c \
131
+ -o /bin/help
132
+ SLOP cc \
133
+ -O2 \
134
+ /tmp/core-tools/man.c \
135
+ -o /bin/man
136
+ SLOP cc \
137
+ -O2 \
138
+ /tmp/core-tools/pwd.c \
139
+ -o /bin/pwd
140
+ SLOP cc \
141
+ -O2 \
142
+ /tmp/core-tools/cd.c \
143
+ -o /bin/cd
144
+ SLOP cc \
145
+ -O2 \
146
+ /tmp/core-tools/cat.c \
147
+ -o /bin/cat
148
+ SLOP cc \
149
+ -O2 \
150
+ /tmp/core-tools/echo.c \
151
+ -o /bin/echo
152
+ SLOP cc \
153
+ -O2 \
154
+ /tmp/core-tools/touch.c \
155
+ -o /bin/touch
156
+ SLOP cc \
157
+ -O2 \
158
+ /tmp/core-tools/clear.c \
159
+ -o /bin/clear
160
+ SLOP cc \
161
+ -O2 \
162
+ /tmp/core-tools/ls.c \
163
+ -o /bin/ls
164
+ SLOP cc \
165
+ -O2 \
166
+ /tmp/core-tools/stat.c \
167
+ -o /bin/stat
168
+ SLOP cc \
169
+ -O2 \
170
+ /tmp/core-tools/file.c \
171
+ -o /bin/file
172
+ SLOP cc \
173
+ -O2 \
174
+ /tmp/core-tools/test.c \
175
+ -o /bin/test
176
+ SLOP cc \
177
+ -O2 \
178
+ -I /tmp/core-tools \
179
+ /tmp/core-tools/bracket.c \
180
+ -o /bin/[
181
+ SLOP cc \
182
+ -O2 \
183
+ /tmp/core-tools/mv.c \
184
+ -o /bin/mv
185
+ SLOP cc \
186
+ -O2 \
187
+ /tmp/core-tools/cp.c \
188
+ -o /bin/cp
189
+ SLOP cc \
190
+ -O2 \
191
+ /tmp/core-tools/mkdir.c \
192
+ -o /bin/mkdir
193
+ SLOP cc \
194
+ -O2 \
195
+ /tmp/core-tools/rm.c \
196
+ -o /bin/rm
197
+ EXPORTS TOOL mkdir
198
+ EXPORTS TOOL rm
199
+ EXPORTS TOOL foreground
200
+ EXPORTS TOOL help
201
+ EXPORTS TOOL man
202
+ EXPORTS TOOL pwd
203
+ EXPORTS TOOL cd
204
+ EXPORTS TOOL cat
205
+ EXPORTS TOOL echo
206
+ EXPORTS TOOL touch
207
+ EXPORTS TOOL clear
208
+ EXPORTS TOOL ls
209
+ EXPORTS TOOL stat
210
+ EXPORTS TOOL file
211
+ EXPORTS TOOL test
212
+ EXPORTS TOOL [
213
+ EXPORTS TOOL mv
214
+ EXPORTS TOOL cp
215
+
216
+ # A page is a file under /usr/share/man. One of Dolly's own commands has a
217
+ # single text: the page is what NAME --help prints, captured when it is built.
218
+ SLOP mkdir \
219
+ -p \
220
+ /usr/share/man/cat1 \
221
+ /usr/share/man/man1
222
+ SLOP for name in ar c++ cat cc cd clear cp dollyfile echo file foreground help ld ls man mkdir mv pwd rm slop stat touch; do \
223
+ "/bin/$name" --help > "/usr/share/man/cat1/$name.1"; \
224
+ done
225
+ SLOP help >> /usr/share/man/cat1/slop.1
226
+ FILE /usr/share/man/cat1/test.1
227
+ usage: test EXPRESSION
228
+ [ EXPRESSION ]
229
+ Exit 0 when EXPRESSION is true, 1 when it is false or missing, 2 when it is malformed.
230
+ -e FILE FILE exists (-r and -w are the same: there are no permission bits)
231
+ -f FILE FILE is a regular file
232
+ -d FILE FILE is a directory
233
+ -x FILE FILE is a regular file or a directory
234
+ -h FILE, -L FILE FILE is a symbolic link
235
+ -s FILE FILE is not empty
236
+ -n STRING STRING is not empty (so is a lone STRING)
237
+ -z STRING STRING is empty
238
+ A = B, A != B the strings are equal (== is the same), differ
239
+ M -eq N the integers are equal; also -ne -lt -le -gt -ge
240
+ F -nt G, F -ot G F was modified after, before G (a missing file is older)
241
+ F -ef G F and G are the same file
242
+ ! E, E -a E, E -o E, ( E ) not, and, or, grouping
243
+ example: test -d /tmp && [ "$HOME" != / ]
244
+ SLOP cp /usr/share/man/cat1/test.1 '/usr/share/man/cat1/[.1'
245
+
246
+ SLOP rm \
247
+ -rf \
248
+ /tmp/core-tools
249
+ REQUIRES TOOL rm
250
+
251
+ # Dolly's deliberately small ustar extractor.
252
+ SOURCE /v0.1.4/dist/static/default/commands/tar.c 18adec6edc7ae34a305f31890f671cb69ae6ec3979df4d34e2d759295a410890 /tmp/bootstrap/tar.c
253
+ SLOP cc \
254
+ /tmp/bootstrap/tar.c \
255
+ -o /bin/tar
256
+
257
+ EXPORTS TOOL tar
258
+
259
+ SLOP tar --help > /usr/share/man/cat1/tar.1
260
+
261
+ SLOP rm \
262
+ -rf \
263
+ /tmp/bootstrap
264
+ # The module owns Make's build-time command vocabulary. `cp` is required here,
265
+ # rather than by consumers which merely invoke Make, because real Make recipes
266
+ # rely on it. The Dollyfile checker documents this build contract; it is not a
267
+ # runtime sandbox for Make or Slop.
268
+ REQUIRES TOOL cp
269
+ REQUIRES TOOL mkdir
270
+ REQUIRES TOOL tar
271
+
272
+ SOURCE /v0.1.4/dist/static/default/make-4.4.1.tar 5dce03b47a90e26891e789b3361481c65765e12bd8dc79ec0cf949336ef94616 /tmp/make-4.4.1.tar
273
+ SOURCE /v0.1.4/dist/static/default/runtimes/make-amalgamation-dolly.c c37c85dd20c843b9bface7e12bd190f8d943b18c0b2b5e0341cfdc2cba11b4fd /tmp/make-4.4.1/make-amalgamation-dolly.c
274
+
275
+ SLOP tar \
276
+ -xf /tmp/make-4.4.1.tar \
277
+ -C /
278
+ SLOP mkdir \
279
+ -p \
280
+ /usr/bin
281
+ SLOP cc \
282
+ -c \
283
+ -O1 \
284
+ -std=gnu11 \
285
+ -DHAVE_CONFIG_H \
286
+ -I /usr/src/make \
287
+ -I /usr/src/make/src \
288
+ -I /usr/src/make/lib \
289
+ '-DLIBDIR="/usr/lib"' \
290
+ '-DLOCALEDIR="/usr/share/locale"' \
291
+ -DDOLLY_MAKE_PART=1 \
292
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
293
+ -o /tmp/make-4.4.1/part-1.o
294
+ SLOP cc \
295
+ -c \
296
+ -O1 \
297
+ -std=gnu11 \
298
+ -DHAVE_CONFIG_H \
299
+ -I /usr/src/make \
300
+ -I /usr/src/make/src \
301
+ -I /usr/src/make/lib \
302
+ '-DLIBDIR="/usr/lib"' \
303
+ '-DLOCALEDIR="/usr/share/locale"' \
304
+ -DDOLLY_MAKE_PART=2 \
305
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
306
+ -o /tmp/make-4.4.1/part-2.o
307
+ SLOP cc \
308
+ -c \
309
+ -O1 \
310
+ -std=gnu11 \
311
+ -DHAVE_CONFIG_H \
312
+ -I /usr/src/make \
313
+ -I /usr/src/make/src \
314
+ -I /usr/src/make/lib \
315
+ '-DLIBDIR="/usr/lib"' \
316
+ '-DLOCALEDIR="/usr/share/locale"' \
317
+ -DDOLLY_MAKE_PART=3 \
318
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
319
+ -o /tmp/make-4.4.1/part-3.o
320
+ SLOP cc \
321
+ -c \
322
+ -O1 \
323
+ -std=gnu11 \
324
+ -DHAVE_CONFIG_H \
325
+ -I /usr/src/make \
326
+ -I /usr/src/make/src \
327
+ -I /usr/src/make/lib \
328
+ '-DLIBDIR="/usr/lib"' \
329
+ '-DLOCALEDIR="/usr/share/locale"' \
330
+ -DDOLLY_MAKE_PART=4 \
331
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
332
+ -o /tmp/make-4.4.1/part-4.o
333
+ SLOP cc \
334
+ -c \
335
+ -O1 \
336
+ -std=gnu11 \
337
+ -DHAVE_CONFIG_H \
338
+ -I /usr/src/make \
339
+ -I /usr/src/make/src \
340
+ -I /usr/src/make/lib \
341
+ '-DLIBDIR="/usr/lib"' \
342
+ '-DLOCALEDIR="/usr/share/locale"' \
343
+ -DDOLLY_MAKE_PART=5 \
344
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
345
+ -o /tmp/make-4.4.1/part-5.o
346
+ SLOP cc \
347
+ -c \
348
+ -O1 \
349
+ -std=gnu11 \
350
+ -DHAVE_CONFIG_H \
351
+ -I /usr/src/make \
352
+ -I /usr/src/make/src \
353
+ -I /usr/src/make/lib \
354
+ '-DLIBDIR="/usr/lib"' \
355
+ '-DLOCALEDIR="/usr/share/locale"' \
356
+ -DDOLLY_MAKE_PART=6 \
357
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
358
+ -o /tmp/make-4.4.1/part-6.o
359
+ SLOP cc \
360
+ -c \
361
+ -O1 \
362
+ -std=gnu11 \
363
+ -DHAVE_CONFIG_H \
364
+ -I /usr/src/make \
365
+ -I /usr/src/make/src \
366
+ -I /usr/src/make/lib \
367
+ '-DLIBDIR="/usr/lib"' \
368
+ '-DLOCALEDIR="/usr/share/locale"' \
369
+ -DDOLLY_MAKE_PART=7 \
370
+ /tmp/make-4.4.1/make-amalgamation-dolly.c \
371
+ -o /tmp/make-4.4.1/part-7.o
372
+ SLOP cc \
373
+ /tmp/make-4.4.1/part-1.o \
374
+ /tmp/make-4.4.1/part-2.o \
375
+ /tmp/make-4.4.1/part-3.o \
376
+ /tmp/make-4.4.1/part-4.o \
377
+ /tmp/make-4.4.1/part-5.o \
378
+ /tmp/make-4.4.1/part-6.o \
379
+ /tmp/make-4.4.1/part-7.o \
380
+ -o /usr/bin/make
381
+
382
+ EXPORTS TOOL make
383
+
384
+ SLOP make \
385
+ --version
386
+ SLOP make --help > /usr/share/man/cat1/make.1
387
+ # FOLDER keeps the members a directory has at this row: the last page is written.
388
+ FOLDER /usr/share/man
389
+
390
+ FILE /usr/share/licenses/make/COPYING
391
+
392
+ SLOP rm \
393
+ -rf \
394
+ /tmp/make-4.4.1 \
395
+ /tmp/make-4.4.1.tar \
396
+ /usr/src/make
397
+ # libc++, libc++abi and libunwind are Emscripten's copy, compiled here from its
398
+ # pinned source with the flags of its own build (tools/system_libs.py,
399
+ # -ww-wasmexcept; its -mt-wasmexcept build is the same bytes) for the headers
400
+ # installed beside them. Every C++ link takes them, including explicit
401
+ # -lc++/-lc++abi; the links above this point are C and need none.
402
+ REQUIRES FOLDER process-sdk
403
+ REQUIRES TOOL c++
404
+ REQUIRES TOOL cc
405
+ REQUIRES TOOL ar
406
+ REQUIRES TOOL make
407
+
408
+ SOURCE /v0.1.4/dist/static/default/libcxx-headers.tar 5e558f6f862d4a3fb22cc3c5b62c5e2652bf699f176fa349eeecb85d1a946735 /tmp/cpp/libcxx-headers.tar
409
+ SOURCE /v0.1.4/dist/static/default/libcxx.tar 2dff834a9e5e907476841437518cfdd568563e922e7a22f3261da114e1b1a1e8 /tmp/cpp/libcxx.tar
410
+ SOURCE /v0.1.4/dist/static/default/licenses/libcxx 539dd7aed86e8a4f12cbdd0e6c50c189c7d74847e4fecc64ce2c6ee3a01da38b /usr/share/licenses/libcxx/LICENSE
411
+ SOURCE /v0.1.4/dist/static/default/licenses/libcxxabi e2b35be49f7284a45b7baca8fc7b3ab7440e7902392b2528a457816b5bb2a15c /usr/share/licenses/libcxxabi/LICENSE
412
+
413
+ SLOP tar \
414
+ -xf /tmp/cpp/libcxx-headers.tar \
415
+ -C /
416
+ SLOP tar \
417
+ -xf /tmp/cpp/libcxx.tar \
418
+ -C /
419
+
420
+ FILE /tmp/cpp/Makefile
421
+ .RECIPEPREFIX := >
422
+ S := /tmp/cpp/system/lib
423
+ L := /usr/lib/dolly/process
424
+ # Static code with hidden symbols, as for a program. The directory is the one
425
+ # Emscripten's build names, so the code and data are its archives' bytes.
426
+ FLAGS := -Oz -g -fno-pic -fvisibility=hidden -ffile-prefix-map=/tmp/cpp=/emsdk/emscripten -DNDEBUG
427
+ COMPILE := c++ $(FLAGS) -std=c++23 -D_LIBCPP_BUILDING_LIBRARY -I$S/libcxx/src -I/tmp/cpp/system/include
428
+ LIBCXX := $(filter-out %/int128_builtins.cpp,$(wildcard $S/libcxx/src/*.cpp $S/libcxx/src/filesystem/*.cpp \
429
+ $S/libcxx/src/ryu/*.cpp)) $(addprefix $S/libcxx/src/experimental/,chrono_exception.cpp keep.cpp log_hardening_failure.cpp)
430
+ LIBCXXABI := $(addprefix $S/libcxxabi/src/,abort_message.cpp cxa_aux_runtime.cpp cxa_default_handlers.cpp \
431
+ cxa_demangle.cpp cxa_guard.cpp cxa_handlers.cpp cxa_virtual.cpp cxa_thread_atexit.cpp fallback_malloc.cpp \
432
+ stdlib_new_delete.cpp stdlib_exception.cpp stdlib_stdexcept.cpp stdlib_typeinfo.cpp private_typeinfo.cpp \
433
+ cxa_exception_js_utils.cpp cxa_exception_storage.cpp cxa_exception.cpp cxa_personality.cpp)
434
+ objects = $(sort $(addprefix /tmp/cpp/$1/,$(addsuffix .o,$(basename $(notdir $2)))))
435
+ all: $L/libc++-ww-wasmexcept.a $L/libc++abi-ww-wasmexcept.a $L/libunwind-ww-wasmexcept.a
436
+ $L/libc++-ww-wasmexcept.a: $(call objects,libc++,$(LIBCXX))
437
+ $L/libc++abi-ww-wasmexcept.a: $(call objects,libc++abi,$(LIBCXXABI))
438
+ $L/libunwind-ww-wasmexcept.a: /tmp/cpp/libunwind/Unwind-wasm.o
439
+ $L/%.a:
440
+ >ar rc $@ $^
441
+ define compile
442
+ /tmp/cpp/$1/$(basename $(notdir $2)).o: $2
443
+ >$3 -c $$< -o $$@
444
+ endef
445
+ $(foreach source,$(LIBCXX),$(eval $(call compile,libc++,$(source),$(COMPILE) -DLIBCXX_BUILDING_LIBCXXABI=1 \
446
+ -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -DLIBC_NAMESPACE=__llvm_libc -I$S/llvm-libc)))
447
+ $(foreach source,$(LIBCXXABI),$(eval $(call compile,libc++abi,$(source),$(COMPILE) -D_LIBCXXABI_USE_FUTEX \
448
+ -D_LIBCXXABI_BUILDING_LIBRARY -DLIBCXXABI_NON_DEMANGLING_TERMINATE -I$S/libunwind/include)))
449
+ $(eval $(call compile,libunwind,$S/libunwind/src/Unwind-wasm.c,cc $(FLAGS) -D_LIBUNWIND_HIDE_SYMBOLS \
450
+ -I$S/libunwind/include))
451
+ SLOP mkdir /tmp/cpp/libc++ /tmp/cpp/libc++abi /tmp/cpp/libunwind
452
+ SLOP make -C /tmp/cpp -j2
453
+
454
+ EXPORTS HEADER cpp /usr/include/c++/v1
455
+ EXPORTS LIB c++ /usr/lib/dolly/process/libc++-ww-wasmexcept.a
456
+ EXPORTS LIB c++abi /usr/lib/dolly/process/libc++abi-ww-wasmexcept.a
457
+ EXPORTS ENV CXX c++
458
+
459
+ FILE /usr/share/licenses/libcxx/LICENSE
460
+ FILE /usr/share/licenses/libcxxabi/LICENSE
461
+
462
+ SLOP rm \
463
+ -rf \
464
+ /tmp/cpp