1# 2# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 3# Use is subject to license terms. 4# 5# Copyright (c) 2018, Joyent, Inc. 6 7include ../../Makefile.cmd 8 9PROG = neqn 10 11CSRCS = diacrit.c eqnbox.c font.c fromto.c funny.c \ 12 glob.c integral.c io.c lex.c lookup.c \ 13 mark.c matrix.c move.c over.c paren.c \ 14 pile.c shift.c size.c sqrt.c text.c 15 16SRCS = $(CSRCS:%=../%) 17 18YACCSRC = e.y 19 20COBJS = $(CSRCS:%.c=%.o) 21OBJS = $(YACCSRC:%.y=%.o) $(COBJS) 22 23 24CLEANFILES = y.tab.c y.tab.h $(YACCSRC:%.y=%.c) $(YACCSRC:%.y=%.def) 25 26YFLAGS = -d 27CPPFLAGS = -DNEQN -I. -I.. $(CPPFLAGS.master) 28LDFLAGS += $(MAPFILE.NGB:%=-Wl,-M%) 29 30CERRWARN += -_gcc=-Wno-implicit-function-declaration 31CERRWARN += $(CNOWARN_UNINIT) 32 33# because of labels from yacc 34e.o := CERRWARN += -_gcc=-Wno-unused-label 35 36# not linted 37SMATCH=off 38 39# 40# for message catalog 41# 42POFILE= neqn.d.po 43POFILES= e.po 44 45.KEEP_STATE: 46 47all : $(PROG) 48 49$(PROG) : $(OBJS) $(MAPFILE.NGB) 50 $(LINK.c) -o $@ $(OBJS) $(LDFLAGS) $(LDLIBS) 51 $(POST_PROCESS) 52 53catalog: $(POFILE) 54 55$(POFILE): $(POFILES) 56 $(RM) $@ 57 cat $(POFILES) > $@ 58 59 60$(YACCSRC:%.y=%.c) + $(YACCSRC:%.y=%.def) : ../$(YACCSRC) 61 $(YACC.y) ../$(YACCSRC) 62 $(MV) y.tab.c $(YACCSRC:%.y=%.c) 63 $(MV) y.tab.h $(YACCSRC:%.y=%.def) 64 65$(COBJS) : $$(@:%.o=../%.c) 66 $(COMPILE.c) ../$(@:%.o=%.c) 67 68install : all $(ROOTPROG) 69 70clean: 71 $(RM) $(OBJS) $(CLEANFILES) 72 73include ../../Makefile.targ 74