summaryrefslogtreecommitdiffstats
path: root/usr.bin/make
diff options
context:
space:
mode:
authorjkoshy <jkoshy@FreeBSD.org>1998-10-15 13:00:34 +0000
committerjkoshy <jkoshy@FreeBSD.org>1998-10-15 13:00:34 +0000
commitbad1418fa9c9ee4da14d18089da54e0e1972d886 (patch)
treed7fbac417cec58d3d5097a5c9fe3856d78b89b77 /usr.bin/make
parent3fa226147fc0861e82813a1bb009019cb2bffa57 (diff)
downloadFreeBSD-src-bad1418fa9c9ee4da14d18089da54e0e1972d886.zip
FreeBSD-src-bad1418fa9c9ee4da14d18089da54e0e1972d886.tar.gz
Fix a serious bug in make(1)'s handling of archive libraries.
This case did not need to be tested when RANLIBMAG was defined (as when in an `aout' environment) because Arch_StatMember() treated the two cases of the library not being present and a member of the library not being present the same way, forcing a rebuild of the library. Since in the ELF environment we don't look inside archive libraries we now need to check if the archive library is present in order to determine its `out-of-date'-ness. (I hope I've been able to meet the Oct 15th freeze). Reported-by: Steve Price (and a few others whom I've forgotten, sorry)
Diffstat (limited to 'usr.bin/make')
-rw-r--r--usr.bin/make/arch.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.bin/make/arch.c b/usr.bin/make/arch.c
index 769e6ae..1411592 100644
--- a/usr.bin/make/arch.c
+++ b/usr.bin/make/arch.c
@@ -35,7 +35,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id$
+ * $Id: arch.c,v 1.8 1997/02/22 19:27:05 peter Exp $
*/
#ifndef lint
@@ -1187,7 +1187,7 @@ Arch_LibOODate (gn)
oodate = TRUE;
}
#else
- oodate = FALSE;
+ oodate = (gm->mtime == 0); /* out-of-date if not present */
#endif
}
return (oodate);
OpenPOWER on IntegriCloud