On 16/07/2025 20:37, Radek Barton via Cygwin-patches wrote:
Hello.
I was going to submit `--disable-utils` as a separate patch but in the context
adding the FAQ, it makes sense to include it to a single patch together.
Ah, I see.
This all seems good to me.
---
From f0240097f681335c6b2373f4a04685ee687bdeef Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Radek=20Barto=C5=88?= <[email protected]>
Date: Sat, 21 Jun 2025 22:56:58 +0200
Subject: [PATCH v3] Cygwin: configure: add possibility to skip build of
cygserver and utils
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This patch adds configure options allowing to disable build of cygserver
and Cygwin utilities. This is useful when one needs to build only
cygwin1.dll and crt0.o with stage1 compiler that is not yet capable of
linking executables as it is missing cygwin1.dll and crt0.o.
[...]
+<para>
+Build of <literal>cygserver</literal> can be skipped with
+<literal>--disable-cygserver</literal> and build of other Cygwin utilities with
+<literal>--disable-utils</literal>. This is particularly useful (together
+with <literal>--without-cross-bootstrap</literal> and
+<literal>--disable-dumper</literal> options) when only
+<literal>cygwin1.dll</literal> and <literal>crt0.o</literal> are needed for
+stage2 compiler when being built with stage1 compiler which does not support
+linking executables yet (because of missing <literal>cygwin1.dll</literal> and
+<literal>crt0.o</literal>).
+</para>
+
So, if it was me, I'd make the last sentence here a separate paragraph,
which describes the result, not the change, e.g.
<para>
In combination, <literal>--disable-cygserver</literal>,
<literal>--disable-dumper</literal>, <literal>--disable-utils</literal>
and <literal>--without-cross-bootstrap</literal> allow building of
just <literal>cygwin1.dll</literal> and <literal>crt0.o</literal> for
a stage2 compiler, when being built with stage1 compiler which does not
support linking executables yet (because those files are missing).
</para>
Unrelated, but maybe the name of "--without-cross-bootstrap" should be
changed? It's difficult to parse what it's saying "boostrapping, so
without cross tools"? And then there was that report that the logic was
upside down or something?
[1] https://cygwin.com/pipermail/cygwin/2024-November/256763.html