xref: /illumos-gate/usr/src/cmd/iconv/Makefile (revision 5661bb76)
148edc7cfSGordon Ross#
248edc7cfSGordon Ross# This file and its contents are supplied under the terms of the
348edc7cfSGordon Ross# Common Development and Distribution License ("CDDL"), version 1.0.
448edc7cfSGordon Ross# You may only use this file in accordance with the terms of version
548edc7cfSGordon Ross# 1.0 of the CDDL.
648edc7cfSGordon Ross#
748edc7cfSGordon Ross# A full copy of the text of the CDDL should have accompanied this
848edc7cfSGordon Ross# source.  A copy of the CDDL is also available via the Internet at
948edc7cfSGordon Ross# http://www.illumos.org/license/CDDL.
1048edc7cfSGordon Ross#
1148edc7cfSGordon Ross
1248edc7cfSGordon Ross#
1348edc7cfSGordon Ross# Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
14*5661bb76SJohn Levon# Copyright (c) 2018, Joyent, Inc.
1548edc7cfSGordon Ross#
1648edc7cfSGordon Ross
1748edc7cfSGordon RossPROG=iconv
1848edc7cfSGordon Ross
1948edc7cfSGordon Rossinclude ../Makefile.cmd
2048edc7cfSGordon Rossinclude ../Makefile.ctf
2148edc7cfSGordon Ross
2248edc7cfSGordon RossOBJS = iconv_main.o iconv_list.o charmap.o parser.tab.o scanner.o
2348edc7cfSGordon Ross
2448edc7cfSGordon RossSRCS	= $(OBJS:%.o=%.c)
2548edc7cfSGordon Ross
26bd0ce624SYuri PankovCSTD=	$(CSTD_GNU99)
2748edc7cfSGordon RossLDLIBS		+= -lcmdutils -lavl
2848edc7cfSGordon RossYFLAGS		= -d -b parser
2948edc7cfSGordon RossCPPFLAGS	+= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
3048edc7cfSGordon Ross$(RELEASE_BUILD) CPPFLAGS += -DNDEBUG
3148edc7cfSGordon Ross
3248edc7cfSGordon RossCERRWARN +=	-_gcc=-Wno-unused-label
3348edc7cfSGordon Ross
34*5661bb76SJohn Levon# not linted
35*5661bb76SJohn LevonSMATCH=off
36*5661bb76SJohn Levon
3748edc7cfSGordon RossCLEANFILES	= $(OBJS) parser.tab.c parser.tab.h
3848edc7cfSGordon RossCLOBBERFILES	= $(PROG) $(POFILE)
3948edc7cfSGordon RossPIFILES		= $(OBJS:%.o=%.i)
4048edc7cfSGordon RossPOFILE		= iconv_cmd.po
4148edc7cfSGordon Ross
4248edc7cfSGordon Rossall: $(PROG)
4348edc7cfSGordon Ross
4448edc7cfSGordon Rossinstall: all $(ROOTPROG)
4548edc7cfSGordon Ross
4648edc7cfSGordon Ross$(PROG): $(OBJS)
4748edc7cfSGordon Ross	$(LINK.c) $(OBJS) -o $@ $(LDLIBS)
4848edc7cfSGordon Ross	$(POST_PROCESS)
4948edc7cfSGordon Ross
5048edc7cfSGordon Ross$(OBJS):	parser.tab.h
519e01f109SJason King$(PIFILES):	parser.tab.h
5248edc7cfSGordon Ross
5348edc7cfSGordon Rossparser.tab.c parser.tab.h: parser.y
5448edc7cfSGordon Ross	$(YACC) $(YFLAGS) parser.y
5548edc7cfSGordon Ross
5648edc7cfSGordon Rosslint:	$(SRCS)
5748edc7cfSGordon Ross	$(LINT.c) $(CPPFLAGS) $(SRCS)
5848edc7cfSGordon Ross
5948edc7cfSGordon Rossclean:
6048edc7cfSGordon Ross	$(RM) $(CLEANFILES)
6148edc7cfSGordon Ross
6248edc7cfSGordon Ross$(POFILE):	$(PIFILES)
6348edc7cfSGordon Ross	$(RM) $@
6448edc7cfSGordon Ross	$(RM) messages.po
6548edc7cfSGordon Ross	$(XGETTEXT) -s $(PIFILES)
6648edc7cfSGordon Ross	$(SED) -e '/domain/d' messages.po > $@
6748edc7cfSGordon Ross	$(RM) $(PIFILES) messages.po
6848edc7cfSGordon Ross
6948edc7cfSGordon Ross.KEEP_STATE:
7048edc7cfSGordon Ross
7148edc7cfSGordon Rossinclude ../Makefile.targ
72