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 Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make