aboutsummaryrefslogtreecommitdiff
path: root/winsup/doc/faq-programming.xml
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/doc/faq-programming.xml')
-rw-r--r--winsup/doc/faq-programming.xml55
1 files changed, 42 insertions, 13 deletions
diff --git a/winsup/doc/faq-programming.xml b/winsup/doc/faq-programming.xml
index a834298..ae9bdb8 100644
--- a/winsup/doc/faq-programming.xml
+++ b/winsup/doc/faq-programming.xml
@@ -676,17 +676,18 @@ rewriting the runtime library in question from specs...
<answer>
<para>First, you need to make sure you have the necessary build tools
-installed; you at least need <literal>gcc-g++</literal>,
-<literal>make</literal>, <literal>automake</literal>,
-<literal>autoconf</literal>, <literal>git</literal>, <literal>perl</literal>,
-<literal>cocom</literal> and <literal>patch</literal>.
+installed; you at least need <literal>autoconf</literal>,
+<literal>automake</literal>, <literal>cocom</literal>,
+<literal>gcc-g++</literal>, <literal>git</literal>,
+<literal>libtool</literal>, <literal>make</literal>,
+<literal>patch</literal>, and <literal>perl</literal>.
</para>
<para>
Additionally, building the <code>dumper</code> utility requires
-<literal>gettext-devel</literal>, <literal>libiconv-devel</literal>, <literal>libzstd-devel</literal> and
-<literal>zlib-devel</literal>. Building this program can be disabled with the
-<literal>--disable-dumper</literal> option to <literal>configure</literal>.
+<literal>gettext-devel</literal>, <literal>libiconv</literal>,
+<literal>libiconv-devel</literal>, <literal>libiconv2</literal>,
+<literal>libzstd-devel</literal>, and <literal>zlib-devel</literal>.
</para>
<para>
@@ -697,19 +698,47 @@ Building these programs can be disabled with the <literal>--without-cross-bootst
option to <literal>configure</literal>.
</para>
+<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>.
+</para>
+
+<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>
+
<!-- If you want to run the tests <literal>busybox</literal> and
- <literal>cygutils-extra<literal> are also required. -->
+ <literal>cygutils-extra</literal> are also required. -->
<para>
Building the documentation also requires the <literal>dblatex</literal>,
-<literal>docbook2X</literal>, <literal>docbook-xml45</literal>,
-<literal>docbook-xsl</literal>, and <literal>xmlto</literal> packages. Building
-the documentation can be disabled with the <literal>--disable-doc</literal>
-option to <literal>configure</literal>.
+<literal>docbook-utils</literal>, <literal>docbook-xml45</literal>,
+<literal>docbook-xsl</literal>, <literal>docbook2X</literal>,
+<literal>perl-XML-SAX-Expat</literal>, and <literal>xmlto</literal>
+packages. Building the documentation can be disabled with the
+<literal>--disable-doc</literal> option to <literal>configure</literal>.
+</para>
+
+<para>
+Below are ready-made commands to download the required
+packages. When you reach the <emphasis>Select Packages</emphasis> screen,
+these packages should be amongst the search results.
</para>
+<screen>
+$ setup-x86_64.exe -P autoconf,automake,cocom,gcc-g++,git,libtool,make,patch,perl # download build tool packages
+$ setup-x86_64.exe -P gettext-devel,libiconv,libiconv-devel,libiconv2,libzstd-devel,zlib-devel # download dumper packages
+$ setup-x86_64.exe -P mingw64-x86_64-gcc-g++,mingw64-x86_64-zlib # download utility packages
+$ setup-x86_64.exe -P dblatex,docbook-utils,docbook-xml45,docbook-xsl,docbook2X,perl-XML-SAX-Expat,xmlto # download documentation packages
+</screen>
<para>Next, check out the Cygwin sources from the
-<ulink url="https://cygwin.com/git.html">Cygwin GIT source repository</ulink>).
+<ulink url="https://cygwin.com/git.html">Cygwin GIT source repository</ulink>.
This is the <emphasis>preferred method</emphasis> for acquiring the sources.
Otherwise, if you are trying to duplicate a cygwin release then you should
download the corresponding source package