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