1 | <!DOCTYPE html> |
---|
2 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
---|
3 | <head> |
---|
4 | <title>Contributing: Armed Bear Common Lisp (ABCL) - Common Lisp on the JVM</title> |
---|
5 | <meta charset="utf-8"/> |
---|
6 | <link rel="stylesheet" type="text/css" href="style.css"/> |
---|
7 | </head> |
---|
8 | |
---|
9 | <body> |
---|
10 | <div class="header"> |
---|
11 | <h1>Contributing: Armed Bear Common Lisp (ABCL) - Common Lisp on the JVM</h1> |
---|
12 | </div> |
---|
13 | |
---|
14 | <!--#include virtual="left-menu" --> |
---|
15 | |
---|
16 | <div style="margin-left:auto;margin-right:auto;width:20cm"> |
---|
17 | |
---|
18 | <h2>A quick guide to producing patches for ABCL</h2> |
---|
19 | |
---|
20 | This guide describes how to contribute patches to ABCL, while making |
---|
21 | sure that the patch doesn't introduce regressions. |
---|
22 | |
---|
23 | <ol> |
---|
24 | <li> Build abcl and run the ansi-tests with the pristine tree before making patches |
---|
25 | and store the test results. Invoke the following commands from the |
---|
26 | abcl main directory: |
---|
27 | <code> |
---|
28 | <br/>ant abcl.clean |
---|
29 | <br/>ant abcl.wrapper |
---|
30 | <br/>ant test.ansi.interpreted |
---|
31 | <br/>ant test.ansi.compiled |
---|
32 | </code> |
---|
33 | <br/>The test runs will report where their logs are written, keep those |
---|
34 | files at hand for comparing them with later runs with modified code. |
---|
35 | </li> |
---|
36 | <li> |
---|
37 | Develop your patch. |
---|
38 | </li> |
---|
39 | <li> |
---|
40 | Build abcl and run the ansi-tests with your modification and store the test results. |
---|
41 | The commands are as in the first step. |
---|
42 | </li> |
---|
43 | <li> |
---|
44 | Compare the new test results with the pristine results, if there are no |
---|
45 | additional failures, the patch should be ok. Example comparison for |
---|
46 | linux would be |
---|
47 | <code> |
---|
48 | <br/>diff -u abcl-test-20093726-2037.log abcl-test-20094426-2044.log |
---|
49 | </code> |
---|
50 | <br/>Note that the file names are generated dynamically by the test runs. |
---|
51 | The list of failed tests can be found at the end of the log, so that's |
---|
52 | practically the only thing you're interested in. If the lists don't |
---|
53 | differ, you've successfully created a patch with no ansi-test regressions. |
---|
54 | </li> |
---|
55 | </ol> |
---|
56 | </div> |
---|
57 | |
---|
58 | <div class="footer"> |
---|
59 | <hr /> |
---|
60 | <p>Hosted as part of <a href="https://common-lisp.net/">common-lisp.net</a></p> |
---|
61 | </div> |
---|
62 | |
---|
63 | </body> |
---|
64 | </html> |
---|