1 # 2 # CDDL HEADER START 3 # 4 # The contents of this file are subject to the terms of the 5 # Common Development and Distribution License (the "License"). 6 # You may not use this file except in compliance with the License. 7 # 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 # or http://www.opensolaris.org/os/licensing. 10 # See the License for the specific language governing permissions 11 # and limitations under the License. 12 # 13 # When distributing Covered Code, include this CDDL HEADER in each 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 # If applicable, add the following below this CDDL HEADER, with the 16 # fields enclosed by brackets "[]" replaced with your own identifying 17 # information: Portions Copyright [yyyy] [name of copyright owner] 18 # 19 # CDDL HEADER END 20 # 21 # 22 # Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23 # Use is subject to license terms. 24 # 25 # Copyright 2019 OmniOS Community Edition (OmniOSce) Association. 26 # 27 28 PROG= m4 29 XPG4PROG= m4 30 31 include ../../../Makefile.cmd 32 include ../../../sgs/Makefile.var 33 34 COBJS= m4.o m4ext.o m4macs.o 35 36 YOBJS= m4objs/m4y.o 37 XPG4YOBJS= m4objs.xpg4/m4y_xpg4.o 38 39 OBJS= $(COBJS:%=m4objs/%) $(YOBJS) 40 XPG4OBJS= $(COBJS:%=m4objs.xpg4/%) $(XPG4YOBJS) 41 ALLOBJS= $(OBJS) $(XPG4OBJS) 42 43 YBLTSRCS= ../common/m4y.c 44 XPG4BLTSRCS= ../common/m4y_xpg4.c 45 BLTSRCS= $(YBLTSRCS) $(XPG4BLTSRCS) 46 47 YSRCS= $(COBJS:%.o=../common/%.c) $(YBLTSRCS) 48 XPG4SRCS= $(COBJS:%.o=../common/%.c) $(XPG4BLTSRCS) 49 SRCS= $(COBJS:%.o=../common/%.c) $(BLTSRCS) 50 51 INCLIST= -I../common 52 DEFLIST= -DELF 53 CPPFLAGS= $(INCLIST) $(DEFLIST) $(CPPFLAGS.master) 54 CFLAGS += $(CCVERBOSE) 55 CERRWARN += -_gcc=-Wno-parentheses 56 CERRWARN += -_gcc=-Wno-unused-label 57 CERRWARN += -_gcc=-Wno-uninitialized 58 CSTD= $(CSTD_GNU99) 59 60 CLEANFILES += $(BLTSRCS) 61 62 m4objs.xpg4/%.o := CPPFLAGS += -DXPG4 63 64 m4objs/%.o m4objs.xpg4/%.o: ../common/%.c 65 $(COMPILE.c) -o $@ $< 66 67 .KEEP_STATE: 68 69 all: $(PROG) $(XPG4) 70 71 $(PROG): $(OBJS) 72 $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 73 $(POST_PROCESS) 74 75 $(XPG4): $(XPG4OBJS) 76 $(LINK.c) $(XPG4OBJS) -o $@ $(LDLIBS) 77 $(POST_PROCESS) 78 79 $(OBJS): m4objs 80 81 $(XPG4OBJS): m4objs.xpg4 82 83 m4objs m4objs.xpg4: 84 -@mkdir -p $@ 85 86 install: all $(VAR_SGSBINPROG) $(ROOTXPG4PROG) $(VAR_SGSCCSLINK) 87 clean: 88 $(RM) $(ALLOBJS) $(CLEANFILES) 89 90 include ../../../Makefile.targ