Summary: | make-3.81beta2: changed behaviour | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Sergey V Turchin <zerg> |
Component: | make | Assignee: | Alexey Gladkov <legion> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | critical | ||
Priority: | P2 | CC: | ldv, legion, sbolshakov |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux | ||
URL: | https://savannah.gnu.org/bugs/?func=detailitem&item_id=12091 |
Description
Sergey V Turchin
2005-02-22 12:19:59 MSK
а также, на Makefile вида ---%<--- foo: foo.o ---%<--- и foo.c, содержащем ---%<--- int main(int ac, char **av) { exit (0); } ---%<--- имеем: $ make cc -c -o foo.o foo.c cc foo.c foo.o -o foo foo.o(.text+0x0): In function `main': foo.c: multiple definition of `main' /home/me/tmp/cc4JFlNm.o(.text+0x0):foo.c: first defined here collect2: ld returned 1 exit status make: *** [foo] Error 1 $ make cc foo.o -o foo обескураживает. Перенаправил upstream. В cvs уже исправлено, скоро выйдет новая бета. Если паче чаяния не выйдет, то я сделаю backport. Исправлено в make-3.81beta2-alt2 Это не последняя проблема с неявными правилами, см. напр. https://savannah.gnu.org/bugs/?func=detailitem&item_id=12202 |