21 ## Getting the Bits |
21 ## Getting the Bits |
22 As mentioned, the gate is stored in a Mercurial repository. In order to |
22 As mentioned, the gate is stored in a Mercurial repository. In order to |
23 build or develop in the gate, you will need to clone it. You can do so |
23 build or develop in the gate, you will need to clone it. You can do so |
24 with the following command |
24 with the following command |
25 |
25 |
26 $ git clone https://github.com/oracle/solaris-userland.git /scratch/clone |
26 $ git clone https://github.com/oracle/solaris-userland.git /scratch/clone |
27 |
27 |
28 This will create a replica of the various pieces that are checked into the |
28 This will create a replica of the various pieces that are checked into the |
29 source code management system, but it does not retrieve the community |
29 source code management system, but it does not retrieve the community |
30 source archives associated with the gate content. To download the |
30 source archives associated with the gate content. To download the |
31 community source associated with your cloned workspace, you will need to |
31 community source associated with your cloned workspace, you will need to |
32 execute the following: |
32 execute the following: |
33 |
33 |
34 $ cd /scratch/clone/components |
34 $ cd /scratch/clone/components |
35 $ gmake download |
35 $ gmake download |
36 |
36 |
37 This will use GNU make and the downloading tool in the gate to walk through |
37 This will use GNU make and the downloading tool in the gate to walk through |
38 all of the component directories downloading and validating the community |
38 all of the component directories downloading and validating the community |
39 source archives from the gate machine or their canonical source repository. |
39 source archives from the gate machine or their canonical source repository. |
40 |
40 |
50 |
50 |
51 ### Component build |
51 ### Component build |
52 If you are only working on a single component, you can just build it using |
52 If you are only working on a single component, you can just build it using |
53 following: |
53 following: |
54 |
54 |
55 setup the workspace for building components |
55 Setup the workspace for building components |
56 |
56 |
57 $ cd (your-workspace)/components ; gmake setup |
57 $ cd (your-workspace)/components ; gmake setup |
58 |
58 |
59 build the individual component |
59 Build the individual component |
60 |
60 |
61 $ cd (component-dir) ; gmake publish |
61 $ cd (component-dir) ; gmake publish |
62 |
62 |
63 ### Complete Top Down build |
63 ### Complete Top Down build |
64 Complete top down builds are also possible by simply running |
64 Complete top down builds are also possible by simply running |
65 |
65 |
66 $ cd (your-workspace)/components |
66 $ cd (your-workspace)/components |
67 $ gmake publish |
67 $ gmake publish |
68 |
68 |
69 The 'publish' target will build each component and publish it to the |
69 The 'publish' target will build each component and publish it to the |
70 workspace IPS repo. |
70 workspace IPS repo. |
|
71 |
71 Tools to help facilitate build zone creation will be integrated |
72 Tools to help facilitate build zone creation will be integrated |
72 shortly. If the zone you create to build your workspace in does not have |
73 shortly. If the zone you create to build your workspace in does not have |
73 networking enabled, you can pre-download any community source archives into |
74 networking enabled, you can pre-download any community source archives into |
74 your workspace from the global with: |
75 your workspace from the global with: |
75 |
76 |
76 $ cd (your-workspace)/components |
77 $ cd (your-workspace)/components |
77 $ gmake download |
78 $ gmake download |
78 |
79 |
79 - You can add parallelism to your builds by adding '-j (jobs)' to your gmake |
80 - You can add parallelism to your builds by adding '-j (jobs)' to your gmake |
80 command line arguments. |
81 command line arguments. |
81 - The gate should only incrementally build what it needs to based on what has |
82 - The gate should only incrementally build what it needs to based on what has |
82 changed since you last built it. |
83 changed since you last built it. |
|
84 |
|
85 # Copyright |
|
86 Copyright (c) 2010, 2017, Oracle and/or its affiliates. All rights reserved. |