Spivoxity / obc-3

Oxford Oberon-2 compiler
38 stars 7 forks source link

Make clean doesn't really clean everything #49

Closed diegosardina closed 8 months ago

diegosardina commented 8 months ago

My system updated to a new ocaml version and I had to rebuild obc.

Usually a make clean and a make install would suffice but in this case I had to remove some files manually, because:

File "config.ml", line 1: Error: ../yacc/yyparse.cmi is not a compiled interface for this version of OCaml. It seems to be for an older version of OCaml.

localhost ~/Oberon/obc-3 $ make clean
for d in compiler runtime lib test; do make -C $d clean; done
make[1]: Entering directory '/home/diego/Oberon/obc-3/compiler'
rm -f obc1 obb1
rm -f *.cmi *.cmo *.cma
rm -f parser.output symparse.output
make[1]: Leaving directory '/home/diego/Oberon/obc-3/compiler'
make[1]: Entering directory '/home/diego/Oberon/obc-3/runtime'
rm -f oblink *.[ao]
make[1]: Leaving directory '/home/diego/Oberon/obc-3/runtime'
make[1]: Entering directory '/home/diego/Oberon/obc-3/lib'
rm -f *.o *.k *.k0 *.so *.dylib *.tmp
make[1]: Leaving directory '/home/diego/Oberon/obc-3/lib'
make[1]: Entering directory '/home/diego/Oberon/obc-3/test'
rm -f *.[kixco] *.k0 a.* code code.0 out out.0 fib newprims.c \
    obprof.out planner primtab.c prims.c primtest editor \
    msgs prim Plan.* data
make[1]: Leaving directory '/home/diego/Oberon/obc-3/test'
make cleanhere
make[1]: Entering directory '/home/diego/Oberon/obc-3'
rm -f a.out fac tartan *.[kio] Fac.[cx] FacPrims.c config.log \
    obx obxdeb obprof obtrace oblist obxj obxjd
rm -rf bindist bindist.tgz build-stamp
rm -rf debian/files debian/obc.substvars debian/obc
make[1]: Leaving directory '/home/diego/Oberon/obc-3'
localhost ~/Oberon/obc-3 $ make
echo unknown | cmp -s revid - || echo unknown >revid
make -C mllib all
make[1]: Entering directory '/home/diego/Oberon/obc-3/mllib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/diego/Oberon/obc-3/mllib'
make -C yacc all
make[1]: Entering directory '/home/diego/Oberon/obc-3/yacc'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/diego/Oberon/obc-3/yacc'
make -C compiler all
make[1]: Entering directory '/home/diego/Oberon/obc-3/compiler'
ocamlc  -I ../mllib -I ../yacc -c -o config.cmo config.ml
File "config.ml", line 1:
Error: ../yacc/yyparse.cmi
       is not a compiled interface for this version of OCaml.
It seems to be for an older version of OCaml.
make[1]: *** [Makefile:92: config.cmo] Error 2
make[1]: Leaving directory '/home/diego/Oberon/obc-3/compiler'
make: *** [Makefile:149: compiler] Error 2
localhost ~/Oberon/obc-3 $
Spivoxity commented 8 months ago

make quiteclean would have done it.