Makefile revision 1601
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# CDDL HEADER START
17d67aeb3722c094c6493a3e9a9d0cdfb9453ecdvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# The contents of this file are subject to the terms of the
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# Common Development and Distribution License (the "License").
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# You may not use this file except in compliance with the License.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# or http://www.opensolaris.org/os/licensing.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# See the License for the specific language governing permissions
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# and limitations under the License.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# When distributing Covered Code, include this CDDL HEADER in each
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# If applicable, add the following below this CDDL HEADER, with the
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# fields enclosed by brackets "[]" replaced with your own identifying
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# information: Portions Copyright [yyyy] [name of copyright owner]
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# CDDL HEADER END
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync#
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncinclude ../make-rules/shared-macros.mk
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncdownload setup prep build install publish \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncvalidate: links pkglint time-$(MACH32).so time-$(MACH64).so
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# generate wrappers for parfait. we need to generate them
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# with the correct compiler variables from the common makefiles because
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# some things reset the environment which causes lovely infinite
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync# loops
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsynclinks:
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(MKDIR) parfait
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @for i in cc CC gcc g++ ld ; do \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync $(MKDIR) parfait ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync $(RM) parfait/$$i ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync echo "#!/bin/ksh" > parfait/$$i ; \
2c691730ab202620fe427110841aa4e0075b7ccavboxsync echo "IFS=" >> parfait/$$i ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync echo "export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc" >> parfait/$$i ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync echo "export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC" >> parfait/$$i ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync echo "export PARFAIT_NATIVEGCC=$(GCC_ROOT)/bin/gcc" >> parfait/$$i ; \
24df09922f68ca6b53d3b8052e589d3b790f7c17vboxsync echo "export PARFAIT_NATIVEGXX=$(GCC_ROOT)/bin/g++" >> parfait/$$i ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync echo "exec" $(PARFAIT_ROOT)/bin/parfait-$$i '$$*' >> parfait/$$i ; \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync chmod +x parfait/$$i ; \
2c691730ab202620fe427110841aa4e0075b7ccavboxsync done
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncpkglint:
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @rm -f pkglint
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @sed -e "s,WS_TOP_XXX,$(WS_TOP)/$(MACH)," \
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync < pkglint.sh \
d02610fd604cc8ab4cccf7e3fa510c06cb728ff2vboxsync > pkglint
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @chmod +x pkglint
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsynctime-$(MACH64).o: BITS=64
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsynctime-$(MACH32).o time-$(MACH64).o: CFLAGS += -Kpic
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsynctime-$(MACH32).o time-$(MACH64).o: time.c
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(CC) $(CFLAGS) -c -o $@ $<
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsynctime-%.so: time-%.o
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(LD) -G -o $@ $<
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncclean:
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(RM) time-*.o time*.bc
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(RM) pkglint
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsyncclobber: clean
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(RM) time-*.so python/pkglint/*.pyc
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync @$(RM) -r parfait
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync
5f9dfb422a6ed57822f9c0cb94fa7df8d24acc9bvboxsync