17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 5f808c858Sraf# Common Development and Distribution License (the "License"). 6f808c858Sraf# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 217c478bd9Sstevel@tonic-gate# 2224da5b34Srie# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 2489d58ee0SChris Fraire# Copyright (c) 2016, Chris Fraire <cfraire@me.com>. 253eca6103SJohn Levon# Copyright (c) 2019, Joyent, Inc. 267c478bd9Sstevel@tonic-gate# 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gate# 297c478bd9Sstevel@tonic-gate# We build each flavor in a separate make invocation to improve clarity(!) in 307c478bd9Sstevel@tonic-gate# Makefile.com. The subordinate makes have $(CURTYPE) set to indicate the 317c478bd9Sstevel@tonic-gate# flavor they're supposed to build. This causes the correct set of source 327c478bd9Sstevel@tonic-gate# files and compiler and linker flags to be selected. 337c478bd9Sstevel@tonic-gate# 347c478bd9Sstevel@tonic-gate 357c478bd9Sstevel@tonic-gateinstall: $(TYPES:%=install.%) 367c478bd9Sstevel@tonic-gate 377c478bd9Sstevel@tonic-gateinstall.library: all.library $(INSTALL_DEPS_library) 387c478bd9Sstevel@tonic-gateinstall.standalone: all.standalone $(INSTALL_DEPS_standalone) 397c478bd9Sstevel@tonic-gate 407c478bd9Sstevel@tonic-gateall: $(TYPES:%=all.%) 417c478bd9Sstevel@tonic-gate 427c478bd9Sstevel@tonic-gate$(TYPES:%=all.%): 4389d58ee0SChris Fraire @$(MAKE) $@.targ CURTYPE=$(@:all.%=%) 447c478bd9Sstevel@tonic-gate 457c478bd9Sstevel@tonic-gateall.library.targ: $(LIBS) 467c478bd9Sstevel@tonic-gateall.standalone.targ: $(STANDLIBRARY) 477c478bd9Sstevel@tonic-gate 487c478bd9Sstevel@tonic-gate$(STANDLIBRARY): $(OBJS) $(LINKTEST_OBJ) 4924da5b34Srie $(LD) $(BREDUCE) $(ZDEFS) $(LDFLAGS) -o $@.linktest $(OBJS) $(LINKTEST_OBJ) 507c478bd9Sstevel@tonic-gate rm $@.linktest 517c478bd9Sstevel@tonic-gate $(LD) $(LDFLAGS) -o $@ $(OBJS) 527c478bd9Sstevel@tonic-gate 537c478bd9Sstevel@tonic-gateclobber: $(TYPES:%=clobber.%) 547c478bd9Sstevel@tonic-gate 557c478bd9Sstevel@tonic-gate$(TYPES:%=clobber.%): 5689d58ee0SChris Fraire @$(MAKE) clobber.targ CURTYPE=$(@:clobber.%=%) 577c478bd9Sstevel@tonic-gate 587c478bd9Sstevel@tonic-gateclobber.targ: clean 597c478bd9Sstevel@tonic-gate -$(RM) $(CLOBBERTARGFILES) 607c478bd9Sstevel@tonic-gate 617c478bd9Sstevel@tonic-gate# include library targets 627c478bd9Sstevel@tonic-gateinclude ../../Makefile.targ 637c478bd9Sstevel@tonic-gate 647c478bd9Sstevel@tonic-gate$(PICS): pics 657c478bd9Sstevel@tonic-gate$(OBJS): objs 667c478bd9Sstevel@tonic-gate 677c478bd9Sstevel@tonic-gateobjs/%.o pics/%.o: $(ISASRCDIR)/%.c 687c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 697c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 707c478bd9Sstevel@tonic-gate 71*5d9d9091SRichard Loweobjs/%.o pics/%.o: $(ISASRCDIR)/%.S 727c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 733eca6103SJohn Levon $(POST_PROCESS_S_O) 747c478bd9Sstevel@tonic-gate 757c478bd9Sstevel@tonic-gateobjs/%.o pics/%.o: ../common/%.c 767c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 777c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 78