summaryrefslogtreecommitdiff
path: root/config/global/extract.in
blob: b754775746c02f34498bbbf57c30327f107fc16f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# Options specific to extracting packages

comment "Extracting"

config FORCE_EXTRACT
    bool
    prompt "Force extractions"
    help
      Force extraction of already extracted tarballs.
      
      Useful if you suspect a previous extract did not complete (eg. broken
      tarball), or you added a new set of patches for this component.

config OVERRIDE_CONFIG_GUESS_SUB
    bool
    prompt "Override config.{guess,sub}"
    default y
    help
      Override tools' versions of config.guess and config.sub with the ones
      from crosstool-NG. This means that all instances of config.guess and
      config.sub in gcc, binutils, glibc, etc... will be replaced.

      Most of the time, the versions of those scripts found in packages are old
      versions, thus lacking some target definitions. This is the case for
      uClibc-based tuples in old versions of gcc and gdb, for example.

      Also, doing so will guarantee that all components have the same tuples
      definitions for your target, and not diverging ones.

      You can update the ones provided with crosstool-NG by first running:
        ct-ng updatetools
      in the directory where you want to run crosstool-NG prior to the build.

config ONLY_EXTRACT
    bool
    prompt "Stop after extracting tarballs"
    help
      Exit after unpacking and patching tarballs.
      
      Useful to look at the code before doing the build itself.

choice
    prompt "Patches origin"
    bool
    default PATCH_BUNDLED

config PATCH_BUNDLED
    bool
    prompt "Bundled only"
    help
      Only apply patches bundled with crosstool-NG.

config PATCH_LOCAL
    bool
    prompt "Local only"
    select PATCH_USE_LOCAL
    help
      Only apply your local patches.

config PATCH_BUNDLED_LOCAL
    bool
    prompt "Bundled, then local"
    select PATCH_USE_LOCAL
    help
      Apply the patches bundled with crosstool-NG,
      then apply your local patches.

config PATCH_LOCAL_BUNDLED
    bool
    prompt "Local, then bundled"
    select PATCH_USE_LOCAL
    help
      Apply your local patches, then apply the patches
      bundled with crosstool-NG.

config PATCH_BUNDLED_FALLBACK_LOCAL
    bool
    prompt "Bundled only, local if no bundled"
    select PATCH_USE_LOCAL
    select PATCH_SINGLE
    help
      Apply the patches bundled with crosstool-NG;
      if there's no bundled patches, apply your local patches.

config PATCH_LOCAL_FALLBACK_BUNDLED
    bool
    prompt "Local only, bundled if no local"
    select PATCH_USE_LOCAL
    select PATCH_SINGLE
    help
      Only apply your local patches;
      if there's no local patches, apply patches bundled with crosstool-NG.

config PATCH_NONE
    bool
    prompt "None"
    help
      Don't use any patch at all.
      
      Please be careful if you select this. Most components do require
      patches to properly build. It can happen, however, that support for
      your architecture is clean enough that you can build a toolchain
      with no patch. But most probably, this is *not* the case.
      
      Be safe, use (the bundeld) patches.

endchoice

config PATCH_ORDER
    string
    default "bundled"           if PATCH_BUNDLED
    default "local"             if PATCH_LOCAL
    default "bundled,local"     if PATCH_BUNDLED_LOCAL || PATCH_BUNDLED_FALLBACK_LOCAL
    default "local,bundled"     if PATCH_LOCAL_BUNDLED || PATCH_LOCAL_FALLBACK_BUNDLED
    default "none"              if PATCH_NONE

config PATCH_SINGLE
    bool

config PATCH_USE_LOCAL
    bool

config LOCAL_PATCH_DIR
    string
    prompt "|  Local patch directory"
    default ""
    depends on PATCH_USE_LOCAL
    help
      Enter the custom patch directory here.
      
      Note that you must ensure that the directory containing your custom
      patches is arranged the same way the official directory is.