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 CSTD= $(CSTD_GNU99) 56 57 CERRWARN += -_gcc=-Wno-parentheses 58 CERRWARN += -_gcc=-Wno-unused-label 59 CERRWARN += $(CNOWARN_UNINIT) 60 61 CLEANFILES += $(BLTSRCS) 62 63 m4objs.xpg4/%.o := CPPFLAGS += -DXPG4 64 65 m4objs/%.o m4objs.xpg4/%.o: ../common/%.c 66 $(COMPILE.c) -o $@ $< 67 68 .KEEP_STATE: 69 70 all: $(PROG) $(XPG4) 71 72 $(PROG): $(OBJS) 73 $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 74 $(POST_PROCESS) 75 76 $(XPG4): $(XPG4OBJS) 77 $(LINK.c) $(XPG4OBJS) -o $@ $(LDLIBS) 78 $(POST_PROCESS) 79 80 $(OBJS): m4objs 81 82 $(XPG4OBJS): m4objs.xpg4 83 84 m4objs m4objs.xpg4: 85 -@mkdir -p $@ 86 87 install: all $(VAR_SGSBINPROG) $(ROOTXPG4PROG) $(VAR_SGSCCSLINK) 88 89 clean: 90 $(RM) $(ALLOBJS) $(CLEANFILES) 91 92 include ../../../Makefile.targ