Commit graph

13 commits

Author SHA1 Message Date
Li BingMuyou
f01fa6374e
fix: PA5's Makefile needs same patch as PA4's
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-07 22:27:20 +08:00
3f4fdbd47f Fix some Dockerfile smells
All checks were successful
continuous-integration/drone/push Build is passing
2021-01-03 23:20:16 +01:00
a462235481 Fix openclassroom path
All checks were successful
continuous-integration/drone/push Build is passing
Without trailing `/` wget seems to download everything beneath
`courses/Compilers` instead of `courses/Compilers/docs`.
2021-01-03 23:08:58 +01:00
d4a9420bc7 Patch PA4 for missing yylex
Some checks reported errors
continuous-integration/drone/push Build was killed
libfl is missing yylex symbol. Since libfl is not necessary for the semantic
analyzer, just remove `-lfl` from the Makefile.
2021-01-03 13:16:52 +01:00
032f8a5714 Download additional resources
All checks were successful
continuous-integration/drone/push Build is passing
Scrape:
- https://web.stanford.edu/class/cs143/
- http://openclassroom.stanford.edu/MainFolder/courses/Compilers/docs

Both contain resources not found in the edx course. Among others:
- LaTeX sources for assignments
- Slides (annotated and un-annotated)
- Previous finals for practicing
2020-12-26 17:21:39 +01:00
5a5b9d9e09 Also patch cool.y in PA3
All checks were successful
continuous-integration/drone/push Build is passing
Same issue as in 5ef0aff5b5
2020-12-22 03:04:31 +01:00
05a3784af3 Use new flex
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-21 05:36:39 +01:00
1b5437b6f4 Copy build context for patch file
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-20 00:14:14 +01:00
5ef0aff5b5 Patch cool.flex for flex > 2.5.39
Some checks failed
continuous-integration/drone/push Build is failing
flex (and libfl) expect a symbol yyflex. This symbol is overwritten and expected
to be cool_yyflex in the cool compiler. This patch makes both happy. In addition
fixes name mangling issues with c++ compilers which otherwise may mangle
yyflex (which is a fixed symbol in c-compiled libfl).
2020-12-20 00:00:09 +01:00
4fdaf40671 Patch tar in grading.pl scripts
All checks were successful
continuous-integration/drone/push Build is passing
`grade.pl` scripts contain packed test data. The scripts extract the data
to the `grading` folder in the respective `assignments/PA[2-4]J?` folders. When
running tar as superuser it defaults to `--preserve-permission` `--same-owner`.
Since the packed data is owned by sjt:operator, the folder may be inaccessible
from the host.

By patching in `-o` to the tar command we disable `--same-owner` which creates
the `grading` folder with root:root (translated to the PID:GID of the user
running the container at least in podman).
2020-12-19 11:27:19 +01:00
efe5b75d03 Add gdb and instructions
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-18 14:19:49 +01:00
85d7881524 Use flex-old for compatibility
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-15 17:39:52 +01:00
f420a35fe0 Init 2020-12-15 03:55:23 +01:00