7544230e6b094f773388f206c012a4540d603fcc
[fedora-mingw.git] / README
1 This repository contains:
2
3  * MinGW SIG packages _before_ they are accepted into Fedora CVS.
4
5  * Any other tools / scripts we need.
6
7 Other useful information:
8
9  * https://fedoraproject.org/wiki/SIGs/MinGW
10
11 Build everything
12 ----------------------------------------------------------------------
13
14  * Install mock
15
16  * Install smock (read smock/README)
17
18  * Download source tarballs and put them in each package directory
19    (see .hgignore and the specfiles for a list).
20
21  * Run ./build-everything-in-mock.sh
22
23  * Build logs are printed to the screen and saved in 'buildall.log'
24
25 Package notes
26 ----------------------------------------------------------------------
27
28  ( 1) mingw-filesystem
29
30       This is the base package containing the filesystem, RPM macros
31       and other stuff that everything depends on.  This is a pure
32       Fedora RPM with no outside dependencies.
33
34  ( 2) mingw-binutils
35
36       This is just a straight cross-compile of binutils.  It has
37       no BuildRequires beyond what is in basic Fedora already.
38
39  ( 3) mingw-runtime-bootstrap
40  ( 4) mingw-w32api-bootstrap
41
42       These are NOT real Fedora packages.  Instead they are BINARY
43       packages which is just needed first time if you are building
44       from scratch.  It contains some Windows binaries and header
45       files which are needed to bootstrap everything, and which
46       would normally be built by the packages below (specifically
47       by mingw-runtime and mingw-w32api).
48
49       Note: If you already have mingw packages installed then you
50       should not build this package.
51
52  ( 5) mingw-gcc
53
54  ( 6) mingw-runtime
55  ( 7) mingw-w32api
56
57       Note that once built and installed, these last two replace the
58       files built from binaries in mingw-{runtime,w32api}-bootstrap.
59
60 Then for the rest, use ./show-build-order.pl which is a script which
61 works out the correct order to build packages and will display the
62 list of commands that you have to invoke to do this.
63
64 (Note that show-build-order.pl doesn't actually build anything - it
65 just prints suggested commands).