Fossil SCM

The recommendation to configure Fossil with the --static flag is semi-obsolete, and the following advice to look further down in the same document for the Docker workaround was wholly obsolete since moving all of this into the dedicated containers.md doc. Fixed all this up, and linked to the "why" answers on Stack Overflow about all of this in a few more places.

wyoung 2023-03-02 17:24 trunk
Commit d282e42cd22cf71287bfdacaf6e33196b02dbad62f924b12f8497fcaf4f51db9
2 files changed +6 -3 +3 -1
+6 -3
--- www/build.wiki
+++ www/build.wiki
@@ -111,13 +111,16 @@
111111
112112
<p>For more advanced use cases, see the [./ssl.wiki#openssl-bin|OpenSSL
113113
discussion in the "TLS and Fossil" document].</p>
114114
115115
<li><p>
116
-To build a statically linked binary (suitable for use inside a chroot
117
-jail) add the <b>--static</b> option. (See the [#docker | Docker section
118
-below].)
116
+To build a statically linked binary, you can <i>try</i> adding
117
+the <b>--static</b> option, but
118
+[https://stackoverflow.com/questions/3430400/linux-static-linking-is-dead
119
+| it may well not work]. If your platform of choice is affected by this,
120
+the simplest workaround we're aware of is to build a Fossil container,
121
+then [./containers.md#static | extract the static executable from it].
119122
120123
<li><p>
121124
To enable the native [./th1.md#tclEval | Tcl integration feature] feature,
122125
add the <b>--with-tcl=1</b> and <b>--with-tcl-private-stubs=1</b> options.
123126
124127
--- www/build.wiki
+++ www/build.wiki
@@ -111,13 +111,16 @@
111
112 <p>For more advanced use cases, see the [./ssl.wiki#openssl-bin|OpenSSL
113 discussion in the "TLS and Fossil" document].</p>
114
115 <li><p>
116 To build a statically linked binary (suitable for use inside a chroot
117 jail) add the <b>--static</b> option. (See the [#docker | Docker section
118 below].)
 
 
 
119
120 <li><p>
121 To enable the native [./th1.md#tclEval | Tcl integration feature] feature,
122 add the <b>--with-tcl=1</b> and <b>--with-tcl-private-stubs=1</b> options.
123
124
--- www/build.wiki
+++ www/build.wiki
@@ -111,13 +111,16 @@
111
112 <p>For more advanced use cases, see the [./ssl.wiki#openssl-bin|OpenSSL
113 discussion in the "TLS and Fossil" document].</p>
114
115 <li><p>
116 To build a statically linked binary, you can <i>try</i> adding
117 the <b>--static</b> option, but
118 [https://stackoverflow.com/questions/3430400/linux-static-linking-is-dead
119 | it may well not work]. If your platform of choice is affected by this,
120 the simplest workaround we're aware of is to build a Fossil container,
121 then [./containers.md#static | extract the static executable from it].
122
123 <li><p>
124 To enable the native [./th1.md#tclEval | Tcl integration feature] feature,
125 add the <b>--with-tcl=1</b> and <b>--with-tcl-private-stubs=1</b> options.
126
127
--- www/containers.md
+++ www/containers.md
@@ -350,11 +350,11 @@
350350
we’ve got everything reduced to the two key static binaries — Fossil and
351351
BusyBox — we throw all the rest of it away.
352352
353353
A secondary benefit falls out of this process for free: it’s arguably
354354
the easiest way to build a purely static Fossil binary for Linux. Most
355
-modern Linux distros make this surprisingly difficult, but Alpine’s
355
+modern Linux distros make this [surprisingly difficult][lsl], but Alpine’s
356356
back-to-basics nature makes static builds work the way they used to,
357357
back in the day. If that’s all you’re after, you can do so as easily as
358358
this:
359359
360360
```
@@ -364,10 +364,12 @@
364364
$ docker container rm fossil-static-tmp
365365
```
366366
367367
The resulting binary is the single largest file inside that container,
368368
at about 6 MiB. (It’s built stripped.)
369
+
370
+[lsl]: https://stackoverflow.com/questions/3430400/linux-static-linking-is-dead
369371
370372
371373
## 5. <a id="args"></a>Container Build Arguments
372374
373375
### <a id="pkg-vers"></a> 5.1 Package Versions
374376
--- www/containers.md
+++ www/containers.md
@@ -350,11 +350,11 @@
350 we’ve got everything reduced to the two key static binaries — Fossil and
351 BusyBox — we throw all the rest of it away.
352
353 A secondary benefit falls out of this process for free: it’s arguably
354 the easiest way to build a purely static Fossil binary for Linux. Most
355 modern Linux distros make this surprisingly difficult, but Alpine’s
356 back-to-basics nature makes static builds work the way they used to,
357 back in the day. If that’s all you’re after, you can do so as easily as
358 this:
359
360 ```
@@ -364,10 +364,12 @@
364 $ docker container rm fossil-static-tmp
365 ```
366
367 The resulting binary is the single largest file inside that container,
368 at about 6 MiB. (It’s built stripped.)
 
 
369
370
371 ## 5. <a id="args"></a>Container Build Arguments
372
373 ### <a id="pkg-vers"></a> 5.1 Package Versions
374
--- www/containers.md
+++ www/containers.md
@@ -350,11 +350,11 @@
350 we’ve got everything reduced to the two key static binaries — Fossil and
351 BusyBox — we throw all the rest of it away.
352
353 A secondary benefit falls out of this process for free: it’s arguably
354 the easiest way to build a purely static Fossil binary for Linux. Most
355 modern Linux distros make this [surprisingly difficult][lsl], but Alpine’s
356 back-to-basics nature makes static builds work the way they used to,
357 back in the day. If that’s all you’re after, you can do so as easily as
358 this:
359
360 ```
@@ -364,10 +364,12 @@
364 $ docker container rm fossil-static-tmp
365 ```
366
367 The resulting binary is the single largest file inside that container,
368 at about 6 MiB. (It’s built stripped.)
369
370 [lsl]: https://stackoverflow.com/questions/3430400/linux-static-linking-is-dead
371
372
373 ## 5. <a id="args"></a>Container Build Arguments
374
375 ### <a id="pkg-vers"></a> 5.1 Package Versions
376

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button