1fa9e4066Sahrens# 2fa9e4066Sahrens# CDDL HEADER START 3fa9e4066Sahrens# 4fa9e4066Sahrens# The contents of this file are subject to the terms of the 50e42dee6Sartem# Common Development and Distribution License (the "License"). 60e42dee6Sartem# You may not use this file except in compliance with the License. 7fa9e4066Sahrens# 8fa9e4066Sahrens# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9fa9e4066Sahrens# or http://www.opensolaris.org/os/licensing. 10fa9e4066Sahrens# See the License for the specific language governing permissions 11fa9e4066Sahrens# and limitations under the License. 12fa9e4066Sahrens# 13fa9e4066Sahrens# When distributing Covered Code, include this CDDL HEADER in each 14fa9e4066Sahrens# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15fa9e4066Sahrens# If applicable, add the following below this CDDL HEADER, with the 16fa9e4066Sahrens# fields enclosed by brackets "[]" replaced with your own identifying 17fa9e4066Sahrens# information: Portions Copyright [yyyy] [name of copyright owner] 18fa9e4066Sahrens# 19fa9e4066Sahrens# CDDL HEADER END 20fa9e4066Sahrens# 21fa9e4066Sahrens# 220e42dee6Sartem# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23fa9e4066Sahrens# Use is subject to license terms. 24fa9e4066Sahrens# 25*d8ab6e12SDon Brady# Copyright 2020 Joyent, Inc. 26f808c858Sraf# 27fa9e4066Sahrens 280e42dee6SartemFSTYP_VERS=1 29fa9e4066SahrensFSTYPE= zfs 300e42dee6SartemLIBPROG= fstyp.so.${FSTYP_VERS} 31fa9e4066Sahrens 320e42dee6Sarteminclude ../../../../lib/Makefile.lib 33fa9e4066Sahrensinclude ../../Makefile.fstype 34fa9e4066Sahrens 35f808c858Sraf# There should be a mapfile here 36f808c858SrafMAPFILES = 37f808c858Sraf 380e42dee6SartemCFLAGS += $(C_PICFLAGS) 39*d8ab6e12SDon BradyCFLAGS += -I../../../../lib/libzutil/common 400e42dee6SartemDYNLIB= $(LIBPROG) 41fa9e4066Sahrens 42*d8ab6e12SDon BradyLDLIBS += -lnvpair -lc -lzutil 43fa9e4066Sahrens 440e42dee6SartemSRCS= ${LIBPROG:%.so.$(FSTYP_VERS)=%.c} 450e42dee6Sartem 460e42dee6SartemCPPFLAGS += -DFSTYP_VERS=${FSTYP_VERS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 470e42dee6Sartem 480e42dee6Sartem# 490e42dee6Sartem# Override PMAP dependency 500e42dee6Sartem# 510e42dee6SartemPMAP= 520e42dee6Sartem 530e42dee6Sartem# 540e42dee6Sartem# Rules for making shared objects out of .c files. Works well if 550e42dee6Sartem# we have a one-to-one mapping. Applies in all cases so far. 560e42dee6Sartem# 570e42dee6Sartem.SUFFIXES: .so.${FSTYP_VERS} ${SUFFIXES} 580e42dee6Sartem 590e42dee6Sartem.c.so.${FSTYP_VERS}: 600e42dee6Sartem $(CC) $(CPPFLAGS) $(CFLAGS) $(DYNFLAGS) $(GSHARED) -o $@ $< $(LDLIBS) 610e42dee6Sartem $(POST_PROCESS_SO) 620e42dee6Sartem 630e42dee6Sartem 640e42dee6Sartem.KEEP_STATE: 650e42dee6Sartem 660e42dee6Sartemall: $(LIBPROG) 670e42dee6Sartem 680e42dee6Sarteminstall: all 690e42dee6Sartem $(RM) $(ROOTLIBFSTYPE)/fstyp 700e42dee6Sartem $(LN) $(ROOTUSRSBIN)/fstyp $(ROOTLIBFSTYPE)/fstyp 710e42dee6Sartem 720e42dee6Sartemcstyle: 730e42dee6Sartem $(CSTYLE) $(SRCS) 740e42dee6Sartem 750e42dee6Sartemclean: 760e42dee6Sartem ${RM} $(LIBPROG) 770e42dee6Sartem 780e42dee6Sartemclobber: clean 79