File tree Expand file tree Collapse file tree 1 file changed +31
-1
lines changed Expand file tree Collapse file tree 1 file changed +31
-1
lines changed Original file line number Diff line number Diff line change @@ -19,8 +19,38 @@ git subtree push --prefix=compiler/rustc_smir url_to_your_fork_of_project_stable
19
19
20
20
and then open a PR of your ` some_feature_branch ` against https://github.com/rust-lang/project-stable-mir
21
21
22
- ### Updating the rustc librar
22
+ ### Updating the rustc library
23
23
24
+ First we need to bump our stack limit, as the rustc repo otherwise quickly hits that:
25
+
26
+ ```
27
+ ulimit -s 60000
28
+ ```
29
+
30
+ #### Maximum function recursion depth (1000) reached
31
+
32
+ Then we need to disable ` dash ` as the default shell for sh scripts, as otherwise we run into a
33
+ hard limit of a recursion depth of 1000:
34
+
35
+ ```
36
+ sudo dpkg-reconfigure dash
37
+ ```
38
+
39
+ and then select ` No ` to disable dash.
40
+
41
+
42
+ #### Patching your ` git worktree `
43
+
44
+ The regular git worktree does not scale to repos of the size of the rustc repo.
45
+ So download the ` git-subtree.sh ` from https://github.com/gitgitgadget/git/pull/493/files and run
46
+
47
+ ```
48
+ sudo cp --backup /path/to/patched/git-subtree.sh /usr/lib/git-core/git-subtree
49
+ sudo chmod --reference=/usr/lib/git-core/git-subtree~ /usr/lib/git-core/git-subtree
50
+ sudo chown --reference=/usr/lib/git-core/git-subtree~ /usr/lib/git-core/git-subtree
51
+ ```
52
+
53
+ #### Actually doing a sync
24
54
25
55
In the rustc repo, execute
26
56
You can’t perform that action at this time.
0 commit comments