dtrace4linux/linux — Issue #5: If mkerrtags.sh fails, it should remove dt_errtags.c
Author: msabramo
Created: 2012-02-29 19:35:57+00:00
State: open

```
$ make all
...

mkerrtags.sh dt_errtags.c
/bin/sh: mkerrtags.sh: not found
make[2]: *** [dt_errtags.c] Error 127
rm dt_decl.o dt_dof.o dt_cc.o dt_cg.o dt_consume.o dt_buf.o dt_as.o dt_aggregate.o dt_error.o dt_dis.o
make[1]: *** [do_cmds] Error 2
tools/bug.sh
make: *** [all] Error 1
marca@ubuntu:~/src/dtrace4linux/linux$ ls -l libdtrace/dt_errtags.c
-rw-r--r-- 1 marca marca 0 2012-02-29 11:33 libdtrace/dt_errtags.c
```

As a result, if you try to build again, it will skip this step and give a different error which is very confusing:

```
$ make all
...

cc -g -W -D_ILP32 -D_LONGLONG_TYPE -o ../../build-2.6.32-38-generic/dtrace -L../../build-2.6.32-38-generic ../../build-2.6.32-38-generic/dtrace.o -ldtrace -lctf -lproc -llinux -lz -lrt -lpthread -lelf -ldl
../../build-2.6.32-38-generic/libdtrace.a(dt_cc.o): In function `dt_load_libs_dir':
/home/marca/src/dtrace4linux/linux/libdtrace/dt_cc.c:2228: undefined reference to `dt_errtag'
../../build-2.6.32-38-generic/libdtrace.a(dt_cc.o): In function `dt_load_libs_sort':
/home/marca/src/dtrace4linux/linux/libdtrace/dt_cc.c:2284: undefined reference to `dt_errtag'
../../build-2.6.32-38-generic/libdtrace.a(dt_parser.o): In function `dt_cook_clause':
/home/marca/src/dtrace4linux/linux/libdtrace/dt_parser.c:4082: undefined reference to `dt_errtag'
/home/marca/src/dtrace4linux/linux/libdtrace/dt_parser.c:4083: undefined reference to `dt_errtag'
../../build-2.6.32-38-generic/libdtrace.a(dt_parser.o): In function `xyvwarn':
/home/marca/src/dtrace4linux/linux/libdtrace/dt_parser.c:4829: undefined reference to `dt_errtag'
../../build-2.6.32-38-generic/libdtrace.a(dt_parser.o):/home/marca/src/dtrace4linux/linux/libdtrace/dt_parser.c:4863: more undefined references to `dt_errtag' follow
../../build-2.6.32-38-generic/libdtrace.a(dt_dis.o): In function `dt_dis_call':
/home/marca/src/dtrace4linux/linux/libdtrace/dt_dis.c:204: undefined reference to `dtrace_subrstr'
collect2: ld returned 1 exit status
make[2]: *** [../../build-2.6.32-38-generic/dtrace] Error 1
make[1]: *** [do_cmds] Error 2
tools/bug.sh
make: *** [all] Error 1
```