Annotation of loncom/homework/CAPA-converter/Makefile, revision 1.2

1.1       albertel    1: # ==================================================================
                      2: #     Makefile for CAPA 5.1
                      3: # ==================================================================
                      4: 
                      5: VER = 5.1
                      6: BUGFIX = 0
                      7: #CC = i486-linuxlibc1-gcc  -DCAPA_VER=\"$(VER).$(BUGFIX)\" -DCOMPILE_DATE=\"`date +'%b-%d-%Y'`\" 
                      8: CC = cc  -DCAPA_VER=\"$(VER).$(BUGFIX)\" -DCOMPILE_DATE=\"`date +'%b-%d-%Y-%H:%M'`\" 
                      9: DEF = -DUSE_DYNAMIC_SYMBOLS
                     10: CFLAG = -g -Wall 
                     11: LEX = flex -Cfa -s
                     12: YACC = bison
                     13: AR = ar
                     14: MV = mv
                     15: RM = rm
                     16: STRIP = echo 
                     17: #STRIP = strip
                     18: LEXFLAG = -v
                     19: 
                     20: # OSF1, SunOS, Linux, NEXTSTEP, HP-UX, IRIX
                     21: 
                     22: ARCH = $(shell uname)
                     23: Linux = /usr/lib/libncurses.a 
                     24: 
                     25: P_FLAGS =  -ll -lm 
                     26: 
                     27: S_FLAGS =  $($(ARCH)) $(P_FLAGS)
                     28: 
                     29: OSF1FLAG = -O3 -Olimit 2048
                     30: 
                     31: #ARCH = $(shell uname)
                     32: #  Architecture speicifc subdirectory
                     33: #  output from uname command
                     34: #
                     35: # Architectural note:
                     36: #  on NeXT compiling libcapa   after the final step, 
                     37: #  ranlib libcapa4.5.a
                     38: # 
                     39: #  HP-UX
                     40: #    alloca() could not linked by ld
                     41: #    file capaParserFun.c contains alloca definition
                     42: #      add <stdlib.h> and <alloca.h> after __hpux
                     43: #    gmake is not available on HP-UX DECS
                     44: 
                     45: PAR_SRC = capaCommon.c capaFunction.c capaParserFun.c capaLexerFun.c 
                     46: 
                     47: PAR_OBJ = $(PAR_SRC:.c=.o)
                     48: 
                     49: ARCH_OBJ = $(ARCH)/capaCommon.o   $(ARCH)/capaLexerFun.o \
                     50:            $(ARCH)/capaParserFun.o   
                     51: ## ===================================================================
                     52: 
                     53: #  conditional macros in alpha 
                     54: #
                     55: # libcapa:=MACRO=string
                     56: 
                     57: 
1.2     ! albertel   58: convert: $(ARCH)/convert
1.1       albertel   59: 	echo done
                     60: 
1.2     ! albertel   61: all: $(ARCH)libcapa($VER).a $(ARCH)/convert
1.1       albertel   62: 
                     63: dmalloc: 
1.2     ! albertel   64: 	$(MAKE) DEF="-DDMALLOC -DDMALLOC_FUNC_CHECK $(DEF)" P_FLAGS="-ldmalloc $(P_FLAGS)" libcapa convert
1.1       albertel   65: 
                     66: $(ARCH)libcapa($VER).a: $(ARCH_OBJ)
                     67: 	$(AR) r $(ARCH)/libcapa$(VER).a $(ARCH_OBJ) 
                     68: 
                     69: binclean:
                     70: 	$(RM) $(ARCH)/*.o $(ARCH)/*.a
                     71: 
                     72: $(ARCH)/%.o: %.c capaToken.h
                     73: 	$(CC) $(CFLAG) -c $< -o $@ $(DEF)
                     74: 
1.2     ! albertel   75: $(ARCH)/convert: $(ARCH)libcapa($VER).a $(ARCH)/convert.o
        !            76: 	$(CC) $(CFLAG) $(DEF) -o $@ $(ARCH)/convert.o -L$(ARCH) -lcapa$(VER) $(P_FLAGS)
1.1       albertel   77: 
                     78: capaToken.h: capaParserFun.c
                     79: 
                     80: capaParserFun.c: capaGrammarDef.y
                     81: 	$(YACC) -d $< --output=$@
                     82: 	mv capaParserFun.h capaToken.h
                     83: 
                     84: capaLexerFun.c: capaLexerDef.flex capaToken.h
                     85: 	$(LEX) -o$@ $<
                     86: 
                     87: clean:
                     88: 	rm $(ARCH)/*.o
                     89: 	rm $(ARCH)/libcapa$(VER).a
                     90: 	rm capaToken.h
                     91: 	rm capaParserFun.c
                     92: 	rm capaLexerFun.c
                     93: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>