URL:
<http://savannah.gnu.org/bugs/?18139>
Summary: make chooses wrong pattern rule
Project: make
Submitted by: ironhead
Submitted on: Sunday 10/29/2006 at 00:49
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Component Version: 3.81
Operating System: MS Windows
Fixed Release: None
_______________________________________________________
Details:
In the attached archive there is a Makefile that contains 3 rules:
lib%.a : %.def %.o
$(DLLTOOL) $(DLLTOOL_FLAGS) --output-lib $@ --def $(srcdir)/$*.def
$(AR) r $@ $*.o
$(RANLIB) $@
lib%.a: %.def
$(DLLTOOL) $(DLLTOOL_FLAGS) --output-lib $@ --def $<
lib%.a: %.o
$(AR) rc $@ $*.o
$(RANLIB) $@
In versions of make prior to 3.81, the first rule was used for creating
import libraries that were comprised of both .def and object file. In
version 3.81, the first rule is skipped and the second rule is used, as a
result, the exported functions and definitions in the object files are not
included in the import library.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Sunday 10/29/2006 at 00:49 Name: make_rule_issue.tar.gz Size: 7kB
By: ironhead
Cygwin based rule isse example
<http://savannah.gnu.org/bugs/download.php?file_id=11099>
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?18139>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
_______________________________________________
Bug-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-make