bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

make not updating archive target


From: Kenneth Hopping
Subject: make not updating archive target
Date: Fri, 10 Nov 2000 19:16:31 -0800

PROBLEM SUMMARY:

Running make with the -n option shows that my archive file will be
updated.
When I run make "for real" the archive update does not occur.

---------------------------------------------------------------------------

106> make --version
GNU Make version 3.78.1, by Richard Stallman and Roland McGrath.
Built for i386-redhat-linux-gnu
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99
        Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

Report bugs to <address@hidden>.

--------------------------------------------------------------------------

SAMPLE RUN

142> pwd
/home/kenh/KAH/src/util

143> make -n
gcc -c -O -I/home/kenh/KAH/src/include misc.c
echo Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include read.c
echo Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include symbol.c
echo Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include scan.c
echo Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include icutil.c
echo Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include euler.c
echo Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include iobuf.c
echo Compilation Complete
ar rv /home/kenh/lib/util.a misc.o read.o symbol.o scan.o icutil.o
euler.o iobuf.o
ranlib /home/kenh/lib/util.a
echo Library Update Complete

** This is exactly what I expect.
However, when I run make for real the archive update doe not take place.

144> make
gcc -c -O -I/home/kenh/KAH/src/include misc.c
Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include read.c
Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include symbol.c
Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include scan.c
Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include icutil.c
Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include euler.c
Compilation Complete
gcc -c -O -I/home/kenh/KAH/src/include iobuf.c
Compilation Complete

** No archive update!
I have a clone of this makefile (other than file names) in another
source directory and it executes correctly on the same archive file!

------------------------------------------------------------------------

makefile: attached

System:

Intel Pentium 3, 730 MHz, 500 Mb memory
Linux version 2.2.14-VA.2.1 (address@hidden) (gcc version
egcs-2.91
.66 19990314/Linux (egcs-1.1.2 release))

Kenneth Hopping
address@hidden
home: 425-861-1762
work: 253-773-9071
#
#  makefile for General Utility functions
#
#  K.Hopping     11/22/88

CC    = gcc -c
ARCH  = ar rv
LINK  = gcc -o
TOUCH = touch
INCL  = /usr/include
PRINT = lpr
DEL   = rm
MSG   = @ echo

######  home directory
HOME    = util
######  object library
OLIB    = util.a
######  root directory
ROOT    = /home/kenh
######  library directory
LIB     = $(ROOT)/lib
######  parent directory
HOST    = $(ROOT)/KAH/src
######  source directory
SOURCE  = $(HOST)/$(HOME)
######  include directory
INCLUDE = $(HOST)/include
######  target library
LIBRARY = $(LIB)/$(OLIB)
######

C = $(SOURCE)/
H = $(INCLUDE)/

CFLAGS = -O
HEADER = -I$(INCLUDE)

FILES = misc.o read.o symbol.o scan.o icutil.o euler.o iobuf.o

#
#  Production rules
#

.h :
        $(TOUCH) $@

.c.o :
        $(CC) $(CFLAGS) $(HEADER) $<

$(LIBRARY) : $(LIBRARY)($(FILES))
        $(ARCH) $@ $?
        ranlib $@
        $(MSG) Library Update Complete

$(LIBRARY)(%.o) : %.o
        $(MSG) Compilation Complete

LP_ALL :
        $(PRINT) misc.c read.c symbol.c scan.c
        $(PRINT) icutil.c euler.c iobuf.c
        $(PRINT) $(H)iodef.h $(H)symdef.h

#
##  Dependencies
#

misc.o : misc.c
misc.o : $(H)compile.h $(H)glob.h $(H)err.h

read.o : read.c
read.o : $(H)compile.h $(H)glob.h $(H)err.h

symbol.o : symbol.c
symbol.o : $(H)compile.h $(H)glob.h $(H)err.h $(H)symdef.h

scan.o : scan.c
scan.o : $(H)compile.h $(H)glob.h $(H)err.h $(INCL)/math.h

icutil.o : icutil.c
icutil.o : $(H)compile.h $(H)glob.h $(H)type.h

euler.o : euler.c
euler.o : $(H)compile.h $(H)glob.h $(H)type.h

iobuf.o : iobuf.c
iobuf.o : $(H)compile.h $(H)iodef.h

reply via email to

[Prev in Thread] Current Thread [Next in Thread]