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 2009 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# Copyright (c) 2018, Joyent, Inc. 26# Copyright 2021 OmniOS Community Edition (OmniOSce) Association. 27 28SHELL= /usr/bin/ksh93 29 30include ../../Makefile.cmd 31 32.KEEP_STATE: 33 34# Set common AST build flags (e.g., needed to support the math stuff). 35include ../Makefile.ast 36 37ASTSRC= $(C_AST)/src/cmd/msgcc 38 39# build rules 40CPPFLAGS= \ 41 $(DTEXTDOM) $(DTS_ERRNO) \ 42 -I$(ROOT)/usr/include/ast \ 43 -I$(ROOT)/usr/include \ 44 -D_PACKAGE_ast \ 45 '-DUSAGE_LICENSE=\ 46 "[-author?Glenn Fowler <gsf@research.att.com>]"\ 47 "[-copyright?Copyright (c) 2000-2012 AT&T Intellectual Property]"\ 48 "[-license?http://www.eclipse.org/org/documents/epl-v10.html]" \ 49 "[--catalog?msgcc]"' 50 51CFLAGS += $(ASTCFLAGS) 52 53CERRWARN += -_gcc=-Wno-parentheses 54CERRWARN += -_gcc=-Wno-empty-body 55CERRWARN += $(CNOWARN_UNINIT) 56 57# not linted 58SMATCH=off 59 60LDLIBS += -last 61msgcpp := LDLIBS += -lpp 62 63CPROG= msgcvt msggen msgget msgcpp 64PROG= msgcc $(CPROG) 65 66all: $(PROG) 67 68# This target should use "shcomp" in the future 69msgcc: $(ASTSRC)/msgcc.sh 70 rm -f msgcc ; \ 71 { \ 72 print "#!/usr/bin/ksh93" ; \ 73 print "export PATH=/usr/ast/bin:/usr/xpg6/bin:/usr/xpg4/bin:/usr/bin:\$${PATH}" ; \ 74 print "builtin date" ; \ 75 cat "$(ASTSRC)/msgcc.sh" ; \ 76 } >msgcc ; \ 77 chmod a+rx msgcc 78 79ROOTCMDDIR=$(ROOT)/usr/ast/bin 80 81install: all $(ROOTCMD) 82check clean install_h _feature: 83 84include ../../Makefile.targ 85POFILE= msgcpp.po 86 87# Create dummy file since AST/ksh/msgcc doesn't use *.po files 88msgcpp.po: 89 $(RM) $@ 90 $(TOUCH) $(@) 91 92$(CPROG): 93 $(LINK.c) -o $@ $(ASTSRC)/$@.c $(LDLIBS) 94 $(POST_PROCESS) 95 96FRC: 97.PARALLEL: $(PROG) 98