Bug 6153

Summary: make-3.81beta2: changed behaviour
Product: Sisyphus Reporter: Sergey V Turchin <zerg>
Component: makeAssignee: 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
make стал собирать уже собранное :-(
Comment 1 Sergey Bolshakov 2005-02-22 12:34:43 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


обескураживает.
Comment 2 Dmitry V. Levin 2005-02-22 13:22:13 MSK
Перенаправил upstream.
Comment 3 Dmitry V. Levin 2005-03-01 16:38:03 MSK
В cvs уже исправлено, скоро выйдет новая бета.
Если паче чаяния не выйдет, то я сделаю backport.
Comment 4 Dmitry V. Levin 2005-03-03 18:12:38 MSK
Исправлено в make-3.81beta2-alt2

Это не последняя проблема с неявными правилами, см. напр.
https://savannah.gnu.org/bugs/?func=detailitem&item_id=12202