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 (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. 23 # 24 # Copyright (c) 2018, Joyent, Inc. 25 26 PROG = sh 27 USR_PROG = $(PROG) 28 29 OBJS= args.o blok.o cmd.o defs.o error.o fault.o hash.o hashserv.o \ 30 io.o msg.o print.o stak.o string.o word.o xec.o \ 31 ctype.o echo.o expand.o func.o macro.o pwd.o setbrk.o test.o \ 32 bltin.o jobs.o ulimit.o main.o name.o service.o 33 SRCS= $(OBJS:%.o=%.c) 34 35 include ../Makefile.cmd 36 37 # 38 # for message cataloge 39 # 40 POFILE= sh.po 41 POFILES= $(SRCS:%.c=%.po) 42 XGETFLAGS += -a -x sh.xcl 43 44 CPPFLAGS += -D_FILE_OFFSET_BITS=64 -DACCT 45 CERRWARN += -_gcc=-Wno-implicit-function-declaration 46 CERRWARN += -_gcc=-Wno-parentheses 47 CERRWARN += -_gcc=-Wno-extra 48 CERRWARN += -_gcc=-Wno-unused-variable 49 50 # unknown type for func 51 SMATCH=off 52 53 MAPFILES = $(MAPFILE.INT) $(MAPFILE.NGB) 54 LDFLAGS += $(MAPFILES:%=-M%) 55 LDLIBS += -lgen 56 57 .KEEP_STATE: 58 59 .PARALLEL: $(OBJS) 60 61 all: $(ROOTHASBINPROG) 62 63 $(PROG): $(OBJS) $(MAPFILES) 64 $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 65 $(POST_PROCESS) 66 67 $(POFILE): $(POFILES) 68 $(RM) $@ 69 $(CAT) $(POFILES) > $@ 70 71 install: all $(ROOTHASBINPROG) 72 $(RM) $(ROOTHASBIN)/jsh 73 $(SYMLINK) sh $(ROOTHASBIN)/jsh 74 $(RM) $(ROOTHASLIB)/rsh 75 $(SYMLINK) ../bin/sh $(ROOTHASLIB)/rsh 76 77 clean: 78 $(RM) $(OBJS) 79 80 lint: lint_SRCS 81 82 include ../Makefile.targ